Upload
sima-kosmos
View
216
Download
0
Embed Size (px)
Citation preview
8/19/2019 Komunikacioni Protokol Fiskalnih Uredjaja Todor
1/3
Komunikacioni protokol Fiskalnih uredjaja Todor&Comtrade za VBA
Osnovu komunikacionog protokola cine tabele PLU,Placanja i PLU_RCV i niz funkcija koje su udaljem tekstu objasnjene Pre zapocinjaja bilo kakve operacije potrebno je de!nisati port "a to je obezbedjena globalna promenljiva activePort As Integer koja najcesce ima vrednost #$CO%#& i kojoj treba da dodelite vrednost $'(CO%',) * CO%) &
Izdavanje racuna : +zdavanje racuna zapocinje pozivanjem funkcijeStartRacun(). "a ispravan rad i rad za koji smo odgovorni veoma je vazno pratiti redosled pozivanja funkcija"atim se vrsi upis prodati artikla pozivanjem funkcije za svaki artikal ponaosob-
WritePLUForBill(BarCode As String, description As String, price As Single,vatcode As Integer, depart As Integer, !est"pe As Integer, #olicina As Single) AsInteger
Ova funkcija ima sledece parametre -
•BarCode prestavlja jedinstvenu sifru artikla$ barCod& koji je ma.#' karaktera i zadrzi samo i smo cifre kao karaktere
• $escription je naziv ma. #' karaktera koji mora biti jedinstven zaracun
• Price cena artikla koja je / 0 1 2 33333333
• %atcode poreska stopa za dati artikal /40 1 245
• $epart odeljenje za prodaju /0 1 2 ##
• &est"pe jedinica mere /40 1 243
• 'olicina kolicina datog artikal koja mora zadovoljiti jedan odsledeci formata - 66660, 6660,0, 660,00,60,000 i 0,0000 pritome #olicina price ******.**
7unkcija vraca greske koje se mogu videti u tabeli dole
8ledece je pozivanje funkcije WritePlacan+aForBill(%rsta As Integer, Inos As $ou-le)As Integer
Ova funkcija vrsi upis vrste placanja u tabelu placanja za svako placanje po jednom
Parametri-%rsta # * gotovina
/0 cek10 kreditna kartica
Inos 24 0 1 / 33333333333
8ledeci korak je pozivanje funkcije - racun2ut koja vrsi stampu racuna na !skalnomuredjaju
Primer -StartRacun()For i 3 4 5o 46
gres#a 3 WritePLUForBill(78887 9 i : 46, 7arti#al7 9 i, 4/.1 : i 1, /, 4, 4, i 4.1)
; ispita+ gres#u
8/19/2019 Komunikacioni Protokol Fiskalnih Uredjaja Todor
2/3
; ispita+ gres#u
gres#a 3racun2ut; ispita+ gres#u
br. Gr. opis
400n nedefinisana poreska stopa n
301 potrebno je uraditi dnevni raport
113 nepostojeca vrsta placanja
112 nepravilno unet iznos za placanje
109 maksimalan broj stavki za racun108 losa jedinica mere
107 nepravilno uneto odeljenje
106 nepravilna poreska stopa
105 prevelika suma kolcena
104 nepravlino uneta kolicina
103 nepravilno uneta cena
102 nepravilno unet naziv za art
101 nepravilno unet kod
99 nepostovanje redosleda funkcija
1 nepostojeci port ili je port zauzet
0 !k
"1 no connection or communication
"2 no connection
"3 nepravilno unet datum
"4 #reska pri slanju podataka $c%eck suma&
"6 #reska pri izdavanju racuna u cas% uredjaju
Dnevni izvestaj: za izvrsenje poziva se funkcija dnevniivesta+() As Integer
8/19/2019 Komunikacioni Protokol Fiskalnih Uredjaja Todor
3/3
Presek stanja: poziva se funkcija prese#Stan+a() As Integer
Periodicni izvestaj : poziva se funkcija perIvesta+(dateP As $ate, date> As $ate)As Integer $datum u formatu dd.mm.yyyy )
Brisanje svih artikala iz uredjaja : funkcija -risan+eArts() As Integer
Primanje svih artikala iz Cash uredjaja : poziva se funkcija Receiveplu() AsInteger, primljeni artikli se nalaze u tabeli PLU_RCV
Slanje artikala u Cash uredjaj : prvo izvrsite brisanje tabele PLU$-s.e=ecute (?$elete @ro! PLU;), zatim upisujeartikle pozivanjem funkcije
WritePLUForSend(BarCode As String, description As String, price As Single, vatcode AInteger, depart As Integer, !est"pe As Integer) As IntegerParametri su isti kao kod funkcije WritePLUForBilll+ na kraju pozivate funkciju Progra!Art() As Integer
Primer -
d-s.=ecute (7$elete @ro! PLU7)
For i 3 4 5o 46 gres#a 3 WritePLUForSend(78887 9 i : 46, 7Bo-an&7 9 i, 4/.1 : i /, 4, 4)
; ispita+ gres#u