MultiTerm Import

Former Member
Former Member

Hi

I'd like to know how can I use "SDL MultiTerm > Termbase Management > Import > Synchronize on Term" check item.

I'm in the middle of testing. Code goes..

Entries myEntries = myTB.Entries;
foreach(string myXMLitem in myXMLitems)
{
    Entry myEntry = myEntries.New(myXMLitem);
    //  myEntry.Merge(someTHING);
}

So far so good, I can import successfully for non_duplicated items.

But, I can not figure out how to manage duplicated items properly (entry Merge).

Just a brief hints/sample_codes should be perfect.

Thanks

[Version 2017]

OR

I just found this kind of codes. But, I can not handle it properly.

ImportDefinition myImportDefinition = myImportDefinitions[2];     // Synchronize on Term
myImportDefinition.ProcessImport(MtTaskType.mtScript, "English", "Chinese");

I have a proper XML file and I do not want to use "Wizard"

Thanks

  • Former Member
    0 Former Member in reply to Paul Filkin
    I can also ask one of the appstore team to take a look when they have some time, but

    Mr. Paul Filkin

    I really appreciated your huge help.

    I know that my post should be left as is if there were not your considerations.

    Thanks again

  • The import part is where it says "ProcessImport" :-) Create a copy of the "synchronize on term" import definition, and put the mtf.xml there, as the input file. You can also do this programmatically; it involves exporting the definition and fiddling with the XML. A bit messy, but doable. Since the ProcessImport does not seem to work properly, though, it's not worth digging into this here.

  • Exactly. I played with termbase export/import and other manipulation about 2 years ago, but found the entire Multiterm API so incredibly buggy and incomplete and not properly documented that I lost interest.

    (plus, I don't work anymore on the project which involved so much fiddling with termbases, so I don't care anymore if the poor people working on the project now die from manual clicking or not...)

    That crippled Multiterm creates/exports XMLs with totally different content that what it expects to be loaded/imported... task types for ProcessImport don't work as expected and documented... awful and unusable stuff... :(

  • Former Member
    0 Former Member in reply to Gerhard Kordmann

    thanks

    that's good enough

    appreciated !!

  • Hi Gerhard - do you remember whether the bug only affects the "Merge" operation via the API, or whether I can't sync at all via the API? As far as I understand / remember it's only via the "Synchronize on Entry Number" option that we can force MultiTerm to make incoming entry numbers survive (instead of MultiTerm renumbering / creating new ones for incoming imported entries) ... I am asking before we start spending quite some time in developing an API driven import script ...

    Our customer demand / story is to automate the following: we export Coreon repository data into mtf format, assign integers for the entries (MultiTerm only allows integers for entry IDs ...), inject  CLinks to link entries to each other, then import via API script into MultiTerm sdltb local file - but for this I need the entry numbers to survive.

    A workaround for us would be to create an index/language, say, "Coreon ID" that holds the Coreon IDs, and we link via TLink, but then another index / language shows up in the sdltb file (a bit ugly from a UX point of view). Therefore, I'd prefer the first option ...

    Best

    Michael