Úvod > Články > Data z ARES do všech aplikací

Data z ARES do všech aplikací

Existence rejstříků ARES není žádnou převratnou novinkou. Na vyhledávání v rejstříku živnostníků nebo v obchodním rejstříku jsme si za léta existence těchto služeb již zvykli. Pro některé z vás ale může být novinkou, že na tyto rejstříky se lze pomocí webových služeb snadno připojit a čerpat z nich data pro vlastní projekty.

V momentě, kdy jsem od nadřízeného dostal za úkol naprogramovat webovou aplikaci, která si bude dotahovat data z rejstříku ARES, mě polilo horko. Naštěstí ministerstvo financí ČR provozuje v rámci těchto rejstříků webové služby na bázi XML, čímž je zajištěno, že data z rejstříků mohou využít vývojáři na všech myslitelných platformách a v různých vývojových prostředích. Samozřejmě, existují i určité meze těchto služeb, pro většinu aplikací vám ale funkčnost postačí. Součástí informačního systému ARES je tedy také XML rozhraní pro vyhledání subjektu a zpřístupnění jeho veřejných údajů ze zdrojových registrů. Služby XML může využívat každý, pokud bude respektovat podmínky provozu. 

Pravidla provozu a omezení 

Všechny údaje, které ARES zpřístupňuje, mají pouze informativní charakter a nemají charakter úřední listiny. Jejich výpis proto nemůže být použit jako průkazní materiál pro úřední jednání. Toto je ale zřejmé, pod stejným ustanovením vystupují také formuláře na serveru Justice nebo v registru živnostníků. Ministerstvo financí nenese odpovědnost za aktuálnost a úplnost údajů z databáze ARES, ani za nepřetržitý provoz www aplikací pro zpřístupnění údajů z informačních systémů. S ohledem na charakter provozu ARES a jeho zabezpečení si Ministerstvo financí vyhrazuje právo omezit nebo znemožnit přístup k www aplikaci ARES uživatelům, kteří odešlou k vyřízení více než 1000 dotazů v době od 8:00 hod. do 18:00 hod, případně více než 5000 dotazů v době od 18:00 hod. do 8:00 hod. následujícího dne.  

Ministerstvo také předpokládá korektnost pokládaných dotazů a fakt, že se coby uživatel nepokusíte narušit chod systému například několika současně spouštěnými dotazy z jedné IP adresy. V případě odůvodněné mimořádné potřeby využívat XML služby ARES v nadlimitním režimu je možné požádat ministerstvo financí o možnost zvýšení limitu a sdělit předpokládaný počet dotazů nebo dodat seznam IP adres, ze kterých se bude na XML služby ARES přistupovat. Také je možné dodat kontaktní e-mailové adresy pro možnost zasílání upozornění o případných výpadcích v provozu IS ARES. Pro drtivou většinu běžných aplikací si ale s omezením vystačíte a nebudete muset žádat o udělení výjimek.  

Možnosti spojení s rejstříky ARES 

V zásadě existují tři metody, kterak se do rejstříků připojit. První z nich využijete v případě, že využíváte technologii .NET, případně nějaký sofistikovaný programovací jazyk. Jde o kolekci WSDL souborů, které snadno zahrnete do svého programu a které definují podobu komunikace na bázi XML se servery ARES. Příklady a samotné soubory naleznete na této webové stránce. Další možností je využít klasické metody pomocí volání XML z web adresy. K tomuto účelu jsou vytvořeny CGI skripty, kterých se ptáte na základě předání parametrů metodou GET nebo POST. Pro metodu GET je k dispozici mnohem více možností, což vychází z předpokládaného vyššího využití tohoto způsobu. Bližší informace o napojení přes tyto metody jsou uvedeny zde

Příklad využití a implementace v PHP 

V mém případě bylo využití definováno zákazníkem, jenž si u naší společnosti objednal registrační formulář na bázi HTML / Javascript / PHP / MySQL, který zajistí registraci podnikatelských subjektů na zákazníkově webu tak, aby uživatel vyplnil jen své identifikační číslo a do formuláře se předvyplnila data o jeho subjektu automatizovaně. Dalším omezením byl požadavek na kompatibilitu s PHP verze 4. Stáhnutí XML lze realizovat ve skriptovacím jazyku PHP velice jednoduše: 

// otevření socketu

$sock = fsockopen("wwwinfo.mfcr.cz", 80,$errno,$errstr,30); 

// pošleme požadavek

fputs($sock, "GET /cgi-bin/ares/darv_bas.cgi?ico=".$_POST['ic']." HTTP/1.1rnHost: wwwinfo.mfcr.czrn"); 

fputs($sock, "Connection: closernrn");

// postupně načteme všechny řádky ze stránky a uložíme si je do proměnné

while ($line = fgets($sock, 128)):

$page .= $line; 

endwhile;

 

Ve výsledku budeme mít v proměnné s názvem Page uloženu staženou stránku XML zdroje. Tu si je pak nutné rozložit do pole a další postup není nutné pokročilým vývojářům popisovat. Jen dodám, že pro parsování do pole se mi osvědčila tato funkce.

12. 8. 2009

Autor: David Procházka

Sdílejte

Přečtěte si také

 

Digitální Česko 2.0: přešlapování na místě

Vláda vzala na vědomí zprávu o plnění agendy Digitální Česko 2.0 s tím, že je splněno 14 bodů ze 17. Bližší pohled...

 

Přešlapování okolo zdravotnické informatiky

Zdravotnictví představuje nepochybně jednu z nejlukrativnějších oblastí, se kterými se lze v současném světě...

 

Open source se ve státní správě daří

Open source postupně překonává předsudky o nespolehlivých a špatně použitelných řešeních. Plně jej podporuje...

Nejčtenější články

10 věcí, které můžete dělat na Messengeru (a nevíte to)

 

Chatovací aplikace skýtá mnoho tajů, které je možné nanejvýš příjemně využít. Jen jste o nich do teď nevěděli. Dali...

Vánoce 2017: Který z operátorů přišel s lepšími dárky?

 

Operátoři už vyložili karty na stůl, takže můžeme posuzovat, kdo si pro své zákazníky připravil opravdu výhodnou...

Naměřené rychlosti internetu na DSL.cz v listopadu 2017

 

Zdá se, že se zima dotkla i spojení, protože spolu s teplotami klesá i rychlost internetu. Zatímco v minulých...