Režim pro založení / změnu

Při importu záznamu lze určit chování podle toho, zda záznam již existuje. Lze tak zajistit, aby související záznam byl importován jen pokud ještě neexistuje. Pokud již existuje, je možné, že jej již uživatel změnil a proto jej nebudeme importovat znovu a přepisovat hodnoty.

Režim lze určit pro každý záznam zvlášť a také pro každou operaci (založení/změna).

<winstrom version="1.0">
  <faktura-vydana update="ignore">
    <id>123</id>
    ...
  </faktura-vydana>
</winstrom>
Operace Režim Popis
Založení
(create)
ignore Pokud záznam neexistuje, ignoruj požadavek na jeho založení.
fail Pokud záznam neexistuje, selži.
ok Pokud záznam neexistuje, normálně jej založ. Výchozí hodnota.
Změna
(update)
ignore Pokud záznam již existuje, ignoruj požadavek na jeho změnu.
fail Pokud záznam již existuje, selži.
ok Pokud záznam již existuje, normálně jej změň. Výchozí hodnota.

Podobného mechanizmu jako je u přeskakování řádků, je možné použít i u relací. Příklad:

<winstrom version="1.0">
  <faktura-vydana>
    <firma if-not-found="null">code:FIRMA</firma>
    ...
    </faktura-vydana>
</winstrom>

V tomto případě pokud nebude nalezena firma s kódem FIRMA, bude místo ní nastavena vazba na null (tj. prázdná).

Operace Popis
null Pokud záznam neexistuje nenastavuj vazbu.
nearest-invalid Pokud záznam odkazovaný kódem v současnosti neexistuje, ale v minulosti existoval, je vazba provedena na nejmladší již neplatný záznam. Jako datum se uvažuje datum doklad, datum události, …. Použití je například při importu historických dokladů s vazbou na již neplatné čísla účtů.
create Pokud záznam odkazovaný kódem neexistuje, dojde k jeho automatickému založení. Pro záznamy číselníkového typu se vyplní vlastnosti kód / název dle hodnoty odkazu (např. FIRMA / FIRMA - Vyplněno při importu). Takto nelze zakládat záznamy s dalšími povinnými vlastnostmi.