P. 1
Instrukcja_serwisowa_Thermal_i_Posnet_3001[1]

Instrukcja_serwisowa_Thermal_i_Posnet_3001[1]

|Views: 2,905|Likes:
Wydawca: Piotr Listosz

More info:

Published by: Piotr Listosz on Mar 17, 2011
Prawo autorskie:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

12/19/2012

pdf

text

original

POSNET

SYSTEMY KAS FISKALNYCH
02-281 Warszawa, ul. Municypalna 33 Tel.: (0-22) 868-68-88 w. 201..204 (Dział handlowy) Tel.: (0-22) 868-68-88 w. 251..253 (Serwis) Fax.: (0-22) 868-68-89

http://www.posnet.com.pl/serwis.htm email: serwis@posnet.com.pl

DRUKARKI FISKALNE POSNET THERMAL i POSNET 3001

INSTRUKCJA SERWISOWA

Nieustanny rozwój naszych produktów stwarza czasem konieczność wprowadzenia zmian nie uwzględnionych w tym dokumencie.

Maj 1999 ver. 39.6

Drukarka Fiskalna POSNET Thermal i 3001
SPIS TREŚCI :
1. WSTĘP.......................................................................................................................................................................5 2. DRUKARKI FISKALNE - PODSTAWOWE INFORMACJE SERWISOWE..................................................6 ZAŁOŻENIA OGÓLNE.........................................................................................................................................................6 OPIS KONSTRUKCJI DRUKAREK...........................................................................................................................................7 Mechanizm drukujący.............................................................................................................................................8 Sterownik mechanizmu drukującego. ....................................................................................................................8 Główny procesor drukarki. ..................................................................................................................................9 Zegar czasu rzeczywistego. ..................................................................................................................................12 Wyświetlacze. .......................................................................................................................................................12 Pamięć fiskalna. ..................................................................................................................................................13 Zasilacze. .............................................................................................................................................................14 Klawiatury drukarek.............................................................................................................................................15 3. PLOMBOWANIE DRUKARKI FISKALNEJ.....................................................................................................17 PLOMBY PRODUCENTA...................................................................................................................................................17 PLOMBY SERWISOWE ..............................................................................................................................................17 4. FISKALIZACJA DRUKARKI..............................................................................................................................18 5. UREGULOWANIA PRAWNE DOTYCZĄCE KAS REJESTRUJĄCYCH.....................................................20 6. PROGRAMOWANIE DRUKARKI......................................................................................................................22 SYNTAKTYKA ROZKAZÓW. ..............................................................................................................................................22 OBSŁUGA SYTUACJI BŁĘDNYCH. ......................................................................................................................................23 USTAWIANIE ZEGARA......................................................................................................................................................24 TRANSAKCJA.................................................................................................................................................................26 TRYBY PRACY DRUKARKI................................................................................................................................................30 7. WYKAZ KOMUNIKATÓW WYŚWIETLANYCH NA WYŚWIETLACZU LCD DRUKARKI.................31 BŁĘDY FATALNE (POWODUJĄ KONIECZNOŚĆ WYŁĄCZENIA URZĄDZENIA)..................................................................................31 KOMUNIKATY BŁĘDÓW MECHANIZMU DRUKUJĄCEGO............................................................................................................32 OSTRZEŻENIA. ..............................................................................................................................................................33 KOMUNIKATY ZWIĄZANE Z SEKWENCJAMI STERUJĄCYMI......................................................................................................36 KOMUNIKATY ZWIĄZANE Z DRUKOWANIEM RAPORTÓW..........................................................................................................37 INNE KOMUNIKATY ........................................................................................................................................................40 8. FORMATY MOŻLIWYCH WYDRUKÓW REALIZOWANYCH PRZEZ DRUKARKĘ............................42 DOKUMENTY FISKALNE...................................................................................................................................................42 Paragon fiskalny standard....................................................................................................................................42 Paragon fiskalny z formami płatności..................................................................................................................46 Raport fiskalny dobowy........................................................................................................................................47 Raport fiskalny okresowy pełny............................................................................................................................49 DOKUMENTY NIEFISKALNE...............................................................................................................................................53 Raport okresowy drukowany jako podsumowanie...............................................................................................53 Raport bazy danych..............................................................................................................................................54 Raport kasy / zmiany.............................................................................................................................................56 Wpłata do kasy. ....................................................................................................................................................57 Wypłata z kasy.......................................................................................................................................................57 Stan kasy...............................................................................................................................................................57 Raport zmiany stawek PTU..................................................................................................................................58 Raport zerowania RAM........................................................................................................................................59 Wydruk kontrolny nagłówka.................................................................................................................................59 Zwrot towaru........................................................................................................................................................60 Wydruk raportu kasy / zmiany uwzględniającego formy płatności......................................................................60 Format wydruku pokwitowania sprzedaży...........................................................................................................61 Format wydruku transakcji uznania.....................................................................................................................62

Str. 2

Drukarka Fiskalna POSNET Thermal i 3001
Logowanie kasjera................................................................................................................................................63 Wylogowanie kasjera............................................................................................................................................63 Dokument "zwrot kaucji"......................................................................................................................................63 9. OPERACJE RACHUNKOWE WYKONYWANE PRZEZ DRUKARKĘ. .....................................................64 WSTĘP.........................................................................................................................................................................64 OBLICZENIA REALIZOWANE W TRAKCIE TRANSAKCJI.............................................................................................................64 OBLICZENIA REALIZOWANE W TRAKCIE DRUKOWANIA RAPORTU DOBOWEGO..............................................................................68 OBLICZENIA REALIZOWANE W TRAKCIE DRUKOWANIA RAPORTU OKRESOWEGO...........................................................................69 10. ZESTAW ROZKAZÓW DRUKAREK...............................................................................................................71 OGÓLNE ZASADY SYNTAKTYKI KOMEND.............................................................................................................................71 PROGRAMOWANIE PARAMETRÓW / STEROWANIE UKŁADEM ELEKTRONICZNYM...........................................................................73 [LBSETCK]: Ustawienie zegara. ........................................................................................................................73 [LBDSP]: Sterowanie wyświetlaczem / szufladą................................................................................................74 [LBSETPTU] : Zmiana stawek PTU...................................................................................................................74 [LBSETHDR] : Programowanie nagłówka / fiskalizacja....................................................................................75 [LBSNDMD] : Wyłączenie/ włączenie komunikatu głosowego...........................................................................76 [LBFEED] : Wysuw papieru................................................................................................................................76 [LBSERM]: Obsługa błędów................................................................................................................................76 TRANSAKCJA.................................................................................................................................................................77 [LBTRSHDR]: Początek transakcji (wejście w tryb transakcji)..........................................................................77 [LBTRSLN] : Linia paragonu. ............................................................................................................................78 [LBDSPDEP]: Kaucja pobrana..........................................................................................................................79 [LBTREXIT] : Anulowanie transakcji. ...............................................................................................................79 [LBTREXIT] : Standardowe zatwierdzenie transakcji. ......................................................................................80 [LBTRXEND] : Zatwierdzenie transakcji z formami płatności............................................................................81 [LBCSHREP1]: Rozkaz raportu kasy / zmiany uwzględniającego formy płatności............................................82 [LBTRSCARD] : Pokwitowanie sprzedaży..........................................................................................................83 [LBSTOCARD]: Transakcja uznania (zwrot towaru).........................................................................................84 DRUKOWANIE RAPORTÓW / KONTROLA BAZY DANYCH..........................................................................................................85 [LBINCCSH] : Wpłata do kasy............................................................................................................................85 [LBDECCSH]: Wypłata z kasy. ...........................................................................................................................86 [LBCSHSTS]: Stan kasy.......................................................................................................................................86 [LBCSHREP] : Raport kasy / zmiany..................................................................................................................86 [LBLOGIN] : Logowanie kasjera........................................................................................................................87 [LBLOGOUT]: Wylogowanie kasjera..................................................................................................................87 [LBOPAK] : Zwrot kaucji.....................................................................................................................................87 [LBSTOCSH] : Zwrot towaru...............................................................................................................................88 [LBFSKREP] : Drukowanie raportu okresowego...............................................................................................88 [LBDAYREP]: Drukowanie raportu dobowego...................................................................................................88 [LBDBREP]: Kontrola bazy danych. ..................................................................................................................89 ODCZYT STATUSU...........................................................................................................................................................89 [LBSENDCK]: Odeślij czas RTC.........................................................................................................................89 [LBFSTRQ]: Odeślij informacje kasowe.............................................................................................................90 [LBERNRQ] : Żądanie wysłania kodu błędu ostatniego rozkazu.......................................................................90 [LBIDRQ] : Sekwencja odsyłająca typ i wersje oprogramowania......................................................................91 11. OPIS SEKWENCJI DRUKARKI POSNET THERMAL-A (APTECZNA)...................................................92 NOWY FORMAT PARAGONU FISKALNEGO.............................................................................................................................92 MODYFIKACJE SEKWENCJI STERUJĄCYCH ZWIĄZANE Z DODATKOWYM FORMATEM PARAGONU FISKALNEGO.....................................94 [LBTRSORG] : Nagłówek „paragonu aptecznego”............................................................................................94 [LBTRSART]: Linia paragonu. ...........................................................................................................................95 [LBTREXIT]: Akceptacja/ anulowanie paragonu...............................................................................................96 FORMATY DODATKOWYCH (APTECZNYCH) WYDRUKÓW NIEFISKALNYCH...................................................................................97 Wycena leku - format wydruku.............................................................................................................................97 Raport kasowy. ....................................................................................................................................................99 Zamówienie na lek recepturowy.........................................................................................................................100 Związek między wydrukami niefiskalnymi wycen leków a wydrukiem paragonu fiskalnego.............................102 SEKWENCJE STERUJĄCE DLA UZYSKANIA DODATKOWYCH APTECZNYCH WYDRUKÓW NIEFISKALNYCH...........................................103

Str. 3

.....................116 DRUKARKI APTECZNE..................................................................117 16......................................131 POSNET THERMAL.....................................................................................................................................113 13............................................................................................................................................................................................................134 Str..................................108 12.......................................................125 WYMIANA MECHANIZMU DRUKUJĄCEGO KOPII.......................... WYKAZ PODZESPOŁÓW DRUKARKI FISKALNEJ POSNET 3001............................................. 3001 i Beetle 20)..........................................................................................................................109 Standardowe kable sygnałowe drukarek...................112 W wersji aptecznej drukarki..................................................132 POSNET 3001....128 DRUKARKA POSNET THERMAL W TECHNOLOGII SMD................................................................................................................126 19....................................................................................................110 WYMAGANIA PROGRAMOWE................... ROK 2000 W DRUKARKACH FISKALNYCH POSNET...........................105 [LBCLRALL] : Kasowanie całej zapamiętanej listy wycen leków.......103 [LBCLRDTA] : Kasowania zapamiętanych danych o wycenie leku („stornowanie wyceny”)......................130 22................................................................................ ZMIANY W DRUKARKACH POSNET THERMAL........................................................... KODY BŁĘDÓW DRUKAREK.........................................................................................................................................................................................105 [LBRPORD] : Zamówienie na lek recepturowy................................129 21.........................................................133 POSNET THERMAL-A................................................................................................................................................................................................. POSNET THERMAL (FUNKCJE SERWISOWE)..............................124 WYMIANA MECHANIZMU DRUKUJĄCEGO ORYGINAŁU.......................................................................................112 Do podłączenia dodatkowego wyświetlacza VFD (Thermal............................123 18.............................................................................................................Drukarka Fiskalna POSNET Thermal i 3001 [LBRPDTA]: Wycena leku.......................................................................................... SYGNAŁY INTERFEJSU................................................................................................................................................................................................112 Błędy "programowe".........109 UWAGI OGÓLNE..........................................................................124 WYMIANA BATERII...................................................................................................................120 ELEMENTY DOSTĘPNE PO ZDJĘCIU OSŁONKI WEWNĄTRZ DRUKATKI .........................................................................................................................116 DRUKARKI STANDARDOWE.................................................................................................................................................................................................................................................................................................................................................. 4 ....................................................... OPIS INTERFEJSÓW DRUKAREK FISKALNYCH THERMAL I 3001........................ NOWE KONSTRUKCJE DRUKAREK................................................................................................................................ WYKAZ PODZESPOŁÓW DRUKARKI FISKALNEJ POSNET THERMAL.......................................................................................................115 15.........................................................................................................114 14..................109 OKABLOWANIE...............................................................................................107 [LBCLRTXT] : Kasowanie opisu działania leku z tablicy wycen.................................................................128 DRUKARKA POSNET 3001 W OBUDOWIE PLASTIKOWEJ..........................................................................................111 DODATKOWE ZŁĄCZE RS232C................................................................................112 Błędy drukarki .................................................. POSNET 3001 (FUNKCJE SERWISOWE)...........................................108 [LBPRNDIR] : Sekwencja związana z obsługą dodatkowego portu szeregowego...........................................................................106 [LBPRNTXT]: Opisu działania leku.......................125 WYMIANA KLAWIATURY..................................................................................................105 [LBAPTREP] : Raport kasowy w formacie dla aptek....................122 ELEMENTY DOSTĘPNE PO ZDJĘCIU OSŁONKI WEWNĄTRZ DRUKARKI...................................................................................................................................109 OPIS INTERFEJSU SZEREGOWEGO......................................................... OPIS ZŁĄCZ DRUKARKI POSNET THERMAL I POSNET 3001............. KODY SEKWENCJI...........................................112 SYGNALIZACJA STANÓW DRUKARKI NA INTERFEJSIE SZEREGOWYM........................................................................................................................................................127 20..................................................................121 17............

Drukarka Fiskalna POSNET Thermal i 3001 1. firmware który posiada specyficzny numer. Ten sam wyświetlacz może współpracować także z drukarkami POSNET Thermal (od wersji 39. 39.. Drukarka POSNET 3001 to odpowiednik starszej wersji drukarki DF-301 z mechanizmem drukującym firmy STAR (igłowa).3. 29.1. Wersja najnowsza (39.3). opis ten uwzględnia numeracje wersji oprogramowania (firmware) wewnętrznego drukarki od którego obowiązuje dana sekwencja. Przy współpracy z firmą Siemens powstała kasa fiskalna POSNET Beetle 20 będąca połączeniem w jednej obudowie drukarki fiskalnej POSNET Thermal i opartej na architekturze komputera klasy PC kasy Beetle. Programistom nie wolno jest umieszczać sekwencji do fiskalizacji drukarki w swoich aplikacjach! W firmie POSNET produkowany jest także terminal UNIX-owy o nazwie POSNET 2000.3. ‘Apteczna’ wersja drukarki to POSNET Thermal-A. Występuje w wersjach: 28.1B lub 39. czyli drukarki mogą pracować w systemach z maksimum 7 stawkami PTU (6 definiowanych plus stawka zwolniona ‘Z’). a także drukarka fiskalna POSNET SIEMENS-77 umożliwiająca dodatkowo wydruk dokumentu. Praktycznie z punktu widzenia programisty jest to odpowiednik drukarki POSNET 3001. F). Umieszczona w kasie POSNET Beetle 20 drukarka (moduł drukarki) posiada numer firmware 28. Od momentu powstania pierwszej drukarki fiskalnej (DF-300) zaszło wiele zmian w konstrukcji drukarek oraz pojawiły się dodatkowe komendy których nie ‘znały’ drukarki DF-300.1) i POSNET 3001 (od wersji 39. 31. Każda z produkowanych drukarek fiskalnych POSNET posiada wewnętrzny program tzw.6 (wersja drukarki w obudowie plastikowej).posnet. Występuje w wersjach: 28.1B.9A. korektę bez potrzeby wymiany modułu fiskalnego. Zawiera wszystkie niezbędne informacje potrzebne do serwisowania drukarek. pozostałą część nagłówka (Nazwę firmy i adres siedziby firmy) zapisuje się do pamięci RAM (podtrzymywanej baterią) co umożliwia w przyszłości ich ew.1-3.3 i 39.1. 32. Fiskalizacji dokonuje tylko i wyłącznie przeszkolony w firmie POSNET serwis. 31.1B) może współpracować ze specjalnym zewnętrznym wyświetlaczem alfanumerycznym VFD podłączanym do dodatkowego wyjścia w module drukarki typu RS232C. Występuje w wersjach: 28. Fiskalizację drukarek dokonuje się zapisując do pamięci fiskalnej tylko NIP. Numer ten określa zakres sekwencji (komend) które obsługuje dany model drukarki (patrz dokładny opis sekwencji zawarty w rozdziale 10) W drukarkach POSNET Thermal i POSNET 3001 można zdefiniować 6 stawek PTU (A . który zawiera drukarkę fiskalną będącą odpowiednikiem drukarki DF-301 (wcześniejszy model drukarki).3.com.. 29.5A. Wstęp Niniejsza instrukcja serwisowa napisana została pod kątem drukarek POSNET Thermal i POSNET 3001. Opis sekwencji dla tej drukarki umieszczono w rozdziale 11. 5 .pl Str. Drukarka POSNET Thermal to wersja drukarki z mechanizmem drukującym termicznym. Dokładny opis sekwencji znaleźć można w rozdziale 10 niniejszej instrukcji (na stronie 71). 39.7A i 31.1.1B. urządzeń firmy POSNET dostępne są na stronie WWW firmy pod adresem: www.6A. Bliższe informacje dotyczące w/w. 28. Zawarty w rozdziale 10 opis sekwencji dotyczy także zawartej w kasie POSNET 2000 drukarki. 29.

• samodzielnie formatuje paragon fiskalny oraz nalicza podatek VAT na podstawie danych o transakcji przesłanych z systemu. jak i programowym. zarówno pod względem sprzętowym. Nie można też uzyskać dowolnych formatów wydruku. Jest to najistotniejsza cecha urządzenia. • realizuje drukowanie raportu dobowego i okresowego.ang. brak niezależnej komputerowej ewidencji sprzedaży i towarów) wystarczy tylko transmisja danych z komputera do drukarki. Mówiąc obrazowo: jeżeli wyślemy do zwykłej (niefiskalnej) drukarki kod litery "A" to zwykle zostanie on wydrukowany. Wynika to z następujących faktów: 1). 6 . W tym sensie nazwa "drukarka fiskalna" może być nieco myląca (należałoby raczej używać nazwy np. co dotyczy też danych liczbowych !). Tak prostą aplikację może praktycznie stworzyć nawet niezbyt zaawansowany programista. muszą one spełniać formalne (syntaktyczne) reguły jej języka programowania. • raport dobowy. • pamięć fiskalną dla rejestracji obrotu. Jest adresowana przede wszystkim do użytkowników. oraz kilka dokumentów niefiskalnych o ściśle określonych formatach wynikających z przeznaczenia. Oprogramowanie drukarki zapewnia wszystkie wymagane funkcje niezbędne w kasie fiskalnej. • zegar czasu rzeczywistego (RTC. W najprostszych sytuacjach (niewielka sprzedaż. Język programowania drukarki obejmuje kilkanaście sekwencji sterujących dających możliwość implementacji różnorodnych algorytmów komunikacji z urządzeniem. LBTREXIT i LBTRXEND). Nie ma zatem dowolności danych przesyłanych do drukarki. 2). • drukarkę paragonów z możliwością drukowania oryginału oraz kopii. "rejestrator transakcyjny"). LBTRSLN. Komunikacja z urządzeniem jest komunikacją znakową (tzn. Drukarki fiskalne . • raport okresowy. dane przesyłane do drukarki stanowią zawsze ciąg znaków ASCII. którzy posiadają komputer klasy PC oraz wykorzystują w swoim sklepie (hurtowni) oprogramowanie realizujące sprzedaż. Urządzenie jest tak pomyślane. • dwa wyświetlacze: dla klienta (LED) i dla obsługi (LCD). że jego podłączenie do istniejącego systemu sprzedaży (bądź finansowo . zależnie od stopnia inwencji programisty i różnych warunków wymaganych przez aplikacje. Podłączenie urządzenia do programu aplikacyjnego może być rozwiązane w różny sposób. Zestaw możliwych do uzyskania rodzajów wydruku jest ściśle określony przez oprogramowanie drukarki i obejmuje wydruki fiskalne: • paragon fiskalny. w szczególności realizuje algorytm badania poprawności przywiązania kodu stawki PTU do nazwy towaru. a w szczególności: • zapewnia poprawną rejestrację transakcji sprzedaży: drukowanie paragonu fiskalnego oraz elektroniczna rejestracja obrotu są operacjami NIEPODZIELNYMI. LBDSPDEP. • dokonuje kontroli formalnej i obliczeniowej danych transakcji przesyłanych z systemu wykrywając szereg sytuacji błędnych. Str. Drukarka jest wyposażona w interfejs szeregowy (RS-232C napięciowy). Drukarka posiada wszystkie elementy sprzętowe niezbędne dla fiskalności systemu (stanowiące niepodzielną całość zawartą w jednej obudowie) tj. Do zrealizowania najprostszej sprzedaży wystarczy wykorzystać podzbiór złożony z zaledwie sześciu (!) sekwencji sterujących: • nastawianie / korekta zegara czasu rzeczywistego (sekwencja LBSETCK). W przypadku drukarek fiskalnych kod ten (jeżeli nie stanowi istotnego elementu sekwencji sterującej) zostanie zignorowany.księgowego) jest proste.Drukarka Fiskalna POSNET Thermal i 3001 2. urządzenie zapewnia fiskalność całego systemu NIEZALEŻNIE OD WŁAŚCIWOŚCI pozostałych urządzeń i oprogramowania wykorzystywanego na użytym komputerze. przy czym drukarka realizuje pewien zestaw rozkazów / sekwencji sterujących (posiada własny język programowania). • sekwencje powodujące realizację transakcji (LBTRSHDR.podstawowe informacje serwisowe Założenia ogólne Drukarka fiskalna jest przeznaczona w pierwszym rzędzie do fiskalizacji istniejących systemów komputerowych. Równocześnie. Real Time Clock).

• kompletny sterownik mechanizmu drukującego. W takiej sytuacji drogą stosunkowo niewielkich modyfikacji istniejącego oprogramowania uzyskuje się fiskalizację całego systemu . • złącze interfejsu szeregowego dodatkowego opisane: "RS232". • zegar czasu rzeczywistego. LBCSHREP. wyprowadzone z tyłu drukarki: • złącze interfejsu szeregowego (RS-232).". moduł ten jest połączony z resztą urządzenia za pośrednictwem wstążki. Opis konstrukcji drukarek Większość układu elektronicznego drukarki jest zlokalizowana na głównej płycie. • złącze mechanizmu obcinającego. • złącze pamięci fiskalnej .musi być ono plombowane specjalną nalepką jednorazowego użytku. Reasumując: drukarka fiskalna może być wykorzystana do fiskalizacji systemu sprzedaży w różny sposób zależnie od potrzeb użytkownika i programu aplikacyjnego. Sekwencje z pierwszej grupy są wykorzystywane w programach. LBINCCSH. który jest w posiadaniu podatnika. jest umieszczony moduł fiskalny. LBDECCSH. LBSETHDR). że wielu użytkowników posiada wdrożone (i wykorzystywane przez dłuższy czas) oprogramowanie finansowo-księgowe bądź obsługi sprzedaży. raport kasy/ zmiany. opisane: "WYŚW. Na płycie tej umieszczono: • główny procesor drukarki wraz z układami interfejsów. • złącze zewnętrznego zasilacza opisane: „DC”.". Zespół ten jest wyposażony w złącza interfejsów. że nakład pracy i czasu jest w przypadku tego urządzenia niewielki i należy oczekiwać. Pozostałe sekwencje mogą być dowolnie wykorzystywane przez programy aplikacyjne zależnie od potrzeb i inwencji programistów. • złącze do podłączenia szuflady. • rozkazy powodujące wysłanie statusu drukarki (LBFSTRQ . raporty o gotówce w kasie ( LBDAYREP. 7 . • sekwencja powodująca bezpośredni dostęp do układów elektronicznych (wyświetlacza i szuflady. Dotychczasowe doświadczenia z tych prac wykazują. opisane: "SZUFL. Do głównego chassis drukarki są przymocowane pozostałe zespoły: • od spodu. Istotną zaletą tego rozwiązania jest możliwość wykorzystania sprzętu (komputer klasy PC) i oprogramowania. Jest również istotny fakt. którymi dysponuje serwis. LBCSHSTS). typu RJ45 (8p8). Dokonać tego może tylko i wyłącznie serwis regionalny producenta i oczywiście sam producent czyli POSNET. LBDSP) • inne (LBSERM). Str. • złącze dla wyświetlacza zewnętrznego. Ponadto na płycie głównej są złącza dla wstążek przewodów (z mechanizmami "zapinającymi"): • złącza mechanizmów drukujących. które nie były do tej pory skomputeryzowane. W chwili obecnej szereg firm software'owych dokonało już przystosowania oferowanych przez siebie pakietów do potrzeb współpracy z drukarką. raport bazy danych. LBFSKRE.". co wymaga skompletowania całego systemu od początku (zakup komputera i aplikacji dostosowanej do współpracy z drukarką).bez konieczności uzyskania homologacji na oprogramowanie ! Oczywiście niewielka cena urządzenia uzasadnia też wprowadzenie drukarki fiskalnej w sklepach /hurtowniach. • sekwencje inicjujące różnego rodzaju raporty i wydruki niefiskalne: raport dobowy i okresowy. zwijacza i czujnika obecności papieru (POSNET 3001). • złącza klawiatury i wyświetlacza LCD na pulpicie operatorskim. że ilość dostępnych na rynku programów wyposażonych w możliwość komunikacji z tą drukarką będzie rosnąć. przeprowadzając fiskalizację urządzenia lub zmianę stawek PTU. typu RJ45. do której dostęp jest możliwy po odkręceniu (zabezpieczonej plombą producenta !) chassis drukarki. • sekwencja ustawiania zegara (LBSETCK) i jego odczytu (LBSENDCK).Drukarka Fiskalna POSNET Thermal i 3001 Pozostałe sekwencje sterujące wzbogacają funkcje urządzenia oraz zapewniają niezbędne funkcje serwisowe. zlokalizowany wewnątrz metalowej obudowy przymocowanej na trwałe do chassis drukarki (zespół "niewymienialny" przez serwis !).ENQ i DLE) i numeru błędu ostatniego rozkazu (LBERNRQ). LBDBREP. nad główną płytą. Można je podzielić na następujące grupy: • sekwencje modyfikujące w sposób trwały (poprzez zapis danych w pamięci fiskalnej) stan wewnętrzny urządzenia: zmiana stawek PTU i fiskalizacja (LBSETPTU. typu RJ. opisane: "KOMP.

• drukowanie z podkreśleniem. Sterownik drukarki realizuje też pewien zestaw rozkazów (sekwencji sterujących). Do drukarek termicznych należy stosować specjalny papier (z nadrukiem POSNET) gwarantujący wysoką jakość wydruku i co za tym idzie. W drukarce POSNET Thermal wykorzystano dwa wysokiej klasy mechanizmy termiczne (oryginał i kopia) charakteryzujące się: • Cichą pracą. Wykorzystywana wersja mechanizmu jest fabrycznie wyposażona w obcinacz paragonów napędzany dodatkowym silnikiem prądu stałego. Umożliwia drukowanie do 40 znaków w wierszu (15 CPI) na papierze z kopią.000 linii dla całego mechanizmu). • Dużą trwałością (30 km). Sterownik mechanizmu drukującego jest zmontowany na głównej płycie drukarki. grafika itp. • drukowanie danych graficznych.).000 znaków dla głowicy oraz 8.około 3. Sterownik mechanizmu drukującego. sterowanie silnikami zwijacza i obcinacza paragonów (3001)oraz sterowanie wyjściem przeznaczonym do podłączenia szuflady.2 linii na sekundę oraz dużą niezawodnością (około 100. W pulpicie operatorskim jest ponadto zamontowany alfanumeryczny wyświetlacz LCD (2 x 20 znaków). natomiast przewód uziemiający jest doprowadzony do specjalnej śruby umieszczonej z prawej strony zwijacza kopii. Przez "blok funkcjonalny" rozumiemy tu fragment całego urządzenia realizujący określoną funkcję . Ponadto jest dosyć cichy (zwłaszcza w porównaniu z mechanizmami wyposażonymi tylko w jeden silnik prądu stałego służący równocześnie do napędu głowicy i przesuwu papieru). na której umieszczono 4 klawisze i 3 diody LED w różnych kolorach .Drukarka Fiskalna POSNET Thermal i 3001 od góry: zespół mechanizmu drukującego.400. druk o podwójnej szerokości. Kabel płaski jest wyprowadzony przez otwór w korpusie drukarki i dołączony wtykiem modularnym RJ45 do dostępnego z zewnątrz gniazda z opisem "Wyśw. realizacja algorytmu sterowania silnikiem krokowym napędu przesuwu papieru. sterowanie głowicą. Należy zwrócić uwagę na poprawność tego podłączenia przy ewentualnych naprawach drukarki także po jej zmontowaniu.000. 82 mm. Klawiatura jest połączona z główną płytą przy użyciu 10 żyłowej wstążki. Poniżej scharakteryzowano krótko poszczególne bloki funkcjonalne urządzenia. Brak podłączenia przewodu uziemiającego może być nawet przyczyną uszkodzenia w wyniku wyładowania statycznego do obudowy wyświetlacza ! Należy również zwrócić uwagę aby przewody wychodzące z uchwytu wyświetlacza nie dotykały do kółka pasowego silnika zwijacza. Sterownik jest wyposażony w generatory znaków z polskimi literami w standardzie MAZOWIA. druk "pogrubiony" itp. Niektóre z opcji realizowanych przez sterownik są wykorzystywane w aktualnej wersji formatów wydruków (np. że o ile blok danych (paragon fiskalny !) został przesłany Str. Wszystkimi powyższymi funkcjami steruje główny mikroprocesor drukarki Z180 (opisany w następnym punkcie instrukcji). silnikiem prądu stałego do napędu głowicy oraz z silnikiem krokowym do przesuwu papieru. Konsekwencją tego rozwiązania jest fakt. Jego zadaniem jest sterowanie wszystkimi funkcjami mechanizmu tzn. Na środku tylnej części górnej pokrywy drukarki jest umocowany wspornik wyświetlacza. 8 . Pełen status drukarki oraz zawartość bufora komunikacyjnego są przechowywane w pamięci RAM podtrzymywanej bateryjnie. Do trwałego umocowania tych przewodów służy specjalny zaczep umocowany do tylnej ścianki drukarki. W przedniej części drukarki znajduje się klawiatura. Charakteryzuje się dobrą szybkością drukowania . włączanie silnika napędu głowicy. • Dużą prędkością drukowania (10 linii na sekundę). szerokości max.niezależnie od jego fizycznej lokalizacji. Oryginalny mechanizm został uzupełniony o zwijacz do kopii oraz czujnik obecności papieru. dający gwarancje że wydruk zostanie zachowany nawet po upływie 5 lat (oczywiście w przypadku zachowania reguł co do przechowywania papierów termicznych). Jest to mechanizm z głowicą dziewięcioigłową. który umożliwia między innymi: • zmianę szerokości wydruku (CPI). wraz z zwijaczem kopii (POSNET 3001) lub dwa mechanizmy termiczne (POSNET Thermal). • Mechanizm drukujący W drukarce POSNET 3001 wykorzystano niezawodny mechanizm drukujący japońskiej firmy STAR typu MP-342 (wykorzystywany w drukarkach paragonowych typu SP-300). Ponadto w prawej części mechanizmu drukującego drukarki POSNET 3001 umieszczony jest mikro wyłącznik sygnalizujący zamknięcie pokrywy.". który jest połączony z płytą główną przy pomocy 10 żyłowej wstążki. Wychodzą z niego (POSNET 3001 i drukarki Thermal w obudowach metalowych) dwa przewody: płaski 8-mio żyłowy kabel "telefoniczny" oraz przewód uziemiający w kolorze zielono-żółtym.

raportami dobowymi i okresowymi. są zabezpieczone bajtami lub bitami kontrolnymi itp. dla zapewnienia wysokiej niezawodności całego urządzenia . • zbyt niskie napięcie baterii podtrzymującej dane w RAM.to zostanie on na pewno wydrukowany.odpytuje okresowo (co kilka sekund) pozostałe układy. gdy cała zawartość bufora ulegnie wydrukowaniu. wykorzystywany do uruchomienia elektromagnesu zwalniającego zapadkę szuflady . ze względu na jednokrotność operacji drukowania paragonu fiskalnego (w przypadku przerwy w zasilaniu nie można powtórzyć tej operacji. sprzętowy układ „watchdog timera” . Umieszcza wtedy odpowiednie komunikaty na wyświetlaczu LCD (są one omówione w rozdziale 7). powoduje bezwarunkowe przerwanie pracy drukarki wraz z odpowiednim komunikatem na wyświetlaczu LCD oraz dźwiękową i optyczną (diody LED na klawiaturze) sygnalizacją tego stanu. w którym zostało przerwane . gdyż wymagałoby to powtórzenia całej transakcji).w sposób umożliwiający między innymi poprawne wznowienie wydruku od miejsca. a w szczególności: • pamięć fiskalną. Algorytmy sterowania mechanizmem drukującym są tak skonstruowane. analiza i wykonywanie rozkazów sterujących. • zegar czasu rzeczywistego. Główny procesor drukarki poprzez wysyłanie i odbieranie komunikatów od pozostałych procesorów systemu organizuje i kontroluje ich działanie. • przegrzanie głowicy. • zacięcie silnika napędu głowicy lub otwarta pokrywa drukarki. wskazujące na awarię jednego z elementów. Po powrocie zasilania drukowanie zostanie wznowione od miejsca. brak papieru) lub przez serwis. • wyświetlacz zewnętrzny LED. nawet jeżeli w trakcie drukowania zaniknie zasilanie. 9 . • zacięcie lub uszkodzenie obcinacza (3001). Uruchomienie wyjścia następuje w wyniku odebrania przez sterownik odpowiedniego rozkazu wysłanego przez aplikację do drukarki. Z kolei sygnał PF daje możliwość właściwego zakończenia drukowania w przypadku zaniku napięcia zasilającego . Do jego zadań należy obsługa obu interfejsów komunikacyjnych. a także komunikacja z pozostałymi elementami z systemu (pamięć fiskalna. którego zawartość jest podtrzymywana przy pomocy baterii litowej 3V. specjalny algorytm sterowania obcinaczem eliminujący ewentualność uszkodzenia silnika w przypadku blokady napędu 3001).a procedura inicjalizacji całej drukarki zakończy się dopiero wtedy. Str. które muszą być zachowane podczas wyłączenia drukarki (np. Procedury komunikacji "wewnętrznej" są skonstruowane w sposób wykluczający wystąpienie błędów transmisji (transfery mają charakter blokowy. Sterownik mechanizmu drukującego jest wyposażony w dodatkowe wyjście służące do podłączenia szuflady na banknoty. Wykrycie błędów w procedurze "odpytywania". przekłamanie pamięci programu lub błąd testu pamięci RAM). a także służy ona do przechowywania bazy danych o sprzedawanych artykułach (służącej do kontroli poprawności przypisania kodów stawek PTU do nazw sprzedawanych artykułów podczas transakcji). totalizery i ilość gotówki w kasie). W szczególności sygnał PG zabezpiecza elementy mechanizmu / sterownika przed uszkodzeniem w wyniku stanu nieustalonego podczas włączania drukarki. • inne błędy (np. Procesor drukarki wykrywa szereg sytuacji awaryjnych. W szczególności.Drukarka Fiskalna POSNET Thermal i 3001 poprawnie . realizacja algorytmów związanych z transakcją.co powoduje jej otwarcie. w którym został on przerwany (jeżeli w buforze sterownika coś jeszcze zostało). zegar czasu rzeczywistego). wyświetlacze. Są to następujące sytuacje: • błąd jednego z napięć zasilających (uszkodzenie lub przeciążenie zasilacza). aby uzyskać możliwie największą szybkość wydruku (drukowanie w obu kierunkach ruchu głowicy w drukarce 3001 !) przy minimalizacji możliwości uszkodzenia mechanizmu (np. Ponadto kontrolowany jest stan mechanizmu drukującego. Procesor główny jest ponadto zabezpieczony przed skutkami błędnego działania programu poprzez zewnętrzny. Główny procesor drukarki. Przyjęcie takiego rozwiązania jest konieczne. Dla zapewnienia poprawnej pracy sterownik korzysta z sygnałów PG i PF ("Power Good" i "Power Fail") generowanych we właściwej sekwencji przez elektronikę drukarki podczas komutacji napięcia zasilającego. Główny komputer sterujący drukarką został zrealizowany w oparciu o procesor Z180 (HD64180). Na wyjściu tym pojawia się impuls napięciowy pochodzący z kondensatora naładowanego do napięcia 25V.). W pamięci tej są przechowywane różne dane. • brak papieru. które mogą być usuwalne przez użytkownika (np. Główny procesor dysponuje obszarem pamięci RAM.

Test optyczny wyświetlacza LED (zapalenie wszystkich segmentów). • Badanie warunków umożliwiających pracę drukarki w trybie fiskalnym. Badanie sumy kontrolnej danych pamięci RAM podtrzymywanej bateryjnie. a w przypadku błędu wypisanie komunikatu: ' Błąd pamięci NVR ' ' ( Naciśnij NIE ) '. . Odczyt stanu totalizerów drukarki i sprawdzenie ich sumy kontrolnej. lecz brak zamknięcia transakcji w sytuacji. W obu w/w sytuacjach dalsze użytkowanie urządzenia nie jest możliwe. a jeżeli praca w tym trybie nie jest możliwa wypisanie ostrzeżenia: ' Tryb szkoleniowy ! ' Str. oczekiwanie na ewentualne zakończenie drukowania zawartości bufora drukarki (podtrzymywanego bateryjnie). Jeżeli przed wyłączeniem zasilania drukarka była w trybie transakcji i transakcja nie została zakończona poprawnie.Drukarka Fiskalna POSNET Thermal i 3001 Po włączeniu zasilania procesor główny wykonuje test poprawności działania całego systemu oraz inicjalizuje stan drukarki na podstawie danych odczytanych z modułu fiskalnego i pamięci RAM podtrzymywanej bateryjnie. • Wypisanie zgłoszenia na wyświetlaczu (test wizualny): ' Drukarka fiskalna ' 'POSNET Thermal/yy. która spowodowała fatalny błąd testu). to następuje drukowanie napisu: 'paragon anulowany' oraz odcięcie anulowanego paragonu (ta sytuacja może wystąpić tylko. .ilość wolnego miejsca w module fiskalnym. błąd sumy kontrolnej ROM).data ostatniego zapisu w pamięci fiskalnej. 10 . zależnie od przyczyny.nagłówek i część pozycji już została wydrukowana !). oraz. w tej sytuacji. (druga linia może mieć różny format. • Badanie warunków uniemożliwiających pracę drukarki w ogóle (błędy fatalne testu. lub komunikat: ' Brak stawek PTU lub ' 'numeru unikatowego '. • Kontrola poprawności działania i odczyt statusu zegara czasu rzeczywistego.ilość zarejestrowanych zerowań RAM. . w celu wykrycia braku jego zaprogramowania (np.x • ' ' • • • • • Sprawdzenie poprawności działania modułu fiskalnego oraz odczytanie z niego następujących danych: . w wyniku rozładowania baterii).aktualne wartości stawek podatkowych. ponieważ nie chodzi tu o dokończenie drukowania paragonu. . następnie sprowadzenie sterownika mechanizmu drukującego do stanu początkowego. Kontrola poprawności działania mechanizmu drukującego. np.nagłówek dla paragonu i raportów zawierający dane podatnika (NIP). gdzie w przypadku błędu wystąpi komunikat: ' Błąd fatalny testu: ' 'ROM RAM RTC DSP FSK'. Sekwencja startowa obejmuje następujące operacje (w poniższej kolejności): • Test pamięci ROM programu (obliczenie i sprawdzenie sumy kontrolnej).x ' lub ' Drukarka fiskalna 'POSNET 3001/yy. • Test pamięci RAM systemowej. a w takiej sytuacji wypisanie komunikatu: ' Błąd zegara RTC' 'Prześlij z systemu !'. inicjalizacja tego obszaru. jeżeli paragon był drukowany w trybie "On-Line". gdy jego część .

aby obliczanie obrotu przez drukarkę i komputer . Co więcej. albo zapis raportu dobowego do pamięci fiskalnej bez zakończenia jego wydrukowania lub. Powstaje wtedy istotny problem .Drukarka Fiskalna POSNET Thermal i 3001 ' HDR FULL ERR CLR '. 3. prowadząc równocześnie jej "regenerację" w przypadku wykrycia błędów. fisk. Poprawne wykorzystanie stanu bitu TRF przez aplikację likwiduje w każdej sytuacji niepewność co do poprawnego zakończenia transakcji (zatem nie ma możliwości. (w trybie fiskalnym zostanie wówczas wykonany zapis w pamięci fiskalnej informacji o wystąpieniu błędu w bazie danych). (druga linia może mieć różny format. zależnie od sytuacji. dało różne rezultaty !). w której zachodzi analiza znaków odbieranych z interfejsów i realizacja sekwencji sterujących. = xx '. przy czym pojawia się wówczas komunikat: ' Błąd totalizerów ! ' ' ( Naciśnij NIE ) ' (w trybie fiskalnym fakt ten zostanie też zarejestrowany w pamięci fiskalnej). stan tego bitu musi być przechowywany w pamięci nieulotnej. 11 . Problem ten został rozważony szczególnie starannie w konstrukcji całego urządzenia . • Badanie poprawności bazy danych sygnalizowane komunikatem: ' KONTROLA BAZY ' ' DANYCH.czy drukarka zdążyła ją zrealizować czy nie ? Aby rozwiązać skutecznie to zadanie hardware i software drukarki zapewnia spełnienie następujących założeń: 1.. Podobnie. jak w przypadku sterownika drukarki. która uniemożliwia pracę w trybie fiskalnym). kończącej transakcję. nawet w warunkach awarii zasilania w dowolnym momencie ! 2. • Wypisanie standardowego opisu na wyświetlaczu: ' --. Po zakończeniu sekwencji startowej procesor główny przechodzi do głównej pętli. • Generowanie pojedynczego sygnału dźwiękowego. w momencie wykonania obu tych operacji zostaje ustawiony znacznik (nazywany w dalszym opisie TRF) bit. gdzie 'xx' jest ilością "wolnych" rekordów. Jeżeli wykryto dużo błędów to proces ten może trwać do kilku minut. bez wyzerowania totalizerów). że awaria zasilania w dowolnym momencie nie spowoduje błędnego zadziałania drukarki (np. naliczenie obrotu bez zakończenia wydruku paragonu lub odwrotnie. • Jeżeli ilość wolnych lokacji do zapisu (rekordów) w pamięci fiskalnej nie przekracza 20.tu też musi być nierozdzielność operacji). operacje wydruku paragonu i rejestracji obrotu (zwiększenie stanu totalizerów) są NIEROZDZIELNE. '. Str. to po zakończeniu testu pojawia się komunikat: ' Błąd bazy danych ! ' ' ( Naciśnij NIE ) '. to nastąpi wypisanie ostrzeżenia: ' Ilość rekordów w ' ' pam.' 'Suma: 0. W tym momencie procesor główny odczytuje i kontroluje całą bazę danych. który może być testowany przez aplikację w celu zbadania. Wyobraźmy sobie przykładowo sytuację. przy rozważeniu różnych sytuacji szczególnych daje pewność. procesor główny korzysta z sygnału PF ("Power Fail") w celu poprawnego zakończenia wszystkich operacji i przechowania statusu w przypadku zaniku zasilania. co gorsza. przeprowadzono również analizę różnych sytuacji wynikających z awarii zasilania w kontekście komunikacji z serwerem i aplikacją.właściwe wykorzystanie sygnału PF przez procesor (oraz buforowanie pewnych informacji w pamięci nieulotnej).. ' • Automatyczne wykonanie zerowania RAM (jeżeli wykryto wcześniej błąd totalizerów). Jeżeli został wykryty jakikolwiek błąd.Do zapłaty --. w której awaria zasilania następuje w chwilę po wysłaniu przez aplikację sekwencji LBTREXIT.program do sprzedaży. czy ostatnia transakcja została zakończona poprawnie (przy czym software wyklucza explicite możliwość zakończenia transakcji bez ustawienia bitu TRF lub odwrotnie .

x do drukarek POSNET Thermal i 3001 można dołączyć dodatkowy. Serwis powinien pamiętać o przestawieniu zworki J7 (Thermal). Urządzenie posiada możliwość wyświetlania polskich znaków na wyświetlaczu LCD. Komunikaty powyższe spowodują także komunikat: ' Błąd zegara RTC ' 'Prześlij z systemu ! ' ponieważ ‘rok’ zegara przechowywany jest w pamięci RAM. Jedyna różnica to wyświetlanie wszystkich znaków ‘polskich’ (także dużych liter) na wyświetlaczu VFD. Jest to realizowane przez odpytywanie wyświetlacza przez procesor główny co pewien czas.może się zdarzyć. drukując stan kasy (na tym dokumencie niefiskalnym jest data i czas) lub poprzez aplikację (sekwencja odczytu zegara LBSENDCK). wbudowany w pulpit operatora wyświetlacz cyfrowy LCD posiadający dwie linie po 20 znaków alfanumerycznych (dla obsługi) oraz dziesięcio-pozycyjny wyświetlacz cyfrowy dla klienta (LED).. 12 . Komunikacja jest dwukierunkowa (programowanie i odczyt stanu zegara) przy wykorzystaniu magistrali I2C. alfanumeryczny wyświetlacz typu VFD.tu są wypisywane wszelkie ostrzeżenia. przy czym na wyświetlaczu LCD operatora pojawia się komunikat: ' --.' 'Suma: xxxxxxxx. Wyświetlacze. co zapewnia prawidłowe podtrzymanie zegara przez około 5 lat.Pracują one z oscylatorem zegarkowym 32768 Hz. komunikaty o błędach. Zegar czasu rzeczywistego komunikuje się z procesorem głównym.Do zapłaty --. powinno być zgłaszane do serwisu. że przy napięciu baterii "na granicy" poprawnego działania wystąpi np. Nawet jeżeli wystąpi rozprogramowanie zegara. realizuje też wszystkie funkcje kalendarza. że wystąpienie przekłamania w bazie danych lub w innym obszarze danych "nieulotnych" sygnalizowane komunikatami: ' Błąd pamięci NVR ' ' ( Naciśnij NIE ) '. Począwszy od wersji 39. znaczne "spóźnienie" zegara. Prąd pobierany przez zegar zawiera się w granicach 3.xx' Jest to realizowane na końcu transakcji obligatoryjnie przez drukarkę. i / lub: ' Błąd bazy danych ! ' ' ( Naciśnij NIE ) '. aby każdorazowo na początku dnia pracy urządzenia sprawdzić stan zegara np. Dołącza go się do dodatkowego złącza RS232. Działanie zegara czasu rzeczywistego jest podtrzymane przez baterię litową 3V . Polskie litery są zakodowane według standardu MAZOWIA. Wyświetlacz LCD wbudowany w pulpit operatora jest połączony z główną płytą drukarki. Należy też przyjąć.5 µA. przy czym wystąpienie kodu "dużej" polskiej litery powoduje automatycznie przekodowanie na "zwykłą" literę np. ze względu na możliwość zaistnienia defektu baterii. Wyświetlacz LED jest dołączany do gniazda płyty sterownika za pomocą kabla zaopatrzonego we wtyczkę typu RJ-45. to dane w pamięciach nieulotnych będą nadal poprawne ponieważ pamięć RAM podtrzymywana jest przez inną baterię.Drukarka Fiskalna POSNET Thermal i 3001 Zegar czasu rzeczywistego. Zegar pracuje w trybie 24-godzinnym. Wyświetlacz LCD (VFD) zapewnia rozbudowaną interakcję z operatorem systemu . a w jej trakcie narastająca suma transakcji jest wyświetlana automatycznie na obu wyświetlaczach jednocześnie. Na wyświetlaczu tym pojawiają się dokładnie takie same teksty jak na wyświetlaczu operatora LCD (chyba że programista ‘świadomie’ wysyła informacje tylko do wyświetlacza LCD operatora). Zastosowano nowoczesny. Stąd jest zalecane. uwzględniając też lata przestępne . Podstawową funkcją wyświetlacza LED jest informowanie klienta o należności do zapłaty. Chociaż stan baterii jest kontrolowany (układ zegara wykrywa awarię własnego zasilania ) . zamiast "Ą" będzie "A". Takie rozwiązanie umożliwia dołączenie wyświetlacza zewnętrznego. J3 (3001) w pozycję 2xRS (zworka dostępna po zdjęciu zabezpieczonej plombą ołowianą osłonki – patrz rozdział 16 i 17). Str. informacje diagnostyczne itp. ograniczoną ze względów sprzętowych do małych liter. Zegar czasu rzeczywistego wykonano na bazie układu PCF8573 (wersje ‘przewlekane’ płyty głównej) lub V3021 (wersja SMD) . W każdej sytuacji blokowana jest praca drukarki bez poprawnego dołączenia wyświetlacza LED.

Wtedy zawartość totalizerów jest przepisywana do pamięci stałej PROM. zapewniając sekwencyjny odczyt danych z PROM itd. Odłączenie modułu od głównej płyty lub jego awaria powoduje bezwzględnie zawieszenie pracy drukarki wraz z komunikatem: 'Błąd fatalny testu: ' ' FSK '. zawierających kwoty sprzedaży dla grup podatkowych A. • nagłówek zawierający dane podatnika (NIP).F oraz Z (grupa zwolniona od podatku) uzupełniony o 20 bitowy numer paragonu fiskalnego (PAR_NUM. Kolejne informacje są zgrupowane w pewne jednostki informacyjne (tak jak sektor na dysku) i zwane dalej rekordami. Procesor główny może dokonać trwałego zapisu danych w tej pamięci. Konstrukcja modułu zapewnia niezawodny zapis danych w pamięci stałej nawet jeżeli podczas zapisu nastąpi awaria zasilania. 2. Po fiskalizacji urządzenia dalsze zapisy mogą dotyczyć wyłącznie tego obszaru. Właściwą gospodarkę pamięcią zapewnia główny procesor drukarki. 13 . co umożliwia właściwą interpretację przez procesor główny pozostałej jego zawartości. Jest to zestaw 7 rejestrów 28 bitowych (TOT_A. że podczas drukowania raportu okresowego zawartość pamięci PROM jest odczytywana sekwencyjnie oraz analizowana i "przenoszona na papier" przez procesor drukarki. w których są akumulowane kwoty sprzedaży z podziałem na grupy podatkowe. badając poprawność działania całego układu elektronicznego. Równocześnie jest drukowany odpowiedni raport na drukarce paragonowej. Mechanizm zapisu jest tu podobny jak np. Typ rekordu jest zapisany w pierwszym bajcie rekordu. Na płytce modułu fiskalnego jest zatem zmontowana pamięć PROM (układ elektroniczny niezbędny do jej programowania umieszczony jest na płycie głównej). Cały obszar pamięci PROM jest funkcjonalnie podzielony na dwa obszary: 1. Poszczególne rekordy mogą nieść następujące informacje: • raport dobowy (data oraz stan totalizerów). reszta nagłówka do pamięci RAM). Nagłówek jest wpisywany do pamięci podczas fiskalizacji urządzenia (numer identyfikacyjny podatnika do modułu fiskalnego. wyszukując pierwsze wolne miejsce do zapisu rekordu. Rejestry te są nazywane dalej totalizerami. Są zapisywane kolejno tzn. • zerowanie RAM (data i czas zerowania). Numer unikatowy pamięci jest równocześnie numerem unikatowym całej drukarki i jest wpisywany przez producenta. Dodajmy. Po włączeniu zasilania procesor wykonuje test funkcjonalny pamięci fiskalnej. nawet jeżeli wystąpi zanik zasilania 220V. Postać raportu okresowego jest zatem bezpośrednio związana ze sposobem zapisu informacji w pamięci fiskalnej. Rejestracja sprzedaży przez urządzenie jest dokonywana w całości przez moduł fiskalny i przebiega dwuetapowo: 1. Str. a stan totalizerów jest zerowany (z wyjątkiem licznika paragonów fiskalnych). Realizuje on zapis w pamięci stałej PROM różnych informacji (przede wszystkim informacji o sprzedaży dziennej). • numer unikatowy pamięci. Na koniec dnia użytkownik jest zobowiązany wykonać tzw. 2. przytwierdzony "na stałe" zespół. Po zatwierdzeniu transakcji jest zwiększany stan nieulotnych rejestrów. • zmiana stawek PTU (data oraz nowe wartości stawek). • błąd bazy danych (data wystąpienia błędu). Pamięć fiskalna stanowi zamknięty w stalowej obudowie. Obszar zapisu sekwencyjnego. Podczas normalnego działania drukarki procesor kontroluje periodycznie (co kilka sekund) poprawność działania modułu fiskalnego. Dokładniej: zapis zostanie wykonany poprawnie. gdzie są zapisywane: • dane testowe pamięci. Każda z powyższych danych ma w pamięci PROM ściśle określoną lokalizację. zwiększany po każdej poprawnej transakcji) oraz bajt sumy kontrolnej. Dane testowe są zapisywane i kontrolowane automatycznie przez procesor modułu fiskalnego (podczas uruchamiania modułu). następny rekord jest zapisywany w pierwszej wolnej lokacji pamięci.Drukarka Fiskalna POSNET Thermal i 3001 Pamięć fiskalna. Obszar adresowany "bezwzględnie".TOT_Z). sprawdza także poprawność danych zawartych w pamięci stałej i nieulotnej.. dla dysku lub taśmy magnetycznej. raport dobowy..

niezależne zewnętrzne konstrukcje zasilaczy. Napięcie +5V zasilające część cyfrową drukarek otrzymywane jest przy pomocy stabilizatora impulsowego umieszczonego na głównej płycie sterownika drukarek. po wyprostowaniu służy do zasilenia ciągłego zasilacza stabilizowanego +25V (POSNET 3001 i POSNET Thermal wersja SMD) lub bezpośrednio zasila drukarkę. Wybrano wariant zasilacza optymalny pod względem niezawodnościowym: napięcie jest otrzymywane z uzwojenia transformatora sieciowego o mocy znamionowej 50 VA. prąd spada do zera przy zwarciu) .Drukarka Fiskalna POSNET Thermal i 3001 Zasilacze. że daje duży czas od momentu zaniku napięcia sieciowego do momentu utraty możliwości stabilizacji. Z kolei prąd chwilowy może być znaczny (nawet do ok. Zasilacze drukarek POSNET Thermal i POSNET 3001 to zamknięte w jednej obudowie. przy dużej sprawności. 14 . Str. Ograniczenie prądowe zasilacza drukarki POSNET 3001 jest ustalone na ok. 2A (ograniczenie ‘z podcięciem’ . dostarczając napięcie do obwodów wykonawczych drukarki (POSNET Thermal wersja ‘przewlekana’).stąd na wyjściu zasilacza umieszczono znaczną pojemność. co jest konieczne dla poprawnego zakończenia wszystkich operacji drukarki w przypadku zaniku (awarii) zasilania. natomiast osiągnięcie poprawnego stanu napięć zasilających przy użyciu sygnału PG ("Power Good"). Duża dynamika (tzn. a nie wyłączenie drukarki za pomocą jej przełącznika. Zanik napięcia zasilającego jest sygnalizowany przy użyciu sygnału PF ("Power Fail"). Wyłączanie drukarki podczas realizacji wydruków przy pomocy wyłącznika drukarki jest niedopuszczalne! Zasilacz drukarki POSNET Thermal w wersji SMD jest zasilaczem impulsowym zaopatrzonym w inną wtyczkę od stosowanych w zasilaczach przeznaczonych dla wersji ‘przewlekanych’. UWAGA: pisząc ‘zanik napięcia zasilającego’ mamy na myśli zanik napięcia na wejściu zasilacza drukarki. Napięcie to.ponieważ średni prąd pobierany przez mechanizm (nawet przy ciągłym drukowaniu) nie przekracza tej wartości. zakres napięć wejściowych stabilizatora +5V) jest ważna o tyle. Takie rozwiązanie zasilacza daje znaczną dynamikę pracy stabilizatora +5V. 8A !) .

Drukarka Fiskalna POSNET Thermal i 3001 Klawiatury drukarek.kasowania błędów. . Rozmieszczenie poszczególnych klawiszy przedstawione jest na rysunkach poniżej (różne drukarki): Klawiatura drukarki POSNET THERMAL (obudowa metalowa) Klawiatura drukarki POSNET THERMAL (obudowa plastikowa) Rysunek klawiatury drukarki POSNET 3001 Str. .włączania pracy GOTOWA. .zakładania papieru. Drukarka posiada cztery przyciski o różnorakich funkcjach które wykorzystywane są do: . Działanie przycisku potwierdzone jest sygnałem dźwiękowym.wykonywania raportów fiskalnych dobowych i okresowych. 15 .

miesiąca lub dnia) w "dół" ("-" zmniejszenie wartości wyświetlonej) w przypadku definiowania daty początkowej lub końcowej dla raportu okresowego. które sygnalizowane są na wyświetlaczu drukarki. Umożliwia wysuw papieru (oryginału w drukarce THERMAL) w trybie NIE GOTOWA. .RAPORT OKRESOWY.zieloną (GOTOWA). 2. Przy jego pomocy wybieramy rodzaj raportu . Klawisz NIE zezwala na wycofanie się z dowolnej opcji ustawień w przypadkach gdy wymagane jest potwierdzenie lub zaprzeczenie ustawienia. drukarkę należy wyprowadzić z trybu GOTOWA klawiszem NIE (zielona lampka zgaśnie) i przy pomocy klawisza TAK (WYSUW) dokonać wysuwu papieru. . 16 . D. miesiąca lub dnia) w "górę" ("+" zwiększenie wartości wyświetlonej) w przypadku definiowania daty początkowej lub końcowej dla raportu okresowego. że drukarka jest w stanie gotowości do pracy z komputerem (świeci w trybie ‘GOTOWA’). 2. Klawisz ten służy także do kasowania ewentualnych sytuacji błędnych. wykorzystywany przy zakładaniu nowej rolki papieru. Służy także do zmiany wartości pól (roku. Przy jego pomocy wybieramy rodzaj raportu . Umożliwia wysuw kopii w drukarce THERMAL w trybie NIE GOTOWA. Str. 3.żółtą. obok klawisza NIE. wykorzystywany przy zakładaniu nowej rolki papieru. (raport dobowy): 1. informującą. lub R. z napisem BŁĄD informującą o zaistnieniu błędu (dioda miga i słychać przerywany sygnał dźwiękowy). zmiana stawek PTU) lub na wykonanie raportu okresowego. W przypadku definiowania zakresu dat dla raportu okresowego przy jego pomocy możemy wybierać pole. W przypadku sygnalizowania przez drukarkę błędu przy pomocy tego klawisza można skasować w dowolnym momencie sygnał dźwiękowy generowany przez wewnętrzny głośnik drukarki. Służy także do zmiany wartości pól (roku. W przypadku sygnalizowania przez drukarkę błędu przy pomocy tego klawisza można skasować w dowolnym momencie sygnał dźwiękowy generowany przez wewnętrzny głośnik drukarki. 2.RAPORT DOBOWY (przy włączaniu drukarki należy przytrzymać wciśnięty jeden z dwóch klawiszy R.Drukarka Fiskalna POSNET Thermal i 3001 OPIS KLAWIATURY: Klawisz NIE: 1. W przypadku definiowania zakresu (dat) dla raportu okresowego przy pomocy klawisza NIE możemy wybrać pole. 4. 3. 3. W przypadku sygnalizowania przez drukarkę błędu przy pomocy tego klawisza można skasować w dowolnym momencie sygnał dźwiękowy generowany przez wewnętrzny głośnik drukarki. które chcemy zmienić (pełni wtedy funkcję prawego kursora).O. Włącza/wyłącza tryb pracy GOTOWA. które chcemy zmienić (pełni on wtedy funkcję lewego kursora). Zezwala na operacje związane z ewentualnym zapisem do modułu fiskalnego (raport dobowy. z napisem SIEĆ informującą.D. 5. UWAGA: w przypadku wystąpienia błędu uniemożliwiającego dalsze działanie drukarki migają obie diody : SIEĆ i BŁĄD. Drukarka jest "widziana" przez komputer gdy świeci się zielona lampka opisana „GOTOWA“. (raport okresowy): 1. Klawisz TAK: 1. że drukarka jest włączona (podłączona do sieci zasilającej i włączony jest wyłącznik sieciowy). O. 4. 4. 4.). 2. W przypadku sygnalizowania przez drukarkę błędu przy pomocy tego klawisza można skasować w dowolnym momencie sygnał dźwiękowy generowany przez wewnętrzny głośnik drukarki. Klawisz R. Przy jego pomocy (w przypadku gdy lampka GOTOWA nie świeci) można wysunąć papier kopii w drukarce POSNET Thermal. Dodatkowo klawiatura wyposażona jest w trzy lampki typu LED: .czerwoną. W celu dokonania wysuwu papieru. 3. Klawisz R.

Po włożeniu wtyczki do złącza należy na złącze nakleić specjalną nalepką. powiadomienia Urzędu Skarbowego. Jest to nalepka jednorazowego użytku. zagniataka) i kilkakrotnym delikatnym uderzeniu młotkiem. Zawsze po wkręceniu wkrętów należy dokonać pełnego testu poprawności pracy drukarki. zdecydowanym (ale z wyczuciem !) uderzeniu młotkiem.Drukarka Fiskalna POSNET Thermal i 3001 3. Wyjęcie układu pamięci powoduje zerwanie nalepki. uchwyt. Plomby serwisowe POSNET SERWIS 8777 Pamięć fiskalna jest połączona z płytą sterownika wstążką z nasadką. • zgnieceniu brzegów kubeczka poprzez nałożenie narzędzia o stożkowym otworze czołowym (tzw. a następnie jest wkręcony w gwint konstrukcji drukarki.plomby producenta . Kubeczki do plombowania są jednorazowego użytku i są dostarczane wyłącznie przez producenta !. wskazujących na ingerencję osób niepowołanych. która ulega uszkodzeniu przy próbie zrywania. 17 . Opisania nalepki należy dokonać przed jej zdjęciem z papieru zabezpieczającego i nalepieniem na złącze. Plombowanie drukarki fiskalnej Plomby drukarki można podzielić na dwie grupy: I . o ile przewidują to odnośne przepisy szczegółowe. przyłożenie indywidualnego stempla serwisanta i delikatne uderzenie młotkiem. mocowaną dwoma wkrętami M3 do chasidrukarki.C. które polega na: • włożeniu do kubeczka plasterka ołowiu. która jest zapinana do złącza umieszczonego na płycie sterownika drukarki. O wszelkich zauważonych uszkodzeniach plomb. na której serwisant umieszcza swoje dane wraz z datą naprawy i odciskiem pieczęci serwisowej. że wkręt mocujący przechodzi kolejno przez: kubeczek. Pamięć fiskalna stanowi zamknięty. jednorazowego użytku nalepką producenta. W drukarkach POSNET Thermal i POSNET 3001 zastosowano specjalną osłonkę. Wymontowywanie pamięci fiskalnej.plomby serwisowe . Uchwyt kubka jest podwinięty pod spód osłonki tak. Dokonywanie w takim przypadku otwierania lub naprawy drukarki . należy powiadomić Urząd Skarbowy i producenta. Nalepkę należy tak umieścić na złączu.obciąża odpowiedzialnością serwisanta. Nalepka ta zawiera dane o dacie produkcji i ewentualnie o wersji oprogramowania. II . lub HOLOGRAMU także zawierającego napis POSNET. Każdorazowa ingerencja serwisu wymaga odnotowania w książce serwisowej drukarki oraz. osłonkę. Po poprawnym wyniku testu można dokonać zabicia plomb. Pamięć programu EPROM zainstalowana na pakiecie sterownika drukarki jest zabezpieczona specjalną. • odciśnięciu w ołowiu pieczęci serwisanta poprzez przyłożenie narzędzia z indywidualnym oznakowaniem serwisanta i jednorazowym. Str. zgodnie z obowiązującymi przepisami. Pod jeden z nich podłożony jest metalowy kubek z uchwytem z owalnym wycięciem (wkręt od strony klawiatury). Uszkodzenia drukarki polegające na niesprawności pamięci fiskalnej kwalifikują całą drukarkę do wymiany. aby można było na niej odczytać wpisane dane i zidentyfikować stempel serwisanta. nie może być dokonywane w żadnym przypadku przez serwis !!!. czyli POSNET S. Plomby producenta Drukarka zawiera plombę producenta w postaci plastikowego klipsa z napisem POSNET. Nalepki na złącze pamięci fiskalnej dostarcza wyłącznie producent !!!. przytwierdzony "na stałe" zespół. Wyjmowanie pamięci EPROM w celu jakiekolwiek kopiowania i analizowania zawartego w nich oprogramowania są czynnościami zabronionymi dla serwisu !!!.) lub najbliższego przedstawiciela regionalnego POSNET. Drukarkę z uszkodzeniami pamięci fiskalnej należy dostarczyć do producenta (POSNET S. Odcisku pieczęci należy dokonać poprzez umieszczenie nalepki na twardej gumie. Plomb tych nie może naruszać żaden serwisant za wyjątkiem przedstawiciela regionalnego lub producenta.C.

z wpisanymi pełnymi danymi podatnika (dotyczy to także drukarek z nową wersją firmware) istnieje możliwość ‘dostosowania’ ich do nowych zasad. w przypadku podłączenia drukarki do komputera poprzez port COM2. Następnie program zada pytanie czy wykonać fiskalizację. starych zasad tzn. za co całą odpowiedzialność ponosi serwisant . ≥ 17.Drukarka Fiskalna POSNET Thermal i 3001 4. W okienku edytora nagłówka zdefiniować nagłówek wg ‘starych’ zasad tzn. Należy sprawdzić ten numer (UŻYTKOWNIK). uzyskać potwierdzenie na odwrocie tego wydruku właściciela drukarki i dopiero po uzyskaniu tego potwierdzenia dokonać fiskalizacji naciskając na klawiaturze drukarki klawisz ‘TAK’. Na czas fiskalizacji zalecane jest dołączenie drukarki do zasilacza UPS. 5. W drukarkach fiskalizowanych wg. Sprawdzić ten wydruk (jego poprawność).1) wg nowych zasad nie wolno dokonywać przy pomocy ‘starego’ programu “POSNET.EXE” (katalog POSNET na dyskietce) !!!. Format dla numeru NIP jest 'sztywny' i dopuszczalne są napisy zawierające na początku ciąg 'NIP' a dalej znak odstępu (spacja). Fiskalizacja drukarki. ale muszą się one znaleźć przed linią zawierającą NIP. jeżeli stwierdzimy że jest błąd w nagłówku trzeba się wycofać i nacisnąć klawisz ‘N’. Fiskalizacja polega na zapisaniu numeru identyfikacyjnego podatnika NIP do pamięci fiskalnej (operacja nieodwracalna). adres firmy i NIP (NIP musi być w ostatniej linii nagłówka tzn.pl). natomiast nazwę firmy i adres jego siedziby trzeba wprowadzać do pamięci RAM z możliwością korekty tych danych w przyszłości. Jeżeli próbny wydruk jest prawidłowy można nacisnąć ‘T’ . Uzgodnić z użytkownikiem stawki PTU które ew. Str. 2.powinny znaleźć się w następnej linii po NIP i od lewej krawędzi wydruku. trzema separatorami '-'. Fiskalizacji drukarki (wer. ‘Wysłać’ nagłówek do drukarki.EXE należy uruchamiać komendą : POSNET POSNET POSNET POSNET 1 2 3 4 w przypadku podłączenia drukarki do komputera poprzez port COM1. w przypadku podłączenia drukarki do komputera poprzez port COM3. który jest udostępniany serwisantom po pomyślnym zdaniu egzaminu kończącego kurs serwisowy drukarek (katalog VER17_1 na dyskietce fiskalnej dla firmware ≥17. po fiskalizacji trzeba w drukarce zdefiniować (tryb szkoleniowy umożliwia dokonanie dowolnych sprzedaży z programu użytkownika i określenie z jakich stawek korzysta użytkownik). Program POSNET. poniżej tego paragonu pojawi się kontrolny wydruk zawierający tylko linię z NIP. W takim przypadku należy skontaktować się z serwisem centralnym POSNET (serwis@posnet. miejsca instalacji drukarki (niektóre urzędy skarbowe tego wymagają). 8. podać Nazwę firmy. Zaniki zasilania w przypadku braku UPS-a mogą mieć negatywny wpływ na przebieg fiskalizacji. 4.„POSNET. Wybrać z menu programu opcję Programowanie Nagłówka (litera G). Fiskalizacji powinna przebiegać wg opisu poniżej (zalecamy dokonywanie fiskalizacji przy wykorzystaniu takiego interfejsu na jakim ma pracować Użytkownik) : 1. w przypadku podłączenia drukarki do komputera poprzez port COM4.EXE”. 3. adresie firmy). 18 . Używanie do fiskalizacji drukarki programów nie posiadających autoryzacji firmy POSNET może spowodować nieodwracalny błąd w zapisie do pamięci fiskalnej. Po naciśnięciu ‘T’ drukarka wydrukuje kontrolny paragon z interesującym nas nagłówkiem. 6. Sprawdzić datę i czas w urządzeniu (musi być prawidłowa !). zwrócić uwagę na położenie trzech znaków zapytania ‘???’ . 7.1.com. Fiskalizację drukarki należy przeprowadzać przy użyciu oryginalnego serwisowego programu firmy POSNET . Dopuszczalne jest umieszczanie w nagłówku innych informacji np. zabezpieczającego przed zanikami zasilania sieciowego. w pierwszej wolnej linii po nazwie. Drukarka wydrukuje kontrolny paragon z nagłówkiem.10 cyfr z max. Program podpowiada co mu się ‘nie podoba’ w linii z NIP (o ile popełnimy jakiś błąd) i nie zezwoli na fiskalizację drukarki dotąd aż błąd zostanie poprawiony !.

Str.bat zawierający niezbędne elementy do wysłania do drukarki poprzez odpowiednie złącze treści nagłówka (w przypadku gdy zostanie on np.nag’ oraz ‘nazwa. 10. dokonać sprzedaży testowej i wykonać RAPORT DOBOWY.1) zaleca się programowanie zawsze 4 stawek PTU. Drukarka wymaga w tym przypadku interwencji serwisu producenta (przedstawiciela regionalnego). jaki może wystąpić w trakcie fiskalizacji. • plik nazwa. • po włączeniu zasilania nie pojawia się żadne dodatkowe ostrzeżenie. objawiający się komunikatem: ‘ Błąd zapisu !! ‘ ‘ Wyłącz zasilanie. Zaleca się dołączenie wszystkich wykonanych wydruków do książki serwisowej drukarki. ‘ --. NIE WOLNO WYŁĄCZAĆ ZASILANIA DRUKARKI.bat’ i poinformować co zrobić w przyszłości w przypadku utraty/ przekłamania w treści nagłówka. sprawdzamy wtedy czy nagłówek zawiera wszystkie niezbędne informacje ( Nazwę .y ‘ .. to błąd zapisu do pamięci fiskalnej.. 10 sekund) należy sprawdzić poprawność fiskalizacji (opcja TESTOWANIE).. W przypadku zmian w nagłówku jest to jedyna możliwość zmiany jego treści. ‘ Przed uzyskaniem sygnału akustycznego i ww.. Po fiskalizacji można skopiować użytkownikowi na jego komputer/ dyskietkę pliki ‘nazwa. (nazwa .5s. ‘utracony’). Po poprawnym zakończeniu wszystkich operacji drukarka zgłasza się w identyczny sposób jak po włączeniu zasilania.‘ ‘Suma: 0. zapis do modułu raportu). Jedyny błąd. błąd pamięci NVR) . Podczas operacji opisanych powyżej na dyskietce powstaną następujące pliki (tylko w przypadku ‘ufiskalnienia’ drukarki ) : • plik nazwa.RAM zawierający ‘pełny’ nagłówek dla trybu szkoleniowego.EXE). który w urządzeniu NIESFISKALIZOWANYM pojawia się po włączeniu zasilania na ok. 13. ‘. gdzie : nazwa .bat’ po fiskalizacji) spowoduje zgłoszenie przez drukarkę błędu nr 40 w przypadku próby sprzedaży z ‘pustym’ nagłówkiem w RAM drukarki.nag zawierający nagłówek dla RAM drukarki .exe . sekwencji komunikatów: 11. Od tego momentu urządzenie jest w trybie fiskalnym z możliwością zmiany nagłówka na przyszłość w przypadku gdy NIP nie ulega zmianie (zapis NIP do pamięci fiskalnej jest operacją nieodwracalną !).. 19 . tj.Drukarka Fiskalna POSNET Thermal i 3001 9. • nazwa. PONIEWAŻ MOŻE TO 12. Po zakończeniu procesu fiskalizacji (ok. Prawidłowo sfiskalizowane urządzenie charakteryzuje się następującymi cechami: • na paragonach oraz na raportach dobowych i okresowych brak jest napisu „niefiskalny” na dole i na górze paragonu oraz występuje pełne logo fiskalne na środku ostatniej linii ( stylizowane PL )...adres siedziby i NIP) ze względu na obowiązujące przepisy oraz czy drukarka po fiskalizacji działa poprawnie (sprzedaż.nazwa pliku podawana na wstępie przy uruchamianiu programu posnet. 0.nazwa pliku z nagłówkiem podawana podczas uruchamiania programu POSNET.Do zapłaty --.. SPOWODOWAĆ BŁĘDNĄ FISKALIZACJĘ DRUKARKI !!!.exe że drukarka jest fiskalna (program nie wymaga wtedy definiowania linii z NIP). ‘wyjść’ z programu i uruchomić program ‘nazwa. Fragment nagłówka można zapisać zawsze do pamięci RAM deklarując przy uruchamianiu programu posnet. Po każdej fiskalizacji należy o ile jest to konieczne zdefiniować uzgodnione wcześniej stawki PTU (opcja ‘F’ z programu) – ze względu na aplikacje pisane dla starszych wersji drukarek (firmware < 17. Brak w RAM nagłówka (czyli nie uruchomienie pliku ‘nazwa.bat’ (batch file) który to program ‘wyśle’ do pamięci RAM drukarki pozostałą część nagłówka i wydrukowany zostanie próbny wydruk zawierający cały nagłówek. Identyczny błąd wystąpi w przypadku utracenia nagłówka (np. w szczególności NIE MA KOMUNIKATU: ‘Tryb szkoleniowy ! ‘ ‘HDR ‘. sygnałem dźwiękowym i sekwencją komunikatów : ‘ Drukarka fiskalna ‘ ‘POSNET Thermal/xx.

e) w przypadku konieczności zabrania kasy do punktu serwisowego w celu dokonania naprawy opisać przyczyny. i) datę i godzinę ukończenia interwencji. Przepisy powyższe (link) oraz ich aktualizacje dostępne są na stronie WWW firmy POSNET. 1. 511 z 1993 r. podatnika i serwisanta. Serwis dealera musi być tak zorganizowany. W związku z tym. W załączniku 2 do tego rozporządzenia podano większość informacji ważnych dla prawidłowego wykonywania serwisu. g) numery (początkowy i końcowy) dokumentów sprzedaży wystawionych przez kasę podczas operacji próbnych (dokumenty te. 3. h) datę i godzinę ponownego zainstalowania kasy w przypadku. wykonać raport okresowy z całej zawartości pamięci fiskalnej i (po podpisaniu go przez serwis) wręczyć za pokwitowaniem: 1-wszy egzemplarz podatnikowi a 2-gi pracownikowi urzędu skarbowego. czyli pod adresem: http://www. b) datę i godzinę rozpoczęcia interwencji. dla których nie jest możliwa naprawa w miejscu użytkowania kasy.). j) jakie elementy kasy zostały wymienione podczas naprawy (jeżeli posiadały numery . oraz warunków stosowania tych kas przez podatników (Dz. c) opis stwierdzonych nieprawidłowości. d) opis stanu plomb. muszą być przechowywane przez użytkownika kasy). 422 i Nr 115. Wykonujący serwis musi co najmniej dwa razy w ciągu roku dokonać sprawdzenia prawidłowości funkcjonowania kasy u każdego klienta bez jego wezwania oraz odnotowuje ten fakt w książce kasy rejestrującej. Podatnicy oraz służby serwisowe obowiązani są poinformować właściwy dla podatnika urząd skarbowy o zainstalowaniu kasy (w trybie fiskalnym) nie później niż w ciągu 14 dni od dnia zainstalowania (wzory powiadomień zawarte są na dyskietce serwisowej w katalogu ‘URZAD_SK’). W przypadku technicznej niemożności wykonania raportu należy sporządzić protokół podpisany przez pracownika urzędu skarbowego. aby zapewniał podjęcie wykonania serwisu w czasie nie dłuższym niż 48 godzin. przed zabraniem kasy do punktu serwisowego. Nr 39. poz.com. 20 . U. 178. 2. bezwzględnie w obecności upoważnionego pracownika urzędu skarbowego (właściwego dla podatnika). l) podpis czytelny wykonującego serwis oraz jego pieczęć. Serwisanci wykonujący obsługę kas rejestrujących mają obowiązek we własnym zakresie zapoznać się ze wszelkimi dotychczasowymi uregulowaniami prawnymi dotyczącymi kas rejestrujących oraz powinni śledzić wszelkie zmiany przepisów w tym zakresie. Nr 91.posnet. Wykonujący serwis nie może dokonywać ingerencji w pamięć kasy rejestrującej bez udziału upoważnionego pracownika urzędu skarbowego.pl/przepisy.htm Poniżej podajemy podstawowe zasady organizacji serwisu POSNET wynikające z w/w przepisów. oraz podać datę i godzinę zabrania kasy do punktu serwisowego. 4. f) numer ostatnio wystawionego przez kasę dokumentu przed interwencją. poz. k) oświadczenie o prawidłowości funkcjonowania kasy (do serwisanta należy przeprowadzenie testów kasy i potwierdzenie. należy bezwzględnie zapoznać się z rozporządzeniem Ministra Finansów z dnia 12 maja 1993 w sprawie kryteriów i warunków technicznych. a zakończenie wykonania serwisu w czasie nie dłuższym niż 14 dni. Czynności tych nie można dokonywać przed odczytaniem i wydrukiem zawartości pamięci kasy.wpisać). podpisane przez serwisanta dokonującego naprawę. Wykonujący serwis kasy rejestrującej jest obowiązany zamieścić w książce kasy: a) datę i godzinę żądania interwencji. w przypadku sygnalizowania przez kasę (drukarkę fiskalną) błędu pamięci fiskalnej należy. gdy naprawy dokonano w punkcie serwisowym. W szczególności. Str. poz. Wykonujący serwis nie może jednemu serwisantowi powierzyć do obsługi więcej niż 300 kas rejestrujących. 5. którym muszą odpowiadać kasy rejestrujące. Podczas instalacji serwisant dokonuje ponadto odpowiednich wpisów do książki kasy rejestrującej. Uregulowania prawne dotyczące kas rejestrujących. że po wykonaniu naprawy kasa działa poprawnie) i jej zaplombowaniu pieczęcią serwisanta z jego numerem identyfikacyjnym.Drukarka Fiskalna POSNET Thermal i 3001 5.

Za zainstalowanie kasy rozumie się jej uruchomienie u podatnika w trybie fiskalnym. mogą być podstawą do poniesienia przez dealera i jego serwisanta odpowiedzialności z tytułu ewentualnych roszczeń zgłaszanych przez urzędy skarbowe i podatników. Uchybienia formalne i merytoryczne serwisantów wykonujących w terenie obsługę kas rejestrujących (drukarek) mogą być podstawą do zerwania umowy dealerskiej. Serwis centralny POSNET (przedstawiciel regionalny) po naprawieniu kasy odsyła kasę do punktu serwisowego dealera dokonując uzupełniającego wpisu do książki serwisowej dostarczonej razem z drukarką do naprawy. 7. 21 . Jeżeli użytkownik posiada kasę rezerwową to w książce serwisowej kasy rezerwowej należy odnotować fakt zastąpienia przez tę kasę kasy głównej. 9. W przypadku wątpliwości należy kontaktować się z przedstawicielem regionalnym POSNET lub serwisem centralnym POSNET (serwis@posnet. Serwisant po otrzymaniu naprawionej kasy instaluje ją . Serwisant jest ponadto zobowiązany wypełnić książkę serwisową tak aby serwis producenta (przedstawiciela regionalnego) mógł jednoznacznie stwierdzić jakie są objawy uszkodzenia drukarki. Wpisów w książce kasy należy dokonywać tylko dla kasy sfiskalizowanej. Kasy rejestrujące nie pracujące w trybie fiskalnym są traktowane jak inne urządzenia elektroniczne. W przypadku konieczności odesłania kasy rejestrującej (drukarki) do serwisu centralnego POSNET lub przedstawiciela regionalnego należy ten fakt uzgodnić z serwisem firmy POSNET (przedstawicielem regionalnym) . a w książce kasy głównej umieścić adnotację o podłączeniu do stanowiska sprzedaży kasy rezerwowej podając jej nr unikatowy i fabryczny.com. cofnięcia uprawnień autoryzowanego serwisanta.pl) Str.Drukarka Fiskalna POSNET Thermal i 3001 6. a w skrajnym przypadku. 8.

BEL ($07). inaczej zwane "albo". Funkcja ta działa na pojedynczych bitach bajtu. Część całkowita jest oddzielona od ułamkowej znakiem ‘. Wystąpienie w dowolnym miejscu sekwencji kodu ESC powoduje również zignorowanie sekwencji do końca. 8 cyfr w części całkowitej i maksymalnie 2 cyfry części ułamkowej. przy czym pierwszy znak identyfikatora jest znakiem '$' .00' można wysłać '5. Przykładowa procedura dopisująca te znaki. Dla niektórych sekwencji parametry te nie muszą występować.. 'A'.b) := (( not a) and b) or (( not b) and a). 22 . Każdy z nich może mieć maksymalną wartość = 255. Format kwot dopuszcza maks. Na początku podstawiamy wartość bajtu kontrolnego: <byte> := 255. Mogą też wystąpić parametry numeryczne składające się z maksymalnie 10 cyfr. które wyrażają w zapisie heksadecymalnym wartość bajtu kontrolnego liczonego dla całej sekwencji w specjalny sposób: 1. to drukarka ignoruje resztę sekwencji aż do znaków 'ESC \'.. W rozdziale 10 podano zestaw sekwencji sterujących. Wszystkie rozkazy mają jednolity format: ESC P Ps . Str.oddzielonych średnikami. Oczywiście użycie nawiasów nie jest tu konieczne ze względu na przestrzeganą chyba we wszystkich językach siłę wiązania poszczególnych funkcji. napisana w języku PASCAL jest pokazana w rozdziale „Ogólne zasady syntaktyki komend.” Po odczytaniu i sprawdzeniu cyfr kontrolnych drukarka wczytuje "końcówkę" sekwencji w postaci dwóch znaków: 'ESC \' ($1B $5C). '5.'9'. . UWAGA: Oznaczenie "xor" użyte w procedurze oznacza funkcję logiczną Exclusive Or czyli: ”lub wykluczające”. zamiast '5. Następnie jest odbierany dwuznakowy identyfikator rozkazu 'xx'. Cyfry kontrolne obliczane w ten sposób dają dobre zabezpieczenie przed przekłamaniami transmisji. Dla bitów o różnych wartościach wynosi 1. Jeśli w użytkowanym przez Państwa języku programowania brakuje funkcji xor. Szersze możliwości reprezentacji liczb w tej wersji dla ceny i ilości towaru (parametry sekwencji LBTRSLN) omówiono w rozdziale 10 opisującym dokładnie sekwencje drukarki.'F')..0'. Ps) .. Programowanie drukarki. Ps xx <string> cc ESC \ Po odebraniu prefiksu 'ESC P' ($1B $50) drukarka wczytuje ciąg (maksymalnie do 16-tu) parametrów numerycznych (Ps . to można ją zdefiniować następująco: xor (a. którego struktura zależy od konkretnego rozkazu. Syntaktyka rozkazów. '#' lub ‘*’ (wersja apteczna).cyframi HEX (znaki ze zbioru: '0'. nazwa towaru). Dopuszczalna i zalecana jest kompresja zer nieznaczących w części całkowitej i ułamkowej. Długość napisu jest dla konkretnej sekwencji indywidualnie ograniczona (np. natomiast wystąpienie ciągu ESC P powoduje rozpoczęcie analizy sekwencji od początku. a dla takich samych .' a najlepiej po prostu '5'). Począwszy od następnego znaku za ESC P obliczamy wartość wyrażenia: <byte> := <byte> xor <kod danego znaku>.Drukarka Fiskalna POSNET Thermal i 3001 6. a drugi jest małą literą (z zakresu $60... 3. Terminatorem wartości liczbowej jest z reguły '/' ($2F) (za wyjątkiem parametru <ilość>). Maksymalna kwota ma postać 99999999.wówczas mogą składać się z dowolnych znaków ASCII z wyłączeniem kodów kontrolnych (np. CAN ($18) i DLE ($10) oraz kilkanaście rozkazów (sekwencji) sterujących. Jeżeli w trakcie analizy syntaktyki rozkazu wystąpi błąd. Tak uzyskany bajt kontrolny wyrażamy postaci w cyfr heksadecymalnych i dopisujemy do sekwencji wraz z końcówką 'ESC \'. W obrębie ciągu mogą znaleźć się napisy .$7E). Drukarka rozpoznaje 3 kody sterujące: ENQ ($05). natomiast zerowa część ułamkowa nie musi być w ogóle wysyłana (np. 2. zwykle będą to różnego rodzaju kwoty.’ . aż do ostatniego znaku sekwencji (nie licząc znaków 'cc' i "końcówki" ESC \).0.. nazwa towaru do 40 znaków) a jego terminatorem jest zwykle kod CR ($0D).. Realizacja sekwencji z reguły rozpoczyna się dopiero po wczytaniu tych dwóch ostatnich znaków.99... Po odebraniu identyfikatora rozkazu drukarka wczytuje ciąg parametrów napisowych lub numerycznych <string>. Większość sekwencji jest uzupełniona dwoma znakami ('cc') . W tym rozdziale wyjaśnimy podstawowe zasady konstruowania oprogramowania dla drukarki.

Standardowa obsługa takich sytuacji (zakłada się taką obsługę po włączeniu zasilania) powoduje. Wykaz kodów błędów poszczególnych sekwencji zawarto w rozdziale 10 (łącznie w wykazem sekwencji sterujących). W wyniku odebrania przez drukarkę rozkazu sterującego mogą wystąpić następujące sytuacje błędne: • "nierozpoznany rozkaz" . Ps). 1. powrót do głównej pętli analizy (w której są interpretowane kody ENQ i BEL oraz rozkazy rozpoczynające się prefiksem ESC P ). Po naciśnięciu klawisza wyświetlacz jest "odświeżany" i zostaje wznowione przetwarzanie.. . LBDSPDEP oraz LBTREXIT lub TBTRXEND) będą też powodować komunikaty o błędach. W tym celu należy najpierw wysłać sekwencję LBSERM: ESC P 1 #e 88 ESC \ co powoduje zmianę sposobu obsługi błędów przez drukarkę. Zwróćmy uwagę. które mogą dawać następne komunikaty. PE = 1: stan "Brak Papieru".).) W odpowiedzi na rozkaz żądania wysłania statusu LBFSTRQ: 6 1 5 1 4 1 3 0 2 ONL 1 PE 0 ERR Str. W przypadku rozkazu "nierozpoznanego" kod błędu wynosi 0 (zero). błędna lista parametrów Ps . Przykładowo. Ten sposób obsługi błędów jest wystarczający w prostych aplikacjach oraz podczas uruchamiania oprogramowania. że na wyświetlaczu ukazuje się komunikatu: 'Błąd rozkazu: 'Kod błędu : "xx" ' kk '. że kod ten daje komunikaty z zakresu $70. ale identyfikator sekwencji 'xx' był niewłaściwy.$77. gdy drukarka odebrała prefiks ESC P (jeżeli rozkaz następujący po ESC P nie jest żądaniem odesłania statusu LBFSTRQ) oraz ustawiany po poprawnym wykonaniu rozkazu. 2. postaci: 7 0 6 1 5 1 4 0 3 FSK 2 CMD 1 PAR 0 TRF w którym bit CMD jest ustawiony. Kod DLE jest rozpoznawany przez drukarkę w każdym momencie. .) W odpowiedzi na kod sterujący DLE ($10) drukarka wysyła jednobajtowy status postaci: 7 0 gdzie: ONL = 1: stan "On-Line". Po wyświetleniu komunikatu drukarka zatrzymuje dalsze przetwarzanie znaków z bufora wejściowego i czeka na naciśnięcie klawisza NIE. w takiej sytuacji rozkaz jest ignorowany od momentu. Po wystąpieniu błędu dalsze przetwarzanie nie będzie blokowane (chociaż błędna sekwencja zostanie zignorowana do końca). 23 . Obsługa sytuacji błędnych. ERR = 1: stan "Błąd mechanizmu/ sterownika". że w trakcie wyświetlania komunikatu w buforze mogły znaleźć się kolejne rozkazy. Kod ten jest realizowany ZAWSZE – nawet w trybie OFF-LINE ! 3. Wystąpi zatem seria komunikatów.Drukarka Fiskalna POSNET Thermal i 3001 Wystąpienie kodu CAN powoduje przerwanie interpretacji i analizy sekwencji. jeżeli ostatnio odebrany rozkaz był zrealizowany poprawnie.. Komunikaty o błędach zostają w ten sposób zablokowane. a więc inne niż pozostałe odpowiedzi statusowe (w tym odpowiedz na ENQ). Zwróćmy uwagę. • błąd syntaktyki rozkazu (np. wykorzystując rozkazy ENQ. • błąd wykonania rozkazu (może być np. W bardziej złożonych przypadkach można zrealizować pełną diagnostykę błędów przez aplikację. Daje to możliwość pełnej diagnostyki przez aplikacje według poniższych zasad.) W odpowiedzi na kod sterujący ENQ ($05) drukarka wysyła jednobajtowy status. gdzie: "xx" jest dwuznakowym identyfikatorem rozkazu a 'kk' jest dwucyfrowym kodem błędu. jeżeli błąd wystąpił na początku transakcji (w sekwencji LBTRSHDR) to kolejne sekwencje (LBTRSLN.. obliczeniowy lub związany z błędnym działaniem sprzętu drukarki itd. W szczególności bit ten jest kasowany. gdzie wystąpił błąd do końca sekwencji. DLE oraz LBFSTRQ i LBERNRQ.jeżeli odebrano prefiks ESC P.

Wynika to z faktu. w ogólnym przypadku nie można założyć w oprogramowaniu aplikacyjnym. Decyzja o tym co zrobić powinna należeć do obsługi programu (właściciela urządzenia). Pe > 0 . że operacja drukowania raportu okresowego (inicjowana przez wysłanie sekwencji sterującej) może angażować procesor główny drukarki na bardzo długi czas. że w trakcie wykonania rozkazu teoretycznie może wystąpić "błąd fatalny" wykonania (np. W takiej sytuacji odpowiedź na żądanie statusu ENQ lub LBFSTRQ nie zostanie odesłana (ale drukarka odpowie na żądanie statusu DLE które ‘działa’ także w trybie OFFLINE). Px. W takiej sytuacji. Pe = x . W tej sytuacji wysłanie czasu i daty z systemu powoduje jego zaprogramowanie. Pe = 0 . Zachodzą zatem następujące przypadki: * CMD = 1.poprawne wykonanie sekwencji (Pe jest nieistotne).rozkaz został rozpoznany ale w trakcie analizy lub wykonania wystąpił błąd o kodzie Pe. Pt. natomiast w przypadku poprawnego wykonania sekwencji aplikacja może oczekiwać na status przez długi czas. Ten rozkaz (LBERNRQ) w odróżnieniu od powyższego (LBFSTRQ) nie powoduje zerowania numeru błędu Pe i może być wykonywany wielokrotnie. odczytać datę i czas systemowy komputera i zasygnalizować ‘problem’ różnicy na ekranie monitora). Py. że zegary wbudowane w drukarkę i komputer (w obu przypadkach stosowany jest rezonator ceramiczny "zegarkowy" 32768 Hz) mają niezbyt dobrą dokładność (szczególnie zegar komputera klasy PC !) i ich odczyty będą po pewnym czasie znacznie się różniły. która w zasadzie powinna być realizowana przez każdą aplikację.Drukarka Fiskalna POSNET Thermal i 3001 ESC P Ps #s ESC \ drukarka odsyła ciąg LBFSTRS (jeżeli zaprogramowano 4 stawki PTU): ESC P 1#X Pe. że odpowiedź na żądanie odesłania statusu przyjdzie w ściśle określonym czasie. W odpowiedzi na zapytanie LBERNRQ : ESC P #n ESC \ wysyłana jest odpowiedź : ESC P 1#E Pe ESC \ gdzie Pe jest numerem błędu. Dodatkowo trzeba zwrócić uwagę. Ponadto daje to zabezpieczenie przed sytuacją przypadkowego rozprogramowania zegara drukarki (rozładowana bateria!). 24 . Podobny przypadek zachodzi w momencie przełączenia drukarki w tryb OFF-LINE (wygaszona lampka GOTOWA) w wyniku wystąpienia błędu mechanizmu drukującego . Zaleca się aby o fakcie ew. Pz. raz dziennie lub każdorazowo przy uruchamianiu aplikacji).rozkaz nie został rozpoznany. Pm. Ustawianie zegara Nastawianie / korekcja zegara czasu rzeczywistego jest funkcją. braku papieru. * CMD = 0. Pf. Z tego względu. gdyż jest regulowany w procesie produkcji) co pewien czas (np. Należy zatem przewidzieć inny niż przekroczenie limitu czasowego mechanizm wyjścia przez aplikację z powstającej w ten sposób "nieskończonej pętli" (np.wtedy dalsze działanie drukarki zostaje zawieszone wraz z komunikatem np. 4). korekty zegara decydowała obsługa stanowiska sprzedaży (program powinien odczytać czas i datę drukarki . Pm. przerwanie operacji z klawiatury) lub przy pomocy kodu DLE. Str. Pd / PTU_A/ PTU_B / PTU_C / PTU_D / PAR_NUM / TOT_A / TOT_B / TOT_C / TOT_D / TOT_Z / CASH / NNNNNNNNNN ESC \ w którym Pe jest kodem błędu wykonania ostatniego rozkazu (=0 jeżeli sekwencja została wykonana poprawnie lub nie została rozpoznana). * CMD = 0. jeżeli wystąpi błąd sekwencji. Stąd sensowna jest korekcja zegara drukarki (chociaż z reguły jest on dokładniejszy.np. błąd zapisu do pamięci fiskalnej) . to status zostanie odesłany prawie natychmiast.: 'Błąd fatalny testu: ' 'ROM RAM RTC DSP FSK ' (druga linia ma postać zależną od rodzaju błędu). Na zakończenie zwróćmy uwagę. przy czym po wysłaniu ciągu LBFSTRS kod błędu Pe jest zerowany.

0 ESC \ gdzie Py . Pm . <check> . Pd . Pm = numer miesiąca = 1. z następującymi ograniczeniami: • data i czas muszą być formalnie poprawne (procedura kontroli uwzględnia też wszystkie szczególne przypadki np. (dwie najmłodsze cyfry.2 znaki HEX...Pm. przed pierwszą transakcją).data w następującym formacie: Py = numer roku = 0.59.czas w następującym formacie: Ph = godzina = 0. 25 . Sekwencja jest realizowana w różny sposób. Zegar niezainicjalizowany. Pmn.2049). Ph . natomiast korekta czasu jest możliwa.31. Ph.12.59 (parametr ignorowany). 1950. czy zegar jest zainicjalizowany czy nie (główny procesor drukarki podczas sekwencji startowej odczytuje status zegara drukarki i wykrywa stan braku jego inicjalizacji): 1.Pd.. • nie można ustawić daty wcześniejszej niż data ostatniego zapisu w pamięci fiskalnej (zapisy w module fiskalnym muszą być uszeregowane według rosnących dat !).. Pd . można ustawić 29-ty luty tylko dla roku przestępnego)...23. Ps $c <check> ESC \ gdzie: Py.. bajt kontrolny.. W takiej sytuacji nie można zmienić daty.Drukarka Fiskalna POSNET Thermal i 3001 Nastawianie zegara jest realizowane przez sekwencję LBSETCK: ESC P Py .. Ps = sekunda = 0. Pmn .99. Ponadto dla korekty czasu wymagany jest stan zerowy totalizerów (czyli korekta zegara jest możliwa tylko bezpośrednio po raporcie dobowym . Ps .Pmn. Pmn = minuta = 0. Po włączeniu zasilania wyświetla się komunikat: ' Błąd zegara RTC ' 'Prześlij z systemu ! ' Sekwencja umożliwia w takiej sytuacji ustawienie zarówno daty jak i czasu. Nie było powyższego komunikatu. Str. 2. Pmn parametry identyczne jak w sekwencji LBSETCK (stan licznika sekund jest odsyłany zawsze jako równy zero). Pm. Pd = dzień = 1.. Aplikacja może sprawdzić stan zegara wysyłając sekwencję LBSENDCK : ESC P #c ESC \ Drukarka odsyła stan zegara w następującym formacie: ESC P 1#C Py. Zegar zainicjalizowany. w zależności od tego.Ph.

Drukarka Fiskalna POSNET Thermal i 3001
Transakcja.
Podstawową funkcją drukarki jest oczywiście rejestracja sprzedaży, czyli transakcji. Realizację transakcji można podzielić na trzy etapy, realizowane w wyniku przesłania 3 sekwencji sterujących: * zapoczątkowanie transakcji - sekwencja LBTRSHDR, * przesłanie kolejnych pozycji sprzedaży - ciąg sekwencji LBTRSLN, * zatwierdzenie transakcji - sekwencja LBTREXIT. Po odebraniu sekwencji LBTRSHDR urządzenie przełącza się w tryb "transakcyjny". W trybie tym zachodzą następujące ograniczenia funkcji drukarki: * zbiór realizowanych rozkazów ograniczony do: - LBTRSLN (pozycja paragonu), - LBDSPDEP (Kaucja pobrana). - LBTREXIT (koniec transakcji), - LBTRXEND (koniec transakcji z formami płatności), - LBDSP (obsługa wyświetlacza LCD), - LBFSTRQ (żądanie wysłania statusu), - LBERNRQ (pytanie o numer błędu), - kody sterujące ENQ , BEL, CAN, DLE, Tryb transakcyjny jest sygnalizowany w odpowiedziach na żądanie wysłania statusu w następujący sposób. 1.) W odpowiedzi na kod sterujący ENQ ($05), postaci: 7 0 6 1 5 1 4 0 3 FSK 2 CMD 1 PAR 0 TRF

bit PAR = 1 a bit TRF= 0 (zostaje wyzerowany po odebraniu LBTRSHDR). 2.) W odpowiedzi na rozkaz żądania wysłania statusu LBFSTRQ: ESC P Ps #s ESC \ w postaci ciągu LBFSTRS (dla zdefiniowanych czterech stawek PTU): ESC P 1#x Pe ; Pm ; Pt ; Px ; 1 ; Pz ; Py ; Pm ; Pd / PTU_A / PTU_B / PTU_C / PTU_D / PAR_NUM / TOT_A / TOT_B / TOT_C / TOT_D / TOT_Z / CASH / NNNNNNNNNN ESC \ jest: Pt = 1 - tryb transakcyjny, Px = 0 - stan znacznika TRF. Sekwencja LBTRSHDR może występować w dwóch formatach: ESC P Pl $h <check> ESC \ lub: ESC P Pl ; Pn $h <linia1> CR <linia2> CR <linia3> CR <check> ESC \ Najbardziej istotne znaczenie ma występujący w obu formatach parametr Pl. Parametr ten wybiera jeden z dwóch możliwych trybów realizacji transakcji: 1.) Pl = 0 : tzw. tryb "On-Line". W trybie tym po odebraniu poprawnej sekwencji LBTRSHDR natychmiast jest drukowany nagłówek paragonu zawierający: dane podatnika, datę oraz ewentualnie dodatkowe 3 linie przesłane przez aplikację. Od tego momentu urządzenie pamięta, że drukowanie paragonu zostało rozpoczęte, stąd anulowanie transakcji przez aplikację lub wyłączenie zasilania przed jej zakończeniem powoduje wydrukowanie napisu: ' paragon anulowany !' oraz odcięcie anulowanego paragonu (POSNET 3001). Anulowanie paragonu zachodzi również automatycznie jeżeli otwarta transakcja nie zostanie zakończona w ciągu 15 minut . W trybie "On-Line" kolejne linie transakcji są drukowane natychmiast po odebraniu (jeżeli nie ma błędu). Z tego względu przewidziano możliwość anulowania już wydrukowanej pozycji (tzw. "stornowanie"). W tym celu aplikacja wysyła jeszcze raz dane błędnej linii (w sekwencji LBTRSLN o nieco

Str. 26

Drukarka Fiskalna POSNET Thermal i 3001
zmodyfikowanym formacie). Linia taka jest drukowana ponownie i poprzedzona opisem: '#storno#', ponadto kwota wartości pozycji jest w takiej sytuacji drukowana ze znakiem '-'. Istnieje również możliwość anulowania całej transakcji. Ten tryb realizacji transakcji charakteryzuje się dużą szybkością działania kasy. Przykładowo na stanowiskach "sprzedaży przelotowej" (duże sklepy samoobsługowe) w zasadzie transakcje muszą być realizowane w trybie "On-Line" - ponieważ z reguły jest nie do przyjęcia, aby "blokować" kasę na czas wydruku całego paragonu (co może trwać kilkadziesiąt sekund przy dużej ilości pozycji). Ponadto długość całego paragonu - ilość pozycji nie jest w zasadzie limitowana (może być maksimum 255 pozycji - co wynika z reguł syntaktyki). Wadą tego rozwiązania jest konieczność "stornowania" pozycji w przypadku błędu. Dodajmy, że drukarka nie sprawdza, czy pozycja "stornowana" wystąpiła na paragonie wcześniej, lub czy np. odjęta wartość jest poprawna (np. czy nie odejmujemy większej ilości towarów od poprzednio sprzedanej). Wynika to z faktu, że paragon drukowany w trybie "On-Line" nie jest w całości magazynowany w pamięci. Oczywiście są na bieżąco kontrolowane kwoty sprzedaży w grupach podatkowych, które nie mogą stać się ujemne w wyniku "stornowania" - wystąpi wtedy błąd #22 sekwencji LBTRSLN. W trybie "On-Line" w momencie zatwierdzenia transakcji (po sekwencji LBTREXIT) drukowana jest tylko stopka paragonu - co powoduje jej szybkie zakończenie. 2.) Pl > 0 : tzw. tryb "blokowy", "Off-Line". W tym trybie cała zawartość paragonu jest buforowana w pamięci drukarki. Po odebraniu sekwencji LBTRSHDR do pomocniczego bufora wpisywany jest nagłówek paragonu. Podobnie każda pozycja transakcji (sekwencja LBTRSLN) jest sprawdzana, formatowana stosownie do postaci właściwej do wydruku i wpisywana do bufora. Dotyczy to również stopki paragonu generowanej po sekwencji LBTREXIT. Tak więc cały paragon jest buforowany w pamięci głównego procesora drukarki w postaci takiej, jak ma wyglądać na wydruku. Długość bufora wynosi 3840 bajtów - co limituje długość drukowanego w ten sposób paragonu. Z tego względu ilość pozycji zawartych na paragonie w trybie "blokowym" ograniczono arbitralnie do 48. Ponadto w szczególnych przypadkach (maksymalna długość nazw we wszystkich pozycjach) teoretycznie może pojawić się przepełnienie bufora drukarki (błąd #24 sekwencji LBTREXIT). Po zatwierdzeniu transakcji cały paragon jest transmitowany do bufora sterownika mechanizmu drukującego (równocześnie ze zwiększeniem stanu totalizerów). Po poprawnym zakończeniu transmisji sterownik mechanizmu rozpoczyna drukowanie paragonu, a procesor może już rozpocząć dalszą analizę rozkazów sterujących. Zwróćmy uwagę, że w przypadku wykorzystania trybu "blokowego" może zachodzić przepełnienie bufora wejściowego interfejsów drukarki - ma on długość 2 kB, podczas gdy paragon zawierający 48 pozycji, wraz z sekwencją rozpoczynającą i kończącą może wymagać wysłania większej liczby znaków. Z tego względu w tym przypadku zastosowanie protokołu transmisji XON-XOFF jest niezbędne ! Parametr Pn sekwencji LBTRSHDR określa ilość dodatkowych linii tekstu, które umieszcza aplikacja na paragonie bezpośrednio za nagłówkiem Jeżeli Pn = 0 , lub parametr nie występuje, to linie nie są drukowane. Parametr Pn może wynosić maksymalnie 3. Umożliwia to wydrukowanie maksymalnie 3 dodatkowych linii wysłanych przez aplikację jako napisy <linia1>, <linia2> i <linia3>. Mogą to być dowolne informacje, np. adnotacja na temat numeru faktury / rachunku uproszczonego, jeżeli paragon fiskalny jest drukowany łącznie z tego rodzaju dokumentem. Napisy <linia1>..<linia3> nie mogą zawierać żadnych znaków sterujących (mogą być natomiast polskie litery w kodzie MAZOWIA). UWAGA: Nie można wysyłać nazwy firmy i jej adresu w obrębie trzech dodatkowych linii. Dane te muszą być bezwzględnie umieszczone w nagłówku zapisanym w pamięci fiskalnej (nieulotnej pamięci RAM) ponieważ muszą również znaleźć się na raporcie dobowym i okresowym. Serwis jest zobowiązany do kontroli, czy w trakcie fiskalizacji w nagłówku został zapisany prawidłowo adres i nazwa firmy (RAM) oraz numer NIP (moduł FSK) ! Po włączeniu trybu transakcyjnego aplikacja przesyła do drukarki ciąg sekwencji LBTRSLN, które definiują kolejne pozycje transakcji: ESC P Pi $l <nazwa> CR <ilość> CR <ptu> / CENA / BRUTTO / <check> ESC \ Parametr Pl to kolejne numery pozycji paragonu = 1,2... . Jeżeli został włączony tryb "blokowy" - i została tym samym określona w sekwencji LBTRSHDR ilość pozycji sprzedaży - musi zostać przesłana dokładnie taka ilość pozycji, o kolejno rosnących numerach. Po przesłaniu każdej linijki można testować poprawność jej odebrania (realizacji rozkazu) i w przypadku błędu np. wykonać retransmisję - ale z tym samym numerem. W trybie "On-Line" parametr Pl może być równy 0, wtedy linijka zostanie zinterpretowana jako pozycja "stornowana".

Str. 27

Drukarka Fiskalna POSNET Thermal i 3001
W takiej sytuacji sekwencja numerów linii również musi zachować "ciągłość", np. poprawna jest sekwencja: 1,2,0,4 (gdzie trzecia linijka jest "stornowana"). Pozostałe parametry sekwencji to: <nazwa> = ciąg dowolnych znaków drukowalnych, długości nie większej niż 40 znaków, interpretowany jako nazwa artykułu (drukowany na paragonie bez zmian), <ilość> = ciąg nie więcej niż 16-u znaków drukowany na paragonie bez zmian w polu zarezerwowanym dla ilości towaru (musi spełniać pewne reguły syntaktyki - por. rozdz. F ), <ptu> = jeden znak = 'A'...'F' lub ' ' lub 'Z' (oba ostatnie oznaczenia dla towarów zwolnionych od podatku) - kod stawki PTU, BRUTTO = wartość pozycji sprzedaży BRUTTO, maksymalnie 10 cyfr, syntaktyka zgodnie z opisanymi wyżej regułami dla wszystkich kwot, musi być > 0, CENA = cena jednostkowa towaru, musi spełniać reguły syntaktyki dla kwot (dokładny opis w rozdziale F), <check> = dwie cyfry kontrolne, obliczone według reguł opisanych na wstępie. UWAGA: począwszy od wersji 17.1 istnieje możliwość wzbogacenia linii o RABAT(DOPŁATĘ) kwotowy lub procentowy (patrz opis komendy LBTRSLN na stronie 78). Po odebraniu każdej linii drukarka sprawdza jej poprawność pod względem formalnym, następnie kontroluje zgodność nazwy towaru i kodu stawki PTU. Jest to realizowane poprzez odszukanie w bazie danych drukarki kodu stawki PTU dla danej nazwy, przy czym istotne jest 40 znaków nazwy (z wyłączeniem spacji wewnątrz nazwy, a także nie są rozróżniane małe i duże litery). Drukarka fiskalna nie wymaga specjalnego "ładowania bazy danych" informacja o towarach jest automatycznie aktualizowana podczas sprzedaży. Jeżeli w trakcie realizacji transakcji zostanie napotkany nowy artykuł (którego jeszcze nie ma w bazie), jego nazwa oraz kod stawki PTU zostanie dopisany do bazy danych. Późniejsze pojawienie się identycznej nazwy powoduje skontrolowanie zgodności kodu stawki PTU z zapamiętaną wcześniej wartością. Drukarka dopuszcza sytuację, gdy stawka PTU dla danego towaru zostanie zmniejszona lub zwiększona (np. przesunięcie towaru z grupy A do B lub z B do A). Zabroniona jest natomiast operacja polegająca na czasowym obniżeniu stawki podatkowej np.: towar z grupy A jest sprzedawany w grupie B (taką sekwencję zdarzeń odnotuje drukarka !) a potem znowu próbujemy go sprzedać w grupie A. Podczas próby ponownej sprzedaży towaru w grupie A transakcja zostanie zablokowana (sprawdzenie polega na porównaniu wartości liczbowych zakodowanych w drukarce): * w trybie "On-Line" pojawią się (bezpośrednio za linią gdzie wykryto taką sytuację) napisy: | ! błąd PTU ! | | paragon anulowany ! |, i transakcja zostanie anulowana (tryb transakcyjny wyłączony), * w trybie "blokowym" zostanie zgłoszony błąd sekwencji LBTRSLN #18. Podobna sytuacja wyniknie, gdy towar z grupy B będziemy sprzedawać przykładowo jako zwolniony Z, a potem znowu w grupie B. Algorytm obsługi bazy danych jest wysoce efektywny i nie powoduje zauważalnego spowolnienia tempa działania drukarki nawet przy znacznej liczbie towarów - czas analizy jest w każdej sytuacji znacznie krótszy niż czas drukowania linii ! Dodajmy ponadto, że maksymalna ilość towarów w bazie danych może wynosić nawet 100.000. Baza danych drukarki jest schowana w pamięci RAM podtrzymanej bateryjnie. Opisywana wersja oprogramowania drukarki realizuje ponadto kontrolę poprawności wyrażenia : < cena > * < ilość > = < wartość > zgodnie z regułami opisanymi na stronie 78 (opis sekwencji LBTRSLN ). Jeżeli test stawki PTU wypadł pozytywnie oraz linia jest zgodna pod względem formalnym, to zawartość pozycji sprzedaży przechodzi przez specjalny algorytm formatujący ją do wydruku. Algorytm ten tworzy jedną lub dwie linie tekstu -zależnie od tego, czy wszystkie informacje zmieszczą się w 40 znakach dostępnych w linii, czy nie. W przypadku "krótkich" nazw i niezbyt dużych wartości wykorzystanie tej opcji prowadzi do znacznej oszczędności papieru i zwiększenia szybkości działania kasy. Jeżeli z kolei zależy nam na jednolitej formie wydruków można "zablokować" ten algorytm wymuszając "długie nazwy" (np. dopełnienie spacjami do około 30..40 znaków) powodując zawsze wydruk pozycji paragonu w dwóch linijkach. W trybie "On-Line" sformatowana linia jest od razu drukowana, a pierwsze 20 znaków nazwy artykułu pojawia się w górnej linii wyświetlacza LCD. W drugiej linii automatycznie jest aktualizowana suma transakcji; suma ta jest także wyświetlana na wyświetlaczu LED dla klienta. Operacje te nie wykonują się w trybie blokowym. W obu trybach zwiększana jest naliczana przez drukarkę suma transakcji oraz kwota sprzedaży w wyspecyfikowanej grupie podatkowej (jeżeli nie jest to operacja "storno" - dozwolona tylko w trybie "On-Line" – wtedy sumy te są zmniejszane).

Str. 28

Pt . tzn.) W odpowiedzi na LBFSTRS: ESC P 1#x Pe . sekwencja ma wtedy format: ESC P 1 $e <kod> CR WPLATA / TOTAL / <check> ESC \ Pozostałe parametry mają następujące znaczenie: <kod> = 3 znaki drukowalne (kod terminala/kasjera) drukowane w stopce paragonu bez zmian. ESC P 1 . <check> = dwie cyfry kontrolne. najważniejszy. UWAGA: przez awarię zasilania należy rozumieć zanik napięcia 220V na wejściu zewnętrznego zasilacza drukarki THERMAL lub 3001. etap realizacji transakcji.zatwierdzenie transakcji. że ostatnia transakcja była poprawna. WPLATA = kwota wpłacona przez klienta. Dodajmy. opisane na stronie 81. kody błędów sekwencji LBTREXIT strona 80 ). a paragon zostanie poprawnie wydrukowany (z wyjątkiem oczywiście sytuacji awaryjnych. Jest to ostatni. Str. W tym momencie drukarka sprawdza szereg warunków określających poprawność transakcji (por. to drukarka "pamięta". to transakcja zostaje zatwierdzona przez drukarkę. Px . Równocześnie zwiększany jest stan totalizerów oraz ustawiany znacznik TRF i kasowany tryb transakcyjny w odpowiedziach statusowych na rozkazy ENQ i LBFSTRS: 1.jeżeli po wysłaniu sekwencji LBTREXIT drukarka zacznie drukować paragon (w trybie "blokowym") lub stopkę paragonu (w trybie "On-Line") to jest pewność. obliczone według reguł opisanych na wstępie. która może mieć różne formaty: ESC P 0 $e <check> ESC \ . W trybie "On-Line" jest drukowana stopka transakcji. W tym celu wysyłana jest sekwencja LBTREXIT. że transakcja została zarejestrowana w totalizerach. natomiast w trybie "blokowym" cały paragon jest przesyłany do sterownika drukarki. UWAGA: sekwencja LBTREXIT ma w tej wersji jeszcze inne warianty. 1 . Px = 1 : (stan znacznika TRF).ponieważ status i zawartość bufora sterownika mechanizmu drukującego również są podtrzymywane przez baterię. Do najważniejszych należy zgodność kwoty należności TOTAL z obliczoną przez drukarkę w trakcie transakcji. Pd / PTU_A / PTU_B / PTU_C / PTU_D / PAR_NUM / TOT_A / TOT_B / TOT_C / TOT_D / TOT_Z / CASH / NNNNNNNNNN ESC \ jest odsyłane: Pt = 0 : tryb transakcyjny WYŁĄCZONY. końca papieru /paragon zostanie dokończony po zmianie papieru/ lub uszkodzenia mechanizmu).jeżeli nie jest stosowany to można go nie wysyłać. Parametr Pr jest interpretowany jako rabat procentowy . że aplikacja zmierza do zatwierdzenia transakcji. 2. Wyłączanie drukarki w trakcie realizowania wydruków przełącznikiem umieszczonym z tyłu urządzenia jest NIEDOPUSZCZALNE ! Reasumując .) W odpowiedzi na kod sterujący ENQ ($05) ustawiany jest w bajcie odpowiedzi bit PAR=0 a bit TRF=1. np. TOTAL = łączna należność . Pr $e <kod> CR WPLATA / TOTAL / <check> ESC \ W trybie "blokowym" anulowanie transakcji nie powoduje żadnej akcji oprócz wyłączenia trybu transakcyjnego. natomiast w trybie "On-Line" drukowany jest napis: | paragon anulowany !| i paragon zostaje odcięty (POSNET 3001). . Pm . po poprawnym zatwierdzeniu transakcji. Pm . że przerwanie drukowania paragonu przez awarię zasilania 220V również nie jest groźne . nawet jeżeli zostanie wyłączone zasilanie. Znacznik TRF jest "nieulotny". Jeżeli nie wykryto żadnego błędu. Py .Drukarka Fiskalna POSNET Thermal i 3001 Po wysłaniu wszystkich linii transakcji (w trybie "blokowym" ich ilość musi być równa zadeklarowanej) aplikacja może zatwierdzić lub anulować transakcję. Pz .anulowanie transakcji. Sekwencja w drugim z wymienionych formatów sygnalizuje. 29 .

Str.Drukarka Fiskalna POSNET Thermal i 3001 Tryby pracy drukarki Drukarka charakteryzuje się dwoma trybami pracy : • pracą w trybie szkoleniowym. wynika to z faktu. Wejście w ten tryb polega na wciskaniu jednocześnie klawiszy NIE i TAK podczas włączania drukarki i przestawienie w opcji „KONFIGURACJE/ STAWKI PTU” kursora na pole ‘RAM’. • w trybie szkoleniowym na początku i na końcu paragonu drukowane są napisy ‘# niefiskalny’. W zasadzie w każdym z tych trybów drukarka zachowuje się identycznie za wyjątkiem: • w trybie szkoleniowym wykonanie raportu dobowego nie związane jest z zapisem informacji do modułu fiskalnego. • w trybie szkoleniowym raport okresowy generowany przez drukarkę ma zawsze taki sam format (niezależnie od okresu którego dotyczy raport). • zmiana stawek PTU zapisuje się w sposób nietrwały o ile w tzw. setupie drukarki nie zostanie zadeklarowane ‘pobieranie’ stawek w trybie szkoleniowym z pamięci RAM. Po takiej operacji należy pamiętać o zaprogramowaniu stawek PTU w drukarce. • oraz pracą w trybie fiskalnym. która jest w module jest informacja o stawkach PTU umieszczona przez producenta ) .jedyną informacją. że raport okresowy jest drukowany zawsze na podstawie informacji zawartych w module fiskalnym (w trybie szkoleniowym brak jest informacji o sprzedaży . w przeciwnym razie po włączeniu drukarki przyjmie ona jako wiążące stawki zapisane w pamięci fiskalnej. Jest to możliwe po wejściu w tryb serwisowy drukarek. • w trybie szkoleniowym zablokowany jest zapis jakichkolwiek informacji do modułu fiskalnego . 30 .W związku z powyższym pozycje z informacją o sprzedaży mają zawsze wartość zero.

• RTC: błąd komunikacji z wbudowanym zegarem czasu rzeczywistego (może wystąpić w dowolnym momencie). • RAM: błąd testu RAM procesora głównego (nie dotyczy bazy danych. Sposób usunięcia: Nieusuwalny. Powtórzenie się po ponownym włączeniu sytuacji błędnej wskazuje na konieczność wezwania serwisu. Można tylko wyłączyć zasilanie. to należy wezwać serwis. Pojawienie się może wskazywać na błędne zadziałanie oprogramowania (np. które mają następujące znaczenie: • ROM: błąd sumy kontrolnej pamięci ROM programu (może wystąpić tylko w trakcie testu wstępnego). Przyczyna: W tej wersji drukarki komunikat w zasadzie nie powinien się pojawić. Komunikat: ' Awaria drukarki ' ' Wyłącz zasilanie. Sposób usunięcia: Nieusuwalny. Sygnał akustyczny można wyłączyć klawiszem NIE. Komunikat: 'Brak stawek PTU lub ' 'numeru unikatowego! ' (ponadto migotanie diod SIEĆ i BŁĄD oraz przerywany sygnał dźwiękowy). Jeżeli po ponownym włączeniu uzyskamy podobny komunikat. ' (ponadto migotanie diod SIEĆ i BŁĄD oraz przerywany sygnał dźwiękowy). odczekać kilka sekund i włączyć ponownie. ale skasowanie tego stanu nie jest możliwe.Drukarka Fiskalna POSNET Thermal i 3001 7. Można tylko wyłączyć zasilanie. Przyczyna: Pamięć fiskalna urządzenia jest błędnie zainicjalizowana . Można jedynie wyłączyć zasilanie. Str. Sposób usunięcia: Nieusuwalny. to należy wezwać serwis. Jeżeli po ponownym włączeniu (szczególnie po ponowieniu próby drukowania) uzyskamy podobny komunikat. Jeżeli po ponownym włączeniu uzyskamy podobny komunikat. W każdym z wymienionych niżej przypadków dalsza praca urządzenia jest zablokowana. to należy wezwać serwis. Wykaz komunikatów wyświetlanych na wyświetlaczu LCD drukarki. 31 . Przyczyna: Wystąpił błąd układu elektronicznego podczas testu wstępnego drukarki lub podczas okresowego (co kilka sekund) 'odpytywania' urządzeń przez główny procesor drukarki.przez co nie są one zdefiniowane. Można tylko wyłączyć zasilanie. Druga linia wyświetlacza zawiera co najmniej jeden w powyższych opisów błędu. • DSP: błąd komunikacji z wyświetlaczem LED (może wystąpić w dowolnym momencie). Stan ten jest sygnalizowany przez migotanie diod SIEĆ i BŁĄD oraz przerywany sygnał akustyczny. Komunikat: 'Błąd fatalny testu: ' 'ROM RAM RTC DSP FSK ' (ponadto migotanie diod SIEĆ i BŁĄD oraz przerywany sygnał dźwiękowy). Błąd ten może pojawić się tylko bezpośrednio po włączeniu urządzenia. może również wystąpić tylko podczas testu wstępnego). trwający 10 sekund. w wyniku zakłócenia zasilania).brak jest w niej zapisu numeru unikatowego urządzenia i/lub nie ma zapisanego ani jednego rekordu zmiany stawek PTU . komunikat ten w zasadzie nie powinien się pojawić w trakcie normalnej eksploatacji. Błędy fatalne (powodują konieczność wyłączenia urządzenia). • FSK: błąd komunikacji z modułem pamięci fiskalnej (może wystąpić w dowolnym momencie). Ponieważ dane te są wpisywane w procesie produkcji.

ale nie są przez drukarkę przetwarzane. POSNET 2000). zmiana stawek PTU ). Przyczyna: Wystąpił błąd zapisu do pamięci fiskalnej. 2. jeżeli głowica jest zbyt mocno dosunięta do papieru). ale można go wyłączyć dowolnym klawiszem). Str. że istotnie wystąpił błąd zapisu do pamięci fiskalnej (teraz jest błąd danych w pamięci fiskalnej) i należy bezwzględnie wezwać serwis (dalsza eksploatacja urządzenia w trybie fiskalnym nie jest możliwa).komunikat może również pojawić się w momencie ponownego włączenia drukarki . raport dobowy. papier jest pomarszczony lub uszkodzony. Komunikaty z tej grupy mogą pojawić się jedynie w trakcie drukowania. Sposób usunięcia: Nieusuwalny. W przypadku zaczepienia igły o papier. Ustawić mniejszy docisk głowicy dla zapobieżenia powtórzenia się awarii. POSNET 2000) lub 'Błąd mechanizmu lub ' ' podniesiona dźwignia ' (POSNET Thermal. Nastąpiło mechaniczne zablokowanie napędu głowicy (czasem zdarza się zahaczenie igły głowicy. ' (ponadto migotanie diod SIEĆ i BŁĄD oraz przerywany sygnał dźwiękowy). podczas operacji związanej z trwałym zapisem danych w module fiskalnym (fiskalizacja. Komunikat: 'Błąd mechanizmu lub ' ' otwarta pokrywa ! ' (POSNET 3001. POSNET Beetle 20) (ponadto migotanie diody BŁĄD oraz przerywany sygnał dźwiękowy). Ponieważ mikroprzełącznik (POSNET 3001 i POSNET 2000) kontrolujący zamknięcie pokrywy jest połączony szeregowo z silnikiem. Sposób usunięcia: Zależy od tego. Pokrywa drukarki nie jest prawidłowo zamknięta (POSNET 3001. W stanie NIE GOTOWA dane przychodzące z interfejsu RS-232 są buforowane. Komunikaty błędów mechanizmu drukującego. Błąd może wystąpić jedynie w urządzeniu sfiskalizowanym lub w trakcie fiskalizacji. 32 . które nie zostały wydrukowane do momentu ostatniego wyłączenia zasilania . Jeżeli po ponownym włączeniu zasilania pojawi się komunikat: ' Tryb szkoleniowy ! ' ' ERR '. Po usunięciu awarii nacisnąć klawisz NIE. należy odsunąć maksymalnie głowicę i wysunąć papier. dlatego błąd ten może zachodzić w jednym z przypadków: 1. 3. W stanie OFF-LINE drukarka nie odpowiada na żądanie wysłania statusu ENQ przez interfejs RS-232 (ale odpowiada na żądanie odesłania statusu DLE) o czym należy pamiętać opracowując aplikację (możliwość "zawieszenia" aplikacji). to znaczy. Wystąpiła wadliwa praca mikro przełącznika (nie kontaktuje mimo przekręconego kluczyka). przytrzymanie na dłuższy czas powoduje "auto repetycję" wysuwu). Przyczyna: Podczas drukowania nastąpiło zablokowanie silnika napędu karetki. który z wyżej wymienionych przypadków ma miejsce.Drukarka Fiskalna POSNET Thermal i 3001 Komunikat: ' Błąd zapisu !! ' ' Wyłącz zasilanie. zwłaszcza. Jeżeli bufor drukarki zawiera dane. ewentualnie wyregulować działanie mikro przełącznika (w przypadku 2). Należy sprawdzić domknięcie zamka (przypadek 1).ponieważ drukarka musi zakończyć poprawnie rozpoczętą operację drukowania (nawet jeżeli w międzyczasie zanikło zasilanie). zostaje włączona dioda BŁĄD oraz przerywany sygnał dźwiękowy (który trwa 10 sekund. drukarka powinna rozpocząć (kontynuować) drukowanie. jeżeli np. Po usunięciu przyczyny klawiszem NIE przełączamy drukarkę z powrotem w stan GOTOWA. W każdym z wymienionych poniżej przypadków drukarka przechodzi w stan NIE GOTOWA (gaśnie lampka GOTOWA). Można tylko wyłączyć zasilanie. W tym stanie klawisz WYSUW powoduje uruchomienie przesuwu papieru (pojedyncze przyciśnięcie o jedną linię.

CLR : została przekroczona dopuszczalna ilość zerowań RAM (to jest 200). Po naciśnięciu klawisza NIE drukarka powinna kontynuować drukowanie. FULL: nastąpiło całkowite zapełnienie pamięci fiskalnej. Kod = 10 : zacięcie obcinacza (POSNET 3001 i POSNET 2000). Komunikat pojawia się tylko.O. Kod = 04 : błąd napięcia zewnętrznego zasilacza (25V). ale możliwość przełączenia drukarki w stan GOTOWA jest zablokowana. jeżeli została zainicjowana operacja drukowania. że drukarka nie może pracować w trybie fiskalnym. Ostrzeżenia.Drukarka Fiskalna POSNET Thermal i 3001 Komunikat: ' Brak papieru ! ' ' ' (ponadto migotanie diody BŁĄD oraz przerywany sygnał dźwiękowy). Komunikat: 'Błąd sterownika 'Kod = xx ' ' (ponadto migotanie diody BŁĄD oraz przerywany sygnał dźwiękowy) Przyczyna: Wystąpił jeden z możliwych błędów układu elektronicznego sterownika drukarki paragonowej. Wsunięcie papieru do mechanizmu następuje przez naciśnięcie klawisza TAK (wysuw oryginału) lub R. który stanowią dwie cyfry heksadecymalne przedstawiające odczytany z drukarki bajt statusowy. Znaczenie poszczególnych bitów składających się na wartość bajtu kodu błędu jest następująca: Kod = 01 : błąd napięcia +5V lub wyładowana bateria . Jeżeli jest brak papieru. albo po wznowieniu operacji drukowania komunikat ten powtarza się. Kod = 08 : przegrzanie głowicy. Przyczyna: Koniec lub brak papieru. Komunikat: ' Tryb szkoleniowy ! ' 'HDR FULL ERR CLR' (ponadto krótki sygnał dźwiękowy). 'xx' jest kodem błędu. Komunikaty z tej grupy sygnalizują pewne stany awaryjne urządzenia umożliwiające zwykle jego dalszą pracę (ewentualnie z wyłączeniem trybu fiskalnego). W pewnych przypadkach przyczyna komunikatu może być usunięta przez urządzenie automatycznie. to urządzenie (lub zewnętrzny zasilacz) wymaga interwencji serwisu. to komunikat o błędzie nie jest zgłaszany. ERR : wystąpił błąd danych w pamięci fiskalnej. ale drukarka nie drukuje. Sposób usunięcia: Założyć papier zgodnie z instrukcją zakładania papieru umieszczoną na obudowie obcinacza drukarki. 33 . W każdej sytuacji dalsze działanie drukarki jest wstrzymywane aż do naciśnięcia klawisza NIE. (wysuw kopii). Sposób usunięcia: Jeżeli naciskanie klawisza ”NIE” nie powoduje skasowania komunikatu oraz przejścia drukarki w stan GOTOWA. Służą zatem do poinformowania użytkownika bądź serwisu o zaistnieniu pewnej sytuacji. stan normalny dla urządzenia w trybie szkoleniowym. w innych może je usunąć aplikacja. Przyczyna: Jest to informacja dla użytkownika. Str. w jeszcze innych konieczna jest interwencja serwisu. Druga linia komunikatu wskazuje na przyczynę: HDR : nie jest wpisany nagłówek (lub NIP) do pamięci fiskalnej.

Jeżeli komunikat pojawia się permanentnie po każdorazowym włączeniu zasilania. 2. . Sposób usunięcia: Błąd jest usuwany automatycznie (regeneracja bazy danych). Naciśnięcie klawisza NIE usuwa komunikat i umożliwia dalszą pracę drukarki . który na raporcie okresowym zostanie opisany jako 'Odbudowa bazy'. CLR wymagają bezwzględnie interwencji serwisu i ewentualnie wymiany urządzenia na nowe. to należy bezwzględnie oddać urządzenie do serwisu (może być uszkodzenie baterii lub pamięci RAM bazy danych) ! Str. . to należy oddać urządzenie do serwisu .ilość paragonów fiskalnych (podczas zmiany !) = 0. Dalsza praca urządzenia . to informacja o wykrytym błędzie zostanie zapisana jako rekord w pamięci fiskalnej. Komunikat: ' Błąd bazy danych ! ' ' ( Naciśnij NIE ) ' Przyczyna: Komunikat pojawia się po włączeniu zasilania. ERR. Sposób usunięcia: Zależy od przyczyny.). Komunikat ten wymaga dosłania do drukarki daty i czasu ponieważ ‘rok ‘ zegara przechowywany jest w pamięci RAM. . Jeżeli urządzenie jest sfiskalizowane.jest możliwa po naciśnięciu klawisza NIE z wyłączeniem realizacji transakcji !! (możliwe jest drukowanie raportów. . UWAGA: Jeżeli komunikat pojawia się permanentnie po każdorazowym włączeniu zasilania.ilość paragonów anulowanych = 0. . jeżeli wykryto błąd (błędy) w bazie danych drukarki.stan kasy = 0. . 3.ilość paragonów / dokumentów niefiskalnych = 0. Skasowanie nagłówka zapisanego w RAM wymaga jego odtworzenia w trybie fiskalnym pracy drukarki (jeżeli podczas fiskalizacji w module fiskalnym został zapisany tylko NIP) . Nastąpiło przekłamanie nagłówka zapisanego w pamięci RAM podtrzymanej bateryjnie. Błędy: FULL. Komunikat: ' Błąd pamięci NVR ' ' ( Naciśnij NIE ) ' Przyczyna: Mogą być dwie możliwe przyczyny: 1.obrót w trakcie zmiany = 0. W tej sytuacji następujące informacje zostaną zainicjalizowane automatycznie w ustalony stan początkowy: . jest wyświetlany po włączeniu zasilania przez 0. Naciśnięcie klawisza NIE usuwa komunikat i umożliwia dalszą pracę drukarki. 1.Drukarka Fiskalna POSNET Thermal i 3001 Komunikat: ' Tryb szkoleniowy ! ' 'HDR ' sygnalizujący stan prawidłowy w urządzeniu niesfiskalizowanym. 2. . 34 .w trybie szkoleniowym .wpłaty do kasy = 0. . Wystąpił błąd w obszarze danych pamięci podtrzymanej bateryjnie.wypłaty z kasy = 0. . Sposób usunięcia: Błąd jest usuwany automatycznie.data / czas rozpoczęcie zmiany = aktualna data / czas. wykorzystywanym podczas drukowania raportu kasy / zmiany.znacznik TRF (ostatnia transakcja poprawna) = 0.w tej sytuacji sprzedaż będzie zablokowana (błąd #40 sekwencji LBTRSHDR). badanie statusu itp.ilość stornowanych pozycji = 0. nagłówek zostanie zatem skasowany i powinien być przesłany ponownie przez aplikację.5 sekundy i usuwany automatycznie.

Stan ten uniemożliwia poprawną pracę drukarki. jeżeli ilość wolnych rekordów po wykonaniu zapisu (np. w wyniku zerowania RAM lub błędu bazy danych) trzeba będzie wymienić pamięć fiskalną. a także po wymianie baterii. a także będzie wyświetlona ustawiona data i czas (przez czas około 1sekundy) w formacie: 'Data: yyyy-mm-dd' 'Godzina: hh:mm' 2. Jeżeli urządzenie jest zafiskalizowane. Jeżeli powyższa sytuacja powtórzy się pewną liczbę razy (200). Sposób usunięcia: Błąd jest usuwany automatycznie (zerowanie totalizerów). Przyczyna: Jest to ostrzeżenie o zbliżającym się całkowitym zapełnieniu pamięci fiskalnej. Po odebraniu i poprawnym wykonaniu sekwencji LBSETCK zostanie włączony krótki sygnał dźwiękowy. to każdorazowo po włączeniu zasilania urządzenie będzie wyświetlać ten komunikat. 35 . Str. który na raporcie okresowym zostanie opisany jako 'Zerowanie RAM'. UWAGA: 1. Jeżeli ilość wolnych rekordów w pamięci fiskalnej spadnie poniżej 20. Naciśnięcie klawisza NIE usuwa komunikat i umożliwia dalszą pracę drukarki. = xx ' (oraz sygnał dźwiękowy i migotanie diody BŁĄD). np. to informacja o wykrytym błędzie zostanie zapisana jako rekord w pamięci fiskalnej. Jeżeli komunikat pojawia się często po włączeniu zasilania. Podczas pierwszego uruchomienia drukarki. że po wykonaniu podanej ilości raportów dobowych (jeżeli nie zaistnieją inne zapisy do pamięci fiskalnej. UWAGA: 1. to należy bezwzględnie oddać urządzenie do serwisu ! 2.Drukarka Fiskalna POSNET Thermal i 3001 Komunikat: ' Błąd zegara RTC ' 'Prześlij z systemu ! ' Przyczyna: Niezainicjalizowany zegar czasu rzeczywistego (RTC) drukarki. Przyczyna: Podczas testu wstępnego wykryto błąd sumy kontrolnej totalizerów (nieulotnych rejestrów służących do akumulowania wartości sprzedaży w poszczególnych grupach podatkowych). raportu dobowego) spadnie poniżej 20. Sposób usunięcia: Należy przesłać właściwą datę i czas z systemu (pod kontrolą aplikacji). ponieważ data i czas nie są określone. pojawią się następujące komunikaty: ' Błąd pamięci NVR ' ' ( Naciśnij NIE ) ' oraz ' Błąd zegara RTC ' 'Prześlij z systemu !' (po kontroli bazy) ' Błąd bazy danych ! ' ' ( Naciśnij NIE ) ' Komunikat: ' Błąd totalizerów ! ' '( Naciśnij NIE ) ' (ponadto sygnał dźwiękowy i migotanie diody BŁĄD). Komunikat ten może też pojawić się w trakcie normalnej pracy drukarki. to pojawi się dalej komunikat: ' Tryb szkoleniowy ! ' ' CLR' i tryb fiskalny zostanie nieodwracalnie zablokowany ! Komunikat: ' Ilość rekordów w ' ' pam. fisk. Praktycznie oznacza to. Sposób usunięcia: Naciśnięcie klawisza NIE .

Str. Sposób usunięcia: Klawisz TAK powoduje wykonanie raportu (po zatwierdzeniu poprawności DATY). co może w pewnych przypadkach powodować następne komunikaty o błędach (np. Sposób usunięcia: Klawisz TAK powoduje zapis nowych wartości stawek PTU (po zatwierdzeniu poprawności DATY) do pamięci fiskalnej oraz wydruk krótkiego raportu na drukarce paragonowej. dając równocześnie komunikat o błędzie sekwencji. Pozytywne potwierdzenie operacji uzyskujemy przy użyciu klawisza TAK. Znaki 'cc' identyfikują rozkaz (ogólna postać syntaktyki komendy jest ESC P P1. a także zgłosi błąd sekwencji kończącej LBTREXIT).nagłówek transakcji powoduje. #k . klawisz NIE powoduje zignorowanie sekwencji bez zgłoszenia błędu rozkazu. Aplikacja może zablokować wyświetlanie komunikatów wysyłając sekwencje LBSERM i realizując własną obsługę błędów bazującą na odczycie statusu drukarki i kodu błędu przez interfejs RS232 drukarki. Błąd może pojawić się w wyniku błędów transmisji. Komunikat: 'Błąd rozkazu: "cc" ' 'Kod błędu : xx ' Przyczyna: Podczas analizy i/ lub realizacji sekwencji sterującej wykryto błąd. błędu aplikacji. Sposób usunięcia: Przetwarzanie danych z interfejsu jest wstrzymane aż do naciśnięcia klawisza NIE.. błąd w trakcie realizacji sekwencji LBTRSHDR . Kod błędu jest wyświetlany w postaci dwóch cyfr 'xx'. 36 . natomiast naciśnięcie klawisza NIE powoduje zignorowanie sekwencji sterującej.). fiskalizacji. np.. a także raportu dobowego. UWAGA: Po włączeniu zasilania urządzenia błędy wykonania rozkazów dają wyżej wymienione reakcje na wyświetlaczu. W tej grupie są dwa rodzaje komunikatów: komunikat o błędzie sekwencji sterującej (który może być zablokowany przy użyciu sekwencji LBSERM) oraz grupa komunikatów. że drukarka nie wejdzie do trybu transakcji i będzie zgłaszać kolejne błędy odbierając sekwencję LBTRSLN . Jako zasadę przyjęto konieczność potwierdzenia z klawiatury drukarki tych operacji.P2. niewłaściwego stanu urządzenia (np. zmiany stawek PTU. Kody błędów możliwe dla poszczególnych sekwencji wyszczególniono w opisie języka programowania urządzenia. wyłączenia/ włączenia zasilania urządzenia w trakcie działania aplikacji.. Generalnie.Pn cc <napis> ESC \ . Po naciśnięciu klawisza drukarka wznawia pobieranie znaków z bufora interfejsu.. brak inicjalizacji zegara RTC) lub błędu wykonania rozkazu (np. które zatwierdzają wykonanie operacji inicjowanej przez sekwencje sterujące. Wykaz możliwych parametrów wyświetlanych w komunikacie o błędach rozkazów został podany w rozdziale „Kody sekwencji” na stronie 115. identyfikator rozkazu 'cc' składa się z dwóch znaków. Komunikat: 'Zapisać stawki PTU ? ' ' ' Przyczyna: Została odebrana sekwencja LBSETPTU (zmiana stawek PTU). częste powtarzanie się błędów wykonania rozkazów w trakcie eksploatacji systemu może wymagać konsultacji problemu zarówno z serwisem jak i producentem/ dystrybutorem oprogramowania systemowego i aplikacyjnego.pozycje transakcji. Komunikat: ' Drukować raport ' ' dobowy ? ' Przyczyna: Została odebrana sekwencja LBDAYREP (inicjalizacja raportu dobowego).. które powodują zapis do pamięci fiskalnej tj. błędu układu elektronicznego).Drukarka Fiskalna POSNET Thermal i 3001 Komunikaty związane z sekwencjami sterującymi. klawisz NIE powoduje zawieszenie wykonania operacji. $f. z których drugi jest literą.

podczas włączania drukarki. natomiast klawisz TAK powoduje przejście do drukowania Str. to na drukarce paragonowej zostanie wydrukowany odebrany nagłówek jako krótki wydruk niefiskalny. W tej grupie znajdują się komunikaty informujące o realizacji przez urządzenie operacji związanych z drukowaniem raportu. stąd popełnienie błędu w trakcie fiskalizacji spowoduje nieodwracalny zapis tego błędu do modułu fiskalnego. powodując: . W następnej linii za nagłówkiem (NIP-em) będą wydrukowane 3 znaki zapytania ('???'). . komunikaty związane z zatwierdzeniem operacji. Jeżeli sekwencja jest poprawna. Komunikaty związane z drukowaniem raportów. a co za tym idzie. a także komunikaty związane np.włączenie fiskalnego trybu pracy drukarki. z wprowadzaniem dat dla raportu okresowego. klawisz TAK zatwierdza operację. gdzie: "xxxx-xx-xx" jest aktualną datą według kalendarza zegara RTC urządzenia.inicjalizację zmiennych dla raportu/ kasy zmiany w identyczny sposób jak dla komunikatu: ' Błąd pamięci NVR ' ' ( Naciśnij NIE ) ' .kasowanie totalizerów. natomiast klawisz TAK powoduje przejście dalej. Jeżeli totalizery (rejestry sprzedaży bieżącej urządzenia) są zerowe pojawi się komunikat: 2) ' Zerowe totalizery ! ' ' ( Naciśnij NIE ) ' (oraz krótki sygnał akustyczny). co jest sygnalizowane komunikatem: 4) ' Data: xxxx-xx-xx ' ' jest poprawna ? '. Naciśnięcie klawisza NIE powoduje powrót do normalnego trybu pracy drukarki. a koszt wymiany w tym przypadku ponosi podatnik lub serwisant. Jeżeli totalizery są niezerowe (jest zarejestrowana sprzedaż) drukarka pyta dalej: 3) ' Drukować raport ' ' dobowy ? '. Naciśniecie klawisza NIE kasuje komunikat i powoduje powrót do normalnego trybu pracy drukarki. w kasie POSNET 2000 po przekręceniu kluczyka w pozycję RAPORT) pojawia się komunikat: 1) ' Wybierz rodzaj ' ' raportu. UWAGA: Zapis nagłówka (NIP. Po włączeniu trybu drukowania raportu (w drukarkach dostęp do raportów uzyskujemy poprzez naciśniecie i przytrzymanie klawisza R.zapis nagłówka (NIP) do pamięci fiskalnej.u) jest JEDNORAZOWY.inicjalizację drukarki. konieczność wymiany modułu pamięci fiskalnej przed ponownym zapisem !!! Wymianę modułu fiskalnego z błędnymi danymi może wykonać tylko producent. Naciśnięcie klawisza NIE powoduje powrót do normalnego trybu pracy drukarki.D. ' Po naciśnięciu klawisza R. 37 .D. lub R.Drukarka Fiskalna POSNET Thermal i 3001 Komunikat: 'Wykonać 'fiskalizację? ' ' Przyczyna: Została odebrana sekwencja LBSETHDR w formie powodującej zapis nagłówka do pamięci fiskalnej. .kasowanie bazy danych. co jest istotne z uwagi na NIEODWRACALNOŚĆ operacji ! O ile fiskalizacja polega na zapisaniu do pamięci fiskalnej tylo NIP to ‘???’ muszą się znaleźć bezpośrednio pod słowem NIP!!! Sposób usunięcia: Klawisz NIE powoduje zignorowanie sekwencji. . Umożliwia to kontrolę poprawności nagłówka (NIP-u) przed zatwierdzeniem operacji.O. . (RAPORT DOBOWY) przechodzimy do drukowania raportu dobowego.

Podczas przeszukiwania pamięci na wyświetlaczu pojawia się komunikat: 7) ' ' 'Numer raportu: xxxx'. Str. - - Istnieje możliwość wykonania raportu dobowego przez sekwencję sterującą w formacie nie wymagającym potwierdzania na klawiaturze (patrz dokładny opis sekwencji LBDAYREP zawarty w rozdziale 10 ). Następnie uruchamiany jest wydruk na drukarce paragonowej. natomiast klawisz TAK (operator świadomie chce dokonać powtórnego zapisu). Jeżeli aktualnie nastawiona data jest wcześniejsza od daty ostatniego zapisu w pamięci fiskalnej (co może mieć miejsce przy przekłamaniu zegara RTC w wyniku np. Po wyznaczeniu aktualnego (równego ostatniemu zapisanemu plus 1) numeru raportu pojawia się komunikat: 8) ' DRUKOWANIE RAPORTU ' ' '. Naciśnięcie klawisza NIE kasuje komunikat i powoduje powrót do normalnego trybu pracy drukarki. czy data jest poprawna (komunikat 4). Wyświetlany numer raportu "xxxx" jest zwiększany w trakcie przeszukiwania pamięci fiskalnej. co jest kontrolowane przed każdym zapisem do pamięci fiskalnej !). UWAGA: Należy sprawdzić. Jeżeli tak. to drukarka pyta: 6) 'Raport już zapisany ' ' powtórzyć (T/N) ? '. 38 . ponieważ przesunięcie daty "do przodu" spowoduje później blokadę zapisów po skorygowaniu daty (daty w pamięci fiskalnej muszą być narastające. Po zakończeniu wydruku następuje powrót do normalnego trybu pracy drukarki. czy jest już w pamięci raport dobowy o tej dacie. Jeżeli data jest poprawna (tzn. Podana sekwencja komunikatów występuje w przypadku inicjowania raportu z klawiatury.Drukarka Fiskalna POSNET Thermal i 3001 raportu. ponieważ umożliwia codzienną pełną kontrolę poprawności funkcjonowania modułu fiskalnego i zawartych w nim zapisów. Operacja ta może trwać nawet do kilkudziesięciu sekund (po kilku latach eksploatacji urządzenia). gdyż błędna data zapisu do pamięci fiskalnej może spowodować późniejsze kłopoty. W tym celu układ elektroniczny dokonuje przeszukania pamięci fiskalnej w celu wyznaczenia bieżącego numeru raportu dobowego. częściowego rozładowania baterii). Każdy zapis do pamięci fiskalnej wymaga zatwierdzenia z klawiatury ! Występujące komunikaty o błędach mają postać standardową dla błędów sekwencji sterujących: 'Błąd rozkazu: "#r" ' 'Kod błędu : xx '. W tej sytuacji klawisz NIE powoduje powrót do normalnego trybu pracy drukarki. urządzenie sprawdza. sekwencja komunikatów jest skrócona do: ' Drukować raport ' ' dobowy ? ' i ' Data: xxxx-xx-xx ' ' jest poprawna ? '. drukarka nie wykona raportu i wypisze komunikat: 5) ' Błędna data ! ' ' ( Naciśnij NIE ) ' (oraz krótki sygnał akustyczny). powoduje przejście dalej (rozpoczęcie drukowania). tym nie mniej jest ona korzystna. W przypadku inicjowania raportu przez sekwencję sterującą LBDAYREP. jest zachowana "narastająca" chronologia zapisów w pamięci fiskalnej).

gdy wskazuje on na pole 'dzień') powoduje zatwierdzenie wprowadzonej daty. dzień).O. Przesunięcie kursora maksymalnie w prawo (czyli naciśnięcie klawisza TAK wtedy. roku. co oznacza przerwanie wykonania operacji z klawiatury. natomiast klawisz TAK powoduje przejście do wprowadzania dat dla raportu. Naciśnięcie klawisza NIE powoduje powrót do normalnego trybu pracy drukarki. co spowoduje przejście do drukowania raportu fiskalnego okresowego. (RAPORT OKRESOWY). przyciśnięcie klawisza na dłuższy czas powoduje automatyczne zwiększanie/ zmniejszanie wartości.O. w szczególności. obowiązek dokonywania codziennego raportu spoczywa na użytkowniku. UWAGA: . po naciśnięciu klawisza NIE. bądź w prawo (NIE i TAK). Wyświetlany jest wtedy komunikat: 14) 'Poczekaj. jeżeli ustawimy: ' Data początkowa ? ' '1996-12-31 [wyjście]' i zmniejszymy numer miesiąca na 11. dnia lub miesiąca). Naciśnięcie klawisza NIE powrót do normalnego trybu pracy drukarki.Drukarka Fiskalna POSNET Thermal i 3001 Jeżeli wyświetlanie komunikatów o błędach nie zostało zablokowane przez aplikację.). W stanie selekcji raportu (komunikat 1) można też nacisnąć klawisz R. ' Str. i R. . Wprowadza się datę początkową i końcową dla raportu. ' Data początkowa ? ' 'xxxx-xx-xx [wyjście]' W obu sytuacjach na wyświetlaczu pojawia się kursor (migoczący prostokąt).Drukarka nie sygnalizuje konieczności wykonania raportu dobowego.. tj. 39 . który może być przesuwany w obrębie trzech pól daty (rok.. natomiast klawisz TAK powoduje wyświetlenie komunikatu: 13) ' TAK: pełny raport ' ' NIE: podsumowanie' Drukarka wykona pełny raport po naciśnięciu klawisza TAK lub raport w postaci podsumowania po naciśnięciu klawisza NIE. przy użyciu klawiszy oznaczonych strzałką w lewo. co objawia się komunikatem: 9) ' Drukować raport ' ' okresowy ? '. a na wyświetlaczu pojawiają się komunikaty: 10) oraz 11) ' Data końcowa ? ' 'xxxx-xx-xx [wyjście]'. W trakcie modyfikacji kontrolowana jest cały czas poprawność formalna daty i drukarka dokonuje ewentualnych korekt automatycznie . np. nie licząc nagłówka.D. jest limitowana do 2031 rekordów). miesiąc. . Modyfikacja pola zachodzi z "autorepetycją". ponieważ jest dostępna informacja o dacie ostatniego zapisu w pamięci fiskalnej).dotyczy do długości miesiąca. Po wprowadzeniu obu dat drukarka pyta: 12) 'Daty: xxxx-xx-xx ' 'poprawne? xxxx-xx-xx '.Przy użyciu rozkazu LBDAYREP nie jest możliwe powtórne wykonanie raportu dobowego (wystąpi wtedy błąd nr 36). Po wyborze rodzaju raportu następuje przejście do analizy zawartości pamięci fiskalnej w zadanym okresie. ponieważ skraca to czas eksploatacji urządzenia (ilość wszystkich możliwych zapisów w pamięci fiskalnej. może pojawić się komunikat: 'Błąd rozkazu: "#r" ' 'Kod błędu : 37 '. Każde z 3 pól może być modyfikowane przy użyciu klawiszy oznaczonych strzałką w dół lub w gorę (R. tym nie mniej można tego dokonać z klawiatury.Należy unikać powtórnego drukowania raportu dobowego. Przypomnienie o wykonaniu raportu (lub jego wykonanie przez sekwencję sterującą) może realizować aplikacja. to drukarka automatycznie skoryguje dzień na 30. co powoduje zwiększanie lub zmniejszanie wybranej liczby (tj.

. W przypadkach całkowitej utraty informacji bazy danych lub dla nowego urządzenia komunikat ten może być wyświetlany nawet kilka minut.y' oznacza wykonanie (numer wersji) urządzenia. gdzie: 'nnnn' oznacza typ drukarki: Thermal lub 3001. Naciśnięcie klawisza NIE kasuje komunikat i powrót do normalnego trybu pracy drukarki. to komunikat ten pojawia się na krótko (około 1 sekundy).diagnostyczny: 17) 18) ' Szukanie wartości ' ' stawek PTU. Algorytm ten jest dosyć rozbudowany.. co jest sygnalizowane komunikatem: 16) 'Błędna relacja dat! ' ' ( Naciśnij NIE ) '. UWAGA: w przypadku zaistnienia problemów z drukarką i/lub aplikacją. co w takiej sytuacji będzie sygnalizowane komunikatem: Str. ze względu na możliwe przypadki szczególne (np. Naciśniecie klawisza NIE kasuje komunikat i powrót do normalnego trybu pracy drukarki. 40 . ' Komunikat 17 (podobnie jak komunikat 7 dla raportu dobowego) jest związany z przeszukaniem całej pamięci od początku do miejsca odpowiadającego dacie początkowej wraz z wyznaczeniem początkowego numeru raportu dobowego. który może być wyświetlany przez czas zależny od stanu bazy danych. Drugi możliwy błąd może polegać na ustawieniu daty końcowej wcześniejszej od daty początkowej. zmiany stawek PTU. Nie należy wówczas wyłączać zasilania. ze względu na czas wymagany na regenerację bazy danych. (oraz krótki sygnał akustyczny). ' Wyznaczenie numeru ' ' raportu dobowego. 'xx. jeżeli urządzenie wykryje błędy w bazie danych. W każdej innej poprawnej sytuacji algorytm przeszukiwania pamięci powoduje wyszukanie i wydrukowanie wszystkich zapisów w pamięci fiskalnej w zadanym okresie. (oraz krótki sygnał akustyczny). Po włączeniu zasilania urządzenie zgłasza się na wyświetlaczu z komunikatem: ' Drukarka fiskalna ' 'POSNET nnnn/xx. tylko czekać cierpliwie na zakończenie operacji. stąd poszczególne jego etapy są sygnalizowane na wyświetlaczu komunikatami mającymi charakter informacyjno . Po włączeniu zasilania pojawia się również komunikat: ' KONTROLA BAZY ' ' DANYCH. '. Inne komunikaty . natomiast czas ten wydłuża się. W dalszej kolejności jest uruchamiany mechanizm drukujący. '.. Jeżeli test nie wykrył błędów w bazie. której dotyczy wątpliwość.Drukarka Fiskalna POSNET Thermal i 3001 ' ' W wyniku analizy zawartości pamięci fiskalnej może wystąpić błąd polegający na braku zapisów w zadanym okresie i wówczas będzie wyświetlony komunikat: 15) ' Błędne daty ! ' ' ( Naciśnij NIE ) '.y '. co jest sygnalizowane komunikatem: 19) ' DRUKOWANIE RAPORTU ' ' OKRESOWEGO ' Po zakończeniu wydruku następuje powrót do normalnego trybu pracy drukarki. może zatem pojawić się na wyświetlaczu na długi czas (do kilkudziesięciu sekund po kilku latach pracy urządzenia). wielokrotne zapisy z tą samą datą). w celu uzyskania kompetentnej porady w firmie POSNET należy podać numer wersji urządzenia.

Automatyczna obsługa wyświetlacza przez drukarkę (realizowana w trybie "On-Line" realizacji transakcji) zakłada. Format 3 jest również wyświetlany (dla kontroli) przez czas około 1 sekundy po korekcie zegara przez aplikację (odebranie sekwencji LBSETCK). wyświetlacz (LCD) może być wyłącznie kontrolowany przez aplikację.Drukarka Fiskalna POSNET Thermal i 3001 ' Błąd bazy danych ! ' ' ( Naciśnij NIE ) '. W trybie fiskalnym zostanie wówczas wykonany zapis w pamięci fiskalnej informacji o wystąpieniu błędu w bazie danych. Po rozpoczęciu transakcji (odebraniu sekwencji LBTRSHDR) drukarka automatycznie przywraca format 1a lub 1b na wyświetlaczu. Aplikacja może włączyć (przy pomocy sekwencji LBDSP) specjalny tryb obsługi wyświetlacza. . zatwierdzenie transakcji lub LBTRXEND ). Komunikaty podczas realizacji transakcji będą zatem następujące: 1.Początek transakcji (po sekwencji LBTRSHDR) .Po zakończeniu transakcji (realizacji sekwencji LBTREXIT). zależnie od trybu realizacji transakcji. Jeżeli w transakcji uwzględniono rabat (dopłatę) po odebraniu sekwencji kończącej (LBTREXIT. zostanie odtworzona standardowa postać informacji na wyświetlaczu. Po poprawnym zakończeniu inicjalizacji na wyświetlaczu pojawia się standardowy dla informacji o sprzedaży komunikat: ' --. Opcję tę można wykorzystać do kontroli daty/ czasu lub włączać w przypadku dłuższych przerw między transakcjami.xx' UWAGA: po odebraniu ostatniej linijki paragonu na wyświetlaczu pojawi się suma wszystkich pozycji transakcji. Podczas realizacji transakcji na wyświetlaczu mogą pojawiać się różne informacje. że pierwsza linia jest zarezerwowana na nazwy kolejnych towarów. w którym jest wyświetlana data i godzina z zegara wbudowanego w drukarkę.Początek transakcji (po sekwencji LBTRSHDR) .' 'Suma: xxxxxxxx. Str. Dodatkowy wyświetlacz VFD (o ile jest podłączony) nie może być modyfikowany przez aplikację po rozpoczęciu transakcji. suma końcowa w drugiej linii jest zerowana. a w drugiej linii jest drukowany napis 'Suma:' i narastająca suma transakcji (wyświetlana jednocześnie na wyświetlaczu dla ‘klienta’). W trybie "blokowym": .zawartość wyświetlacza (LCD. suma końcowa w drugiej linii jest zerowana.Po wydrukowaniu każdej pozycji paragonu (odebraniu sekwencji LBTRSLN). natomiast w momencie zakończenia transakcji (rozpoczęcie drukowania). . oraz wyświetlona ostateczna suma transakcji (do zapłaty przez klienta. . W trybie "blokowym" realizacji transakcji. w pierwszej linii jest wyświetlana nazwa artykułu (pierwsze 20 znaków). w drugiej linii zostanie automatycznie wyświetlona kwota do zapłaty (taka sama kwota zostanie wyświetlona na wyświetlaczu LED).Do zapłaty --. . suma ta zostanie skorygowana zgodnie z zadaną wielkością rabatu/ dopłaty oraz kaucji_pobranej ! 2. 41 . UWAGA: wyświetlacz cyfrowy LED nie może być modyfikowany przez aplikację.Po zakończeniu transakcji (realizacji sekwencji LBTREXIT). W trybie "On-Line" : . a w drugiej automatycznie jest aktualizowana suma narastająca.Ponieważ odebranie każdej pozycji paragonu nie jest związane z jej drukowaniem (są one gromadzone w pamięci) .pierwsza linia wyświetlacza (LCD i VFD) jest kasowana. VFD i LED) w trakcie przesyłania treści paragonu nie ulega zmianie i dostęp do niego jest zabroniony (drukarka zgłosi błąd po odebraniu rozkazu LBDSP dotyczącym wyświetlenia tekstu na wyświetlaczu LCD/ VFD). w obu formatach jest to maksymalnie 10 cyfr): 2a) ' --.Do zapłaty --. jak w punkcie 1.'.pierwsza linia wyświetlacza (LCD i VFD) jest kasowana.' 'Suma: 0. Format wyświetlania daty i czasu jest następujący: 3) 'Data: 'Godzina: xxxx-xx-xx' xx:xx' W tym trybie wyświetlacz jest cały czas aktualizowany zgodnie z bieżącym stanem zegara.

ustalony w procesie fiskalizacji drukarki (linia z NIP. W trybie szkoleniowym postać paragonu jest niemal identyczna jak w trybie fiskalnym. czy zawiera numer NIP).niektóre pola paragonu (linie) są opcjonalne np.poszczególne pozycje sprzedaży mogą być drukowane w jednej lub dwóch liniach (drukarka dokonuje tej kompresji automatycznie).aplikacja może drukować 3 linie dowolnego tekstu między polem daty / numeru paragonu a jego treścią. że mogą być różne warianty paragonów. Nagłówek: .Drukarka Fiskalna POSNET Thermal i 3001 8. Paragon fiskalny jest drukowany podczas realizacji transakcji przez drukarkę. podwójna szerokość linii). .Nazwa --------------------------------------------------| |----. Należy zwrócić uwagę. UWAGA: 1.zawiera informacje odczytane z pamięci fiskalnej i/ lub z RAM (maksymalnie 217 znaków z RAM + linia z NIP). linie: 'Gotówka:. łącznie z kodami sterującymi (mogą być znaki LF. . Formaty możliwych wydruków realizowanych przez drukarkę.nie mogą zawierać żadnych znaków sterujących ! 4.. ponieważ drukarka nie dokonuje żadnej kontroli informacji zawartych w nagłówku (kontrolowana jest linia z NIP). Serwis musi skontrolować w trakcie fiskalizacji drukarki formalną poprawność nagłówka (np. stąd wpisanie do nagłówka błędnych informacji ( błędnego numeru NIP) będzie wymagać kosztownej naprawy modułu fiskalnego (możliwej do przeprowadzenia tylko u producenta) !! 2.'.. 3.em jest przez drukarkę wytłuszczona i wyśrodkowana). format nagłówka jest zatem dowolny ..' oraz 'Rabat'.na początku i na końcu paragonu są napisy '# niefiskalny #'. w celu wpisania numeru określonego przez aplikację wiążącego ten paragon z rachunkiem uproszczonym lub faktura. UWAGA: W przedstawionych poniżej różnych formatach wydruków umieszczono na górze każdego przykładowego wydruku dodatkową linię: |0123456789012345678901234567890123456789| umożliwiającą dokładną lokalizację wydruków względem 40-tu kolumn drukarki. Linia ta nie jest oczywiście drukowana na wydrukach rzeczywistych.3-znakowe oznaczenie dnia tygodnia dopisywane przez drukarkę).PTU -| Str.mogą zawierać maksymalnie 3 linie po 40 znaków. Paragon fiskalny składa się z następujących pól: 1. Data i kolejny numer paragonu: .Cena ----.są stosowane np. Ponadto operacja fiskalizacji jest jednokrotna i nieodwracalna. Dokumenty fiskalne. . Opcjonalne linie dodatkowego opisu paragonu: .Ilość --. Są tylko następujące dwie różnice: . Paragon fiskalny standard. natomiast numer unikatowy jest drukowany od lewej krawędzi paragonu (a nie na środku) oraz nie są drukowane litery zawarte w numerze unikatowym.'Reszta:. co wynika z następujących faktów: . .logo fiskalne (specjalny znaczek) nie jest drukowane. oraz zgodność danych z danymi podatnika. .. Opis paragonu w formie 2 linii: |0123456789012345678901234567890123456789| |.-------------Wartość. ale również kody "wzbogacające" wydruk np.data odczytana z zegara drukarki : |0123456789012345678901234567890123456789| |yy-mm-dd www | ('www' . Składa się z pól opisanych poniżej. 42 ..

każda z pozycji sprzedaży zajmuje 2 linie na 40-znakowej drukarce: . .ilość = string[16].dodatkowe spacje dopełniające do 40 znaków (jeżeli występują) będą wpisane między pole <ilość> a <wartość> + <ptu> .yy .2. w wariancie "jedno-" lub "dwulinijkowym".wartość liczbowa kwoty rabatu (dopłaty) wyliczona przez drukarkę w przypadku podania w procentach rabatu (dopłaty) lub wartość kwoty rabatu (dopłaty) przesłana przez aplikację w polu RABAT sekwencji LBTRSLN .xx. .xx.40 znaków (dopełniając prawostronnie spacjami nazwy krótsze).xx| (Pr=2) . 2.pole <nazwa> jest dosunięte do lewej strony. gdzie: <nazwa> = string[40].' przed pozycją groszy (maksymalnie 2 cyfry po przecinku).pole <wartość> + <ptu> jest dosunięte do prawej.'F' lub 'Z' dla towarów zwolnionych. Pozycje sprzedaży: .yy % xx.linia 2: . <ilość> = string[16]. xx.może wystąpić ich dowolna ilość (do 255). . |0123456789012345678901234567890123456789| |cccccccc. Wariant "jednolinijkowy": Jeżeli łączna długość napisu: <nazwa> + ' ' + <cena> + ' ' + <ilość> + ' ' + <wartość> + <ptu> .linia 1: . 30..rabat lub dopłata procentowa z dokładnością do 0.wwp| 5. xx. . W zależności od wartości parametru Pr w sekwencji LBTRSLN na paragonie po linii określającej sprzedawany towar w przypadku Pr<>0 zostanie wydrukowana dodatkowa linia w postaci : |RABAT lub |RABAT lub |DOPŁATA lub |DOPŁATA yy.zapewnione jest co najmniej po jednej spacji rozdzielającej (jak wyżej).stawka podatkowa pobrana z pamięci fiskalnej na podstawie kodu stawki PTU = znak 'A'.xx | (Pr=1) Str..Drukarka Fiskalna POSNET Thermal i 3001 5. . Wariant "dwulinijkowy": .yy % . po uwzględnieniu rzeczywistej długości pól <nazwa> i <ilość> oraz kompresji spacji i zer nieznaczących w polach <cena> i <ilość> nie przekracza 40 znaków.cc iiiiiiiiiiiiiiii wwwwwwww. Aplikacja może wymusić drukowanie zawsze wariantu "dwulinijkowego" wysyłając zawsze nazwy o długości np.nazwa = string[40]. .xx .CENA = wynik konwersji wartości numerycznej przesłanej przez system. 43 .xx| (Pr=3) yy. <ptu> = char. przesyłany przez komputer. przesłana przez system (format ustalony przez aplikację): |0123456789012345678901234567890123456789| |xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx| .1. <wartość> = string[11].01% .xx| (Pr=4) gdzie : yy. to wówczas tworzony jest jeden napis o długości 40 znaków według następujących reguł: .wartość sprzedaży BRUTTO (przesłana przez system) = wynik konwersji posiadający maksymalnie 10 cyfr + ewentualnie '. <cena> = string[11]. 5. Przykładowy rozkład pól może być więc następujący: |xxxxxxxx ccccccc iiiiiiii wwwwwwwwwp| UWAGA: 1. ponadto mogą pojawić się pozycje "stornowane".. w tej wersji jest to maksymalnie 10 cyfr z dowolnym położeniem przecinka .

pp| oraz format dla kwoty sprzedaży wolnej od podatku: |Kwota zw. Jeżeli występuje sprzedaż w jednej z grup A.vv% pppppppp.ss PTU vv % pppppppp. oraz stawki podatkowe w grupach A. Wprowadzenie możliwości drukowania jednolinijkowego podsumowania transakcji jeżeli jest sprzedaż tylko w jednej grupie.xx PTU pp. D. Możliwość ta jest włączana parametrem Py w sekwencji LBTREXIT i LBTRXEND.2.Z. ponadto pozycje 8 i 10 nie są drukowane.ss UWAGA: 1.. -wwwwwwwwwp| | Str. F: |0123456789012345678901234567890123456789| |Kwota ssssssss.3. 2. które występują w polu 5 (tzn. 44 .yy zł| gdzie: xx. zawierających łączne kwoty sprzedaży BRUTTO w grupach A. D.yy wyliczona przez drukarkę kwota PTU .’ nie jest drukowana. E.ss (zw. gdy odpowiednia kwota jest niezerowa).. 4.od 1 do 7 linii.3. 9). Drukowane są tylko podsumowania dla tych stawek podatkowych.ss PTU vv. są drukowane wtedy.) zł | 3.Drukarka Fiskalna POSNET Thermal i 3001 5.F.F oraz sprzedaż zwolniona to podsumowanie jednolinijkowe nie jest możliwe a linia ‘Łączna kwota PTU .3.pp| |Kwota ssssssss. ponadto dodatkowa linia z napisem "storno" o podwójnej szerokości: |0123456789012345678901234567890123456789| | # storno # | 5.cc iiiiiiiiiiiiiiii -wwwwwww.xx kwota do zapłaty drukowana pogrubioną czcionką. B. C. ssssssss. Wariant "jednolinijkowy": Przykładowy rozkład pól może być następujący: |xxxxxxxx ccccccc iiiiiiii 6.wwp| 5. Wprowadzono także możliwość ‘oszczędzania’ papieru przez wydruk nagłówka nowej transakcji przed odcięciem paragonu (jeżeli długość nagłówka jest nie większa od 4 linii) lub drukowanie paragonu bez jego odcięcia (POSNET 3001 i POSNET 2000) (parametr Pc w sekwencji LBTREXIT i LBTRXEND). pp. C. Wartości sprzedaży w poszczególnych grupach podatkowych: . Jeżeli występuje tylko sprzedaż w grupie zwolnionej to linijka ta ma format : |Razem: ssssssss. liniami dla rabatu (p.pp wartość stawki PTU sprzedanego towaru. Jeżeli drukowane jest podsumowanie jednolinijkowe to występuje ono za ew.1. W przypadku gdy parametr Py=1 i na paragonie występuje(ą) towar(y) w jednej grupie towarowej drukarka drukuje ‘skróconą’ wersję paragonu tzn.pp % yy. E. B.pp| |Łączna kwota PTU pppppppp. zmienia się wydruk w podsumowaniu transakcji i przyjmuje postać jednej linijki tak jak pokazano poniżej : |Razem: xx.. Pozycja "stornowana": . yy.pole <wartość> ze znakiem '-'. Wariant "dwulinijkowy": |0123456789012345678901234567890123456789| |cccccccc. Jedna linia (kreska) oddzielająca: |------------------------------------------------------------| 7.

.... |00112233--00112233--001 .uu| 11. (2 litery + 8 cyfr): Str.99%) transakcji jest różny od zera.jeżeli parametr Px<>0 (rabat lub dopłata procentowa) to występują 2 dodatkowe linie: |Kwota: |Rabat: lub |Kwota: |Dopłata: gdzie: pppppppp.. Jedna linia (kreska) oddzielająca (nie występuje w przypadku podsumowania jednolinijkowego) : |-------------------------------------------------------------| 9.ww| wwwwwwww. numer drukarki + kod kasjera (3 znaki ASCII przesłane przez komputer). ale też skontrolowana lokalnie..... odczytany z totalizerów drukarki..############.pp| rr. Kwota należności dla klienta lub zamiennie podsumowanie jednolinijkowe : ... a druga wartość rabatu w procentach (cyfry 'rr').. linia wydrukowana znakami o podwójnej szerokości: |01234567890123456789| |Suma zł uuuuuuuu.. Opcjonalna linia reszty: ...##.rr %| rr...##. z uwzględnieniem ewentualnego rabatu)...##.logo fiskalne jest drukowane w trybie graficznym z rozdzielczością 400 punktów w linii.##...##.##...01%) rabatu lub dopłaty podawaną w polu RABAT w sekwencji LBTREXIT. Opcjonalne linie rabatu: ..... |.maksymalnie 10 cyfr (przesłana przez komputer...rr %| pppppppp..numer paragonu fiskalnego. maksymalnie 6 cyfr.....numer unikatowy kasy jest odczytany z pamięci fiskalnej i ma postać 10-ciu znaków ASCII. .jeżeli reszta obliczona przez drukarkę na podstawie przesłanych przez komputer wartości WPŁATA i TOTAL jest nieujemna... według następującego wzorca (w sumie 2 pola znakowe i kawałek): |0123456789012345678901234567890 |...pp| rr %| gdzie pierwsza linia określa należność klienta bez uwzględnienia rabatu. |... to drukowane są dodatkowe 2 linie: |Gotówka |Reszta: wwwwwwww... 45 . |......... 10..pp| rr. Logo fiskalne wraz z numerem unikatowym kasy: ....##.##...... to występują 2 dodatkowe linie: |Kwota: |Rabat: pppppppp.ww| 12. oraz czas (przesłany z komputera): |0123456789012345678901234567890123456789| |nnnnnn #aaa hh:mm| 13.jeżeli rabat procentowy (1.##.....rr oznacza procentową stopę (dokładność 0.## |........##.################. |.. Stopka paragonu: .Drukarka Fiskalna POSNET Thermal i 3001 8.#################### |..

15. Pola numeryczne dla kwot są drukowane z kompresją zer nieznaczących. Pola numeryczne: daty.dd%| 3. Opcjonalne linie dodatkowego opisu paragonu: . numerów paragonów (numer łączny oraz numer paragonu fiskalnego) są drukowane bez kompresji zer nieznaczących.Drukarka Fiskalna POSNET Thermal i 3001 |0123456789012345678901234567890123456789| | lll kk nnnnnnnn | UWAGA: 1.wartość nie uwzględniająca kaucji . to pojawi się linia wydrukowana znakami o podwójnej szerokości: |0123456789012345678901234567890123456789| | ! błąd PTU ! | W obu wyżej wymienionych przypadkach fakt anulowania paragonu jest sygnalizowany wydrukowaniem linii (też o podwójnej szerokości): |0123456789012345678901234567890123456789| | paragon anulowany ! | Paragon fiskalny z formami płatności. Drukowanie paragonu może być przerwane w dowolnym momencie .Wyłączenie i włączenie zasilania drukarki w trakcie transakcji. .są stosowane np. przy czym zachodzi też kompresja zer nieznaczących po prawej stronie punktu dziesiętnego (przy zerowej ilości groszy drukowane jest '.anulowanie przez program systemu kasowego. Paragon przerwany lub anulowany: Anulowanie paragonu może zajść w dwóch przypadkach: .-').po wydrukowaniu nagłówka lub dowolnej linii paragonu. w celu wpisania dowolnego tekstu przez aplikację. . Numer paragonu fiskalnego.rr%| lub |Dopłata: dd. Jeżeli występuje rabat procentowy to drukujemy linie z napisem 'Kwota'. ale przed wydrukowaniem stopki ! Jeżeli wykryto błąd stawki PTU. czasu. 2.pp| oraz linie definiująca rabat/ dopłatę w jednej z możliwych postaci: |Rabat: rr.tu zakładamy. . która zawiera wartość transakcji bez uwzględnienia rabatu: |0123456789012345678901234567890123456789| |Kwota: pppppppp.część bezpośrednio za podsumowaniem kwot podatku.wykryta została zabroniona manipulacja stawką PTU dla danego towaru. Jedna linia (kreska) oddzielająca: | | 2. 46 . W nowym formacie mogą wystąpić następujące linie /informacje .jeżeli paragon zostanie zakończony przy użyciu sekwencji LBTRXEND (wg opisu na stronie 81): 1. Generalnie modyfikujemy 'stopkę' transakcji .ss| 4.mogą zawierać maksymalnie 5 linii po 40 znaków. oraz czas: |0123456789012345678901234567890123456789| |nnnnnn #aaa hh:mm| Str. Kwota należności dla klienta . ze obrót nie objęty VAT nie może pojawić się przed logo !! Linia wydrukowana znakami o podwójnej szerokości: |0123456789012345678901234567890123456789| |Suma zł ssssssss. kod kasjera. 14.

zz. |0123456789012345678901234567890123456789| | lll kk nnnnnnnn | blok informacji niefiskalnych: 6. Raport fiskalny dobowy.. dla których stawki podatkowe są uaktywnione (por.############...##.##..##. Drukowane są kwoty sprzedaży w tych grupach podatkowych A. yy.##...##..kk| 8. Standardowo są to stawki A.....##... W trybie szkoleniowym postać raportu jest niemal identyczna jak w trybie fiskalnym. wraz z numerem unikatowym kasy..##.PTU F .C ale można uzyskać 6 stawek (A.....kk| |Czek yyyyyyyyyyyyyyyy : cccccccc.Drukarka Fiskalna POSNET Thermal i 3001 5.. Możliwe są 2 formaty linii: |0123456789012345678901234567890123456789| (SUMA >= 0) |Do zapłaty: kkkkkkkk.F plus stawka zwolniona Z)...). Są tylko następujące dwie różnice: ... |...#################### |... 47 ..bb| |Reszta: rrrrrrrr....... Ewentualnie 0..kk| i/ lub |Zwrot kaucji: kkkkkkkk..B..... drukowane są tylko te kwoty PTU A.... wartość ta jest obliczana automatycznie przez drukarkę i wyświetlana równocześnie na wyświetlaczu. Logo fiskalne |0123456789012345678901234567890 |.##...kk| 7.... która jest obliczona jako: SUMA := TOTAL + KAUCJA_POBRANA ..gg| |Karta xxxxxxxxxxxxxxxx : kkkkkkkk..y. opis sekwencji LBSETPTU 74). Jedyne możliwe warianty dotyczą następujących przypadków: 1.##. Format raportu jest w zasadzie sztywny.cc| |Bon zzzzzzzzzzzzzzzz : bbbbbbbb.... 2....F.x = string[16] = nazwa karty kredytowej.KAUCJA_ZWROCONA. Linie związane z obrotem kaucja za opakowania: |0123456789012345678901234567890123456789| |Kaucja za opakowania zwrotne: kkkkkkkk..5 linii dodatkowych dosyłanych przez aplikacje w sekwencji LBTRXEND....################..z = nazwa czeku/ bonu (jw......kk| lub: (SUMA < 0) |Do zwrotu: kkkkkkkk.## |.. |... Jeżeli występuje jedna z powyższych linii to tu drukujemy kwotę do zapłaty/ zwrotu przez klienta.##. Str.. Raport fiskalny dobowy jest drukowany na życzenie użytkownika z końcem dnia i może być inicjowany z systemu lub klawiatury drukarki . |.rr| gdzie: xx.....po wejściu w opcję RAPORTY. 9.. |.na początku i na końcu raportu są napisy '# niefiskalny # ‘.... Linie dla poszczególnych form płatności W przypadku wykorzystania sekwencji LBTRXEND można uzyskać maksymalnie 5 linii: |0123456789012345678901234567890123456789| |Gotówka: gggggggg.. które są niezerowe.

'ff' = dwucyfrowe wartości stawek PTU wyrażone w procentach . Dane numeryczne raportu dobowego: (drukowane po jednej linii odstępu).Drukarka Fiskalna POSNET Thermal i 3001 . Ponadto w trybie szkoleniowym fakt wydrukowania raportu powoduje wyzerowanie totalizerów. |0123456789012345678901234567890123456789| |SPRZED.. PTU E i PTU F ) |SPRZED.. OPODATK. UWAGA: . PTU B bbbbbbbbbb| |SPRZED. 48 . 3. PTU D |SPRZED. PTU F (ta linia występuje zawsze) |SPRZEDAŻ ZW.istnieje możliwość zdefiniowania stawek PTU z dokładnością do 0. Nagłówek: .1%. 2. ale nie powoduje żadnego zapisu do pamięci fiskalnej ! Raport fiskalny dobowy składa się z następujących pól: 1. OPODATK. PTU E |SPRZED. OPODATK. PTU C cccccccccc| (te linie występują jeżeli zdefiniowano stawki PTU D. OPODATK. PTU |KWOTA PTU A |KWOTA PTU B dddddddddd| eeeeeeee| fffffffffff| zzzzzzzzzz| aa % | bb % | cc % | (następujące linie są drukowane tylko. Aktualne wartości stawek PTU (drukowane po jednej linii odstępu): |0123456789012345678901234567890123456789| Standardowe: |PTU A |PTU B |PTU C oraz: |PTU D dd % | jeżeli zdefiniowano stawki E i F to pojawią się dodatkowe linie: |PTU E ee % | |PTU F ff % | gdzie: 'aa'. PTU A aaaaaaaaaa| |SPRZED. OPODATK. natomiast numer unikatowy jest drukowany od lewej krawędzi paragonu (a nie na środku) oraz nie są drukowane dwie litery umieszczone na początku numeru unikatowego. Tytuł i numer raportu: |0123456789012345678901234567890123456789| |RAPORT FISKALNY DOBOWY Nr nnnn| gdzie: 'nnnn' = 4 cyfrowy numer raportu (drukowany bez kompresji zer nieznaczących). OPODATK.logo fiskalne (specjalny znaczek) nie jest drukowane.aa% | 4. wtedy format drukowania stawki jest następujący: |0123456789012345678901234567890123456789| |PTU A aa. jeżeli odpowiednie kwoty są niezerowe) gggggggggg | hhhhhhhhhh| Str.identyczny jak dla paragonu fiskalnego.

Raport fiskalny okresowy pełny składa się z 3 zasadniczych części: . 'zzz.'lll. 'gg' = godzina.na początku i na końcu raportu są napisy '# niefiskalny #'.. 'mm' = minuta. obliczone podczas drukowania raportu na podstawie akumulowanych w totalizerach wartości sprzedaży BRUTTO. Zwróćmy ponadto uwagę.'ff. 5. drukowane z kompresją zer nieznaczących (zerowa ilość groszy jest drukowana jako '.p' = całkowity należny podatek. okres raportu i informacje początkowe o wartościach stawek PTU.'. poszczególne opisy są na wydruku rozdzielone poziomymi kreskami. 'ppp...część końcowa: zawierająca podsumowania i logo fiskalne. Po wydrukowaniu wszystkich zapisów jest drukowane podsumowanie raportu.f'.. W trybie szkoleniowym postać raportu jest niemal identyczna jak w trybie fiskalnym..'ffff. natomiast numer unikatowy jest drukowany od lewej krawędzi paragonu (a nie na środku) oraz nie są drukowane dwie litery w numerze unikatowym..logo fiskalne (specjalny znaczek) nie jest drukowane. Data i godzina wykonania raportu: (po jednej linii pustej). 49 . Str. suma kwot 'aa. Raport fiskalny okresowy (pełny lub podsumowanie) może być inicjowany z systemu lub klawiatury drukarki.l' 'ttt..ciąg opisów poszczególnych rekordów (zapisów) pamięci fiskalnej: format każdego z opisów zależy od rodzaju rekordu (zapisu).'zz... różne informacje (raporty dobowe.'lll.jest identyczne jak dla paragonu fiskalnego.. 6.a'.t' = całkowity obrót dzienny zarejestrowany przez drukarkę. bez kompresji zer nieznaczących)..l' = 10-cio cyfrowe kwoty sprzedaży należnego podatku w grupach podatkowych.Drukarka Fiskalna POSNET Thermal i 3001 |KWOTA PTU C |KWOTA PTU D |KWOTA PTU E |KWOTA PTU F |ŁĄCZNA KWOTA PTU |ŁĄCZNA NALEŻNOŚĆ |ILOŚĆ PARAGONÓW iiiiiiiiiiiiiiiii| jjjjjjjjjjjjjjjjj| kkkkkkkkkk| llllllllllllllllll| pppppppppp| tttttttttt| nnnnnn| gdzie: 'aaa.. Raport fiskalny okresowy pełny...'lll. zmiany stawek PTU i inne). że ponieważ w trybie szkoleniowym nie są dokonywane zapisy do pamięci fiskalnej raport okresowy może zawierać zatem tylko jeden rekord: 'Zmiana stawek PTU' określający początkowe wartości stawek PTU wpisane do pamięci fiskalnej w trakcie produkcji modułu fiskalnego.f' = 10-cio cyfrowe kwoty sprzedaży NETTO w grupach podatkowych. 'mm' = miesiąc..l'.. datę i czas wykonania raportu. przy uwzględnieniu aktualnych stawek podatkowych..... tytuł. w formacie: |0123456789012345678901234567890123456789| |rr-mm-dd gg:mm| gdzie: 'rr' = dwie ostatnie cyfry roku... Logo fiskalne wraz z numerem unikatowym kasy: ..z' = całkowita sprzedaż w grupie Z (towarów zwolnionych od podatku). .'ggg.część wstępna: zawiera nagłówek.'). . 'ggg.z'.. drukowane z kompresją zer nieznaczących.a'.g'. suma kwot 'ggg. będą występowały kolejno.. 'dd' = dzień.. . Ponieważ pamięć fiskalna ma strukturę sekwencji rekordów rejestrujących.. Są tylko następujące dwie różnice: . Po określeniu daty początkowej i końcowej raportu drukarka przeszukuje pamięć fiskalną i drukuje informacje o wszystkich zapisach w pamięci fiskalnej w zadanym okresie.g'.. 'nnnnnn' = ilość paragonów fiskalnych wydrukowana w czasie od ostatniego raportu dobowego (drukowane jest 6 cyfr.

1. Str.3.. Część wstępna: 1. Nagłówek: .aa% |. 2. Istnieje możliwość zdefiniowania stawek PTU z dokładnością większą od 1 %. to wydrukowane początkowe wartości stawek PTU będą zerowe (pierwszy rekord pamięci fiskalnej zawiera zawsze definicje stawek PTU) ! 2. 1.. 50 . Mogą wystąpić następujące warianty. PTU E i PTU F ): |PTU D |PTU E |PTU F dd % | ee % | ff % | gdzie: 'aa'. Początkowe wartości stawek PTU: (po jednej linii pustej): |0123456789012345678901234567890123456789| |POCZĄTKOWE WARTOŚCI STAWEK PTU: | |PTU A aa % | |PTU B bb % | |PTU C cc % | (te linie występują jeżeli zdefiniowano stawki PTU D.Drukarka Fiskalna POSNET Thermal i 3001 Raport fiskalny okresowy pełny składa się z następujących pól: 1.. Data i godzina drukowania raportu: |0123456789012345678901234567890123456789| |rr-mm-dd gg:mm| (znaczenia pól są jak dla raportu dobowego).1.2.identyczny jak dla paragonu fiskalnego. wtedy przykładowy format drukowania stawki (A) jest następujący: |0123456789012345678901234567890123456789| |PTU A aa. oddzielonych poziomymi kreskami.5.'ff' = dwucyfrowe wartości stawek PTU wyrażone w procentach UWAGA: 1. Jeżeli raport okresowy zaczyna się od początku pamięci fiskalnej. Tytuł raportu: (po jednej linii pustej) |0123456789012345678901234567890123456789| |RAPORT FISKALNY OKRESOWY | 1. Zawartość pamięci fiskalnej w zadanym okresie: Następuje tu ciąg opisów poszczególnych rekordów (zapisów) w pamięci fiskalnej.4. którego dotyczy raport: |0123456789012345678901234567890123456789| |Za okres od: rr-mm-dd do: rr-mm-dd | (format dat jest jak w raporcie dobowym). 1. Okres czasu.

. Format opisu jest następujący: |0123456789012345678901234567890123456789| |rr-mm-dd Zerowanie RAM Nr nnnn gg:mm| gdzie: 'rr-mm-dd' = data zapisu. PTU A aaaaaaaaaa| |SPRZED. a fakt ten oprócz komunikatu na wyświetlaczu jest też rejestrowany w pamięci fiskalnej.1. natomiast w pamięci fiskalnej jest zapisywany rekord danych zapamiętujący tę sytuację.Drukarka Fiskalna POSNET Thermal i 3001 2. Odbudowa bazy: Ten rekord jest wpisywany automatycznie. zgodnie z uwagami wyżej).. Zerowanie RAM: Zapis jest inicjowany automatycznie.format opisu jest identyczny jak dla raportu dobowego. 51 . jeżeli urządzenie wykryje w czasie testu wstępnego błąd w bazie danych o towarach.zależnie od precyzji określenia stawek. OPODATK. 'gg:mm' = godzina. opisanego wyżej i może wyglądać tak (dla zdefiniowanych w drukarce stawek A . 'nnnn' = aktualny numer zerowania RAM ustalonu na podstawie przejrzenia zapisów w pamięci fiskalnej (numer aktualny = numer ostatni + 1). Baza danych jest wtedy "odbudowywana". C): |0123456789012345678901234567890123456789| |rr-mm-dd Raport dobowy iiii| |SPRZED. OPODATK. Wówczas totalizery są automatycznie zerowane.. o której wystąpiło zerowanie. 2. PTU zzzzzzzzzz| |ŁĄCZNA KWOTA PTU pppppppppp| |ŁĄCZNA NALEŻNOŚĆ tttttttttt| |ILOŚĆ PARAGONÓW nnnnnn| gdzie: .'ff' = nowe wartości stawek PTU (możliwy jest zapis dwu lub trzycyfrowy . Str. Raport dobowy: Zapis w pamięci fiskalnej dotyczy rejestracji dziennej sprzedaży.4.znaczenie poszczególnych pól jest identyczne jak dla raportu dobowego. Format opisu: |0123456789012345678901234567890123456789| |rr-mm-dd Odbudowa bazy | gdzie: 'rr-mm-dd' = data zaistnienia zdarzenia (data ostatniego zapisu do pamięci fiskalnej).2. 2. natomiast. Zmiana stawek PTU: Zapis w pamięci fiskalnej dotyczy definicji nowych wartości stawek PTU. Informacja o błędach w bazie danych jest istotna dla serwisu. inicjowany jest z systemu): |0123456789012345678901234567890123456789| |rr-mm-dd Zmiana stawek PTU | Tyle linii ile zostało |PTU A aa % | uaktywnionych stawek |PTU B bb % | przez rozkaz |PTU C cc % | LBSETPTU |PTU D dd % | |PTU E ee % | |PTU F ff % | gdzie: 'aa'. a 'iiii' stanowi numer kolejny raportu (w pamięci fiskalnej a nie w obrębie raportu okresowego !). 2. jeżeli podczas auto testu drukarka wykryje błąd totalizerów. 'rr-mm-dd' = data zapisu (wprowadzenia nowych stawek PTU). PTU B bbbbbbbbbb| |SPRZED. OPODATK.3. 'rr-mm-dd' jest datą zapisu tego raportu w pamięci fiskalnej. PTU C cccccccccc| |KWOTA PTU A eeeeeeeeee| |KWOTA PTU B ffffffffff| |KWOTA PTU C gggggggggg| |SPRZEDAŻ ZW. na wyświetlaczu operatora pojawia się odpowiedni komunikat. Format opisu jest podobny do raportu fiskalnego dobowego.

znaczenie poszczególnych pól jest identyczne jak dla raportu dobowego UWAGA: ilość drukowanych kwot sprzedaży i kwot PTU zależy w tym przypadku od tego ile jest uaktywnionych stawek PTU dla daty końcowej raportu.Drukarka Fiskalna POSNET Thermal i 3001 UWAGA: W przypadku gdy w drukarce zmieniano ilość stawek PTU na wydruku okresowym przed informacją o zmianach stawek PTU pojawi się komunikat ‘Odbudowa bazy’. Cześć końcowa raportu : 3.1. OPODATK. PTU C cccccccccc| |SPRZEDAŻ ZW. 3.3. 3. PTU A aaaaaaaaaa| |SPRZED. 3. PTU zzzzzzzzzz| |KWOTA PTU A eeeeeeeeee| |KWOTA PTU B ffffffffff| |KWOTA PTU C gggggggggg| |ŁĄCZNA KWOTA PTU pppppppppp| |ŁĄCZNA NALEŻNOŚĆ tttttttttt| |ILOŚĆ PARAGONÓW nnnnnn| gdzie: .2. raportu od: xxxx do: yyyy | gdzie: 'xxxx' = numer pierwszego raportu dobowego w zadanym okresie. Tytuł: (po jednej linii pustej): |0123456789012345678901234567890123456789| |ŁĄCZNY RAPORT FISKALNY OKRESOWY | 3. Okres wydruku i zakres numerów raportów dobowych: |0123456789012345678901234567890123456789| |Za okres od: rr-mm-dd do: rr-mm-dd | |Nr. 'yyyy' = numer ostatniego raportu dobowego w zadanym okresie. ale może być większa jeżeli w analizowanym okresie było uaktywnionych więcej stawek i była niezerowa sprzedaż w dodatkowych stawkach.format przykładowy jeżeli w zadanym okresie były zdefiniowane 3 stawki PTU: |0123456789012345678901234567890123456789| |SPRZED. 52 . format jak dla paragonu fiskalnego. Logo fiskalne i numer unikatowy: Po jednej linii oddzielającej. Podsumowanie raportu: . PTU B bbbbbbbbb| |SPRZED. OPODATK. Jest on wtedy związany tylko i wyłącznie z faktem zmiany stawek PTU (ilości) a nie z faktem błędu w bazie danych o towarach.4. Str. OPODATK.

stan kasy (sekwencja LBCSHSTS). Nagłówek: . .zmiany stawek PTU.zerowania RAM. 1. wydruki logowania/ wylogowania kasjera (sekwencje LBLOGIN I LBLOGOUT). wpłata do kasy (sekwencja LBINCCSH). raport kasy/ zmiany (sekwencja LBCSHREP).1.: • • • • • • • • • raport bazy danych (sekwencja LBDBREP).napis |0123456789012345678901234567890123456789| | # niefiskalny # | 1. natomiast dokumenty dla zerowania RAM powinny być przechowywane przez użytkownika dla serwisu ! Wszystkie dokumenty niefiskalne mają na początku i na końcu napisy '# niefiskalny #'. Data i godzina drukowania raportu: |0123456789012345678901234567890123456789| |rr-mm-dd gg:mm| (znaczenia pól są jak dla raportu dobowego). Są to np. Okres czasu. . Raport okresowy drukowany jako podsumowanie. Tytuł raportu: (po jednej linii pustej) |0123456789012345678901234567890123456789| |PODSUMOWANIE SPRZEDAŻY | 1. 53 .identyczny jak dla paragonu fiskalnego.3.2.4. wypłata z kasy (sekwencja LBDECSCH).fiskalizacji. zwrot towaru (sekwencja LBSTOCSH). 1. podczas wykonywania szczególnych operacji: . 1. Przewidziano szereg dokumentów niefiskalnych. wydrukowane znakami o podwójnej szerokości. wydruki związane z obsługą kart płatniczych (sekwencje LBTRSCARD i LBSTOCARD). których drukowanie jest z reguły inicjowane po odebraniu odpowiedniej sekwencji sterującej. Pozostałe dokumenty niefiskalne mają postać wydruków kontrolnych.Drukarka Fiskalna POSNET Thermal i 3001 Dokumenty niefiskalne. zwrot kaucji (sekwencja LBOPAK). UWAGA: Dokumenty kontrolne dla zmiany stawek PTU powinny być dołączane przez serwis do książki serwisowej urządzenia. którego dotyczy raport i numery raportów z zadanego okresu: |0123456789012345678901234567890123456789| |Za okres od: rr-mm-dd do: rr-mm-dd | |-------------------------------------------------------------| Str. Część wstępna: .

Napis 'niefiskalny': (+ linia odstępu): |0123456789012345678901234567890123456789| | # niefiskalny # | 1. Nagłówek: (jak w paragonie fiskalnym i np.miesiąc .2. 1. Raport bazy danych jest inicjowany przez ciąg sekwencji LBDBREP i składa się z następujących części: . Podsumowanie raportu: ( postać przykładowa dla 3 stawek aktywnych) |0123456789012345678901234567890123456789| |SPRZED. ‘dd’ . Część końcowa: .ciąg dowolnej liczby pozycji raportu (stawek PTU towarów). PTU B bbbbbbbbbb| |SPRZED. raportu od: xxxx do: yyyy | gdzie: ‘rr’. Numer unikatowy: Po jednej linii oddzielającej. 'yyyy' = numer ostatniego raportu dobowego w zadanym okresie.5. PTU A aaaaaaaaaa| |SPRZED.znaczenie poszczególnych pól jest identyczne jak dla raportu okresowego (podsumowanie) 1. Str. . ’mm’.Drukarka Fiskalna POSNET Thermal i 3001 |Nr. dosunięty do lewej krawędzi numer unikatowy bez napisu ‘DC’ |0123456789012345678901234567890123456789| |xxxxxxxx | gdzie: xxxxxxxx .6. 54 . raporcie dobowym).nagłówek (część wstępna) raportu. . 'xxxx' = numer pierwszego raportu dobowego w zadanym okresie.podsumowanie raportu.dzień .rok . Część wstępna raportu bazy danych: 1. 1. PTU C cccccccccc| |SPRZEDAŻ ZW. OPODATK. PTU zzzzzzzzzz| |KWOTA PTU A eeeeeeeeee| |KWOTA PTU B ffffffffff| |KWOTA PTU C gggggggggg| |ŁĄCZNA KWOTA PTU pppppppppp| |ŁĄCZNA NALEŻNOŚĆ tttttttttt| |ILOŚĆ PARAGONÓW nnnnnn| gdzie: .1. Raport bazy danych składa się z następujących pól: 1. OPODATK.numer unikatowy urządzenia .7.napis |0123456789012345678901234567890123456789| | # niefiskalny # | Raport bazy danych. OPODATK.

Str. Linia odstępu i końcowy napis: 'niefiskalny' (podwójna szerokość).3.. Opis tabeli: (po jednej linii pustej): |0123456789012345678901234567890123456789| |-----.'Z' = kod stawki PTU dla danego towaru przesłany z systemu. 55 .5. F . Tytuł raportu: (po jednej linii pustej): |0123456789012345678901234567890123456789| |KONTROLA BAZY DANYCH | 1. o ile stawka dla danego towaru jest liczbowo najwyższa to drukarka ‘zwróci’ na wydruku znak ‘A’ .. każda pozycja zawiera dwie linie tekstu.n' = maksymalnie 40-sto znakowa nazwa artykułu przesłana z systemu. 3.. 'F'. Data i godzina drukowania raportu bazy danych: |0123456789012345678901234567890123456789| |rr-mm-dd gg:mm| 1.1. 'iiiiii ' = 6-cio cyfrowy numer pozycji (drukowany bez kompresji zer). Podsumowanie raportu: 3. a w drugiej linii numer pozycji (artykułu) na raporcie oraz kod stawki PTU otrzymany z systemu (serwera). '?' . Jedna linia oddzielająca: . 's' = 'A' .Numer -.Drukarka Fiskalna POSNET Thermal i 3001 1.PTU:serwer ------------PTU:drukarka -| (druga linia drukowana z podkreśleniem). jeżeli kod stawki PTU przesłany z systemu oraz zawarty w bazie danych różnią się ! 3. 'dddddd' = 6-cio cyfrowa ilość różnic wykrytych podczas analizy bazy danych.najniższa liczbowo stawka ) według bazy danych drukarki: |0123456789012345678901234567890123456789| |nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn| |iiiiii s dx| gdzie: 'nnn. oraz kod w postaci ‘wagi’ stawki (A .pozioma kreska.towar nieznany (nie był jeszcze sprzedawany !) 'x' = ' ' lub '*' = znacznik.2. przy czym gwiazdka '*' jest drukowana. 'd' = 'A' .Nazwa --------------------------------------------| |-.'Z'. 2.'?' = kod priorytetu stawki w drukarce dla towaru o podanej nazwie w bazie danych np.3. 3.. 'F'.najwyższa liczbowo stawka w drukarce. Zestawienie ilości towarów i ilości różnic: |0123456789012345678901234567890123456789| |Ilość towarów: tttttt| |Ilość różnic: dddddd| gdzie: 'tttttt' = 6-cio cyfrowa ilość towarów przesłana przez system w trakcie realizacji raportu. Cześć informacyjna raportu bazy danych: Część ta zawiera ciąg pozycji raportu..4. przy czym: w pierwszej linii jest drukowana nazwa artykułu (przesłana z systemu !).

. 'kkk. Data i kolejny numer dokumentu NIEFISKALNEGO: |0123456789012345678901234567890123456789| |yy-mm-dd www kkkkkk| gdzie: 'www' . 'aaaaaa' = 6-cio cyfrowa ilość paragonów anulowanych wydrukowanych w trakcie zmiany.ii| |Wypłaty z kasy: dddddddd. raporcie dobowym. 'ddd.k' = 32-wu znakowe oznaczenie (imię i nazwisko) kasjera (przesłane z systemu).i' = suma wpłat do kasy wykonanych w trakcie zmiany. 'ccc. Raport kasy / zmiany jest inicjowany przez sekwencje LBCSHREP. Linia odstępu i tytuł dokumentu: |0123456789012345678901234567890123456789| |RAPORT ZMIANOWY | 5.jak w paragonie fiskalnym i np.dd| |Stan kasy: cccccccc.. 4. Raport kasy/zmiany składa się z następujących pól: 1..z' = 8-mio znakowe oznaczenie zmiany (przesłane z systemu). Napis 'niefiskalny' (+ linia odstępu). Nagłówek: ... 6.tt| |Ilość paragonów fiskalnych: ffffff| |Ilość paragonów anulowanych: aaaaaa| |Ilość stornowanych pozycji ssssss| |Wpłaty do kasy: iiiiiiii.'gg:mm' = data / godzina początku i końca zmiany. 'ssssss' = 6-cio cyfrowa ilość pozycji "stornowanych" wydrukowanych w trakcie zmiany. 'ttt.c' = aktualny stan gotówki w kasie. 56 . 2.. Linia odstępu i kolejne pozycje raportu: |0123456789012345678901234567890123456789| |Zmiana: zzzzzzzz | |Kasjer: kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk| |Sprzedaż: tttttttt. 'ffffff' = 6-cio cyfrowa ilość paragonów fiskalnych wydrukowanych w trakcie zmiany. 3. Str. 'rr-mm-dd'.cc| |Początek zmiany: rr-mm-dd gg:mm| |Koniec zmiany: rr-mm-dd gg:mm| gdzie: 'zzz.t' = całkowity obrót na kasie w trakcie zmiany. 'iii.d' = suma wypłat z kasy wykonanych w trakcie zmiany. Linia odstępu i końcowy napis: 'niefiskalny' (podwójna szerokość).3 znakowe oznaczenie dnia tygodnia dopisywane przez drukarkę.Drukarka Fiskalna POSNET Thermal i 3001 Raport kasy / zmiany.

kk| gdzie: 'kkk. Linia odstępu i końcowy napis: 'niefiskalny' (podwójna szerokość). Ten wydruk zawiera informację o ilości gotówki w kasie i jest inicjowany przez sekwencję LBCSHSTS..kk| gdzie: 'kkk. Data i godzina drukowania dokumentu: |0123456789012345678901234567890123456789| |rr-mm-dd gg:mm| 3.Drukarka Fiskalna POSNET Thermal i 3001 Wpłata do kasy.. Linia odstępu i informacja o wpłaconej kwocie: |0123456789012345678901234567890123456789| |Wpłata do kasy: kkkkkkkk. przesłana z systemu. Napis 'niefiskalny' (+ linia odstępu).k' = wpłacona kwota. 2. Linia odstępu i końcowy napis: 'niefiskalny' (podwójna szerokość). Wypłata z kasy. 4. Raport niefiskalny wpłaty do kasy składa się z następujących pól: 1. Raport niefiskalny stanu kasy składa się z następujących pól: 1. 2. 57 . Stan kasy. Data i godzina drukowania dokumentu: w formacie: |0123456789012345678901234567890123456789| Str. Napis 'niefiskalny' (+ linia odstępu). Wpłata do kasy jest inicjowana przez sekwencje LBINCCSH i powoduje zwiększenie ilości gotówki w kasie o przesłaną kwotę. Linia odstępu i informacja o wypłaconej kwocie: |0123456789012345678901234567890123456789| |Wypłata z kasy: kkkkkkkk. 4. Data i godzina drukowania dokumentu: |0123456789012345678901234567890123456789| |rr-mm-dd gg:mm| 3. Napis 'niefiskalny' (+ linia odstępu). Wypłata z kasy jest inicjowana przez sekwencję LBDECCSH i powoduje zmniejszenie ilości gotówki w kasie o przesłaną kwotę. przesłana z systemu.k' = wypłacona kwota. 2. Raport niefiskalny wypłaty z kasy składa się z następujących pól: 1.

gg:mm| Raport zmiany stawek PTU. Str.kk| gdzie: 'kkk. powodującej zapis nowych stawek PTU (w trybie fiskalnym zapis jest trwały i zapisywany w module fiskalnym).Drukarka Fiskalna POSNET Thermal i 3001 |rr-mm-dd 3.. obliczana na bieżąco przez drukarkę. ‘XX’ – 2 literowe oznaczenie urządzenia.. Raport zmiany stawek PTU składa się z następujących pól: 1. UWAGA: . 4.. Numer unikatowy kasy: |0123456789012345678901234567890123456789| |XX nnnnnnnn | gdzie: 'nnnnnnnnn' = 8-mio cyfrowa końcówka numeru unikatowego urządzenia (w tym przypadku 2 literowe oznaczenie urządzenia XX jest drukowane także w trybie niefiskalnym). niefiskalny dokument kontrolny dla serwisu. Tytuł dokumentu (+ linia odstępu): |0123456789012345678901234567890123456789| |Zmiana stawek PTU | 3. F).k' = ilość gotówki w kasie. maksimum 6 stawek (A . Nowe wartości stawek PTU: przesłane z systemu (drukowane są tylko uaktywnione stawki): |0123456789012345678901234567890123456789| |PTU A aa % | |PTU B bb % | |PTU C cc % | |PTU D dd % | |PTU E ee % | |PTU F ff % | gdzie: 'aa'.w drukarce można zdefiniować minimum jedną stawkę PTU (A). Linia odstępu i informacja o ilości gotówki w kasie: |0123456789012345678901234567890123456789| |Stan kasy: kkkkkkkk. Linia odstępu i końcowy napis: 'niefiskalny' (podwójna szerokość).istnieje możliwość zdefiniowania stawek PTU z dokładnością większą niż 1% . Data i godzina wprowadzenia zmiany: (po jednej linii odstępu): |0123456789012345678901234567890123456789| |rr-mm-dd gg:mm| 5. 2. drukowany po zrealizowaniu (poprawnym) sekwencji sterującej LBSETPTU. wtedy format drukowania stawki jest następujący: |0123456789012345678901234567890123456789| |PTU A aa. 58 .. Napis 'niefiskalny' (+ linia odstępu). 4. Jest to krótki. na podstawie należności uiszczonych przez klientów oraz wpłat i wypłat z kasy.'ff' = dwucyfrowe wartości stawek PTU wyrażone w procentach.aa% | .

Oczywiście nie ma wtedy komunikatu: ‘Wykonać fiskalizację T/N ?’ na wyświetlaczu operatora. 3. UWAGA: Począwszy od wersji 17.1 wydruk kontrolny nagłówka jest drukowany również w przypadku. Data i godzina zerowania RAM: (po jednej linii odstępu): |0123456789012345678901234567890123456789| |rr-mm-dd gg:mm| 4. Linia odstępu i końcowy napis 'niefiskalny' (podwójna szerokość). ponieważ nie ma możliwości skorygowania nagłówka po jego trwałym zapisie w module fiskalnym !!. to należy przerwać operację klawiszem NIE. Wydruk ten umożliwia wzrokową kontrolę poprawności przygotowania i przesłania nagłówka przed ostatecznym zatwierdzeniem wykonania fiskalizacji (klawiszem TAK). 59 . następnie po jednej linii odstępu jest drukowana zawartość nagłówka paragonu przesłana przez system do drukarki w sekwencji fiskalizującej LBSETHDR. Tytuł dokumentu: (+ linia odstępu).numer zerowania RAM (dopuszczalne max 49 zerowań). Po wydrukowaniu nagłówka drukowane są 3 znaki zapytania '???' . pomyłka w NIP oznacza konieczność naprawy drukarki u producenta czyli w firmie POSNET. Raport zerowania RAM składa się z następujących pól: 1. |0123456789012345678901234567890123456789| |Zerowanie RAM nr xx| gdzie : xx . gdy jest on wpisywany do pamięci RAM (w sposób nietrwały). Następnie drukowany jest końcowy napis 'niefiskalny'.powinny znaleźć się na początku następnej linii.Drukarka Fiskalna POSNET Thermal i 3001 6. 5. będącej wynikiem wykrycia błędu sumy kontrolnej totalizerów (test jest przeprowadzany po włączeniu zasilania). Wydruk ten składa się z początkowego napisu 'niefiskalny' (tak jak dla wszystkich dokumentów niefiskalnych). Str. Jest to krótki. Wydruk zatwierdzany przez serwisanta zawiera tylko linię z NIP i wtedy trzy znaki zapytania ??? powinny znaleźć się bezpośrednio pod słowem NIP!. Pozostała część nagłówka zapisywana jest do pamięci RAM i pomyłka w tej części zawsze może zostać poprawiona przez serwisanta. Raport zerowania RAM. 2. Wydruk kontrolny nagłówka. niefiskalny dokument kontrolny dla serwisu. Numer unikatowy kasy: |0123456789012345678901234567890123456789| |DC nnnnnnnn | gdzie: 'nnnnnnnnn' = 8-mio cyfrowa końcówka numeru unikatowego urządzenia.jeżeli nagłówek jest prawidłowo zakończony znakiem końca linii . Jeżeli są dostrzeżone jakiekolwiek błędy w wydrukowanym nagłówku. drukowany po automatycznej realizacji zerowania RAM. Napis 'niefiskalny' (+ linia odstępu). Linia odstępu i końcowy napis: 'niefiskalny' (podwójna szerokość).

Drukarka Fiskalna POSNET Thermal i 3001 Zwrot towaru.jj| |Czek xxxxxxxxxxxxxxxx : kkkkkkkk.ii| |Czek xxxxxxxxxxxxxxxx : jjjjjjjj.cc| |Karta xxxxxxxxxxxxxxxx : dddddddd. 2. Data i kolejny numer dokumentu NIEFISKALNEGO. 3.mm| |Bon xxxxxxxxxxxxxxxx : nnnnnnnn.ff| |Karta xxxxxxxxxxxxxxxx : gggggggg. Napis 'niefiskalny' (+ linia odstępu).dd| |Karta xxxxxxxxxxxxxxxx : eeeeeeee.tt| |STAN KASY: uuuuuuuu.kk| | | | # niefiskalny # | Wydruk raportu kasy / zmiany uwzględniającego formy płatności.qq| |Kaucja pobrana: rrrrrrrr.ee| |Karta xxxxxxxxxxxxxxxx : ffffffff. Format wydruku: |0123456789012345678901234567890123456789| | # niefiskalny # | |0123456789012345678901234567890123456789| | | |rr-mm-dd gg:mm| | | |Zwrot towaru: kkkkkkkk.nn| |Bon xxxxxxxxxxxxxxxx : oooooooo.kk| |Czek xxxxxxxxxxxxxxxx : llllllll.gg| |Karta xxxxxxxxxxxxxxxx : hhhhhhhh.hh| |Czek xxxxxxxxxxxxxxxx : iiiiiiii.rr| |ROZCHODY: | |Wypłaty z kasy: ssssssss.oo| |Bon xxxxxxxxxxxxxxxx : pppppppp. raporcie dobowym).pp| |Wpłaty do kasy: qqqqqqqq. |0123456789012345678901234567890123456789| |yy-mm-dd www kkkkkk| 4. Nagłówek (jak w paragonie fiskalnym i np.ll| |Bon xxxxxxxxxxxxxxxx : mmmmmmmm. Linia odstępu i tytuł dokumentu: |0123456789012345678901234567890123456789| |RAPORT ZMIANOWY | 5.ss| |Kaucja zwrócona: tttttttt.bb| |Karta xxxxxxxxxxxxxxxx : cccccccc.zz| |Karta xxxxxxxxxxxxxxxx : aaaaaaaa. Linia odstępu i kolejne pozycje raportu: |0123456789012345678901234567890123456789| |Zmiana: zzzzzzzz | |Kasjer: kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk| |PRZYCHODY: | |Sprzedaż gotówkowa: zzzzzzzz.aa| |Karta xxxxxxxxxxxxxxxx : bbbbbbbb. Ten raport kasy/ zmiany jest inicjowany przez sekwencje LBCSHREP1 i zawiera pozycje opisane poniżej: 1.uu| |Ilość paragonów fiskalnych: vvvvv| |Ilość paragonów anulowanych: wwwww| |Ilość stornowanych pozycji xxxxx| |Początek zmiany: rr-mm-dd gg:mm| |Koniec zmiany: rr-mm-dd gg:mm| Linie opcjonalne (nie muszą być drukowane !) Str. 60 .

|0123456789012345678901234567890123456789| |Kasa: kk Kasjer: lllll | gdzie: 'kk'.napisy przesłane w sekwencji.Linia odstępu 14... Linia odstępu i końcowy napis 'niefiskalny' (podwójna szerokość).'yyyyyyyyyyyyyyy' ..napis przesłany w sekwencji... |0123456789012345678901234567890123456789| |TID: xxxxxxxx UID: yyyyyyyyyyyyyyy| gdzie: 'xxxxxxxx'.. 3 linie wolne i miejsce na podpis.'mm'. Linia identyfikująca stanowisko sprzedaży (jeżeli parametr Ps nie występuje lub jest równy 0). 11... Nagłówek (jak w paragonie fiskalnym i np. Identyfikacja karty kredytowej...Linia odstępu 12..'yy' .z'. |0123456789012345678901234567890123456789| |Karta: zzzzzzzzzzzzzzzz | | cccccccccccccccccccc.. 61 ..napisy przesłane w sekwencji.Drukarka Fiskalna POSNET Thermal i 3001 6. | | Podpis posiadacza karty | 15. 10. raporcie dobowym).Formula przyjęcia zobowiązania. |0123456789012345678901234567890123456789| |Numer autoryzacji: aaaaaaaaa | gdzie: 'aaaaaaaaa' .. Napis 'niefiskalny' (+ linia odstępu)... Ważna do: mm/yy | gdzie: 'zz.'cc. 8.c'.Kod autoryzacji.'lllll' . 1. Data. 2. |0123456789012345678901234567890123456789| |yy-mm-dd www gg:mm kkkkkk| UWAGA: .napisy przesłane w sekwencji..Suma transakcji.w tej formatce drukujemy tez godzinę transakcji w tej linii 4.ss| 13. Linia odstępu 9.... Identyfikacja kontrahenta i urządzenia POLCARD'u. Format wydruku pokwitowania sprzedaży. |0123456789012345678901234567890123456789| |PROSZE OBCIAZYC MOJE KONTO | | | | | | | | .. Linia identyfikująca transakcje |0123456789012345678901234567890123456789| |Numer dowodu sprzedaży: nnnnnnnnnnnn| gdzie: 'nnnnnnnnnnnnn' .napis przesłany w sekwencji. 7.. godzina i kolejny numer dokumentu niefiskalnego. Linia odstępu 5... 3....Linia odstępu i końcowy napis 'niefiskalny' (podwójna szerokość) lub linia odstępu i opis: |0123456789012345678901234567890123456789| |Oryginał dla sprzedawcy | lub: |Kopia dla kupującego | Str.... |0123456789012345678901234567890123456789| |Sprzedaż: PLN ssssssss. 6.

.. 1. Linia odstępu 9.'cc. Data. 8.Linia odstępu 12....Drukarka Fiskalna POSNET Thermal i 3001 Format wydruku transakcji uznania. Ważna do: mm/yy | gdzie: 'zz. |0123456789012345678901234567890123456789| | | | | | | | .. |0123456789012345678901234567890123456789| |Karta: zzzzzzzzzzzzzzzz | | cccccccccccccccccccc.'lllll' .w tej formatce drukujemy tez godzinę transakcji w tej linii 4..Trzy linie wolne i miejsce na podpis..Linia odstępu i końcowy napis 'niefiskalny' (podwójna szerokość) lub linia odstępu i opis: |0123456789012345678901234567890123456789| |Oryginał’ dla sprzedawcy | lub: |Kopia dla kupującego | Str.napis przesłany w sekwencji. Linia odstępu 5.napisy przesłane w sekwencji. Nagłówek (jak w paragonie fiskalnym i np. 2. 7.ss| 13. Linia identyfikująca stanowisko sprzedaży (jeżeli parametr Ps nie występuje lub jest równy 0). | | Podpis posiadacza karty | 15.napis przesłany w sekwencji.. Napis 'niefiskalny' (+ linia odstępu)..napisy przesłane w sekwencji.. Identyfikacja kontrahenta i urządzenia POLCARD'u. Linia identyfikująca transakcje |0123456789012345678901234567890123456789| |Numer dowodu sprzedaży: nnnnnnnnnnnn | gdzie: 'nnnnnnnnnnnnn' .'yy' . |0123456789012345678901234567890123456789| |Numer autoryzacji: aaaaaaaaa | gdzie: 'aaaaaaaaa' . 10.. |0123456789012345678901234567890123456789| |TID: xxxxxxxx UID: yyyyyyyyyyyyyyy| gdzie: 'xxxxxxxx'. 6.. raporcie dobowym). |0123456789012345678901234567890123456789| |Uznanie: PLN ssssssss. 3..Kod autoryzacji. 62 .Suma transakcji uznania.........c'.. |0123456789012345678901234567890123456789| |yy-mm-dd www gg:mm kkkkkk| UWAGA: .z'.Linia odstępu 14.'mm'. godzina i kolejny numer dokumentu NIEFISKALNEGO. 11...... Identyfikacja karty kredytowej.'yyyyyyyyyyyyyyy' .. |0123456789012345678901234567890123456789| |Kasa: kk Kasjer: lllll| gdzie: 'kk'..napisy przesłane w sekwencji.

63 . Format wydruku: |0123456789012345678901234567890123456789| | # niefiskalny # | (nagłówek) |yy-mm-dd www gg:mm kkkkkk| | Rozpoczęcie pracy kasjera | |Kasjer: kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk| |Numer kasy: nnnnnnnn| | # niefiskalny # | Wylogowanie kasjera. Format wydruku: |0123456789012345678901234567890123456789| | # niefiskalny # | (nagłówek) |yy-mm-dd www gg:mm kkkkkk| | Zakończenie pracy kasjera | |Kasjer: kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk| |Numer kasy: nnnnnnnn| | # niefiskalny # | Dokument "zwrot kaucji" Format wydruku: |0123456789012345678901234567890123456789| | # niefiskalny # | (nagłówek) |yy-mm-dd www gg:mm kkkkkk| |Zwrot kaucji: kkkkkkkkkkkkkkkkkkkk| | # niefiskalny # | Str.Drukarka Fiskalna POSNET Thermal i 3001 Logowanie kasjera.

Z]. F. czyli wykonuje się: BRUTTO[A] := 0. odczytywane są z niego aktualne wartości stawek PTU i chowane w tablicy STAWKA[A. • cena jednostkowa • ilość • kod stawki PTU. 64 . BRUTTO[B] := 0. że wynik mnożenia (zaokrąglony do dwóch miejsc po przecinku !) musi się zgadzać z dokładnością do +/. Różnego rodzaju obliczenia są wykonywane przez drukarkę w trakcie: • realizacji transakcji (drukowania paragonu fiskalnego). Str.1 % z przesłaną wartością BRUTTO. Wyszukiwany jest ostatni rekord (zapis) zmiany stawek PTU. W przypadku gdy wynik mnożenia nie mieści się w przedziale <0. • rabat/ dopłata procentowa lub kwotowa. E. Stawki te są wyznaczane przez procesor drukarki na podstawie przeszukania pamięci fiskalnej wykonanego po włączeniu zasilania. Oczywiście do wydruku i obliczeń wartości transakcji zostanie przyjęta przesłana (a nie obliczona) wartość BRUTTO. Z uwagi na konieczność zaokrągleń numerycznych wyników cząstkowych (i stanu totalizerów !) uzyskamy w obu przypadkach nieco różniące się wyniki. W drukarkach POSNET realizowana jest kontrola zgodności wartości BRUTTO dla linijki paragonu z wynikiem mnożenia <cena>*<ilość>. Z obliczeniowego i fiskalnego punktu widzenia w odniesieniu do każdego artykułu istotne są następujące informacje: • nazwa artykułu. Na początku realizacji transakcji (po odebraniu sekwencji LBTRSHDR) drukarka zeruje sumy sprzedaży w grupach podatkowych dla paragonu. Można zastosować do obliczenia podatku VAT różne wyrażenia: zarówno wychodząc z kwoty NETTO lub kwoty BRUTTO. podczas wykonywania transakcji drukarka otrzymuje z systemu kwoty BRUTTO dla poszczególnych pozycji paragonu (por. danych gdzie zawarte są informacje o kodach stawek PTU dla towarów o danych nazwach). Dlatego przyjęto sposób realizacji obliczeń numerycznych (wynikający z uzgodnień z Ministerstwem Finansów) oparty o założenie.F. Kontrola działa w ten sposób. Nazwa artykułu jest dla drukarki istotna ze względu na kontrolę poprawności kodu stawki PTU (drukarka posiada bazę. umieszczane w tablicy BRUTTO[A. BRUTTO[C] := 0. 2. • wartość pozycji BRUTTO. 1.. Z). C. w totalizerach drukarki są akumulowane wartości BRUTTO sprzedaży w poszczególnych grupach podatkowych (A.99*BRUTTO. Operacje rachunkowe wykonywane przez drukarkę. że w systemie sprzedaży detalicznej podstawowe znaczenie mają kwoty BRUTTO. Zmiana stawek PTU powoduje zapis nowych wartości do pamięci fiskalnej oraz wpisanie nowych wartości do tablicy. opis sekwencji LBTRSLN).. D. • drukowania raportu okresowego. Podczas realizacji transakcji drukarka otrzymuje z systemu informację o kolejnych pozycjach paragonu (sprzedanych artykułach). Stąd wynikają dwa fakty: 1. Punktem wyjścia do wszystkich obliczeń są aktualne wartości stawek podatkowych. Wstęp.Drukarka Fiskalna POSNET Thermal i 3001 9. B. Informacje te są przesłane w formie ciągu sekwencji LBTRSLN. Obliczenia realizowane w trakcie transakcji.01*BRUTTO> zostanie zgłoszony błąd #20.F]. • drukowania raportu dobowego.

Wystąpienie nadmiaru obliczeniowego spowoduje zgłoszenie błędu (w tym przypadku będzie to zgłoszone jako kod błędu 22 (błąd operacji STORNO) ponieważ nadmiar stałoprzecinkowy powoduje zmianę znaku wyniku !).F może być prowadzone na dwa sposoby * sumowanie podatku VAT obliczonego dla poszczególnych pozycji paragonu (w grupach podatkowych). * sumowanie kwot sprzedaży BRUTTO w grupach A.RABAT/100) { Pr=2 rabat procentowy} lub BRUTTO[PTU] := BRUTTO[PTU] + BRUTTO + DOPŁATA { Pr=3 dopłata kwotowa} lub BRUTTO[PTU] := BRUTTO[PTU] + BRUTTO*(1 + DOPŁATA/100) { Pr=4 dopłata procentowa } gdzie: RABAT. F lub Z. BRUTTO[F] := 0. wykonujemy: BRUTTO[PTU] := BRUTTO[PTU] + BRUTTO { Pr=0 brak rabatu/ dopłaty} lub BRUTTO[PTU] := BRUTTO[PTU] + BRUTTO . E. UWAGA: Naliczanie podatku VAT w grupach A. Zerowana jest też kwota należności dla klienta: P_TOTAL := 0. BRUTTO[E] := 0. W aktualnej wersji oprogramowania drukarki { Pr=3 dopłata kwotowa} { Pr=2 rabat procentowy} { Pr=1 rabat kwotowy } { Pr=0 brak rabatu/dopłaty} Str. (przyjęto oznaczenie P_TOTAL aby odróżnić tę wartość od kwoty TOTAL otrzymanej z systemu w sekwencji kończącej transakcję LBREXIT lub LBTRXEND).RABAT/100) lub P_TOTAL := P_TOTAL + BRUTTO + DOPŁATA lub P_TOTAL := P_TOTAL + BRUTTO*(1 + DOPŁATA/100) { Pr=3 dopłata procentowa } gdzie: RABAT. W ogólnym przypadku obie te metody dają nieco różniące się wyniki.DOPŁATA wartość pola RABAT w sekwencji LBTRSLN (procentowa lub kwotowa) umieszczana przez aplikację w zależności od parametru Pr (>0). Obie są również dopuszczalne.RABAT { Pr=1 rabat kwotowy } lub BRUTTO[PTU] := BRUTTO[PTU] + BRUTTO*(1 . ponieważ kwoty VAT drukowane na paragonie mają charakter informacyjny (rozliczenie podatnika następuje w oparciu o kwoty w raportach dobowych). (czyli zwiększamy kwotę należności dla klienta). BRUTTO[Z] := 0. Wszystkie wyżej wymienione obliczenia są prowadzone z precyzją 10-cyfrową. (czyli zwiększamy/zmniejszamy sprzedaż w wyspecyfikowanej grupie podatkowej). oraz: P_TOTAL := P_TOTAL + BRUTTO lub P_TOTAL := P_TOTAL + BRUTTO .RABAT lub P_TOTAL := P_TOTAL + BRUTTO*(1 . B. D. C.D i obliczenie kwot należnego podatku w grupach na podstawie sum obliczanych jak wyżej.. Wartość chwilowa P_TOTAL jest też w przypadku realizacji transakcji w trybie "On-Line" wysyłana na wyświetlacze LED i LCD/ VFD (wraz z nazwą towaru)..Drukarka Fiskalna POSNET Thermal i 3001 BRUTTO[D] := 0.DOPŁATA wartość pola RABAT w sekwencji LBTRSLN (procentowa lub kwotowa) umieszczana przez aplikację w zależności od parametru Pr (>0). z uwagi na zaokrąglenia numeryczne. Po otrzymaniu każdej pozycji (odebraniu sekwencji LBTRSLN) mamy wartość BRUTTO i kod stawki PTU = A. 65 .

Drukarka Fiskalna POSNET Thermal i 3001
przyjęto drugą z wymienionych metod - ponieważ poprawność naliczenia podatku jest w tym wariancie prostsza do skontrolowania. Po zakończeniu transakcji przez system (odebraniu poprawnej sekwencji LBTREXIT lub LBTRXEND) mamy zatem obliczone wartości: BRUTTO[A]...BRUTTO[F], BRUTTO[Z], P_TOTAL. Wynik P_TOTAL porównujemy z wartością TOTAL otrzymaną z systemu w sekwencji LBTREXIT lub LBTRXEND. Dla poprawnego zakończenia transakcji wymaga się, aby obie te kwoty były jednakowe. Jeżeli w sekwencji LBTREXIT (lub LBTRXEND ) przesłano niezerową wartość rabatu Pr wyrażona w [%] to dokonujemy korekcji sum BRUTTO[A]..BRUTTO[Z]: BRUTTO[A] := BRUTTO[A] * (1 - Pr / 100), BRUTTO[B] := BRUTTO[B] * (1 - Pr / 100), BRUTTO[C] := BRUTTO[C] * (1 - Pr / 100), BRUTTO[D] := BRUTTO[D] * (1 - Pr / 100), BRUTTO[E] := BRUTTO[C] * (1 - Pr / 100), BRUTTO[F] := BRUTTO[D] * (1 - Pr / 100), BRUTTO[Z] := BRUTTO[Z] * (1 - Pr / 100). Jeżeli w sekwencji LBTREXIT (lub LBTRXEND )przesłano niezerowy parametr Px (Px = rodzaj rabatu (niezależny od parametru Pr !) = 0: brak,1: rabat procentowy,2: dopłata procentowa) to kwoty BRUTTO[PTU] zostaną obliczone wg wzoru BRUTTO[PTU]:= BRUTTO[PTU]*( 1 ± RABAT/100 ) gdzie: RABAT - wartość procentowa rabatu (Px=1) lub dopłaty (Px=2) przesłana w sekwencji LBTREXIT w polu RABAT

Tak uzyskane wyniki zaokrąglamy do najmłodszej pozycji (0,01 zł). Następnie obliczamy wielkości pomocnicze: NETTO[A] := BRUTTO[A] / (1 + STAWKA[A] / 100), NETTO[B] := BRUTTO[B] / (1 + STAWKA[B] / 100), NETTO[C] := BRUTTO[C] / (1 + STAWKA[C] / 100), NETTO[D] := BRUTTO[D] / (1 + STAWKA[D] / 100), NETTO[E] := BRUTTO[E] / (1 + STAWKA[E] / 100), NETTO[F] := BRUTTO[F] / (1 + STAWKA[F] / 100). (te wartości też zaokrąglamy do najmłodszej cyfry). Ostatecznie obliczamy wartości podatku VAT w grupach podatkowych: VAT[A] := BRUTTO[A] - NETTO[A], VAT[B] := BRUTTO[B] - NETTO[B], VAT[C] := BRUTTO[C] - NETTO[C], VAT[D] := BRUTTO[D] - NETTO[D], VAT[E] := BRUTTO[E] - NETTO[E], VAT[F] := BRUTTO[F] - NETTO[F]. Teraz drukujemy na paragonie te wartości BRUTTO[A]...BRUTTO[F], oraz VAT[A]...VAT[F], które są niezerowe. Podobnie drukujemy kwotę BRUTTO[Z], jeżeli jest niezerowa. Jeżeli nie występuje rabat, to drukujemy kwotę końcową P_TOTAL (równą TOTAL) drukiem o podwójnej szerokości jako kwotę do zapłacenia przez klienta. Jeżeli natomiast występuje rabat, to kwotę tę drukujemy w linii o pojedynczej szerokości (pod hasłem 'Kwota:'). W następnej drukujemy linii wielkość rabatu Pr, natomiast sumę należności dla klienta wyliczamy jeszcze raz: P_TOTAL := BRUTTO[A] + ...... + BRUTTO[F] + BRUTTO[Z]; (ponieważ kwoty po prawej stronie równania zostały przeliczone wcześniej przy uwzględnieniu wielkości rabatu). Tak uzyskaną sumę drukujemy w linii o podwójnej szerokości (pod hasłem 'Suma zł'), jako ostateczną kwotę należności dla klienta. Jeżeli paragon kończono sekwencją LBTRXEND z uwzględnieniem kaucji, to ostateczna kwota do zapłaty przez klienta jest liczona wg wzoru:

Str. 66

Drukarka Fiskalna POSNET Thermal i 3001
P_TOTAL := BRUTTO[A] + ...+ BRUTTO[F] + BRUTTO[Z] + KAUCJA_POBRANA -KAUCJA_ZWROCONA; Jeżeli w sekwencji kończącej transakcję aplikacja przesłała też wartość wpłaty przez klienta (WPLATA), to obliczamy: RESZTA := WPLATA - P_TOTAL; Jeżeli wynik jest dodatni, to drukujemy na paragonie dodatkowe dwie linie zawierające wielkość wpłaty oraz reszty. Ostatnim etapem realizacji transakcji jest aktualizacja totalizerów. Totalizery drukarki zawierają następujące lokacje: * kwoty sprzedaży BRUTTO w grupach podatkowych: TOT[A], TOT[B], TOT[C], TOT[D], TOT[E], TOT[F], TOT[Z], oraz * licznik paragonów fiskalnych PAR_NUM. Licznik paragonów fiskalnych ma zakres 0.. 999999 i jest zwiększany przed wydrukowaniem jego wartości w stopce paragonu (ponieważ jego początkowa wartość, uzyskana podczas fiskalizacji lub zerowania RAM wynosi 0). Z kolei kwoty sprzedaży są aktualizowane zgodnie z kwotami BRUTTO obliczonymi dla paragonu w grupach podatkowych: TOT[A] := TOT[A] + BRUTTO[A], TOT[B] := TOT[B] + BRUTTO[B], TOT[C] := TOT[C] + BRUTTO[C], TOT[D] := TOT[D] + BRUTTO[D], TOT[E] := TOT[E] + BRUTTO[E], TOT[F] := TOT[F] + BRUTTO[F], TOT[Z] := TOT[Z] + BRUTTO[Z]. Zakres licznika paragonów na raporcie dobowym wynosi: 999999 ,zakresy każdej z kwot (sprzedaż dobowa) wynoszą 2.684.354,55 (228-1) . Jeżeli w wyniku wykonania sekwencji LBTREXIT (lub LBTRXEND ) wystąpi błąd nr 28 (przepełnienie totalizerów), czyli obrót dzienny w co najmniej jednej z grup podatkowych przekracza powyższy zakres należy wykonać raport dobowy i ponowić wykonanie transakcji.

Str. 67

Drukarka Fiskalna POSNET Thermal i 3001
Obliczenia realizowane w trakcie drukowania raportu dobowego.
Wykonanie raportu dobowego jest związane z następującymi operacjami: • dzienna sprzedaż BRUTTO w grupach podatkowych (wartości TOT[A]...TOT[Z] zostaje przepisana z totalizerów drukarki (które stanowią fizycznie lokacje pamięci RAM nieulotnej), do pamięci fiskalnej (pamięci trwałej PROM !), • po dokonaniu tego zapisu lokacje totalizerów są zerowane, • drukowany jest odpowiedni raport na drukarce paragonowej, zawierający kwoty NETTO sprzedaży w grupach podatkowych, kwoty należnego podatku dla danych grup podatkowych, łączną kwotę należnego podatku oraz łączny obrót. Technika obliczania danych dla raportu dobowego ma fundamentalne znaczenie, ponieważ stanowią one podstawę do rozliczenia podatnika VAT - w odróżnieniu od danych o należnym podatku zawartych na paragonach, które mają charakter wyłącznie informacyjny. Niezależnie od przyjętej implementacji obliczania VAT dla paragonów, z uwagi na zaokrąglenia numeryczne, podatek VAT obliczany na podstawie dziennej sprzedaży w grupach podatkowych z reguły będzie nieco się różnić od kwot uzyskanych ze zsumowania kwot należnego podatku drukowanych na paragonach w danym okresie. Przyjęty sposób naliczania podatku dla raportu dobowego został uzgodniony z Ministerstwem Finansów i jest następujący. 1.) Kwoty sprzedaży NETTO dla poszczególnych grup podatkowych są wyliczane na podstawie kwot sprzedaży BRUTTO akumulowanych w totalizerach drukarki, zwiększanych z każdą transakcją (TOT[A]...TOT[D]), oraz tablicy aktualnych stawek PTU (STAWKA[A]..STAWKA[F]) : R_NETTO[A] := TOT[A] / (1 + STAWKA[A] / 100), R_NETTO[B] := TOT[B] / (1 + STAWKA[B] / 100), R_NETTO[C] := TOT[C] / (1 + STAWKA[C] / 100), R_NETTO[D] := TOT[D] / (1 + STAWKA[D] / 100), R_NETTO[E] := TOT[E] / (1 + STAWKA[E] / 100), R_NETTO[F] := TOT[F] / (1 + STAWKA[F] / 100). (przyjęto oznaczenia R_NETTO[A]...R_NETTO[F] dla odróżnienia od analogicznych kwot wyliczanych dla paragonu). Wyniki powyższych wyrażeń są zaokrąglane do najmłodszej pozycji tj. 0,01 zł . 2.) Na raporcie są zawsze drukowane kwoty R_NETTO[A]..R_NETTO[F] dla „aktywnych” stawek PTU(nawet jeżeli odpowiednie kwoty są zerowe !). Kwoty te są na raporcie opatrzone tytułem: 'SPRZED. OPODATK. PTU x', gdzie 'x' = 'A'..'F' - identyfikuje grupę podatkową. Ponadto zawsze jest drukowana sprzedaż w grupie zwolnionej od podatku, akumulowana w lokacji totalizera TOT[Z], oznaczona tytułem: 'SPRZEDAŻ ZW. PTU'. 3.) Obliczane są kwoty należnego podatku VAT dla poszczególnych grup A..F, wg wyrażeń: R_VAT[A] := TOT[A] - R_NETTO[A], R_VAT[B] := TOT[B] - R_NETTO[B], R_VAT[C] := TOT[C] - R_NETTO[C], R_VAT[D] := TOT[D] - R_NETTO[D], R_VAT[E] := TOT[E] - R_NETTO[E], R_VAT[F] := TOT[F] - R_NETTO[F]. (przyjęto oznaczenia R_VAT[A]...R_VAT[F] dla odróżnienia od analogicznych kwot wyliczanych dla paragonu). Zwróćmy uwagę, że te kwoty już nie wymagają zaokrąglenia. 4.) Na raporcie dobowym są drukowane tylko te z kwot R_VAT[A]...R_VAT[F], które są niezerowe. 5.) Obliczamy łączną kwotę należnego podatku oraz łączną sprzedaż: TOT_VAT := R_VAT[A] + .... + R_VAT[F], R_TOTAL := TOT[A] + ....... + TOT[F] + TOT[Z], (te obliczenia są prowadzone z precyzją 14-cyfrową, stąd nadmiar arytmetyczny nie może wystąpić, nawet jeżeli wartości lokacji totalizerów TOT[A]..TOT[F] są bliskie maksymalnym). 6.) Obie kwoty są drukowane na raporcie dobowym i opatrzone tytułami:

Str. 68

RO_VAT[C] := RO_VAT[C] + RD_VAT[C]. Znajdowany jest ostatni zapis o zmianach stawek PTU przed datą początkową raportu. zmiany stawek PTU. Jeżeli w trakcie drukowania raportu zostanie odkryty zapis o zmianie stawek (sygnalizowany opisem: "Zmiana stawek PTU").RD_VAT[F] są wartościami obliczonymi dla danego raportu dobowego zapisanego w pamięci fiskalnej.. RO_VAT[D] := RO_VAT[D] + RD_VAT[D].RD_NETTO_[F]. Jest to oczywiste zważywszy. Podstawowe znaczenie z fiskalnego i obliczeniowego punktu widzenia mają tu oczywiście raporty dobowe.Drukarka Fiskalna POSNET Thermal i 3001 'ŁĄCZNA KWOTA PTU' oraz 'ŁĄCZNA NALEŻNOŚĆ'. z tą różnicą. wreszcie: RO_TOT_VAT := RD_VAT[A] + RD_VAT[B] + . RO_NETTO[B] := RO_NETTO[B] + RD_NETTO[B]. RO_NETTO[E] := RO_NETTO[E] + RD_NETTO[E].TOT[Z]) pochodzą w tym momencie nie z totalizerów drukarki (jak w raporcie dobowym). Wyznaczone stawki są drukowane w nagłówku raportu okresowego pod tytułem: 'POCZĄTKOWE WARTOŚCI STAWEK PTU'. Obliczenia realizowane w trakcie drukowania raportu okresowego.. + RD_TOT[F] + RD_TOT[Z]. W trakcie wykonywania raportu okresowego zapisy te są zatem odczytywane po kolei i wykonywane są identyczne obliczenia jak dla raportu dobowego.. Podstawowa część raportu okresowego składa się z sekwencyjnego opisu poszczególnych rekordów (zapisów) w pamięci fiskalnej. Technika obliczeniowa dla opisów poszczególnych raportów dobowych drukowanych w obrębie raportu okresowego jest identyczna jak opisana w poprzednim punkcie. + RD_VAT[F]. Zapisy te mogą dotyczyć różnych sytuacji . Ponieważ licznik paragonów fiskalnych drukarki (lokacja PAR_NUM totalizerów) zlicza permanentnie paragony (nie jest zerowany w momencie drukowania raportu dobowego !) ilość ta jest wyznaczana przez znalezienie poprzedniego raportu dobowego i odjęcie schowanej poprzednio wartości licznika od stanu aktualnego (zwróćmy uwagę.. Na raporcie dobowym jest również drukowana ilość paragonów fiskalnych wydrukowanych od ostatniego raportu dobowego. Druga istotna różnica dotyczy stawek PTU.RD_TOT[F] są stanem totalizera odczytanym z pamięci fiskalnej (kwoty BRUTTO !). RO_TOTAL := RD_TOT[A] + RD_TOT[B] + . Str. że dane wejściowe (w powyższych wyrażeniach TOT[A]. a wartości RD_TOT[A].. Obliczenia danych dla pierwszego raportu dobowego ujętego w raporcie okresowym zakładają zapisane w nagłówku wartości stawek. RO_NETTO[C] := RO_NETTO[C] + RD_NETTO[C].... RO_NETTO[F] := RO_NETTO[F] + RD_NETTO[F]. zerowania RAM i inne. 69 . RO_VAT[F] := RO_VAT[F] + RD_VAT[F]. po obliczeniu i wydrukowaniu danych dla każdego z odczytanych raportów dobowych obliczamy (w przypadku zdefiniowania czterech stawek PTU ): RO_NETTO[A] := RO_NETTO[A] + RD_NETTO[A]. RO_VAT[B] := RO_VAT[B] + RD_VAT[B].. że jeżeli poprzednio było zerowanie RAM to licznik paragonów był wyzerowany !). Przed rozpoczęciem drukowania raportu drukarka przeszukuje pamięć fiskalną w celu wyznaczenia stawek PTU na początku raportu.... RD_VAT[A].mogą to być raporty dobowe. RO_VAT[E] := RO_VAT[E] + RD_VAT[E]. Uzyskana różnica jest drukowana na paragonie pod tytułem: 'ILOŚĆ PARAGONÓW'.. że wykonanie raportu dobowego polega między innymi na trwałym wpisaniu stanu totalizerów drukarki do pamięci fiskalnej.. RO_NETTO[D] := RO_NETTO[D] + RD_NETTO[D]... oraz: RO_VAT[A] := RO_VAT[A] + RD_VAT[A]. gdzie RD_NETTO[A]... Podczas drukowania raportu okresowego obliczane są na bieżąco sumy kwot NETTO i kwot VAT dla całego raportu tj. lecz z pamięci fiskalnej.. to dalsze obliczenia dla raportów dobowych będą prowadzone w oparciu o zmienione wartości stawek PTU.

RO_NETTO[F]..999. Uzyskane kwoty RO_NETTO[A]. RD_TOT_VAT. 70 . Z tego względu (nawet jeżeli stawki PTU w trakcie drukowania całego raportu są stałe) kontrola obliczenia kwot należnego podatku w oparciu o sumy RO_NETTO[A].999.999.Drukarka Fiskalna POSNET Thermal i 3001 Wszystkie wyżej wymienione obliczenia są prowadzone z precyzją 14-cyfrową. RD_TOT_VAT.. co daje maksymalny możliwy obrót na kasie w okresie objętym raportem okresowym równy: 999..RO_NETTO[F]. RD_TOTAL są drukowane na końcu raportu.RO_NETTO[F] może wykazać w ogólnym przypadku nieznaczny błąd obliczeniowy (zaokrąglenia kwot cząstkowych RO_NETTO[A]. Str. Kwoty RO_NETTO[A].. RO_VAT[A]. RD_TOTAL są zatem po prostu sumami odpowiednich pozycji z poszczególnych raportów cząstkowych. RO_VAT[A].99 zł nie należy zatem spodziewać się nadmiaru arytmetycznego. ze względu na sygnalizowane wcześniej możliwe zmiany stawek PTU.RO_VAT[F].. w jego podsumowaniu zatytułowanym: 'ŁĄCZNY RAPORT FISKALNY OKRESOWY'.. Zwróćmy uwagę. że nie może być inaczej.RO_VAT[F].RO_NETTO[F] !).

W odpowiedzi na żądanie wysłania statusu (ENQ) drukarka wysyła 1 bajt o następującym formacie: 7 0 gdzie: FSK CMD PAR TRF 6 1 5 1 4 0 3 FSK 2 CMD 1 PAR 0 TRF 6 1 5 1 4 1 3 0 2 ONL 1 PE 0 ERR = 0: drukarka jest w trybie szkoleniowym. jeżeli rozkaz następujący po ESC P nie jest żądaniem wysłania statusu LBFSTRQ i ustawiony po jego poprawnym wykonaniu).. 3. W drukarce rozpoznawane są 3 kody sterujące: ENQ ($05) .1 lub 2 znaki (z kolumn $2x.3 (POSNET 3001) i 39.opcjonalna lista parametrów numerycznych w zakresie 0.wartość tego bitu przetestowana przez aplikację będzie poprawna (program pracy drukarki gwarantuje ponadto..$4x.. co pozwala zawsze na ich identyfikację (małe litery nie mogą występować w odpowiedzi statusowej LBFSTRS). 39. .$7x) . . Str. aktualizacji totalizerów i ustawienia TRF są NIEROZŁĄCZNE !). ERR = 1: stan "Błąd mechanizmu/ sterownika". Zwróćmy uwagę.. Bit TRF jest przechowywany w pamięci. = 1: drukarka jest w trybie fiskalnym. że kod ten daje komunikaty z zakresu $70.przerwanie interpretacji rozkazu (^X).Zestaw rozkazów drukarek.$6F (zakres małych liter). xx . że w przypadku anulowania paragonu oba bity zostaną w stanie 0.żądanie wysłania statusu (^E).1B (Beetle 20) Daje to możliwość odczytu statusu . stąd nawet jeżeli wystąpi awaria zasilania 220V między momentem zakończenia transakcji a testowaniem statusu .np. CAN ($18) . UWAGA: 1. Ogólne zasady syntaktyki komend. 71 . = 1: drukarka jest w trybie transakcji (po wykonaniu sekwencji LBTRSHDR. Ps xx <string> cc ESC \ gdzie: Ps . = 1: ostatnia transakcja została sfinalizowana poprawnie (bit ustawiony po poprawnej realizacji sekwencji LBTREXIT lub LBTRXEND. = 1: ostatni rozkaz został wykonany poprawnie (bit jest kasowany po odebraniu ESC P. a więc inne niż pozostałe odpowiedzi statusowe (w tym odpowiedź na ENQ). W odpowiedzi na kod DLE ($10) drukarka odsyła jednobajtowy status w formacie: 7 0 gdzie: ONL = 1: stan "On-Line". DLE ($10) – odczyt statusu drukarki działający także w trybie OFF-LINE !!! Od wersji 39. 2.sygnał dźwiękowy (^G). Wszystkie pozostałe sekwencje mają jednolity format: ESC P Ps . że niezależnie od awarii zasilania operacje wydrukowania paragonu. BEL ($07) . przed wykonaniem sekwencji LBTREXIT lub LBTRXEND). Zwróćmy uwagę. PE = 1: stan "Brak Papieru". Możliwe odpowiedzi statusowe (ENQ) są z zakresu $60... a kasowany po poprawnej realizacji LBTRSHDR).255.identyfikator rozkazu.1 (Thermal).$77. brak papieru lub sytuacje błędne.Drukarka Fiskalna POSNET Thermal i 3001 10.

bajt kontrolny. np.3. end. Następujące kody błędów mogą dotyczyć różnych sekwencji sterujących: 1 : nie zainicjalizowany zegar RTC (blokada wszystkich sekwencji oprócz ustawiania zegara.parametr napisowy. zakodowany jako 2 cyfry HEX (EXOR wszystkich znaków za ESC P do tego bajtu z wartością początkową = #255).Drukarka Fiskalna POSNET Thermal i 3001 <string> . dokładnie według następującego algorytmu w języku PASCAL: begin check := 255.'f'). 2. Należy zwrócić uwagę. Str.. s := s + c. end. end.'a'.. Po odebraniu sekwencji może się pojawić komunikat o błędzie: 'Błąd rozkazu: "xx" ' 'Kod błędu : yy '. 72 . b : byte. ciąg parametrów napisowych. begin s := ''. s : string. yy = 2 cyfry identyfikujące kod błędu. przy czym jeżeli yy = 00. odsyłania statusu i programowania trybu obsługi błędów). 4. korzystając z poniższej funkcji byte_to_hex: { *** konwersja liczby na string 'hex' *** } function word_to_hex (w: word) : string.. end. 4 : błąd parametru (parametrów).'A'. case b of 0. lub ciąg parametrów numerycznych (w zakresie 10-cyfrowym. Obliczoną w powyższej pętli liczbę check stanowiącą wartość bajtu kontrolnego należy przekodować na 2 znaki HEX (znaki ASCII ze zbioru: '0'.2).. to urządzenie odebrało niezidentyfikowany rozkaz. 3. for i:= 3 to length(sekwencja)-4 do check := check xor byte(sekwencja[i]).15 : c := char(b+$41-10). cc .np.. end. for i:= 0 to 3 do begin b := (hi(w) shr 4) and 15. begin byte_to_hex := copy(word_to_hex(word(b)). Z powyższego wynika. c : char.9 : c := char(b+$30).'F'. word_ to_hex := s. gdzie: xx = 2 litery identyfikujące rozkaz. w := w shl 4. 2 : błąd bajtu kontrolnego. 3 : zła ilość parametrów.'9'. var i : integer. ewentualnie z punktem dziesiętnym ). podczas drukowania raportu bazy danych drukarka nie rozpoznaje innych rozkazów niż związane z tym raportem. że do kontroli sekwencji nie bierzemy 2 pierwszych znaków (ESC P) oraz 4-ch ostatnich (2 znaki kodujące bajt kontrolny oraz terminator sekwencji ESC \). że rozkaz może być nie rozpoznany również ze względu na niewłaściwy tryb pracy drukarki . 10. 5 : błąd operacji z zegarem czasu rzeczywistego (RTC). Sekwencje: LBDSP oraz LBFSTRQ nie wymagają wysłania cyfr kontrolnych 'cc'. UWAGA : 1. {*** konwersja bajtu na 2 znaki ***} function byte_to_hex (b:byte) : string.

wszelkie możliwe dane przesyłane do drukarki mają postać znaków ASCII . to znaczy że może mieć dowolną wartość lub też może nie występować. zła ilość parametrów.drukowalnych (z wyjątkiem np. Pmn. 8. Pm. Str... Pmn= minuta = 0..2 znaki HEX. które należy przed wysłaniem poddać konwersji na ASCII (możliwa jest kompresja zer nieznaczących). błąd odczytu totalizerów.. Jeżeli parametr Ps jest ignorowany w kodach sterujących. Ps . 1950. Ps = sekunda = 0.99. Pm ... (dwie najmłodsze cyfry.. przy pomocy nagłówka ESC P). DLE. dla zmiany stawek PTU lub korekcji zegara !)..59 (parametr ignorowany).niezerowe totalizery !. 7. mających specjalne znaczenie).12.Py. że sekwencja ta obowiązuje dla każdej wersji drukarki POSNET Thermal i POSNET 3001. Powrót do interpretacji znaków sterujących ENQ. Ps $c <check> ESC \ gdzie: . błąd operacji . 7 : błąd daty . . Pm = numer miesiąca = 1..<check> . Ph . 5.czas w następującym formacie: Ph = godzina = 0. Numery błędów począwszy od 10 są specyficzne dla poszczególnych rozkazów. Pd . DLE i BEL wymaga odebrania przez drukarkę terminatora rozkazu: ESC \ .aktualnie ustawiona data jest wcześniejsza od daty ostatniego zapisu w pamięci fiskalnej.2049). Pd = dzień = 1. 6. 9 : błąd operacji I/O (np.. co jednak odpowiednio wpływa na wartość bajtu kontrolnego <check>. Pmn . 8 : błąd operacji: niezerowe totalizera (np. Kod błędu: =2: =3: =4: =5: =6: =7: =8: błąd bajtu kontrolnego.Ph. 73 . dotyczy to również wszelkich danych numerycznych. data wcześniejsza od daty ostatniego zapisu w pamięci fiskalnej (wykonanie niemożliwe !). Programowanie parametrów / sterowanie układem elektronicznym. CR itp.59. Odebranie przez drukarkę nagłówka rozkazu: ESC P powoduje zawsze zawieszenie interpretacji poprzedniego rozkazu (jeżeli nie uległ on jeszcze wykonaniu). Wystąpienie błędu syntaktyki lub wykonania rozkazu powoduje zawsze przerwanie interpretacji i wykonania oraz powrót do głównej pętli analizy syntaktyki (w której wykrywamy kody ENQ i BEL). Przykładowo interpretacja rozkazu LBDSP kończy się (niezależnie od jego wariantu) dopiero w momencie odebrania terminatora. . Ze względu na zapewnienie jednoznaczności interpretacji i możliwość "synchronizacji blokowej" (np. Opisane dalej sekwencje sterujące uwzględniają informacje od jakiej wersji firmware drukarki obowiązują (wersję firmware można odczytać obserwując wyświetlacz LCD drukarki po jej załączeniu)... z mechanizmem drukującym). Możliwe litery identyfikujące błędy podano na stronie 127..23. Pd . bajt kontrolny. zwłaszcza wobec możliwych przekłamań przy transmisji danych.31.. ESC P Py . ENQ.data w następującym formacie: Py = numer roku = 0. [LBSETCK]: Ustawienie zegara. błąd danych. chociaż w niektórych wariantach tej komendy znaki pomiędzy jej identyfikatorem ( $d ) a terminatorem ESC \ będą po prostu ignorowane. kodów ESC. O ile przy opisie sekwencji nie ma żadnej informacji o firmware oznacza to. błąd wykonania (zapisu) do zegara RTC.Drukarka Fiskalna POSNET Thermal i 3001 6 : błąd operacji z modułem fiskalnym.

Ps = 4 : przełączenie wyświetlacza LCD operatora z powrotem w tryb kasowy. Od wersji 39.. LBSETCK (ustawiania zegara) i sekwencji LBSERM (programowanie trybu obsługi błędów). że totalizery są zerowe (stan po wykonaniu raportu dobowego !). <check> : 2 cyfry HEX kodujące bajt kontrolny. ale pod warunkiem. Str.1 (Thermal). 39. Ps = 2 : wysłanie napisu do wyświetlacza LCD i dodatkowego wyświetlacza VFD. Sekwencja LBSETCK działa zawsze. [LBSETPTU] : Zmiana stawek PTU. ESC P Ps $p PTU_A / PTU_B / PTU_C / PTU_D / PTU_E / PTU_F / <check> ESC \ gdzie: Ps : 1. PTU_A/. W powyższej sytuacji (zegar zainicjalizowany) data jest ignorowana. 2. = 6 : błąd operacji z pamięcią fiskalną. napis <string> nie może zawierać sekwencji ESC. 5.. 2. [LBDSP]: Sterowanie wyświetlaczem / szufladą. ESC P Ps $d <string> ESC \ zależnie od parametru Ps: Ps = 1 : otwarcie szuflady.3 (3001) i 39.1 (Th). 39...1B (Beetle).. ' ' prześlij z systemu !'. W przypadku prawidłowego działania zegara możliwa jest korekta. = 5 : błąd operacji z RTC. ale powinna być wysyłana (dla zapewnienia jednolitej postaci syntaktyki). 4. CAN . DLE. 3. Od wersji: 39. 39.lista 1.6 stawek PTU (zgodnie z parametrem Ps) w formacie xx. W trybie transakcji parametr Ps może przyjmować wartości 1. bez zwolnionej. Poza trybem transakcji parametr Ps może przybierać wartości 1.yy . brak parametru lub wartość 0 powoduje przyjęcie domyślnie wartości 4 (zgodność w ‘dół’ z drukarkami POSNET wcześniej produkowanymi w wersji firmware < 17. Ps = 5 : wysłanie napisu tylko do wyświetlacza operatora (nie do wyświetlacza alfanumerycznego zewnętrznego !!) – obowiązuje od wersji: 39.5 lub 6. kodów BEL. Ps = 3 : przełączenie wyświetlacza LCD operatora w tryb wyświetlania zegara i daty.1).1B (Beetle 20) w przypadku ‘przekłamania’ zegara drukarki o więcej niż 2 lata od ostatniego zapisu (decyduje informacja zawarta w polu ‘rok’ ) pojawi się komunikat: ' Błąd zegara RTC.. = 11 : zła ilość wartości PTU. UWAGA. Jeżeli wystąpi w trybie transakcji co najmniej jedna sekwencja LBDSP definiująca kaucje >0 (Ps=6) to sekwencja LBTREXIT będzie zawsze dawać błąd #00 !! 3. jeżeli zegar RTC wymaga inicjalizacji (przy pierwszym włączeniu i po jego ewentualnym rozprogramowaniu w wyniku rozładowania baterii).5.. to zablokowane są wszystkie sekwencje sterujące oraz drukowanie raportów./PTU_F . = 2 : błąd bajtu kontrolnego.3 (POSNET 3001) i 39.6 = ilość stawek PTU. co jest sygnalizowane przez odpowiedni komunikat na wyświetlaczu: ' Błąd zegara RTC. ENQ. Parametr Ps=6 wymaga zastosowania sekwencji w nowym formacie uwzględniającym sumę kontrolną – patrz sekwencja LBDSPDEP opisana na stronie 79.niezerowe totalizery. Kod błędu: = 1 : nie zainicjalizowany zegar RTC. 74 ..1B (Beetle): 1.Drukarka Fiskalna POSNET Thermal i 3001 UWAGA: 1. = 8 : wykonanie niemożliwe . za wyjątkiem odsyłania statusu sekwencją LBFSTRQ. błąd liczby lub próba zdefiniowania takich samych stawek jakie są w pamięci fiskalnej drukarki . Jeżeli zegar nie jest prawidłowo zainicjalizowany.3 (3001) i 39. ' ' prześlij z systemu !'.1 (Th).

Ta operacja (jak wszystkie wykonujące trwały zapis w pamięci fiskalnej) wymaga potwierdzenia z klawiatury po uprzednim sprawdzeniu poprawności daty zegara drukarki. Sekwencje sterujące drukarki ESC. 6. Pozostałe informacje konieczne dla pracy kasy. Operacja fiskalizacji wymaga potwierdzenia z klawiatury. w szczególnym formacie : 22. Ps = 1 : wpisanie nagłówka do pamięci fiskalnej. <check> : bajt kontrolny (porównaj dalej). 5. = 4 : błąd parametru Ps. Fiskalizacji drukarki może dokonać tylko i wyłącznie przeszkolony SERWIS posiadający wydaną przez producenta (POSNET) ważną legitymację serwisanta !!!. są w obrębie nagłówka ZABRONIONE ! 6. to wystąpi wówczas sytuacja błędna .F ile wynosi liczba aktywnych stawek PTU. = 14 : próba przesłania do RAM nagłówka dla urządzenia sfiskalizowanego (o ile drukarkę zafiskalizowano wpisując do modułu fiskalnego cały nagłówek). Jeżeli poszczególne linie nagłówka będą rozdzielone przez CR_LF.0 / 7. Pojawia się pojęcie „aktywnej stawki PTU”.. ESC P Ps $f <string> #255 <check> ESC \ gdzie: Ps = 0 : wpisanie nagłówka tylko do pamięci RAM. sekwencję LBTRSLN).6 stawek PTU w kolejności A. 3. Sprzedaż w stawce „nieaktywnej” jest zablokowana (por. LF oraz SO. w trybie szkoleniowym. = 13 : próba fiskalizacji sfiskalizowanego urządzenia . 2. 2. UWAGA: 1. DC4 (podwójna szerokość druku). ponieważ w obrębie nagłówka mogą występować dowolne znaki ASCII z obszaru $20. 4. to jest numer unikatowy i początkowe wartości stawek VAT (22 7 0 0) są wpisywane przez producenta. [LBSETHDR] : Programowanie nagłówka / fiskalizacja... W przypadku błędu wykonania (błąd zapisu do EPROM) dalsza praca drukarki zostanie zawieszona 2. powoduje nieodwracalną fiskalizację urządzenia ! Programistom dostosowującym swoje oprogramowanie nie wolno umieszczać w aplikacji sterującej drukarką komendy z parametrem Ps=1 (czyli praktycznie fiskalizację drukarki) !! . operacja wykorzystywana np. za długi lub zawierający nie dozwolone znaki). że są uaktywnione 3 stawki. Znakiem początku linii dla drukarki jest w obrębie nagłówka LF lub CR. Operacja fiskalizacji powoduje zerowanie totalizerów. 3.Drukarka Fiskalna POSNET Thermal i 3001 UWAGA: 1. ale odpowiedź statusowa LBFSTRS zawiera 4 kwoty co daje zgodność z wcześniejszymi wersjami. wybrane znaki sterujące oraz polskie litery.. Kod błędu: = 1 : nie zainicjalizowany zegar RTC. W odpowiedzi statusowej LBFSTRS jest wysyłana taka ilość kwot sprzedaży z grup A. Taki sposób fiskalizacji umożliwia umieszczenie pozostałych danych podatnika w pamięci RAM i ich ewentualną późniejszą zmianę. Str. Na raporcie dobowym są uwzględnione tylko kwoty sprzedaży w stawkach „aktywnych”. Taka definicja jest wprowadzana w procesie produkcji.F. które mogą mieć niezerową wartość po trybie szkoleniowym.pojawią się puste linie ! 5. 75 .0 / 0 / 0 4. z zastrzeżeniem z p..$7F. = 2 : błąd bajtu kontrolnego. Dla zgodności z wersjami wcześniejszymi zaleca się definiowanie 4-ch stawek PTU w drukarce. dozwolone są polskie litery (zgodne ze standardem MAZOWIA) kody CR. Wprowadzono możliwość fiskalizacji drukarki poprzez wpisanie na trwale tylko jednej linii zawierającej napis : NIP xxx-xxx-xx-xx. 7. Parametr Ps sekwencji LBSETPTU powoduje uaktywnienie 1. W takiej sytuacji drukarka zakłada. Możliwe jest zdefiniowanie od 1 do 6 stawek PTU (parametr Ps). terminatorem stringu jest w tym przypadku wyjątkowo kod #255 ( $FF ). <string> : maksymalnie 217 znaków ASCII. = 12 : błędny nagłówek (np.

Ps = 3 : wystąpienie błędu nie daje komunikatu i nie zawiesza przetwarzania + kod błędu jest po wykonaniu rozkazu automatycznie wysyłany do interfejsu.1 (Th). = 4 : błąd parametru Ps. Kody błędow: = 2 : błąd bajtu kontrolnego.wybór trybu obsługi sytuacji błędnych zależnie od parametru Ps: Ps = 0 : wystąpienie błędu w trakcie realizacji sekwencji powoduje wyświetlenie komunikatu i zatrzymanie przetwarzania. (tylko POSNET 2000 i starsze drukarki DF-301.1B (Beetle) i 32.1B (Beetle). ESC P Ps #e <check> ESC \ . 32.3 (3001) i 32.) Kody błędów: = 2 : błąd bajtu kontrolnego. aż do naciśnięcia klawisza ‘NIE’ Ps = 1 : wystąpienie błędu nie daje komunikatu i nie zawiesza przetwarzania.3 (3001).2 (POSNET 2000) także: Ps = 2 : wystąpienie błędu w trakcie realizacji sekwencji powoduje wyświetlenie komunikatu i zatrzymanie przetwarzania aż do naciśnięcia klawisza NIE + kod błędu jest po wykonaniu rozkazu automatycznie wysyłany do interfejsu. 39..2) ESC P Ps #x <check> ESC \ Sekwencja do wyłączania/ włączania komunikatu głosowego „Dziękujemy. ESC P Ps #l <check> ESC \ Wysuw papieru o Ps = 0. = 4 : błąd parametru Ps. lub sekwencją LBERNRQ Począwszy od wersji 39.Drukarka Fiskalna POSNET Thermal i 3001 [LBSNDMD] : Wyłączenie/ włączenie komunikatu głosowego. Automatycznie wysyłana odpowiedź ma format: [LBERSTS] : ESC P Pe #Z <c1><c2> ESC \ gdzie: Pe = kod błędu (0: OK. = 4 : błąd parametru Ps. 32. Kody błędow: = 2 : błąd bajtu kontrolnego. [LBFEED] : Wysuw papieru. <c1><c2> = dwuznakowy identyfikator sekwencji. zapraszamy”: Sekwencja do wyłączania komunikatu głosowego: ESC P 1 #x 95 ESC \ Sekwencja do włączenia komunikatu głosowego: ESC P 0 #x 94 ESC \ UWAGA: Komunikat głosowy można wyłączyć/włączyć za pomocą jednocześnie wciśniętych klawiszy ‘PL_F2’ na klawiaturrze kasy POSNET 2000. [LBSERM]: Obsługa błędów.2 (POSNET 2000)).1 (Th).20 linii. (Od wersji: 31.). (W drukarce z dwoma mechanizmami działa tylko w odniesieniu do oryginału. rodzaj błędu jest testowany przy użyciu sekwencji LBFSTRQ (w polu Pe odpowiedzi LBFSTRS). 31. Str. 76 .

za długie opisy). 5. = 2 : błąd bajtu kontrolnego. Kod błędu jest obsługiwany w takim trybie. Parametr Pn musi zdefiniować faktycznie wykorzystywaną ilość dodatkowych linii (można pominąć ten parametr. 77 . z możliwością drukowania polskich liter i semigrafiki w kodzie MAZOWIA. ESC P Pl $h <check> ESC \ lub: ESC P Pl. Po włączeniu zasilania wybrany jest standardowo tryb pracy z wyświetlaniem komunikatów o błędach. 3.48.. = 15 : błąd w dodatkowych liniach nagłówka (np. Transakcja. sensowne jest wysłanie sekwencji LBSERM dla zablokowania komunikatów o błędach. 6.. <check> = bajt kontrolny. ale z wyłączeniem jakichkolwiek kodów sterujących. między nagłówkiem z pamięci fiskalnej a linią dodatkowego opisu) należy w niej umieścić co najmniej jedną spację. jeżeli nie korzystamy z tej opcji). Opcjonalne dodatkowe 3 linie paragonu są drukowane między nagłówkiem z pamięci fiskalnej a datą i numerem paragonu. stąd jeżeli zachodzi potrzeba uzyskania linii oddzielającej (np.dotyczy to: • fiskalizacji. do których ma dostęp aplikacja = 0. ten błąd pojawia się także w przypadku wystąpienia błędu blokującego tryb fiskalny (ERR. 2. gdy paragon jest drukowany w trybie "blokowym" . brak w pamięci RAM nagłówka (tylko w trybie fiskalnym gdy do modułu fiskalnego wpisano tylko NIP). = 4 : błąd parametru (zła liczba pozycji). <linia1>. jaki był wybrany przed odebraniem tej sekwencji. 2. 3.3. = 6 : błąd operacji z pamięcią fiskalną. • raportu dobowego.<linia3> = zawartość tych linii. wszystkie operacje prowadzące do trwałego zapisu danych do pamięci fiskalnej wymagają jednak "ręcznego" potwierdzenia z klawiatury (przy pomocy klawisza ‘TAK’. Jako zasadę przyjęto. • zmiany stawek PTU. Na końcu każdej linii musi znaleźć się terminator w postaci pojedynczego kodu CR (jedyny dozwolony kod kontrolny). = 40 : 1. UWAGA: 1. że niezależnie od wyłączenia komunikatów o błędach. Każda linia może zawierać maksymalnie 40 znaków ASCII. Str.ze względu na ograniczoną (do 4 KB) długość bufora dla całego paragonu. Pn $h <linia1> CR <linia2> CR <linia3> CR <check> ESC \ gdzie: Pl = ilość pozycji sprzedaży = 0. Pn = ilość dodatkowych linii umieszczanych w nagłówku paragonu. jeżeli Pl=0: paragon ON-LINE (linie otrzymywane są drukowane na bieżąco). CLR. 2. = 5 : błąd odczytu zegara RTC. 4.. 4. Jeżeli zachodzi konieczność wydrukowania paragonu dłuższego niż 48 linii należy użyć trybu "On-Line" (sekwencja LBTRSHDR z parametrem Pl=0). FULL). [LBTRSHDR]: Początek transakcji (wejście w tryb transakcji). Ogólne reguły syntaktyki rozkazów nie dopuszczają linii pustych. Limit ilości linii do 48-miu obowiązuje tylko.Drukarka Fiskalna POSNET Thermal i 3001 UWAGA: 1. Kod błędu: = 1 : nie zainicjalizowany zegar RTC. Przy współpracy z bardziej zaawansowanymi które wykorzystują dialog z drukarką dla uzyskania potwierdzenia poprawności wykonania poszczególnych operacji."Off Line" . wtedy zachodzi też zatrzymanie przetwarzania) .

zakres lub brak). np.0. Wprowadzono możliwość określenia ceny towaru z dokładnością większą niż 0. niespełnienie powyższego daje błąd #20. rabat przy stornowaniu. również jeżeli jest wykonywana operacja STORNO. = 17: błędne oznaczenie ilości (puste lub za długie)..2. =4: zły numer linii (błąd parametru Pl). .<ptu> = kod stawki PTU = 'A'. 2: rabat procentowy. natomiast po przecinku kompresja zer nieznaczących nie jest realizowana (taki format wymagany jest np. w kantorach). Operacja STORNO musi być kontrolowana przez aplikację . .Pr $l <nazwa> CR <ilość> CR <ptu>/CENA/BRUTTO/RABAT/ <check> ESC \ gdzie: . 3: dopłata kwotowa. poprawna jest sekwencja numerów 1. że w przypadku dużych ilości towarów o małej cenie jednostkowej warunek uzyskania zgodności może narzucać dokładniejsze określenie ceny. że dla kompatybilności dopuszczamy w obrębie “ilości” dowolne inne znaki niż cyfry i wyodrębniamy z tego napisu podciąg będący max. po denominacji dozwolony jest punkt dziesiętny przed dwoma ostatnimi cyframi.<check> = bajt kontrolny. . . 4: dopłata procentowa.'F' lub ' ' (spacja) lub 'Z' (oba ostatnie oznaczenia dla towarów zwolnionych). UWAGA: 1. 5. > 0.CENA = format zawierający max.. Str.tak abym zgadzała się cena i ilość usuwanego z listy towaru.2. że w przypadku nie zakończenia drukowania paragonu w ciągu 15 minut od momentu jego rozpoczęcia drukarka anuluje transakcję wypisując na końcu komunikat: ‘paragon anulowany !’ [LBTRSLN] : Linia paragonu.99. jeżeli =0 to operacja STORNO ! .<ilość> = string[16] w którym Liczba 'ilość' spełnia te same warunki co CENA.99 %. 4. z tym..255 . numeracja linijek musi być ciągła. . = 16: błędna nazwa (pusta lub za długa). Format ten jest kontrolowany i drukowany z kompresją zer nieznaczących przed przecinkiem.RABAT = kwota lub procent rabatu / dopłaty.. który musi być zgodny z przesłaną wartością linijki transakcji (z dokładnością ±1%). = 19: błąd wartości CENA (syntaktyka. = 18: błędne oznaczenie stawki PTU (lub brak) .4 ale musi być: 1. 10 cyfr z dowolnym położeniem przecinka. zawierający dowolne znaki drukowalne.. jw. jeżeli jest drukowany paragon w trybie 'blokowym' (parametr Pl w sekwencji LBTRSHDR jest <>0) to odebrana musi być zadeklarowana wcześniej liczba linijek ! 3.01 (1gr) a także wprowadzono kontrolę iloczynu <cena> * <ilość>. przy rabacie kwotowym uwzględnienie rabatu nie może prowadzić do ujemnego wyniku. ESC P Pi $l <nazwa> CR <ilość> CR <ptu> / CENA / BRUTTO / <check> ESC \ Lub: ESC P Pi.Drukarka Fiskalna POSNET Thermal i 3001 7. która jest przesłana bezpośrednio lub wynika z określonej stopy procentowej.także próba sprzedaży w stawce nieaktywnej . 10-cyfrową liczbą z dowolnie ustawionym punktem dziesiętnym ! .<nazwa> = string[40].4 jeżeli wykonuje się operację STORNO ! 2.Pr = rodzaj rabatu = 0: brak 1: rabat kwotowy. obowiązują następujące ograniczenia: procent musi być z zakresu 0.BRUTTO = kwota sprzedaży brutto 10 cyfr max.. ponadto należy uwzględnić ew.3. Zwróćmy uwagę. = 2 : błąd bajtu kontrolnego. Uwzględnienie rabatu dla pozycji polega na odjęciu od kwoty BRUTTO kwoty rabatu. 78 . Wprowadzono pojęcie TIMEOUT dla paragonu które oznacza. Kod błędu: = 1 : nie zainicjalizowany zegar RTC.Pi = numer linijki = 0 lub 1. .

xx' jest kwotą narastającą transakcji po dodaniu wartości <kwota> przesłanej w sekwencji LBDSPDEP . 79 . Łączna suma kaucji jest akumulowana i porównywana z wartością przesłaną w sekwencji LBTRXEND i drukowana na końcu.zaokrągla wynik mnożenia do dwóch miejsc po przecinku.mnoży cenę przez ‘wyłowioną’ z ilości liczbę ."negatywne" zatwierdzenie transakcji przez serwer.błąd parametru.również anulowanie paragonu w trybie drukowania paragonu "On-Line".OFF-LINE.drukarka sprawdza poprawność przesłanych informacji wg algorytmu : . Kod błędu: = 4 .Drukarka Fiskalna POSNET Thermal i 3001 = 20: 1.wyprowadza drukarkę z dowolnego błędnego stanu do głównej pętli analizy syntaktyki. Tak więc istnieje możliwość wyświetlenia poprawnej kwoty transakcji przed jej zamknięciem (także na wyświetlaczu cyfrowym klienta).3 (3001) i 39.kwota kaucji. .interpretowanej jako kwota kaucji.' 'Suma: xxxx.bajt kontrolny. Str. = 9 . [LBTREXIT] : Anulowanie transakcji. gdzie: <check> . wartość towaru po uwzględnieniu rabatu wychodzi ujemna [LBDSPDEP]: Kaucja pobrana. lub błąd operacji z rabatem np.1 (Th).błąd wartości BRUTTO lub RABAT (syntaktyka. = 21: sekwencja odebrana przez drukarkę przy wyłączonym trybie transakcji. 3. lub w wyniku jej wykonania suma w danej grupie podatkowej wychodzi ujemna). Aktualizacja wyświetlacza odpowiada zatem sytuacji jakby sprzedano dodatkowy towar o nazwie kaucja. ESC P 6 $d <kwota> / <check> ESC \ gdzie: <check> = bajt kontrolny . Jeżeli kwota ‘kaucja_pobrana’ przesłana w LBTRXEND nie jest zgodna z sumą wartości otrzymanych w sekwencjach LBDSPDEP to zostanie zgłoszony błąd (#26).kaucja ----. ESC P 0 $e <check> ESC \ .wynik zaokrąglenia porównuje z wartością (BRUTTO) z dokładnością do 1%. (Od wersji: 39.błąd niespełnienia warunku ilość x cena = wartość (przekroczenie progu 1%) . kwota . niespełnienie powyższego daje błąd #20. . Wartość 'xxxx. Wypisanie na wyświetlaczu operatora + tekstowym w linii w formacie: ' ----. 39. Wysłanie sekwencji CAN ESC P 0 $e <check> ESC \ .xx'. = 22: błąd operacji STORNO (np. 2.1B (Beetle)). (Cancel) . przy rabacie kwotowym uwzględnienie rabatu nie może prowadzić do ujemnego wyniku. zakres lub brak).błąd operacji I/O. chociaż wartość kaucji jest drukowana dopiero za logo (czyli po zamknięciu transakcji). próba wykonania w trybie 'blokowym' . UWAGA: 1.

.3 Pc = 0: zachowanie 'dotychczasowe' tzn.01 jeżeli parametr Px<>0 <check> = bajt kontrolny.Pr $e <kod> CR WPLATA/TOTAL/ <check> ESC \ lub : ESC P 1. Pc = 1: zakończenie drukowania paragonu bez odcięcia i zakończenie trybu transakcyjnego.Pc. lub błędna treść dodatkowych linii.684. stopa jest zadana z dokładnością do 0. 80 .numer terminala (2 cyfry) + kod kasjera (litera).354.Pc. dla kontroli poprzednich transferów. = 6 : błąd operacji z pamięcią fiskalną.. = 26: błąd kwoty WPLATA (syntaktyka. 'reszta' nie będą drukowane !). gdzie: Pr = 0.Pn .Pr. UWAGA: Jeżeli parametr Px≠0 to wartość parametru Pr (rabat wg ‘starej formuły’) jest ignorowana Kody błędów: = 1 : nie zainicjalizowany zegar RTC.3 warianty 'pozytywnego' zatwierdzenia transakcji. jeżeli = 0 to napisy "gotówka / reszta" nie będą drukowane. <linia1>. = 27: błędna suma całkowita TOTAL lub błędna kwota RABAT. w momencie kiedy nie został on jeszcze włączony. LBTREXIT (tylko anulowanie paragonu !). czyli musi wcześniej pojawić się sekwencja LBTRSHDR ! Px = rodzaj rabatu (niezależny od parametru Pr !) = 0: brak. jeżeli różnica WPLATA-TOTAL <=0 to napisy 'gotówka'. = 25: błędny kod terminala/kasjera (zła długość lub format). ESC P 1.Px.Pr.<linia3> = zawartość linii dodatkowych. Pc = 2: wydrukowanie nagłówka nowego paragonu. = 29: żądanie zakończenia (pozytywnego !) trybu transakcji. Py = 1 : jeżeli jest sprzedaż tylko w jednej grupie to drukuj skrócone podsumowanie .Pc $e <kod> CR <linia1> CR <linia2> CR <linia3> CR WPŁATA/TOTAL/<check> ESC \ lub: ESC P 1.Py $e <kod> CR <linia1> CR <linia2> CR <linia3> CR WPLATA/ TOTAL/RABAT/<check> ESC \ . do których ma dostęp aplikacja = 0. od tego momentu urządzenie realizuje tylko następujące sekwencje: LBTRSHDR. Str. = 28: przepełnienie totalizera (max 2. RABAT = rabat lub dopłata procentowa dla całej transakcji. LBDSP oraz LBFSTRQ (w wersji biletowej musimy wyłączyć sekwencje LBSTRLN ponieważ MUSI być zdefiniowana część przewozowa lub określony jej brak. odcięcie starego i włączenie 'blokowego' trybu transakcyjnego w specjalny sposób.. jw. = 5 : błąd operacji z zegarem RTC. (po tym parametrze powinien być terminator CR !) WPŁATA = kwota wpłacona przez klienta.Pn. = 4 : błąd parametru (Pr. = 24: przepełnienie bufora drukarki paragonowej. TOTAL = łączna należność dla klienta.99 = opcjonalny rabat procentowy dla całej transakcji. 2: dopłata procentowa. = 2 : błąd bajtu kontrolnego.Drukarka Fiskalna POSNET Thermal i 3001 [LBTREXIT] : Standardowe zatwierdzenie transakcji. Px lub Py). Pn = ilość dodatkowych linii umieszczanych w stopce paragonu. = 23: błędna liczba rekordów (linii) paragonu. zakończenie drukowania i odcięcie paragonu i zakończenie trybu transakcyjnego.Pn. za logo fiskalnym. <kod> = string[3] .55 dla jednej grupy podatkowej). 1: rabat procentowy. tzn.

dla kontroli poprzednich transferów . ew. LBTREXIT (tylko anulowanie paragonu !). gdzie: Pn = ilość dodatkowych linii umieszczanych w stopce paragonu.Po2. możliwość przesłania przez aplikacje kwoty reszty.CZEK.KARTA. Po2= 1: kwota KAUCJA_ZWROCONA jest drukowana Pr = 0: kwota RESZTA jest ignorowana.. Pb = 1: kwota BON jest drukowana. z wydrukowaniem nagłówka).1 (Th).01 %). Pk = 1: kwota KARTA jest drukowana. Pc = 2: wydrukowanie nagłówka nowego paragonu.. Pb = 0: kwota BON jest ignorowana. 32.Py.Px. za logo fiskalnym. • tryb pracy obcinacza (bez obcinania. LBDSP oraz LBFSTRQ . 81 . • umieszczenie w stopce paragonu pobranej kwoty kaucji mającej ścisły związek z sekwencją LBDSPDEP (kaucja) opisaną wcześniej. Pk = 0: kwota KARTA jest ignorowana. KAUCJA_POBRANA : kwota kaucji za opakowania zwrotne. odcięcie starego i włączenie 'blokowego' trybu transakcyjnego w specjalny sposób.Drukarka Fiskalna POSNET Thermal i 3001 [LBTRXEND] : Zatwierdzenie transakcji z formami płatności.1B (Beetle) i 32. Px = rodzaj rabatu = 0: brak.<linia5> CR <nazwa_karty> CR <nazwa_czeku> CR <nazwa_bonu> CR TOTAL / RABAT / WPLATA / KARTA / CZEK/BON / KAUCJA_POBRANA / KAUCJA_ZWROCONA / RESZTA / <check> ESC \ Z uwagi na dużą liczbę dodatkowych informacji/ opcji wykorzystywanych w stopce paragonu wprowadzamy nowy rozkaz umożliwiający aplikacji: • umieszczenie dodatkowych linii w stopce paragonu (0. Pz = 0: kwota CZEK jest ignorowana. 2: dopłata procentowa. do których ma dostęp aplikacja = 0.3 (3001). (Od wersji: 39. kwota lub stopa jest zadana z dokładnością do 0. powiększająca kwotę należności (czyli pomniejszająca sumę form płatności).Pk. 1: rabat procentowy.Pb.01 jeżeli parametr Px<>0 WPLATA.. Pg = 0: kwota WPLATA jest ignorowana (zapłata w gotówce nie występuje) Pg = 1: występuje zapłata w gotówce.5 Pc = 0: zachowanie 'dotychczasowe' tzn.Po1. Pc = 1: zakończenie drukowania paragonu bez odcięcia i zakończenie trybu transakcyjnego. • umieszczenie w stopce paragonu informacji o gotówce i innych formach płatności.Pz.TA WARTOSC JEST KONTROLOWANA PRZEZ DRUKARKE !! RABAT = rabat kwotowy lub procentowy dla całej transakcji. zakończenie drukowania i odciecie paragonu i zakończenie trybu transakcyjnego.5 max.KAUCJA_ZWROCONA : kwoty dla odpowiednich form płatności.Pc. tzn. od tego momentu urządzenie realizuje tylko następujące sekwencje: LBTRSHDR. Str. Py = 1 : jeżeli jest sprzedaż tylko w jednej grupie to drukuj skrócone podsumowanie. Pz = 1: kwota CZEK jest drukowana. Pr = 1: kwota RESZTA jest drukowana. Po1= 0: kwota KAUCJA_POBRANA jest ignorowana. oraz: TOTAL = łączna należność dla klienta.2 (POSNET 2000)): ESC P Pn. 39.BON. Po1= 1: kwota KAUCJA_POBRANA jest drukowana Po2= 0: kwota KAUCJA_ZWROCONA jest ignorowana.Pg.Pr $x <kod> CR <linia1> CR <linia2> CR.) • zdefiniowanie rabatu dla całej transakcji (z dokładnością do 0.

<nazwa_karty>.RESZTA. / KARTA8 / CZEK1 /..1 (Th)..<nazwa_czeku4>. [LBCSHREP1]: Rozkaz raportu kasy / zmiany uwzględniającego formy płatności. <kasjer> = string[32]. jw.numer terminala (2 cyfry) + kod kasjera (litera). <nazwa_bonu1>. Pb : ilość rożnych bonów.1B (Beetle) i 32.. = 26: błąd jednej z kwot WPLATA. Kody błędów: = 1 : nie zainicjalizowany zegar RTC. . Str. = 25: błędny kod terminala/kasjera (zła długość lub format). • TOTAL : kwota musi być zgodna z obliczona wcześniej przez drukarkę wartością transakcji.<nazwa_karty8>...Pb #f <zmiana> CR <kasjer> CR <nazwa_karty1> CR . gdy brak jest jednego lub więcej parametrów Pg. <nazwa_czeku1>.2 (POSNET 2000))./ BON4 / WPLATY / KAUCJA_POBRANA / WYPLATY / KAUCJA_ZWROCONA / STAN_KASY / <ilosc_paragonow> CR <ilosc_anulow> CR <ilosc_storno> CR <check> ESC \ gdzie: Pk : ilość rożnych kart kredytowych = 0. = 28: przepełnienie totalizera. = 24: przepełnienie bufora drukarki. które z nich SA ignorowane....parametry napisowe przesłane przez aplikacje określające poszczególne formy płatności. a które drukowane. natomiast ciąg parametrów numerycznych Pn.8 Pc : ilość rożnych czeków = 0. ze zawsze musza występować wszystkie parametry napisowe: <kod>. (Od wersji: 39.<nazwa_bon> oraz kwoty TOTAL.<linia5> : string[40] = zawartość linii dodatkowych.. odpowiadajacy numerycznemu lub alfanumerycznemu oznaczeniu zmiany.<nazwa_bonu4> CR <poczatek> CR <koniec > CR PRZYCHOD / SPRZED_GOTOWKA / KARTA1 / . = 27: błędna suma całkowita TOTAL lub błędna kwota RABAT. • do określenia kwoty do zapłaty przez klienta (również do wyświetlenia na wyświetlaczu) brane jest pod uwagę następujące wyrażenie: SUMA := TOTAL + KAUCJA_POBRANA .Po2 zakładamy wartość domyślna = 0.<nazwa_bonu4> : string[16] .. ESC P Pk. w momencie kiedy nie został on jeszcze włączony. (po tym parametrze powinien być terminator CR !) <check> = bajt kontrolny. = 23: błędna liczba rekordów (linii) paragonu.. 82 .RESZTA. <linia1>... zawierający dowolne znaki drukowalne.. • Z uwagi na dużą liczbę możliwych kombinacji zakładamy dla uproszczenia. = 5 : błąd operacji z zegarem RTC. napis zarezerwowany na nazwisko i imię kasjera. 32.. <nazwa_karty1>.3 (3001). lub błędna treść dodatkowych linii.<nazwa_karty8> CR <nazwa_bonu1> CR..Drukarka Fiskalna POSNET Thermal i 3001 <linia1>.KAUCJA_ZWROCONA.Pn lub Ps).. ‘kaucja_pobrana’ przesłana w LBTRXEND nie jest zgodna z sumą wartości otrzymanych w sekwencjach LBDSPDEP.Pr określa. = 2 : błąd bajtu kontrolnego. przy czym wartość ta może być ujemna (na paragonie pojawia się wtedy napis 'Do zwrotu' a na wyświetlaczu wartość ujemna).. ewentualnie niektóre z nich 'puste' (tylko znak CR) lub zerowe (kwoty).Pc./ CZEK4 / BON1 /. 39. • Ze wszystkich parametrów numerycznych i napisowych podlegają kontroli lub interpretacji następujące: • <kod> : musi mięć 3 znaki drukowalne. <nazwa_karty> = 'VISA' <kod> = string[3] .<nazwa_czeku>.. UWAGA: • W przypadku.<nazwa_bonu> : string[16] = dodatkowe określenia form płatności np... = 29: zadanie zakończenia (pozytywnego !) trybu transakcji. = 4 : błąd parametru (Pr.4. jw. <zmiana> = string[8].. = 6 : błąd operacji z pamięcią fiskalna.

<numer_kasjera> = string[5]. WYPLATY : kwota = suma wypłat z kasy w trakcie zmiany. = 5 : błąd odczytu zegara RTC. KAUCJA_POBRANA : kwota = suma kaucji pobranej w trakcie zmiany. 5 cyfr lub spacji. = 4 : błąd parametrów. <ilosc_anulow> : num[5] = ilość anulowanych paragonów. = 2 : błąd bajtu kontrolnego.ILOSC_ANULOW. CZEK1.KARTA8 : kwota = wartość sprzedaży dla poszczególnych kart płatności. Pn = 1 : drukuj 2 kopie . Str. [LBTRSCARD] : Pokwitowanie sprzedaży. <numer_kasy> = string[2].ILOSC_PARAGONOW. = 34: błąd jednej z kwot lub pozostałych napisów.parametry NAPISOWE określające poczatek i koniec zmiany. <terminal> = num[8]. WPLATY : kwota = suma wpłat do kasy w trakcie zmiany. SPRZED_GOTOWKA : kwota = wartość sprzedaży gotówkowej. <kontrahent> = string[15].CZEK4 : kwota = wart. ILOSC_STORNO. miedzy jedną a drugą trzeba nacisnąć klawisz. Ps = 1: linia jw.3 (3001). <ilosc_storno> : num[5] = ilość stornowanych pozycji.jedna po drugiej (użyteczne w wersji z obcinaczem 'nie docinającym'). sprzed. <numer_karty> = num[20]. KARTA1. 39. <ilosc_paragonow> : num[5] = ilość paragonów wydruk. KAUCJA_ZWROCONA.WYPLATY. 32..<koniec> są drukowane zawsze. (Od wersji: 39. ESC P Ps. sprzed.Pb. Rożne kombinacje wydruków są uzyskiwane przez rożne kombinacje parametrów Pk. dla różnych rodzajów czeków. podczas zmiany.. 2. W sekwencji musza występować wszystkie parametry (kwoty i napisy). Przez num[5] rozumiemy ciąg max. UWAGA: 1. BON1. dla różnych rodzajów bonów.. Pn : wybiera opcje drukowania dokumentu Pn = 0 : drukuj 2 kopie.STAN_KASY. <nazwa_karty> = string[16]. 3.Pn #g <numer_kasy> CR <numer_kasjera> CR <numer_par> CR<kontrahent> CR <terminal> CR <nazwa_karty> CR <numer_karty> CR <data_m> CR <data_r> CR <kod_autoryz> CR <kwota> / <check> ESC \ gdzie: Ps = 0: linia zawierająca numer kasy / numer kasjera jest drukowana. zwykle w formacie 'rr-mm-dd gg:mm' PRZYCHOD : kwota = łączna sprzedaż w trakcie zmiany. = 33: błąd napisu <zmiana> lub <kasjer>. Linie zawierające liczby: PRZYCHOD. STAN_KASY : kwota = ilość gotówki w kasie po zakończeniu zmiany. <numer_par> = num[12]. Kody błędów: = 1 : nie zainicjalizowany zegar RTC.sam znak CR).1 (Th). oraz napisy: <poczatek>. nie jest drukowana.2 (POSNET 2000)).KAUCJA_POBRANA. Pn = 2 : drukuj jedna kopie.SPRZED_GOTOWKA.BON4 : kwota = wart. KAUCJA_ZWROCONA : kwota = suma kaucji zwróconej w trakcie zmiany.<koniec> : string[15] .Drukarka Fiskalna POSNET Thermal i 3001 <poczatek>.Pc. 83 .WPLATY.1B (Beetle) i 32. nie drukowane parametry mogą być zerowe (kwoty) lub puste (napisy .

znakowy ciąg cyfr i lub ew.jedna po drugiej (użyteczne w wersji z obcinaczem 'niedocinajacym'). = 5 : błąd odczytu zegara RTC. (Od wersji: 39. Kody błędów: = 1 : nie zainicjalizowany zegar RTC. <nazwa_karty> = string[16]. (pozostałe kody błędów) = 41: błąd napisu <numer_kasy> (za długi lub zawierający błędne znaki). nie jest drukowana.2 (POSNET 2000)): ESC P Ps. <data_m> = num[2]. UWAGA: 5. opis 'Oryginał dla sprzedawcy' a na drugim opis 'Kopia dla kupującego' Opis jest drukowany bezpośrednio przed końcowym napisem 'niefiskalny'. 32. miedzy jedna a druga trzeba nacisnąć klawisz. Jeżeli parametr Pn = 0 lub 1. = 47: błąd napisu <numer_karty>. Wprowadzamy tu nowy typ parametru: num[n] oznaczający n.1 (Th). [LBSTOCARD]: Transakcja uznania (zwrot towaru).Drukarka Fiskalna POSNET Thermal i 3001 <data_m> = num[2]. Pn = 2 : drukuj jedna kopie. to na pierwszym dokumencie drukowany jest. <terminal> = num[8].Pn #h <numer_kasy> CR <numer_kasjera> CR <numer_par> CR <kontrahent> CR <terminal> CR <nazwa_karty> CR <numer_karty> CR <data_m> CR <data_r> CR <kod_autoryz> CR <kwota> / <check> ESC \ gdzie: Ps = 0: linia zawierająca numer kasy / numer kasjera jest drukowana. = 46: błąd napisu <nazwa_karty>. <numer_par> = num[12]. <numer_kasjera> = string[5]. 39. Ps = 1: linia jw. = 50: błąd napisu <kod_autoryz>. Pn = 1 : drukuj 2 kopie . <data_r> = num[2]. 6. 84 . = 48: błąd napisu <data_m>. = 51: błąd wartości <kwota>. <numer_karty> = num[20]. <numer_kasy> = string[2]. = 2 : błąd bajtu kontrolnego. = 45: błąd napisu <terminal>. oraz: <kwota> = wartość transakcji w formacie jak dla wszystkich innych kwot.3 (3001). = 42: błąd napisu <numer_kasjera>. = 44: błąd napisu <kontrahent>. = 49: błąd napisu <data_r>. Tak jak w innych sekwencjach sterujących parametry typu 'string' mogą zawierać dowolne znaki drukowalne. 7.1B (Beetle) i 32. = 4 : błąd parametru Ps. Str. <kod_autoryz> = num[9]. Pn : wybiera opcje drukowania dokumentu Pn = 0 : drukuj 2 kopie. spacji. <kontrahent> = string[15]. = 43: błąd napisu <numer_par>. <check> = bajt kontrolny. <data_r> = num[2].

= 2 : błąd bajtu kontrolnego.znakowy ciąg cyfr i lub ew. = 5 : błąd odczytu zegara RTC. Str. spacji. = 49: błąd napisu <data_r>. = 43: błąd napisu <numer_par>.Drukarka Fiskalna POSNET Thermal i 3001 <kod_autoryz> = num[9]. = 46: błąd napisu <nazwa_karty>. <check> = bajt kontrolny. = 44: błąd napisu <kontrahent>. = 31 : nadmiar dodawania (przekroczenie zakresu gotówki w kasie). 2. Tak jak w innych sekwencjach sterujących parametry typu 'string' mogą zawierać dowolne znaki drukowalne. Kod błędu: = 1 : nie zainicjalizowany zegar RTC. opis 'Oryginał dla sprzedawcy' a na drugim opis 'Kopia dla kupującego'. [LBINCCSH] : Wpłata do kasy. Opis jest drukowany bezpośrednio przed końcowym napisem 'niefiskalny'. ESC P Ps #i WPŁATA / <check> ESC \ zwiększenie stanu kasy i drukowanie niefiskalnego paragonu wpłaty. 85 . Wprowadzamy tu nowy typ parametru: num[n] oznaczający n. <check> = bajt kontrolny. = 45: błąd napisu <terminal>. Drukowanie raportów / kontrola bazy danych. = 50: błąd napisu <kod_autoryz>. = 51: błąd wartości <kwota>. oraz: <kwota> = wartość transakcji (zwrotu) w formacie jak dla wszystkich innych kwot. (pozostałe kody błędów) = 41: błąd napisu <numer_kasy> (za długi lub zawierający błędne znaki). WPŁATA = kwota wpłacona do kasy. 3. Kody błędów: = 1 : nie zainicjalizowany zegar RTC. = 4 : błąd parametru Ps. = 30 : błąd kwoty WPŁATA (syntaktyka). = 2 : błąd bajtu kontrolnego. gdzie: Ps = parametr ignorowany. Jeżeli parametr Pn = 0 lub 1. = 47: błąd napisu <numer_karty>. to na pierwszym dokumencie drukowany jest. = 48: błąd napisu <data_m>. UWAGA: 1. = 42: błąd napisu <numer_kasjera>.

gdzie: Ps = parametr ignorowany. Kod błędu: = 1 : nie zainicjalizowany zegar RTC. <zmiana> = string[8]. gdzie: Ps = parametr ignorowany. <check> = bajt kontrolny. za długi lub zawierający błędne znaki). <kasjer> = string[32]. = 5 : błąd odczytu zegara RTC = 33 : błąd napisu <zmiana> (np.Drukarka Fiskalna POSNET Thermal i 3001 [LBDECCSH]: Wypłata z kasy. [LBCSHREP] : Raport kasy / zmiany. WYPŁATA = kwota wypłacana z kasy. Kod błędu: = 1 : nie zainicjalizowany zegar RTC = 2 : błąd bajtu kontrolnego. <check> = bajt kontrolny. ESC P Ps #d WYPŁATA / <check> ESC \ zmniejszenie stanu kasy i drukowanie niefiskalnego paragonu wypłaty. ESC P Ps #t <check> ESC \ drukowanie niefiskalnego raportu o ilości gotówki w kasie. 86 . = 34 : błąd napisu <kasjer>. = 32 : wartość po odjęciu staje się ujemna (przyjmuje się wówczas stan zerowy kasy !) [LBCSHSTS]: Stan kasy. zawierający dowolne znaki drukowalne. <check> = bajt kontrolny. jak wyżej. odpowiadające numerycznemu lub alfanumerycznemu oznaczeniu zmiany. Str. Kod błędu: = 1 : nie zainicjalizowany zegar RTC = 2 : błąd bajtu kontrolnego. = 2 : błąd bajtu kontrolnego. ESC P Ps #k <zmiana> CR <kasjer> CR <check> ESC \ gdzie: Ps = parametr ignorowany. = 30 : błąd kwoty WYPŁATA (syntaktyka). napis zarezerwowany na nazwisko i imię kasjera.

= 5 : błąd odczytu zegara RTC.<kasjer> = string[32]. jw. ale drukowany jest opis operacji 'Zwrot towaru'. [LBOPAK] : Zwrot kaucji. za długi lub zawierający błędne znaki). = 5 : błąd odczytu zegara RTC. . = 2 : błąd bajtu kontrolnego.<kasjer> = string[32].. ESC P Ps #w <kaucja> CR <check> ESC \ .Drukarka Fiskalna POSNET Thermal i 3001 [LBLOGIN] : Logowanie kasjera. nazwisko i imię kasjera. (Od wersji: 39.<kaucja> = string[20]. 32. Kody błędów: = 1 : nie zainicjalizowany zegar RTC. (Od wersji: 39. 87 .1 (Th).1B (Beetle)).drukowanie dokumentu niefiskalnego.3 (3001) i 39. zawierający dowolne znaki drukowalne = nazwa i wartość kaucji.2 (POSNET 2000)). Kody błędów: = 1 : nie zainicjalizowany zegar RTC. = 33: błąd napisu <numer> (np. = 2 : błąd bajtu kontrolnego.Ps parametr ignorowany.drukowanie dokumentu niefiskalnego . = 5 : błąd odczytu zegara RTC. . [LBLOGOUT]: Wylogowanie kasjera.3 (3001) i 39.<numer> = string[8].3 (3001).. napis zarezerwowany na numer kasy. nazwisko i imię kasjera. zawierający dowolne znaki drukowalne. = 34: błąd napisu <kasjer>. jw.1B (Beetle) i 32. . . gdzie: parametr Ps jest ignorowany. 39. = 34: błąd napisu <kasjer>. = 33: błąd napisu <kaucja> Wyplata z kasy.<numer> = string[8]. napis zarezerwowany na numer kasy. Str. 39. zawierający dowolne znaki drukowalne. (Od wersji: 39.1B (Beetle)).drukowanie dokumentu niefiskalnego gdzie: .1 (Th). ESC P Ps #p <kasjer> CR <numer> CR <check> ESC \ . = 2 : błąd bajtu kontrolnego.1 (Th). Kody błędów: = 1 : nie zainicjalizowany zegar RTC. 39. = 33: błąd napisu <numer> (np. gdzie: parametr Ps jest ignorowany. za długi lub zawierający błędne znaki). ESC P Ps #q <kasjer> CR <numer> CR <check> ESC \ .. .

1950. Pt #o <check> ESC \ gdzie: Py1.2049). = 3 : zła ilość parametrów. = 30: błąd kwoty WYPLATA (syntaktyka).Py. Pm2 . Pd2 . Kod błędu: = 1 : nie zainicjalizowany zegar RTC. <check> = bajt kontrolny. Pd2 . = 2 : błąd bajtu kontrolnego. (dwie najmłodsze cyfry.12. [LBDAYREP]: Drukowanie raportu dobowego. Py.data w następującym formacie: Py = numer roku = 0. Pm2... 88 . gdzie: WYPLATA = kwota wypłacona z kasy. ESC P #r <check> ESC \ lub ESC P 0 #r <check> ESC \ lub (Od wersji: 33. Pm. Pm = numer miesiąca = 1. Operacja nie wymaga potwierdzenia z klawiatury. = 4 : błąd parametrów (wartości dat.9A (Thermal-A) i 32.. obejmuje również sytuacje.1B (Beetle)): ESC P 1. = 6 : błąd operacji z pamięcią fiskalną (fatalny).31. Pm: Pd #r <check> ESC \ Gdzie: . UWAGA: 1.. (Od wersji: 39.data końcowa. = 4 : błąd parametru Ps. Kody błędów: = 1 : nie zainicjalizowany zegar RTC.data początkowa. <check> = bajt kontrolny Pt =0 (lub brak parametru Pt) : raport pełny (dokument fiskalny) Pt=1 : podsumowanie sprzedaży (dokument niefiskalny). Pd . ESC P #z WYPLATA/<check> ESC \ drukowany jest opis operacji 'Zwrot towaru'.99.1 (Th).1B(Beetle) i 32.Drukarka Fiskalna POSNET Thermal i 3001 [LBSTOCSH] : Zwrot towaru. = 32: wartość po odjęciu staje się ujemna (przyjmuje się wówczas stan zerowy kasy !) [LBFSKREP] : Drukowanie raportu okresowego. Pm1 .2(POSNET 2000)).1 (Th). = 2 : błąd bajtu kontrolnego. 31. Py2. 31. ESC P Py1 . 32. = 2 : błąd bajtu kontrolnego. 39.3 (3001). Py2 . Pd1 .3 (3001). gdy data końcowa jest wcześniejsza od początkowej). Pd = dzień = 1. Pd1 . Kody błędów: = 1 : nie zainicjalizowany zegar RTC. Pm1. Str.

Ps = 1 : właściwy rekord danych. Ph. tytuł oraz data przeprowadzenia testu. = 2 : błąd bajtu kontrolnego.parametr ignorowany. ESC P Ps #b [ <nazwa> CR <ptu> / ] <check> ESC \ . Sekwencja występuje w 3 postaciach: Ps = 0 : początek testu .pola <nazwa> i <ptu> nie występują. = 7 : błąd daty (aktualnie ustawiona jest wcześniejsza od daty ostatniego zapisu) lub w formacie drugim nie ma zgodności daty w drukarce z data przesłaną.Drukarka Fiskalna POSNET Thermal i 3001 = 6 : błąd operacji z pamięcią fiskalna (fatalny). = 4 : błąd parametru / kolejności sekwencji (np. Odczyt statusu. Pm .bajt kontrolny. Jeżeli wystąpi błąd #36 to można ew. Kod błędu: = 1 : nie zainicjalizowany zegar RTC. Drukarka odsyła informację: [LBCLKRS] ESC P 1#C Py .najniższa liczbowo stawka ) w bazie danych drukarki. Z lub spacja. F . Pm. Str. = 5 : błąd odczytu zegara RTC. gdzie poszczególne parametry oznaczają: Py. gdzie: Ps . C. = 37: operacja przerwana z klawiatury (przed rozpoczęciem drukowania). wykonać raport z klawiatury. UWAGA: 1. Pm. 0 = godzina w formacie: godzina. miesiąc. gdzie: <nazwa> . = 39 : błąd oznaczenia PTU. a potem dana: Ps=1). 0 ESC \ ODESŁANY CZAS RTC . najpierw koniec: Ps=2.maksymalnie 40 znaków. sekunda = 0. [LBDBREP]: Kontrola bazy danych.żądanie odesłania do systemu informacji o dacie i godzinie zegara RTC drukarki. drukowany jest nagłówek testu z napisem 'niefiskalny'. B. ESC P Ps #c ESC \ . E. drukowany jest komunikat o wyniku testu (ilość towarów i ilość niezgodności) oraz napis 'niefiskalny'. <check> . <ptu> . = 35: zerowy stan totalizerów. Drukarka ‘zwraca’ kod w postaci ‘wagi’ stawki (A . Kody błędu: = 1 : nie zainicjalizowany zegar RTC.odesłany czas zegara RTC drukarki. [LBSENDCK]: Odeślij czas RTC. 89 . Pd . D. Pd = data w formacie: 2 ostatnie cyfry roku. = 36: już istnieje zapis o tej dacie.oznaczenie stawki PTU: A. Pm . (bajt kontrolny jest sprawdzany). dzień. Ps = 2 : zakończenie testu (pole danych też nie występuje). F.najwyższa liczbowo stawka w drukarce.sprawdzenie.nazwa artykułu w bazie . Ph . Operacja wymaga potwierdzenia z klawiatury jeżeli nie podano daty 2. minuta. czy towar o nazwie <nazwa> występuje w wewnętrznej bazie danych i jaką ma tam stawkę PTU. = 38 : błąd nazwy.

. W przypadku gdy liczba stawek zdefiniowanych będzie różna od 4 (można zdefiniować liczbę stawek w zakresie 1.żądanie odesłania informacji istotnych z punktu widzenia kasowego. wykonaniu sekwencji LBTRSHDR). Pm . Pd = data ostatniego zapisu (Py = 2 ostatnie cyfry roku). kwoty BRUTTO !. Pf . Pz = ilość zerowań RAM zapisanych w pamięci fiskalnej.. 1 : fiskalny).PTU_F = stawki podatkowe PTU. drukarka zwraca zawsze tyle stawek ile jest aktualnie zdefiniowanych w drukarce. Błędy nie występują .TOT_Z = stan totalizera kasy.xx.. Aplikacja powinna najpierw stwierdzić ile jest zdefiniowanych stawek w drukarce . ESC P Ps #s ESC \ .6 . UWAGA: 1.patrz opis komendy LBSETPTU) inaczej działa funkcja ODEŚLIJ INFORMACJE KASOWE (LBFSTRS) . [LBFSTRQ]: Odeślij informacje kasowe.1).1. zerowany po poprawnym rozpoczęciu następnej tj. Pt = tryb pracy (1 : transakcyjny). licznik paragonów fiskalnych jest zerowany w trakcie fiskalizacji i zerowania RAM). a następnie porównanie go w aplikacji z zegarem systemowym. W przypadku zdefiniowania w drukarce czterech stawek PTU aplikacje będą działały tak jak w wersjach wcześniejszych firmware (<17. Str. [LBERNRQ] : Żądanie wysłania kodu błędu ostatniego rozkazu. Pm = tryb pracy (0 : szkoleniowy. Pm. NNNNNNNNNN = numer unikatowy. Pz . który powoduje zawieszenie pracy drukarki. Zwracana jest także taka sama liczba totalizerów plus totalizer Z. CASH = stan gotówki w kasie.. [LBFSTRS] ESC P 1#X Pe .. 1 . w formacie: xx. Pd / PTU_A / PTU_B / PTU_C /PTU_D / PTU_E / PTU_F / PAR_NUM / TOT_A / TOT_B / TOT_C / TOT_D / TOT_E / TOT_F / TOT_Z / CASH / NNNNNNNNNN ESC \ ODESŁANA INFORMACJA Z KASY.za wyjątkiem błędu odczytu pamięci fiskalnej. Drukarka odsyła informację LBFSTRS. Px = stan znacznika TRF (Transaction Flag =1 po ostatniej poprawnej transakcji. PTU_A. Py. Px .Drukarka Fiskalna POSNET Thermal i 3001 UWAGA: Zalecamy modyfikację aplikacji polegającą na wprowadzeniu odczytu stanu zegara RTC drukarki zawsze przed wykonaniem raportu dobowego i na początku każdego dnia pracy drukarki. PAR_NUM = ilość wydrukowanych paragonów fiskalnych (= <numer następnego> . Pm .parametr Ps jest nieistotny. TOT_A. 2. ESC P Ps #n ESC \ . gdzie poszczególne parametry oznaczają: Pe = kod błędu wykonania poprzedniej sekwencji (= 0 jeżeli sekwencja została wykonana poprawnie lub nie została rozpoznana). 90 . Pt . Programiści korzystający z funkcji „ODEŚLIJ” w zakresie odczytu rekordu począwszy od pozycji ‘ilość zerowań RAM’ powinni skorygować analizę zwracanej przez drukarkę informacji . gdzie: Ps = parametr ignorowany.

91 . (Od wersji: 39. 'POSNET Thermal' <wersja> = numer wersji oprogramowania np. 32.1' Kody błędu: = 1 : nie zainicjalizowany zegar RTC. Podczas wykonania tego rozkazu nie może wystąpić błąd. 39. '39. Str. stąd absolutnie niezawodna procedura testowania poprawności wykonania rozkazu powinna testować również bit CMD odpowiedzi na kod ENQ ! (patrz strona 71). ESC P #v ESC \ odpowiedz: [LBIDRS]: ESC P 1#R <typ>/<wersja> < ESC \ gdzie: <typ> = napis określający typ urządzenia np. Kod błędu Pe nie jest po wykonaniu tego rozkazu modyfikowany w odróżnieniu od rozkazu LBFSTRQ.1B (Beetle) i 32.3 (3001). [LBIDRQ] : Sekwencja odsyłająca typ i wersje oprogramowania.Drukarka Fiskalna POSNET Thermal i 3001 odpowiedz: [LBERNRS]: ESC P 1#E Pe ESC \ UWAGA: 1.2 (POSNET 2000)). którego wykonanie powoduje zerowanie tego kodu. Kod błędu jest kasowany w momencie wykonania każdego rozkazu oprócz LBERNRQ również rozkazu "nie rozpoznanego". 3. 2.1 (Th).

Opcjonalne linie dodatkowego opisu paragonu (w celu np. • zawiera informacje odczytane z pamięci fiskalnej.ustalony w procesie fiskalizacji drukarki. 2. • stawka podatkowa pobrana z pamięci fiskalnej na podstawie kodu stawki PTU (pole ‘vv. „rozszerzony” format paragonu.string[40]. Nagłówek.Ilość ----------.opis recepty przesłany przez system.Zniżka/Rp ----------. Drukarka ‘apteczna’ posiada wszystkie właściwości drukarki „detalicznej” (patrz opis sekwencji zawarty w poprzednich punktach tego rozdziału). format taki jak dla wartości BRUTTO.vv %| • linia 3: • ILOŚĆ . w którym każdy artykuł jest opisany w 3 liniach tekstu.. 4. mogą być max 3 linie po 40 znaków. podwójna szerokość linii). Format tego paragonu jest następujący: 1. ponadto mogą pojawić się pozycje „stornowane”.Drukarka Fiskalna POSNET Thermal i 3001 11. Może wystąpić ich dowolna ilość (do 255).3-znakowe oznaczenie dnia tygodnia dopisywane przez drukarkę) 3. Pozycje sprzedaży.Cena --------------.vv’) oraz kod stawki: znak ‘A’. Rozszerzenia te obejmują zmodyfikowany format paragonu fiskalnego oraz możliwość generowania kilku dodatkowych wydruków niefiskalnych.string[14] . przesłany przez aplikację. a ponadto jej funkcje zostały rozszerzone stosownie do potrzeb oprogramowania aplikacyjnego stosowanego w aptekach.. • CENA . Data. Opis paragonu w formie 3 linii: |0123456789012345678901234567890123456789| |. Nowy format paragonu fiskalnego.Opis sekwencji drukarki Posnet Thermal-A (apteczna). Str. przesłana przez system (format ustalony przez aplikację): |0123456789012345678901234567890123456789| |xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx| • linia 2: • ZNIŻKA/RP .string[12] (w tym wariancie o 4 znaki krótszy).cc (l) vv. W wyniku uzgodnień w twórcami oprogramowania dla aptek oraz z Ministerstwem Finansów ustalono dodatkowy. 92 .Nazwa ---------------------------------------------------| |. lub np.PTU -----| |--. |0123456789012345678901234567890123456789| |yy-mm-dd www | (‘www’ . max 217 znaków.Opłata ---| 5. dla wpisania zmiany adresu firmy).’D’ lub ‘Z’ (pole ‘l’) |0123456789012345678901234567890123456789| |rrrrrrrrrrrrrr cccccccc.Wartość ---------------. łącznie z kodami sterującymi (mogą to być LF-y ale również kody ‘wzbogacające’ wydruk np.wynik konwersji wartości numerycznej przesłanej przez system. wpisania numeru określonego przez aplikację wiążącego ten paragon z rachunkiem uproszczonym lub fakturą. format nagłówka jest zatem dowolny . • data odczytana z zegara drukarki. • linia 1: nazwa .

zawierających łączne kwoty sprzedaży BRUTTO w grupach A. w formacie: |0123456789012345678901234567890123456789| |Razem kkkkkkkk. Jedna linia (kreska) oddzielająca: |--------------------------------------------------------------| 9.kk VAT vvvvvvvv.jest to wynik konwersji posiadający max 10 cyfr + ‘.D.. • max 10 cyfr (przesłana przez komputer.k’ stanowi sumę wartości wszystkich pozycji i jest obliczana przez drukarkę i przesyłana przez komputer.Drukarka Fiskalna POSNET Thermal i 3001 • WARTOŚĆ sprzedaży BRUTTO. jako suma opłat od poszczególnych pozycji).ss | UWAGA: drukowane są tylko podsumowania dla tych stawek podatkowych. linia wydrukowana znakami o podwójnej szerokości: |0123456789012345678901234567890123456789| |Suma zł uuuuuuuu.C.).uu| • w przypadku gdy suma opłat jest mniejsza od zera na wydruku otrzymamy: |0123456789012345678901234567890123456789| |Zwrot zł uuuuuuuu.B. przesłana przez system . 93 . ale tez skontrolowana lokalnie.ss PTU vv. Pozycja „stornowana” . ssssssss. |0123456789012345678901234567890123456789| |iiiiiiiiiiii wwwwwwww. które występują w polu 5) (czyli jeżeli odpowiednia kwota jest niezerowa.vv| (kwota ‘kkkk.oo| 6. Kwota należności dla klienta..ww oooooooo. oraz stawki podatkowe grup A. ponadto dodatkowa linia z napisem „storno” o podwójnej szerokości: |0123456789012345678901234567890123456789| | # storno # | trzecia linia opisu artykułu ma w tym przypadku format: |0123456789012345678901234567890123456789| | iiiiiiiiiiii -wwwwwwww. dla kontroli poprawności danych) 8.ww -oooooooo.1.oo| 5.uu| Str.pola WARTOŚĆ i OPŁATA ze znakiem ‘-‘. • od 1 do 5 linii. • podsumowanie kwot jw. • OPŁATA za artykuł (format jw.Z..D: |0123456789012345678901234567890123456789| |Kwota ssssssss.pp| (y = ‘A’.’D’) oraz format dla kwoty sprzedaży wolnej od podatku: |Kwota zw.vv% pppppppp. Jedna linia (kreska) oddzielająca (po wszystkich pozycjach sprzedaży): |-------------------------------------------------------------| 7.ss PTU vv % pppppppp.pp| |Kwota ssssssss.’ przed pozycja groszy. Wartości sprzedaży w poszczególnych grupach podatkowych.

3 <linia1>. • numer paragonu fiskalnego. = 2 : błąd bajtu kontrolnego. = 5 : błąd odczytu zegara RTC. zawierające dowolny tekst (z wyłączeniem kodów sterujących). = 4 : błąd parametru (zła liczba linii).30. Str. gdzie: Pl = ilość pozycji sprzedaży = 0.generowania wydruku paragonu aptecznego.... ESC P Pl. Pn $s <linia1> CR <linia2> CR <linia3> CR <check> ESC \ Dodatkowa sekwencja dla nagłówka „paragonu aptecznego”: POCZĄTEK TRANSAKCJI (wejście w tryb TRANSAKCJI) .<linia3> = zawartość tych linii. [LBTRSORG] : Nagłówek „paragonu aptecznego”.ww| wwwwwwww.ww| 11. 94 . Numer unikatowy kasy jest odczytany z pamięci fiskalnej i ma postać 10-u znaków ASCII.Drukarka Fiskalna POSNET Thermal i 3001 UWAGA: • w tym formacie paragonu nie uwzględniamy rabatów. numer terminala + kod kasjera (3 znaki ASCII przesłane przez komputer). <check> : bajt kontrolny. jeżeli =0: paragon ‘ON_LINE’ (linie otrzymywane są drukowane na bieżąco) Pn = ilość dodatkowych linii umieszczanych w nagłówku paragonu. 10. max 6 cyfr. Modyfikacje sekwencji sterujących związane z dodatkowym formatem paragonu fiskalnego. do których ma dostęp aplikacja = 0. Kody błędów: = 1 : nie zainicjalizowany zegar RTC. Pn $s <check> ESC \ lub: ESC P Pl. 2 litery + 8 cyfr: |0123456789012345678901234567890123456789| | lll kk nnnnnnnn | 13. Stopka paragonu. = 6 : błąd operacji z pamięcią fiskalną = 40: błąd w dodatkowych liniach nagłówka (np. Ewentualne max 3 linie dodatkowe przesłane przez aplikację. za długie opisy) UWAGA: • Opcjonalne dodatkowe 3 linie paragonu są drukowane między nagłówkiem z pamięci fiskalnej a datą i numerem paragonu. • Parametr Pn musi zdefiniować faktycznie wykorzystywaną ilość dodatkowych linii (można pominąć ten parametr jeżeli nie korzystamy z tej opcji). oraz czas: |0123456789012345678901234567890123456789| |nnnnnn #aaa hh:mm| 12. Jeżeli reszta obliczona przez drukarkę na podstawie przesłanych przez komputer wartości WPŁATA i TOTAL jest nieujemna to dodatkowe 2 linie: |Gotówka |Reszta: wwwwwwww. odczytany z totalizerów terminala. Logo fiskalne wraz z numerem unikatowym kasy.

jw.48.. ESC P Pi $a <nazwa> CR <ilość> CR <recepta> CR <ptu>/CENA/BRUTTO/OPŁATA/ <check> ESC \ Jest to sekwencja definiująca jeden artykuł paragonu: • • • • • • Pi = numer linijki = 0 lub 1. Ogólne reguły syntaktyki rozkazów nie dopuszczają linii pustych.999. w którym drukarka oczekuje na sprzedaż tego specyfiku. • CENA = cena jednostkowa towaru. ponadto na obu wyświetlaczach (LCD i LED) drukowana jest wartość ujemna. 2. +49.3. sumy opłat dla całego paragonu. BRUTTO = kwota sprzedaży BRUTTO 10 cyfr max.50. operacja STORNO powoduje zwiększenie sumy opłat jeżeli stornowana pozycja ma ujemna opłatę. Str. <ilość> = string[12].2. dla towarów zwolnionych). = 42: błąd kwoty OPLATA.. sumy opłat dla całej doby do: .. = 21: sekwencja odebrana przez drukarkę przy wyłączonym trybie transakcji. zakres lub brak).. = 19: błąd wartości CENA (syntaktyka. jeżeli suma opłat z poszczególnych linijek jest < 0 to w polu podsumowań drukowany jest napis ‘Zwrot zł’. = 18: błędne oznaczenie stawki PTU (lub brak). ale z wyłączeniem jakichkolwiek kodów sterujących. = 4 : zły numer linii (błąd parametru Pi). sposób reprezentacji liczb ujemnych: BCD-10 ogranicza zakres kwot reprezentujących wartości: opłaty dla pozycji paragonu. = 22: błąd operacji STORNO . <recepta> = string[14]. = 2 : błąd bajtu kontrolnego. • Na końcu każdej linii musi znaleźć się terminator w postaci pojedynczego kodu CR (jedyny dozwolony kod kontrolny). dozwolony jest punkt dziesiętny przed dwoma ostatnimi cyframi..4 ale musi być: 1. również jeżeli jest wykonywana operacja STORNO. = 20: błąd wartości BRUTTO (syntaktyka. 95 .999. jeżeli tak. na raporcie dobowym w polu ‘Łączna opłata’ może również się pojawić wartość ujemna (teoretycznie. UWAGA: • numeracja linijek musi być ciągła. (te numery identyczne jak dla sekwencji LBTRSLN) = 16: błędna nazwa (pusta lub za długa). stąd jeżeli zachodzi potrzeba uzyskania linii oddzielającej (np. gdyby były same zwroty). • OPŁATA = kwota opłaty. (napis drukowany w polu ‘ZNIŻKA/RP’). Dalsze konsekwencje tego faktu są następujące: 1. format jw. poprawna jest sekwencja numerów 1. [LBTRSART]: Linia paragonu. z możliwością drukowania polskich liter i semigrafiki w kodzie MAZOWIA. czy jest zapamiętana wycena leku o danej nazwie. = 17: błędne oznaczenie ilości (puste lub za długie). format jw.Drukarka Fiskalna POSNET Thermal i 3001 • Każda linia może zawierać max 40 znaków ASCII.000. • Dopuszczamy przesłanie w polu <opłata> linijki paragonu wartości ujemnej.4 jeżeli wykonuje się operację STORNO ! • wykonanie operacji STORNO powoduje w tej wersji kontrolę. (nowe błędy dla sekwencji LBTRSART) = 41: błąd napisu <recepta>. np.00 . jw.. między nagłówkiem z pamięci fiskalnej a linią dodatkowego opisu) należy w niej umieścić co najmniej jedną spację.0. <ptu> = kod stawki PTU = ‘A’. jeżeli =0 to operacja STORNO ! <nazwa> = string[40].000. zakres lub brak).w wyniku jej wykonania suma w danej grupie podatkowej wychodzi ujemna).99 Kody błędu: = 1 : nie zainicjalizowany zegar RTC. • <check> = bajt kontrolny. > 0.2. zawierający dowolne znaki drukowalne.’D’ lub ‘ ‘ lub ‘Z’ (oba ostatnie oznacz. to odtwarzany jest stan..

96 . [LBTREXIT]: Akceptacja/ anulowanie paragonu. jeżeli różnica WPLATA-TOTAL <=0 to napisy ‘gotówka’. do których ma dostęp aplikacja = 0.bajt kontrolny. jest to suma pól OPŁATA dla wszystkich pozycji paragonu. gdzie: Pn = ilość dodatkowych linii umieszczanych w stopce paragonu.wysłanie sekwencji CAN ESC P 0 $e <check> ESC \ . = 28: przepełnienie totalizera. TOTAL = łączna należność dla klienta.wyprowadza drukarkę z dowolnego błędnego stanu do głównej pętli analizy syntaktyki. = 6 : błąd operacji z pamięcią fiskalną.Pn $e <kod> CR <linia1> CR <linia2> CR <linia3> CR WPLATA/TOTAL/<check> ESC \ lub (zakończenie paragonu „aptecznego”) : ESC P 1 $e <kod> CR WPLATA/TOTAL/OPŁATA/ <check> ESC \ lub: ESC P 1.Pn $e <kod> CR <linia1> CR <linia2> CR <linia3> CR WPLATA/TOTAL/OPŁATA/ <check> ESC \ ‘pozytywne’ zatwierdzenie transakcji. <check> = bajt kontrolny. lub błędna treść dodatkowych linii. rozumiana jako suma pól WARTOŚĆ dla wszystkich pozycji paragonu (dla kontroli poprzednich transferów).Drukarka Fiskalna POSNET Thermal i 3001 Zmodyfikowana sekwencja zakończenia paragonu LBTREXIT.3 <linia1>. = 4 : błąd parametru Pn. = 23: błędna liczba rekordów (linii) paragonu.. ‘reszta’ nie będą drukowane !) = 27: błędna suma całkowita TOTAL. za logo fiskalnym. = 24: przepełnienie bufora drukarki. parametr występuje tylko w sekwencji kończącej paragon „apteczny”. <kod> = string[3] .0. Str.również anulowanie paragonu w trybie „on-line” <check> . (po tym parametrze powinien być terminator CR !) WPLATA = kwota wpłacona przez klienta.. jeżeli = 0 to napisy „gotówka / reszta” nie będą drukowane. OPŁATA = łączna kwota. ESC P 0 $e <check> ESC \ .numer terminala (2 cyfry) + kod kasjera (litera). = 5 : błąd operacji z zegarem RTC.‘negatywne’ zatwierdzenie transakcji przez serwer (Cancel) . = 2 : błąd bajtu kontrolnego.0. Kody błędów: = 1 : nie zainicjalizowany zegar RTC. jaką musi zapłacić klient. UWAGA: . ESC P 1 $e <kod> CR WPLATA/TOTAL <check> ESC \ lub: ESC P 1.<linia3> = zawartość tych linii. = 25: błędny kod terminala/kasjera (zła długość lub format). = 26: błąd kwoty WPLATA (syntaktyka.

Nagłówek musi zawierać następujące informacje: • nazwa przedsiębiorstwa (apteki).ww| |CENA: cccccccc.1. Pola oznaczone przez (*) są opcjonalne. podwójna szerokość linii). = 44: brak w paragonie leku.pp| |OPŁATA: oooooooo.format wydruku. (nie zawiera kodów kontrolnych).3-znakowe oznaczenie dnia tygodnia dopisywane przez drukarkę) 1. format nagłówka jest zatem dowolny .cc| |VAT vv % : pppppppp. w której jest drukowany dany parametr nie będzie drukowana. Ilość.2. godzinę oraz numer kolejny wydruku niefiskalnego.n’ = string[30]: dowolny napis przesłany przez aplikację. cena.. o ściśle ustalonym formacie: • wycena leku (różne warianty). • raport kasowy (wariant „apteczny”). • zawiera informacje odczytane z pamięci fiskalnej. ‘ppp. Linia zawierająca datę..Drukarka Fiskalna POSNET Thermal i 3001 = 29: żądanie zakończenia (pozytywnego !) trybu transakcji.oo| Str. w momencie kiedy nie został on jeszcze włączony. Nagłówek.NIEFISKALNE ## | |NAZWA: nnnnnnnnnnnnnnnnnnnnnnnnnnnnnn| |POSTAĆ. wartość. opłata. w formacie (dane dopisywane automatycznie przez drukarkę): |0123456789012345678901234567890123456789| |yy-mm-dd www hh:mm kkkkkk| (‘www’ . łącznie z kodami sterującymi (mogą to być LF-y ale również kody ‘wzbogacające’ wydruk np. 1. • zamówienie na lek recepturowy. Jeżeli dane pole jest związane z parametrem napisowym to jeżeli jest on pusty lub równy ‘ ‘ (pojedyncza spacja) to cała linia.4. dla którego była drukowana wcześniej wycena (transakcja nie może być poprawnie zakończona. Tytuł wydruku w formacie: |0123456789012345678901234567890123456789| | ## WYCENA LEKU . 1. 97 . |0123456789012345678901234567890123456789| |ILOŚĆ: iiiiiiiiii| |WARTOŚĆ: wwwwwwww. DAWKA: pppppppppppppppppppp| |OPAKOWANIE: oooooooooooooooooooo| gdzie: ‘nnn. ‘ooo.o’ = string[20].p’ = string[20]. ponieważ tablica zapamiętanych wycen leków nie jest pusta) Formaty dodatkowych (aptecznych) wydruków niefiskalnych. W przypadku parametru numerycznego (kwota) linia jest pomijana jeżeli od-nośny parametr jest równy 0 oraz wydruk danej linii został explicite „zablokowany” w sekwencji sterującej (por. podatek VAT. opis sekwencji LBRPDTA na stronie 103).3. Wycena leku .ustalony w procesie fiskalizacji drukarki. = 43: błąd kwoty OPŁATA. max 217 znaków. • adres • NIP 1. W opisywanym rozwiązaniu wprowadzono następujące wydruki niefiskalne..

. w formacie ‘1995-xx-xx’. Dopłata 100 % (*).p’.Drukarka Fiskalna POSNET Thermal i 3001 gdzie: ‘iii.w’ oprócz kontroli formalnej pod-lega również kontroli na zgodność wycen leków z treścią paragonu fiskalnego.’cc. Drukowana jest wartość ‘kk.’pp..kk| 1..7. Ciąg linii zawierających opcjonalne parametry numeryczne: 1. |0123456789012345678901234567890123456789| |OPŁATA PODSTAWOWA: kkkkkkkk.6... dopuszczalne znaki ‘0’. |0123456789012345678901234567890123456789| |PONAD LIMIT: kkkkkkkk.i’ = parametr napisowy: string[20]. traktowane jako napis. ‘www.kk| 1. |0123456789012345678901234567890123456789| Str...11. Ilość lekospisowa (*). Parametry sprzedaży w formacie: |0123456789012345678901234567890123456789| |KASA NR nnnnnnnnnnnnnnnnnnnn| |PŁATNE: pppppppppp| |RECEPTA: xxxxxxxxxx| |REFUNDACJA: rrrrrrrrrr| |WYDAŁ: wwwwwwwwwwwwwwwwwwwww| |DATA: dddddddddd| (*) gdzie: ‘nnn.w’. Linia nie drukowana jeżeli parametr Prf <> 0. ‘xxx.’9’ oraz ‘.. Stopa podatku VAT jest odczytana z pamięci fiskalnej i wybrana na podstawie jednoznakowego parametru (typu ‘char’) przesłanego w sekwencji LBRPDTA (który może być równy ‘A’.. |0123456789012345678901234567890123456789| |LIMIT: kkkkkkkk. 1. Drukowana jest wartość ‘kk..k’ przesłana jako parametr numeryczny (kwota).. |0123456789012345678901234567890123456789| |DOPŁATA (100%): kkkkkkkk.’ryczałt’. przy czym parametr ‘ww. Ta linia jest drukowana jeżeli napis (string[10]) odpowiadający temu parametrowi sekwencji jest niepusty: |0123456789012345678901234567890123456789| |ILOŚĆ LEKOSPISOWA: iiiiiiiiii| 1.. ‘rrr. ‘ddd. Linia nie drukowana jeżeli parametr Pcl <> 0. Drukowana jest wartość ‘kk.5. Nie drukowana jeżeli parametr Ppl <> 0. Drukowana jest wartość ‘kk..8. 98 .kk| 1. Linia nie drukowana jeżeli parametr Pd100 <> 0.p’ = string[10]: oznaczenie zniżki np. Drukowana jest wartość ‘kk.9. Linia nie drukowana jeżeli parametr Pop <> 0.w’ = string[30]: dane osoby wydającej lek.(wiersz drukowany jeżeli odpowiedni parametr jest niepusty). ‘ppp. Cena limitowa (*).d’ = string[10]: oznaczenie daty np. ‘ww.r’ = string[10]: numer refundacji (traktowany jako napis)..’).Opłata podstawowa (*).’D’ lub ‘Z’ lub ‘ ‘).kk| 1. Dopłata ponad cenę limitową (*).k’ przesłana jako parametr numeryczny (kwota)...o’ = wartości przesłane jako parametry numeryczne (kwoty...k’ przesłana jako parametr numeryczny (kwota).10.itp.k’ przesłana jako parametr numeryczny (kwota).k’ przesłana jako parametr numeryczny (kwota).c’.n’ = string[20]: numer kasy + numer paragonu w systemie.. ‘30%’.x’ = string[10]: oznaczenie rodzaju recepty.’oo.Refundacja (*).

.): |0123456789012345678901234567890123456789| |yy-mm-dd www hh:mm kkkkkk| 2. Raport VAT .l’ = string[30]: dane lekarza (numer .’qq..opcjonalny (*). godzinę oraz numer kolejny wydruku niefiskalnego. Linia zawierająca datę.3.16. <> 0.p’. Koniec wydruku.. ‘lll.1.NIEFISKALNE ## | Raport kasowy.NIEFISKALNE ## | |OD: dd-mm-rrrr gg:mm | |DO: dd-mm-rrrr gg:mm | |KASA NR nnnn kkkkkkkkkkkkkkkkkkkkkkkkkkk| |PARAGONY: pppppp-qqqqqq| gdzie: ‘dd-mm-rrrr gg:mm’ = data / godzina przesłana z systemu (jako ciąg parametrów binarnych Pd. jw..cc rrrrrrrr.2. 99 .rr| Str. Tytuł wydruku w formacie: |0123456789012345678901234567890123456789| | ## RAPORT KASOWY .q’ = string[6] = napisy do oznaczenia zakresu numerów paragonów (według systemu komputerowego).k’ = string[27] : identyfikacja osoby obsługującej..4 linii..Drukarka Fiskalna POSNET Thermal i 3001 |REFUNDACJA: kkkkkkkk. dowolny napis.qq| |VAT cc % : cccccccc. numer ubezpieczenia. ‘www.. ‘pp.bb qqqqqqqq. Nagłówek (dane podatnika odczytane z pamięci fiskalnej. 1.w’ = string[20]: nazwa województwa. nazwisko i imię). w formacie (dane dopisywane automatycznie przez drukarkę. ‘rrr. Opcjonalne dane dodatkowe . ‘kk. 2...blok 0.aa pppppppp.Pmn w sekwencji sterującej LBAPTREP) ‘nnnn’ = string[4]: numer kasy. Blok ten nie jest drukowany jeżeli parametr Pv sekwencji LBAPTREP jest Format: |0123456789012345678901234567890123456789| |VAT aa % : aaaaaaaa. format: |0123456789012345678901234567890123456789| | ## KONIEC WYCENY LEKU .p’ = string[30]: dane pacjenta (np.w postaci napisu). jw.12. 2.pp| |VAT bb % : bbbbbbbb.r’ = string[20]: nazwa organizacji refundującej. Drukowane są tylko linie zawierające niepuste napisy.). |0123456789012345678901234567890123456789| |PACJENT: pppppppppppppppppppppppppppppp| (*) |LEKARZ: llllllllllllllllllllllllllllll| (*) |REFUNDATOR: rrrrrrrrrrrrrrrrrrrr| (*) |WOJEWÓDZTWO: wwwwwwww wwwww| (*) gdzie: ‘ppp.kk| 1. dowolny 4-znakowy napis. 2.4.

p’. jw..zz’). Dane osoby przyjmującej zamówienie: Str.| tttttttt.dd’ = kwoty sprzedaży w grupach PTU A.6.opcjonalny (*)... 3.Drukarka Fiskalna POSNET Thermal i 3001 |VAT dd % : dddddddd.. godzinę oraz numer kolejny wydruku niefiskalnego.. 3.ss’ = kwoty podatku w poszczególnych grupach podatkowych. : zzzzzzzz.xx gdzie: ‘aa’.zz| |GOTÓWKA POCZĄTKOWA pppppppp. 100 . 3.tt’ = suma kwot ‘pppppppp.tt| Zamówienie na lek recepturowy.’kk. Blok ten nie jest drukowany jeżeli parametr Pg jest <> 0..zz |RAZEM : xxxxxxxx.xx’ = sprzedaż całkowita (nie jest sprawdzana ani zgodność z danymi z totalizera drukarki ani poprawność dodawania kwot z ‘aaaaaaaa..aa’.D naliczone przez system (wartości te nie są przez drukarkę sprawdzane na zgodność z totalizerami).’ssssssss. Linia zawierająca datę.k’ = wartości 3 kwot przesłane przez system 2.linia w formacie: |0123456789012345678901234567890123456789| | ## KONIEC RAPORTU .. ‘pppppppp.ss| 0.ZAMÓWIENIE ## | (następna linia wydrukowana znakami o podwójnej szerokości): |01234567890123456789| |NUMER: nnnnnnnnnn| gdzie: ‘nnn. Raport gotówkowy . dla oznaczenia kwoty ujemnej. Nagłówek (dane podatnika odczytane z pamięci fiskalnej.dd |ZW.1. nie jest kontrolowana przez drukarkę).5.zz’ = kwota sprzedaży zwolnionej od podatku.’dd’ = stopy podatkowe odczytane z modułu . ‘tttttttt.NIEFISKALNE ## | ssssssss. Tytuł wydruku w formacie: |0123456789012345678901234567890123456789| | ## NIEFISKALNE ## | | ## LEK RECEPTUROWY . 3.). traktowany jako napis.aa’.jednoznakowy parametr przesłany przez system.5. jw. 2. w formacie (dane dopisywane automatycznie przez drukarkę. ‘xxxxxxxx.’ssssssss. ‘aaaaaaaa.pp’. Koniec wydruku .n’ = string[10] .numer zamówienia przesłany z systemu.Pm1. Data przyjęcia zamówienia: |0123456789012345678901234567890123456789| |DATA: dd-mm-rrrr | gdzie: ‘dd-mm-rrrr’ = data przesłana z systemu jako 3 parametry liczbowe Py1.’bb’.4.): |0123456789012345678901234567890123456789| |yy-mm-dd www hh:mm kkkkkk| 3. ‘zz. równy ‘ ‘ lub ‘-‘. ‘zzzzzzzz.pp’.kk| gdzie: s = string[1] .z’.ss’ (obliczona przez system. |0123456789012345678901234567890123456789| |ZALICZKI s zzzzzzzz.2..’pp.pp| |GOTÓWKA KOŃCOWA kkkkkkkk..Pd1.’zzzzzzzz.’dddddddd.3..

..Pd2: rok (2 ostatnie cyfry).rr’. 101 .31)..... |0123456789012345678901234567890123456789| |PACJENT: ppppppppppppppppppppppppppppp| (*) gdzie: ‘ppp. Linia drukowana tylko jeżeli odnośny parametr jest niepusty..10..6.| UWAGA: .Pd2: nieistotne). miesiąc (=1. dzień (=1.. Format: |0123456789012345678901234567890123456789| |OPŁATA: kkkkkkkk... Zakończenie wydruku.. gdy Py2=Pm2=Pd2=0 (lub brak parametrów).... 3...kk | gdzie: ‘kk...opcjonalny: |0123456789012345678901234567890123456789| |TERMIN ODBIORU: dd-mm-rrrr | lub drugi format (bez parametrów): |TERMIN ODBIORU:.... • format z datą ‘dd. |0123456789012345678901234567890123456789| |LEKARZ: llllllllllllllllllllllllllllll | (*) gdzie: ‘lll.12)...data drukowana w tej linii jest wybierana przez 3 parametry numeryczne Py2. Linia drukowana jeżeli odnośny parametr jest niepusty. 3.. nazwisko i imię)...7.. Kwota przedpłaty (*)..p’ = string[30]: dane pacjenta (np.. Lekarz (*)..99.. numer ubezpieczenia.. Termin odbioru (*) . różne wartości tych parametrów dają 3 możliwe formaty linii: • linia pominięta.k’ = wartość kwoty przesłana z systemu w postaci numerycznej. gdy Py2 >=100 (Pm2..... Format: |0123456789012345678901234567890123456789| | ## KONIEC ZAMÓWIENIA .. 3..w postaci napisu)..Pm2... Pacjent (*)... 3.NIEFISKALNE ## | Str... gdy wszystkie parametry mają poprawny zakres a Py2=0. • format „z kropkami”.Drukarka Fiskalna POSNET Thermal i 3001 |0123456789012345678901234567890123456789| |PRZYJĄŁ: wwwwwwwwwwwwwwwwwwwww| gdzie: ‘www.9.w’ = string[30] = napis przesłany z systemu.l’ = string[30]: dane lekarza (numer ..8... 3.. Linia ta nie jest drukowana jeżeli parametr Pks<>0..

Kontrolowana jest również zgodność wartości leku na paragonie z wartością podaną na wycenie. Podczas tworzenia (tryb blokowy) lub drukowania (tryb „On-Line”) paragonu każda linijka jest kontrolowana pod kątem zgodności nazwy z nazwami zawartymi w tablic nazw dla wycen leków. takie. Ponadto zauważmy. 102 . że ponieważ identyfikacja wyceny odbywa się na podstawie nazwy . kwoty wchodzące do obliczenia podatku VAT. a nie ‘opłaty’ !).co jest preferowanym ze względów organizacyjnych rozwiązaniem. Poprawne zatwierdzenie transakcji może nastąpić tylko. w sposób odporny na wyłączenie zasilania !) w tablicy zawierającej nazwy i wartości (tj. to umieszczona w tablicy wycen wartość jest sumą wartości wszystkich wycen odpowiadających tej nazwie. Próba zakończenia transakcji bez spełnienia tego warunku daje błąd transakcji. dla których były drukowane poprzednio wyceny.przy pomocy sekwencji LBCLRDTA oraz kasowania całej tablicy sekwencja LBCLRALL. Zwróćmy uwagę.dla zaakceptowania ich przez klienta. W dowolnym momencie przy wyłączonym trybie transakcji (!) można wydrukować pewną liczbę takich wycen . Każda wycena jest zapamiętana przez drukarkę (w pamięci nieulotnej tj. Operacje takie są odnotowywane w pamięci nieulotnej drukarki i na raporcie dobowym jest drukowana ilość usuniętych w ten sposób pozycji oraz war-„stornowanych wycen”. Pojemność tej tablicy wynosi 20 pozycji co ogranicza maksymalną ilość wycen drukowanych „pod rząd”.Drukarka Fiskalna POSNET Thermal i 3001 Związek między wydrukami niefiskalnymi wycen leków a wydrukiem paragonu fiskalnego. dwulinijkowy lub „apteczny”) oraz trybu drukowania (paragon blokowy / „On-Line”). dla których nie drukowano wycen.przewidziano możliwość usunięcia pozycji z tablicy wycen . Kontrola ta jest przeprowadzana przez drukarkę zawsze (przy „niepustej” tablicy) niezależnie od rodzaju paragonu (jedno-. ale fakty takie zostaną odnotowane na raporcie dobowym. Str. który powoduje w trybie blokowym usunięcie całego paragonu i odtworzenie stanu tablicy „wycen” a w trybie „On-Line” skutkuje anulowaniem transakcji. Ponieważ może zaistnieć sytuacja. gdy wszystkie pozycje umieszczone w tablicy „wycen” zostaną wydrukowane / umieszczone na paragonie. Reasumując: powiązano wydrukowanie wyceny leku z jego sprzedażą. Jeżeli wydrukowano chociaż jedną wycenę (tablica jest „niepusta”) to nie ma możliwości poprawnego zakończenia transakcji bez sprzedaży (umieszczenia na paragonie wszystkich pozycji. Jeżeli nazwa się zgadza ale wartości są różne zostanie zgłoszony błąd transakcji. 40-znakowe nazwy. Zapamiętywane są pełne.kolejność wycen nie musi odpowiadać kolejności leków na paragonie. Jeżeli dana nazwa pojawi się w wycenie więcej niż jeden raz. Wydrukowanie ciągu wycen poprzedza w tym rozwiązaniu wydrukowanie paragonu fiskalnego . Po wykryciu danej nazwy sprawdzana jest zgodność wartości. Ponadto na paragonie można umieścić również towary „spoza listy” tj. że „stornowanie” pozycji na paragonie powoduje jej „odtworzenie” w tablicy. W wyjątkowych sytuacjach można zrezygnować ze sprzedaży. Nie jest możliwe wydrukowanie samej wyceny bez dokonania sprzedaży. W przypadku stwierdzenia zgodności nazw i wartości dana pozycja jest zaznaczana w tablicy jako „wydrukowana” (ale nie jest „usuwana” ze względu na możliwość anulowania transakcji). kiedy po wydrukowaniu wyceny zrezygnowano ze sprzedaży leku . Drukowanie ciągu wycen leków jest ściśle powiązane ze sprzedażą tych leków na paragonie fiskalnym w następujący sposób.

nazwy i wartości (jeżeli dana nazwa już występuje w tablicy to wartość zapamiętana w tablicy jest inkrementowana o aktualną kwotę przekazana w sekwencji). <kasa_nr> = string[20]. Str. Parametry Pcl.Pcl. Parametry oznaczone jako (*) mogą być puste. Parametry napisowe sekwencji. <nazwa> = string[30]. • dopisanie do tablicy „zapamiętanych wycen” leków danej pozycji . <ptu> = char. Pop : kwota <oplata_podst> (linia ‘OPŁATA PODSTAWOWA:.. zakodowana jako dwa znaki heksadecymalne).. <opakowanie> = string[20].’). Pc = 1 : bez odcięcia. W szczególności w każdej sekwencji występuje 2-znakowy parametr <check> oznaczający bajt kontrolny sekwencji (suma znaków modulo 256. Pd100: kwota <dopłata> (linia ‘DOPŁATA (100%):. We wszystkich podanych niżej sekwencjach obowiązują ogólne zasady syntaktyki dla drukarki „DF-300”.. Brak parametru lub wartość zerowa powoduje drukowanie linii związanej z daną kwotą. ESC P Pc.Pop.. <platne> = string[10].Pd100.Prf <> 0 oraz dana kwota jest zerowa. wtedy odnośna linia nie jest drukowana..Prf *w <nazwa> CR <postac_dawka> CR <opakowanie> CR <ptu> CR <ilosc> CR <kasa_nr> CR <platne> CR <recepta> CR <refundacja> CR <wydal> CR <data> CR <ilosc_lekospis> CR <pacjent> CR <lekarz>CR <refundator> CR <wojewodztwo> CR <wartosc> / <cena> / <vat> / <oplata> / <limit> / <ponad_limit> / <doplata> / <oplata_podst>/ <refundacja> / <check> ESC \ Sekwencja powoduje: • wydrukowanie wydruku niefiskalnego dla wyceny leku.. 103 .’).’). Prf : kwota <refundacja> (linia ‘REFUNDACJA:. <postac_dawka> = string[20]. Ppl : kwota <ponad_limit> (linia ‘PONAD LIMIT:. Parametr Pc steruje pracą obcinacza po zakończeniu drukowania: Pc = 0 : odcięcie paragonu... <recepta> = string[10]... [LBRPDTA]: Wycena leku. Jako parametr „pusty” jest również uznawana pojedyncza spacja.Ppl.’).’).Prf powodują zablokowanie drukowania wybranych kwot jeżeli dany parametr jest Pcl.Drukarka Fiskalna POSNET Thermal i 3001 Sekwencje sterujące dla uzyskania dodatkowych aptecznych wydruków niefiskalnych. również jeżeli kwota ta jest zerowa. <refundacja> = string[10]... Pcl : kwota <limit> (linia ‘LIMIT:. <ilosc> = string[10].

= 4 : błąd parametru (Pc. = 60: błąd pola <refundator>.<ponad_limit>. <ilosc_lekospis> = string[10] (*). = 61: błąd pola <wojewodztwo>. <refundator> = string[20] (*).<refundacja> (może być błąd syntaktyki lub brak jednego z parametrów).<cena>. <wojewodztwo> = string[20] (*). = 54: błąd pola <refundacja>.Drukarka Fiskalna POSNET Thermal i 3001 <wydal> = string[30]. = 5 : błąd odczytu zegara RTC.<oplata>. <lekarz> = string[30] (*). pozostałe błędy sekwencji: = 62: błąd jednej z wartości numerycznych <wartosc>.<refundacja>. <data> = string[10] (*). = 50: błąd pola <ilosc>. = 48: błąd pola <opakowanie>.Prf). = 59: błąd pola <lekarz>. = 3 : zła ilość parametrów (więcej niż 6).. = 53: błąd pola <recepta>.. = 56: błąd pola <data>.<doplata>. = 47: błąd pola <postac_dawka>. = 57: błąd pola <ilosc_lekospis>. 104 . = 55: błąd pola <wydal>. <oplata_podst>.<vat>. = 45: przepełnienie tablicy wycen (zbyt duża liczba wycen wydrukowana). błędy parametrów napisowych sekwencji: = 46: błąd pola <nazwa>.<limit>. = 2 : błąd bajtu kontrolnego.. muszą występować wszystkie nawet jeżeli nie wszystkie są drukowane): <wartosc>. = 49: błąd pola <ptu>. = 52: błąd pola <platne>. Str. <pacjent> = string[30] (*). = 58: błąd pola <pacjent>. = 51: błąd pola <kasa_nr>. Kody błędów: = 1 : nie zainicjalizowany zegar RTC. Parametry numeryczne sekwencji (kwoty.

Pd2 = dzień = 1.’). Ph1. paragonu dla raportu. Pg <> 0 : blok raportu gotówkowego nie jest drukowany. = 2 : błąd bajtu kontrolnego.Pmn1 = data / godzina początkowa raportu (linia ‘OD:’). Kody błędów: = 1 : nie zainicjalizowany zegar RTC.. nawet jeżeli ten blok nie jest drukowany.23. ESC P Py1. <osoba> = string[27] = identyfikacja osoby obsługującej. musi występować. Pm2. Ph2.59. ESC P *a <check> ESC \ Kody błędów: = 1 : nie zainicjalizowany zegar RTC. [LBAPTREP] : Raport kasowy w formacie dla aptek. Parametry numeryczne (kwoty). Pm1. UWAGA: poprawność daty (ilość dni miesiąca) nie jest kontrolowana. Py1. = 2 : błąd bajtu kontrolnego. [LBCLRALL] : Kasowanie całej zapamiętanej listy wycen leków.Drukarka Fiskalna POSNET Thermal i 3001 [LBCLRDTA] : Kasowania zapamiętanych danych o wycenie leku („stornowanie wyceny”)..<brutto_b>. <par2> = string[6] = końcowy nr.Py2 = rok = 0.12..<brutto_d> = kwoty sprzedaży w grupach podatkowych A.Pd1. Ph1. Pv <> 0 : blok raportu kwot VAT nie jest drukowany. Pg *r <kasa> CR <osoba> CR <par1> CR <par2> CR <brutto_a> / <brutto_b> / <brutto_c> / <brutto_d> / <brutto_z> / <total_brutto> / <ptu_a> / <ptu_b> / <ptu_c> / <ptu_d> / <total_ptu> / <znak_z> CR <zaliczki> / <got_pocz> / <got_konc> / <check> ESC \ Parametry: Py1. Pmn1.. <znak_z> = string[1] = ‘ ‘ lub ‘-‘ = znak kwoty drukowanej w linii ‘ZALICZKI.. Parametry napisowe: <kasa> = string[4] = numer kasy (traktowany jako dowolny napis). przy czym 0: 2000). Py2.Ph1.. Pv. UWAGA: wykonanie sekwencji gdy tablica jest pusta nie powoduje zgłoszenia błędu.Ph2 = godzina = 0. 105 .Pm1. <par1> = string[6] = początkowy nr. Str. UWAGA: brak parametrów Pv.31.Pmn2 = minuta = 0.<brutto_c>.. Pm1.Pm2 = miesiąc = 1.. Pd1..Pmn2 = data / godzina końcowa raportu (linia ‘DO:. Pmn2.99 (2 ostatnie cyfry. = 63: brak w tablicy zapamiętanych wycen podanej nazwy.Pd2. Pmn1. Py2. Pd1. paragonu dla raportu. Pd2. Muszą zawsze występować wszystkie nawet jeżeli blok kwot VAT i/lub blok raportu gotówkowego nie są drukowane: <brutto_a>. ESC P *c <nazwa> CR <check> ESC \ sekwencja usuwa z tablicy zapamiętanych wycen pozycję identyfikowaną przez nazwę <nazwa> = string[40].D.’.Ph2..Pg oznacza Pv=Pg=0 (bloki są drukowane).Pm2.

. Pd1 = dzień = 1. Py2 = rok = 0.. błędy parametrów napisowych sekwencji: = 64: błąd pola <kasa>. na końcu linii jest drukowana data określona przez parametry Py2. Pks. UWAGA: Dodatkowy parametr Pn (>1) powoduje wydrukowanie więcej niż jednego zamówienia na lek recepturowy przy użyciu jednej sekwencji.8 = ilosc kopii numerka na lek recepturowy.w. = 65: błąd pola <osoba>.. Pm2 i Pd2.. Pm2. a linia jest uzupełniona kropkami.. Py1 = rok = 0. .. [LBRPORD] : Zamówienie na lek recepturowy. UWAGA: .12. 106 ..gdy Py2=100 to parametry nie są drukowane..Pm2.31. Pks<>0 : kwota przedpłaty nie jest drukowana.Pd1 = data przyjęcia zamówienia (linia 'DATA:. Py2.. Pm1.w. <ptu_a>. = 67: błąd pola <par2>..Pm1. .. Pd1.oczywiście wartość ta jest dodawana raz. ESC P Py1. Zwróćmy uwagę. Pn=0.Drukarka Fiskalna POSNET Thermal i 3001 <brutto_z> = kwota zwolniona od podatku. Str. Kody błędów: = 1 : nie zainicjalizowany zegar RTC.Pd2 = termin odbioru (linia 'TERMIN ODBIORU. pozostałe błędy sekwencji: = 69: błąd jednej z wartości numerycznych <brutto_a>.p.<total_ptu> (może być błąd syntaktyki lub brak jednego z parametrów).<ptu_b>. = 4 : błąd parametru (Py1. <total_brutto> = suma kwot j.'). Po wydrukowaniu ostatniego numerka na wyświetlaczu będzie prawidłowa kwota do zapłaty obejmująca również opłaty za leki recepturowe. Ponadto sekwencja w nowej postaci powoduje zwiększenie wartości na wyświetlaczu o przesłaną kwotę opłaty ( <opłata> . = 2 : błąd bajtu kontrolnego. wartość 0 lub brak parametru powoduje wydrukowanie jednego egzemplarza. że ponieważ początek transakcji zeruje wartość na wyświetlaczu prawidłowa sekwencja działań polega na wydrukowaniu paragonu fiskalnego oraz bezpośrednio po nim numerku (ew.<ptu_c>. = 3 : zła ilość parametrów (więcej niż 12).<ptu_d> = kwoty podatku naliczonego od kwot sprzedaży w grupach A... Pd2..99 (2 ostatnie cyfry. = 68: błąd pola <znak_z>.99 lub 100 (2 ostatnie cyfry.w p. Pd2 = dzień = 1.12 lub 0..31 lub 0. = 5 : błąd odczytu zegara RTC. Pn *k <numer> CR <osoba> CR <pacjent> CR <lekarz> CR <opłata> / <check> ESC \ Sekwencja powoduje wydrukowanie zamówienia na lek recepturowy.Pg). ciągu numerków) na lek recepturowy... jeżeli jest drukowana więcej niż jedna kopia). przy czym 0: 2000). Pm1 = miesiąc = 1.gdy Py2=Pd2=Pm2=0 to linia 'TERMIN ODBIORU. Py2.. Pm2 = miesiąc = 1...').' nie jest drukowana. = 66: błąd pola <par1>. Parametry: Py1..D <total_ptu> = suma kwot podatku j. przy czym 0: 2000).

Kody błędów: = 1 : nie zainicjalizowany zegar RTC. Kody błędów: = 1 : nie zainicjalizowany zegar RTC. Sekwencja LBCLRALL usuwa z listy wszystkie nazwy które pojawiły się zarówno w wycenach jak i opisach. Informacja o usuniętym opisie pojawia się w raporcie dobowym w postaci linii o formacie: |ILOŚĆ ANULOWANYCH OPISÓW iiiiii| Str. <opis> = napis złożony z max. Sekwencja LBCLRTXT usuwa z listy nazwę. = 74: błąd pola <nazwa>. ESC *t <nazwa> CR <opis> #255 <check> ESC \ gdzie: <nazwa> = napis złożony z max. Fakt ten powoduje konieczność sprzedaży tego towaru w trakcie następnej transakcji. = 75: błąd pola <opis>. = 72: błąd pola <pacjent>. <osoba> = string[30] = dane osoby przyjmującej zamówienie. Jako parametr "pusty" jest również uznawana pojedyncza spacja. Jest to zatem analogiczna koncepcja „powiązania” drukowania opisów leków z ich sprzedażą jak dla wycen leków. (inne błędy) = 74: błąd kwoty <opłata>. Usunięcie nazwy z listy jest odnotowywane w raporcie dobowym. [LBPRNTXT]: Opisu działania leku. = 71: błąd pola <osoba>. jeżeli ta sama nazwa pojawiła się w wycenie leku to nie jest ona usuwana. = 73: błąd pola <lekarz>. 107 . <lekarz> = string[30] (*). traktowany jako napis. (błędy parametrów napisowych sekwencji) = 70: błąd pola <numer>. = 5 : błąd odczytu zegara RTC. 2000 znaków ale nie więcej niż 50 linii zakończony kodem ASCII 255 (dziesiętnie)..Pks). <pacjent> = string[30] (*). przekroczenie dopuszczalnej ilości linii = 50 UWAGA: Jest zapamiętywany fakt wydrukowania opisu leku o danej nazwie. <check> = bajt kontrolny dla całej sekwencji. = 3 : zła ilość parametrów (więcej niż 7). która pojawiła się w opisie. = 2 : błąd bajtu kontrolnego. lub usunięcia tej nazwy z listy przy pomocy sekwencji LBCLRTXT. wtedy odnośna linia nie jest drukowana.Drukarka Fiskalna POSNET Thermal i 3001 Parametry napisowe: Parametry oznaczone jako (*) mogą być puste. 30 znaków zakończony CR. = 4 : błąd parametru (Py1. = 2 : błąd bajtu kontrolnego. <numer> = string[10] = numer zamówienia.

suma kontrolna. 108 . <check> . która została tam wpisana przy użyciu sekwencji LBPRNTXT. ESC P *z <nazwa> CR <check> ESC \ . [LBPRNDIR] : Sekwencja związana z obsługą dodatkowego portu szeregowego. ESC P Ps. = 76: brak w tablicy zapamiętanych opisów podanej nazwy. Kody błędów: = 2 : błąd bajtu kontrolnego.LBPRNXT będą kierowane na zdefiniowane urządzenie aż do ponownego odebrania sekwencji LBPRNDIR lub wyłączenia zasilania. Kody błędów: = 1 : nie zainicjalizowany zegar RTC.Drukarka Fiskalna POSNET Thermal i 3001 [LBCLRTXT] : Kasowanie opisu działania leku z tablicy wycen.LBRPORD.LBAPTREP.sekwencja usuwa z tablicy zapamiętanych wycen pozycję identyfikowaną przez nazwę <nazwa> = string[DL_NAZWY]. = 4 : błąd parametru Ps Str. = 2 : błąd bajtu kontrolnego.Pm #y <check> ESC \ Ps = 0: wydruki niefiskalne kierowane będą na drukarkę paragonową Ps = 1: wydruki niefiskalne kierowane będą na drukarkę zewnętrzną Opcjonalny parametr Pm określa gęstość druku (tylko dla drukarki zewnętrznej): Pm = 0 (lub brak) : drukuj z aktualnie wybraną gęstością Pm = 1 : 10 CPI Pm = 2 : 12 CPI Pm = 3 : 17 CPI Pm >=4 : 20 CPI Pm = 5 : Wybór „slip printera” (TM-290 .przełączenie w tryb 42 kolumn) UWAGA: Po odebraniu tej sekwencji wszystkie wydruki generowane przez następujące dalej sekwencje: LBRPDTA.

512 znaków. niektóre programy sterujące interfejsem wymagają dla poprawnej pracy nadajnika (komputera) zwarcia sygnału RTS z CTS (od strony komputera). Zastosowanie tego protokołu umożliwia poprawną pracę interfejsu przy wykorzystaniu połączenia za pomocą jedynie trzech (interfejs napięciowy) lub czterech (pętla prądowa) przewodów. Interfejs ten umożliwia komunikację dwukierunkową. Można również zastosować protokół sprzętowy przy użyciu linii RTS. w stan wysoki (+12V) w stanie gotowości. Opis interfejsu szeregowego Parametry interfejsu szeregowego są ustalone "na stałe" (Tabela 1. protokół XON-XOFF. Zwykle trzeba zrealizować połączenie RTS drukarki z CTS komputera.dane odbierane przez drukarkę.19200 (domyślnie 9600) 8 Brak 1 XON-XOFF Brak bodów Zwróćmy uwagę na ostatni parametr w powyższej liście. gdy ilość znaków w buforze spadnie poniżej określonego progu (512 znaków). gdy ilość znaków spadnie poniżej 1/4 długości bufora. Ponadto. gdy aplikacja wymaga odczytu statusu drukarki. aż do momentu. FIFO). że komputer nie ma możliwości wstrzymania transmisji danych wysyłanych przez drukarkę. interfejs szeregowy drukarki może pracować jako interfejs napięciowy (wg standardu RS-232C).Opis interfejsów drukarek fiskalnych Thermal i 3001 Uwagi ogólne Drukarki POSNET Thermal i POSNET 3001 wyposażono w interfejs szeregowy RS-232C. W chwili. Wówczas transmisja znaków z komputera do drukarki powinna zostać wstrzymana.Drukarka Fiskalna POSNET Thermal i 3001 12. gdy bufor wejściowy ulegnie zapełnieniu (w tym przypadku będzie w nim 1536 znaków). W najprostszym przypadku (interfejs napięciowy) wystarczą 3 przewody . Str. Od strony drukarki żadne zwarcia nie są wymagane.): Tabela 1 PARAMETR Szybkość transmisji Ilość bitów informacyjnych Parzystość Ilość bitów STOP Protokół komunikacyjny odbiornika Protokół komunikacyjny nadajnika WIELKOŚĆ 1200. hex 13) w momencie. który informuje. Okablowanie. Często popełniany błąd w takim połączeniu to zastosowanie kabla. kiedy procesor drukarki pobierze z bufora odpowiednią ich liczbę . Stan braku gotowości urządzenia zachodzi w momencie zapełnienia 3/4 pojemności bufora komunikacyjnego tj. Zastosowano tzw. 109 . musi być zrealizowany ten protokół komunikacyjny. w którym przewody sygnałowe nie są skrzyżowane. że zostaną spełnione następujące warunki sprzętowe i programowe. Interfejs komunikacyjny korzysta z bufora wejściowego w drukarce .. co jest istotne w sytuacji. Aby zapewnić poprawną pracę interfejsu. Polega on na tym. hex 11). Z uwagi na konieczność zastosowania specjalnego kabla nie jest to sposób zalecany.o długości 2048 znaków (kolejka znaków wejściowych. Linia ta jest ustawiana w stan niski (-12V) jeżeli drukarka nie jest gotowa do przyjmowania następnych znaków . dane nadawane przez drukarkę oraz masa sygnałowa. jeżeli znajdzie się w nim 1536 znaków. tj. Sygnały interfejsu Jak już wspomniano wcześniej.założono. że drukarka będzie ponownie gotowa do przyjmowania następnych danych. że drukarka wysyła znak XOFF (ctrl S. Podłączenie drukarki do komputera przy pomocy interfejsu szeregowego nie przedstawia specjalnych trudności pod warunkiem. natomiast dla poprawnej pracy odbiornika wymagane jest zwarcie sygnałów DTR z DCD oraz DSR (od strony komputera). drukarka wysyła znak XON (ctrl Q.

lecz przez tzw.6. Standardowe kable sygnałowe drukarek Poniżej przedstawiono rysunki standardowych kabli sygnałowych wykorzystywanych przy transmisji z drukarkami POSNET Thermal i POSNET 3001. 110 . należy taką praktykę zakwalifikować jako błędną. wszelkie różnice potencjałów między uziemieniami komputera i drukarki powodują przepływ (często znacznego !) prądu poprzez połączenie mas sygnałowych urządzeń. Opis PIN RxD 5 TxD 4 GND 2. z załączeniem dodatkowych odbiorników prądu w sieci energetycznej). które dają dodatkowe błędy transmisji. złącze zewnętrznego zasilacza oraz złącze wyświetlacza klienta).3. Ponieważ masy sygnałowe urządzeń (komputera i drukarki) są zwarte z masami ochronnymi (uziemieniami) .1) powinna być ustawiona na pozycję ‘1xRS+RTS’ (patrz strony 121 i 123).6.8 RTS 1 Str. Opis sygnałów innych interfejsów dostępnych w drukarkach przedstawiono na stronie 114 (dodatkowy RS232. czytelny tekst).7.7. który pojawia się przy wykorzystaniu interfejsu napięciowego. Kabel wykorzystujący złącze 25 od strony PC-ta: Komputer DB-25 PIN Opis 3 RxD 2 TxD 7 GND 6 – 8 – 20 Zwora 1 4-5 Zworka 2 2. Standardowe parametry transmisji: 9600. 3. 8. Kabel wykorzystujący złącze 9 od strony PC-ta: Komputer DB-9 PIN Opis 2 RxD 3 TxD 5 GND 1–4–6 Zwora 1 7-8 Zworka 2 Uwaga: Złącze oznaczone (opisane) jako RS232 może być wykorzystane do podłączenia dodatkowego zewnętrznego wyświetlacza alfanumerycznego Typu VFD (duży. 1 4. Drugim problemem.Drukarka Fiskalna POSNET Thermal i 3001 Istotne jest. Wtedy w drukarce należy przestawić zworkę (dostępną dla serwisu) na pozycję ‘2xRS’. złącze szuflady. Chociaż często jest stosowane połączenie dłuższe (z pozytywnym rezultatem).8 RTS 1 DRUKARKA (RJ-45) – KOMP. 1. jest brak izolacji galwanicznej mas sygnałowych urządzeń. a połączenia masy ochronnej są realizowane w sieci energetycznej nie poprzez "prawdziwe" uziemienie. W przypadku jego wykorzystania zworka dostępna dla serwisu (patrz pkt.3. Opis PIN RxD 5 TxD 4 GND 2. Prąd ten powoduje oczywiście dodatkową różnicę potencjałów. 5. Problem ten występuje szczególnie drastycznie. UWAGA: w tym przypadku sygnał RTS nie działa ! 2. Połączenie opisane powyżej wymaga zastosowania protokołu transmisji XON-XOFF. 1. N. Ponadto w obwodzie masy sygnałowej mogą pojawiać się w takiej sytuacji zakłócenia impulsowe (związane np. że zgodnie z normą V. DRUKARKA (RJ-45) – KOMP. Polskie znaki w standardzie MAZOWIA. "zerowanie" (co jest najczęściej stosowane w sieciach energetycznych w budynkach mieszkalnych i biurowych).24 maksymalna długość takiego połączenia (standard napięciowy) nie może przekraczać (przy szybkości transmisji 9600 bodów) 15 metrów. Na wyświetlaczu tym wyświetlane są dokładnie te same informacje które pojawiają się na wyświetlaczy LCD operatora. Sygnał RTS w standardowym kablu dostarczanym z drukarką nie jest podłaczony. co może zwiększać prawdopodobieństwo przekłamań transmisji. gdy oba urządzenia (komputer i drukarka) są zasilane z różnych faz lub obwodów energetycznych.

COM4.. pamiętając tylko o wyborze właściwego adresu portu COM1. w środowisku DOS'a. wzorując się na modułach dostarczonym przez POSNET : www.. napisanymi przy użyciu różnych systemów programowania (np. Wobec braku realizacji protokołu XON-XOFF sposób ten jest efektywny tylko w specyficznych sytuacjach . oraz komunikacji wyłącznie jednokierunkowej.W efekcie.nie sposób przeanalizować w tym miejscu wszelkich możliwych problemów. UNIX. w szczególności o włączeniu protokołu XON-XOFF. W przypadku podłączenia drukarki przez COM1. realizacji protokołu XON-XOFF w procedurze obsługi przerwania oraz buforowaniu odbieranych znaków w buforze FIFO (wystarczy tu bufor o długości 256 bajtów). PASCAL) istnieją gotowe biblioteki procedur obsługi portów COM1.486. Windows . nie ma gwarancji. które może stwarzać oprogramowanie komunikacji szeregowej. W przypadku komunikacji dwukierunkowej wykorzystanie procedur BIOS jest w ogólnym przypadku błędne. DCD-DSR-DTR dla odbiornika).COM4. nawet jeżeli uzyskano poprawną pracę aplikacji z tak skonstruowaną komunikacją podczas prób.pl ). CLIPPER. oprogramowanie nie stwarza większych problemów . W przypadku większości współcześnie wykorzystywanych systemów programowania (CLIPPER.gdy aplikacja jest tak napisana. Z doświadczeń autorów wynikają jednak następujące wskazówki. Zwróćmy ponadto uwagę..). pracujących w różnorodnym środowisku sprzętowym (PC 386. że procedury BIOS wymagają zwór na złączu komputera (RTS-CTS dla nadajnika..Drukarka Fiskalna POSNET Thermal i 3001 Wymagania programowe Ponieważ drukarka może współpracować z bardzo różnymi aplikacjami. że nie ma możliwości przepełnienia bufora wejściowego drukarki (o długości 2048 znaków). Należy jednak pamiętać o właściwym skonfigurowaniu portu. że po przeniesieniu jej na inny sprzęt (lub nieco różniące się środowisko programowe !) będzie ona nadal działać poprawnie ! 3. 111 ..) . dBase. W systemie UNIX procedury obsługi portów COM1.com.posnet. ponieważ nie zapewniają one właściwego buforowania znaków odbieranych przez komputer oraz nie realizują protokołu XON-XOFF. Często popełnianym błędem jest ponadto brak blokady opcji XANY (parametr -XANY) co powoduje nie kontrolowane wznowienie transmisji w wyniku odebrania przez system dowolnego znaku (a przecież nie musi to być znak XON !)..można użyć procedur BIOS. 4.COM4 spełniające powyższe wymogi są wbudowane w jądro systemu. 1. 2. Str.COM4 spełniające powyższe wymogi. Właściwe (i zalecane) rozwiązanie procedur komunikacyjnych polega na wykorzystaniu przerwania sprzętowego do odbierania znaków z interfejsu. lub napisać własne procedury programujące port i wysyłające do niego znak (np. C.Pentium) i programowym (DOS.. C itd.

3001 i Beetle 20) Dodatkowe łącze RS232C można wykorzystać także do podłączenia specjalnego zewnętrznego wyświetlacza VFD uzupełniającego wyświetlacz dla klienta (numeryczny). (ERR=1.np. Do podłączenia dodatkowego wyświetlacza VFD (Thermal. Str. ERR = 1: stan "Błąd mechanizmu/ sterownika". to drukarka przełącza się w tryb ON-LINE i odpowiednie bity stanu (DLE) zostaną wyzerowane (ERR.. że jego przyczyna została usunięta. sekwencja LBDSP).77 hex): 7 0 gdzie: ONL = 1: stan "On-Line". oprócz przejścia drukarki w stan OFF-LINE i odpowiedniego komunikatu na wyświetlaczu. „slip printer”. PE) lub ustawione (ONL). Do dodatkowej drukarki mogą być kierowane wydruki uzyskiwane w wyniku realizacji następujących rozkazów (dokładny opis sekwencji zawarto w rozdziale ‘VIII’ na stronie 103) : LBRPDTA : drukowanie wyceny leku. W odpowiedzi na kod DLE ($10) drukarka odsyła jednobajtowy status w formacie (70. Jako dodatkowa drukarka może być też wykorzystany tzw. LBAPTREP: drukowanie raportu kasowego. przegrzanie głowicy. brak papieru lub sytuacje błędne. umożliwiającego podłączenie drukarki szeregowej z parametrami transmisji 9600/8/N/1 (tylko drukarki ‘apteczne’). dla drukarki „Seikosha” SP-2400 jest to tryb standardowy).Drukarka Fiskalna POSNET Thermal i 3001 Dodatkowe złącze RS232C W wersji aptecznej drukarki Wprowadzono obsługę dodatkowego portu szeregowego. ONL=0). PE = 1: stan "Brak Papieru". Wyświetlacz ten wyświetla teksty dokładnie takie same jakie pojawiają się na wyświetlaczu LCD operatora (patrz rozdział VII. LBPRNXT drukowania opisu działania leku. • błędu mechanizmu np. Stan ten może wystąpić w wyniku: • braku papieru (PE=1. Po usunięciu błędu i naciśnięciu klawisza NIE. • blokady (zacięcie napędu głowicy) mechanizmu lub otwartej pokrywy drukarki POSNET 3001. Dostęp do tego wyświetlacza po otwarciu transakcji jest jednak dla programisty ograniczony do sekwencji związanej z pobieraniem kaucji LBDSPDEP opisanej na stronie 79. Drukarka powinna realizować protokół EPSON (np. Sygnalizacja stanów drukarki na interfejsie szeregowym Stan drukarki można odczytać programowo wysyłając do niej pytanie w postaci: DLE ($10) – odczyt statusu drukarki działający także w trybie OFF-LINE !!! Daje to możliwość odczytu statusu . ONL=0). jeżeli sterownik stwierdzi. 112 . awaria zasilacza itp. Opis złącza można znaleźć na stronie 114. 6 1 5 1 4 1 3 0 2 ONL 1 PE 0 ERR Błędy drukarki Wystąpienie błędu w trakcie drukowania wykrytego przez sterownik mechanizmu drukującego powoduje. LBRPORD : drukowanie numerka na lek recepturowy.

2.Drukarka Fiskalna POSNET Thermal i 3001 Błędy "programowe" Podczas interpretacji i realizacji rozkazów (sekwencji) sterujących mogą wystąpić różnego rodzaju błędy. ponawianie żądania wysłania statusu co pewien czas spowoduje. Dokładny opis sekwencji LBSERM można znaleźć na stronie 76. która prowadzi do blokady przetwarzania znaków przez drukarkę tj. UWAGA: 1.należy mieć na względzie. W każdej sytuacji. Jeżeli aplikacja oczekuje po wysłaniu każdego rozkazu na odpowiedni status potwierdzający jego wykonanie .). po przełączeniu drukarki w stan ON-LINE. które nie mogły być realizowane wobec wystąpienia wcześniejszego błędu. Dodatkowo umieszczono w tabelach numerację stron na których można znaleźć dokładny opis interesującej nas sekwencji. Często może zatem zachodzić sytuacja. wystąpienie wyżej wymienione komunikatu lub przejście w stan OFF-LINE (automatyczne lub inicjowane z klawiatury).co umożliwia automatyczny monitoring sytuacji błędnych przez aplikację (przetwarzanie nie jest blokowane !). wysłanie ciągu wielu odpowiedzi statusowych (ponieważ odpowiednie kody lub sekwencje sterujące) zostały "zmagazynowane" w buforze drukarki. Ułatwi to pracę w przypadku interwencji dotyczących ‘zgłaszaniem’ przez drukarki błedu na wyświetlaczu LCD. wynikające z różnych przyczyn (przekłamania transmisji. kiedy po skasowaniu jednego komunikatu o błędzie wystąpi natychmiast następny . Stan ten nie jest w żaden sposób sygnalizowany na interfejsach. Wysłanie sekwencji LBSERM redefiniuje sposób obsługi błędów. błędy aplikacji. drukarka nie może realizować prawidłowo odpowiedzi na żądanie wysłania statusu (kod ENQ lub sekwencja LBFSTRQ). Str.ponieważ w buforze drukarki znalazły się następne sekwencje sterujące. 2. Na stronach 115 i 116 niniejszej instrukcji przedstawiono w formie tabel wykaz wszystkich sekwencji drukarek POSNET i odpowiadających im kodów błedów. że w wyniku wystąpienia błędu mechanizmu drukującego odpowiedź ta może być "zablokowana" na dowolnie długi czas. ustalony po włączeniu zasilania) sposób obsługi tych błędów jest następujący: 1. Standardowy (tj. 113 . błędny stan drukarki itd. Przetwarzanie (pobieranie znaków z bufora wejściowego) jest wstrzymane aż do naciśnięcia klawisza NIE. ale realizuje odczyt statusu DLE. blokując wyświetlanie komunikatów . aż do jego zapełnienia. Ponadto. Na wyświetlaczu pojawia się komunikat (patrz strona 36): 'Błąd rozkazu: "cc" ' 'Kod błędu : xx '. zatem drukarka kontynuuje przyjmowanie znaków do bufora komunikacyjnego.

Masa sygnałowa. Wejście danych w standardzie napięciowym.).) PIN 1 2 3 4 5 6 NAZWA +SZUF +SZUF +SZUF . Wyjście danych w standardzie napięciowym.SZUF . przewidziane do sprzętowego handshake'u odbiornika Masa sygnałowa. PIN 1 2 NAZWA + - TYP FUNKCJA Plus zasilania Minus zasilania Złącze do podłączenia szuflady (opisane jako SZUFL. Wejście danych w standardzie napięciowym. Złącze opisane jako RS232C. PIN 1 2 3 4 5 6 7 8 NAZWA VCC VCC VCC CK TX RX GND GND TYP Wy We FUNKCJA Zasilanie Zasilanie Zasilanie Zegar Wyjście danych Wejście danych Masa sygnałowa. Masa sygnałowa.Opis złącz drukarki POSNET Thermal i POSNET 3001 Złącze wejścia RS232C (opisane jako KOMP) typu RJ45 . 114 .Drukarka Fiskalna POSNET Thermal i 3001 13. Wyjście danych w standardzie napięciowym. Masa sygnałowa. Masa sygnałowa. Masa sygnałowa.SZUF TYP Wy Wy Wy Wy Wy Wy FUNKCJA Plus napięcia wyjściowego do zasilania elektromagnesu szuflady Plus napięcia wyjściowego do zasilania elektromagnesu szuflady Plus napięcia wyjściowego do zasilania elektromagnesu szuflady Minus napięcia wyjściowego do zasilania elektromagnesu szuflady Minus napięcia wyjściowego do zasilania elektromagnesu szuflady Minus napięcia wyjściowego do zasilania elektromagnesu szuflady Str. PIN 1 2 3 4 NAZWA GND RXD TXD GND TYP We Wy FUNKCJA Masa sygnałowa.SZUF . PIN 1 2 3 4 5 6 7 8 NAZWA RTS GND GND TXD RXD GND GND GND TYP Wy Wy We FUNKCJA Wyjście. Gniazdo wejściowe zasilania (opisane jako DC). Masa sygnałowa. Złącze wyjścia wyświetlacza (opisane jako WYŚW.

Dodatkowo w tabeli podano numer strony na której znajduje się dokładny opis ‘Kodu błędu’ wyświetlanego w drugiej linii wyświetlacza.. # lub * odnoszące się do sekwencji która spowodowała błąd przedstawiono w tabeli poniżej.Drukarka Fiskalna POSNET Thermal i 3001 14. zapraszamy' (POSNET 2000) wydruk na drukarce dodatkowej (Apteka) zwrot towaru Szukaj na stronie: 89 89 86 76 82 83 84 85 86 76 90 88 87 87 88 89 86 91 87 76 108 88 * a c k r t z w Sekwencja kasowanie tablicy wycen usuwanie z tablicy wycen leku Zamówienie na lek recepturowy raport kasowy apteczny opis działania leku usuwanie opisu działania leku z tablicy wycen wycena leku Szukaj na stronie: 105 105 106 105 107 108 103 UWAGA: Kod błędu=0 oznacza rozkaz nierozpoznany. 115 .79 80 75 77 78 74 94 81 Sekwencja kontrola bazy danych odczyt zegara drukarki wypłata z kasy obsługa błędów raport kasy (z aplikacji) pokwitowanie sprzedaży transakcja uznania (zwrot towaru) wpłata do kasy drukowanie raportu kasy/zmiany wysuw papieru o 1.20 linii żądanie wysłania kodu błędu ostatniego rozkazu drukowanie raportu okresowego zalogowanie kasjera wylogowanie kasjera drukowanie raportu dobowego odeślij informacje kasowe stan kasy typ i wersja oprogramowania zwrot kaucji włączenie/wyłączenie komunikatu słownego 'Dziękujemy. Str.Kody sekwencji Litery które mogą pojawić się w pierwszej linii wyświetlacza po znaku $ . $ a c d e f h l p s x # b c d e f g h i k l n o p q r s t v w x y z Sekwencja linijka paragonu (Apteka) ustawianie zegara sterowanie wyświetlaczem/ szufladą anulowanie transakcji/ akceptacja transakcji programowanie nagłówka/ fiskalizacja początek transakcji definiowanie pozycji transakcji (linii paragonu) zmiana stawek PTU początek transakcji (Apteka) zakończenie transakcji z formami płatności Szukaj na stronie: 95 73 74.

błędne oznaczenie ilości (puste lub za długie). błąd jednej z kwot lub pozostałych napisów. błąd danych. próba przesłania do RAM nagłówka dla urządzenia sfiskalizowanego (o ile drukarkę zafiskalizowano wpisując do modułu fiskalnego cały nagłówek). 'reszta' nie będą drukowane !). błędny kod terminala/ kasjera (zła długość lub format). . zerowy stan totalizerów.także próba sprzedaży w stawce nieaktywnej . zła ilość wartości PTU.56 dla jednej grupy podatkowej). . wynik zaokrąglenia porównuje z wartością (BRUTTO) z dokładnością do 1%. zakres lub brak). błąd bajtu kontrolnego. błędne oznaczenie stawki PTU (lub brak) . błąd operacji I/O. błąd w dodatkowych liniach nagłówka (np.zaokrągla wynik mnożenia do dwóch miejsc po przecinku. 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 Str. nie zainicjalizowany zegar RTC. lub w wyniku jej wykonania suma w danej grupie podatkowej wychodzi ujemna). . próba wykonania w trybie 'blokowym' OFF-LINE.mnoży cenę przez ‘wyłowioną’ z ilości liczbę . przepełnienie bufora drukarki. lub błędna treść dodatkowych linii. błąd operacji . błąd operacji STORNO (np.Kody błędów drukarek Drukarki standardowe Numer błędu (KOD) 0 1 2 3 4 5 6 7 8 9 11 13 14 15 16 17 18 19 Opis błędu Rozkaz nierozpoznany. błąd napisu <zmiana> lub <kasjer> lub <numer> lub <kaucja> (np. próba fiskalizacji sfiskalizowanego urządzenia . błędna nazwa (pusta lub za długa). w momencie kiedy nie został on jeszcze włączony. nadmiar dodawania (przekroczenie zakresu gotówki w kasie). błąd kwoty WPŁATA (syntaktyka). błąd odczytu totalizerów. sekwencja odebrana przez drukarkę przy wyłączonym trybie transakcji. błędna liczba rekordów (linii) paragonu.niezerowe totalizery !. ‘kaucja_pobrana’ przesłana w LBTRXEND nie jest zgodna z sumą wartości otrzymanych w sekwencjach LBDSPDEP.błąd niespełnienia warunku ilość x cena wartość (przekroczenie progu 1%) drukarka sprawdza poprawność przesłanych informacji wg algorytmu . błędna suma całkowita TOTAL lub błędna kwota RABAT. wartość po odjęciu staje się ujemna (przyjmuje się wówczas stan zerowy kasy !).684. przepełnienie totalizera (max 2.błąd wartości BRUTTO lub RABAT (syntaktyka. zakres lub brak).354. 116 .Drukarka Fiskalna POSNET Thermal i 3001 15. błąd kwoty WPLATA (syntaktyka. za długi lub zawierający błędne znaki). lub błąd operacji z rabatem np. data wcześniejsza od daty ostatniego zapisu w pamięci fiskalnej (wykonanie niemożliwe !). .przy rabacie kwotowym uwzględnienie rabatu nie może prowadzić do ujemnego wyniku. wartość towaru po uwzględnieniu rabatu wychodzi ujemna. błąd wartości CENA (syntaktyka. jeżeli różnica WPLATA-TOTAL <0 to napisy 'gotówka'. żądanie zakończenia (pozytywnego !) trybu transakcji. błąd wykonania (zapisu) do zegara RTC lub błąd odczytu zegara RTC. za długie opisy). zła ilość parametrów. niespełnienie powyższego daje błąd #20. błąd operacji z pamięcią fiskalną. błąd liczby lub próba zdefiniowania takich samych stawek jakie są w pamięci fiskalnej drukarki .

zakres lub brak). błąd bajtu kontrolnego. data wcześniejsza od daty ostatniego zapisu w pamięci fiskalnej (wykonanie niemożliwe !). błąd wartości <kwota>. błąd napisu <kontrahent>. CLR. błędne oznaczenie stawki PTU (lub brak) . błąd operacji z pamięcią fiskalną. błąd napisu <numer_karty>. Opis błędu Str. operacja przerwana z klawiatury (przed rozpoczęciem drukowania). błąd danych. 117 . błąd napisu <data_r>. FULL). błąd napisu <nazwa_karty>. 2. błąd napisu <numer_par>. błąd operacji . Drukarki apteczne Numer błędu (KOD) 1 2 3 4 5 6 7 8 9 11 13 14 15 16 17 18 19 nie zainicjalizowany zegar RTC. ten błąd pojawia się także w przypadku wystąpienia błędu blokującego tryb fiskalny (ERR. błąd w dodatkowych liniach nagłówka (np. błąd operacji I/O. błąd liczby lub próba zdefiniowania takich samych stawek jakie są w pamięci fiskalnej drukarki . błąd odczytu totalizerów. błąd napisu <data_m>. za długie opisy).także próba sprzedaży w stawce nieaktywnej . brak w pamięci RAM nagłówka (tylko w trybie fiskalnym gdy do modułu fiskalnego wpisano tylko NIP). błąd napisu <terminal>. zła ilość wartości PTU. błąd oznaczenia PTU.niezerowe totalizery !.Drukarka Fiskalna POSNET Thermal i 3001 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 już istnieje zapis o tej dacie. próba przesłania do RAM nagłówka dla urządzenia sfiskalizowanego (o ile drukarkę zafiskalizowano wpisując do modułu fiskalnego cały nagłówek). błąd nazwy. błąd napisu <kod_autoryz>. zła ilość parametrów. błąd napisu <numer_kasy> (za długi lub zawierający błędne znaki). 1. błąd napisu <numer_kasjera>. błąd wartości CENA (syntaktyka. błędna nazwa (pusta lub za długa). błąd wykonania (zapisu) do zegara RTC lub błąd odczytu zegara RTC. próba fiskalizacji sfiskalizowanego urządzenia . błędne oznaczenie ilości (puste lub za długie).

za długi lub zawierający błędne znaki). wynik zaokrąglenia porównuje z wartością (BRUTTO) z dokładnością do 1%. dla którego była drukowana wcześniej wycena (transakcja nie może być poprawnie zakończona. błąd napisu <zmiana> lub <kasjer> lub <numer> lub <kaucja> (np. jeżeli różnica WPLATA-TOTAL <0 to napisy 'gotówka'.przy rabacie kwotowym uwzględnienie rabatu nie może prowadzić do ujemnego wyniku. żądanie zakończenia (pozytywnego !) trybu transakcji. sekwencja odebrana przez drukarkę przy wyłączonym trybie transakcji. ten błąd pojawia się także w przypadku wystąpienia błędu blokującego tryb fiskalny (ERR. błąd pola <postac_dawka>. nadmiar dodawania (przekroczenie zakresu gotówki w kasie).mnoży cenę przez ‘wyłowioną’ z ilości liczbę .zaokrągla wynik mnożenia do dwóch miejsc po przecinku.błąd wartości BRUTTO lub RABAT (syntaktyka. przepełnienie bufora drukarki. lub błąd operacji z rabatem np. 2. niespełnienie powyższego daje błąd #20. już istnieje zapis o tej dacie. lub błędna treść dodatkowych linii. błąd napisu recepta. w momencie kiedy nie został on jeszcze włączony. ponieważ tablica zapamiętanych wycen leków nie jest pusta) przepełnienie tablicy wycen (zbyt duża liczba wycen wydrukowana). błąd pola <nazwa>. wartość po odjęciu staje się ujemna (przyjmuje się wówczas stan zerowy kasy !).błąd niespełnienia warunku ilość x cena wartość (przekroczenie progu 1%) . CLR. . próba wykonania w trybie 'blokowym' OFF-LINE. przepełnienie totalizera (max 2. błąd operacji STORNO (np. błąd kwoty OPŁATA.354. lub w wyniku jej wykonania suma w danej grupie podatkowej wychodzi ujemna).Drukarka Fiskalna POSNET Thermal i 3001 . zakres lub brak). . błąd jednej z kwot lub pozostałych napisów. błąd kwoty OPLATA. błędny kod terminala/ kasjera (zła długość lub format). 'reszta' nie będą drukowane !). ‘kaucja_pobrana’ przesłana w LBTRXEND nie jest zgodna z sumą wartości otrzymanych w sekwencjach LBDSPDEP. zerowy stan totalizerów.56 dla jednej grupy podatkowej). błąd oznaczenia PTU. błąd nazwy. błędna liczba rekordów (linii) paragonu.drukarka sprawdza poprawność przesłanych informacji wg algorytmu . błąd kwoty WPLATA (syntaktyka.684. błąd kwoty WPŁATA (syntaktyka). błędna suma całkowita TOTAL lub błędna kwota RABAT. FULL). . 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 Str. brak w paragonie leku. 118 . wartość towaru po uwzględnieniu rabatu wychodzi ujemna. operacja przerwana z klawiatury (przed rozpoczęciem drukowania).

błąd pola <ilosc_lekospis>. błąd pola <wydal>.Drukarka Fiskalna POSNET Thermal i 3001 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 błąd pola <opakowanie>. błąd pola <par1>.. błąd pola <kasa>. błąd pola <pacjent>. <nazwa>. błąd pola <par2>.. błąd pola <osoba>. Błąd jednej z wartości numerycznych <brutto_a>. błąd pola <kasa_nr>. błąd pola <znak_z>. błąd pola <lekarz>. Str. błąd pola <osoba>. przekroczenie dopuszczalnej ilości linii = 50 brak w tablicy zapamiętanych opisów podanej nazwy. błąd pola <refundacja>.. brak w tablicy zapamiętanych wycen podanej nazwy.<refundacja> (może być błąd syntaktyki lub brak jednego z parametrów). błąd kwoty <opłata>. błąd pola <ptu>. błąd pola <refundator>. błąd pola <recepta>.<total_ptu> (może być błąd syntaktyki lub brak jednego z parametrów). błąd pola <ilosc>. błąd pola <data>. błąd pola <pacjent>. błąd pola <opis>.. błąd jednej z wartości numerycznych <wartosc>. błąd pola <lekarz>. 119 . błąd pola <platne>. błąd pola <refundator>. błąd pola <numer>.

Testy. Zegar : opcja umożliwiająca korektę zegara drukarki (czasu) w przypadku gdy są zerowe totalizery. • PT . po chwili drukarka ‘zgłosi’ się komunikatem na wyświetlaczu o treści: ‘Konfiguracja Testy’ ‘Informacje (Koniec)’ Zasada wyboru odpowiedniej funkcji jest następująca: • przy pomocy klawiszy ‘⇐‘ i ‘⇒‘ ustawiamy migający znacznik (kursor) na polu które nas interesuje . D) w zależności od czułości zastosowanego papieru termicznego. • NIP wyświetlenie numeru identyfikacyjnego podatnika w przypadku kiedy drukarka pracuje w trybie fiskalnym. stawka nie została zdefiniowana. KONFIGURACJA. • klawisz ‘⇑‘ służy do wychodzenia z obsługi interesującej nas funkcji . Po ustawieniu czułości zalecamy wykonanie testu PRN (opcja TESTY opisana poniżej). Poniżej opiszemy dokładnie poszczególne funkcje dostępne z klawiatury.po włączeniu zasilania drukarki drukarka przyjmie stawki zdefiniowane w pamięci fiskalnej (domyślnie ustawienie). • naciskając klawisz ‘⇓‘ przechodzimy do ‘podmenu’ interesującej nas funkcji. PRN : test mechanizmów drukujących . LED : test diod świecących na klawiaturze (diody GOTOWA. BŁĄD i SIEĆ). Zalecamy wykonanie tego testu po zmianie czułości papieru (opisanej powyżej). FSK . FSK : dostępne opcje to: • Nr. Po usłyszeniu krótkiego sygnału należy zwolnić klawisze . • Oszczędność papieru: włączenie sprzętowej oszczędności papieru (TAK) lub jej wyłączenie (NIE). • PTU wyświetlenie na wyświetlaczu zdefiniowanych stawek PTU w drukarce. 4. że zablokowana jest sprzedaż w tej stawce tzn.po potwierdzeniu powstaje specjalny wydruk umożliwiający wizualną kontrolę poprawności działania mechanizmów (oryginału i kopii). DSP : test wyświetlacza LED dla klienta. 2. Po wyjściu z tej opcji drukarka żąda potwierdzenia zmiany zegara (poprzez zadanie pytania ‘Zapisać zegar (T/N)’). 4.Drukarka Fiskalna POSNET Thermal i 3001 16. • RDOB . • niektóre zmiany parametrów wymagają ich zatwierdzenia poprzez naciśniecie klawisza ‘TAK’. UWAGA: po fiskalizacji drukarka zawsze jako wiążące przyjmuje stawki zdefiniowane w pamięci fiskalnej.Unikat. Testowane są wszystkie segmenty wyświetlacza. 3. 1.liczba rekordów w nagłówku drukarki. Sprzętowa oszczędność polega na rozpoczęciu drukowania przez drukarkę nowego nagłówka bezpośrednio po zakończeniu poprzedniego wydruku.liczba rekordów ‘ Zmiana stawek PTU’. Znak ‘-’ obok stawki oznacza.liczba wykonanych raportów dobowych. POSNET THERMAL (Funkcje serwisowe) W celu zainicjowania dostępu do funkcji serwisowych należy włączyć drukarkę przy jednoczesnym wciśnięciu klawiszy ‘TAK’ i ‘NIE’. klawisze ‘⇓‘ i ‘⇑‘ służą do ustawienia interesującego nas pola). Szybkość można zdefiniować prędkość transmisji dla łącza szeregowego RS232C na : 1200 2400 4800 9600 (domyślna) 19200 . podświetlając odpowiednią literę deklarujemy maksymalną czułość papieru (A) lub niższą (B . • Test ogólny: • H . 120 .w trybie szkoleniowym po włączeniu zasilania drukarka jako wiążące przyjmie stawki zdefiniowane w pamięci RAM . • CL . Stawki PTU: dostępne opcje to : RAM . Korekty dokonujemy za pomocą klawiatury (klawiszami ‘⇐‘ i ‘⇒‘ wybieramy pole do zmiany.ilość zerowań RAM. 2. Papier : • Czułość: A B C D .. Jeżeli naciśniemy klawisz ‘TAK’ zmiana zegara zostanie zapamiętana. : Str. 3. wyświetlenie numeru unikatowego drukarki. 1.

jumper do RESET zegara drukarki (tylko w wersjach ‘przewlekanych’ płyty. gdzie: J1 J7 U4 JP6.pl .test wyjścia dodatkowego do podłączenia szuflady.exe’ umieszczonego w katalogu ‘VER17_1’ na dyskietce fiskalnej. Tryb ten jest przydatny w przypadku ‘kłopotów’ z aplikacją sterującą drukarką (programem użytkownika). DC to napięcie zasilające drukarki na złączu DC drukarki (z zasilacza zewnętrznego). UWAGA: Dyskietka fiskalna jest dostępna w internecie na stronie www.charakterystyczne punkty pomiarowe (napięciowe) w drukarce. i R.złącza mechanizmów drukujących.driver interfejsów szeregowych (w podstawce) . COM. tryb pracy drukarki (fiskalny lub szkoleniowy) i aktualne stawki PTU.T2 . Opcja ta umożliwia wykonanie informacyjnego wydruku zawierającego : numer unikatowy.1 . Standardowo zworka ustawiana w pozycji 1xRS+RST . 121 .JP12 . Po naciśnięciu (jednocześnie) klawiszy R. Str. UX .posnet.≥17. Znajduje się na niej także ‘stary’ program (katalog POSNET) który służy do fiskalizacji wersji drukarek < 17. Fiskalizacja POSNET Thermal.liczba rekordów ‘ODBUDOWA BAZY’.O.Drukarka Fiskalna POSNET Thermal i 3001 • • • • • • • • OB .test mikro wyłączników mechanizmów drukujących oraz czujników obecności papieru (optyczne) .temperatura elementów grzejnych mechanizmów termicznych drukarki BT to napięcie wewnętrznej baterii podtrzymującej niektóre układy drukarki po wyłączeniu zasilania. czyli modeli: DF-300. RESET wykonujemy zdejmując (przy wyłączonym zasilaniu) zworkę lub wyjmując na chwilę baterię BT1 (wersja SMD) .1 (cały nagłówek w pamięci fiskalnej!). W wersji SMD jumper nie występuje!). SZUF . HEXDUMP. ELEMENTY DOSTĘPNE PO ZDJĘCIU OSŁONKI WEWNĄTRZ DRUKATKI . Drukarki fiskalizujemy przy pomocy programu ‘posnet. Drukarki dla aptek (POSNET THERMAL-A) można fiskalizować wg takich samych zasad jak zwykłe drukarki termiczne czyli traktując je jako wykonane w wersji ≥17. możemy przełączyć drukarkę w tzw.. Informacje. T1. tryb hexdump umożliwiający wydrukowanie przez drukarkę treści komend odbieranych przez drukarkę przez łącze RS232C. Drukarka POSNET THERMAL jest w pełni zgodna z drukarką DF301 (ver.1).com. DF-301 i DF-302.uaktywnia dodatkowe wyjście RS232C (wersja apteczna) w przypadku gdy zworka jest w pozycji 2xRS.test łącza RS232C (KOMP) i dodatkowego łącza wykorzystywanego w wersji aptecznej drukarki (RS232). • ER: . PE .sumaryczna liczba błędnych rekordów w pamięci fiskalnej.AUX . Dodatkowe złącza mechanizmów umieszczone są pod mechanizmami drukującymi.D.

BŁĄD i SIEĆ). Poniżej opiszemy dokładnie poszczególne funkcje dostępne z klawiatury. • klawisz ‘⇑‘ służy do wychodzenia z obsługi interesującej nas funkcji . 122 . • ER: . • LED : test diod świecących na klawiaturze (diody GOTOWA. • SZUF . Jeżeli naciśniemy klawisz ‘TAK’ zmiana zegara zostanie zapamiętana. Testowane są wszystkie segmenty wyświetlacza. Korekty dokonujemy za pomocą klawiatury (klawiszami ‘⇐‘ i ‘⇒‘ wybieramy pole do zmiany. • niektóre zmiany parametrów wymagają ich zatwierdzenia poprzez naciśniecie klawisza ‘TAK’. wyświetlenie numeru unikatowego drukarki. • RDOB . klawisze ‘⇓‘ i ‘⇑‘ służą do ustawienia interesującego nas pola). FSK .liczba rekordów w nagłówku drukarki. Zalecamy wykonanie tego testu po zmianie czułości papieru (opisanej powyżej).liczba wykonanych raportów dobowych. • PRN : test mechanizmów drukujących . że zablokowana jest sprzedaż w tej stawce tzn. Str. • FSK : dostępne opcje to: • Nr.POSNET 3001 (Funkcje serwisowe) W celu zainicjowania dostępu do funkcji serwisowych należy włączyć drukarkę przy jednoczesnym wciśnięciu klawiszy ‘TAK’ i ‘NIE’.Drukarka Fiskalna POSNET Thermal i 3001 17. Zegar : opcja umożliwiająca korektę zegara drukarki (czasu) w przypadku gdy są zerowe totalizery . UWAGA: po fiskalizacji drukarka zawsze jako wiążące przyjmuje stawki zdefiniowane w pamięci fiskalnej. KONFIGURACJA.Unikat. : • • • Testy. po chwili drukarka ‘zgłosi’ się komunikatem na wyświetlaczu o treści: ‘Konfiguracja Testy’ ‘Informacje (Koniec)’ Zasada wyboru odpowiedniej funkcji jest następująca: • przy pomocy klawiszy ‘⇐‘ i ‘⇒‘ ustawiamy migający znacznik (kursor) na polu które nas interesuje . stawka nie została zdefiniowana.po włączeniu zasilania drukarki drukarka przyjmie stawki zdefiniowane w pamięci fiskalnej (domyślnie ustawienie).liczba rekordów ‘ODBUDOWA BAZY’. Znak ‘-’ obok stawki oznacza. • CL .ilość zerowań RAM. • PTU wyświetlenie na wyświetlaczu zdefiniowanych stawek PTU w drukarce.test wyjścia dodatkowego do podłączenia szuflady. • DSP : test wyświetlacza LED dla klienta. • Szybkość • można zdefiniować prędkość transmisji dla łącza szeregowego RS232C na : 1200 2400 4800 9600 (domyślna) 19200 . • PT .liczba rekordów ‘ Zmiana stawek PTU’. • Test ogólny: • H . • naciskając klawisz ‘⇓‘ przechodzimy do ‘podmenu’ interesującej nas funkcji. Po wyjściu z tej opcji drukarka żąda potwierdzenia zmiany zegara (poprzez zadanie pytania ‘Zapisać zegar (T/N)’).po potwierdzeniu powstaje specjalny wydruk umożliwiający wizualną kontrolę poprawności działania mechanizmów (oryginału i kopii). • NIP wyświetlenie numeru identyfikacyjnego podatnika w przypadku kiedy drukarka pracuje w trybie fiskalnym. Po usłyszeniu krótkiego sygnału należy zwolnić klawisze . Stawki PTU: dostępne opcje to : RAM .sumaryczna liczba błędnych rekordów w pamięci fiskalnej. • OB . Sprzętowa oszczędność polega na rozpoczęciu drukowania przez drukarkę nowego nagłówka bezpośrednio po zakończeniu poprzedniego wydruku. Papier: właczenie (TAK) lub wyłączenie (NIE) trybu oszczędności papieru.w trybie szkoleniowym po włączeniu zasilania drukarka jako wiążące przyjmie stawki zdefiniowane w pamięci RAM . Domyślne ustawienie na TAK.

Te drukarki fiskalizujemy wg ‘starych’ zasad (cały nagłówek do modułu fiskalnego) programem ‘posnet. Fiskalizacja drukarek POSNET 3001.exe’ umieszczonym w katalogu ‘posnet’ !. ELEMENTY DOSTĘPNE PO ZDJĘCIU OSŁONKI WEWNĄTRZ DRUKARKI gdzie: . Dyskietka fiskalna jest dostępna w internecie na stronie www.złącze obcinacza U2 ..charakterystyczne punkty pomiarowe (napięciowe) w drukarce.jumper do resetu zegara drukarki. Znajduje się na niej także ‘stary’ program (katalog POSNET) który służy do fiskalizacji wersji drukarek < 17.bezpiecznik J4 J3 Str. BT to napięcie wewnętrznej baterii podtrzymującej niektóre układy drukarki po wyłączeniu zasilania.D. Opcja ta umożliwia wykonanie informacyjnego wydruku zawierającego : numer unikatowy. Drukarka POSNET 3001 jest w pełni zgodna z drukarką DF301 (ver. czyli modeli: DF-300.O.driver interfejsów szeregowych (w podstawce) JP11.test mikro wyłączników mechanizmów drukujących oraz czujników obecności papieru (optyczne) . 123 .uaktywnia dodatkowe wyjście RS232C (wersja apteczna) w przypadku gdy zworka jest w pozycji 2xRS. T temperatura głowicy. .com.AUX . HEXDUMP Po naciśnięciu (jednocześnie) klawiszy R. możemy przełączyć drukarkę w tzw. Tryb ten jest przydatny w przypadku ‘kłopotów’ z aplikacją sterującą drukarką (programem użytkownika).1 (cały nagłówek w pamięci fiskalnej!).posnet. Standardowo zworka ustawiana w pozycji 1xRS+RST J5 .złącze czujnika papieru i zwijacza kopii B1 .test łącza RS232C (KOMP) i dodatkowego łącza wykorzystywanego w wersji aptecznej drukarki (RS232).1).exe’ umieszczonego w katalogu ‘VER17_1’ na dyskietce fiskalnej. DF-301 i DF-302. UWAGA: Programem do fiskalizacji drukarek umieszczonym w katalogu ‘ver17_1’ NIE WOLNO FISKALIZOWAĆ drukarek DF301A (wersja apteczna drukarki DF301) a także drukarek których firmware ma numer mniejszy niż 17. UX . tryb hexdump umożliwiający wydrukowanie przez drukarkę treści komend odbieranych przez drukarkę przez łącze RS232C. i R.1. Informacje.Drukarka Fiskalna POSNET Thermal i 3001 • • • • • • • COM.JP12 .pl .≥17. tryb pracy drukarki (fiskalny lub szkoleniowy) i aktualne stawki PTU. VC napięcie zasilające układy cyfrowe (5V). Drukarki fiskalizujemy przy pomocy programu ‘posnet. PE . DC to napięcie zasilające drukarkę (z zewnętrznego zasilacza stabilizowanego 25V).

Wymiana baterii Przed wymianą baterii koniecznie należy wykonać raport dobowy w drukarkach które pracują w trybie fiskalnym. 3. 4. 6.wiązkę LED-ów od strony klawiatury poprzez odłączenie tasiemki wyświetlacza LCD od płytki z lampkami LED .wiązkę wyświetlacza LCD poprzez wyjęcie złączki umieszczonej na płycie sterownika drukarki. Odkręcić cztery śruby mocujące górną pokrywę drukarki. Odłączyć wyświetlacz klienta (LED). natomiast bateria podtrzymująca zegar drukarki ma oznaczenie BT2 (w wersji SMD jest jedna bateria oznaczona symbolem BT1). Str.umożliwi to dostęp do śrub mocujących górną pokrywę obudowy. Uzyskamy dostęp do baterii litowych drukarki. Wymianę uszkodzonego mechanizmu drukującego. Wymianę uszkodzonej klawiatury. Po wymianie baterii BT2 (zegar RTC) należy przesłać z programu serwisowego datę i czas do zegara drukarki. 4.dopiero wtedy można odczepić płytkę z lampkami poprzez delikatne zwolnienie zaczepów.Drukarka Fiskalna POSNET Thermal i 3001 18. Wymianę baterii podtrzymującej pamięć RAM lub baterii zegara RTC (UWAGA: w wersjach SMD istnieje tylko jedna bateria podtrzymująca zegar i pamięć RAM). 124 . 2.Zmiany w drukarkach POSNET Thermal W celu zwiększenia możliwości serwisowania drukarek termicznych wprowadzono kilka istotnych zmian w konstrukcji drukarek umożliwiających bez naruszenia głównej plomby zabezpieczającej przed dostępem do wnętrza drukarki (plastikowa plomba z napisem POSNET lub HOLOGRAM). Aby uzyskać do nich dostęp należy: 1. . Zmiany te umożliwią: 1. Bateria pamięci RAM oznaczona jest symbolem BT1. Poniżej przedstawiamy rysunek osłony zabezpieczonej plombą ołowianą serwisanta z charakterystyczną ‘wypustką’ uniemożliwiającą odkręcenie mechanizmów drukujących i odkręcenia górnej osłony drukarki: Poniżej przedstawiamy krótki opis w jaki sposób dokonać wymiany uszkodzonego elementu. 3. Odkręcić (po zerwaniu ołowianej plomby serwisanta) dwie śruby mocujące osłonę (patrz rysunek powyżej) i zdjąć osłonę . Przy wymianie baterii należy zachować wyjątkową ostrożność aby nie spowodować zwarć na płycie sterownika drukarki. 5. Dalej zachowany został dostęp do elementów umieszczonych pod osłoną zabezpieczoną plombą ołowianą serwisu. 2. Poluzować śruby: dwie śruby mocujące mechanizm zwijacza kopii oraz dwie śruby mechanizmu drukującego kopii (te bliższe mechanizmu zwijacza). Odłączyć wiązki łączące płytę sterownika drukarki z klawiaturą: . Baterie(a) dostępne są pod elementem zwijacza kopii. Wysunąć blaszaną osłonę spod mechanizmu zwijacza.

śruby mocujące mechanizm do konstrukcji (4 sztuki). Odkręcić cztery śruby mocujące górną pokrywę drukarki. Odkręcić (po zerwaniu ołowianej plomby serwisanta) dwie śruby mocujące osłonę (patrz rysunek osłony na poprzedniej stronie) i zdjąć osłonę . czyli odłączyć (na chwilę) baterię BT1 (przy wyłączonym zasilaniu drukarki!). odkręcić ‘kątowniki’ elementu do umieszczenia rolki oryginału (2 ‘poziome’ śruby odkręcić. Założyć i zabezpieczyć plombą ołowianą osłonę. . Konieczne będzie także odtworzenie nagłówka w pamięci RAM (plik nazwa. Odkręcić śruby mocujące mechanizm zwijacza (2). 5. 2 ‘pionowe’ śruby poluzować).wiązkę wyświetlacza LCD poprzez wyjęcie złączki umieszczonej na płycie sterownika drukarki. Odkręcić dwie śruby mocujące element służący do umieszczenia rolki oryginału i pełniący jednocześnie rolę ‘łącznika’ między mechanizmem oryginału i kopii. 9. Odłączyć wiązki mechanizmu od płyty sterownika drukarki (3 pod osłonką i dwie z przodu mechanizmu). Odłączyć wiązki łączące płytę sterownika drukarki z klawiaturą: . 12. Założyć nowy mechanizm i przykręcić śruby mocujące wg opisu powyżej. 3. 8. 13. Odkręcić (po zerwaniu ołowianej plomby serwisanta) dwie śruby mocujące osłonę (patrz rysunek osłony na poprzedniej stronie) i zdjąć osłonę . 5.umożliwi to dostęp do śrub mocujących górną pokrywę obudowy. 11. 125 . 4. Odłączyć wyświetlacz klienta (LED).wiązkę wyświetlacza LCD poprzez wyjęcie złączki umieszczonej na płycie sterownika drukarki.Drukarka Fiskalna POSNET Thermal i 3001 Po wymianie baterii BT1 (RAM) także będzie konieczne przesłanie danych do zegara. Powyższe zdarzenia trzeba odnotować w książce serwisowej drukarki. z powodu jego przekłamania) należy odłączyć zasilanie zegara RTC. W wersji SMD płyty głównej po wymianie baterii zajdą oba wymienione wyżej przypadki. 6. 2.dopiero wtedy można odczepić płytkę z lampkami poprzez delikatne zwolnienie zaczepów. Str. 10. Odłączyć wiązki łączące płytę sterownika drukarki z klawiaturą: . 2. Podłączyć wiązki klawiatury i umieścić płytkę z lampkami w specjalnych zaczepach.wiązkę LED-ów od strony klawiatury poprzez odłączenie tasiemki wyświetlacza LCD od płytki z lampkami LED . Podłączyć wyświetlacz LED klienta i przykręcić górną pokrywę drukarki przy pomocy 4 śrub. 3. 6.dopiero wtedy można odczepić płytkę z lampkami poprzez delikatne zwolnienie zaczepów. Wymiana mechanizmu drukującego kopii Kolejność czynności: 1. Powstanie wtedy komunikat ‘Błąd bazy towarowej’ w wyniku którego w module fiskalnym pojawi się komunikat „ODBUDOWA BAZY”. Wymiana mechanizmu drukującego oryginału Kolejność czynności: 1. .wiązkę LED-ów od strony klawiatury poprzez odłączenie tasiemki wyświetlacza LCD od płytki z lampkami LED . Wyjąć mechanizm wysuwając go najpierw w kierunku zwijacza. 7. Odkręcić cztery śruby mocujące górną pokrywę drukarki. 4. Odkręcić ‘kątowniki’ elementu do umieszczenia rolki oryginału (dwie śruby) i przykręcić do nowego mechanizmu w taki sam sposób jak były przykręcone poprzednio. w przypadku konieczności zmiany DATY zegara RTC (np. Odłączyć wiązki mechanizmu od płyty sterownika drukarki (3 pod osłonką). Odkręcić dwie śruby mocujące mechanizm do konstrukcji drukarki. Ponadto drukarka może zgłosić komunikat ‘Błąd pamięci NVR’ i próbować naprawić ‘Bazę towarową’.umożliwi to dostęp do śrub mocujących górną pokrywę obudowy. Odłączyć wyświetlacz klienta (LED). UWAGA: W wersjach SMD.nag – patrz strona 18).

8. 2 cm mechanizm ze zwijaczem tak aby uzyskać dostęp do wiązek mechanizmu umieszczonych pod jego spodem. Podłączyć wyświetlacz LED klienta i przykręcić górną pokrywę drukarki przy pomocy 4 śrub. Odkręcić element zwijacza od mechanizmu drukującego (4 ‘pionowe’ śrubki).umożliwi to dostęp do śrub mocujących górną pokrywę obudowy. 8. Str.Drukarka Fiskalna POSNET Thermal i 3001 7. UWAGA: Mechanizmy drukujące oryginału i kopii różnią się między sobą.wiązkę LED-ów od strony klawiatury poprzez odłączenie tasiemki wyświetlacza LCD od płytki z lampkami LED . Podłączyć wyświetlacz LED klienta i przykręcić górną pokrywę drukarki przy pomocy 4 śrub. Odkręcić cztery śruby mocujące górną pokrywę drukarki. Usunąć uszkodzoną klawiaturę poprzez jej odklejenie od górnej pokrywy. 126 . 10. Wymiana klawiatury. 11. Założyć i zabezpieczyć plombą ołowianą osłonę. Aby wymienić uszkodzoną klawiaturę na nową należy: 1. 13. 9. Mechanizm kopii posiada dodatkowe kółko pasowe którego nie posiadają mechanizmy oryginału! Nie jest możliwe więc włożenie w miejsce mechanizmu dla kopii mechanizmu drukującego oryginału.dopiero wtedy można odczepić płytkę z lampkami poprzez delikatne zwolnienie zaczepów. 5. Zamawiając mechanizm w POSNET należy podać który nas interesuje (kopia czy oryginał). . 12. 9. Klawiatura w drukarkach POSNET Thermal wykonana została jako element naklejany na górną pokrywę drukarki. 3. 10. Założyć wyjęty uprzednio wyświetlacz LCD. Wysunąć o ok. Przykleić nową klawiaturę do górnej pokrywy w miejscu przewidzianym dla niej. Odłączyć wiązki łączące płytę sterownika drukarki z klawiaturą: . 4. Odkręcić (po zerwaniu ołowianej plomby serwisanta) dwie śruby mocujące osłonę (patrz rysunek osłony na poprzedniej stronie) i zdjąć osłonę . 6. 2. Założyć i zabezpieczyć plombą ołowianą osłonę. Odłączyć odsłonięte wiązki od płyty sterownika.wiązkę wyświetlacza LCD poprzez wyjęcie złączki umieszczonej na płycie sterownika drukarki. 11. Podłączyć wiązki klawiatury i umieścić płytkę z lampkami w specjalnych zaczepach. Odłączyć wyświetlacz klienta (LED). Podłączyć wiązki klawiatury i umieścić płytkę z lampkami w specjalnych zaczepach. 7. Zamocować element zwijacza do nowego mechanizmu. Zamontować całość wg opisu powyżej. 14. Wyjąć wyświetlacz LCD.

. Reasumując. że rok w zakresie 1950. natomiast aplikacja sterująca drukarką otrzyma z drukarki ‘błąd numer 01’ w przypadku wysłania do drukarki dowolnego rozkazu za wyjątkiem sekwencji ‘ustawiania zegara’.1993 w drukarce może się pojawić tylko teoretycznie w przypadku uszkodzenia zegara drukarki.. Dotyczy to także kasy fiskalnej POSNET BEETLE 20 w której umieszczono drukarkę fiskalną POSNET Thermal oraz kasy POSNET 2000. dla 2001 ‘01’ itd. Ponieważ hasło ‘fiskalizacja’ obowiązuje w Polsce od roku 1993 programista który obsługuje drukarkę może przewidzieć.Rok 2000 w drukarkach fiskalnych POSNET Drukarki fiskalne POSNET drukują na swoich dokumentach datę w formacie: rr – mm – dd gdzie: rr – dwie ostatnie cyfry roku (00. Problem roku 2000 może pojawić się w systemie informatycznym tylko w przypadku gdy programista błędnie napisze (napisał) program w zakresie obsługi drukarki fiskalnej POSNET lub błędnie zinterpretuje odebrane z drukarki informacje zawierające datę. Praktycznie gdy taka sytuacja wystąpi drukarka dzięki swojemu wewnętrznemu oprogramowaniu zgłosi operatorowi (obsłudze) błąd na wyświetlaczu LCD w postaci: „Błąd zegara. dla roku 2000 będą to cyfry ‘00’. 127 . czyli zawsze tak samo interpretują sekwencje zawierające pole ‘rok’.28/29/30 lub 31). prześlij z systemu”. Wszystkie wyprodukowane do tej pory drukarki (DF-300/1/2..99 lat 1950. Rozkaz ‘odeślij czas RTC’ z drukarki.12). Str.. z zakresu 50.49 dotyczy roku 2000-2049.1999. Rozkaz wykonania ‘raportu okresowego’ . 5. Rozkaz wykonania ‘raportu dobowego’. długi status).. Rozkaz ‘odeślij informacje kasowe’ (tzw.. 4. 2. Należy nadmienić. Rozkaz ‘ustawianie zegara RTC’. 3.99).Drukarka Fiskalna POSNET Thermal i 3001 19. POSNET Thermal i POSNET 3001) działają na takim samym protokole transmisji... mm – miesiąc (1. W drukarkach POSNET dostępne są następujące sekwencje mające bezpośredni związek z datą (rr / mm / dd) : 1. że pojawienie się w drukarce liczb w polu ‘rok’ w zakresie 00. dd – dzień miesiąca (1.

Drukarka Fiskalna POSNET Thermal i 3001
20.Nowe konstrukcje drukarek
Drukarka POSNET 3001 w obudowie plastikowej
W drukarce w obudowie metalowej zastosowano mechanizm drukujący STAR MP 342 znany z drukarki DF-300 oraz DF-301, natomiast w drukarce w obudowie plastikowej zastosowano mechanizm drukujący MP232MP-24G-A oraz tasiemkę barwiącą typu RC200B. Ze względu na zmianę typu obudowy nastąpiły także istotne zmiany w konstrukcji płyty głównej drukarki, i co jest z tym związane serwis ma dostęp do niektórych elementów drukarki po demontażu mechanizmu drukującego i odkręceniu specjalnej ‘blaszki’ zasłaniającej otwór w konstrukcji. Demontaż mechanizmu drukującego (4 śruby) jest możliwy po usunięciu plomby ołowianej serwisanta umieszczonej z prawej strony mechanizmu. Na zdjęciach przedstawiono widok drukarki po odkręceniu mechanizmu drukującego i rysunek fragmentu płyty głównej drukarki dostępnej dla serwisanta:

RAM

RTC

gdzie: J4 J3

− −

U2 B1 U15 BT1 BT2

− − − − −

jumper do resetu zegara drukarki, uaktywnia dodatkowe wyjście RS232C do którego można podłączyć zewnętrzny wyświetlacz alfanumeryczny VFD (w przypadku gdy zworka jest w pozycji 2xRS). Standardowo zworka ustawiana w pozycji 1xRS+RST. driver interfejsów szeregowych – układ MAX232 bezpiecznik EPROM z programem drukarki (firmware) 3V bateria litowa podtrzymująca pamięć RAM drukarki 3V bateria litowa podtrzymująca zegar RTC

Aby uzyskać dostęp do klawiatury lub wyświetlacza LCD obsługi należy odkręcić 4 śruby mocujące górną część obudowy do podstawy konstrukcji, odłączyć wyświetlacz klienta i dwie wiązki łączące klawiaturę i wyświetlacz LCD z płytą drukarki (patrz rysunki poniżej):
LCD KBD

Str. 128

Drukarka Fiskalna POSNET Thermal i 3001
Drukarka POSNET Thermal w technologii SMD
W wersji SMD istnieje tylko jedna bateria litowa podtrzymująca zegar RTC i pamięć RAM drukarki. Dostęp do tej baterii jest możliwy po odkręceniu górnej pokrywy drukarki i specjalnej blaszki umieszczonej pod elementem zwijacza kopii. Na rysunku poniżej przedstawiono widok elementów dostępnych dla serwisu po zdjęciu ‘blaszki’:

Gdzie: BT1 – bateria podtrzymująca zegar RTC i pamięć RAM J1 punkty pomiarowe umożliwiające pomiar prądu pobieranego z baterii

Drukarki z płytą główną wykonaną w technologii SMD zaopatrzone są w zewnętrzny zasilacz wykonany w technice impulsowej CO OZNACZA, ŻE ZASILACZY Z POPRZEDNICH WERSJI DRUKAREK NIE WOLNO UŻYWAĆ DO WERSJI SMD !!! Nowa wersja zasilacza wyposażona jest w wtyczkę typu DC-12B-PT5 (UWAGA: INNA WTYCZKA NIŻ W WERSJACH WCZEŚNIEJSZYCH !!!).

Str. 129

Drukarka Fiskalna POSNET Thermal i 3001
21.Wykaz podzespołów drukarki fiskalnej POSNET Thermal
NAZWA Pakiet sterownika wersja przewlekana Pakiet sterownika wersja SMD Pakiet wyświetlacza LED Pakiet wyświetlacza LCD Mechanizm drukujący oryginał Mechanizm drukujący kopii Klawiatura membranowa Zasilacz wersja przewlekana Zasilacz wersja SMD Bateria Litowa Szpula kopii Wałek papieru Pasek zwijacza Pamięć fiskalna KOD P-PKE-DF403-M7 P-PKE-DF403-M12 P-PKE-DF403-D61 E-OLX-20X2-WINTEK M-DDT-FHP6248 M-DDT-FHP6248R P-PKE-DF403-KBD/P H-DF403-ZASILACZ H-DF403-ZASIL-SMD E-BPL-CR2032 M-MPX-DF403-DFT-70 M-MBT-DF-87P P-PKE-DF403-K31 Zakres napraw gwarancyjnych: Region POSNET X X

Dealer

X X X X X X X X X X X TYLKO POSNET !!!

X

Zasady serwisowania są następujące: 1. Dealer firmy POSNET może naprawiać (wymieniać) tylko te podzespoły, które w tabeli oznaczono symbolem ‘X’ 2. Przedstawiciel regionalny ma uprawnienia na wszystkie operacje za wyjątkiem napraw (wymian) pamięci fiskalnej W przypadku wątpliwości pytania należy kierować na adres: serwis@posnet.com.pl lub faksem (0-22 868 68 88 w. 251). Przy zamawianiu podzespołów należy podawać KOD towaru.

Str. 130

pl lub faksem (0-22 868 68 88 w. Dealer firmy POSNET może naprawiać (wymieniać) tylko te podzespoły.Wykaz podzespołów drukarki fiskalnej POSNET 3001 NAZWA Pakiet sterownika wersja METAL Mechanizm drukujący wersja METAL Pakiet sterownika wersja PLASTIK Mechanizm drukujący wersja PLASTIK Pakiet wyświetlacza LED Pakiet wyświetlacza LCD Klawiatura membranowa wersja METAL Klawiatura membranowa wersja PLASTIK Zasilacz Szpula kopii Pasek zwijacza Mikro przełącznik pokrywy Bateria Litowa Silnik zwijacza Mikro przełącznik papieru Pamięć fiskalna KOD P-PKE-DF3001-M2 M-DDI-MP342FX24VL-A P-PKE-DF401-M3 M-DDI-MP232MP24G-A P-PKE-DF403-D61 E-OLX-2-X2-WINTEK P-PKE-DF3001-KBD P-PKE-DF401-KBD/P H-DF401-ZASIL M-MPX-ZT10-3-P M-MGX-PASEK E-EMB-83132B E-BPL-CR2032 P-PKE-DF401S1 E-EMB-83132D Dealer X Zakres napraw gwarancyjnych: Region POSNET X X X X X X X X X X X X X X TYLKO POSNET !!! X Zasady serwisowania są następujące: 1. Przy zamawianiu podzespołów należy podawać KOD towaru. 251). które w tabeli oznaczono symbolem ‘X’ 2.com. Str.Drukarka Fiskalna POSNET Thermal i 3001 22. 131 . Przedstawiciel regionalny ma uprawnienia na wszystkie operacje za wyjątkiem napraw (wymian) pamięci fiskalnej W przypadku wątpliwości pytania należy kierować na adres: serwis@posnet.

132 .Drukarka Fiskalna POSNET Thermal i 3001 PISMA MINISTERSTWA FINANSÓW DOPUSZCZAJĄCE DRUKARKI DO OBROTU POSNET Thermal Str.

133 .Drukarka Fiskalna POSNET Thermal i 3001 POSNET 3001 Str.

Drukarka Fiskalna POSNET Thermal i 3001 POSNET Thermal-A Str. 134 .

Drukarka Fiskalna POSNET Thermal i 3001 NOTATKI: Str. 135 .

You're Reading a Free Preview

Pobierz
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->