Využite nový Účet POHODA pre bezpečnejšie a pohodlnejšie jednotné prihlasovanie k službám a aplikáciam STORMWARE

Mechanizmus XML komunikácie s ekonomickým systémom POHODA

Všeobecný mechanizmus automatizovaného XML importu/exportu:

Kliknite na objekt, pre zobrazenie jeho popisu.

Zoznam objektov:

  1. Spustenie programu POHODA

    Externý proces spustí program POHODA s parametrami pre XML import/export.

  2. Príkazový riadok

    Príkazový riadok pre spustenie Pohoda.exe v režime XML importu/exportu.
    Formát: Pohoda.exe /XML "Užívateľ" "Heslo" "Cesta k INI souboru"
    Príklad: C:\Pohoda\Pohoda.exe /XML "Admin" "admpwd" "C:\Pohoda\Data\XML\xml_imp.ini"
    (Je možné zadať aj relatívnu cestu v tvare "./xml_imp.ini" - vzťahujúcu sa na adresár programu POHODA.)

    Poznámka:
    1. musí byť zaregistrovaná knižnica 'MSXML4.DLL' pomocou príkazu regsvr32.exe MSXML4.DLL.
    2. od verzie programu POHODA 11 300 (Leto 2016) musí byť zaregistrovaná knižniva 'MSXML6.DLL' pomocou príkazu regsvr32.exe MSXML6.DLL.
    Podrobnosti tu How To Upgrade the Microsoft XML Parser.

  3. INI súbor s parametrami importu

    Obsahuje údaje, ktoré musí POHODA poznať, aby mohla začať XML import/export.

    Formát:
    1. Spracovanie všetkých XML súborov vo vstupnom adresári:
    [XML]
    input_dir=Vstupny_adresar
    response_dir=Vystupny_adresar
    database=Nazov_databazy_uctovnej_jednotky
    check_duplicity=0, 1
    format_output=0, 1
    XSLT_input=Vstupny_transformacny_subor
    XSLT_output=Vystupny_transformacny_subor

    2. Spracovanie jedného vstupného XML súboru:
    [XML]
    input_xml=Vstupny_xml_subor
    response_xml=Vystupny_xml_subor
    database=Nazov_databazy_uctovnej_jednotky
    check_duplicity=0, 1
    format_output=0, 1
    XSLT_input=Vstupny_transformacny_subor
    XSLT_output=Vystupny_transformacny_subor

    input_dir:
    Povinný (ak nepoužijeme input_xml).
    Cesta k adresáru, v ktorom sú umiestnené XML súbory s dokladmi pre import alebo s požiadavkami na export. Používa sa, ak chceme importovať viac XML suborov.

    response_dir:
    Nepovinný.
    Adresár, do ktorého budú umiestňované XML súbory s exportovanými dokladmi alebo XML súbory s výsledkami importu. Ak nie je zadaná, je vytvorený adresár response vo vstupnom adresári.

    input_xml:
    Povinný (ak nepoužijeme input_dir).
    Názov súboru pre import - používa sa, pokiaľ chceme importovať iba jeden konkrétny XML súbor.

    response_xml:
    Nepovinný.
    Názov výstupného súboru. Používa sa, ak importujeme len jeden XML súbor (použijeme parameter input_xml) a výstup chceme do konkrétneho súboru. Ak tento parameter nezadáme, vo výstupnom adresári (viz. parameter response_dir) je vytvorený súbor s rovnakým názvom ako vstupný súbor (input_xml).

    database:
    Povinný (okrem zoznamu účtovných jednotiek).
    Názov databázy účtovnej jednotky, do/z ktorej chceme import/export vykonávať.

    check_duplicity:
    Nepovinný. Defaultná hodnota "0".
    Pokiaľ je nastavená hodnota "1", kontroluje sa, či zadaný doklad nebol už importovaný. Pokiaľ áno, import neprebehne a v Response sa zobrazí hlásenie o duplicite.
    Kontrola prebieha podľa atribútu id elementu dataPack a atribútu id elementu dataPackItem.

    format_output:
    Nepovinný. Defaultná hodnota "0".
    Ak je nastavena hodnota "1", vykoná se preformátovanie výsledného XML do štrukturovanejše podoby (pridanie odsadení a znakov nových riadkov).
    Upozornenie! U väčších XML môže byť preformátovanie časovo náročnejšie.

    XSLT_input:
    Nepovinný.
    Názov transformačného súboru, ktorý sa použije na transformáciu vstupného XML. Výsledkom bude nový súbor s koncovkou "_trn_i1.xml", ktorý sa použije pre spracovanie. Názov je zadaný vrátane cesty, buď abslolútne (napr: "C:\Program Files\Stormware\Pohoda\Info\XSL\export.xsl"), alebo relatívne - vztiahnuté k adresáru programu POHODA (napr: "Info/XSL/export.xsl").
    Poznámka: Transformačný súbor je možné zadať taktiež pri vstupnom XML do elementu dat:dataPack/dat:transformation/dat:input. Najskôr sa vykoná transformácia zadaná v INI súbore, potom transformácia zadaná v XML.

    XSLT_output:
    Nepovinný.
    Názov transformačného súbora, ktorý sa použije na transformáciu výstupného XML. Výsledkom bude nový súbor s koncovkou "_trn_o1.xml". Názov je zadaný vrátane cesty, buď abslolútne (napr: "C:\Program Files\Stormware\Pohoda\Info\XSL\export.xsl"), alebo relatívne - vztiahnuté k adresáru programu POHODA (napr: "Info/XSL/export.xsl").
    Poznámka: Transformačný súbor je možné zadať taktiež pri vstupnom XML do elementu dat:dataPack/dat:transformation/dat:output. Najskôr sa vykoná transformácia zadaná v INI súbore, potom transformaácia zadaná v XML.

    action_after_processing:
    Nepovinný.
    Nastavenie práce so vstupnými údajmi po vykonaní XML komunikácie.
    „0“ – Nechať vstupný súbor po jeho spracovaní.
    „1“ – Zmazať vstupný súbor po jeho spracovaní.
    „2“ – Presunúť vstupný súbor po jeho spracovaní do zložky (parameter Move_to).

    Move_to:
    Nepovinný.
    Adresár na presunutie súboru po vykonaní XML komunikácie. Pokiaľ je nastavená hodnota action_after_processing=2, potom je potrebné nastaviť cieľový adresár na presunutie súboru.

  4. Vstupný adresár

    Ak je v INI souboru uvedená hodnota input_dir, POHODA prejde všetky XML súbory v tomto adresári. Ak súbor obsahuje platný DataPack, je spracovaný a vo výstupnom adresári je vytvorený súbor s rovnakým názvom. Ten obsahuje výsledky importu/exportu.

  5. Výstupný adresár

    POHODA do tohto adresára umiestňuje XML súbory s exportovanými dokladmi alebo s výsledkami importu. Cesta k tomuto adresáru môže byť zadaná buď v INI súbore, alebo POHODA automaticky vytvorí podadresár Response vo vstupnom adresári.

  6. DataPack

    DataPack je XML obálka okolo jednotlivých dokladov importovaných do programu POHODA alebo požiadaviek na export z programu POHODA. Tvorí root element vstupných XML súborov.
    Jednotlivé importované doklady alebo požiadavky na export však nie sú vložené priamo do elementu dataPack, ale do elementu dataPackItem, ktorých môže jeden dataPack obsahovať ľubovoľné množstvo. V jednom súbore môžete teda naimportovať do programu POHODA neobmedzené množstvo dokladov alebo požadovať neobmedzené množstvo exportov. Jeden dataPack môže obsahovať elementy dataPackItem ako s dokladmi pre import, tak položky s požiadavkami na export.
    Dôvodom pre zavedenie DataPacku je identifikácia jednotlivých importných dávok a ich previazania na výstupné XML súbory - viď. ResponsePack.

  7. ResponsePack

    ResponsePack je obálka okolo jednotlivých dokladov exportovaných z programu POHODA alebo okolo výsledkov importu jednotlivých dokladov. Tvorí root element XML súborov umiestňovaných programom POHODA do výstupného adresára.
    Jednotlivé exportované doklady alebo výsledky importu však nie sú vložené priamo do elementu responsePack, ale do elementu responsePackItem, ktorých môže jeden responsePack obsahovať ľubovoľné množstvo.
    Každý responsePack zodpovedá určitému dataPacku. Tento vzťah je zaistený jednak tým, že POHODA vytvorí pre responsePack XML súbor s rovnakým názvom ako mal vstupný XML súbor s dataPackem a  tiež atribútom id, ktorý má ako dataPack tak aj responsePack. Hodnota atribútu id v responsePacku zodpovedá hodnote atribútu id v dataPacku, na ktorého základe bol responsePack vyvorený.

  8. Kontrola XML souborov

    Otestovať správnosť XML je možné napríklad s použitím aplikácie Stormware XML Validator 2.4.