Ú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

T-Mobile upravil nabídku DSL internetu a MAGENTA TV

 

T-Mobile přestavil novou nabídku MAGENTA TV, na kterou postupně přejdou i stávající zákazníci. Zjednodušil také...

Tento týden startuje Liga mistrů UEFA a další evropské ligy

 

Fotbaloví fanoušci se mají na co těšit. Startuje Liga mistrů UEFA, Evropská liga a Evropská konferenční liga a...

O2 uvádí na trh chytrou televizi s předinstalovanou O2 TV

 

O2 představilo novou chytrou televizi s předinstalovanou aplikací O2 TV a vlastním tlačítkem na ovladači. Až do...