using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using Core.Mes.Client.Common; using Infragistics.Win.UltraWinGrid; using System.Collections; using CoreFS.CA06; using System.Diagnostics; using System.IO; using Infragistics.Win; namespace Core.LgMes.Client.lgIntegrationQuery { public partial class frmAlloyHitStandard : Core.Mes.Client.Common.frmStyleBase { string strMess = ""; string username = ""; DataSet ds = new DataSet(); DataSet dsSteel = new DataSet(); public frmAlloyHitStandard() { InitializeComponent(); } private void frmAlloyHitStandard_Load(object sender, EventArgs e) { //InitSteel(); } public override void ToolBar_Click(object sender, string ToolbarKey) { switch (ToolbarKey) { case "Query": //InitSteel(); GetDataSource(); this.urGridLTemp.DisplayLayout.Bands[0].Columns["islowlimit"].ValueList = proc_ValueListRemark(); break; case "Add": Add(urGridLTemp); strMess = "合金窄成分控制标准保存成功!"; break; case "Update": UpdateGrid(); break; case "Delete": //username = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserID().Trim(); //if ("jsk02".Equals(username)) //{ DeleteGrid(); //} //else //{ // strMess = "您的权限不足!\r\n请联系技术科!"; // MessageBox.Show(strMess); //} break; case "Save": //username = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserID().Trim(); //if ("jsk02".Equals(username)) //{ urGridLTemp.UpdateData(); SaveData(); //} //else //{ // strMess = "您的权限不足!\r\n请联系技术科!"; // MessageBox.Show(strMess); //} break; case "Export": if (urGridLTemp.Rows.Count > 0) ExportDataWithSaveDialog(ref this.urGridLTemp,"合金窄成分控制标准"); break; case "Rollback"://cancel JJBStaticFunction.dataCancel(urGridLTemp, dataTable1); break; case "Exit": this.Close(); break; default: break; } } private void GetDataSource() { string strErr = ""; string strSteel = ""; string _strWhere2 = ""; if (chkSteel.Checked && ultcboSteel.SelectedIndex > -1) { strSteel = Convert.ToString(ultcboSteel.Text); _strWhere2 = String.Format(" where t.element = '{0}'", strSteel); } else { _strWhere2 = ""; } ArrayList arry = new ArrayList(); ArrayList sqlList = new ArrayList(); arry.Add("frmSAHit.select"); sqlList.Add(_strWhere2); //调用服务端方法 CoreClientParam CCP_LgEts = new CoreClientParam(); DataTable dt = new DataTable(); CCP_LgEts.ServerName = "Core.LgMes.Server.Common.ComDBQuery"; CCP_LgEts.MethodName = "doQuery"; CCP_LgEts.ServerParams = new object[] { arry, sqlList }; CCP_LgEts.SourceDataTable = dt; this.ExecuteQueryToDataTable(CCP_LgEts, CoreInvokeType.Internal); ds.Tables.Add(dt); dsSTemp.Clear(); this.dataTable1.Rows.Clear(); if (strErr == "" && ds != null) { DataRow dr; for (int iRow = 0; iRow < dt.Rows.Count; iRow++) { dr = this.dataTable1.NewRow(); for (int jCol = 0; jCol < dt.Columns.Count; jCol++) { try { if (this.dataTable1.Columns.Contains(dt.Columns[jCol].ColumnName)) { dr[dt.Columns[jCol].ColumnName] = Convert.ToString(dt.Rows[iRow][jCol]); } } catch { } } this.dataTable1.Rows.Add(dr); } urGridLTemp.UpdateData(); dataTable1.AcceptChanges(); } JJBStaticFunction.SetRowEdit(urGridLTemp);//Grid可编辑性 } /// /// 更新数据 /// private void UpdateGrid() { JJBStaticFunction.Update(urGridLTemp); strMess = "合金窄成分控制标准修改成功!"; if (urGridLTemp.ActiveRow != null) { for (int i = 0; i < ds.Tables[0].Columns.Count; i++) { urGridLTemp.ActiveRow.Cells[ds.Tables[0].Columns[i].ColumnName].Activation = Infragistics.Win.UltraWinGrid.Activation.AllowEdit; } } else MessageBox.Show("请选择需要修改的数据行!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } private void DeleteGrid() { if (urGridLTemp.ActiveRow != null) { string strID = urGridLTemp.ActiveRow.Cells["NUM"].Text.Trim(); JJBStaticFunction.Delete(urGridLTemp); DelData(strID); } else MessageBox.Show("请选择需要删除的数据行!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } /// /// 删除合金窄成分控制标准标准 /// private void DelData(string strMCode) { string strErr = ""; if (dataTable1.GetChanges() != null) { ArrayList arry = new ArrayList(); arry.Add("frmSAHit_Del.select"); arry.Add(strMCode); CommonClientToServer cctos = new CommonClientToServer(); cctos.ob = this.ob; DataSet ds = cctos.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBSave", "doSimpleSave", arry, out strErr); if (strErr != "" && ds != null) { MessageBox.Show(strErr); } else { MessageBox.Show("合金窄成分控制标准删除成功!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } } } /// /// 新增数据 /// /// public static void Add(Infragistics.Win.UltraWinGrid.UltraGridBase Grid) { Grid.UpdateData(); UltraGridRow ur = Grid.DisplayLayout.Bands[0].AddNew(); ur.Activation = Infragistics.Win.UltraWinGrid.Activation.AllowEdit; } /// /// 保存合金窄成分控制标准 /// private void SaveData() { try { urGridLTemp.UpdateData(); if (dataTable1.Rows.Count > 0) { string strErr = ""; ArrayList arry = new ArrayList(); string ELEMENT = urGridLTemp.ActiveRow.Cells["ELEMENT"].Text; string STEELNAME = urGridLTemp.ActiveRow.Cells["ACTUAL_STEEL"].Text; string LOWER_LIMIT_E = urGridLTemp.ActiveRow.Cells["LOWER_LIMIT_E"].Text; string LOWER_LIMIT_F = urGridLTemp.ActiveRow.Cells["LOWER_LIMIT_F"].Text; string LOWER_LIMIT_EF = urGridLTemp.ActiveRow.Cells["LOWER_LIMIT_EF"].Text; string LOWER_LIMIT_EI = urGridLTemp.ActiveRow.Cells["LOWER_LIMIT_EI"].Text; string MEMO = urGridLTemp.ActiveRow.Cells["MEMO"].Text; string ISLOWLIMIT = urGridLTemp.ActiveRow.Cells["ISLOWLIMIT"].Text; if (strMess == "合金窄成分控制标准保存成功!") { arry.Add("frmSAHit_Save.select"); } if (strMess == "合金窄成分控制标准修改成功!") { arry.Add("frmSAHit_Update.select"); } arry.Add(ELEMENT); arry.Add(STEELNAME); arry.Add(LOWER_LIMIT_E); arry.Add(LOWER_LIMIT_F); arry.Add(LOWER_LIMIT_EF); arry.Add(LOWER_LIMIT_EI); arry.Add(MEMO); arry.Add(ISLOWLIMIT); if (strMess == "合金窄成分控制标准修改成功!") { string ID = urGridLTemp.ActiveRow.Cells["NUM"].Text; arry.Add(ID); } CommonClientToServer cctos = new CommonClientToServer(); cctos.ob = this.ob; DataSet ds = cctos.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBSave", "doSimpleSave", arry, out strErr); if (strErr == "" && ds != null) { dataTable1.AcceptChanges(); JJBStaticFunction.SetRowEdit(urGridLTemp); if (!string.IsNullOrEmpty(strMess)) MessageBox.Show(strMess, "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); } else { MessageBox.Show("保存失败!输入信息已经存在或数据无效。", "错误"); } if (urGridLTemp.ActiveCell != null) urGridLTemp.ActiveCell.Activated = false; } } catch (System.Exception ex) { Console.WriteLine(ex.ToString()); } } private void InitSteel() { try { string strErr = ""; //获取钢种 ArrayList arrySteel = new ArrayList(); arrySteel.Add("GetSteelInfo.select"); CommonClientToServer cctos = new CommonClientToServer(); cctos.ob = this.ob; dsSteel = cctos.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBQuery", "doSimpleQuery", arrySteel, out strErr); if (strErr == "" && dsSteel != null) { //Core.Mes.Client.Common.Globals.FillUltraComboItems(ultcboSteel, dsSteel); JJBStaticFunction.SetGridDropDownListCell("ACTUAL_STEEL", 0, "钢种", 135, urGridLTemp, dsSteel.Tables[0], "STEELCODE", "STEELNAME"); } } catch { } } private void chkSteel_CheckedChanged(object sender, EventArgs e) { ultcboSteel.Enabled = chkSteel.Checked; } public void ExportDataWithSaveDialog(ref UltraGrid ultGrid, string strFileName) { try { if (ultGrid.Rows.Count == 0) return; if (strFileName.Length == 0) strFileName = "未命名"; SaveFileDialog dlg = new SaveFileDialog(); dlg.Title = "保存"; dlg.OverwritePrompt = true; dlg.Filter = "Excel文件(*.xls)|*.xls"; dlg.AddExtension = true; dlg.FileName = strFileName; if (dlg.ShowDialog() == DialogResult.OK) { strFileName = dlg.FileName; ultraGridExcelExporter1.Export(ultGrid, strFileName); if (MessageBox.Show("数据导出成功!\r\n需要打开所导出文件吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { ultraGridExcelExporter1.Export(ultGrid, strFileName); ProcessStartInfo p = new ProcessStartInfo(strFileName); p.WorkingDirectory = Path.GetDirectoryName(strFileName); Process.Start(p); } } } catch (Exception ex) { MessageBox.Show(ex.Message); } } private ValueList proc_ValueListRemark() { ValueList vlist = new ValueList(); try { vlist.ValueListItems.Add("是", "是"); vlist.ValueListItems.Add("否", "否"); } catch { } return vlist; } } }