EET2.Client
Reprezentace EET klienta = pokladny.
Vlastnosti
| Vlastnost | Typ | Popis |
|---|---|---|
| EicPoplatnika | String | EIČ Poplatníka, formát CZ + 8-10 číslic |
| IdJednotky | Integer | ID Provozovny (1–999999999) |
| IdPokl | String | ID Pokladny, max 20 znaků |
| Endpoint | String | Nastavená URL adresu serveru (playground/ostré prostředí) |
| CertPath | String | Lokální cesta k aktuálně používanému .p12 certifikátu |
Metody
Init(eicPopl: WideString; idJednotky: Integer; idPokl: WideString; isPlayground: WordBool)
Inicializace klienta před použitím
| Parametr | Typ | Popis |
|---|---|---|
| eicPopl | WideString | EIČ poplatníka, formát CZ + 8-10 číslic |
| idJednotky | Integer | ID provozovny (1–999999999) |
| idPokl | WideString | ID pokladny, max 20 znaků |
| isPlayground | WordBool | True = testovací prostředí, False = ostré prostředí |
Vyhodí chybu při nevalidních hodnotách nebo pokud již byl klient inicializován.
Příklad:
var
Client: OleVariant;
begin
Client := CreateOleObject('EET2.Client');
Client.Init('CZ12345678', 3, 'KASA-001', False);
end;
LoadCert(pkcs12Path: WideString; password: WideString)
Načte podpisový certifikát (.p12). Musí být zavoláno před odesíláním dat.
| Parametr | Typ | Popis |
|---|---|---|
| pkcs12Path | WideString | Cesta k .p12 souboru |
| password | WideString | Heslo od .p12 certifikátu |
Vyhodí chybu pokud je certifikát neplatný nebo heslo není správné.
Příklad:
var
Client: OleVariant;
begin
Client := CreateOleObject('EET2.Client');
Client.Init('CZ12345678', 3, 'KASA-001', False);
Client.LoadCert('CZ12345678.p12', 'tajne_heslo');
end;
Submit(transakce: IDispatch; prvniZaslani: WordBool): WideString
Odešle transakci na server a vrátí potvrzovací kód POK
| Parametr | Typ | Popis |
|---|---|---|
| transakce | IDispatch | Objekt typu EET2.Transaction reprezentující odesílanou transakci |
| prvniZaslani | WordBool | True pokud se jedná o první pokus o zaslání, jinak False |
Vrací server vrácený POK nebo případnou chybu.
Příklad:
var
Client, Tx: OleVariant;
Pok: string;
begin
Client := CreateOleObject('EET2.Client');
Client.Init(...);
Tx := CreateOleObject('EET2.Transaction');
Tx.Init(...);
Pok := Client.Submit(Tx, True);
end;
Ošetření chyb (doporučeno): try/except + EOleException
Metody knihovny vyhazují standardní COM chybu, kterou Delphi zachytí jako EOleException včetně popisné zprávy.
Příklad:
var
Client: OleVariant;
begin
try
Client := CreateOleObject('EET2.Client');
// Zavolani Submit() pred Init()
Client.Submit(Tx, True);
except
on E: EOleException do
ShowMessage('Chyba: ' + E.Message); // napr. "Objekt neni inicializovan"
end;
end;
GetLastErrorCode(): Integer
Alternativní/starší způsob zjištění posledního chybového kódu — vrátí kód posledního erroru nebo 0, pokud poslední zavolaná funkce proběhla bez chyby. V běžném Delphi kódu preferujte try/except + EOleException.Message výše.
Příklad:
var
Client: OleVariant;
begin
Client := CreateOleObject('EET2.Client');
// Zavolani Submit() pred Init()
Client.Submit(Tx, True);
ShowMessage(IntToStr(Client.GetLastErrorCode)); // Vrati 200, tedy error NOT_INITIALIZED
end;