private void ОтправитьТаблицу() { if (КоллекцияСтрок.Count() == 0) { Последовательность.ОтветСервера = Обмен.Послать(ТекстДЯ.Text, null); return; } Последовательность.ОтветСервера = Обмен.Послать(ТекстДЯ.Text, КоллекцияСтрок.ToArray()); }
public static void ДобавитьТекущуюОперацию(string _Операция, СписокСотрудников _Сотрудники) { try { Пакеты Обмен = new Пакеты("УчетТекущихОпераций"); string[][] мПараметры = new string[2][]; // Операция мПараметры[0] = new string[] { "стрОперация", _Операция }; // Сотрудники мПараметры[1] = new string[_Сотрудники.Список.Count + 1]; мПараметры[1][0] = "мСотрудники"; string[] мСотрудники = new string[_Сотрудники.Список.Count]; for (int i = 0; i < _Сотрудники.Список.Count; i++) { мПараметры[1][i + 1] = _Сотрудники.Список[i].Ссылка; } Обмен.Послать("Добавить", мПараметры); } catch { } }
// ----------------------------------------------------------------------------------------------------------------------------------------------------- // Завершение подбора ----------------------------------------------------------------------------------------------------------------------------------- private void ЗавершитьЗадания(bool ВыйтиПриЗавершении) { // Заполняем массив для отправки в 1с КоллекцияСтрок.Clear(); foreach (var Строка in ТаблицаПодбора) { if (Строка.КоличествоСобрано > 0) { ДобавитьСтроку(Строка.Гуид, Строка.КоличествоСобрано.ToString(), "0", Строка.СекундПодбора.ToString()); } if (Строка.КоличествоВычерк > 0) { ДобавитьСтроку(Строка.Гуид, Строка.КоличествоВычерк.ToString(), "1", Строка.СекундПодбора.ToString()); } } // Если строк для отправки нет, данные на сервер не отсылаем var ЕстьСтрокиДляОтправки = КоллекцияСтрок.Count() != 0; //if (!ЕстьСтрокиДляОтправки && ВыйтиПриЗавершении) if (!ЕстьСтрокиДляОтправки) { ОтветСервера = Обмен.ПослатьСтроку("Выход"); this.Close(); return; } // Не даем завершить задания, если ДЯ пустая if (string.IsNullOrEmpty(ДинамическаяЯчейка)) { Инфо.Ошибка("Не выбрана динамическая ячейка!"); return; } Cursor.Current = Cursors.WaitCursor; ОтветСервера = Обмен.Послать("ЗавершитьЗадания", КоллекцияСтрок.ToArray()); Cursor.Current = Cursors.Default; //в случае какой либо ошибки при завершении задания показываем кнопку повтора завершения if (ОтветСервера == null) { КнопкаПовторитьЗавершение.Visible = true; } else { if (ВыйтиПриЗавершении) { this.Close(); return; } else { ОбработатьОтветСервераПриЗавершении(ОтветСервера); } } }
private void ЗавершениеПеремещения() { // Не даем завершить задания, если адрес получатель не выбран if (string.IsNullOrEmpty(АдресПолучатель)) { Инфо.Ошибка("Не выбран адрес получатель!"); return; } // Заполняем массив для отправки в 1с КоллекцияСтрок.Clear(); ДобавитьСтроку("АдресОтправитель", АдресОтправитель); ДобавитьСтроку("АдресПолучатель", АдресПолучатель); ДобавитьСтроку("ЭтоДинамическаяЯчейка", ЭтоДинамическаяЯчейка == true ? "Истина" : "Ложь"); bool ЕстьСтрокиДляОтправки = false; foreach (var Строка in ТаблицаПеремещения) { if (Строка.Количество > 0) { ЕстьСтрокиДляОтправки = true; ДобавитьСтроку(Строка.Гуид, Строка.Количество.ToString()); } } // Если строк для отправки нет, данные на сервер не отсылаем if (!ЕстьСтрокиДляОтправки) { Инфо.Ошибка("Не сосканированы товары для перемещения!"); return; } Cursor.Current = Cursors.WaitCursor; ОтветСервера = Обмен.Послать("ЗавершитьЗадания", КоллекцияСтрок.ToArray()); Cursor.Current = Cursors.Default; //в случае какой либо ошибки при завершении ничего не делаем, даем возможность завершить повторно if (ОтветСервера == null) { return; } if (ОтветСервера[0][0] == "НетТоваров") { аботаСоСканером.Звук.Ок(); this.Close(); return; } ОкноПеремещенияТоваров_Load(null, new EventArgs()); }
private void ВыслатьВсеДерево(Пакеты Обмен, bool ТолькоСобранное) { СообщениеПодождите.Visible = true; Cursor.Current = Cursors.WaitCursor; КоллекцияСтрок.Clear(); ДобавитьСтрокиПодбора(); if (!ТолькоСобранное) { ДобавитьСтрокиВычерка(); } if (КоллекцияСтрок.Count() == 0) { Последовательность.ОтветСервера = Обмен.Послать(ТекстДЯ.Text, null); СообщениеПодождите.Visible = false; return; } Последовательность.ОтветСервера = Обмен.Послать(ТекстДЯ.Text, КоллекцияСтрок.ToArray()); Cursor.Current = Cursors.Default; СообщениеПодождите.Visible = false; }
private void ЗавершениеИнвентаризации() { // Заполняем массив для отправки в 1с КоллекцияСтрок.Clear(); bool ЕстьСтрокиДляОтправки = false; ДобавитьСтроку("Адрес", Адрес); foreach (var Строка in ТаблицаИнвентаризации) { if (Строка.Количество > 0) { ЕстьСтрокиДляОтправки = true; ДобавитьСтроку(Строка.Гуид, Строка.Количество.ToString()); } } // Если не сосканили ни одного товара и завершаем, надо задать вопрос if (!ЕстьСтрокиДляОтправки) { аботаСоСканером.Звук.Ошибка(); var MSGRes = MessageBox.Show("Не сосканирован ни один товар! Вы точно хотите \n завершить \n инвентаризацию ?", "Завершение инвентаризации", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1); if (MSGRes != DialogResult.Yes) { return; } } Cursor.Current = Cursors.WaitCursor; ОтветСервера = Обмен.Послать("ЗавершитьЗадания", КоллекцияСтрок.ToArray()); Cursor.Current = Cursors.Default; //в случае какой либо ошибки при завершении ничего не делаем, даем возможность завершить повторно if (ОтветСервера == null) { return; } Form Окно = new ОкноВыбораЗаданийНаИнвентаризацию("ИнвентаризацияСканАдреса", Адрес.Substring(0, 1), Адрес.Substring(0, 3), Адрес.Substring(0, 6), Адрес); this.Close(); Окно.Show(); }
// ----------------------------------------------------------------------------------------------------------------------------------------------------- // Завершение подбора ----------------------------------------------------------------------------------------------------------------------------------- private void ЗавершитьЗадания() { // Заполняем массив для отправки в 1с КоллекцияСтрок.Clear(); foreach (var Строка in ТаблицаПодбора) { if (Строка.КоличествоСобрано > 0) { ДобавитьСтроку(Строка.Гуид, Строка.КоличествоСобрано.ToString(), Строка.СекундПодбора.ToString()); } } Cursor.Current = Cursors.WaitCursor; ОтветСервера = Обмен.Послать("ЗавершитьЗадания", КоллекцияСтрок.ToArray()); Cursor.Current = Cursors.Default; if (ОтветСервера == null) { return; // в случае ошибки остаться в этом же окне } if (ОтветСервера[0][0] == "ЗаданияЗавершены") { Form Окно = new ОкноВыбораЗаказовКлиента(); this.Close(); Окно.Show(); return; } if (ОтветСервера[0][0] == "ЗаданияЗаписаны") { Form Окно = new ОкноЗаказовКлиента(); this.Close(); Окно.Show(); return; } if (ОтветСервера[0][0] == "ЗаданияВПодборе") { ОкноПодбораЗаданий_Load(null, new EventArgs()); } }
public void _Завершить() { if (СписокГрузовыхМест.Items.Count == 0) { return; } // запросить подтверждение string message = "Вы уверены, что хотите завершить прием грузовых мест?"; string caption = "Подтверждение"; MessageBoxButtons buttons = MessageBoxButtons.YesNo; DialogResult result; // отобразить MessageBox. result = MessageBox.Show(message, caption, buttons, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1); if (result != System.Windows.Forms.DialogResult.Yes) { return; } // получим количество секунд TimeSpan азностьДат = DateTime.Now - Данные.ВремяНачала; int КоличествоСекунд = Convert.ToInt32(азностьДат.TotalSeconds); // сформируем параметры для передачи на сервер string[][] Параметры = new string[3][]; // грузовые места Параметры[0] = new string[СписокГрузовыхМест.Items.Count + 1]; Параметры[0][0] = "мГрузовыеМеста"; // зададим наименование массива foreach (ListViewItem item in СписокГрузовыхМест.Items) { Параметры[0][item.Index + 1] = item.Text; } // сотрудники Параметры[1] = new string[Данные.Сотрудники.Список.Count + 1]; Параметры[1][0] = "мСотрудники"; // зададим наименование массива for (int i = 0; i < Данные.Сотрудники.Список.Count; i++) { Параметры[1][i + 1] = Данные.Сотрудники.Список[i].Ссылка; } // количество секунд Параметры[2] = new string[2]; Параметры[2][0] = "чслКоличествоСекунд"; Параметры[2][1] = Convert.ToString(КоличествоСекунд); // передать список грузовых мест на сервер // сервер возвращает места, которые не удалось принять Cursor.Current = Cursors.WaitCursor; ОтветСервера = Обмен.Послать("ЗавершитьПриемГрузовыхМест", Параметры); Cursor.Current = Cursors.Default; if (ОтветСервера == null) // ничего не делаем { return; } if (ОтветСервера[0][0] == "ВыполненоУспешно") { СписокГрузовыхМест.Items.Clear(); // предупредить о успешном выполнении // ... } if (ОтветСервера[0][0] == "ВыполненоСОшибками") { // удалим из списка места, которые приняли List <ListViewItem> СписокСтрокДляУдаления = new List <ListViewItem> { }; // надем строки, которые надо удалить foreach (ListViewItem item in СписокГрузовыхМест.Items) { bool Удалять = true; foreach (string[] str in ОтветСервера) { if (String.Equals(item.SubItems[0].Text, str[0])) { Удалять = false; break; } } if (Удалять) { СписокСтрокДляУдаления.Add(item); } } // удалим строки foreach (ListViewItem item in СписокСтрокДляУдаления) { СписокГрузовыхМест.Items.Remove(item); Данные.СписокГрузовыхМестУдалить(item.SubItems[0].Text); } // оповестим о ошибке Инфо.Ошибка(ОтветСервера[0][1]); } УстановитьДоступностьЭлементовФормы(); УстановитьТекстПодсказки(); // если все места приняты, то переходим в основное меню if (СписокГрузовыхМест.Items.Count == 0) { аботаСоСканером.Звук.Ок(); // успешное завершение this.Close(); } }
public virtual void _Далее() { ////////////////////////////// // получим количество секунд string[][] Параметры = new string[10][]; // ТТН Параметры[0] = new string[2]; Параметры[0][0] = "ссТТН"; Параметры[0][1] = ТТНСсылка; // Филиал получатель Параметры[1] = new string[2]; Параметры[1][0] = "ссФилиалПолучатель"; Параметры[1][1] = ФилиалСсылка; // чслОргтехника Параметры[2] = new string[2]; Параметры[2][0] = "чслОргтехника"; Параметры[2][1] = СписокПогрузки.Items[0].SubItems[1].Text; // чслНоутбуки Параметры[3] = new string[2]; Параметры[3][0] = "чслНоутбуки"; Параметры[3][1] = СписокПогрузки.Items[1].SubItems[1].Text; // чслТелевизоры Параметры[4] = new string[2]; Параметры[4][0] = "чслТелевизоры"; Параметры[4][1] = СписокПогрузки.Items[2].SubItems[1].Text; // чслДорогойТовар Параметры[5] = new string[2]; Параметры[5][0] = "чслДорогойТовар"; Параметры[5][1] = СписокПогрузки.Items[3].SubItems[1].Text; // чслМешки Параметры[6] = new string[2]; Параметры[6][0] = "чслМешки"; Параметры[6][1] = СписокПогрузки.Items[4].SubItems[1].Text; // мГрузовыеМеста Параметры[7] = new string[СписокГрузовыхМест.Count + 1]; Параметры[7][0] = "мГрузовыеМеста"; for (int i = 0; i < СписокГрузовыхМест.Count; i++) { Параметры[7][i + 1] = СписокГрузовыхМест[i]; } // мСотрудники Параметры[8] = new string[Сотрудники.Список.Count + 1]; Параметры[8][0] = "мСотрудники"; for (int i = 0; i < Сотрудники.Список.Count; i++) { Параметры[8][i + 1] = Сотрудники.Список[i].Ссылка; } // TimeSpan азностьДат = DateTime.Now - ВремяНачала; int КоличествоСекунд = Convert.ToInt32(азностьДат.TotalSeconds); // чслКоличествоСекунд Параметры[9] = new string[2]; Параметры[9][0] = "чслКоличествоСекунд"; Параметры[9][1] = Convert.ToString(КоличествоСекунд); // передаем данные на сервер Cursor.Current = Cursors.WaitCursor; ОтветСервера = Обмен.Послать("ПогрузкаЗавершить", Параметры); Cursor.Current = Cursors.Default; if (ОтветСервера == null) { return; } if (ОтветСервера[0][0] == "ПогрузкаЗавершена") { // переходим в окно выбора филиала Form Окно = new ФормаВыборФилиала(НомерТС, ТТННомер, ТТНСсылка); Окно.Show(); this.Close(); return; } }
public virtual void _Далее() { // запросить подтверждение string message = "Вы уверены, что хотите завершить разгрузку?"; string caption = "Подтверждение"; MessageBoxButtons buttons = MessageBoxButtons.YesNo; DialogResult result; // отобразить MessageBox. result = MessageBox.Show(message, caption, buttons, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1); if (result != System.Windows.Forms.DialogResult.Yes) { return; } // предложим отредактировать список сотрудников СотрудникиРедактироватьСписок(); // получим количество секунд TimeSpan азностьДат = DateTime.Now - ВремяНачала; int КоличествоСекунд = Convert.ToInt32(азностьДат.TotalSeconds); // сформируем параметры для передачи на сервер string[][] Параметры = new string[3][]; // сотрудники Параметры[0] = new string[Сотрудники.Список.Count + 1]; Параметры[0][0] = "мСотрудники"; // зададим наименование массива for (int i = 0; i < Сотрудники.Список.Count; i++) { Параметры[0][i + 1] = Сотрудники.Список[i].Ссылка; } // количество секунд Параметры[1] = new string[2]; Параметры[1][0] = "чслКоличествоСекунд"; Параметры[1][1] = Convert.ToString(КоличествоСекунд); // ссТТН Параметры[2] = new string[2]; Параметры[2][0] = "ссТТН"; Параметры[2][1] = ТТНСсылка; // передать данные на сервер Cursor.Current = Cursors.WaitCursor; ОтветСервера = Обмен.Послать("ОбработкаТТН_Завершить", Параметры); Cursor.Current = Cursors.Default; if (ОтветСервера == null) // ничего не делаем { return; } //////////////////////////////////////////////////////////////// if (ОтветСервера[0][0] == "ВыполненоУспешно") { аботаСоСканером.Звук.Ок(); this.Close(); } else { аботаСоСканером.Звук.Ошибка(); } }
private void ЗавершениеПеремещения() { // Не даем завершить задания, если адрес получатель не выбран if (string.IsNullOrEmpty(АдресПолучатель)) { Инфо.Ошибка("Не выбран адрес получатель!"); return; } // Заполняем массив для отправки в 1с КоллекцияСтрок.Clear(); ДобавитьСтроку("АдресОтправитель", АдресОтправитель); ДобавитьСтроку("АдресПолучатель", АдресПолучатель); bool ЕстьСтрокиДляОтправки = false; foreach (var Строка in ТаблицаПеремещения) { if (Строка.Количество > 0) { ЕстьСтрокиДляОтправки = true; ДобавитьСтроку(Строка.Гуид, Строка.Количество.ToString()); } } // Если строк для отправки нет, данные на сервер не отсылаем if (!ЕстьСтрокиДляОтправки) { Инфо.Ошибка("Не сосканированы товары для перемещения!"); return; } // запросить подтверждение //string message = "Вы уверены, что хотите переместить товар?"; //string caption = "Подтверждение"; //MessageBoxButtons buttons = MessageBoxButtons.YesNo; //DialogResult result; //// отобразить MessageBox. //result = MessageBox.Show(message, caption, buttons, MessageBoxIcon.Question, MessageBoxDefaultButton.Button1); //if (result != System.Windows.Forms.DialogResult.Yes) //{ // return; //} Cursor.Current = Cursors.WaitCursor; ОтветСервера = Обмен.Послать("ЗавершитьЗадания", КоллекцияСтрок.ToArray()); Cursor.Current = Cursors.Default; //в случае какой-либо ошибки при завершении ничего не делаем, даем возможность завершить повторно if (ОтветСервера == null) { return; } if (ОтветСервера[0][0] == "ЗаданияЗавершеныУспешно") { аботаСоСканером.Звук.Ок(); ОкноПодтоваркиТоваров_Load(null, new EventArgs()); // получаем задания по этому адресу } }