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 { //... } }
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 { } } }