neděle 19. dubna 2015

Import do Pohody

Chyby

Velikost písmen
Obálku dokumentu se nepodařilo ověřit podle schématu.
Reason: The element 'dat:DataPackItem' is used but not declared in the DTD/Schema.
Pohoda totiž používá pro názvy elementů na začátku malá písmena.

Chybí prefix
dataPack namísto dat:dataPack
pokud Vám chybí prefixy, musíte při serializaci předat serializerů seznam namespace a jejich prefixů.

Chybí povinný atribut
Obálku dokumentu se nepodařilo ověřit podle schématu.
Reason: Required attribute 'application' is missing.

Hodnota atributu application se zobrazuje v seznamu XML Log, stejně tak jako název PC ze kterého byl import proveden, uživatelské jméno přihlášeného uživatel do účetnictví a číslo (ID) dataPacku

Chyba: Tento balíček není určen pro tuto jednotku.
Snažíte se importovat soubor který obsahuje rozdílné IČO od IČa vyplněném v účetní jednotce

dat:DataPackItem nesmí být prázdný
Obálku dokumentu se nepodařilo ověřit podle schématu.
Reason: Element cannot be empty according to the DTD/Schema.

Probíhá zpracování ...Zpracování bylo dokončeno.Výsledek: Ok
Odpověď uložena v: C:\Pohoda_Import\Response\FV4.xmlVýsledek importu položek:
ID: CM001: Ok
Minimální importovatelný datapack faktury
<?xml version="1.0" encoding="windows-1250"?><dat:dataPack id="FV20150001" ico="12345678" version="2.0" application="OdvezTo.Eu"note="Faktura byla exportována ze systému OdvezTo.Eu"xmlns:inv="http://www.stormware.cz/schema/version_2/invoice.xsd" xmlns:typ="http://www.stormware.cz/schema/version_2/type.xsd" xmlns:dat="http://www.stormware.cz/schema/version_2/data.xsd"><dat:dataPackItem id="CM001" version="2.0"><inv:invoice version="2.0"><inv:invoiceHeader><inv:invoiceType>issuedInvoice</inv:invoiceType><inv:date>2014-10-14</inv:date></inv:invoiceHeader></inv:invoice></dat:dataPackItem></dat:dataPack> 

Závažnou chybou je také nesprávná znaková sada (CodePage) datového souboru.
Pokud máte XML například v UTF-8 (výchozí znaková sada .NET) a pokusíte se ho naimportovat
a v hlavičce XML máte uvedeno <?xml version="1.0" encoding="windows-1250"?>
Vrátí vám Pohoda nic neříkající chybovou hlášku:

Probíhá zpracování ...Zpracování bylo dokončeno.Výsledek: Error Odpověď uložena v: C:\Users\zbynek.sulc\Downloads\Response\FVObj20150005 (2).xmlObálku dokumentu se nepodařilo ověřit podle schématu. 


Validace podle schmatu
Pokud máte chybu ve struktuře XML dokumentu neprojde validací a nezbyde Vám nic jiného než soubor otevřít a chybu najít ručně. Jste si jisti že máte všechno správně a stejně aplikace hlásí chybu? K této chyba může dojít i proto, že máte rozdílné znakové sady. v XML sice uvádíte windows-1250, ale do souboru jste ho zapsali jako UTF-8 což je defaultní znaková sada .NET Frameworku.


Probíhá zpracování ...



Zpracování bylo dokončeno.

Výsledek: Ok 

Odpověď uložena v: C:\Users\zbynek.sulc\Downloads\Response\FVObj20150005 (3).xml



Výsledek importu položek: 
ID: Usr01 (001): Error 'Element content is invalid according to the DTD/Schema.Nepodařila se validace dokumentu podle schématu.'

Tuto chybu napříkald obdržíte pokud si nevšimnete že inv:homeCurrency v 
inv:invoiceSummary a v části inv:invoiceItem mají různý typ a tudíž i atributy.

v summary je to typ:typeCurrencyHome 
v Items pak typ:typeCurrencyHomeItem

Aby Vás udrželi vývojáři ze Stormware v bdělém stavu a zvíšili Vám hladinu adrenalinu tak tuto nekonzistenci opakují i na Adrese
addressType a myAddress


Další záludností je délka textu DTD Schema říká že:
<xsd:element name="text" type="typ:string90" minOccurs="0">
<xsd:annotation>
<xsd:documentation>Text položky.</xsd:documentation>
</xsd:annotation>
</xsd:element>
Takže
<xsd:simpleType name="string90">
<xsd:annotation>
<xsd:documentation>Řetězec o délce 90 znaků.</xsd:documentation>
</xsd:annotation>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="90"/>
</xsd:restriction>
</xsd:simpleType>


Pokud máte nějaké otázky klidně je napište do komentáře nebo na můj e-mail.
Instalačku Pohody můžete bez registrace stáhnout z adresy http://www.stormware.cz/pohoda/start.aspx

Žádné komentáře:

Okomentovat