OBERON
Ďalšie odkazy
XML komunikácia
Jednou z komfortných možností, ako exportovať údaje z OBERON-u, alebo naopak, importovať do OBERON-u, je využitie XML komunikácie. Ide o výmenu súborov vo formáte XML, v ktorých sú uložené prenášané údaje. Najčastejšie sa exportujú/importujú údaje dokladov ako faktúra, objednávka, výdajka a pod.
Výmena XML dokumentov môže prebiehať v rámci jednej firmy (napr. pri viacerých pobočkách), ďalej medzi rôznymi účtovnými jednotkami, ktoré používajú OBERON (teda rovnaký softvér) a nakoniec aj medzi rôznymi účtovnými jednotkami používajúcimi rozdielny účtovný (skladový) softvér.
Pri XML komunikácii sa importujú/exportujú súbory vo formáte XML, ktoré sú pre OBERON presne špecifického a daného formátu (ide o tzv. natívny formát OBERON XML). Aby OBERON vedel importovať údaje z iného systému s rozdielnou štruktúrou XML súboru, existuje možnosť pred samotným importom automaticky vykonať konverziu (transformáciu) týchto údajov. Konverziu údajov je možné vykonať niekoľkými spôsobmi, pričom najčastejšie je to pomocou XSLT transformačných šablón. Obdobne je možné postupovať aj pri exporte údajov.
Schématický diagram exportu údajov

Schématický diagram importu údajov

Transformačné XSL šablóny (XSLT)
Transformačné šablóny sú súčasťou jazyka XSL (eXtensible Stylesheet Language) slúžiaceho na tvorbu štýlov zobrazenia k súborom XML. XSL transformačné šablóny (XSLT) primárne slúžia na prevod dát vo formáte XML do formátu HTML na prehľadné zobrazenie dát používateľovi. Využívajú sa však aj na prevod medzi rôznymi štruktúrami XML, prípadne aj inými textovými formátmi, medzi ktoré najčastejšie patria napríklad CSV súbory, prípadne súbory tabuľky XML pre Microsoft Excel a iné.
V systéme OBERON je možné využiť XSLT šablóny na import alebo export údajov z iných systémov s rozdielnou štruktúrou komunikácie pomocou XML súborov. Pred importom alebo po exporte je možné vykonať konverziu XML dát pomocou transformačnej šablóny a zabezpečiť tak kompatibilitu dát pre jednotlivé systémy.
- Vzorové XSLT šablóny použiteľné na konverziu XML súborov v sekcii na stiahnutie:
http://oberon.exalogic.sk/na-stiahnutie/xml-komunikacia-subory/
Príklad zdrojovej XML štruktúry:
<?xml version="1.0" encoding="UTF-8"?>
</BusinessPartners>
<BusinessPartner IDNum="1001">
<Name>Test, s.r.o.</Name>
<IdentificationNumber>31658768</IdentificationNumber>
<IdentificationNumber_Tax>2225557779</IdentificationNumber_Tax>
<IdentificationNumber_VAT>SK2225557779</IdentificationNumber_VAT>
<Branch_Name>Pobočka</Branch_Name>
<CustomsOffice_Number_SBL>12365478901</CustomsOffice_Number_SBL>
<Address_Residence>
<Street_Name_Full>Pod mostom 138/2</Street_Name_Full>
<Postal_Code>058 01</Postal_Code>
<City>Poprad</City>
</Address_Residence>
</BusinessPartner>
.
.
</BusinessPartners>
XSLT transformačná štruktúra:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<partneri_zoznam>
<!-- XPath výraz pre výber požadovaných položiek zo štruktúry XML a prechádzanie
všetkými elementmi typu 'BusinessPartner' nachádzajúcimi sa v otcovskom elemente
'BusinessPartners' zdrojovej XML štruktúry -->
<xsl:for-each select="BusinessPartners/BusinessPartner">
<partner>
<!-- mapovanie vlastností pôvodného xml do novej štruktúry -->
<!-- znak '@' pred identifikátorom 'IDNum' znamená načítanie hodnoty atribútu -->
<identifikator><xsl:value-of select="@IDNum"/></identifikator>
<nazov><xsl:value-of select="Name"/></nazov>
<ico><xsl:value-of select="IdentificationNumber"/></ico>
<dic><xsl:value-of select="IdentificationNumber_Tax"/></dic>
<ic_dph><xsl:value-of select="IdentificationNumber_VAT"/></ic_dph>
<pobocka_nazov><xsl:value-of select="Branch_Name"/></pobocka_nazov>
<cislo_sbl><xsl:value-of select="CustomsOffice_Number_SBL"/></cislo_sbl>
<!-- vnorenie do hlbšej úrovne pomocou znaku '/' -->
<sidlo_ulica>
<xsl:value-of select="Address_Residence/Street_Name_Full"/>
</sidlo_ulica>
<sidlo_psc><xsl:value-of select="Address_Residence/Postal_Code"/></sidlo_psc>
<sidlo_obec><xsl:value-of select="Address_Residence/City"/></sidlo_obec>
</partner>
</xsl:for-each>
</partneri_zoznam>
</xsl:template>
Výsledný súbor XML po konverzii pomocou XSLT šablóny:
1001
Test, s.r.o.
31658768
2225557779
SK2225557779
Pobočka
12365478901
Pod mostom 138/2
058 01
Poprad
.
.