XonXoff hanshaking. (kontrola przepływu)
Kliknij OK.
6. W tym momencie ukaże się pusty ekran. Zauważ, że kiedy jakiś klawisz jest naciśnięty, nic nie pokazuje się na ekranie.
Aby sprawdzić poprawność połączenia z drukarką wpisz ~HS. Na ekranie pojawi się następujący ciąg.
7. Wpisz komendę ~JI by rozpocząć "ZBI interpreter".
Zauważ, że jeśli program ZBI, który będzie ładowany do drukarki zużyje więcej niż 50k pamięci drukarki
to komenda ^JI musi zostać użyta. Sprawdź znaczenie tej instrukcji w podręczniku ZPL. Ekran będzie wyglądał tak.
8. Gdy połączenie jest prawidłowo ustawione wyświetli się numer wersji interpretera ZBI i możemy przystąpić do ładowania programu do drukarki.
Aby wybrać program do wysłania, przejdź do menu Transfer i wybierz "Send text file"
9. Teraz przejdź do żądanego katalogu i wybierz plik do transferu.
10. Naciśnij klawisz OPEN a plik zostanie wysłany. Tekst pliku pojawi się na ekranie gdy będzie wysyłany do drukarki.
11. Program jest teraz na konsoli gotowy do uruchomienia lub przechowania w drukarce.
Aby przechować plik użyj komendy przechowania wg następującej składni:
STORE "E:FILENAME.BAS" Proszę zauważyć, że E; jest pamięcią lokalną w drukarce, i że FILENAME (nazwa pliku) może być jakąkolwiek nazwą nie przekroczającą 8 liter.
12. Aby sprawdzić czy program został zachowany, napisz DIR i powinien ukazać się następujący plik.
Podświetlony obszar pokazuje nazwę pliku, która w tym przypadku brzmi DPL.BAS
13. Program jest zachowany i gotowy do uruchomienia przez użycie komendy uruchomienia.
DPL extraction Program
A. Drukarka Zebra ma działające ZBI a programista wie wcześniej jakie dane są źródłowymi.
B. ZBI poszukuje języka konkurenta; kiedy zostanie odnaleziony ZBI ściągnie dane do lokalizacji przechowywania.
C. ZBI zostaje uruchomione przez program i rozdziela dane użytkowe od informacji formatu w danych konkurenta.
D. Dane użytkowe są włożone do ZPL i wysłane do silnika generatora etykiet do drukowania.
DPL Extraction
1 REM THIS OPENS ALL OF THE REQUIRED PORTS (otwiera wszystkie żądane porty)
10 CLOSE #1
20 CLOSE #2
30 OPEN #1 NAME "SER"
40 OPEN #2 NAME "ZPL"
1 REM THIS SEARCHES FOR THE START OF THE FORMAT (szuka startu formatu)
50 LET START$ = CHR$(2) & "L"
60 LET JUNK$ = SEARCHTO$(1,START$,2)
1 REM THIS IS TO INPUT THE STUFF THAT IS NOT NEEDED (wkłada rzeczy, które są niepotrzebne)
70 FOR I=1 TO 7 STEP 1
80 INPUT #1: JUNK$
90 NEXT I
1 REM THIS INPUTS THE STRINGS FOR EXTRACTING (wkłada "strings" (linki) aby wydobyć)
100 DECLARE STRING TEMP$(20)
110 FOR I=1 TO 17 STEP1
120 INPUT #1: TEMP$(I)
130 NEXT I
1 REM THIS IS WERE THE DATA IS EXTRACTED (jest tam, gdzie dane są wydobyte)
140 DECLARE STRING DATA$(20)
150 FOR I=1 TO 17
160 LET DATA$(I)=TEMP$(I)(16:999)
170 NEXT I
180 INPUT #1: JUNK$
190 INPUT #1: Q$
200 LET DATA$(18)=QS(2:999)
1 REM HERE IS WHERE THE DATA GETS PRINTED (jest tam, gdzie dane zostają wydrukowane)
210 PRINT #2:"^XA"
220 PRINT #2:"^A0N,98,92^FO189,40^CI0^FD";DATA$(10);"^FS";
230 PRINT #2:"^A0N,39,36^FO45,218^CI0^FD";DATA$(12);"^FS";
240 PRINT #2:"^A0N,39,36^FO47,435^CI0^FD";DATA$(13);"^FS";
250 PRINT #2:"^A0N,39,36^FO47,608^CI0^FD";DATA$(14);"^FS";
260 PRINT #2:"^A0N,39,36^FO526,435^CI0^FD";DATA$(15);"^FS";
270 PRINT #2:"^A0N,39,36^FO526,608^CI0^FD";DATA$(16);"^FS";
280 PRINT #2:"^FO4,179^GB814,6,6^FS";
290 PRINT #2:"^FO0,772^GB814,6,6^FS";
300 PRINT #2:"^A0N,59,56^FO150,283^CI0^FD";DATA$(1);"^FS";
310 PRINT #2:"^A0N,59,56^FO51,499^CI0^FD";DATA$(2);"^FS";
320 PRINT #2:"^A0N,59,56^FO526,497^CI0^FD";DATA$(3);"^FS";
330 PRINT #2:"^A0N,59,56^FO528,676^CI0^FD";DATA$(4);"^FS";
340 PRINT #2:"^A0N,39,36^FO253,923^CI0^FD";DATA$(5);"^FS";
350 PRINT #2:"^A0N,39,36^FO340,1143^CI0^FD";DATA$(6);"^FS";
360 PRINT #2:"^A0N,59,56^FO53,679^CI0^FD";DATA$(9);"^FS"
370 PRINT #2:"^BY2,2.5^FO140,807^B3N,N,85,N,N^FD";DATA$(7);"^FS";
380 PRINT #2:"^BY3,2.7^FO170,1036^B3N,N,81,N,N^FD";DATA$(8);"^FS";
390 PRINT #2:"^PQ";DATA$(18);",0,1,Y";
400 PRINT #2:"^XZ"
410 GOTO 60
Waga i aplikacja skanera
A. Drukarka Zebra używa prostego szeregowego przełączania pomiędzy urządzeniami A i B.
Jedno urządzenie przesyła masę (waga) a drugie urządzenie przesyła cenę za 1kg z kodu paskowego (skaner kodów kreskowych)
B. Do wagi zostaje wysłane zapytanie o ciężar, program ZBI wysyła zapytanie "W" do wagi i sprawdza czy waga odesłała dane do portu.
C. Jeśli dane są interpreter pobiera dane i sprawdza czy są z wagi czy ze skanera. Jeśli dane są z wagi interpreter ZBI sprawdza czy cena jest w pamięci.
D. Jeśli cena jest w pamieci ZBI mnoży wagę przez cenę i drukuje etykietę.
Jeśli cena nie została przeskanowana, program czeka na dane ze skanera (po otrzymaniu danych ze skanera drukuje etykietę).
WAGA I SKANER APP
REM otwiera porty i serię dla silnika ZPL.
REM ustawia parametry COMM dla serii portu.
REM wysyła komendę by zapytać wagę i patrzy, czy odpowiedź przychodzi od wagi czy od skanera.
REM Sekcja "SCANNER INPUT"
REM Sekcja: wkład wagi i kalkulacja kosztów
ALETR FOR MEDIA INVENTORY
Drukarka z zainstalowaną zaawansowaną opcją liczenia; drukuje etykiety i zapisuje numery etykiet, które mają być wydrukowane.
ZBI widzi zysk zawansowanego liczenia do pewnego numeru, który był zdefiniowany przez użytkownika, a teraz został osiągnięty.
Kiedy zostanie wydrukowana odpowiednia (zaprogramowana) liczba etykiet, interpreter ZBI wysyła email do odpowiednich osób. W tym przypadku email zostałby wysłany do Zip Zebra.
Email zawiera numer etykiet i taśm jakich używa klient, jak również ilość etykiet jaka została wydrukowana.
ALERT FOR COUNTER
REM otwiera porty i rozpoczyna szukanie szeregów.
REM sprawdza R: pamięć dla pliku A ZPL by ustalić sprawdzenie przedziału.
Jeśli nie ma pliku, wówczas sprawdza pamięć E.
Jeśli jest plików R, przesłanie do E; sprawdzenie dostępnej pamieci.
Sprawdzenie jaka ilość etykiet została wydrukowana.
Zbi Alert for Front Panel Changes
(Alarm Zbi dla zmian przedniego panelu)
Drukarka musi mieć przedni panel LCD Control i zainstalowany ZebraNetII PrintSaver.
ZBI ustala ustawienia panelu przedniego jakich nie dokonał użytkownik. ZBI ładuje ustawienia przedniego panelu do pamieci dla porównania.
Gdy wiadomo, ze właściwe ustawienia są naładowane do programu ZBI następuje sprawdzenie, czy każda pozycja została zmieniona przez porównanie znanej, dobrej config z aktualną config co 2 sek.
Jeśli wykryta jest różnica w ZBI, email wysłany jest do administratora pokazując, które pole zostało zmienione.
FRONT PANEL CHECK for ZBI
REM z zainstalowanym RTC może być ustawiony do właściwego czasu i danych.
200 to 300 DPI Conversion for ZBI
ZPL przychodzi z komputera jako format 200dpi.
ZBI szuka wszystkich wartości za ^FO, ^AO, ^GB. Te wartości określają rozmiar i pozycje fontów i skrzynek.
Po znalezieniu wartości wybranych komend są one pomnożone przez 1.5 aby zostały zmienione z 200dpi na wartość 300 dpi.
Zmienione wartości są dodane do ZPI i wysłane do silnika ZPL by były przetworzone i drukowane.
200 to 300 DPI Converter
Ta sekcja kodów otwiera porty dla "input" i "output".
REM Tworzy szereg z szukanymi parametrami
REM Gdy parametr jest odnaleziony wylicza co z nim zrobić.
REM Sekcja ta zmienia ^FO z 200 na 300.
REM Sekcja ta zmienia ^AO z 200 na 300.
REM Sekcja ta zmienia ^GB z 200 na 300.
Wbudowany jezyk programowania ZBI (Zebra Basic Interpreter) - może interpretować dane przychodzące z
zewnętrznych urządzeń np. czytników kodu kreskowego, wag elektronicznych umożliwiając
budowę samodzielnych stanowisk pracy bez potrzeby instalowania komputera oraz prostą
wymianę drukarek innych producentów na drukarki Zebra bez potrzeby ponownego
programowania systemu druku.