using CoreFS.CA06; using Infragistics.Win.UltraWinEditors; using Infragistics.Win.UltraWinGrid; using System; using System.Data; using System.Windows.Forms; namespace Core.StlMes.Client.Qcm { public partial class CtrlMscProductWater : UserControl { public FrmWaterPressureStand _frmWaterStd; private bool isLoaded = false; private string _customInfo; public event BeforeRowInsertEventHandler BeforeRowInsert; public OpeBase Ob { get { return _frmWaterStd.ob; } set { _frmWaterStd.ob = value; } } public UltraGrid Grid { get { return _frmWaterStd.UltraGrid1; } } public DataTable WaterDataTable1 { get { return _frmWaterStd.DataTable1; } } public DataTable WaterDataTable2 { get { return _frmWaterStd.DataTable2; } } public bool IsQueryValidData { get { return _frmWaterStd.UltraCheckValid.Checked; } set { _frmWaterStd.UltraCheckValid.Checked = value; } } public CtrlMscProductWater(System.Windows.Forms.Control container) { InitializeComponent(); this.Dock = DockStyle.Fill; _frmWaterStd = new FrmWaterPressureStand(); _frmWaterStd.UltraGrid1.BeforeRowInsert += new Infragistics.Win.UltraWinGrid.BeforeRowInsertEventHandler(UltraGrid1_BeforeRowInsert); _frmWaterStd.UltraGrid1.AfterRowInsert += new Infragistics.Win.UltraWinGrid.RowEventHandler(UltraGrid1_AfterRowInsert); this.Controls.Add(_frmWaterStd.UltraGrid1); container.Controls.Add(this); this.BringToFront(); } public void ShowGrid(string msc, string ordLnPk, OpeBase ob) { if (isLoaded == false) { _frmWaterStd.Msc = msc; _frmWaterStd.OrdLnPk = ordLnPk; _frmWaterStd.PopupLoad("1", ob); _customInfo = "1"; isLoaded = true; } else { if (_frmWaterStd.Msc != "" && _frmWaterStd.Msc != msc) { _frmWaterStd.Msc = msc; _frmWaterStd.OrdLnPk = ordLnPk; this.RefreshData(); } } } /// /// 显示以标准为查询条件的内控标准 /// public void ShowStdGrid(string stdCode, string produccodeNk, string steelcodeNk, string processCode, string psc, string ordLnPk, OpeBase ob) { if (isLoaded == false) { //_frmChemStd = new FrmChemStandard(); //_frmChemStd.Msc = msc; _frmWaterStd.StdCode = stdCode; _frmWaterStd.ProduccodeNk = produccodeNk; _frmWaterStd.SteelcodeNk = steelcodeNk; _frmWaterStd.ProcessCode = processCode; _frmWaterStd.Psc = psc; _frmWaterStd.OrdLnPk = ordLnPk; _frmWaterStd.PopupLoad("2", ob); _customInfo = "2"; isLoaded = true; } else { if (_frmWaterStd.StdCode != "" && _frmWaterStd.StdCode != stdCode) { _frmWaterStd.StdCode = stdCode; _frmWaterStd.ProduccodeNk = produccodeNk; _frmWaterStd.SteelcodeNk = steelcodeNk; _frmWaterStd.ProcessCode = processCode; _frmWaterStd.OrdLnPk = ordLnPk; //this.RefreshData(); _frmWaterStd.PopupRefresh(); } } } public void ShowPurchaseGrid(OpeBase ob) { if (isLoaded) { _frmWaterStd.PopupRefresh(); } else { _frmWaterStd.PopupLoad("2", ob); isLoaded = true; } } public void Query(string msc, string codeJg) { _frmWaterStd.Msc = msc; _frmWaterStd.CodeJg = codeJg; _frmWaterStd.ToolBar_Click(null, "Query"); } public void QueryStd(string stdCode, string modelCode) { _frmWaterStd.StdCode = stdCode; _frmWaterStd.ModelCode = modelCode; _frmWaterStd.ToolBar_Click(null, "Query"); } public void QueryPurchaseAgreement(string stdCodeNk) { _frmWaterStd.QueryPurchaseAgreement(stdCodeNk); } public void Save() { _frmWaterStd.ToolBar_Click(null, "Save"); } public void Delete() { _frmWaterStd.ToolBar_Click(null, "Delete"); } public void Resume() { _frmWaterStd.ToolBar_Click(null, "Resume"); } public void Copy() { _frmWaterStd.ToolBar_Click(null, "Copy"); } public void Paste() { _frmWaterStd.ToolBar_Click(null, "Paste"); } public void RefreshData() { _frmWaterStd.ToolBar_Click(null, "Refresh"); } public void Clear() { _frmWaterStd.DataTable2.Clear(); _frmWaterStd.DataTable1.Clear(); } public void ExpandFirstRow() { if (_frmWaterStd.UltraGrid1.Rows.Count > 0) { _frmWaterStd.UltraGrid1.Rows[0].ExpandAll(); } } private void UltraGrid1_AfterRowInsert(object sender, Infragistics.Win.UltraWinGrid.RowEventArgs e) { if (e.Row.HasParent()) return; if (_customInfo == "1") { e.Row.SetValue("MSC", _frmWaterStd.Msc); DataTable dt = (DataTable)((UltraComboEditor)e.Row.Band.Columns["MSC"].EditorComponent).DataSource; DataRow[] drs = dt.Select("NAME = '" + _frmWaterStd.Msc + "'"); if (drs.Length > 0) { string[] str = drs[0]["ID"].ToString().Split('@'); e.Row.Cells["PSC"].Value = str[1]; e.Row.Cells["PSC_DESC"].Value = str[2]; e.Row.Cells["PRODUCNAME"].Value = str[3]; e.Row.Cells["STDSTYLE"].Value = str[7]; e.Row.Cells["STD_NAME"].Value = str[4]; e.Row.Cells["STEELNAME"].Value = str[5]; e.Row.Cells["STD_STYLE_DESC"].Value = str[6]; e.Row.Cells["STEELCODE"].Value = str[8]; e.Row.Cells["STD_CODE"].Value = str[9]; } } else if (_customInfo == "2") { e.Row.Cells["STD_CODE_NK"].Value = _frmWaterStd.StdCode; DataTable dt = (DataTable)((UltraComboEditor)e.Row.Band.Columns["STD_CODE_NK"].EditorComponent).DataSource; DataRow[] drs = dt.Select("STD_CODE = '" + _frmWaterStd.StdCode + "'"); if (drs.Length > 0) { e.Row.Cells["STD_NAME_NK"].Value = drs[0][1]; e.Row.Cells["STDSTYLE"].Value = drs[0][2]; } } } private void UltraGrid1_BeforeRowInsert(object sender, Infragistics.Win.UltraWinGrid.BeforeRowInsertEventArgs e) { if (BeforeRowInsert != null) { BeforeRowInsert(sender, e); } } } }