GetZanikleSubjektyCompressed - CZ

GetZanikleSubjektyCompressed - CZ

Tato webová metoda Webové služby CreditCheckAktualizace je poskytována zdarma.

Tato webová metoda vrací seznam zaniklých subjektů k definovanému datumu. Tímto datem bylo původně 1.1.2008, 1.6.2012 došlo k prvnímu posunutí data na 1.1.2011. Od té doby se datum posouvá každý rok 1.6. o jeden rok.

 

Počet takových subjektů se blíží k 1 milionu a všechny mají přidělen negativní status 3. Vzhledem k tomu, že jde o dlouhodobě „mrtvé subjekty“, nezařazujeme je z důvodu úspory velikosti souboru do běžných dávkových metod (např. GetCreditChecks) určených pro denní aktualizaci. Vhodnou implementací této metody můžete pomoci zákazníkům vyčistit databáze o již neaktivní subjekty. Naše doporučení je následující: 1) 1-2x za rok stáhnout data metodou GetZanikleSubjektyCompressed a následně označit v databázi všechny obsažené subjekty nejenom přiděleným statusem (3), ale i novým příznakem „zaniklý subjekt“. 2) zajistit, aby při následných aktualizacích některou z dávkových metod ( např. GetCreditChecks) nedošlo u takto označených firem ke zpětnému přepsání statusu 3 na nižší.


Pozor: u v historii zaniklého subjektu může v budoucnosti dojít k jeho "oživení", tj. navrácení statusu 1.


Seznam subjektů je v zazipované formě a zazipovaná data jsou převedena do Base64 formátu. Webová metoda vrací datový string, který je obsahuje zazipovanou reprezentací jednoduchého Xml formátu. Webová metoda vyžaduje použít SOAP header, který obsahuje parametry přihlášení k webové metodě

SOAP header 

<soap:Header> <CreditCheckHeader xmlns="http://creditcheck.cz/"> <Login>string</Login> <Password>string</Password> </CreditCheckHeader> </soap:Header>


Popis elementů 

Název

Popis

Login

uživatelské jméno

Password

uživatelské heslo


Tyto údaje jsou stejné pro všechny uživatele jednoho partnerského systému a standardně budou neměnné. Proto doporučujeme je nastavit pro všechny napevno.

Vstupní parametry

Nejsou

Výstupní data

<creditCheck> <webMethod>GetZanikleSubjektyCompressed</webMethod> <version>0.0.0.6</version> <time>15.2.2010 8:12:35</time> <count>14</count> <data> <![CDATA[Xbdg52354tr2cvdserHtzVZUtzujk]]> </data> </creditCheck>


Popis elementů 

Název

Popis

webMethod

název webové metody, která vrátila data

version

verze webové služby

time

serverový čas vygenerování souboru

count

počet záznamů subjektů, které obsahuje sekce data

data

zazipovaná a do Base64 konvertovaná data subjektů zabalená do CDATA


Popis rozzipovaného formátu dat v elementu 

Element obsahuje blok dat oddělených oddělovači, která jsou obalena do CDATA. Jeden záznam reprezentuje jeden řádek. Záznamy jsou odděleny znakem newLine – nová řádka. Jeden záznam obsahuje data.

  • první pozice: identifikátor subjektu, zde ičo subjektu




Příklad: 63493551 kde 63493551 = ičo subjektu

Poznámka 1 Formát a oddělovače dat můžou být na základě klientského požadavku změněné. Záznamy jsou unikátní podle identifikátoru subjektu a jeden subjekt nemůže mít více záznamů s různým hodnocením.

Poznámka 2 Metoda není určena pro denní aktualizaci. Pokud plánujete implementaci této metody a požadujete častější stahování dat než několikrát do roka, kontaktujte nás.

 

 

Ukázkový kód pro rozbalení dat

string source = service.GetZanikleSubjektyCompressed(soapHeader); document.LoadXml(source); string zippedData = document.SelectSingleNode("creditCheck").SelectSingleNode("data").InnerText; byte[] k = Decompress(Convert.FromBase64String(zippedData)); source = new System.Text.UTF8Encoding().GetString(k); public static byte[] Decompress(byte[] buffer)         {             MemoryStream ms = new MemoryStream();             byte[] data = new byte[4096];             Stream stream = new InflaterInputStream(new MemoryStream(buffer));             try             {                 while (true)                 {                     int bytes = stream.Read(data, 0, data.Length);                     if (bytes < 1)                     {                         break;                     }                     ms.Write(data, 0, bytes);                 }             }             finally             {                 stream.Close(); stream.Dispose();             }             return ms.ToArray();         }