private void OnBackBoxClick(object sender, EventArgs e) { int id = 0; if (!int.TryParse(toolFindText.Text, out id) || id == 0) { MessageBox.Show("Введен некорректный ID ящика. Поиск невозможен.", "Внимание", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } Box box = new Box(id, null, null, false); if (box.ErrCode != ErrCode.ErrOK) { MessageBox.Show("Ошибка загрузки объекта: " + box.ErrMessage, "Внимание", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (box.IdStatus != (int)OrderStatus.ToStore) { MessageBox.Show("Данный ящик находится в статусе \"" + box.Status + "\" и не может быть возвращен в работу", "Внимание", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } Order order = null; if (box.Product != null && box.Product.Order != null) { order = box.Product.Order; } else { MessageBox.Show("Нарушение целостности данных, завершение операции невозможно", "Внимание", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } box.IdStatus = (int)OrderStatus.OnWork; box.SetStatusToOrder(); order.SaveChildren = true; box.Product.SaveChildren = true; order.SaveToDB(); if (order.ErrCode != ErrCode.ErrOK) { MessageBox.Show("Ошибка записи объекта: " + order.ErrMessage, "Внимание", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } RetrieveForm(id); }
public override void SaveToDB() { if (fields.ContainsKey("id_shipment")) { fields["id_shipment"] = parent.Id; } else { fields.Add("id_shipment", parent.Id); } if (fields.ContainsKey("id_order")) { fields["id_order"] = order.Id; } else { fields.Add("id_order", order.Id); } base.SaveToDB(); order.SaveToDB(); }