using CoreFS.CA06; using Infragistics.Win.UltraWinEditors; using Infragistics.Win.UltraWinGrid; using System; using System.Collections; using System.Data; using System.Windows.Forms; namespace Core.StlMes.Client.Qcm { public partial class CtrlMscChem : UserControl { public FrmChemStandard _frmChemStd; private bool isLoaded = false; private string _customInfo; public OpeBase Ob { get { return _frmChemStd.ob; } set { _frmChemStd.ob = value; } } public event BeforeRowInsertEventHandler BeforeRowInsert; public UltraGrid Grid { get { return _frmChemStd.UltraGrid1; } } public DataTable ChemDataTable1 { get { return _frmChemStd.DataTable1; } } public DataTable ChemDataTable2 { get { return _frmChemStd.DataTable2; } } public bool IsQueryValidData { get { return _frmChemStd.UltraCheckValid.Checked; } set { _frmChemStd.UltraCheckValid.Checked = value; } } public CtrlMscChem(System.Windows.Forms.Control container) { InitializeComponent(); this.Dock = DockStyle.Fill; _frmChemStd = new FrmChemStandard(); _frmChemStd.UltraGrid1.BeforeRowInsert += new BeforeRowInsertEventHandler(UltraGrid1_BeforeRowInsert); _frmChemStd.UltraGrid1.AfterRowInsert += new Infragistics.Win.UltraWinGrid.RowEventHandler(UltraGrid1_AfterRowInsert); this.Controls.Add(_frmChemStd.UltraGrid1); container.Controls.Add(this); this.BringToFront(); } /// /// 显示以MSC为查询条件的交付标准 /// /// /// public void ShowGrid(string msc, OpeBase ob) { if (isLoaded == false) { //_frmChemStd = new FrmChemStandard(); //_frmChemStd.Msc = msc; _frmChemStd.Msc = msc; _frmChemStd.PopupLoad("1", ob); _customInfo = "1"; isLoaded = true; } else { if (_frmChemStd.Msc != "" && _frmChemStd.Msc != msc) { _frmChemStd.Msc = msc; this.RefreshData(); } } } /// /// 显示以标准为查询条件的内控标准 /// public void ShowStdGrid(string stdCode, string produccodeNk, ArrayList steelCodes, string steelcodeNk, string processCode, OpeBase ob) { if (isLoaded == false) { //_frmChemStd = new FrmChemStandard(); //_frmChemStd.Msc = msc; _frmChemStd.StdCode = stdCode; _frmChemStd.ProduccodeNk = produccodeNk; _frmChemStd.SteelCodes = steelCodes; _frmChemStd.SteelcodeNk = steelcodeNk; _frmChemStd.ProcessCodeNk = processCode; _frmChemStd.PopupLoad("2", ob); _customInfo = "2"; isLoaded = true; } else { if (_frmChemStd.StdCode != "" && _frmChemStd.StdCode != stdCode) { _frmChemStd.StdCode = stdCode; _frmChemStd.ProduccodeNk = produccodeNk; _frmChemStd.SteelcodeNk = steelcodeNk; _frmChemStd.SteelCodes = steelCodes; _frmChemStd.ProcessCodeNk = processCode; //this.RefreshData(); _frmChemStd.PopupRefresh(); } } } public void ShowPurchaseGrid(OpeBase ob) { if (isLoaded) { _frmChemStd.PopupRefresh(); } else { _frmChemStd.PopupLoad("2", ob); isLoaded = true; } } public void Query(string msc, string codeJg) { _frmChemStd.Msc = msc; _frmChemStd.CodeJg = codeJg; _frmChemStd.ToolBar_Click(null, "Query"); } public void QueryStd(string stdCode, string produccodeNk, ArrayList steelCodes, string modelCode) { _frmChemStd.StdCode = stdCode; _frmChemStd.ProduccodeNk = produccodeNk; _frmChemStd.SteelCodes = steelCodes; _frmChemStd.ModelCode = modelCode; _frmChemStd.ToolBar_Click(null, "Query"); } public void QueryPurchaseAgreement(string stdCodeNk) { _frmChemStd.QueryPurchaseAgreement(stdCodeNk); } public void Save() { _frmChemStd.ToolBar_Click(null, "Save"); } public void Delete() { _frmChemStd.ToolBar_Click(null, "Delete"); } public void Resume() { _frmChemStd.ToolBar_Click(null, "Resume"); } public void Copy() { _frmChemStd.ToolBar_Click(null, "Copy"); } public void Paste() { _frmChemStd.ToolBar_Click(null, "Paste"); } public void RefreshData() { _frmChemStd.ToolBar_Click(null, "Refresh"); } public void Group() { _frmChemStd.ToolBar_Click(null, "Group"); } public void CancelGroup() { _frmChemStd.ToolBar_Click(null, "CancelGroup"); } public void Clear() { _frmChemStd.DataTable1.Clear(); _frmChemStd.DataTable2.Clear(); } public void ExpandFirstRow() { if (_frmChemStd.UltraGrid1.Rows.Count > 0) { _frmChemStd.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", _frmChemStd.Msc); DataTable dt = (DataTable)((UltraComboEditor)e.Row.Band.Columns["MSC"].EditorComponent).DataSource; DataRow[] drs = dt.Select("MSC = '" + _frmChemStd.Msc + "'"); if (drs.Length > 0) { e.Row.Cells["PSC"].Value = drs[0][2]; e.Row.Cells["PSC_DESC"].Value = drs[0][3]; e.Row.Cells["PRODUCNAME"].Value = drs[0][4]; if (e.Row.Cells.Exists("STD_NAME_B")) { e.Row.Cells["STD_NAME_B"].Value = drs[0][5]; } else { e.Row.Cells["STD_NAME"].Value = drs[0][5]; } e.Row.Cells["STEELNAME"].Value = drs[0][6]; e.Row.Cells["STD_STYLE_DESC"].Value = drs[0][7]; e.Row.Cells["STDSTYLE"].Value = drs[0][8]; } } else if (_customInfo == "2") { e.Row.Cells["STD_CODE_NK"].Value = _frmChemStd.StdCode; DataTable dt = (DataTable)((UltraComboEditor)e.Row.Band.Columns["STD_CODE_NK"].EditorComponent).DataSource; DataRow[] drs = dt.Select("STD_CODE = '" + _frmChemStd.StdCode + "'"); if (drs.Length > 0) { e.Row.Cells["STD_NAME_NK"].Value = drs[0][1]; e.Row.Cells["STDSTYLE"].Value = drs[0][2]; } } e.Row.Update(); } private void UltraGrid1_BeforeRowInsert(object sender, BeforeRowInsertEventArgs e) { if (BeforeRowInsert != null) { BeforeRowInsert(sender, e); } } } }