To nie jest kopia dokumentacji a jedynie moje notatki jakie robiłem podczas czytanie pdf'a z firmy posnet.
Może zawierać błędy literówki itd.
- Wykaz kodów błędów drukarki - kompletny wykaz wszystkich kodów błędów zwracanych przez drukarkę Posnet
Po podłączeniu drukarki do sieci należy:
- Wejść do menu ustawień sieciowych w drukarce
- Ustawić adres IP na sztywno - najprawdopodobniej drukarka dostanie adres sieciowy z DHCP, ale dobrze jest ustawić adres statyczny, tak żeby się nie zmieniał na routerze. W przeciwnym razie później będzie ciężko do niej trafić.
- Sprawdzić port drukarki - aby się dowiedzieć na jakim porcie działa drukarka, trzeba wydrukować raporty niefiskalne. W menu raportów niefiskalnych znajduje się raport sieciowy, który zawiera informacje o porcie.
Po skonfigurowaniu drukarki sieciowej, aby przetestować połączenie:
Zacznij od klasy testowej StartZabawyZDrukarkaTest - zawiera wszystkie podstawowe testy potrzebne do rozpoczęcia pracy z drukarką w odpowiedniej kolejności.
Plik: Posnettests/StartZabawyZDrukarkaTest.cs
Klasa zawiera:
DailyReportTest()- pierwszy test połączenia (raport dobowy) - to pierwsze koty za płotySetHeaderTest()- ustawienie nagłówka paragonu (nazwa firmy, miejscowość, kod pocztowy)SetFooterTest()- ustawienie stopki paragonu (dodatkowe informacje na dole paragonu)WszystkiePodstawoweTesty()- kompleksowy test wykonujący wszystkie kroki w odpowiedniej kolejności
WAŻNE: Przed uruchomieniem testów należy ustawić IP i port drukarki w zmiennych host i port na początku klasy.
-
Ustawić IP i port drukarki w testach - w klasie
StartZabawyZDrukarkaTest(lubUnitTest1.cs) w zmiennychhostiport:string host = "192.168.50.47"; int port = 6666;
-
Wywołać raport dobowy - uruchomić test
DailyReportTest(), który wywołujePosnetHelper.DailyReport(). W tym momencie drukarka powinna zareagować i wydrukować raport dobowy.
To pierwsze koty za płoty - podstawowy test połączenia.
W pliku Posnettests/UnitTest1.cs dostępne są również inne testy pomocne przy konfiguracji i zaawansowanej pracy z drukarką.
WAŻNE: Aby móc wysyłać testowo e-paragony, drukarka musi być zafiskalizowana.
Niestety nie ma innej możliwości - trzeba się uśmiechnąć do producenta i wypozyczyc drukarkę, która jest zafiskalizowana i pozwala wysyłać e-paragony. Bez zafiskalizowanej drukarki testowanie funkcjonalności e-paragonów nie jest możliwe.
Jeśli chodzi o to, żeby klient dostał e-paragon mailem, to według obecnej wiedzy trzeba to obrabiać samemu.
Rekomendowane rozwiązanie:
- Najlepiej wydrukować paragon do PDF
- PDF załączyć do maila i wysłać do klienta
Uwaga: Obrazek paragonu nie powstaje automatycznie - trzeba to samemu ogarnąć. Przykład z aplikacji Lidla - paragon jest bardzo podobny do drukarkowego, ale to nie jest jego kopia, tylko samodzielnie przygotowany obrazek/PDF.
W bibliotece dostępne są następujące metody do pracy z e-paragonami (znajdują się w klasie PosnetHelper):
EparagonGet()- pobranie danych e-paragonuEparagonGetStatus()- pobranie statusu e-paragonuEparagonSetStatus(int status)- ustawienie statusu e-paragonuEparagonSetSchedule(...)- ustawienie harmonogramu wysyłkiEparagonGetSchedule()- pobranie harmonogramu wysyłkiEparagonSetServer(string url)- ustawienie serwera e-paragonówEparagonSetServer(int recNo, string url)- ustawienie serwera e-paragonów (z numerem rekordu)EparagonTestServerConnection(string url)- test połączenia z serweremEparagonSetNextIDZ(string idz)- ustawienie następnego IDZEparagonNewDocumentByIDZ(string idz)- utworzenie nowego dokumentu e-paragonu przez IDZ
Przykładowe testy znajdują się w pliku Posnettests/UnitTest1.cs:
EparagonReportTest()EparagongetStatusTest()EparagonSetStatusTest()EparagonSetScheduleTest()EparagonGetScheduleTest()EparagonSetTest()EparagonSetServerDodTest()EparagonServerConnectionTest()TestSetIDZ()TestCreateEdocument()
Aby uniknąć problemów z zaokrągleniami podczas wyliczania wartości na paragonie, drukarka Posnet stosuje specjalne algorytmy obliczeniowe. Poniżej opisane są kluczowe zasady i metody.
Wszystkie obliczenia są prowadzone z precyzją 10-cyfrową podczas całej transakcji. Wystąpienie nadmiaru obliczeniowego spowoduje zgłoszenie błędu (kod błędu 19 - błąd wartości CENA).
Po zakończeniu transakcji i zastosowaniu rabatów/narzutów, wartości są zaokrąglane do 0,01 zł (drugiej cyfry po przecinku):
- Kwoty BRUTTO[A]...BRUTTO[G] po rabacie/narzucie są zaokrąglane do 0,01 zł
- Wartości podatku PTU[A]...PTU[G] są również zaokrąglane do drugiej cyfry po przecinku
- Wartości NETTO[A]...NETTO[G] obliczane są jako różnica: NETTO[PTU] = BRUTTO[PTU] - PTU[PTU]
W przypadku gdy suma poszczególnych totalizerów wynikająca z obliczeń nie równa się wysokości paragonu po udzieleniu rabatu/narzutu kwotowego, lub wysokości rabatu/narzutu nie da się rozdzielić poszczególnym totalizerom przy wykorzystaniu zwykłej arytmetyki, stosowany jest następujący algorytm dystrybucji nadmiarowych groszy:
Parametry:
r: kwota rabatuXvA...XvG: kwota sprzedaży dla poszczególnych stawek VAT przed rabatemXa = Suma(XvA...XvG): podsuma przed rabatemXaPo = Xa – r: podsuma po rabacie
Algorytm:
-
Inicjujemy roboczy parametr
Z = 0 -
Dla każdej i-tej stawki VAT (gdzie i = A..G) wyliczamy kwotę sprzedaży po rabacie, zaokrąglając w dół do pełnych groszy:
XviPo = (Xvi * XaPo) / Xa -
Do
Zdodajemy resztę z powyższego dzielenia:Z = Z + ((Xvi * XaPo) mod Xa) -
Jeśli w danej iteracji wartość
Zosiągnęła lub przekroczyła wartośćXa, wówczas:- Obliczoną w tej iteracji kwotę sprzedaży
XviPozwiększamy o 1 grosz:XviPo = XviPo + 1 - Wartość
Zzmniejszamy oXa:Z = Z - Xa
- Obliczoną w tej iteracji kwotę sprzedaży
Kwoty sprzedaży przy narzucie kwotowym wyliczane są analogicznie jak przy rabacie kwotowym, z tą różnicą, że wartość narzutu jest dodawana do kwoty podsumy:
Parametry:
n: kwota narzutuXvA...XvG: kwota sprzedaży dla poszczególnych stawek VAT przed narzutemXa = Suma(XvA...XvG): podsuma przed narzutemXaPo = Xa + n: podsuma po narzucie
Algorytm: identyczny jak dla rabatu kwotowego, z tą różnicą, że XaPo = Xa + n zamiast XaPo = Xa - r.
W drukarce rabat procentowy obliczany jest dwiema metodami w zależności od konfiguracji urządzenia:
Metoda 1:
wartość' = ((100 - R) * wartość) / 100
Rabat = wartość - wartość' // kwota rabatu
Metoda 2:
Rabat = (wartość * R) / 100 // kwota rabatu
wartość' = wartość - Rabat
Gdzie:
wartość- wartość przed rabatemwartość'- wartość po rabacieR- wartość procentowa rabatu
Narzutx' = (Xvatx * N) / 100
Xvatx' = Xvatx + Narzutx'
-
Kontrola zgodności wartości: Po zakończeniu transakcji wartość
P_TOTALobliczona przez aplikację musi być identyczna z wartościąTOTALotrzymaną z systemu w sekwencji kończącej paragon. Obie kwoty muszą być jednakowe, aby poprawnie zakończyć transakcję. -
Korekcja sum BRUTTO: Jeżeli w sekwencji kończącej paragon przesłano niezerową wartość rabatu i niezerowy parametr
Px(rodzaj rabatu/narzutu), następuje korekcja sumBRUTTO[A]..BRUTTO[G]według odpowiednich wzorów, a następnie obliczane są wartości podatku PTU i netto. -
Zaokrąglenia w raportach: W raportach okresowych kontrola obliczania kwot należnego podatku w oparciu o sumy
RO_NETTO[A]..RO_NETTO[G]może wykazać nieznaczny błąd obliczeniowy wynikający z zaokrągleń kwot cząstkowych.
Przy rabacie kwotowym, jeśli mamy:
XvA = 1000(10,00 zł)XvB = 500(5,00 zł)Xa = 1500(15,00 zł)r = 50(0,50 zł rabatu)XaPo = 1450(14,50 zł)
Algorytm rozdzieli rabat proporcjonalnie między stawki A i B, a nadmiarowe grosze zostaną rozdzielone zgodnie z algorytmem dystrybucji.
Identyfikator polecenia: trfvinit
| Nazwa Parametru | Opis | Wymagany | Typ | Uwagi |
|---|---|---|---|---|
| nm | Nazwa faktury | NIE | Num. | Do 23 znaków dla parametru In=40. Do 39 znaków dla parametru In=56. |
| cc | Liczba kopii | NIE | Num. | Zakres 0 - 9. Domyślnie cc=0 |
| co | Drukowanie na fakturze napisu ORYGINAL/KOPIA | NIE | BOOL | True - drukowanie wtłaczone, False - brak drukowania. Wartość domyślna określana przez instrukcje fvcfgset. |
| In | Długość linii danych niefiskalnych | NIE | Num. | Przyjmuje wartość 40 (domyślnie) lub 56 (tylko dla trybu 56 znaków w linii). Dane niefiskalne przesyłane w poleceniu trfvfreedata. |
| fn | Długość linii danych fiskalnych | NIE | Num. | Przyjmuje wartość 40 (domyślnie) lub 56 (tylko dla trybu 56 znaków w linii). |
Odpowiedź urządzenia: standardowa
Uwagi:
-
Udane rozpoczęcie faktury jest możliwe w sytuacji, gdy stan totalizerów dobowych pozwala na wystawienie faktury o maksymalnej wartości (nie ma zagrożenia przepełnienia któregoś totalizera).
-
Po rozpoczęciu transakcji należy wystąpić z niezbędnymi danymi za pomocą rozkazów
trfvbuyeritrfvnumber. -
Po rozpoczęciu faktury nie można dokonywać: obrotu opakowaniami, używać form płatności, storno, rabatów (dozwolonym rabatem jest rabat w linii transakcji w poleceniu
trline). -
Wartość domyślna parametru
cojest ustawiana przez rozkazfvcfgset, która obowiązuje w przypadku gdy nie przesyła się go w rozpoczęciu faktury. W czasie transakcji obowiązujące są ustawienia przesyłane rozkazemtrfvinit. -
Anulowanie transakcji może spowodować wydruk faktury anulowanej, zależnie od konfiguracji (polecenie cancelledsaleprintcfgset).
-
Dostępność w trybie tylko do odczytu: NIE.
Przykład użycia polecenia trfvinit:
[STX|trfvinit[TAB]nmNazwa_faktury[TAB]cc1[TAB]co1[TAB]#CRC16[ETX]
[STX|trnipset|TAB|ni1112223344|TAB|dw0|TAB|#CRC16|ETX]
Identyfikator polecenia: trpayment
Parametry wejściowe:
| Nazwa Parametru | Opis | Wymagany | Typ | Uwagi |
|---|---|---|---|---|
| ty | Typ formy płatności | TAK | Num. | 0 - gotówka, 2 - karta, 3 - czek, 4 - bon, 5 - kredyt, 6 - inna, 7 - voucher, 8 - przelew |
| wa | Wartość wpłaty | TAK | Kwota | Wartość wpłaty lub wartość reszty - zależnie od parametru re. Jak w rozkazie trline |
| na | Nazwa formy płatności | NIE | Alfanum. | Do 25 znaków. Domyślnie puste. |
| re | Flaga reszty | NIE | BOOL | False - płatność formą płatności, True - wydanie reszty |
Odpowiedź urządzenia: standardowa
Uwagi:
- Typem formy płatności nie może być waluta.
- Dla
ty = 0, wartość parametrunanie znajdzie się na wydruku i w JPK. - Musi zostać przestawiona suma form płatności pokrywająca wartość do zapłaty.
- Polecenie nie jest dostępne podczas drukowania faktury.
- Dostępność w trybie tylko do odczytu: NIE.
Przykład:
[STX]trinit[TAB]bm0[TAB|#CRC16[ETX]
[STX]trline[TAB]naJabłka[TAB]vt1[TAB]pr200[TAB]wa200[TAB]#CRC16[ETX]
[STX]trpayment[TAB]ty2[TAB]wa500[TAB]re0[TAB]#CRC16[ETX] - płatność formą płatności
[STX]trpayment[TAB]ty0[TAB]wa300[TAB]re1[TAB|#CRC16[ETX] - określenie reszty
[STX]trend[TAB]to200[TAB]re300[TAB]fp500[TAB]#CRC16[ETX]
W tym przykładzie zaczynamy transakcję, dodajemy linię produktu (jabłka), przypisujemy płatność kartą, a następnie definiujemy płatność gotówką z określoną resztą i kończymy transakcję.
Identyfikator polecenia: trend
Parametry wejściowe:
| Nazwa | Opis | Wymagany | Typ | Uwagi |
|---|---|---|---|---|
| to | Wartość fiskalna w zakończeniu | NIE | Kwota | |
| op | Wartość przestanych opakowań dodatnich (wydanych) | NIE | Kwota | |
| om | Wartość przestanych opakowań ujemnych (zwróconych) | NIE | Kwota | |
| fp | Wartość przestanych form płatności | NIE | Kwota | |
| re | Wartość przestanej reszty | NIE | Kwota | |
| fe | Flaga automatycznego zakończenia stopki | NIE | BOOL | True - bez przestawiania opakowań, dodatkowych linii (domyślnie) False - z przestawianiem |
Odpowiedź urządzenia: standardowa
Uwagi:
- Wartość fiskalna musi się zgadzać z wartością fiskalną paragonu.
- Wartość form płatności i opakowań musi być zgodna z wartościami wcześniej przestanymi.
- Wartość przestanych form płatności musi być równa lub większa od wartości do zapłaty.
- Przestane reszty muszą spełnić warunek: FORMY_PŁATNOŚCI - RESZTA = DO_ZAPŁATY
- Jeśli przestane formy płatności przekraczają kwotę DO ZAPŁATY i reszty nie zostały przestane, urządzenie samo liczy resztę.
- Dostępność w trybie tylko do odczytu: NIE.
Przykład:
[STX]trend[TAB]to123[TAB]fp123[TAB|#CRC16[ETX]
W tym przykładzie zakończono transakcję, podając wartość fiskalną i wartość przestanych form płatności.
Identyfikator polecenia: prncancel, trancel
Parametry wejściowe: brak
Odpowiedź urządzenia: standardowa
Identyfikator polecenia: stocash
Parametry wejściowe:
| Nazwa | Opis | Wymagany | Typ | Uwagi |
|---|---|---|---|---|
| kw | Kwota, za którą towar został nabyty | TAK | Num. | Do 499999999999. Dwie ostatnie cyfry stanowią część ułamkową |
Odpowiedź urządzenia: standardowa
Uwagi:
- Operacja niefiskalna rejestrująca zwrot towaru za określoną kwotę.
- Dostępność w trybie tylko do odczytu: NIE.
Przykład:
[STX]stocash[TAB]kw456[TAB]#CRC16[ETX]
Wydruk:
| POSNET THERMAL XL2 ONLINE |
| POSNET POLSKA S.A. |
| ul. Municypalna 33 |
| 02-281 Warszawa |
| www.posnet.com |
|NIP 5222628262 nr:156|
| N I E F I S K A L N Y |
|Zwrot towaru 4,56|
| N I E F I S K A L N Y |
|#001 KIEROWNIK 2018-09-10 13:15|
|1D415FF65644899AB140AD5DD26224CC92CFF091|
| ZBF 1801007587 |
Użycie w bibliotece:
// Zwrot towaru za kwotę 4,56 zł
PosnetHelper.ReturnGoods(4.56);Uwagi:
- Rozkaz
tranceljest synonimem rozkazuprncancel. - Dostępność w trybie tylko do odczytu: TAK.
Przykład:
[STX]prncancel[TAB]#CRC16[ETX]
W tym przykładzie anulowano transakcję lub wydruk.
Identyfikator polecenia: eparagondefaultget
Parametry wejściowe: brak
Odpowiedź urządzenia:
| Nazwa Parametru | Opis | Wymagany | Typ | Uwagi |
|---|---|---|---|---|
| ad | Adres serwera usługi eDokument | TAK | Alfanum. | Do 80 znaków (RFC 3986) |
| ct | Typ certyfikatu | NIE | Num. | 0 - Brak, 1 - Posnet Root, 2 - Odcisk certyfikatu |
| tp | Odcisk SHA certyfikatu | NIE | Alfanum. | 40 znaków - heksadecymalnie |
| sg | Czy wysłać grafikę? | - | BOOL | |
| sh | Czy wysłać stopkę? | - | BOOL | |
| td | Czy wysłać dane transakcji? | - | BOOL | |
| hd | Czy wysłać nagłówek? | - | BOOL | |
| ex | Parametr ignorowany. | - | BOOL | |
| gb | Czy wysłać dane binarne grafiki? | - | BOOL | |
| ts | Czas oczekiwania na odpowiedź | - | Num. | Czas w sekundach. Zakres 0 - 120. |
| tt | Czas oczekiwania na wysyłkę | - | Num. | Czas w sekundach. Zakres 0 - 120. |
Uwagi:
- Dostępność w trybie tylko do odczytu: TAK.
Przykład:
[STX]eparagondefaultget[TAB]#CRC16[ETX]
Identyfikator polecenia: eparagondefaultset
Parametry wejściowe:
| Nazwa | Opis | Wymagany | Typ | Uwagi |
|---|---|---|---|---|
| ad | Adres serwera usługi eDokument | NIE | Alfanum. | Do 80 znaków (RFC 3986) — Z przedrostkiem 'https://' lub Do 72 znaki (RFC 3986) - bez przedrostka 'https://' |
| ct | Typ certyfikatu | NIE | Num. | 0 - Brak, 1 - Posnet Root, 2 - Odcisk certyfikatu |
| tp | Odcisk SHA certyfikatu | NIE | Alfanum. | 40 znaków - heksadecymalnie |
| sg | Czy wysłać identyfikatory grafik? | NIE | BOOL | |
| sh | Czy wysłać stopkę? | NIE | BOOL | |
| td | Czy wysłać dane transakcji? | NIE | BOOL | |
| hd | Czy wysłać nagłówek? | NIE | BOOL | |
| eX | Parametr ignorowany. | NIE | BOOL | Należy przesłać 0. |
| gb | Czy wysłać dane binarne grafiki? | NIE | BOOL | |
| ts | Czas oczekiwania na odpowiedź serwera | NIE | Num. | Czas w sekundach. Zakres 0 - 120. Wartość domyślna: 15 |
| tt | Czas oczekiwania na wysyłkę danych | NIE | Num. | Czas w sekundach. Zakres 0 - 120. Wartość domyślna: 30 |
Odpowiedź urządzenia: standardowa
Uwagi:
- Dostępność w trybie tylko do odczytu: TAK.
Identyfikator polecenia: eparagonbufferget
Parametry wejściowe:
| Nazwa | Opis | Wymagany | Typ | Uwagi |
|---|---|---|---|---|
| hd | Numer identyfikacyjny dokumentu | NIE | Num. | Numer identyfikacyjny dokumentu eDokument |
| st | Status dokumentu | NIE | Num. | 1 - Wystawiony 2 - Błąd przy wysyłaniu (została nie powtórzona wysyłka) 3 - Niewystawiony 4 - Zarezerwowany (zostanie wykorzystany dla przyszłego paragonu) |
| sd | Data zmiany stanu eDokumentu | NIE | Data i czas ISO8601 | |
| pr | Czy wydrukowany (T/N) | NIE | BOOL | True - dokument wydrukowany False - brak wydruku |
| di | ID dokumentu | NIE | Num. | Numer identyfikacyjny dokumentu eDokument, unikalny w skali jednego dnia |
| mi | Status drukarki | NIE | Num. | Status drukarki dla danego dokumentu: 0 - Błąd, 1 - Gotowa, 2 - Zajęta W przypadku braku drukarki status wynosi 1 |
| rd | Rodzaj dokumentu | NIE | Alfanum. | Rodzaj dokumentu eDokument |
| gp | ID grupy dokumentów | NIE | Num. | Numer identyfikacyjny grupy dokumentów eDokument |
| tl | Ilość dokumentów w grupie | NIE | Num. | Ilość dokumentów w grupie eDokument |
Uwagi:
- Dostępność w trybie tylko do odczytu: TAK.
- W przypadku gdy parametr st = 4, parametry rd i sd zwracają datę „2000-01-01T01:00:00+01:00", a parametr di = 0.
- W przypadku odczytu grafiki:
- Parametr pr dla grafiki ma mieć zawsze wartość N.
- Parametr id opisujący IDZ, zawiera unikalną ścieżkę identyfikującą grafikę np.:
ZBE1234567890-1-1234.
Przykład:
[STX]eparagonbufferget[TAB]hd123[TAB]#CRC16[ETX]
Każdorazowy wydruk kodu musi być poprzedzony sekwencją przygotowującą do wydruku danego kodu (azteccode, amcode, pdf417code, qrcode). Kod może być wydrukowany po odpowiednim skonfigurowaniu stopki wydruku - polecenie ftrcfg, lub w formie nie fiskalnej - polecenie form-barcode2d. Liczba danych możliwych do zakodowania za pomocą kodów 2D (parametr „tx") zależy od kilku czynników:
- Ograniczenia wielkości danych: maksymalna długość parametru „tx" to 2000 bajtów (4000 w trybie hex).
- Szerokość papieru.
- Parametr „px" (liczba pikseli z których zbudowany jest pojedynczy punkt kodu): większa wartość tego parametru powoduje zwiększenie wymiarów drukowanego kodu.
- Parametr „el" (poziom korekcji błędów): zwiększanie tego parametru powoduje dodawanie nadmiarowych danych pomocnych w odczycie uszkodzonego (nieczytelnego) kodu, ale powoduje zwiększenie wymiarów drukowanego kodu.
- Ograniczenia wynikające ze specyfikacji samego kodu (różne w zależności od kodu).
Wygenerowanie kodu o zbyt dużych wymiarach może skutkować tym, że przestanie się on mieścić na papierze, co zostanie zasygnalizowane odpowiednim kodem błędu.
Identyfikator polecenia: azteccode
Parametry wejściowe:
| Nazwa | Opis | Wymagany | Typ | Uwagi |
|---|---|---|---|---|
| px | Długość boku (w pikselach) pojedynczego punktu kodu | NIE | Num. | Wartość minimalna: 2 (domyślnie) |
| el | Poziom korekcji błędów | NIE | Num. | Dopuszczalne wartości: 0 - (10%) najmniejszy poziom korekcji, 1 - (23%), 2 - (36%), 3 - (50%) największy poziom korekcji - największa liczba dodatkowych danych |
| hx | Przełącznik między trybami wprowadzanych danych (Ascii / szesnastkowo) | NIE | BOOL | False - tryb Ascii (domyślnie), True - tryb Hex. |
| tX | Komunikat do wydrukowania | TAK | Alfanum. |
Odpowiedź urządzenia: standardowa
Uwagi:
- Dostępność w trybie tylko do odczytu: TAK.
- Ilość danych możliwych do zakodowania jest zależna od parametrów wejściowych i szerokości papieru.
- Maksymalna długość kodu to 2000 znaków (4000 znaków w formacie hex).
- Polecenie niedostępne w FAWAG BOX 1.01.
Przykład:
[STX]azteccode|TAB|px2|TAB|el0[TAB|hx0[TAB|txKOMUNIKAT|TAB|#CRC16[ETX]
Identyfikator polecenia: dmcode
Parametry wejściowe:
| Nazwa | Opis | Wymagany | Typ | Uwagi |
|---|---|---|---|---|
| px | Długość boku (w pikselach) pojedynczego punktu kodu | NIE | Num. | Wartość minimalna: 2 (domyślnie) |
| hx | Przełącznik między trybami wprowadzanych danych (Ascii / szesnastkowo) | NIE | BOOL | False - tryb Ascii (domyślnie), True - tryb Hex. |
| tx | Komunikat do wydrukowania | TAK | Alfanum. |
Odpowiedź urządzenia: standardowa
Uwagi:
- Dostępność w trybie tylko do odczytu: TAK.
- Ilość danych możliwych do zakodowania jest zależna od parametrów wejściowych i szerokości papieru.
- Maksymalna długość kodu to 2000 znaków (4000 znaków w formacie hex).
- Polecenie niedostępne w FAWAG BOX 1.01.
Przykład:
[STX]dmcode[TAB]px2[TAB]hx0[TAB]txKOMUNIKAT[TAB]#CRC16[ETX]
Identyfikator polecenia: pdf417code
Parametry wejściowe:
| Nazwa | Opis | Wymagany | Typ | Uwagi |
|---|---|---|---|---|
| px | Długość boku (w pikselach) pojedynczego punktu kodu | NIE | Num. | Wartość minimalna: 2 (domyślnie) |
| yx | Proporcja drukowanego piksela (wysokość / szerokość) | NIE | Num. | 1..50, domyślnie 3 |
| el | Poziom korekcji błędów | NIE | Num. | 0 - (2 stowa kodowe przeznaczone na korekcję) najmniejszy poziom korekcji (domyślnie), 1 - (4 stowa kodowe), 2 - (8 stowa kodowe), 3 - (16 stow kodowych), 8 - (512 stow kodowych) największy poziom korekcji - największa liczba dodatkowych danych |
| cc | Liczba kolumn danych w wydrukowanym kodzie kreskowym | NIE | Num. | 1 (domyślnie) - 30 |
| rt | Obrót drukowanego kodu | NIE | BOOL | False - wydruk w poziomie (domyślnie), True - wydruk w pionie |
| hx | Przełącznik między trybami wprowadzanych danych (Ascii / szesnastkowo) | NIE | BOOL | False - tryb Ascii (domyślnie), True - tryb Hex. |
| tx | Komunikat do wydrukowania | TAK | Alfanum. |
Odpowiedź urządzenia: standardowa
Uwagi:
- Dostępność w trybie tylko do odczytu: TAK.
- Ilość danych możliwych do zakodowania jest zależna od parametrów wejściowych i szerokości papieru.
- Maksymalna długość kodu to 2000 znaków (4000 znaków w formacie hex).
- Polecenie niedostępne w FAWAG BOX 1.01.
Przykład:
[STX]pdf417code[TAB]px2[TAB]el0[TAB]cc2[TAB]rt1[TAB]hx0[TAB]txKOMUNIKAT[TAB]#CRC16[ETX]
Identyfikator polecenia: qrcode
Parametry wejściowe:
| Nazwa | Opis | Wymagany | Typ | Uwagi |
|---|---|---|---|---|
| px | Długość boku (w pikselach) pojedynczego punktu kodu | NIE | Num. | Wartość minimalna: 2 (domyślnie) |
| el | Poziom korekcji błędów | NIE | Num. | 0 - (L 7%) najmniejszy poziom korekcji (domyślnie), 1 - (M 15%), 2 - (Q 25%), 3 - (H 30%) największy poziom korekcji - największa liczba dodatkowych danych |
| hx | Przełącznik między trybami wprowadzanych danych (Ascii / szesnastkowo) | NIE | BOOL | False - tryb Ascii (domyślnie), True - tryb Hex. |
| tx | Komunikat do wydrukowania | TAK | Alfanum. |
Odpowiedź urządzenia: standardowa
Uwagi:
- Dostępność w trybie tylko do odczytu: TAK.
- Ilość danych możliwych do zakodowania jest zależna od parametrów wejściowych i szerokości papieru.
- Maksymalna długość kodu to 2000 znaków (4000 znaków w formacie hex).
Przykład:
[STX]qrcode[TAB]px2[TAB]el0[TAB]hx1[TAB]tx313233343536373839[TAB]#CRC16[ETX]