コード例 #1
0
        public override void OnBarcode(string Barcode)
        {
            textBoxControl.Hide();

            string       prefix        = "SB_NAC.";
            int          asterixIndex  = Barcode.IndexOf("*");
            string       barcodePrefix = "";
            BarcodeValue barcodeValue  = new BarcodeValue();

            if (Barcode.Length > 7)
            {
                barcodePrefix      = Barcode.Substring(0, 7);
                barcodeValue.Value = Barcode.Substring(7);
            }

            if (barcodePrefix == prefix && barcodeValue.Value != "")
            {
                #region Обработка штрих-кода номенклатуры

                if (currentBarcodeValue.IsEquals(barcodeValue))
                {
                    ShowMessage("Вы отсканировали текущий тип работ.");
                    return;
                }

                string name = GetNomenclatureDescr(barcodeValue.NomenclatureID);
                if (name == null)
                {
                    if (ShowQuery("Данная номенклатура не найдена. Необходимо обновить базу на устройстве и повторить сканирование.\r\nОбновить базу на устройстве?"))
                    {
                        UpdateRules();
                    }
                    return;
                }

                ShowRules(barcodeValue);
                currentBarcodeValue.Value = barcodeValue.Value;
                Nomenclature = name;

                #endregion
            }
            else if (Barcode.Length == 13 && Number.IsNumber(Barcode))
            {
                // Обработка штрих-кода паллеты
                if (currentBarcodeValue.Value == "")
                {
                    // Еще не был отсканирован тип работы
                    ShowMessage("Начните со сканирования штрих-кода типа работы");
                    return;
                }
                AddPalletNumber(Barcode.Substring(1, 11));
            }
            else
            {
                ShowMessage("Ожидается штрих-код паллеты или типа работы!");
            }
        }