using Core.Mes.Client.Comm.Control; using Core.Mes.Client.Comm.Server; using Core.Mes.Client.Comm.Tool; using CoreFS.CA06; using Infragistics.Win.UltraWinEditors; using Infragistics.Win.UltraWinGrid; using System; using System.Collections; using System.Collections.Generic; using System.Data; using System.Drawing; using System.Linq; using System.Windows.Forms; namespace Core.StlMes.Client.Qcm { public partial class FrmMaterialAdministration : FrmBase { private List _ultraWDSelecteds_Add = new List(); private bool _ultraWDQueryFlag = false; //查询标志 private bool _ultraCZGLQueryFlag = false; private List _ultraWDSelecteds_Del = new List(); private string _ultraCZGLSelected = ""; private string _ultraGrid1Selected = ""; private string _ultraGrid2Selected = ""; private string _ultraGrid5Selected = ""; private string _ultraGrid6Selected = ""; public FrmMaterialAdministration() { InitializeComponent(); } private void FrmMaterialAdministration_Load(object sender, EventArgs e) { LoadBaseInfo(); if (CustomInfo == "试样组") { utcPhy.Tabs[0].Visible = false; //utcPhy.Tabs[2].Visible = false; } } protected override void OnLoad(EventArgs e) { base.OnLoad(e); } private void LoadItem_Style() { DataTable dt = new DataTable(); dt.Columns.AddRange(new DataColumn[] { new DataColumn("NAME"), new DataColumn("CODE") }); dt.Rows.Add(new object[] { "试验方向", "A" }); dt.Rows.Add(new object[] { "试验温度", "B" }); dt.Rows.Add(new object[] { "试样尺寸", "C" }); dt.Rows.Add(new object[] { "试验位置", "D" }); cmbItemType.DataSource = dt; cmbItemType.DisplayMember = "NAME"; cmbItemType.ValueMember = "CODE"; } /// /// 绑定小类tab页,大类下拉框。 /// private void BindMaxPhy() { DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.getLineListPhy", new Object[] { false, "" }, this.ob); if (dt != null && dt.Rows.Count > 0) { cmbPhyMaxCode.DataSource = dt; cmbPhyMaxCode.DisplayMember = "PHY_TYPE"; cmbPhyMaxCode.ValueMember = "PHY_CODE"; cmbPhyR.DataSource = dt; cmbPhyR.DisplayMember = "PHY_TYPE"; cmbPhyR.ValueMember = "PHY_CODE"; } } private void LoadPhy_C() { DataTable dtMin = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.getLineListPhyC", new Object[] { false, "" }, this.ob); ; if (dtMin != null && dtMin.Rows.Count > 0) { cmbPhyProjectTypeC.DataSource = dtMin; cmbPhyProjectTypeC.DisplayMember = "PHY_TYPE"; cmbPhyProjectTypeC.ValueMember = "PHY_CODE"; cmbPhyC.DataSource = dtMin; cmbPhyC.DisplayMember = "PHY_TYPE"; cmbPhyC.ValueMember = "PHY_CODE"; } } /// /// 界面数据初始化 /// private void LoadBaseInfo() { BindMaxPhy(); LoadItem_Style(); LoadPhy_C(); LoadItemData(); } /// /// 重写平台方法 /// /// /// public override void ToolBar_Click(object sender, string ToolbarKey) { switch (ToolbarKey) { case "doQuery": doQuery(); break; case "doAdd": doAdd(); break; case "doModify": doModify(); break; case "doSave": if (utcPhy.SelectedTab.Key == "R_Item") doSave(); else SavePos(); break; case "doDelete": this.doDeleteOrResume(true); break; case "doResume": this.doDeleteOrResume(false); break; case "Export": Export(); break; case "Refresh": Refresh2(); break; case "Close": this.Close(); break; } } private void Refresh2() { LoadBaseInfo(); } private void Export() { UltraGrid grid = null; string strName = ""; switch (utcPhy.SelectedTab.Key) { case "Phy": grid = ultraGrid1; strName = "检验项目"; break; case "PhyC": grid = ultraGrid2; strName = "试样组"; break; case "PhyProject": grid = ultraGrid5; strName = "检验项"; break; case "Item": grid = ultraGrid6; strName = "检验项补充"; break; case "R_Item": grid = ultraWD; strName = "检验项关系"; break; } GridHelper.ulGridToExcel(grid, strName); } /// /// 查询总方法 /// private void doQuery() { switch (utcPhy.SelectedTab.Key) { case "Phy": doQueryPhy(); break; case "PhyC": doQueryPhyC(); break; case "PhyProject": doQueryPhyProject(); break; case "Item": doQueryItem(); break; case "R_Item": queryPhy2(""); break; case "R_Pos": queryPhy3(""); break; } } /// /// 新增总方法 /// private void doAdd() { switch (utcPhy.SelectedTab.Key) { case "Phy": doAddPhy(); break; case "PhyC": doAddPhyC(); break; case "PhyProject": doAddPhyProject(); break; case "Item": doAddItem(); break; } } /// /// 修改总方法 /// private void doModify() { switch (utcPhy.SelectedTab.Key) { case "Phy": doModifyPhy(); break; case "PhyC": doModifyPhyC(); break; case "PhyProject": doModifyPhyProject(); break; case "Item": doModifyItem(); break; } } /// /// 删除总方法 /// /// private void doDeleteOrResume(bool isDelete) { switch (utcPhy.SelectedTab.Key) { case "Phy": doDeleteOrResumePhy(isDelete); break; case "PhyC": ultraGrid2.Update(); if (ultraGrid2.ActiveRow == null) { MessageBox.Show("请选择数据后再进行操作!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } if (MessageBox.Show("是否" + (isDelete ? "作废" : "恢复") + "所选中的数据?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.No) { return; } doDeleteOrResumePhyC(isDelete, ultraGrid2.ActiveRow.Cells["PHY_CODE"].Value.ToString()); break; case "PhyProject": ultraGrid5.Update(); if (ultraGrid5.ActiveRow == null) { MessageBox.Show("请选择数据后再进行操作!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } if (isDelete) { if (ultraGrid5.ActiveRow.Cells["VALIDFLAG"].Value.ToString() == "0") { MessageUtil.ShowWarning("您选择的数据已经无效,不必删除!"); return; } } else { if (ultraGrid5.ActiveRow.Cells["VALIDFLAG"].Value.ToString() == "1") { MessageUtil.ShowWarning("您选择的数据是有效数据,不必恢复!"); return; } string phyCodeProject = ultraGrid5.ActiveRow.Cells["PHY_CODE"].Value.ToString(); //根据所选材质小类代码,自动获取材质大类代码。 DataTable PhyMaxType = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.GetPhyMax", new Object[] { ultraGrid5.ActiveRow.Cells["PHY_TYPE_C"].Value.ToString() }, this.ob); string PhyMaxName = ""; //代码 string phyMaxNm = ""; //描述 if (PhyMaxType != null && PhyMaxType.Rows.Count > 0) { PhyMaxName = PhyMaxType.Rows[0][0].ToString(); phyMaxNm = PhyMaxType.Rows[0][1].ToString(); } ArrayList list = new ArrayList(); list.Add(ultraGrid5.ActiveRow.Cells["PHY_NAME"].Value.ToString()); list.Add(phyCodeProject); list.Add(PhyMaxName); //list.Add(phyMaxNm); if (!ValidInputProject(list)) { return; } } if (MessageBox.Show("是否" + (isDelete ? "作废" : "恢复") + "所选中的数据?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.No) { return; } doDeleteOrResumePhyProject(isDelete, ultraGrid5.ActiveRow.Cells["PHY_CODE"].Value.ToString()); break; case "Item": doDeleteOrResumeItem(isDelete); break; case "R_Item": DeleteOrResumePhy_R_Item(isDelete); break; case "R_Pos": DeleteOrResumePos(isDelete ? "0" : "1"); break; } } /// /// 检验非空项 /// /// private bool ValidPhyInput(ArrayList list) { if (txtPhyType.Text.Trim() == "") { MessageBox.Show("材质大类描述不能为空!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); txtPhyType.Focus(); return false; } else { DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.iSExistPhyStd", new object[] { list }, ob); if (dt != null && dt.Rows[0][0].ToString() != "0") { MessageBox.Show("系统已经存在该材质大类描述-[" + list[0].ToString() + "]!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); txtPhyType.Focus(); return false; } } if (txtSampleCount.Value == null || txtSampleCount.Value.ToString() == "") { MessageUtil.ShowWarning("试验样条数不能为空!"); txtSampleCount.Focus(); return false; } return true; } private bool ValidInputC(ArrayList list) { if (txtPhyTypeC.Text.Trim() == "") { MessageBox.Show("试样组不能为空!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); txtPhyTypeC.Focus(); return false; } else { DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.iSExistPhy_C", new object[] { list }, ob); if (dt != null && dt.Rows[0][0].ToString() != "0") { MessageBox.Show("系统已经存在该试样组-[" + list[0].ToString() + "]!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); txtPhyTypeC.Focus(); return false; } } if (cmbPhyMaxCode.SelectedValue == null) { MessageBox.Show("检验项目不能为空!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); cmbPhyMaxCode.Focus(); return false; } if (ultraNumericEditor3.Value.ToString2() == "") { MessageBox.Show("请输入样条数!"); ultraNumericEditor3.Focus(); return false; } if (ultraNumericEditor1.Value.ToString2() == "") { MessageBox.Show("请输入序号!"); ultraNumericEditor1.Focus(); return false; } return true; } private bool ValidInputProject(ArrayList list) { if (txtPhyProjectName.Text.Trim() == "") { MessageBox.Show("检验项不能为空!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); txtPhyProjectName.Focus(); return false; } else { DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.iSExistPhy", new object[] { list }, ob); if (dt != null && dt.Rows[0][0].ToString() != "0") { MessageBox.Show("试样组[" + cmbPhyProjectTypeC.Text + "]下已经存在该检验项-[" + list[0].ToString() + "]!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); txtPhyProjectName.Focus(); return false; } } if (txtPhyUnit.Text.Trim() == "") { MessageBox.Show("值单位不能为空!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); txtPhyUnit.Focus(); return false; } if (ultraNumericEditor2.Value.ToString2() == "") { MessageBox.Show("请输入序号!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); ultraNumericEditor2.Focus(); return false; } if (numHour_Ready.Value == null) { MessageBox.Show("准备时间(小时)不能为空!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); numHour_Ready.Focus(); return false; } if (numHour_Test.Value == null) { MessageBox.Show("试验时间(小时)不能为空!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); numHour_Test.Focus(); return false; } if (cmbPhyProjectTypeC.SelectedValue == null) { MessageBox.Show("试样组不能为空!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); cmbPhyProjectTypeC.Focus(); return false; } if (ultraGrid5.ActiveRow.GetValue("PHY_TYPE") == "R0006" && txtStation.Text == "") { MessageUtil.ShowWarning("检验项目为" + ultraGrid5.ActiveRow.GetValue("PHY_TYPE_NAME") + "时,必须维护工序点对应关系!"); txtStation.Focus(); return false; } return true; } private bool ValidInputItem(ArrayList list) { if (cmbItemType.SelectedValue == null) { MessageBox.Show("请选择项目类型!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); cmbItemType.Focus(); return false; } if (txtItemName.Text.Trim() == "") { MessageBox.Show("请输入项目名称!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); txtItemName.Focus(); return false; } else { DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.iSExistPhyItem", new object[] { list }, ob); if (dt != null && dt.Rows[0][0].ToString() != "0") { MessageBox.Show("系统已经存在该项目名称-[" + list[0].ToString() + "]!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); txtItemName.Focus(); return false; } } if (ultraNumericEditor4.Value.ToString2() == "") { MessageBox.Show("请输入序号!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); ultraNumericEditor4.Focus(); return false; } return true; } private string GetMaxPhyCode() { DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.getMaxPhyCode", new object[] { }, this.ob); string maxPhyCode = ""; if (dt != null) { if (dt.Rows[0][0].ToString() == "") { return "P0001"; } else { int intMaxPhyCode = int.Parse(dt.Rows[0][0].ToString().Substring(1)) + 1; maxPhyCode = dt.Rows[0][0].ToString().Substring(0, 1) + intMaxPhyCode.ToString().PadLeft(4, '0'); return maxPhyCode; } } return ""; } private string GetMaxPhy_C_Code() { DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.getMaxPhy_C_Code", new object[] { }, this.ob); string maxPhy_C_Code = ""; if (dt != null) { if (dt.Rows[0][0].ToString() == "") { return "C0001"; } else { int intMaxPhy_C_Code = int.Parse(dt.Rows[0][0].ToString().Substring(1)) + 1; maxPhy_C_Code = dt.Rows[0][0].ToString().Substring(0, 1) + intMaxPhy_C_Code.ToString().PadLeft(4, '0'); return maxPhy_C_Code; } } return ""; } private string GetMaxPhyStdCode() { DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.getMaxPhyStdCode", new object[] { }, ob); string maxPhyStdCode = ""; if (dt != null) { if (dt.Rows[0][0].ToString() == "") { return "R0001"; } else { int intMaxPhyStdCode = int.Parse(dt.Rows[0][0].ToString().Substring(1)) + 1; maxPhyStdCode = dt.Rows[0][0].ToString().Substring(0, 1) + intMaxPhyStdCode.ToString().PadLeft(4, '0'); return maxPhyStdCode; } } return ""; } /// /// 大类新增 /// private void doAddPhy() { string phyCode = GetMaxPhyStdCode(); ArrayList list = new ArrayList(); list.Add(txtPhyType.Text.Trim()); list.Add(phyCode); if (ValidPhyInput(list)) { if (MessageBox.Show("是否确认新增?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.No) { return; } try { ArrayList parm = new ArrayList(); //PHY_CODE,PHY_TYPE,PHY_STD,编号自增1返回。 //编号是自动生成的。M001 parm.Add(phyCode); parm.Add(txtPhyType.Text.Trim()); parm.Add(this.UserInfo.GetUserName()); parm.Add(DateTime.Now.ToString()); parm.Add(1); parm.Add(txtMemo.Text.Trim()); parm.Add(txtSampleCount.Value == null ? "0" : txtSampleCount.Value.ToString()); parm.Add(txtDept.Tag.ToString2()); parm.Add(txtDept.Text.Trim()); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.qcm.CoreMaterialItemMng"; ccp.MethodName = "doAddPhy"; ccp.ServerParams = new object[] { parm }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips("新增数据成功!"); doQueryPhy(); LoadBaseInfo(); _ultraGrid1Selected = phyCode; MoveToOldSite_ultraGrid1(); } catch (Exception ex) { MessageBox.Show("错误:" + ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } } /// /// 小类新增 /// private void doAddPhyC() { string phyCodeC = GetMaxPhy_C_Code(); ArrayList list = new ArrayList(); list.Add(txtPhyTypeC.Text.Trim()); list.Add(phyCodeC); if (ValidInputC(list)) { if (MessageBox.Show("是否确认新增?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.No) { return; } try { ArrayList parm = new ArrayList(); parm.Add(phyCodeC); parm.Add(txtPhyTypeC.Text.Trim()); //材质大类编号。 parm.Add(cmbPhyMaxCode.SelectedValue.ToString()); parm.Add(this.UserInfo.GetUserName()); parm.Add(DateTime.Now.ToString()); parm.Add(1); parm.Add(txtMemoC.Text.Trim()); parm.Add(ultraTextEditor1.Tag.ToString2()); parm.Add(ultraTextEditor1.Text); parm.Add(ultraNumericEditor1.Value.ToString2()); parm.Add(ultraNumericEditor3.Value.ToString2()); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.qcm.CoreMaterialItemMng"; ccp.MethodName = "doAddPhyC"; ccp.ServerParams = new object[] { parm }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips("新增数据成功!"); doQueryPhyC(); LoadBaseInfo(); _ultraGrid2Selected = phyCodeC; MoveToOldSite_ultraGrid2(); } catch (Exception ex) { MessageBox.Show("错误:" + ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } } /// /// 材质检验项新增 /// private void doAddPhyProject() { string phyCodeProject = GetMaxPhyCode(); //根据所选材质小类代码,自动获取材质大类代码。 DataTable PhyMaxType = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.GetPhyMax", new Object[] { cmbPhyProjectTypeC.SelectedValue.ToString() }, this.ob); string PhyMaxName = ""; //代码 string phyMaxNm = ""; //描述 if (PhyMaxType != null && PhyMaxType.Rows.Count > 0) { PhyMaxName = PhyMaxType.Rows[0][0].ToString(); phyMaxNm = PhyMaxType.Rows[0][1].ToString(); } ArrayList list = new ArrayList(); list.Add(txtPhyProjectName.Text.Trim()); list.Add("1"); list.Add(cmbPhyProjectTypeC.SelectedValue.ToString2()); if (ValidInputProject(list)) { if (MessageBox.Show("是否确认新增?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.No) { return; } try { ArrayList parm = new ArrayList(); parm.Add(phyCodeProject); parm.Add(txtPhyProjectName.Text.Trim()); parm.Add(PhyMaxName); parm.Add(cmbPhyProjectTypeC.SelectedValue.ToString()); parm.Add(txtPhyUnit.Text.Trim()); parm.Add(numHour_Ready.Value == null ? "0" : numHour_Ready.Value.ToString()); parm.Add(numHour_Test.Value == null ? "0" : numHour_Test.Value.ToString()); parm.Add(this.UserInfo.GetUserName()); parm.Add(DateTime.Now.ToString()); parm.Add(1); parm.Add(txtMemoCProject.Text.Trim()); parm.Add(ultraNumericEditor2.Value.ToString2()); ArrayList parmStation = new ArrayList(); parmStation.Add(txtStation.Tag.ToString2()); parmStation.Add(txtStation.Text); parmStation.Add(phyCodeProject); parmStation.Add(txtPhyProjectName.Text.Trim()); parmStation.Add(UserInfo.GetUserName()); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.qcm.CoreMaterialItemMng"; ccp.MethodName = "doAddPhyProject"; ccp.ServerParams = new object[] { parm, parmStation }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips("新增数据成功!"); doQueryPhyProject(); LoadBaseInfo(); _ultraGrid5Selected = phyCodeProject; MoveToOldSite_ultraGrid5(); } catch (Exception ex) { MessageBox.Show("错误: " + ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } } /// /// 不可用 /// private void doAddItem() { string ItemCode = GetMaxItemCode("I"); ArrayList list = new ArrayList(); list.Add(txtItemName.Text.Trim()); list.Add(ItemCode); if (ValidInputItem(list)) { if (MessageBox.Show("是否确认新增?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Warning, MessageBoxDefaultButton.Button2) == DialogResult.No) { return; } try { ArrayList parm = new ArrayList(); parm.Add(ItemCode); parm.Add(txtItemName.Text.Trim()); parm.Add(cmbItemType.SelectedValue.ToString()); parm.Add(this.UserInfo.GetUserName()); parm.Add(DateTime.Now.ToString()); parm.Add(1); parm.Add(txtMemoItem.Text.Trim()); parm.Add(ultraNumericEditor4.Value.ToString2()); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.qcm.CoreMaterialItemMng"; ccp.MethodName = "doAddItem"; ccp.ServerParams = new object[] { parm }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips("新增数据成功!"); doQueryItem(); LoadBaseInfo(); _ultraGrid6Selected = ItemCode; MoveToOldSite_ultraGrid6(); } catch (Exception ex) { MessageBox.Show("错误:" + ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } } /// /// 大类修改 /// private void doModifyPhy() { if (ultraGrid1.ActiveRow == null) { MessageBox.Show("请选择需要修改的数据!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } if (MessageBox.Show("是否确认修改数据?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.No) { return; } if (ultraGrid1.ActiveRow.Cells["VALIDFLAG"].Value.ToString() == "0") { MessageBox.Show("已作废的数据不能修改,请恢复后再修改!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } ArrayList list = new ArrayList(); list.Add(txtPhyType.Text.Trim()); list.Add(ultraGrid1.ActiveRow.Cells["PHY_CODE"].Value.ToString()); if (ValidPhyInput(list)) { ArrayList parm = new ArrayList(); //PHY_CODE,PHY_TYPE,PHY_STD string phyCode = ultraGrid1.ActiveRow.Cells[0].Value.ToString(); parm.Add(txtPhyType.Text); parm.Add(this.UserInfo.GetUserName()); parm.Add(DateTime.Now.ToString()); parm.Add(txtMemo.Text); parm.Add(txtSampleCount.Value == null ? "0" : txtSampleCount.Value.ToString()); parm.Add(txtDept.Tag.ToString2()); parm.Add(txtDept.Text.Trim()); parm.Add(phyCode); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.qcm.CoreMaterialItemMng"; ccp.MethodName = "doModifyPhy"; ccp.ServerParams = new object[] { parm }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips("修改数据成功!"); doQueryPhy(); LoadBaseInfo(); _ultraGrid1Selected = phyCode; MoveToOldSite_ultraGrid1(); } } /// /// 小类修改 /// private void doModifyPhyC() { if (ultraGrid2.ActiveRow == null) { MessageBox.Show("请选择需要修改的数据!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } if (ultraGrid2.ActiveRow.Cells["VALIDFLAG"].Value.ToString() == "0") { MessageBox.Show("已作废的数据不能修改,请恢复后再修改!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } ArrayList list = new ArrayList(); list.Add(txtPhyTypeC.Text.Trim()); list.Add(ultraGrid2.ActiveRow.Cells["PHY_CODE"].Value.ToString()); if (ValidInputC(list)) { if (ultraGrid2.ActiveRow.GetValue("PHY_TYPE_M") != cmbPhyMaxCode.SelectedValue.ToString2()) { MessageUtil.ShowWarning("已经保存的试样组,不能修改检验大项!"); return; } if (MessageBox.Show("是否确认修改数据?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.No) { return; } ArrayList parm = new ArrayList(); //PHY_CODE ,PHY_TYPE string phyCodeC = ultraGrid2.ActiveRow.Cells["PHY_CODE"].Value.ToString(); parm.Add(txtPhyTypeC.Text.Trim()); //材质大类代码 parm.Add(cmbPhyMaxCode.SelectedValue.ToString()); parm.Add(this.UserInfo.GetUserName()); parm.Add(DateTime.Now.ToString()); parm.Add(txtMemoC.Text.Trim()); parm.Add(ultraTextEditor1.Tag.ToString2()); parm.Add(ultraTextEditor1.Text); parm.Add(ultraNumericEditor1.Value.ToString2()); parm.Add(ultraNumericEditor3.Value.ToString2()); parm.Add(phyCodeC); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.qcm.CoreMaterialItemMng"; ccp.MethodName = "doModifyPhyC"; ccp.ServerParams = new object[] { parm }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips("修改数据成功!"); doQueryPhyC(); LoadBaseInfo(); _ultraGrid2Selected = phyCodeC; MoveToOldSite_ultraGrid2(); } } /// /// 材质检验项的修改 /// private void doModifyPhyProject() { if (ultraGrid5.ActiveRow == null) { MessageBox.Show("请选择需要修改的数据!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } if (ultraGrid5.ActiveRow.Cells["VALIDFLAG"].Value.ToString() == "0") { MessageBox.Show("已作废的数据不能修改,请恢复后再修改!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } //根据所选材质小类代码,自动获取材质大类代码。 DataTable PhyMaxType = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.GetPhyMax", new Object[] { cmbPhyProjectTypeC.SelectedValue.ToString() }, this.ob); string PhyMaxName = ""; //代码 string phyMaxNm = ""; //描述 if (PhyMaxType != null && PhyMaxType.Rows.Count > 0) { PhyMaxName = PhyMaxType.Rows[0][0].ToString(); phyMaxNm = PhyMaxType.Rows[0][1].ToString(); } string phyCode = ultraGrid5.GetActiveRowValue("PHY_CODE"); ArrayList list = new ArrayList(); list.Add(txtPhyProjectName.Text.Trim()); list.Add(phyCode); list.Add(cmbPhyProjectTypeC.SelectedValue.ToString2()); if (ValidInputProject(list)) { if (ultraGrid5.ActiveRow.GetValue("PHY_TYPE_C") != cmbPhyProjectTypeC.SelectedValue.ToString2()) { MessageUtil.ShowWarning("已经保存的检验项,不能修改试样组!"); return; } if (MessageBox.Show("是否确认修改数据?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.No) { return; } ArrayList parm = new ArrayList(); //PHY_CODE,PHY_NAME,PHY_TYPE ,PHY_TYPE_C,PHY_UNIT string phyCodeProject = ultraGrid5.ActiveRow.Cells[0].Value.ToString(); parm.Add(txtPhyProjectName.Text); parm.Add(PhyMaxName); parm.Add(cmbPhyProjectTypeC.SelectedValue.ToString()); parm.Add(txtPhyUnit.Text); parm.Add(numHour_Ready.Value == null ? "0" : numHour_Ready.Value.ToString()); parm.Add(numHour_Test.Value == null ? "0" : numHour_Test.Value.ToString()); parm.Add(this.UserInfo.GetUserName()); parm.Add(DateTime.Now.ToString()); parm.Add(txtMemoCProject.Text); parm.Add(ultraNumericEditor2.Value.ToString2()); parm.Add(phyCodeProject); ArrayList parmStation = new ArrayList(); parmStation.Add(txtStation.Tag.ToString2()); parmStation.Add(txtStation.Text); parmStation.Add(phyCodeProject); parmStation.Add(txtPhyProjectName.Text.Trim()); parmStation.Add(UserInfo.GetUserName()); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.qcm.CoreMaterialItemMng"; ccp.MethodName = "doModifyPhyProject"; ccp.ServerParams = new object[] { parm, parmStation }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips("修改数据成功!"); doQueryPhyProject(); LoadBaseInfo(); _ultraGrid5Selected = phyCodeProject; MoveToOldSite_ultraGrid5(); } } /// /// Tab4修改 /// private void doModifyItem() { if (ultraGrid6.ActiveRow == null) { MessageBox.Show("请选择需要修改的数据!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } if (MessageBox.Show("是否确认修改数据?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.No) { return; } if (ultraGrid6.ActiveRow.Cells["VALIDFLAG"].Value.ToString() == "0") { MessageBox.Show("已作废的数据不能修改,请恢复后再修改!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } ArrayList list = new ArrayList(); list.Add(txtItemName.Text.Trim()); list.Add(ultraGrid6.ActiveRow.Cells["ITEM_CODE"].Value.ToString()); if (ValidInputItem(list)) { ArrayList parm = new ArrayList(); //ITEM_CODE,ITEM_NAME,ITEM_STYLE string phyItemCode = ""; phyItemCode = ultraGrid6.ActiveRow.Cells["ITEM_CODE"].Value.ToString(); parm.Add(phyItemCode); parm.Add(txtItemName.Text.Trim()); parm.Add(cmbItemType.SelectedValue.ToString()); parm.Add(this.UserInfo.GetUserName()); parm.Add(DateTime.Now.ToString()); parm.Add(txtMemoItem.Text.Trim()); parm.Add(ultraNumericEditor4.Value.ToString2()); parm.Add(ultraGrid6.ActiveRow.Cells["ITEM_CODE"].Value.ToString()); CoreClientParam ccp = new CoreClientParam(); ccp.ServerName = "com.steering.pss.qcm.CoreMaterialItemMng"; ccp.MethodName = "doModifyItem"; ccp.ServerParams = new object[] { parm }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode == -1) return; MessageUtil.ShowTips("修改数据成功!"); doQueryItem(); LoadBaseInfo(); _ultraGrid6Selected = phyItemCode; MoveToOldSite_ultraGrid6(); } } /// /// 查询方法Tab1 /// private void doQueryPhy() { bool validFlag = chkValid.Checked; string titleName = txtPhyTitle.Text.Trim(); DataTable dt = null; try { dt = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.getLineListPhy", new Object[] { validFlag, titleName }, this.ob); } catch { }; GridHelper.CopyDataToDatatable(ref dt, ref this.dataTable1, true); GridHelper.RefreshAndAutoSize(ultraGrid1); } /// /// 查询方法Tab2 /// private void doQueryPhyC() { bool validFlag = chkValidC.Checked; string titleName = txtPhyTitleC.Text.Trim(); DataTable dt = null; try { dt = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.getLineListPhyC", new Object[] { validFlag, titleName }, this.ob); } catch { } GridHelper.CopyDataToDatatable(ref dt, ref this.dataTable2, true); GridHelper.RefreshAndAutoSize(ultraGrid2); } /// /// 查询方法Tab3 /// private void doQueryPhyProject() { bool validFlag = chkValidProject.Checked; string titleName = txtPhyProjectTitle.Text.Trim(); DataTable dt = null; try { dt = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.getLineListPhyProject", new Object[] { validFlag, titleName }, this.ob); } catch { } GridHelper.CopyDataToDatatable(ref dt, ref this.dataTable3, true); //GridHelper.RefreshAndAutoSize(ultraGrid5); } /// /// 查询方法Tab4 /// private void doQueryItem() { bool validFlag = chkValidItem.Checked; string titleName = txtItemTitle.Text.Trim(); DataTable dt = null; try { dt = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.getLineListItem", new Object[] { validFlag, titleName }, this.ob); } catch { } GridHelper.CopyDataToDatatable(ref dt, ref this.dataTable4, true); GridHelper.RefreshAndAutoSize(ultraGrid6); } /// /// 激活时信息带至编辑区Tab1 /// /// /// private void ultraGrid1_AfterRowActivate(object sender, EventArgs e) { Infragistics.Win.UltraWinGrid.UltraGridRow row = ultraGrid1.ActiveRow; if (row != null) { //PHY_CODE,PHY_TYPE,PHY_STD txtPhyType.Text = row.Cells["PHY_TYPE"].Value.ToString(); txtMemo.Text = row.Cells["MEMO"].Value.ToString(); txtSampleCount.Value = int.Parse(row.GetValue("SAMPLE_COUNT")); txtDept.Tag = row.Cells["PHY_DEPTID"].Value.ToString2(); txtDept.Text = row.Cells["PHY_DEPTNAME"].Value.ToString2(); } } /// /// 激活时信息带至编辑区Tab2 /// /// /// private void ultraGrid2_AfterRowActivate(object sender, EventArgs e) { Infragistics.Win.UltraWinGrid.UltraGridRow row = ultraGrid2.ActiveRow; if (row != null) { //PHY_CODE ,PHY_TYPE txtPhyTypeC.Text = row.Cells["PHY_TYPE"].Value.ToString(); cmbPhyMaxCode.SelectedValue = row.Cells["PHY_TYPE_M"].Value.ToString(); txtMemoC.Text = row.Cells["MEMO"].Value.ToString(); ultraTextEditor1.Tag = row.Cells["PHY_DEPTID"].Value.ToString2(); ultraTextEditor1.Text = row.Cells["PHY_DEPTNAME"].Value.ToString2(); ultraNumericEditor1.Value = int.Parse(row.Cells["ORDER_SEQ"].Value.ToString()); if (row.Cells["SPLINE_COUNT"].Value.ToString() == "") { ultraNumericEditor3.Value = null; } else { ultraNumericEditor3.Value = int.Parse(row.Cells["SPLINE_COUNT"].Value.ToString()); } } } /// /// 激活时信息带至编辑区Tab3 /// /// /// private void ultraGrid5_AfterRowActivate(object sender, EventArgs e) { Infragistics.Win.UltraWinGrid.UltraGridRow row = ultraGrid5.ActiveRow; if (row != null) { //PHY_CODE,PHY_NAME,PHY_TYPE ,PHY_TYPE_C,PHY_UNIT txtPhyProjectName.Text = row.Cells["PHY_NAME"].Value.ToString(); cmbPhyProjectTypeC.SelectedValue = row.Cells["PHY_TYPE_C"].Value.ToString(); txtPhyUnit.Text = row.Cells["PHY_UNIT"].Value.ToString(); txtMemoCProject.Text = row.Cells["MEMO"].Value.ToString(); if (row.Cells["HOUR_READY"].Value.ToString() != "") { numHour_Ready.Value = int.Parse(row.Cells["HOUR_READY"].Value.ToString()); } if (row.Cells["HOUR_TEST"].Value.ToString() != "") { numHour_Test.Value = Convert.ToInt32(row.Cells["HOUR_TEST"].Value); } txtStation.Text = row.GetValue("STATION_DESC"); txtStation.Tag = row.GetValue("STATION_CODE"); ultraNumericEditor2.Value = int.Parse(row.GetValue("ORDER_SEQ")); } } /// /// 行激活时信息带至编辑区Tab4 /// /// /// private void ultraGrid6_AfterRowActivate(object sender, EventArgs e) { Infragistics.Win.UltraWinGrid.UltraGridRow row = ultraGrid6.ActiveRow; if (row != null) { //ITEM_CODE,ITEM_NAME,ITEM_STYLE txtItemName.Text = row.Cells["ITEM_NAME"].Value.ToString(); cmbItemType.SelectedValue = row.Cells["ITEM_STYLE"].Value.ToString(); txtMemoItem.Text = row.Cells["MEMO"].Value.ToString(); ultraNumericEditor4.Value = row.Cells["ORDER_SEQ"].Value.ToString2(); } } /// /// 删除或恢复 /// /// true删除 false恢复 private void doDeleteOrResumePhy(bool isDelete) { ultraGrid1.UpdateData(); if (ultraGrid1.ActiveRow == null) { MessageBox.Show("请选择数据后再进行操作!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } ArrayList param = new ArrayList(); string phyCode = ultraGrid1.ActiveRow.Cells["PHY_CODE"].Value.ToString(); param.Add(phyCode); if (param.Count > 0 && MessageBox.Show("是否确认" + (isDelete ? "作废" : "恢复") + "选中的数据?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.Yes) { try { int count = ServerHelper.SetData("com.steering.pss.qcm.CoreMaterialItemMng.deleteLineInfoPhy", new Object[] { param, UserInfo.GetUserName(), isDelete }, this.ob); if (count > 0) { MessageUtil.ShowTips((isDelete ? "作废" : "恢复") + "数据成功!"); doQueryPhy(); LoadBaseInfo(); _ultraGrid1Selected = phyCode; MoveToOldSite_ultraGrid1(); } } catch (Exception ex) { MessageBox.Show("错误:" + ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } } /// /// 删除或恢复Tab2 /// /// true删除 false恢复 private void doDeleteOrResumePhyC(bool isDelete, string phyCode) { ultraGrid2.UpdateData(); ArrayList param = new ArrayList(); param.Add(phyCode); try { int count = ServerHelper.SetData("com.steering.pss.qcm.CoreMaterialItemMng.deleteLineInfoPhyC", new Object[] { param, UserInfo.GetUserName(), isDelete }, this.ob); MessageUtil.ShowTips((isDelete ? "作废" : "恢复") + "数据成功!"); doQueryPhyC(); LoadBaseInfo(); _ultraGrid2Selected = phyCode; MoveToOldSite_ultraGrid2(); } catch (Exception ex) { MessageBox.Show("错误:" + ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } /// /// 删除或恢复Tab3 /// /// true删除 false恢复 private void doDeleteOrResumePhyProject(bool isDelete, string phyCode) { ultraGrid5.UpdateData(); ArrayList param = new ArrayList(); param.Add(phyCode); try { int count = ServerHelper.SetData("com.steering.pss.qcm.CoreMaterialItemMng.deleteLineInfoPhyProject", new Object[] { param, UserInfo.GetUserName(), isDelete }, this.ob); MessageUtil.ShowTips((isDelete ? "作废" : "恢复") + "数据成功!"); doQueryPhyProject(); LoadBaseInfo(); _ultraGrid5Selected = phyCode; MoveToOldSite_ultraGrid5(); } catch (Exception ex) { MessageBox.Show("错误:" + ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } /// /// 删除或恢复Tab4 /// /// true删除 false恢复 private void doDeleteOrResumeItem(bool isDelete) { ultraGrid6.UpdateData(); if (ultraGrid6.ActiveRow == null) { MessageBox.Show("请选择数据后再进行操作!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } ArrayList param = new ArrayList(); param.Add(ultraGrid6.ActiveRow.Cells["ITEM_CODE"].Value.ToString()); _ultraGrid6Selected = ultraGrid6.ActiveRow.Cells["ITEM_CODE"].Value.ToString(); if (param.Count > 0 && MessageBox.Show("是否确认" + (isDelete ? "作废" : "恢复") + "选中的数据?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.Yes) { try { int count = ServerHelper.SetData("com.steering.pss.qcm.CoreMaterialItemMng.deleteLineInfoItem", new Object[] { param, UserInfo.GetUserName(), isDelete }, this.ob); if (count > 0) { MessageUtil.ShowTips((isDelete ? "作废" : "恢复") + "数据成功!"); doQueryItem(); LoadBaseInfo(); MoveToOldSite_ultraGrid6(); } } catch (Exception ex) { MessageBox.Show("错误:" + ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } } private void DeleteOrResumePhy_R_Item(bool isDelete) { ultraWD.UpdateData(); int chkCount = 0; string phyTypeC = ultraCZGL.GetActiveRowValue("PHY_TYPE_C"); string strDel = ultraWD.ActiveRow.Cells["PHY_TYPE_C"].Value.ToString() + ultraWD.ActiveRow.Cells["ITEM_CODE_F"].Value.ToString() + ultraWD.ActiveRow.Cells["ITEM_CODE_C"].Value.ToString() + ultraWD.ActiveRow.Cells["ITEM_CODE_W"].Value.ToString(); ArrayList list = new ArrayList(); foreach (UltraGridRow row in ultraWD.Rows) { if (row.Cells["CHK"].Value.ToString().ToUpper() == "TRUE") { ArrayList listSub = new ArrayList(); listSub.Add(isDelete ? "0" : "1"); listSub.Add(UserInfo.GetUserName()); listSub.Add(row.Cells["PHY_TYPE_C"].Value.ToString()); listSub.Add(row.Cells["ITEM_CODE_F"].Value.ToString()); listSub.Add(row.Cells["ITEM_CODE_C"].Value.ToString()); listSub.Add(row.Cells["ITEM_CODE_W"].Value.ToString()); list.Add(listSub); chkCount++; } } if (chkCount == 0) { MessageUtil.ShowWarning("请选择数据后再进行操作!"); return; } if (MessageBox.Show("是否" + (isDelete ? "作废" : "恢复") + "所选择的数据?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.No) { return; } try { ServerHelper.SetData("com.steering.pss.qcm.CoreMaterialItemMng.deleteOrResumePhy_R_Item", new object[] { list }, ob); MessageUtil.ShowTips((isDelete ? "作废" : "恢复") + "数据成功!"); queryPhy2(phyTypeC); LoadBaseInfo(); MoveToOldSite_ultraWD(strDel); } catch { } } /// /// Tab切换时触发事件,控制保存按钮是否可用 /// /// /// private void utcPhy_SelectedTabChanged(object sender, Infragistics.Win.UltraWinTabControl.SelectedTabChangedEventArgs e) { if (e.Tab.Key == "R_Item" || e.Tab.Key == "R_Pos") { SetSaveTool(); } else { SetAddAndModifyTool(); } } private void SetAddAndModifyTool() { if (toolMenu == null) return; toolMenu.Toolbars[0].Tools["doAdd"].InstanceProps.Visible = Infragistics.Win.DefaultableBoolean.True; toolMenu.Toolbars[0].Tools["doModify"].InstanceProps.Visible = Infragistics.Win.DefaultableBoolean.True; toolMenu.Toolbars[0].Tools["doSave"].InstanceProps.Visible = Infragistics.Win.DefaultableBoolean.False; } private void SetSaveTool() { if (toolMenu == null) return; toolMenu.Toolbars[0].Tools["doAdd"].InstanceProps.Visible = Infragistics.Win.DefaultableBoolean.False; toolMenu.Toolbars[0].Tools["doModify"].InstanceProps.Visible = Infragistics.Win.DefaultableBoolean.False; toolMenu.Toolbars[0].Tools["doSave"].InstanceProps.Visible = Infragistics.Win.DefaultableBoolean.True; } /// /// 获取当前选中的id,查询该材质项目对应的多条试验温度、方向、尺寸 /// /// /// private void ultraCZGL_AfterRowActivate(object sender, EventArgs e) { try { this.Cursor = Cursors.WaitCursor; //string phyTypeC = ultraCZGL.ActiveRow.GetValue("PHY_TYPE_C"); //DataTable dt = GetSizeItem(phyTypeC); //DataRow dr = dt.NewRow(); //dr["ITEM_CODE"] = ""; //dt.Rows.InsertAt(dr, 0); //cmbItem_C.DataSource = dt; //cmbItem_C.ValueMember = "ITEM_CODE"; //cmbItem_C.DisplayMember = "ITEM_NAME"; //cmbItem_C.DropDownListWidth = -1; //ClsBaseInfo.SetComboItemHeight(cmbItem_C); doQueryItem_R(); } finally { this.Cursor = Cursors.Default; } } /// /// 刷新试验方向数据 /// private void doQueryItem_R() { _ultraWDQueryFlag = true; //select PHY_CODE,PHY_NAME from COM_BASE_PHY string phyTypeC = ultraCZGL.ActiveRow.Cells["PHY_TYPE_C"].Value.ToString(); this.WDTable.Clear(); DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.GetITEM_F", new Object[] { phyTypeC }, this.ob); GridHelper.CopyDataToDatatable(ref dt, ref this.WDTable, true); GridHelper.RefreshAndAutoSize(ultraWD); SetUltraWDDefaultCheck(); WDTable.AcceptChanges(); _ultraWDQueryFlag = false; ultraWD.UpdateData(); } private void SetUltraWDDefaultCheck() { foreach (UltraGridRow row in ultraWD.Rows) { row.Cells["CHK2"].Value = false; } ultraWD.UpdateData(); } private void queryPhy2(string phyTypeC) { _ultraCZGLQueryFlag = true; DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.queryPhy2", new object[] { }, ob); GridHelper.CopyDataToDatatable(ref dt, ref this.CZGLTable, true); if (phyTypeC != "") { UltraGridRow row = ultraCZGL.Rows.Where(a => a.GetValue("PHY_TYPE_C") == phyTypeC).FirstOrDefault(); if (row != null) { row.Activate(); } } else if (ultraCZGL.Rows.Count > 0) { ultraCZGL.Rows[0].Activate(); } _ultraCZGLQueryFlag = false; GridHelper.RefreshAndAutoSize(ultraCZGL); } private void queryPhy3(string phyCode) { DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.queryPhy3", new object[] { }, ob); GridHelper.CopyDataToDatatable(ref dt, ref this.dataTable5, true); if (phyCode != "") { UltraGridRow row = ultraGrid7.Rows.Where(a => a.GetValue("PHY_CODE") == phyCode).FirstOrDefault(); if (row != null) { row.Activate(); } } else if (ultraGrid7.Rows.Count > 0) { ultraGrid7.Rows[0].Activate(); } GridHelper.RefreshAndAutoSize(ultraGrid7); } private void CaculateCount(DataTable dt) { //foreach(DataRow row in dt.Rows) //{ // row["COUNT"] = //} } private void LoadItemData() { LoadItemData_sub("A", cmbItem_F); LoadItemData_sub("C", cmbItem_C); LoadItemData_sub("B", ultraComboEditor2); //if(ultraCZGL.ActiveRow != null) //{ // string phyCode = ultraCZGL.ActiveRow.GetValue("PHY_TYPE_C"); // DataTable dt = GetSizeItem(phyCode); // DataRow dr = dt.NewRow(); // dr["ITEM_CODE"] = ""; // dt.Rows.InsertAt(dr, 0); // cmbItem_C.DataSource = dt; // cmbItem_C.ValueMember = "ITEM_CODE"; // cmbItem_C.DisplayMember = "ITEM_NAME"; // cmbItem_C.DropDownListWidth = -1; // ClsBaseInfo.SetComboItemHeight(cmbItem_C); //} } private void LoadItemData_sub(string itemStyle, UltraComboEditor cmb) { ArrayList list = new ArrayList(); list.Add(itemStyle); DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.loadItem", new object[] { list }, ob); DataRow dr = dt.NewRow(); dr["ITEM_CODE"] = ""; dt.Rows.InsertAt(dr, 0); cmb.DataSource = dt; cmb.DisplayMember = "ITEM_NAME"; cmb.ValueMember = "ITEM_CODE"; cmb.DropDownListWidth = -1; ClsBaseInfo.SetComboItemHeight(cmb); } private DataTable GetSizeItem(string phyTypeC) { DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.getSizeItem", new object[] { phyTypeC }, ob); return dt; } /// /// 保存方法 /// private void doSave() { //获取勾选项 //判断勾选项是新增还是修改 //将新增行数据添加到新增ArrayList //将修改行数据添加到修改ArrayList //执行数据库插入或修改操作 //更新数据源。 ultraWD.UpdateData(); string phyTypeCode = ultraCZGL.ActiveRow.Cells["PHY_TYPE_C"].Value.ToString(); string strDel = ultraWD.ActiveRow.Cells["PHY_TYPE_C"].Value.ToString() + ultraWD.ActiveRow.Cells["ITEM_CODE_F2"].Value.ToString() + ultraWD.ActiveRow.Cells["ITEM_CODE_C2"].Value.ToString() + ultraWD.ActiveRow.Cells["ITEM_CODE_W2"].Value.ToString(); //判断是否有勾选项,没有则提示。 int chkbool = 0; for (int i = 0; i < this.WDTable.Rows.Count; i++) { DataRow dr = WDTable.Rows[i]; if ((Boolean)dr["CHK2"]) { chkbool += 1; } } if (chkbool <= 0) { MessageBox.Show("请选择数据后再进行操作!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } if (CheckItem_R() == false) { return; } //确定保存吗? if (MessageBox.Show("是否确认保存?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.No) { return; } //主表新增组ArrayList ArrayList spbAddParams = new ArrayList(); //主表修改组ArrayList ArrayList spbUpdateParams = new ArrayList(); //遍历主表,判定是否有勾选项。 for (int i = 0; i < this.WDTable.Rows.Count; i++) { Infragistics.Win.UltraWinGrid.UltraGridRow row = ultraWD.Rows[i]; DataRow dr = WDTable.Rows[i]; if ((Boolean)dr["CHK2"]) { //判定勾选项是新增行,还是修改行。 if (dr.RowState == DataRowState.Added) { ArrayList parm = new ArrayList(); parm.Add(row.Cells["PHY_TYPE"].Value.ToString()); parm.Add(row.Cells["PHY_TYPE_C"].Value.ToString()); parm.Add(row.Cells["ITEM_CODE_F2"].Value.ToString()); parm.Add(row.Cells["ITEM_CODE_C2"].Value.ToString()); parm.Add(this.UserInfo.GetUserName()); parm.Add(dr["MEMO"].ToString()); spbAddParams.Add(parm); } else if (this.WDTable.Rows[i].RowState == DataRowState.Modified) { ArrayList parm = new ArrayList(); //标准名称 parm.Add(row.Cells["ITEM_CODE_F2"].Value.ToString()); parm.Add(row.Cells["ITEM_CODE_C2"].Value.ToString()); parm.Add(this.UserInfo.GetUserName()); parm.Add(dr["MEMO"].ToString()); parm.Add(row.Cells["PHY_TYPE_C"].Value.ToString()); parm.Add(row.Cells["ITEM_CODE_F"].Value.ToString()); parm.Add(row.Cells["ITEM_CODE_C"].Value.ToString()); spbUpdateParams.Add(parm); } } } //执行数据库相关操作 CoreClientParam ccp = new CoreClientParam(); //服务端的包名+类名 ccp.ServerName = "com.steering.pss.qcm.CoreMaterialItemMng"; //类里的方法名 ccp.MethodName = "doSave"; ccp.ServerParams = new object[] { spbAddParams, spbUpdateParams }; ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal); if (ccp.ReturnCode == -1) { return; } else { MessageUtil.ShowTips("保存数据成功!"); queryPhy2(phyTypeCode); //doQueryItem_R(); LoadBaseInfo(); MoveToOldSite_ultraWD(strDel); } } private void SavePos() { var grid7Row = ultraGrid7.ActiveRow; if (grid7Row == null) return; string phyCode = grid7Row.GetValue("PHY_CODE"); var rows = ultraGrid8.Rows.Where(a => a.GetValue("CHK") == "True"); if (rows.Count() == 0) { MessageUtil.ShowTips("请选择一条记录!"); return; } if (!CheckPos_R()) { return; } ArrayList parms = new ArrayList(); foreach (var row in rows) { ArrayList parm = new ArrayList(); parm.AddRange(grid7Row.GetValue("PHY_CODE"), row.GetValue("ITEM_CODE_W2"), UserInfo.GetUserName(), row.GetValue("ITEM_CODE_W"), row.GetValue("VALIDFLAG")); parms.Add(parm); } if (MessageUtil.ShowYesNoAndQuestion("是否确认保存?") == System.Windows.Forms.DialogResult.No) { return; } ServerHelper.SetData("com.steering.pss.qcm.CoreMaterialItemMng.SavePos", new object[] { parms }, ob); MessageUtil.ShowTips("保存成功!"); queryPhy3(phyCode); } private void DeleteOrResumePos(string validflag) { var grid7Row = ultraGrid7.ActiveRow; if (grid7Row == null) return; string phyCode = grid7Row.GetValue("PHY_CODE"); var rows = ultraGrid8.Rows.Where(a => a.GetValue("CHK") == "True"); if (rows.Count() == 0) { MessageUtil.ShowTips("请选择一条记录!"); return; } ArrayList parms = new ArrayList(); foreach (var row in rows) { string[] parm = new string[] { UserInfo.GetUserName(), phyCode, row.GetValue("ITEM_CODE_P"), row.GetValue("ITEM_CODE_W") }; parms.Add(parm); } string tip = validflag == "0" ? "作废" : "恢复"; if (MessageUtil.ShowYesNoAndQuestion("是否确认" + tip + "?") == System.Windows.Forms.DialogResult.No) { return; } ServerHelper.SetData("com.steering.pss.qcm.CoreMaterialItemMng.DeleteOrResumePos", new object[] { parms, validflag }, ob); MessageUtil.ShowTips(tip + "成功!"); queryPhy3(phyCode); } private bool CheckPos_R() { ultraWD.UpdateData(); string phyCode = ultraGrid7.GetActiveRowValue("PHY_CODE"); foreach (UltraGridRow row in ultraGrid8.Rows) { if (row.Cells["CHK"].Value.ToString().ToUpper() == "TRUE") { if (row.Cells["ITEM_CODE_W2"].Value.ToString() == "") { MessageUtil.ShowWarning("试验温度不能为空!"); row.Activate(); return false; } string str = row.Cells["ITEM_CODE_W2"].Text; var chkRows = ultraWD.Rows.Where(a => a.GetValue("CHK") == "True"); var groupRows = chkRows.GroupBy(a => a.GetValue("ITEM_CODE_W2")); if (chkRows.Count() > groupRows.Count()) { MessageUtil.ShowWarning("保存的数据存在重复项!"); return false; } if (isExistPos_R(row.GetValue("ITEM_CODE_W2"), phyCode, row.GetValue("ITEM_CODE_W"))) { MessageBox.Show(@"保存失败!系统已存在相同数据-[" + str + "]!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); row.Activate(); return false; } } } return true; } private bool isExistPos_R(string itemCodeW2, string phyCode, string itemCodeW) { string[] parm = new string[] { itemCodeW2, phyCode, itemCodeW }; DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.isExistPos_R", new object[] { parm }, ob); if (dt == null) { return false; } else if (dt.Rows[0][0].ToString() != "0") { return true; } return false; } private bool CheckItem_R() { ultraWD.UpdateData(); foreach (UltraGridRow row in ultraWD.Rows) { if (row.Cells["CHK"].Value.ToString().ToUpper() == "TRUE") { if (row.Cells["PHY_TYPE"].Value.ToString() == "") { MessageBox.Show("材质大类不能为空!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); row.Activate(); return false; } if (row.Cells["PHY_TYPE_C"].Value.ToString() == "") { MessageBox.Show("材质小类不能为空!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); row.Activate(); return false; } if (row.Cells["ITEM_CODE_F2"].Value.ToString() == "" && row.Cells["ITEM_CODE_C2"].Value.ToString() == "") { MessageUtil.ShowWarning("试验方向、尺寸至少有一项不为空!"); row.Activate(); return false; } string str = row.Cells["ITEM_CODE_F2"].Text + "|" + row.Cells["ITEM_CODE_C2"].Text + "|"; var chkRows = ultraWD.Rows.Where(a => a.GetValue("CHK") == "True"); var groupRows = chkRows.GroupBy(a => a.GetValue("ITEM_CODE_F") + a.GetValue("ITEM_CODE_C")); if (chkRows.Count() > groupRows.Count()) { MessageUtil.ShowWarning("保存的数据存在重复项!\r\n(关系数据由试样组+试验方向+试验尺寸构成)"); return false; } if (isExistItem_R(row)) { MessageBox.Show(@"保存失败!系统已存在相同的关系数据-[" + str + "]!\r\n(关系数据由试样组+试验方向+试验尺寸构成)", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); row.Activate(); return false; } } } return true; } private bool isExistItem_R(UltraGridRow row) { ArrayList list = new ArrayList(); list.Add(row.Cells["ITEM_CODE_C2"].Value.ToString()); list.Add(row.Cells["ITEM_CODE_F2"].Value.ToString()); list.Add(row.Cells["PHY_TYPE_C"].Value.ToString()); if (list[0].ToString() == row.Cells["ITEM_CODE_C"].Value.ToString() && list[1].ToString() == row.Cells["ITEM_CODE_F"].Value.ToString()) { return false; } DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.isExistItem_R", new object[] { list }, ob); if (dt == null) { return false; } else if (dt.Rows[0][0].ToString() != "0") { return true; } return false; } private void MoveToOldSite_ultraWD(string str) { foreach (UltraGridRow row in ultraWD.Rows) { string strDel = row.Cells["PHY_TYPE_C"].Value.ToString() + row.Cells["ITEM_CODE_F2"].Value.ToString() + row.Cells["ITEM_CODE_C2"].Value.ToString() + row.Cells["ITEM_CODE_W2"].Value.ToString(); if (str == strDel) { row.Activate(); } } } private void MoveToOldSite_ultraGrid1() { Infragistics.Win.UltraWinGrid.UltraGridRow row = null; for (int i = 0; i < ultraGrid1.Rows.Count; i++) { row = ultraGrid1.Rows[i]; if (row.Cells["PHY_CODE"].Value.ToString().Equals(_ultraGrid1Selected)) { row.Activate(); break; } } _ultraGrid1Selected = ""; } private void MoveToOldSite_ultraGrid2() { foreach (UltraGridRow row in ultraGrid2.Rows) { if (row.Cells["PHY_CODE"].Value.ToString() == _ultraGrid2Selected) { row.Activate(); return; } } _ultraGrid2Selected = ""; } private void MoveToOldSite_ultraGrid5() { foreach (UltraGridRow row in ultraGrid5.Rows) { if (row.Cells["PHY_CODE"].Value.ToString() == _ultraGrid5Selected) { row.Activate(); return; } } _ultraGrid5Selected = ""; } private void MoveToOldSite_ultraGrid6() { foreach (UltraGridRow row in ultraGrid6.Rows) { if (row.Cells["ITEM_CODE"].Value.ToString() == _ultraGrid6Selected) { row.Activate(); return; } } _ultraGrid6Selected = ""; } private string GetMaxPhy_R_ItemCode() { DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.getMaxPhy_R_ItemCode", new object[] { }, ob); string maxPhy_R_ItemCode = ""; if (dt != null) { if (dt.Rows[0][0].ToString() == "") { return "R0001"; } else { int intMaxPhy_R_ItemCode = int.Parse(dt.Rows[0][0].ToString().Substring(1)) + 1; maxPhy_R_ItemCode = dt.Rows[0][0].ToString().Substring(0, 1) + intMaxPhy_R_ItemCode.ToString().PadLeft(4, '0'); return maxPhy_R_ItemCode; } } return ""; } private void InitGridColor(InitializeRowEventArgs e) { if (e.Row.Cells["VALIDFLAG"].Value.ToString() == "0") { e.Row.Appearance.ForeColor = Color.Red; } else { e.Row.Appearance.ForeColor = Color.Black; } } private void ultraGrid1_InitializeRow(object sender, InitializeRowEventArgs e) { InitGridColor(e); } private void ultraGrid2_InitializeRow(object sender, InitializeRowEventArgs e) { InitGridColor(e); } private void ultraGrid5_InitializeRow(object sender, InitializeRowEventArgs e) { InitGridColor(e); } private void ultraGrid6_InitializeRow(object sender, InitializeRowEventArgs e) { InitGridColor(e); } private string GetMaxItemCode(string code) { DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.getMaxItem_Code", new object[] { code }, this.ob); string maxItemCode = ""; if (dt != null) { if (dt.Rows[0][0].ToString() == "") { return code + "0001"; } else { int intMaxItemCode = Convert.ToInt32(dt.Rows[0][0].ToString().Substring(1)) + 1; maxItemCode = code + intMaxItemCode.ToString().PadLeft(4, '0'); return maxItemCode; } } return ""; } private void ultraWD_AfterRowInsert(object sender, RowEventArgs e) { e.Row.Cells["PHY_CODE"].Value = ultraCZGL.ActiveRow.Cells["PHY_CODE"].Value; e.Row.Cells["PHY_NAME"].Value = ultraCZGL.ActiveRow.Cells["PHY_NAME"].Value; e.Row.Cells["PHY_TYPE"].Value = ultraCZGL.ActiveRow.Cells["PHY_TYPE"].Value; e.Row.Cells["PHY_TYPE_C"].Value = ultraCZGL.ActiveRow.Cells["PHY_TYPE_C"].Value; e.Row.Cells["ITEM_CODE_F2"].Value = ""; e.Row.Cells["ITEM_CODE_C2"].Value = ""; e.Row.Cells["ITEM_CODE_W2"].Value = ""; e.Row.Cells["CHK2"].Value = true; } private void ultraWD_InitializeRow(object sender, InitializeRowEventArgs e) { if (e.Row.Cells["VALIDFLAG"].Value.ToString() == "0") { e.Row.Appearance.ForeColor = Color.Red; } else { e.Row.Appearance.ForeColor = Color.Black; } ControlPhy_R_ItemEdit(e); SetultraWDColor(e); SaveSelected_ultraWD(e); BandComboToGrid(e); } private void BandComboToGrid(InitializeRowEventArgs e) { e.Row.Cells["PHY_TYPE"].EditorComponent = cmbPhyR; e.Row.Cells["PHY_TYPE_C"].EditorComponent = cmbPhyC; e.Row.Cells["ITEM_CODE_F2"].EditorComponent = cmbItem_F; e.Row.Cells["ITEM_CODE_C2"].EditorComponent = cmbItem_C; e.Row.Cells["ITEM_CODE_W2"].EditorComponent = cmbItem_W; } private void SetultraWDColor(InitializeRowEventArgs e) { //foreach (UltraGridCell cell in e.Row.Cells) //{ // if (cell.Activation == Activation.AllowEdit) // { // cell.Appearance.BackColor = Color.FromArgb(255, 255, 192); // } // else // { // cell.Appearance.BackColor = Color.White; // } //} } private void ControlPhy_R_ItemEdit(InitializeRowEventArgs e) { List list = new List(); list.Add("创建人"); list.Add("创建时间"); list.Add("修改人"); list.Add("修改时间"); list.Add("作废人"); list.Add("作废时间"); list.Add("有效标志"); List listDrop = new List(); listDrop.Add("材质大类"); listDrop.Add("材质小类"); listDrop.Add("试验方向"); listDrop.Add("试验温度"); listDrop.Add("试验尺寸"); if (e.Row.Cells["CHK"].Value.ToString().ToUpper() == "TRUE") { foreach (UltraGridCell cell in e.Row.Cells) { if (list.Contains(cell.Column.Header.Caption)) { cell.Activation = Activation.ActivateOnly; } else if (listDrop.Contains(cell.Column.Header.Caption)) { cell.Activation = Activation.AllowEdit; cell.Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList; } else { cell.Activation = Activation.AllowEdit; } } } else { foreach (UltraGridCell cell in e.Row.Cells) { if (cell.Column.Header.Caption == "选择") { cell.Activation = Activation.AllowEdit; } else if (listDrop.Contains(cell.Column.Header.Caption)) { cell.Activation = Activation.ActivateOnly; cell.Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DropDown; } else { cell.Activation = Activation.ActivateOnly; } } } } private void SaveSelected_ultraWD(InitializeRowEventArgs e) { if (e.Row.Cells["CHK"].Value.ToString().ToUpper() == "TRUE") { string strAdd = e.Row.Cells["PHY_CODE"].Value.ToString() + e.Row.Cells["ITEM_CODE_F2"].Value.ToString() + e.Row.Cells["ITEM_CODE_C2"].Value.ToString() + e.Row.Cells["ITEM_CODE_W2"].Value.ToString(); _ultraWDSelecteds_Add.Add(strAdd); string strDel = e.Row.Cells["PHY_TYPE_C"].Value.ToString() + e.Row.Cells["ITEM_CODE_F"].Value.ToString() + e.Row.Cells["ITEM_CODE_C"].Value.ToString() + e.Row.Cells["ITEM_CODE_W"].Value.ToString(); _ultraWDSelecteds_Del.Add(strDel); } else if (_ultraWDQueryFlag == false) { string strAdd = e.Row.Cells["PHY_CODE"].Value.ToString() + e.Row.Cells["ITEM_CODE_F2"].Value.ToString() + e.Row.Cells["ITEM_CODE_C2"].Value.ToString() + e.Row.Cells["ITEM_CODE_W2"].Value.ToString(); _ultraWDSelecteds_Add.Remove(strAdd); string strDel = e.Row.Cells["PHY_CODE"].Value.ToString() + e.Row.Cells["ITEM_CODE_F"].Value.ToString() + e.Row.Cells["ITEM_CODE_C"].Value.ToString() + e.Row.Cells["ITEM_CODE_W"].Value.ToString(); _ultraWDSelecteds_Del.Remove(strDel); } } private void ultraWD_CellChange(object sender, CellEventArgs e) { ultraWD.UpdateData(); e.Cell.Row.Cells["CHK2"].Value = e.Cell.Row.Cells["CHK"].Value; ultraWD.UpdateData(); } private void ultraWD_BeforeRowInsert(object sender, BeforeRowInsertEventArgs e) { if (ultraCZGL.ActiveRow == null) { e.Cancel = true; } } private void FrmMaterialAdministration_Shown(object sender, EventArgs e) { SetAddAndModifyTool(); } private void ultraTextEditor1_EditorButtonClick(object sender, EditorButtonEventArgs e) { UltraGridRow row = ultraGrid5.ActiveRow; ComBaseStationPopup baseStationPopup = new ComBaseStationPopup("", row.GetValue("STATION_CODE"), row.GetValue("STATION_DESC"), this.ob); if (baseStationPopup.ShowDialog() == System.Windows.Forms.DialogResult.OK) { txtStation.Text = baseStationPopup.StationNames; txtStation.Tag = baseStationPopup.StationCodes; } } private void txtDept_EditorButtonClick(object sender, EditorButtonEventArgs e) { string deptCode = txtDept.Tag.ToString2(); string deptDesc = txtDept.Text.Trim(); FrmMaterialAdministrationSub mas = new FrmMaterialAdministrationSub(this.ob); mas.DeptId = deptCode; mas.DeptName = deptDesc; if (mas.ShowDialog() == DialogResult.OK) { txtDept.Tag = mas.DeptId; txtDept.Text = mas.DeptName; } } private void ultraGrid7_AfterRowActivate(object sender, EventArgs e) { var row = ultraGrid7.ActiveRow; string phyCode = row.GetValue("PHY_CODE"); string phyItemW = ""; if (ultraGrid8.ActiveRow != null) { phyItemW = ultraGrid8.GetActiveRowValue("ITEM_CODE_W"); } DataTable dt = ServerHelper.GetData("com.steering.pss.qcm.CoreMaterialItemMng.GetPhyRPos", new object[] { phyCode }, ob); GridHelper.CopyDataToDatatable(dt, this.dataTable6, true); foreach (var gridRow in ultraGrid8.Rows) { GridEdite(gridRow); } var rowPos = ultraGrid8.Rows.Where(a => a.GetValue("ITEM_CODE_W") == phyItemW).FirstOrDefault(); if (rowPos != null) { rowPos.Activate(); } } private void ultraGrid8_CellChange(object sender, CellEventArgs e) { ultraGrid8.UpdateData(); GridEdite(e.Cell.Row); } private void GridEdite(UltraGridRow row) { if (row.GetValue("CHK") == "True") { foreach (UltraGridCell cell in row.Cells) { if (cell.Column.CellActivation == Activation.AllowEdit) { cell.Activation = Activation.AllowEdit; } } } else { foreach (UltraGridCell cell in row.Cells) { if (cell.Column.Key.Contains("CHK")) continue; if (cell.Column.CellActivation == Activation.AllowEdit) { cell.Activation = Activation.ActivateOnly; } } } } private void ultraGrid8_InitializeLayout(object sender, InitializeLayoutEventArgs e) { } private void ultraGrid8_InitializeRow(object sender, InitializeRowEventArgs e) { if (e.Row.GetValue("VALIDFLAG") == "0") { e.Row.Appearance.ForeColor = Color.Red; } } private void ultraCZGL_AfterSortChange(object sender, BandEventArgs e) { GridHelper.RefreshAndAutoSize(ultraCZGL); } private void ultraGrid7_AfterSortChange(object sender, BandEventArgs e) { GridHelper.RefreshAndAutoSize(ultraGrid7); } private void ultraTextEditor1_EditorButtonClick_1(object sender, EditorButtonEventArgs e) { string deptCode = ultraTextEditor1.Tag.ToString2(); string deptDesc = ultraTextEditor1.Text.Trim(); FrmMaterialAdministrationSub mas = new FrmMaterialAdministrationSub(this.ob); mas.DeptId = deptCode; mas.DeptName = deptDesc; if (mas.ShowDialog() == DialogResult.OK) { ultraTextEditor1.Tag = mas.DeptId; ultraTextEditor1.Text = mas.DeptName; } } } }