private void SetRemarkIcons() { if (PRODUCT != null) // этот контрол для Продукта { DBRemarkWP dbr = new DBRemarkWP(UVO); IDREMARK = dbr.RemarkExists(PRODUCT.GetID().ToString(), DOCUMENTNAME); if (IDREMARK != "") { bRemark.Enabled = true; bRemark.BackgroundImage = Resources.exclamation; bRemark.BackgroundImage.Tag = "exclamation"; tt = new ToolTip(); tt.SetToolTip(this.bRemark, "Отработать замечание"); } else { bRemark.Enabled = true; bRemark.BackgroundImage = Resources.remark_reply; bRemark.BackgroundImage.Tag = "reply"; tt = new ToolTip(); tt.SetToolTip(this.bRemark, "Добавить замечание"); } } else // а этот контрол для извещения. Объекты замечаний к продукту и извещению разные! { DBRemarkSUMMON dbr = new DBRemarkSUMMON(); IDREMARK = dbr.RemarkExists(SVO.ID, DOCUMENTNAME); if (IDREMARK != "") { bRemark.Enabled = true; bRemark.BackgroundImage = Resources.exclamation; bRemark.BackgroundImage.Tag = "exclamation"; tt = new ToolTip(); tt.SetToolTip(this.bRemark, "Отработать замечание"); } else { bRemark.Enabled = true; bRemark.BackgroundImage = Resources.remark_reply; bRemark.BackgroundImage.Tag = "reply"; tt = new ToolTip(); tt.SetToolTip(this.bRemark, "Добавить замечание"); } } }
private void bRemark_Click(object sender, EventArgs e) { contextMenuStrip2.Tag = null; if (bRemark.BackgroundImage.Tag.ToString() == "reply") //если надо добавить замечание { if (PRODUCT != null) //если замечние по продукту { if (PRODUCT.GetProductType() != WPTYPE.WPNAMELIST) { MessageBox.Show("Замечания для жгутов и кабелей ещё не реализовано. Замечания можно добавлять к полям-путям сущности \"Извещение\" и сущности \"Изделие\""); return; } WP_RVO RVO = new WP_RVO(); RVO.DOCUMENTNAME = this.DOCUMENTNAME; RVO.IDWP = PRODUCT.GetID().ToString(); NewREMARKWP nrwp = new NewREMARKWP(RVO, null, this.UVO); nrwp.ShowDialog(); SetRemarkIcons(); } else //если замечание по извещению { SummonRVO RVOS = new SummonRVO(); RVOS.DOCUMENTNAME = this.DOCUMENTNAME; RVOS.IDSUMMON = SVO.ID; NewREMARKWP nrwp = new NewREMARKWP(null, RVOS, this.UVO); nrwp.ShowDialog(); SetRemarkIcons(); } } else //если надо отработать замечание { if (PRODUCT != null) //если надо отработать замечание по продукту { DBRemarkWP dbrwp = new DBRemarkWP(UVO); DataTable t = dbrwp.GetRemarksByIDWPDOC(this.DOCUMENTNAME, PRODUCT.GetID().ToString()); if (t.Rows.Count == 0) { SetRemarkIcons(); return; } else //так как замечание уже есть, то надо дать выбор добавлять ещё одно замечние или отрабатывать существующее { int x = 0; int y = bRemark.Height; contextMenuStrip2.Tag = t; contextMenuStrip2.Show(bRemark, x, y); } } else //если надо отработать замечание по извещению { DBRemarkSUMMON dbrs = new DBRemarkSUMMON(); DataTable t = dbrs.GetRemarksByIDSDOC(this.DOCUMENTNAME, SVO.ID); if (t.Rows.Count == 0) { SetRemarkIcons(); return; } else //так как замечание уже есть, то надо дать выбор добавлять ещё одно замечние или отрабатывать существующее { int x = 0; int y = bRemark.Height; contextMenuStrip2.Tag = t; contextMenuStrip2.Show(bRemark, x, y); } } } }