Prikazi cijelu temu 07.03.2011 11:51
biromega Van mreze
Clan
Registrovan od:10.12.2010
Lokacija:Breza


Predmet:Re: Ideje i rjesenja iz teme fiskalizacija
Evo kako sam ja to riješio (idejno) postoje dva "koraka"

1) nakon pripreme fiskalnog (reklamiranog) računa u aplikaciji pozivam funkciju OBRADAFP koja u zavisnosti od vrste fiskalnog uređaja radi sljedeće

1.1. NSC
- provjerava da li se pojavio fajl "odgovor" na zadnju komandu displeju. Ako je OK i fajl odgovora sadrži red sa "47,1" šalje se račun štampaču i provjerava da li fajl odgovora sadrži "56,1,"

1.2. Tring

- šalje se račun štampaču i provjerava da li fajl odgovora sadrži "</VrstaOdgovora>"

1.3. Tremol

- šalje se račun štampaču i provjerava da li se pojavio fajl .OUT (odgovor)

1.4. HCP (malo komplikovanije)

- na početku se obriše bill_state.xml i pošalje se račun štampaču (RCP_xxx.xml) + cmd.ok i "čeka" se da drajver obriše cmd.ok, provjerava se da li se pojavio fajl RCP_xxx.OK te se šalje receipt_state (sa fajlom cmd.ok). kada drajver "obriše" cmd.ok provjerava se da li postoji fajl bill_state.xml

1.5. ERP

- šalje se račun na štampač i provjerava se da li se pojavio fajl odgvovoa (.eln) i da li on sadrži tekst "BF:" ili "RF:"

1.6. Mikroelektronika

- šalje se račun na štampač i provjerava se da li se pojavio fajl odgvovoa (.inp) i da li on sadrži tekst ";Ok;Last"

Ako nisu ispunjeni svi uslovi iz koraka 1 (za određeni fiskalni uređaj) PREKIDA se knjiženje računa (koji nije ispisan na fiskalni uređaj)
Ako su ispunjeni svi "propisani" uslovi iz koraka 1 ide se na korak 2.

2) Čitanje i obrada odgovora fiskalnog uređaja (CITAJFP)

2.1. NSC

- iz fajla odgovora u redu "56,1," izdvaja se BF (za fiskalni račun) ili RF (za reklamirani) i odbaciju se vodeće nule

2.2. Tring

- iz fajla odgovora se traži "<VrstaOdgvora>OK</VrstaOdgvora> i izdvaja broj računa "<Vrijednost>xxx</Vrijednost>"

2.3. TREMOL

- iz fajla odgovora se traži "<OPOS_SUCCESS" i izdvaja broj računa "ReceiptNumber="

2.4. HCP

- iz fajla odgovora u "BILL_STATE.XML" izdvajamo RECEIPT_NUMBER (za fiskalni račun) ili REFOUND_RECEIPT_NUMBER (za reklamirani)

2.5. ERP

- iz fajla odgovora u redu "BF:" izdvajamo se broj fiskalnog računa ili "RF:" izdvajamo broj reklamiranog računa

2.6. Mikroelektronika

- iz fajla odgovora u redu ",Ok;LastReceiptNumber;" izdvajamo se broj fiskalnog računa ili "Ok;LastRefundNumber;" izdvajamo broj reklamiranog računa

Ako su ispunjeni svi predviđeni zahtjevi iz koraka 2 "fiskalizacija" zahtjeva je uspjela (dobili smo broj fiskalnog-reklamiranog računa) i treba "završiti" knjiženje u suprotnom treba ponuditi mogućnost da se unese broj fiskalnog (reklamiranog) računa ako je u međuvremenu odštampan (kod pojedinih uređaja se to dešava) ili da se zahtjev obriše tj. prekine knjiženje.
Ovaj post je ureden 1 puta. Posljednja izmjena 07.03.2011 11:54 od strane biromega.