Dávkový soubor je reprezentován textovým souborem s proměnnou délkou věty. Skládá se z následujících částí:
Věta Hlavička – povinný řádek textového souboru s pevně definovanou strukturou, který se musí nacházet před větami s fakturami
Věta Komentář – nepovinné řádky informačního charakteru, přičemž každý z řádků musí začínat identifikátorem komentáře. Pokud řádek začíná tímto identifikátorem, řádek se přeskakuje a nezpracovává se. Identifikátorem komentáře je znak středníku (hexadecimálně 3B).
Věta Odkoupená faktura/Závazek – nepovinné řádky s pevně definovanou strukturou. Každý řádek reprezentuje jednu odkoupenou fakturu/závazek, který importér vloží do systému.
Každá věta se skládá z jednotlivých atributů popsaných níže.
Atributy jsou vzájemně odděleny oddělovači, což znamená, že při dekódování vět není uplatněna poziční („pevná“) definice.
Oddělovače jsou speciální řídící znaky, které nesmí být v textu dávkového souboru využívány pro jiné než řídící účely.
Jako oddělovač řádků je použit:
standardní dvojznak konce řádku CR+LF (hexadecimálně 0D0A)
Jako oddělovač atributů (tj. jednotlivých položek ve větě) je použit:
standardní tabelátor (hexadecimálně 09)
nebo znak pipe (hexadecimálně 7C)
Není povoleno vzájemně kombinovat oddělovače atributů. Pokud se nenalezne první výše uvedený oddělovač, hledá se druhý oddělovač atd.
Na konci věty/řádku se již nevyskytuje oddělovač atributů, ale pouze oddělovač řádků.
Defaultní hodnota atributu nabývá následujících hodnot:
Defaultní hodnota – hodnotou atributu je konstanta uvedená v tabulce, tato hodnota se uloží do DB
NOT NULL – hodnota atributu nesmí být prázdná, jinak systém zobrazí chybu (tzn. mezi dvěma oddělovači musí být uveden alespoň 1 znak), do DB se uloží konkrétní not Null hodnota
NULL – hodnota atributu může být prázdná, přičemž se uloží NULL do DB (tzn. mezi dvěma oddělovači nemusí být uveden žádný znak)
Typ atributu nabývá následujících hodnot:
Date – systém provede kontrolu na datumový formát YYYYMMDD, pokud kontrola není splněna, je zobrazena chyba „Špatný formát datumu“
Money – systém provede kontrolu na finanční formát:
hodnota je uvedena v haléřích bez desetinného oddělovače
prvním znakem MŮŽE být znaménko
dalšími znaky jsou cifry (pokud číslo začíná nulami, tak všechny nuly zleva jsou ignorovány při převodu na číselnou hodnotu)
Pokud podmínky nejsou splněny, je zobrazena chyba „Špatný formát měny“.
Text – je povolen libovolný alfanumerický znak kromě oddělovačů atributů, pokud je délka řetězce delší, než délka systémem očekávaná (sloupec Max. délka), dojde k oříznutí řetězce zprava
Např. hodnota VS v dávce je „0123456789ABCDEFGHIJabcd“, systém však očekává maximálně délku 20, proto bude hodnota VS zkrácena zprava na řetězec „0123456789ABCDEFGHIJ“, tj. na dvacet znaků.
Copyright © ARBES, 2023