private bool grdFramesTraffics_Restore() { grdFramesTraffics.GetGridState(); grdFramesTraffics.DataSource = null; if (grdData.Rows.Count == 0 || oFrameCur.ID == null || grdData.CurrentRow != null && grdData.IsStatusRow(grdData.CurrentRow.Index)) { return(true); } oTrafficFrame.ClearError(); oTrafficFrame.ClearFilters(); if (!dtrFramesHistoryDates.dtpBegDate.IsEmpty) { oTrafficFrame.FilterDateBeg = dtrFramesHistoryDates.dtpBegDate.Value.Date; } if (!dtrFramesHistoryDates.dtpEndDate.IsEmpty) { oTrafficFrame.FilterDateEnd = dtrFramesHistoryDates.dtpEndDate.Value.Date; } oTrafficFrame.FilterFramesList = oFrameCur.ID.ToString(); oTrafficFrame.FillData(); grdFramesTraffics.Restore(oTrafficFrame.MainTable); return(oTrafficFrame.ErrorNumber == 0); }
private void btnSave_Click(object sender, EventArgs e) { int? nCellTargetID = null; bool bFrameDestroy = chkFrameDestroy.Checked; int nPriority = (int)numPriority.Value; string sMessage = "—оздать операции дл¤ транспортировки контейнера\n"; if (optCellTarget.Checked) { if (cboCellTargetAddress.SelectedIndex < 0) { RFMMessage.MessageBoxError("Ќе выбрана ¤чейка..."); return; } nCellTargetID = (int)cboCellTargetAddress.SelectedValue; if (nCellTargetID == (int)cboCellSourceAddress.SelectedValue) { RFMMessage.MessageBoxError("¬ыбрана та же ¤чейка..."); return; } sMessage += "в ¤чейку " + cboCellTargetAddress.Text; } else { sMessage += "в подход¤щую ¤чейку длительного хранени¤"; } if (bFrameDestroy) { sMessage += "\n" + "(при выполнении операции контейнер будет разобран)"; } sMessage += "?"; if (RFMMessage.MessageBoxYesNo(sMessage) == DialogResult.Yes) { oTraffic.ClearError(); oTraffic.CreateManual((int)oFrame.ID, nCellTargetID, nPriority, bFrameDestroy); if (oTraffic.ErrorNumber == 0) { //RFMMessage.MessageBoxInfo("—оздано задание на транспортировку поддона."); DialogResult = DialogResult.Yes; Dispose(); } } }
private void btnSave_Click(object sender, EventArgs e) { if (oTraffic.ID == null) { RFMMessage.MessageBoxError("Не определена операция транспортировки..."); return; } int? nCellFinishID = null; int? nTrafficErrorID = null; bool bLockFrame = false, bLockCellSource = false, bLockCellFinish = false; if (optNoChanges.Checked) { if (RFMMessage.MessageBoxYesNo("Положение контейнера не меняется.\nСохранить только сведения и пользователе, устройстве и приоритете задания?") != DialogResult.Yes) { return; } } if (optBufferCellSource.Checked) { if (cboBufferCellSourceAddress.SelectedValue == null || cboBufferCellSourceAddress.SelectedIndex < 0) { RFMMessage.MessageBoxError("Не определен буфер ячейки-источника...\nСохранение невозможно."); return; } if (RFMMessage.MessageBoxYesNo("Регистрируется установка контейнера в буфер ячейки-источника " + cboBufferCellSourceAddress.Text + ".\nСохранить?") == DialogResult.Yes) { nCellFinishID = (int)cboBufferCellSourceAddress.SelectedValue; } else { return; } } if (optBufferCellTarget.Checked) { if (cboBufferCellTargetAddress.SelectedValue == null || cboBufferCellTargetAddress.SelectedIndex < 0) { RFMMessage.MessageBoxError("Не определен буфер ячейки-приемника...\nСохранение невозможно."); return; } if (RFMMessage.MessageBoxYesNo("Регистрируется установка контейнера в буфер ячейки-приемника " + cboBufferCellTargetAddress.Text + ".\nСохранить?") == DialogResult.Yes) { nCellFinishID = (int)cboBufferCellTargetAddress.SelectedValue; } else { return; } } if (optCellTarget.Checked) { if (cboCellTargetAddress.SelectedValue == null || cboCellTargetAddress.SelectedIndex < 0) { RFMMessage.MessageBoxError("Не определена ячейка-приемник...\nСохранение невозможно."); return; } if (RFMMessage.MessageBoxYesNo("Регистрируется установка контейнера в ячейку-приемник " + cboCellTargetAddress.Text + ".\nСохранить?") == DialogResult.Yes) { nCellFinishID = (int)cboCellTargetAddress.SelectedValue; } else { return; } } if (optError.Checked) { if (cboTrafficError.SelectedValue == null || cboTrafficError.SelectedIndex < 0) { RFMMessage.MessageBoxError("Не указана ошибка при неудачном выполнении задания...\nУкажите характер ошибки."); return; } nTrafficErrorID = (int)cboTrafficError.SelectedValue; nCellFinishID = (int)cboCellTargetAddress.SelectedValue; // код ошибки int nSeverity = 0; DataRow rErr = oTraffic.TableTrafficsFramesErrors.Rows.Find(nTrafficErrorID); if (rErr == null) { RFMMessage.MessageBoxError("Не найден код ошибки..."); return; } nSeverity = Convert.ToInt32(rErr["Severity"]); if (nSeverity < 0) { // специальный код ошибки (-> Lost&Found) Setting oSet = new Setting(); string sLostFoundAddress = oSet.FillVariable("sLostFoundAddress"); if (sLostFoundAddress == null || sLostFoundAddress.Length == 0) { RFMMessage.MessageBoxError("Не найдена виртуальная ячейка Lost&Found..."); return; } if (RFMMessage.MessageBoxYesNo("Регистрируется неудачное выполнение задания с ошибкой.\n" + "Выбран тип ошибки: " + cboTrafficError.Text.Trim() + ",\n" + "контейнер направляется в виртуальную ячейку " + sLostFoundAddress + ".\n" + "Сохранить?") != DialogResult.Yes) { return; } } else { bLockFrame = chkLockFrame.Checked; bLockCellSource = chkLockCellSource.Checked; bLockCellFinish = chkLockCellFinish.Checked; string sText = "Регистрируется неудачное выполнение задания с ошибкой.\n" + "Контейнер считается установленным в ячейке-источнике " + cboCellSourceAddress.Text + ".\n"; if (bLockFrame) { sText += "Контейнер блокируется.\n"; } if (bLockCellSource || bLockCellFinish) { Cell oCellTemp = new Cell(); string sShortCode = ""; if (bLockCellSource) { oCellTemp.ID = (int)cboCellSourceAddress.SelectedValue; oCellTemp.FillData(); if (oCellTemp.ErrorNumber == 0 && oCellTemp.MainTable.Rows.Count == 1) { sShortCode = oCellTemp.MainTable.Rows[0]["StoreZoneTypeShortCode"].ToString(); if (sShortCode.Contains("STOR") || sShortCode.Contains("RILL")) { sText += "Ячейка-источник " + cboCellSourceAddress.Text + " блокируется.\n"; } } } if (bLockCellFinish) { oCellTemp.ID = (int)cboCellTargetAddress.SelectedValue; oCellTemp.FillData(); if (oCellTemp.ErrorNumber == 0 && oCellTemp.MainTable.Rows.Count == 1) { sShortCode = oCellTemp.MainTable.Rows[0]["StoreZoneTypeShortCode"].ToString(); if (sShortCode.Contains("STOR") || sShortCode.Contains("RILL")) { sText += "Ячейка-приемник " + cboCellTargetAddress.Text + " блокируется.\n"; } } } } if (RFMMessage.MessageBoxYesNo(sText + "\nСохранить?") != DialogResult.Yes) { return; } } } int?nUserID, nDeviceID, nPriority; nUserID = nDeviceID = null; if (cboUser.SelectedValue != null && (int)cboUser.SelectedValue > 0) { nUserID = (int)cboUser.SelectedValue; } if (cboDevice.SelectedValue != null && (int)cboDevice.SelectedValue > 0) { nDeviceID = (int)cboDevice.SelectedValue; } nPriority = Convert.ToInt32(numPriority.Value); oTraffic.ClearError(); oTraffic.SaveDataPartial((int)oTraffic.ID, nCellFinishID, nUserID, nDeviceID, nPriority, nTrafficErrorID); if (oTraffic.ErrorNumber == 0) { RFMMessage.MessageBoxInfo((optNoChanges.Checked) ? "Сохранено." : "Подтверждено."); if (txtFrameBarCode.Enabled) { bSaved = true; txtFrameBarCode.Text = txtFrameID4.Text = ""; chkStereo.Checked = false; txtFrameGoodState.Text = txtFrameOwner.Text = ""; cboCellSourceAddress.SelectedIndex = cboStoresZonesSource.SelectedIndex = cboStoresZonesTypesSource.SelectedIndex = cboBufferCellSourceAddress.SelectedIndex = cboCellTargetAddress.SelectedIndex = cboStoresZonesTarget.SelectedIndex = cboStoresZonesTypesTarget.SelectedIndex = cboBufferCellTargetAddress.SelectedIndex = -1; txtFrameID4.Select(); } else { DialogResult = DialogResult.Yes; Dispose(); } } }
private void btnSave_Click(object sender, EventArgs e) { if (grdData.DataSource == null || grdData.Rows.Count == 0) { RFMMessage.MessageBoxError("Не получен список доступных поддонов..."); return; } // проверяем отмеченные контейнеры int nMarkedCnt = 0; foreach (DataRow r in dt.Rows) { if (!Convert.IsDBNull(r["IsMarked"]) && Convert.ToBoolean(r["IsMarked"])) { nMarkedCnt++; } } if (nMarkedCnt == 0) { RFMMessage.MessageBoxError("Не отмечено ни одного поддона..."); return; } if (chkForOutput.Checked) { // в отгрузку if (cboCellOutput.SelectedValue == null || cboCellOutput.SelectedIndex < 0) { RFMMessage.MessageBoxError("Не выбрана ячейка отгрузки..."); return; } Cell oCellOutputTemp = new Cell(); oCellOutputTemp.ID = (int)cboCellOutput.SelectedValue; oCellOutputTemp.FillData(); if (oCellOutputTemp.ErrorNumber != 0 || oCellOutputTemp.MainTable == null || oCellOutputTemp.MainTable.Rows.Count != 1) { RFMMessage.MessageBoxError("Ошибка при получении данных о ячейке отгрузки..."); return; } nCellFinishID = Convert.ToInt32(oCellOutputTemp.MainTable.Rows[0]["ID"]); sCellFinishAddress = oCellOutputTemp.MainTable.Rows[0]["Address"].ToString(); if (RFMMessage.MessageBoxYesNo("Создать операции транспортировки в ячейку отгрузки " + sCellFinishAddress + " для " + RFMPublic.RFMUtilities.Declen(nMarkedCnt, "поддона", "поддонов", "поддонов") + "?") != DialogResult.Yes) { return; } } else { if (oCellPicking.MainTable == null || oCellPicking.MainTable.Rows.Count == 0) { RFMMessage.MessageBoxError("Не определена ячейка пикинга для товара."); return; } nCellFinishID = Convert.ToInt32(oCellPicking.MainTable.Rows[0]["ID"]); sCellFinishAddress = oCellPicking.MainTable.Rows[0]["Address"].ToString(); // в пикинг if (RFMMessage.MessageBoxYesNo("Создать операции транспортировки в ячейку пикинга " + sCellFinishAddress + " для " + RFMPublic.RFMUtilities.Declen(nMarkedCnt, "поддона", "поддонов", "поддонов") + "?") != DialogResult.Yes) { return; } } // создаем транспортировки последовательно int nFrameID; int nOK = 0; string sNote = txtNoteManual.Text.Trim(); foreach (DataRow r in dt.Rows) { if (!Convert.IsDBNull(r["IsMarked"]) && Convert.ToBoolean(r["IsMarked"])) { oTraffic.ClearError(); nFrameID = Convert.ToInt32(r["FrameID"]); oTraffic.CreateManualDirect(nFrameID, (int)nCellFinishID, nPriority, sNote); if (oTraffic.ErrorNumber == 0) { nOK++; } } } if (nOK > 0) { RFMMessage.MessageBoxInfo("Создано " + RFMUtilities.Declen(nOK, "задание", "задания", "заданий") + " на транспортировку поддонов в " + ((chkForOutput.Checked) ? "зону отгрузки" : "пикинг") + "."); DialogResult = DialogResult.Yes; Dispose(); } else { RFMMessage.MessageBoxError("Задания на транспортировку поддонов в " + ((chkForOutput.Checked) ? "зону отгрузки" : "пикинг") + " не созданы."); } }