Preskoči na glavno vsebino

API: Chyba pri vytváraní používateľskej väzby

Hláška neznamená chýbajúce pole, ale nedohľadateľný odkaz — tri príčiny

Avtor: Petr Pech

Import používateľskej väzby skončí chybou, hoci sú evidenceType aj object v požiadavke vyplnené:

Při vytváření vazby je nutno zadat 'evidenceType' a 'object'.

Hláška je zavádzajúca — neznamená, že pole chýba, ale že si z nich ABRA Flexi nedokázala poskladať odkaz na existujúci záznam.


Tri príčiny

Príčina

Ako ju rozpoznať

Odkazovaný záznam neexistuje.

Hodnotu object sa v danej evidencii nedá dohľadať — napríklad externý identifikátor, ktorý v ABRA Flexi nie je.

Neplatná hodnota evidenceType.

Musí to byť strojový názov evidencie, napríklad cenik alebo faktura-vydana. Zoznam vydá /c/{firma}/evidence-list.xml.

Zlá štruktúra v JSON.

V JSON patria objekty väzby priamo do poľa uzivatelske-vazby. Ak do nich vložíte ešte úroveň uzivatelska-vazba (ako sa zapisuje v XML), Flexi hodnoty neuvidí a nahlási tú istú chybu.


Správny zápis

V JSON bez vnoreného obalu:

{
"winstrom": {
"@version": "1.0",
"faktura-vydana": [{
"id": "ext:RNT:2429273",
"uzivatelske-vazby": [{
"vazbaTyp": "code:FAV_OBP",
"evidenceType": "objednavka-prijata",
"object": "ext:RNT:12400246"
}]
}]
}
}

V XML sa naopak úroveň uzivatelska-vazba uvádza:

<winstrom version="1.0">
<faktura-vydana>
<id>ext:RNT:2429273</id>
<uzivatelske-vazby>
<uzivatelska-vazba>
<vazbaTyp>code:FAV_OBP</vazbaTyp>
<evidenceType>objednavka-prijata</evidenceType>
<object>ext:RNT:12400246</object>
</uzivatelska-vazba>
</uzivatelske-vazby>
</faktura-vydana>
</winstrom>

⚠️ Ak prejdú všetky tri body a import napriek tomu zlyhá, príde iná hláška — Zvolená kombinace objektů není na vybraném typu vazby přípustná. Tá znamená, že zvolený typ väzby túto dvojicu evidencií nepropojuje; typy sú v evidencii typ-uzivatelske-vazby.


Súvisiace

Ste s tem dobili odgovor na svoje vprašanje?