示例#1
0
        private void ЗаполнитьСписокСотрудников()
        {
            // сбросим список сотрудников

            Сотрудники.Список.Clear();

            // получим данные сервера

            Cursor.Current = Cursors.WaitCursor;
            ОтветСервера   = Обмен.ПослатьСтроку("ОбработкаТТН_ПолучитьСотрудников", ТТНСсылка);
            Cursor.Current = Cursors.Default;

            if (ОтветСервера == null)
            {
                return;
            }

            // заполним список сотрудников

            try
            {
                foreach (string[] str in ОтветСервера)
                {
                    Сотрудники.Добавить(str[0], str[1], str[2]);
                }

                ОбщиеФункции.ДобавитьТекущуюОперацию("ВыгрузкаМашины", Сотрудники);
            }
            catch
            {
                //...
            }
        }
示例#2
0
        private void ОбработкаВводаСотрудника(string _Данные)
        {
            // проверим, что это сотрудник

            if (!_Данные.Substring(0, 3).Equals("vis"))
            {
                Инфо.Ошибка("Необходимо сканировать ШК сотрудника.");
                return;
            }

            string СотрудникКод = _Данные.Substring(3);

            // проверим, что сотрудник еще не добавлен

            foreach (ListViewItem item in СписокСотрудников.Items)
            {
                if (String.Equals(item.SubItems[1].Text, СотрудникКод))
                {
                    Инфо.Ошибка("Сотрудник уже присутствует в списке.");

                    // установить курсор на сотрудника, которого добавляем повторно

                    item.Focused  = true;
                    item.Selected = true;
                    return;
                }
            }

            // проверка сотрудника на сервере

            Cursor.Current = Cursors.WaitCursor;
            ОтветСервера   = Обмен.ПослатьСтроку("ВыборСотрудниковСканирование", СотрудникКод);
            Cursor.Current = Cursors.Default;

            if (ОтветСервера == null)
            {
                return;
            }

            if (ОтветСервера[0][0] == "ДобавитьСотрудника")
            {
                // добавим строку и спозиционируемся на ней

                string СотрудникСсылка       = ОтветСервера[0][1];
                string СотрудникНаименование = ОтветСервера[0][2];

                string[] row         = { СотрудникНаименование, СотрудникКод };
                var      НоваяСтрока = СписокСотрудников.Items.Add(new ListViewItem(row));

                НоваяСтрока.Focused  = true;
                НоваяСтрока.Selected = true;

                Список.Добавить(СотрудникНаименование, СотрудникКод, СотрудникСсылка);

                // подать сигнал о успешном добавлении

                аботаСоСканером.Звук.Ок();
            }
        }
        private void ФормаВыборФилиала_Load(object sender, EventArgs e)
        {
            // заполним подсказку пользователю

            ПодсказкаПользователю.Text = НомерТС + "\nВЫБЕРИТЕ ФИЛИАЛ ПОГРУЗКИ";

            // получить список филиалов по ТТН

            Cursor.Current = Cursors.WaitCursor;
            ОтветСервера   = Обмен.ПослатьСтроку("ВыборФилиалаПолучитьСписокФилиалов", ТТНСсылка);
            Cursor.Current = Cursors.Default;

            if (ОтветСервера == null)
            {
                return;
            }

            // заполним список Филиалов

            try
            {
                foreach (string[] str in ОтветСервера)
                {
                    string[]     row         = { str[0], str[1], str[2] };
                    ListViewItem НоваяСтрока = СписокФилиалов.Items.Add(new ListViewItem(row));

                    if (Convert.ToInt32(НоваяСтрока.SubItems[2].Text) > 0)
                    {
                        НоваяСтрока.BackColor = Color.LightGreen;
                    }
                }
            }
            catch
            {
                Инфо.Ошибка("Нет филиалов на погрузку.");
                this.Close();
                return;
            }

            // установим курсор в первую строку

            if (СписокФилиалов.Items.Count > 0)
            {
                СписокФилиалов.Focus();

                СписокФилиалов.Items[0].Focused = true;
            }

            // заполним список сотрудников

            if (Сотрудники.Список.Count == 0)
            {
                // если список пустой, то попытаемся получить данные сервера

                Cursor.Current = Cursors.WaitCursor;
                ОтветСервера   = Обмен.ПослатьСтроку("ВыборФилиалаПолучитьСписокСотрудников", ТТНСсылка);
                Cursor.Current = Cursors.Default;

                if (ОтветСервера == null)
                {
                    return;
                }

                // заполним список сотрудников

                try
                {
                    foreach (string[] str in ОтветСервера)
                    {
                        Сотрудники.Добавить(str[0], str[1], str[2]);
                    }

                    if (Сотрудники.Список.Count > 0)
                    {
                        ОбщиеФункции.ДобавитьТекущуюОперацию("ПогрузкаМашины", Сотрудники);
                    }
                }
                catch
                { }
            }
        }