Import from Myvideosoft (resolved)

If you need help on how to use the program
beaver
Posts: 17
Joined: 2013-07-30 08:15:32

Import from Myvideosoft (resolved)

Post by beaver »

I would like to join the AMC family. I have now Myvideosoft to organize my movies and I didn't found on the forum any way to transfer my datas (except a script wrote in 2008 by"bad4u" who didn't exist anymore). Is somebody able to help me.
PS: the script Myvideosoft to export the datas in HTML code didn't work anymore
Last edited by beaver on 2013-08-07 13:38:20, edited 1 time in total.
antp
Site Admin
Posts: 9636
Joined: 2002-05-30 10:13:07
Location: Brussels
Contact:

Post by antp »

Does Myvideosoft offer other export types, like CSV or Excel?
beaver
Posts: 17
Joined: 2013-07-30 08:15:32

Post by beaver »

no, only for a few lists (list of films, list of actors,... export possible in .xls or .csv format) but there is actually no complete export possible with the MVS tools.
thank you for your answer
antp
Site Admin
Posts: 9636
Joined: 2002-05-30 10:13:07
Location: Brussels
Contact:

Post by antp »

bad4u is still active on the forum, you could just send him a private message to see if he still as that script as the link he posted there is no longer valid indeed ...
viewtopic.php?p=26367#26367
I will check this evening, maybe I still have that script in my home computer.
beaver
Posts: 17
Joined: 2013-07-30 08:15:32

Post by beaver »

OK! I'll wait for the result of your search on your computer before writing to bad4u. thank's
antp
Site Admin
Posts: 9636
Joined: 2002-05-30 10:13:07
Location: Brussels
Contact:

Post by antp »

I've posted the file I had there:
https://forum.antp.be/users/bad4u/export_amc.script
check if that works for you in MyVideoSoft ;)
beaver
Posts: 17
Joined: 2013-07-30 08:15:32

Post by beaver »

Hello and thank you,
The script for the export run pretty well in myvideosoft, generating an "AMC export.xml" file that I put in the "affiche" folder but AMC doesn't want to import it, I got a message "Root item "collection" not found"
beaver
Posts: 17
Joined: 2013-07-30 08:15:32

Post by beaver »

I found why i got this message, i tried to import with the script "DVD profiler XML export". It works with the script Ant Movie Catalog. I check the result and i'll tell you.
Thank's
bad4u
Posts: 1148
Joined: 2006-12-11 22:54:46

Post by bad4u »

antp wrote:I've posted the file I had there:
https://forum.antp.be/users/bad4u/export_amc.script
check if that works for you in MyVideoSoft ;)
I didn't even remember I did that script until I read the topic again ^^

But good to see you still had the file as my main pc is defect for some time now and I don't have access to most of my files. Well, the hdd is fine, but I need another pc before I can access/transfer my data. Currently I'm on a silent mini system for mail and inet only.
beaver
Posts: 17
Joined: 2013-07-30 08:15:32

Post by beaver »

The script still works very well. Thank's for all.
beaver
Posts: 17
Joined: 2013-07-30 08:15:32

Post by beaver »

Hello
I come again because I realise that I lost in the export several fields importants for me: the field "I own / I don't own" and the field "movie saw the... (date of viewing)"
I think (I hope) that I can import them in AMC in personnalised fields.
So, is somebody knowing both Myvideosoft and AMC can tell me if it is difficult to modify the script for that, what arguments do I use?
Thank you for your answer
beaver
Posts: 17
Joined: 2013-07-30 08:15:32

Post by beaver »

So, I successfull did the modification of the script to export the datas missing from MVS (I have still a problem of format in the datas but i work on it).
So, I have an .XML file with all the datas (I checked it in my browser). I create 2 personnalised fields in AMC. I open my .xml file in AMC with the import menu and I don't find the colomns with the datas even AMC show my 2 personnalised fields to put in front of the columns of the imported datas. What can I do?
antp
Site Admin
Posts: 9636
Joined: 2002-05-30 10:13:07
Location: Brussels
Contact:

Post by antp »

Have you tried to make a sample xml file with AMC with the custom fields to see how they were stored? To compare with the xml generated by the script, to see why these values are not read.
You can also post the xml here if you do not find the problem in it.
beaver
Posts: 17
Joined: 2013-07-30 08:15:32

Post by beaver »

Thank you
I'll try that and I'll tell you
soulsnake
Posts: 756
Joined: 2011-03-14 15:42:20
Location: France

Post by soulsnake »

Hi,

Custom fields are not stored directly in element <Movie .../> like movie fields but in sub-element <CustomFields .../>.

For example:

Code: Select all

<AntMovieCatalog ...>
 <Catalog>
  <Properties/>
  <Contents>
   <Movie Number="1" Checked="True" OriginalTitle="Test" ...>
    <CustomFields Owned="True" DateViewed="03/08/2013"/>
   </Movie>
   <Movie ...>
    <CustomFields .../>
   </Movie>
   ...
  </Contents>
 </Catalog>
</AntMovieCatalog>
Soulsnake.
Last edited by soulsnake on 2013-08-03 19:35:25, edited 1 time in total.
beaver
Posts: 17
Joined: 2013-07-30 08:15:32

Post by beaver »

Hello,
So, can I import these custom fields, presents in my MVS export xml file, in AMC?
soulsnake
Posts: 756
Joined: 2011-03-14 15:42:20
Location: France

Post by soulsnake »

So, can I import these custom fields, presents in my MVS export xml file, in AMC?
Yes!
You just have to modify the export script and add the sub-element <CustomFields.../> with values to store in custom fields.
The file created by export script must have the same structure of example I given in my previous post to work.

Soulsnake.
beaver
Posts: 17
Joined: 2013-07-30 08:15:32

Post by beaver »

I confess that I am at the bottom of my knowledge :ha:
Can you give me some help?
here is my modify script, at the end, in red color are the added lines.
With many thanks

// DESCRIPTION Export to Ant Movie Catalog XML database file with covers; Version 1.1
// BASED ON Yves Charrazac's / Jerome Juin's XML export script
// AUTHOR bad4u
// LANGUAGE All

MessageVersion, amcXML, Temp are String

// Changement de langues
Switch Language
Case 3 // Anglais
MessageVersion = "Please, install 6.08 version or higher. Thanks"
Case 5 // Francais
MessageVersion = "Veuillez installer la version 6.08 ou sup\'e9rieure. Merci."
End

If param.version_texte+"."+param.release_texte<6.08 Then
UserErrorMessage (MessageVersion)
End

fRep_Initial is String = fRepEnCours() + "\\"
First_fRep is String = StringLeft (fRep_Initial , 3 )

amcXML = "<?xml version=""1.0"" encoding=""iso-8859-1""?>" + cr + "<AntMovieCatalog Format=""35"" Version=""3.5.1 (2007-09-22)"" Date=""01/01/2008 00:00:00"" date_vu_avoir=""01/01/2008 00:00:00"">" + cr + " <Catalog>" + cr + " <Properties/>" + cr + " <Contents>" + cr

Debut:

HLitPremier(VIDEOTAP, "titre")
TANTQUE PAS HEnDehors(VIDEOTAP)
MAJ_Fiche:

amcXML = amcXML + " <Movie"

// Number
Temp = ""
Temp = VIDEOTAP.vicleunik
Temp = StringReplace(Temp, """", """)
If Temp <> "" Then
amcXML = amcXML + " Number=""" + Temp + """"
End

// Media Label
Temp = ""
Temp = VIDEOTAP.label
Temp = StringReplace(Temp, """", """)
If Temp <> "" Then
amcXML = amcXML + " MediaLabel=""" + Temp + """"
End

// Media Type
Temp = ""
Temp = VIDEOTAP.TYPE
Temp = StringReplace(Temp, """", """)
If Temp <> "" Then
amcXML = amcXML + " MediaType=""" + Temp + """"
End

// Source
HReadSeek(PROPRIET, "P1CLEUNIK", VIDEOTAP.p1cleunik)
Temp = ""
If VIDEOTAP.p1cleunik > -1 Then
Temp = PROPRIET.NOM
Temp = StringReplace(Temp, """", """)
If Temp <> "" Then
amcXML = amcXML + " Source=""" + Temp + """"
End
End

// Date
Temp = ""
Temp = DateVersChaine(VIDEOTAP.date_acquis)
// Delete the "//" on the beginning of the NEXT line, If your date format is dd.mm.yyyy instead of dd/mm/yyyy
// Temp = StringReplace (Temp , "/" , ".")
Temp = StringReplace (Temp, """", """)
If Temp <> "" Then
amcXML = amcXML + " Date=""" + Temp + """"
End

// Rating
If VIDEOTAP.cote_amour > -1 Then
amcXML = amcXML + " Rating=""" + ((VIDEOTAP.cote_amour) * 2) + ".0"""
End

// Original Title
Temp = ""
Temp = VIDEOTAP.titre_orig
Temp = StringReplace(Temp, """", """)
If Temp <> "" Then
amcXML = amcXML + " OriginalTitle=""" + Temp + """"
End

// Translated Title
Temp = ""
Temp = VIDEOTAP.titre
Temp = StringReplace(Temp, """", """)
If Temp <> "" Then
amcXML = amcXML + " TranslatedTitle=""" + Temp + """"
End

// Director
Realisateur is String = Liste_Acteurs (VIDEOTAP.vicleunik , "VIDEO" , "REALISATEUR")
Realisateur = replace (Realisateur , RC , "; ")
Realisateur = StringReplace(Realisateur, """", """)
If Realisateur <> "" and Realisateur <> "(Nothing)" and Realisateur <> "(N\'e9ant)" Then
amcXML = amcXML + " Director=""" + Realisateur + """"
End

// Producer
Producteur is String = Liste_Acteurs (VIDEOTAP.vicleunik , "VIDEO" , "PRODUCTEUR")
Producteur = replace (Producteur , RC , "; ")
Producteur = StringReplace(Producteur, """", """)
If Producteur <> "" and Producteur <> "(Nothing)" and Producteur <> "(N\'e9ant)" Then
amcXML = amcXML + " Producer=""" + Producteur + """"
End

// Country
HReadSeek (PAYS, "P0CLEUNIK" , VIDEOTAP.p0cleunik)
Temp = ""
If VIDEOTAP.p0cleunik > -1 Then
Temp = PAYS.PAYS
Temp = StringReplace(Temp, """", """)
If Temp <> "" Then
amcXML = amcXML + " Country=""" + Temp + """"
End
End

// Genre
HReadSeek (CATEG, "CACLEUNIK", VIDEOTAP.CACLEUNIK)
Temp = ""
If VIDEOTAP.CACLEUNIK > -1 Then
Temp = CATEG.CATEGORIE
Temp = StringReplace(Temp, """", """)
If Temp <> "" Then
amcXML = amcXML + " Category=""" + Temp + """"
End
End

// Year
Temp = ""
Temp = VIDEOTAP.annee_real
Temp = StringReplace(Temp, """", """)
If Temp <> "" Then
amcXML = amcXML + " Year=""" + Temp + """"
End

// Length
Temp = ""
Temp = VIDEOTAP.duree
Temp = StringReplace(Temp, """", """)
If Temp <> "" and Temp <> "0" Then
amcXML = amcXML + " Length=""" + Temp + """"
End

// Actors
ListActHTTP is String = Liste_Acteurs (VIDEOTAP.vicleunik , "VIDEO" , "ACTEUR")
ListActHTTP = replace (ListActHTTP , RC , "; ")
ListActHTTP = StringReplace(ListActHTTP, """", """)
If ListActHTTP <> "" and ListActHTTP <> "(Nothing)" and ListActHTTP <> "(N\'e9ant)" Then
amcXML = amcXML + " Actors=""" + ListActHTTP + """"
End

// URL
Temp = ""
Temp = VIDEOTAP.Movie_URL_Value
Temp = StringReplace(Temp, """", """)
If Temp <> "" Then
amcXML = amcXML + " URL=""" + Temp + """"
End

// Description
HReadSeek (NOTEFILM, "VICLEUNIK", VIDEOTAP.VICLEUNIK)
Temp = ""
If HTrouve() Then
Temp = NOTEFILM.NOTEFILM
Temp = StringReplace(Temp, """", """)
Temp = StringReplace(Temp, RC, "|")
If Temp <> "" Then
amcXML = amcXML + " Description=""" + Temp + """"
End
End

// Comments
Temp = ""
Temp = VIDEOTAP.TEXTE_LIBRE
Temp = StringReplace(Temp, """", """)
Temp = StringReplace(Temp, RC, "|")
If Temp <> "" Then
amcXML = amcXML + " Comments=""" + Temp + """"
End

// Videoformat
HReadSeek (F_VIDEO, "FVCLEUNIK" , VIDEOTAP.fvcleunik)
Temp = ""
If VIDEOTAP.fvcleunik > -1 Then
Temp = F_VIDEO.format_video
Temp = StringReplace(Temp, """", """)
If Temp <> "" Then
amcXML = amcXML + " VideoFormat=""" + Temp + """"
End
End

// Audioformat
HReadSeek (SO, "SOCLEUNIK" , VIDEOTAP.socleunik)
Temp = ""
If VIDEOTAP.socleunik > -1 Then
Temp = SO.SON
Temp = StringReplace(Temp, """", """)
If Temp <> "" Then
amcXML = amcXML + " AudioFormat=""" + Temp + """"
End
End

// Resolution
HReadSeek (F_IMAGE, "FICLEUNIK" , VIDEOTAP.ficleunik)
Temp = ""
If VIDEOTAP.ficleunik > -1 Then
Temp = F_IMAGE.FORMAT_IMAGE
Temp = StringReplace(Temp, """", """)
If Temp <> "" Then
amcXML = amcXML + " Resolution=""" + Temp + """"
End
End

// Disks
Temp = ""
Temp = VIDEOTAP.nb_disques
Temp = StringReplace(Temp, """", """)
If Temp <> "" Then
amcXML = amcXML + " Disks=""" + Temp + """"
End

// Picture
Temp = ""
Temp = VIDEOTAP.IMAGE
Temp = StringReplace(Temp, """", """)
If Temp <> "" and Temp <> "cinehome.jpg" Then
amcXML = amcXML + " Picture=""" + Temp + """"
End

//date_vu_avoir
Temp = ""
Temp = DateVersChaine(VIDEOTAP.date_vu_avoir)
Temp = StringReplace(Temp, """", """)
If Temp <> "" Then
amcXML = amcXML + " date_vu_avoir=""" + Temp + """"
End

// Je possede
Temp = ""
Temp = VIDEOTAP.achete
Temp = StringReplace(Temp, """", """)
If Temp <> "" Then
amcXML = amcXML + " achete=""" + Temp + """"
End



amcXML = amcXML + "/>" + cr
amcXML = StringReplace(amcXML, "; """, """")

HLitSuivant(VIDEOTAP)
End

amcXML = amcXML + " </Contents>" + cr + " </Catalog>" + cr + "</AntMovieCatalog>" + cr

fSauveTexte(fRep_Initial + "AMC_export.xml" , amcXML )

Finscript:

[/code]
soulsnake
Posts: 756
Joined: 2011-03-14 15:42:20
Location: France

Post by soulsnake »

Hi,

Replace this:

Code: Select all

//date_vu_avoir
Temp = ""
Temp = DateVersChaine(VIDEOTAP.date_vu_avoir)
Temp = StringReplace(Temp, """", """)
If Temp <> "" Then
amcXML = amcXML + " date_vu_avoir=""" + Temp + """"
End

// Je possede
Temp = ""
Temp = VIDEOTAP.achete
Temp = StringReplace(Temp, """", """)
If Temp <> "" Then
amcXML = amcXML + " achete=""" + Temp + """"
End

amcXML = amcXML + "/>" + cr
by this:

Code: Select all

// Open CustomFields element
amcXML = amcXML + ">" + cr
amcXML = amcXML + "    <CustomFields"

// Add custom fields here as below

//date_vu_avoir
Temp = ""
Temp = DateVersChaine(VIDEOTAP.date_vu_avoir)
Temp = StringReplace(Temp, """", """)
If Temp <> "" Then
amcXML = amcXML + " date_vu_avoir=""" + Temp + """"
End

// Je possede
Temp = ""
Temp = VIDEOTAP.achete
Temp = StringReplace(Temp, """", """)
If Temp <> "" Then
amcXML = amcXML + " achete=""" + Temp + """"
End

// Close CustomFields element
amcXML = amcXML + "/>" + cr
// Close Movie element
amcXML = amcXML + "   </Movie>" + cr
I can't test it but this should work ;)

Soulsnake.
antp
Site Admin
Posts: 9636
Joined: 2002-05-30 10:13:07
Location: Brussels
Contact:

Post by antp »

Je trouve quand même comique qu'on discute depuis le début en anglais, alors qu'a priori on est trois francophones ici... :D
Post Reply