K dispozici máme tři pokročilé parametry pro různé funkcionality
paramNaseptavaniFiremUrl
našeptává a vyplní data firmy, definuje hledání v Obchodní partneři > Adresy firem > Nový > po vyplnění pole Název se objeví seznam možných firem
paramFirmaInfoUrl
stáhne data konkrétní firmy, definuje hledání v Obchodní partneři > Adresy firem > Nový > Aktualizovat z internetu - nabídne aktualizaci údajů z uvedené URL
paramFirmyDavkaInfoUrl
stáhne data všech firem a aktualizuje údaje, definuje hledání v Obchodní partneři > Adresy firem > tlačítko Aktualizovat vše v horní liště
U slovenských firem je ještě potřeba nastavit další pokročilý parametr
paramNaseptavaniFiremSk
jeho hodnota je true nebo false
Definice parametru
Každý ze základních tří parametrů musí obsahovat celou URL adresu skriptu, který zpracuje nešeptání firem.
<winstrom version="1.0">
<parametr>
<paramK>paramNaseptavaniFiremUrl</paramK>
<hodnota>https://www.mojeSluzba.sk/hledejSKFirmu/</hodnota>
</parametr>
<parametr>
<paramK>paramNaseptavaniFiremSk</paramK>
<hodnota>true</hodnota>
</parametr>
</winstrom>
ABRA Flexi poté zavolá udanou URL a přidá parametry:
https://www.mojesluzba.sk/hledejFirmu/?q=hledany-nazev-firmy&country=SK&format=xml&limit=20...
q - hledaný název firmy
country - kód země, kterou hledáme
format - v tomto případě vždy XML
limit - počet záznamů
ic, dic, ic-dph - identifikační údaje
statleg - kód země legislativy dle našeho ABRA Flexi
V případě parametru paramFirmyDavkaInfoUrl
aplikace přidá CSV data v gzip:
// Vstupní data jsou ve formátu CSV s GZIP kompresí
// ID;IC;DIC;STAT;REV\n
// 1;26747804;CZ26747804;CZ;0\n
// 2;26380676;CZ26380676;CZ;0\n
// 3;28019921;CZ28019921;CZ;0\n
Tedy na každém řádku je id, ič, dič a stát jedné firmy.
mode - pro tento pokročilý parametr existuje výstupní parametr určující detail informací s hodnotami:
auto - pouze bankovní údaje firem
all - všechny dostupné informace o firmě
Pokročilým parametrem paramFirmyDavkaAktualizovatBanku lze řídit, jakou hodnotu nabývá parametr mode, pokud tento pokročilý parametr nastavíme na true bude vráceno pouze bankovní info, false pak vše
Aplikace poté očekává jako návratovou hodnotu ABRA Flexi XML. Jinými slovy, Vaše služba/skript na uvedené adrese https://www.mojeSluzba.sk/hledejSKFirmu/
musí zpracovat výstup, například získat potřebná data ze slovenského obchodního registru: https://www.orsr.sk/hladaj_subjekt.asp?OBMENO=hledany-nazev-firmy
Získaná data z registru je nutné přetransformovat do podoby ABRA Flexi XML, poté budou načteny do aplikace.
Kompletní příklad využítí parametru paramNaseptavaniFiremUrl v PHP
<?php
// Získáme parametry z URL
$queryString = $_GET["q"] ?? ""; // hledaný text
$stat = $_GET["country"] ?? ""; // kód státu (př. CZ)
$format = $_GET["format"] ?? ""; // formát (xml)
$limit = $_GET["limit"] ?? ""; // maximum záznamů
// Získáme pole firem odpovídajícím hledanému textu a státu,
// funkce vrátí maximální počet záznamů podle parametru $limit
// Tuto funkci musíme sami implementovat
$firmy = najdiFirmuPodleJmena($queryString, $stat, $limit);
// Převedeme pole firem do pole XML elementů
$firmyXml = [];
foreach ($firmy as $firma)
{
// Vytvoříme XML element pro firmu
// pro generování XML můžeme využít naši oblíbenou knihovnu 18 $firmyXml[] = "
<adresar>
<ic>$firma[ico]</ic>
<nazev>$firma[nazev]</nazev>
<ulice>$firma[ulice]</ulice>
<mesto>$firma[mesto]</mesto>
<psc>$firma[psc]</psc>
<kodPravniFormy>$firma[kod_firmy]</kodPravniFormy>
<stat>code:$firma[kod_statu]</stat>
<platceDph>$firma[je_platce_dph]</platceDph>
<dic>$firma[dic]</dic>
<!-- ... a všechny další vlastnosti, které máme k dispozici --> </adresar>";
}
// Dokončíme a vrátíme výsledný XML dokument
echo "<?xml version=\"1.0\" encoding=\"utf-8\"?>"
. "<winstrom>"
. implode("\n", $firmyXml)
. "</winstrom>";
Poznámka: Na úpravy v PHP se nevztahuje technická podpora.