Udostępnij za pośrednictwem


Implementacja skanera (poS dla zestawu SDK platformy .NET w wersji 1.14)

Urządzenie skanera służy do odczytywania danych kodu kreskowego.

Skaner jest urządzeniem z wyłącznym użyciem w następujący sposób:

  • Aplikacja musi przejąć urządzenie przed jego włączeniem.
  • Aplikacja musi oświadczeń i włączyć urządzenie przed rozpoczęciem odczytywania danych wejściowych przez urządzenie.

Obiekt skanera jest zgodny z ogólnym modelem danych wejściowych dysku zdarzeń:

  • Po odebraniu danych wejściowych z urządzenia zdarzenie DataEvent jest kolejkowane przy użyciu metody pomocnika firmy Microsoft, ScannerBase.GoodRead. Jeśli urządzenie odbiera nieprawidłowe dane, obiekt usługi może również umieścić w kolejce zdarzenie ErrorEvent przez wywołanie elementu ScannerBase.FailedRead.
  • Jeśli właściwość PosCommon.AutoDisable ma wartość true, klasa ScannerBase ustawi właściwość PosCommon.EnableDevice na false. Jeśli obiekt usługi zaimplementował tę metodę, należy odpowiednio wyłączyć urządzenie.

Zdarzenie DataEvent w kolejce zostanie dostarczone tylko do aplikacji, gdy właściwość ScannerBase.DataEventEnabled ma wartość true.

  • Specyfikacja unified point of service (UnifiedPOS) wymaga, aby dane z przychodzącego modułu DataEvent zostały skopiowane do odpowiednich właściwości przed dostarczeniem do aplikacji. Metoda ScannerBase.PreFireEvent, która jest wywoływana tuż przed dostarczeniem elementu DataEvent do aplikacji, spełnia to wymaganie, wywołując metodę ScannerBase.DecodeScanDataLabel i ScannerBase.DecodeScanDataType, jeśli właściwość DecodeData jest ustawiona na wartość true. Zazwyczaj należy zaimplementować te metody w obiekcie usługi.
  • Zeskanowane dane są umieszczane we właściwości Scanner.BaseScanData . Jeśli aplikacja ustawiła właściwość ScannerBase.DecodeData na wartość true, dane są dekodowane we właściwościach ScannerBase.ScanDataLabel i ScanDataType .
  • Przed dostarczeniem elementu DataEvent do aplikacji właściwość ScannerBase.DataEventEnabled ma wartość false. Zapobiega to dostarczaniu kolejnych modułów DataEvents do aplikacji, dopóki nie zakończy przetwarzania bieżącego. Aplikacja ustawia parametr ScannerBase.DataEventEnabled na wartość true , gdy jest gotowy do przetwarzania zdarzeń przychodzących.
  • Właściwość ScannerBasic.DataCount może być odczytywana w celu uzyskania całkowitej liczby zdarzeń w kolejce.
  • Wszystkie zdarzenia umieszczone w kolejce można usunąć, wywołując metodę ScannerBasic.ClearInput .

W tej sekcji

  • Dekodowanie danych opisuje kod niezbędny do dekodowania danych specyficznych dla urządzenia.

  • Zdarzenia skanera pokazują, w jaki sposób obiekt usługi skanera używa usługi POS do kolejkowania platformy .NET w celu zgłaszania zdarzeń do aplikacji.