frmCcmResults.cs 77 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Text;
  7. using System.Windows.Forms;
  8. using CoreFS.CA06;
  9. using System.Threading;
  10. using Infragistics.Win.UltraWinGrid;
  11. using System.Collections;
  12. using Core.LgMes.Client.Comm;
  13. using Core.LgMes.Client.LgDeviceManager;
  14. using Core.Mes.Client.Common;
  15. namespace Core.LgMes.Client.LgResMgt
  16. {
  17. public partial class frmCcmResults :CoreFS.CA06.FrmBase
  18. {
  19. private System.Threading.Thread myThread;
  20. private bool threadGoOn = true;
  21. private bool m_bJJBFlag = false, m_bDelay = false;
  22. private string DEVICE_POSITION = "";
  23. private int DEVICE_POS = 1;
  24. private DataSet m_dsLFSCZXX = new DataSet();
  25. private string m_szJRCLH = "", m_szLH = "", m_DisposalTime = "", datetime = System.DateTime.Now.ToString("HH:mm:ss");
  26. string strSteetCode = ""; //牌号
  27. private DataSet dsCLLX = new DataSet(); //材料厂家
  28. private Hashtable _htCcmJobInfo; // 用于作业信息的表字段数据
  29. private Hashtable _htCcmMouldInfo; // 用于浇次信息的表字段数据
  30. private Hashtable _UpdateBefore; //修改之前值
  31. private Hashtable _UpdateAfter; //修改之后值
  32. private Hashtable _UpdateColumnName; //修改字段名
  33. private Hashtable _UpdateBefore_Mould; //浇次信息修改之前值
  34. private Hashtable _UpdateAfter_Mould; //浇次信息修改之后值
  35. private Hashtable _UpdateColumnName_Mould; //浇次信息修改字段名
  36. public frmCcmResults()
  37. {
  38. InitializeComponent();
  39. CheckForIllegalCrossThreadCalls = false;
  40. }
  41. private void frmCcm_Load(object sender, EventArgs e)
  42. {
  43. string strErr = "";
  44. ultraDateTimeEditor4.Enabled = false;
  45. ultraDateTimeEditor3.Enabled = false;
  46. SetUserControlDelegate();
  47. //获取牌号信息
  48. ArrayList arry = new ArrayList();
  49. arry.Add("GetSteelInfo.select");
  50. CommonClientToServer cctos = new CommonClientToServer();
  51. cctos.ob = this.ob;
  52. DataSet ds = cctos.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBQuery",
  53. "doSimpleQuery", arry, out strErr);
  54. if (strErr == "" && ds != null)
  55. {
  56. Core.Mes.Client.Common.Globals.FillUltraComboItems(urlCb_steelNo, ds);
  57. }
  58. //初始化
  59. this.ultraGroupBox8.Appearance.BackColor = Color.Snow;
  60. this.ultraGroupBox8.BackColor = Color.Snow;
  61. this.panel1.BackColor = Color.Snow;
  62. ultraDataSource1.Rows.Add(new object[] { null });
  63. _htCcmJobInfo = new Hashtable();
  64. _htCcmMouldInfo = new Hashtable();
  65. _UpdateAfter = new Hashtable();
  66. _UpdateBefore = new Hashtable();
  67. _UpdateColumnName = new Hashtable();
  68. _UpdateAfter_Mould = new Hashtable();
  69. _UpdateBefore_Mould = new Hashtable();
  70. _UpdateColumnName_Mould = new Hashtable();
  71. if (this.Tag != null)
  72. {
  73. DEVICE_POSITION = "CCM0" + this.Tag.ToString().Substring(0, 1);
  74. DEVICE_POS = Convert.ToInt32(this.Tag.ToString().Substring(0, 1));
  75. }
  76. else
  77. {
  78. DEVICE_POSITION = this.CustomInfo.ToString();
  79. DEVICE_POS = Convert.ToInt32(this.CustomInfo.Substring(this.CustomInfo.Length - 1, 1));
  80. }
  81. // 初始化连铸实绩信息
  82. dsCcm_01.Tables["dtbCcm_01"].Rows.Add(new object[] { "", "", "", "", "", "", "", "", "", "", "", "" });
  83. dsCcm_02.Tables["dtbCcm_02"].Rows.Add(new object[] { "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" });
  84. dsCcm_03.Tables["dtbCcm_03"].Rows.Add(new object[] { "", "", "", "", "", "" });
  85. dsCcm_Element.Tables["dtbCcm_Element"].Rows.Add(new object[] { "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" });
  86. dsCcm_04.Tables["dtbCcm_04"].Rows.Add(new object[] { "", "", "", "", "", "" });
  87. dsCcmJc.Tables["dtbCcmJc"].Rows.Add(new object[] { "", "" });
  88. this.ultraDateTimeEditor4.Value = System.DateTime.Now;
  89. this.ultraDateTimeEditor3.Value = System.DateTime.Now;
  90. //打开窗口时,自动给班次赋初值为:全部
  91. this.cbbBC.Text = this.cbbBC.Items[cbbBC.Items.Count - 1].ToString();
  92. //刷新熔炼号信息
  93. RefreshStoveInfo(DateTime.Now.ToString("yyyy-MM-dd"), DateTime.Now.ToString("yyyy-MM-dd"), " where 1=1");
  94. //给熔炼号ultragrid绑定列
  95. //SetCaption();
  96. SetColumnRGB();
  97. //判断是否交班
  98. JudgeIfChangeClass();
  99. GetCLLX();
  100. if (dsCLLX != null)
  101. {
  102. DataTable dtCSK = new DataTable("Tbl");
  103. dtCSK.Merge(dsCLLX.Tables[0]);
  104. dtCSK.DefaultView.RowFilter = " 材料类型 = '长水口'";
  105. //ute_CSK.DataSource = dtCSK.DefaultView;
  106. //ute_CSK.DisplayMember = "factory";
  107. DataTable dtSSK = new DataTable("TblSsk");
  108. dtSSK.Merge(dsCLLX.Tables[0]);
  109. dtSSK.DefaultView.RowFilter = " 材料类型 = '上水口'";
  110. //ute_SSK.DataSource = dtSSK.DefaultView;
  111. //ute_SSK.DisplayMember = "factory";
  112. DataTable dtXSK = new DataTable("TblXsk");
  113. dtXSK.Merge(dsCLLX.Tables[0]);
  114. dtXSK.DefaultView.RowFilter = " 材料类型 = '下水口'";
  115. //ute_XSK.DataSource = dtXSK.DefaultView;
  116. //ute_XSK.DisplayMember = "factory";
  117. DataTable dtJRSSK = new DataTable("TblJrssk");
  118. dtJRSSK.Merge(dsCLLX.Tables[0]);
  119. dtJRSSK.DefaultView.RowFilter = " 材料类型 = '浸入式水口'";
  120. //ute_JRSSK.DataSource = dtJRSSK.DefaultView;
  121. //ute_JRSSK.DisplayMember = "factory";
  122. DataTable dtSB = new DataTable("TblSb");
  123. dtSB.Merge(dsCLLX.Tables[0]);
  124. dtSB.DefaultView.RowFilter = " 材料类型 = '塞棒'";
  125. //ute_SB.DataSource = dtSB.DefaultView;
  126. //ute_SB.DisplayMember = "factory";
  127. DataTable dtBFZ = new DataTable("TblBfz");
  128. dtBFZ.Merge(dsCLLX.Tables[0]);
  129. dtBFZ.DefaultView.RowFilter = " 材料类型 = '保护渣'";
  130. //ute_BFZ.DataSource = dtBFZ.DefaultView;
  131. //ute_BFZ.DisplayMember = "factory";
  132. }
  133. if (DEVICE_POS == 2 || DEVICE_POS == 3)
  134. {
  135. ultraGrid1.DisplayLayout.Bands[0].Columns["S1"].Header.Caption = "S0";
  136. ultraGrid1.DisplayLayout.Bands[0].Columns["S2"].Header.Caption = "S1";
  137. ultraGrid1.DisplayLayout.Bands[0].Columns["S3"].Header.Caption = "S2";
  138. ultraGrid1.DisplayLayout.Bands[0].Columns["S4"].Header.Caption = "S3";
  139. ultraGrid1.DisplayLayout.Bands[0].Columns["S5"].Header.Caption = "S4";
  140. }
  141. else
  142. {
  143. ultraGrid1.DisplayLayout.Bands[0].Columns["S1"].Header.Caption = "S1";
  144. ultraGrid1.DisplayLayout.Bands[0].Columns["S2"].Header.Caption = "S2";
  145. ultraGrid1.DisplayLayout.Bands[0].Columns["S3"].Header.Caption = "S3";
  146. ultraGrid1.DisplayLayout.Bands[0].Columns["S4"].Header.Caption = "S4";
  147. ultraGrid1.DisplayLayout.Bands[0].Columns["S5"].Header.Caption = "S5";
  148. }
  149. ucAdditives1.ob = this.ob;
  150. ucAdditives1.GetMaterialData();
  151. ucAdditives1.SetHopperInfo(DEVICE_POSITION);
  152. }
  153. /// <summary>
  154. /// 绑定材料厂家
  155. /// </summary>
  156. private void GetCLLX()
  157. {
  158. try
  159. {
  160. string szError = "";
  161. dsCLLX = null;//hengxing (DataSet)ClientCommon._RemotingHelp.ExecuteMethod("LgDeviceManager", "Core.LgMes.Server.LadleManager.LadleManager", "GetBaseCLLX_Factory", new object[] { }, out szError);
  162. if (szError == "")
  163. {
  164. //this.cboQToolName.DataSource = ds.Tables[0];
  165. //this.cboQToolName.DisplayMember = "材料类型";
  166. //this.cboParaID.DataSource = ds.Tables[0];
  167. //this.cboParaID.DisplayMember = "材料类型";
  168. }
  169. }
  170. catch (Exception ex)
  171. {
  172. MessageBox.Show(ex.Message);
  173. }
  174. }
  175. /// <summary>
  176. /// 如果加热处理号的第五位不为1的话,该行的背景色设为red
  177. /// </summary>
  178. private void SetColumnRGB()
  179. {
  180. try
  181. {
  182. if (this.udLH != null && udLH.Rows.Count > 0)
  183. {
  184. foreach (Infragistics.Win.UltraWinGrid.UltraGridRow row in this.udLH.Rows)
  185. {
  186. if (row.Cells["DisposalTime"].Value.ToString() != "01")
  187. {
  188. row.Appearance.BackColor = Color.Red;
  189. }
  190. else
  191. {
  192. row.Appearance.BackColor = Color.White;
  193. }
  194. if (row.Cells["HEATPROCESSNO"].Value.ToString() == m_szJRCLH)
  195. {
  196. if (udLH.ActiveRow != null)
  197. udLH.ActiveRow = row;
  198. }
  199. }
  200. }
  201. }
  202. catch
  203. {
  204. }
  205. }
  206. private void btn_QueryStove_Click(object sender, EventArgs e)
  207. {
  208. if (checkBox1.Checked)
  209. {
  210. string strShifcode = "", strPsteel = "", strHeatNo = "";
  211. if (this.cbbBC.Text != "全部")
  212. {
  213. int numBC = this.cbbBC.SelectedIndex + 1;
  214. strShifcode = numBC.ToString();
  215. }
  216. if (this.urlCb_steelNo.Text.Trim() != "")
  217. strPsteel = urlCb_steelNo.Text.ToString();
  218. if (this.utLH.Text.Trim() != "")
  219. strHeatNo = utLH.Text.Trim();
  220. QueryStoveInfo(Convert.ToDateTime(this.ultraDateTimeEditor4.Value.ToString()).ToString("yyyy-MM-dd"), Convert.ToDateTime(ultraDateTimeEditor3.Value.ToString()).ToString("yyyy-MM-dd"), strShifcode, strPsteel, strHeatNo);
  221. SetColumnRGB();
  222. //SetCaption();
  223. }
  224. else
  225. {
  226. MessageBox.Show("请选择起止日期!", "提示");
  227. }
  228. }
  229. /// <summary>
  230. /// 查询熔炼号信息
  231. /// </summary>
  232. /// <param name="szDate1"></param>
  233. /// <param name="szDate2"></param>
  234. /// <param name="szAnd"></param>
  235. private void QueryStoveInfo(string szDate1, string szDate2, string strShifcode, string strPsteel, string strHeatNo)
  236. {
  237. string strErr = "";
  238. ArrayList arry = new ArrayList();
  239. arry.Add("GetCCMHeatNoData.select");
  240. arry.Add(DEVICE_POS);
  241. arry.Add(strShifcode);
  242. arry.Add(strShifcode);
  243. arry.Add(strPsteel);
  244. arry.Add(strPsteel);
  245. arry.Add(strHeatNo);
  246. arry.Add(strHeatNo);
  247. arry.Add(szDate1);
  248. arry.Add(szDate2);
  249. arry.Add(DEVICE_POS);
  250. arry.Add(strShifcode);
  251. arry.Add(strShifcode);
  252. arry.Add(strPsteel);
  253. arry.Add(strPsteel);
  254. arry.Add(strHeatNo);
  255. arry.Add(strHeatNo);
  256. arry.Add(szDate1);
  257. arry.Add(szDate2);
  258. CommonClientToServer cctos = new CommonClientToServer();
  259. cctos.ob = this.ob;
  260. DataSet ds = cctos.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBQuery",
  261. "doSimpleQuery", arry, out strErr);
  262. if (strErr == "" && ds != null)
  263. {
  264. DataTable dt = ds.Tables[0];
  265. if (dt != null)
  266. {
  267. dsLH.Tables[0].Clear();
  268. dsLH.Tables[0].Merge(ds.Tables[0]);
  269. dt.TableName = "LHXX";
  270. if (m_dsLFSCZXX.Tables.Contains("LHXX"))
  271. m_dsLFSCZXX.Tables["LHXX"].Clear();
  272. m_dsLFSCZXX.Merge(dt);
  273. }
  274. }
  275. else
  276. {
  277. dsLH.Clear();
  278. }
  279. }
  280. // <summary>
  281. /// 点击熔炼号显示相关信息
  282. /// </summary>
  283. /// <param name="sender"></param>
  284. /// <param name="e"></param>
  285. private void udLH_AfterRowActivate(object sender, EventArgs e)
  286. {
  287. GetHeatnoInfo();
  288. }
  289. /// <summary>
  290. /// 获取熔炼号相关信息
  291. /// </summary>
  292. /// <param name="sender"></param>
  293. /// <param name="e"></param>
  294. public void GetHeatnoInfo()
  295. {
  296. try
  297. {
  298. //初使化窗体
  299. FormatThisForm();
  300. ResetData();
  301. if (udLH.ActiveRow != null)
  302. {
  303. m_szJRCLH = udLH.ActiveRow.Cells["HEATPROCESSNO"].Value.ToString();//加热处理号
  304. m_szLH = udLH.ActiveRow.Cells["HEATNO"].Value.ToString(); //熔炼号
  305. m_DisposalTime = udLH.ActiveRow.Cells["DisposalTime"].Value.ToString(); //处理次数
  306. //计划
  307. ucPlan1.ResetData();
  308. this.ucPlan1.ob = this.ob;
  309. this.ucPlan1.GetPlanInfo(m_szLH);
  310. //作业信息
  311. GetCcmData();
  312. //物料
  313. if (_htCcmJobInfo != null && !string.IsNullOrEmpty(_htCcmJobInfo["HEATNO"].ToString()))
  314. this.ucAdditives1.ob = this.ob;
  315. this.ucAdditives1.GetAdditiveData(_htCcmJobInfo["HEATNO"].ToString(), "G" + _htCcmJobInfo["STATIONCODE"].ToString(), _htCcmJobInfo["DISPOSALTIME"].ToString());
  316. //化学成分
  317. ucResChemelEment1.ResetData();
  318. this.ucResChemelEment1.ob = this.ob;
  319. ucResChemelEment1.GetCraftEleInfo(_htCcmJobInfo["HEATNO"].ToString(), "G0" + DEVICE_POS, "S", "");
  320. //化学成分标准
  321. if (ucPlan1._htPlanInfo["V_HEAT_ID"] != null)
  322. ucResChemelEment1.GetStandardElement(_htCcmJobInfo["HEATNO"].ToString());
  323. //填充化学成分标准
  324. ucResChemelEment1.FillCraftElement();
  325. //温度自动采样信息
  326. this.ucTempSampling1.ob = this.ob;
  327. ucTempSampling1.GetSampleData(_htCcmJobInfo["HEATNO"].ToString(), "G" + _htCcmJobInfo["STATIONCODE"].ToString(), _htCcmJobInfo["DISPOSALTIME"].ToString());
  328. ucTempSampling1.FillTemperatureData("TUNDISHTEMP2");
  329. //温度手动采样信息
  330. this.ucTempManualSampling1.ob = this.ob;
  331. ucTempManualSampling1.GetSampleData(_htCcmJobInfo["HEATNO"].ToString(), "G" + _htCcmJobInfo["STATIONCODE"].ToString(), _htCcmJobInfo["DISPOSALTIME"].ToString());
  332. ucTempManualSampling1.FillTemperatureData();
  333. //获取浇次信息
  334. if (_htCcmJobInfo != null && _htCcmJobInfo["MOULDNO"].ToString() != string.Empty)
  335. {
  336. GetMouldInfo(_htCcmJobInfo["MOULDNO"].ToString());
  337. }else
  338. GetMouldInfo(_htCcmJobInfo["MOULDNO"].ToString());
  339. _UpdateColumnName.Clear();
  340. _UpdateBefore.Clear();
  341. _UpdateAfter.Clear();
  342. _UpdateColumnName_Mould.Clear();
  343. _UpdateBefore_Mould.Clear();
  344. _UpdateAfter_Mould.Clear();
  345. }
  346. else
  347. MessageBox.Show("没有选择炉号!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
  348. }
  349. catch
  350. {
  351. }
  352. }
  353. /// <summary>
  354. /// 获取浇次信息
  355. /// </summary>
  356. /// <param name="strMouldNo"></param>
  357. private void GetMouldInfo(string strMouldNo)
  358. {
  359. try
  360. {
  361. string strErr = "";
  362. //获取牌号信息
  363. ArrayList arry = new ArrayList();
  364. arry.Add("GetCcmMouldInfo.select");
  365. arry.Add(strMouldNo);
  366. arry.Add(strMouldNo);
  367. CommonClientToServer cctos = new CommonClientToServer();
  368. cctos.ob = this.ob;
  369. DataSet ds = cctos.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBQuery",
  370. "doSimpleQuery", arry, out strErr);
  371. if (strErr == "")
  372. {
  373. DataTable dt = ds.Tables[0];
  374. if (dt.Rows.Count > 0)
  375. {
  376. for (int i = 0; i < dt.Columns.Count; i++)
  377. {
  378. if (_htCcmMouldInfo.Contains(dt.Columns[i].ColumnName))
  379. _htCcmMouldInfo.Remove(dt.Columns[i].ColumnName);
  380. _htCcmMouldInfo.Add(dt.Columns[i].ColumnName, dt.Rows[0][i].ToString());
  381. }
  382. SetMouldInof(_htCcmMouldInfo); //显示浇次信息
  383. }
  384. else
  385. _htCcmMouldInfo.Clear();
  386. }
  387. }
  388. catch { }
  389. }
  390. /// <summary>
  391. /// 初始化作业数据
  392. /// </summary>
  393. public void ResetData()
  394. {
  395. try
  396. {
  397. for (int i = 0; i < this.ultraDataSource1.Band.Columns.Count; i++)
  398. {
  399. if (this.ultraDataSource1.Band.Columns[i].DataType == typeof(System.DateTime))
  400. this.ultraDataSource1.Rows[0][i] = null;
  401. else
  402. this.ultraDataSource1.Rows[0][i] = "";
  403. }
  404. //浇次信息
  405. for (int i = 0; i < this.dsCcmJc.Tables[0].Columns.Count; i++)
  406. {
  407. if (this.dsCcmJc.Tables[0].Columns[i].DataType == typeof(System.DateTime))
  408. dsCcmJc.Tables[0].Rows[0][i] = null;
  409. else
  410. this.dsCcmJc.Tables[0].Rows[0][i] = "";
  411. }
  412. }
  413. catch { }
  414. }
  415. /// <summary>
  416. /// 获取作业信息
  417. /// </summary>
  418. private void GetCcmData()
  419. {
  420. try
  421. {
  422. string strErr = "", szWhere = " and HEATPROCESSNO='" + m_szJRCLH + "'";
  423. ArrayList arry = new ArrayList();
  424. arry.Add("GetCcmOperateInfo.select");
  425. arry.Add(m_szJRCLH);
  426. arry.Add(m_szJRCLH);
  427. arry.Add(m_szJRCLH);
  428. arry.Add(m_szJRCLH);
  429. CommonClientToServer cctos = new CommonClientToServer();
  430. cctos.ob = this.ob;
  431. DataSet ds = cctos.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBQuery",
  432. "doSimpleQuery", arry, out strErr);
  433. if (strErr == "")
  434. {
  435. DataTable dt = ds.Tables[0];
  436. if (dt.Rows.Count > 0)
  437. {
  438. for (int i = 0; i < dt.Columns.Count; i++)
  439. {
  440. if (_htCcmJobInfo.Contains(dt.Columns[i].ColumnName))
  441. _htCcmJobInfo.Remove(dt.Columns[i].ColumnName);
  442. _htCcmJobInfo.Add(dt.Columns[i].ColumnName, dt.Rows[0][i].ToString());
  443. }
  444. SetData(_htCcmJobInfo); //显示作业信息
  445. }
  446. else
  447. _htCcmJobInfo.Clear();
  448. }
  449. }
  450. catch { }
  451. }
  452. /// <summary>
  453. /// 显示作业信息
  454. /// </summary>
  455. /// <param name="ar"></param>
  456. public void SetData(Hashtable ar)
  457. {
  458. if (ar == null || ar.Count == 0)
  459. return;
  460. int count = this.ultraDataSource1.Band.Columns.Count;
  461. string strKey = "";
  462. //班次
  463. if (ar["SHIFTCODE"].ToString().Length > 1)
  464. ucPlan1.ultraDataSource1.Rows[0]["SHIFTCODE"] = ar["SHIFTCODE"].ToString().Substring(1, 1);
  465. //操作时间
  466. if (ar["OPTDATE"] != null)
  467. ucPlan1.ultraDataSource1.Rows[0]["OPTDATE"] = ar["OPTDATE"];
  468. //操作员
  469. if (ar["OPTPERSONNEL"] != null && !string.IsNullOrEmpty(ar["OPTPERSONNEL"].ToString()))
  470. ucPlan1.ultraDataSource1.Rows[0]["OPTPERSONNEL"] = ar["OPTPERSONNEL"];
  471. else
  472. ucPlan1.ultraDataSource1.Rows[0]["OPTPERSONNEL"] = "";
  473. for (int i = 0; i < count; i++)
  474. {
  475. try
  476. {
  477. strKey = this.ultraDataSource1.Band.Columns[i].Key;
  478. if (ar.Contains(strKey))
  479. {
  480. if (!string.IsNullOrEmpty(ar[strKey].ToString()))
  481. this.ultraDataSource1.Rows[0][i] = ar[strKey];
  482. else if (this.ultraDataSource1.Band.Columns[i].DataType == typeof(System.DateTime))
  483. this.ultraDataSource1.Rows[0][i] = null;
  484. else
  485. this.ultraDataSource1.Rows[0][i] = "";
  486. }
  487. else
  488. {
  489. //浇钢重量
  490. if (strKey == "MOULDWGT")
  491. {
  492. if (Convert.ToDouble(ar["PFBALEWGT"]) > 0 && Convert.ToDouble(ar["BALELEAVEWGT"]) > 0 && Convert.ToDouble(ar["PFBALEWGT"]) > Convert.ToDouble(ar["BALELEAVEWGT"]))
  493. this.ultraDataSource1.Rows[0][i] = Convert.ToDouble(ar["PFBALEWGT"]) - Convert.ToDouble(ar["BALELEAVEWGT"]);
  494. }
  495. else
  496. {
  497. if (this.ultraDataSource1.Band.Columns[i].DataType == typeof(System.DateTime))
  498. this.ultraDataSource1.Rows[0][i] = null;
  499. else
  500. this.ultraDataSource1.Rows[0][i] = "";
  501. }
  502. }
  503. }
  504. catch { }
  505. }
  506. }
  507. /// <summary>
  508. /// 显示浇次信息
  509. /// </summary>
  510. /// <param name="ar"></param>
  511. public void SetMouldInof(Hashtable ar)
  512. {
  513. if (ar == null || ar.Count == 0)
  514. return;
  515. int count = this.dsCcmJc.Tables[0].Columns.Count;
  516. string strKey = "";
  517. for (int i = 0; i < count; i++)
  518. {
  519. try
  520. {
  521. strKey = this.dsCcmJc.Tables[0].Columns[i].ColumnName;
  522. if (strKey == "MEMO") tb_SCJS.Text = ar["MEMO"].ToString(); //生厂记事
  523. if (ar.Contains(strKey))
  524. {
  525. if (!string.IsNullOrEmpty(ar[strKey].ToString()))
  526. this.dsCcmJc.Tables[0].Rows[0][i] = ar[strKey];
  527. else if (this.dsCcmJc.Tables[0].Columns[i].DataType == typeof(System.DateTime))
  528. this.dsCcmJc.Tables[0].Rows[0][i] = DBNull.Value;
  529. else
  530. this.dsCcmJc.Tables[0].Rows[0][i] = "";
  531. }
  532. else
  533. {
  534. if (this.dsCcmJc.Tables[0].Columns[i].DataType == typeof(System.DateTime))
  535. this.dsCcmJc.Tables[0].Rows[0][i] = DBNull.Value;
  536. else
  537. this.dsCcmJc.Tables[0].Rows[0][i] = "";
  538. }
  539. }
  540. catch { }
  541. }
  542. }
  543. /// <summary>
  544. /// 连铸实绩取S1,S2的水流量、压力和水温差
  545. /// </summary>
  546. /// <param name="m_szJRCLH"></param>
  547. private void GetCmmBMvalue(string m_szJRCLH)//此方法已废弃不用
  548. {
  549. try
  550. {
  551. string szOut = "";
  552. DataSet ds = null;
  553. if (szOut == "")
  554. {
  555. DataTable dt = ds.Tables[0];
  556. dt.TableName = "LHXX_S";
  557. if (m_dsLFSCZXX.Tables.Contains("LHXX_S"))
  558. m_dsLFSCZXX.Tables["LHXX_S"].Clear();
  559. m_dsLFSCZXX.Merge(dt);
  560. }
  561. }
  562. catch
  563. {
  564. }
  565. }
  566. /// <summary>
  567. /// 刷新熔炼号信息
  568. /// </summary>
  569. private void RefreshStoveInfo(string szDate1, string szDate2, string szAnd)
  570. {
  571. string strErr = "", szWhere = "";
  572. try
  573. {
  574. //WSID:工位号
  575. //OPTDATE:操作时间
  576. szWhere = szAnd + " and STATIONCODE='0" + DEVICE_POS.ToString() + "' and to_char(OPTDATE,'yyyy-MM-dd')>='" + szDate1 + "' and to_char(OPTDATE,'yyyy-MM-dd')<='" + szDate2 + "'";
  577. ArrayList arry = new ArrayList();
  578. arry.Add("GetCCMHNoData_Load.select");
  579. arry.Add(DEVICE_POS);
  580. arry.Add(szDate1);
  581. arry.Add(szDate2);
  582. arry.Add(DEVICE_POS);
  583. arry.Add(szDate1);
  584. arry.Add(szDate2);
  585. CommonClientToServer cctos = new CommonClientToServer();
  586. cctos.ob = this.ob;
  587. DataSet ds = cctos.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBQuery",
  588. "doSimpleQuery", arry, out strErr);
  589. if (strErr == "")
  590. {
  591. DataTable dt = ds.Tables[0];
  592. if (dt != null)
  593. {
  594. dsLH.Tables[0].Clear();
  595. dsLH.Tables[0].Merge(ds.Tables[0]);
  596. dt.TableName = "LHXX";
  597. if (m_dsLFSCZXX.Tables.Contains("LHXX"))
  598. m_dsLFSCZXX.Tables["LHXX"].Clear();
  599. m_dsLFSCZXX.Merge(dt);
  600. }
  601. }
  602. else
  603. {
  604. MessageBox.Show("查询失败!!!", "提示");
  605. dsLH.Clear();
  606. }
  607. }
  608. catch
  609. {
  610. }
  611. }
  612. /// <summary>
  613. /// 给熔炼号ultragrid绑定列
  614. /// </summary>
  615. private void SetCaption()
  616. {
  617. try
  618. {
  619. //HEATPROCESSNO:加热处理号
  620. //HEATNO:熔炼号(熔炼号)
  621. if (m_dsLFSCZXX.Tables["LHXX"] != null && m_dsLFSCZXX.Tables["LHXX"].Rows != null)
  622. {
  623. this.udLH.DataSource = m_dsLFSCZXX.Tables["LHXX"];
  624. if (m_dsLFSCZXX.Tables.Count > 0)
  625. {
  626. this.udLH.DataSource = m_dsLFSCZXX.Tables["LHXX"];
  627. this.udLH.DisplayLayout.Bands[0].Columns["HEATNO"].Width = 140;
  628. this.udLH.DisplayLayout.Bands[0].Columns["HEATNO"].Header.Caption = "熔炼号";
  629. this.udLH.DisplayLayout.Bands[0].Columns["HEATNO"].CellActivation = Infragistics.Win.UltraWinGrid.Activation.NoEdit;
  630. this.udLH.DisplayLayout.Bands[0].Columns["HEATNO"].SortIndicator = Infragistics.Win.UltraWinGrid.SortIndicator.Descending;
  631. this.udLH.DisplayLayout.Bands[0].Columns["HEATPROCESSNO"].Hidden = true;
  632. this.udLH.DisplayLayout.Bands[0].Columns["DisposalTime"].Hidden = true;
  633. }
  634. }
  635. }
  636. catch
  637. { }
  638. }
  639. /// <summary>
  640. /// 初使化所有窗体控件
  641. /// </summary>
  642. private void FormatThisForm()
  643. {
  644. try
  645. {
  646. this.dataTable5.Rows.Clear();
  647. this.dataTable4.Rows.Clear();
  648. }
  649. catch (Exception ex)
  650. {
  651. MessageBox.Show(ex.Message);
  652. }
  653. }
  654. /// <summary>
  655. /// 设置界面数据
  656. /// </summary>
  657. private void SetInterfaceData()
  658. {
  659. if (m_dsLFSCZXX.Tables.Contains("LFSCZXX") && m_dsLFSCZXX.Tables["LFSCZXX"].Rows.Count > 0)
  660. {
  661. DataRow dr = m_dsLFSCZXX.Tables["LFSCZXX"].Rows[0];
  662. strSteetCode = dr["SteelCode"].ToString();
  663. double dbS1tgl = 0;
  664. double dbS2tgl = 0;
  665. double dbTgl = 0;
  666. if (dr["S1TGL"] != null && !string.IsNullOrEmpty(dr["S1TGL"].ToString()))
  667. dbS1tgl = Convert.ToDouble(dr["S1TGL"]);
  668. if (dr["S2TGL"] != null && !string.IsNullOrEmpty(dr["S2TGL"].ToString()))
  669. dbS2tgl = Convert.ToDouble(dr["S2TGL"]);
  670. if (dr["TGL"] != null && !string.IsNullOrEmpty(dr["TGL"].ToString()))
  671. dbTgl = Convert.ToDouble(dr["TGL"]);
  672. tb_SCJS.Text = dr["SCJS"].ToString();//生产记事
  673. }
  674. if (m_dsLFSCZXX.Tables.Contains("LHXX_S") && m_dsLFSCZXX.Tables["LHXX_S"].Rows.Count > 0)
  675. {
  676. DataRow da = this.m_dsLFSCZXX.Tables["LHXX_S"].Rows[0];
  677. }
  678. }
  679. /// <summary>
  680. /// 时间计算比较两个时间差值(结果为分钟)
  681. /// </summary>
  682. /// <param name="startTime"></param>
  683. /// <param name="endTime"></param>
  684. /// <returns></returns>
  685. private int caculateTime(DateTime startTime, DateTime endTime)
  686. {
  687. int lStayDuration = 0;
  688. TimeSpan odtSpan;
  689. if (endTime > startTime)
  690. {
  691. odtSpan = endTime - startTime;
  692. lStayDuration = Convert.ToInt32(System.Math.Round(odtSpan.TotalMinutes));
  693. }
  694. return lStayDuration;
  695. }
  696. private void checkBox1_CheckedChanged(object sender, EventArgs e)
  697. {
  698. if (this.checkBox1.Checked == true)
  699. {
  700. threadGoOn = false;
  701. this.btn_QueryStove.Enabled = true;
  702. this.ultraDateTimeEditor4.Enabled = true;
  703. this.ultraDateTimeEditor3.Enabled = true;
  704. }
  705. else
  706. {
  707. threadGoOn = true;
  708. this.btn_QueryStove.Enabled = false;
  709. this.ultraDateTimeEditor4.Enabled = false;
  710. this.ultraDateTimeEditor3.Enabled = false;
  711. QueryLHInfo();
  712. }
  713. }
  714. private void button35_Click(object sender, EventArgs e)
  715. {
  716. DialogResult result = DialogResult.No;
  717. result = MessageBox.Show(this, "刷新将撤消界面上所做的修改,继续?", "提示", MessageBoxButtons.YesNo,
  718. MessageBoxIcon.Question, MessageBoxDefaultButton.Button1);
  719. if (result == DialogResult.Yes)
  720. {
  721. RefreshData();
  722. }
  723. }
  724. /// <summary>
  725. /// 刷新数据
  726. /// </summary>
  727. private void RefreshData()
  728. {
  729. if (m_szJRCLH != "" && m_szLH != "")
  730. {
  731. //初使化窗体
  732. FormatThisForm();
  733. ResetData();
  734. //计划
  735. ucPlan1.ResetData();
  736. this.ucPlan1.GetPlanInfo(m_szLH);
  737. //作业信息
  738. GetCcmData();
  739. //物料
  740. if (_htCcmJobInfo != null && !string.IsNullOrEmpty(_htCcmJobInfo["HEATNO"].ToString()))
  741. this.ucAdditives1.ob = this.ob;
  742. this.ucAdditives1.GetAdditiveData(_htCcmJobInfo["HEATNO"].ToString(), "G" + _htCcmJobInfo["STATIONCODE"].ToString(), _htCcmJobInfo["DISPOSALTIME"].ToString());
  743. //化学成分
  744. ucResChemelEment1.ResetData();
  745. this.ucResChemelEment1.ob = this.ob;
  746. ucResChemelEment1.GetCraftEleInfo(_htCcmJobInfo["HEATNO"].ToString(), "G0" + DEVICE_POS, "S", "");
  747. //化学成分标准
  748. if (ucPlan1._htPlanInfo["V_HEAT_ID"] != null)
  749. this.ucResChemelEment1.ob = this.ob;
  750. ucResChemelEment1.GetStandardElement(_htCcmJobInfo["HEATNO"].ToString());
  751. ////化学成分标准
  752. //if (_htCcmJobInfo != null && _htCcmJobInfo["PLANSTEEL"] != null)
  753. // ucResChemelEment1.GetStandardElement(_htCcmJobInfo["PLANSTEEL"].ToString(), ucPlan1.ultraDataSource1.Rows[0]["CAST_ID"].ToString());
  754. ucResChemelEment1.FillCraftElement();
  755. //温度采样信息
  756. this.ucTempSampling1.ob = this.ob;
  757. ucTempSampling1.GetSampleData(_htCcmJobInfo["HEATNO"].ToString(), "G" + _htCcmJobInfo["STATIONCODE"].ToString(), _htCcmJobInfo["DISPOSALTIME"].ToString());
  758. ucTempSampling1.FillTemperatureData("TEMPERATURE");
  759. //温度手动采样信息
  760. this.ucTempSampling1.ob = this.ob;
  761. ucTempManualSampling1.GetSampleData(_htCcmJobInfo["HEATNO"].ToString(), "G" + _htCcmJobInfo["STATIONCODE"].ToString(), _htCcmJobInfo["DISPOSALTIME"].ToString());
  762. ucTempManualSampling1.FillTemperatureData();
  763. _UpdateColumnName.Clear();
  764. _UpdateBefore.Clear();
  765. _UpdateAfter.Clear();
  766. _UpdateColumnName_Mould.Clear();
  767. _UpdateBefore_Mould.Clear();
  768. _UpdateAfter_Mould.Clear();
  769. }
  770. }
  771. /// <summary>
  772. /// 保存
  773. /// </summary>
  774. /// <param name="sender"></param>
  775. /// <param name="e"></param>
  776. private void Save()
  777. {
  778. if (ucPlan1.ultraDataSource1.Rows[0]["HEATNO"].ToString().Trim().Length == 0)
  779. {
  780. MessageBox.Show("请选择要更新的熔炼号!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
  781. return;
  782. }
  783. SaveData(); //保存数据
  784. RefreshData(); //刷新数据
  785. }
  786. /// <summary>
  787. /// 保存作业信息
  788. /// </summary>
  789. private void SaveData()
  790. {
  791. string strHeatNo = "";  //熔炼号
  792. string strStationCode = ""; //岗位编码
  793. string strDisposaltime = ""; //处理次数
  794. ArrayList alColumnName = new ArrayList(); //保存作业字段名
  795. ArrayList alValue = new ArrayList(); //保存作业字段值
  796. ArrayList alColumnType = new ArrayList(); //保存字段类型
  797. ArrayList alMaterielcode = new ArrayList(); //物料编码
  798. ArrayList alJMType = new ArrayList();   //加料类型
  799. ArrayList alJMWGT = new ArrayList();   //加料重量
  800. ArrayList alMaterielType = new ArrayList(); //物料类型
  801. strHeatNo = _htCcmJobInfo["HEATNO"].ToString();
  802. strStationCode = CStaticMethod.analysProcess(DEVICE_POSITION.Substring(0, 3)) + _htCcmJobInfo["STATIONCODE"].ToString();
  803. strDisposaltime = _htCcmJobInfo["DISPOSALTIME"].ToString();
  804. /*if (_UpdateColumnName == null || _UpdateColumnName.Count == 0)
  805. {
  806. MessageBox.Show("当前没做任何修改不需要保存!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
  807. return;
  808. }*/
  809. ultraDataSource1.Rows[0]["MOULDBALEWGT"] = ultraDataSource1.Rows[0]["BALELEAVEWGT"];
  810. //作业数据
  811. for (int intCount = 0; intCount < ultraDataSource1.Band.Columns.Count; intCount++)
  812. {
  813. if (ultraDataSource1.Band.Columns[intCount].Key.ToString() != "MOULDWGT") //浇钢重量是上台重量-下台重量
  814. {
  815. //判断是否修改过
  816. if (_UpdateColumnName.ContainsKey(ultraDataSource1.Band.Columns[intCount].Key.ToString()))
  817. {
  818. alColumnName.Add(ultraDataSource1.Band.Columns[intCount].Key.ToString());
  819. alValue.Add((ultraDataSource1.Rows[0][intCount].ToString().Trim().Length > 0) ? ultraDataSource1.Rows[0][intCount].ToString() : "Empty");
  820. alColumnType.Add(ultraDataSource1.Band.Columns[intCount].DataType.ToString());
  821. }
  822. }
  823. }
  824. //班次
  825. string strShiftCode = "";
  826. if (_htCcmJobInfo["SHIFTCODE"] != null && _htCcmJobInfo["SHIFTCODE"].ToString().Length > 1)
  827. strShiftCode = _htCcmJobInfo["SHIFTCODE"].ToString().Substring(0, 1) + ucPlan1.ultraGrid1.Rows[0].Cells["SHIFTCODE"].Value.ToString();
  828. //班次
  829. alColumnName.Add("SHIFTCODE");
  830. alValue.Add((strShiftCode.Length > 0) ? strShiftCode : "Empty");
  831. alColumnType.Add("System.String");
  832. //操作员
  833. alColumnName.Add("OPTPERSONNEL");
  834. string OPTPERSONNEL = "";
  835. if (ucPlan1.ultraDataSource1.Rows[0]["OPTPERSONNEL"].ToString() == "")
  836. {
  837. OPTPERSONNEL = this.UserInfo.GetUserName();
  838. }
  839. else
  840. {
  841. if (this._htCcmJobInfo["OPTPERSONNEL"].ToString() == "")
  842. {
  843. OPTPERSONNEL = this.UserInfo.GetUserName();
  844. }
  845. else
  846. {
  847. if (ucPlan1.ultraDataSource1.Rows[0]["OPTPERSONNEL"].ToString() != this._htCcmJobInfo["OPTPERSONNEL"].ToString())
  848. OPTPERSONNEL = ucPlan1.ultraDataSource1.Rows[0]["OPTPERSONNEL"].ToString();
  849. else
  850. OPTPERSONNEL = this._htCcmJobInfo["OPTPERSONNEL"].ToString();
  851. }
  852. }
  853. alValue.Add(OPTPERSONNEL);
  854. alColumnType.Add("System.String");
  855. //辅料数据
  856. for (int intCount = 0; intCount < ucAdditives1.ulgridPrcMtr.DisplayLayout.Bands[0].Columns.Count; intCount++)
  857. {
  858. if (ucAdditives1.ulgridPrcMtr.DisplayLayout.Bands[0].Columns[intCount].Tag != null)
  859. {
  860. string strKey = ucAdditives1.ulgridPrcMtr.DisplayLayout.Bands[0].Columns[intCount].Key.ToString();
  861. //判断是否修改过
  862. if (_UpdateColumnName.ContainsKey(strKey) &&
  863. _UpdateColumnName.ContainsValue(ucAdditives1.ulgridPrcMtr.DisplayLayout.Bands[0].Columns[intCount].Header.Caption))
  864. {
  865. alMaterielcode.Add(ucAdditives1.ulgridPrcMtr.DisplayLayout.Bands[0].Columns[intCount].Tag.ToString());
  866. alJMWGT.Add((ucAdditives1.ulgridPrcMtr.Rows[0].Cells[strKey].Value.ToString().Trim().Length > 0) ? ucAdditives1.ulgridPrcMtr.Rows[0].Cells[strKey].Value.ToString() : "Empty");
  867. alJMType.Add("1");
  868. alMaterielType.Add("FL");
  869. }
  870. }
  871. }
  872. /*//合金数据
  873. for (int intCount = 0; intCount < ucAdditives1.ultgridAlloy.DisplayLayout.Bands[0].Columns.Count; intCount++)
  874. {
  875. if (ucAdditives1.ultgridAlloy.DisplayLayout.Bands[0].Columns[intCount].Tag != null)
  876. {
  877. string strKey = ucAdditives1.ultgridAlloy.DisplayLayout.Bands[0].Columns[intCount].Key.ToString();
  878. //判断是否修改过
  879. if (_UpdateColumnName.ContainsKey(strKey) &&
  880. _UpdateColumnName.ContainsValue(ucAdditives1.ultgridAlloy.DisplayLayout.Bands[0].Columns[intCount].Header.Caption))
  881. {
  882. alMaterielcode.Add(ucAdditives1.ultgridAlloy.DisplayLayout.Bands[0].Columns[intCount].Tag.ToString());
  883. alJMWGT.Add((ucAdditives1.ultgridAlloy.Rows[0].Cells[strKey].Value.ToString().Trim().Length > 0) ? ucAdditives1.ultgridAlloy.Rows[0].Cells[strKey].Value.ToString() : "Empty");
  884. alJMType.Add("1");
  885. alMaterielType.Add("HJ");
  886. }
  887. }
  888. }
  889. //喂丝数据
  890. for (int intCount = 0; intCount < ucAdditives1.ultgridWs.DisplayLayout.Bands[0].Columns.Count; intCount++)
  891. {
  892. if (ucAdditives1.ultgridWs.DisplayLayout.Bands[0].Columns[intCount].Tag != null)
  893. {
  894. string strKey = ucAdditives1.ultgridWs.DisplayLayout.Bands[0].Columns[intCount].Key.ToString();
  895. //判断是否修改过
  896. if (_UpdateColumnName.ContainsKey(strKey) &&
  897. _UpdateColumnName.ContainsValue(ucAdditives1.ultgridWs.DisplayLayout.Bands[0].Columns[intCount].Header.Caption))
  898. {
  899. alMaterielcode.Add(ucAdditives1.ultgridWs.DisplayLayout.Bands[0].Columns[intCount].Tag.ToString());
  900. alJMWGT.Add((ucAdditives1.ultgridWs.Rows[0].Cells[strKey].Value.ToString().Trim().Length > 0) ? ucAdditives1.ultgridWs.Rows[0].Cells[strKey].Value.ToString() : "Empty");
  901. alJMType.Add("1");
  902. alMaterielType.Add("WS");
  903. }
  904. }
  905. }*/
  906. //手投料
  907. for (int intCount = 0; intCount < ucAdditives1.ultgridManual.DisplayLayout.Bands[0].Columns.Count; intCount++)
  908. {
  909. if (ucAdditives1.ultgridManual.DisplayLayout.Bands[0].Columns[intCount].Tag != null && ucAdditives1.ultgridManual.DisplayLayout.Bands[0].Columns[intCount].Header.Caption != "")
  910. {
  911. string strKey = ucAdditives1.ultgridManual.DisplayLayout.Bands[0].Columns[intCount].Key.ToString();
  912. //判断是否修改过
  913. if (_UpdateColumnName.ContainsKey(strKey) &&
  914. _UpdateColumnName.ContainsValue(ucAdditives1.ultgridManual.DisplayLayout.Bands[0].Columns[intCount].Header.Caption))
  915. {
  916. alMaterielcode.Add(ucAdditives1.ultgridManual.DisplayLayout.Bands[0].Columns[intCount].Tag.ToString());
  917. alJMWGT.Add((ucAdditives1.ultgridManual.Rows[0].Cells[strKey].Value.ToString().Trim().Length > 0) ? ucAdditives1.ultgridManual.Rows[0].Cells[strKey].Value.ToString() : "Empty");
  918. alJMType.Add("2");
  919. alMaterielType.Add("ST"); //手投类型到后台再获取
  920. }
  921. }
  922. }
  923. string strSqlID = "SaveResData.Update";
  924. object[] sArgs = new object[10];
  925. sArgs[0] = strHeatNo; //熔炼号
  926. sArgs[1] = strStationCode; //岗位
  927. sArgs[2] = strDisposaltime;//处理次数
  928. sArgs[3] = alColumnName; //作业字段名
  929. sArgs[4] = alValue; //作业数据值
  930. sArgs[5] = alColumnType; //作业数据类型
  931. sArgs[6] = alMaterielcode; //物料编码
  932. sArgs[7] = alJMType; //加料类型(料仓,手投)
  933. sArgs[8] = alJMWGT; //加料重量
  934. sArgs[9] = alMaterielType; //物料类型
  935. string strError = "";
  936. DialogResult result = DialogResult.No;
  937. result = MessageBox.Show(this, "确实要保存信息吗?", "提示", MessageBoxButtons.YesNo,
  938. MessageBoxIcon.Question, MessageBoxDefaultButton.Button1);
  939. if (result == DialogResult.Yes)
  940. {
  941. Cursor oldCursor = this.Cursor;
  942. this.Cursor = Cursors.WaitCursor;//等待光标
  943. try
  944. {
  945. CommonClientToServer ccTs = new CommonClientToServer();
  946. ccTs.ob = ob;
  947. string strRCode = ccTs.ExecuteProcedureFunctions("Core.LgMes.Server.Common.ComDBProcedure",
  948. "ExecProcWithCollParam", strSqlID, sArgs, out strError);
  949. if (strError != "")
  950. {
  951. this.Cursor = oldCursor;
  952. MessageBox.Show("保存不成功!\n" + strError, "错误!", MessageBoxButtons.OK, MessageBoxIcon.Error);
  953. return;
  954. }
  955. else
  956. {
  957. this.Cursor = oldCursor;
  958. if (_UpdateColumnName != null && _UpdateColumnName.Count > 0)
  959. {
  960. bool blReturn = StaticFunction.SaveUpdateLog(strHeatNo, strStationCode, strDisposaltime, _UpdateColumnName, _UpdateBefore, _UpdateAfter, this.ob);
  961. if (blReturn == true)
  962. {
  963. _UpdateColumnName.Clear();
  964. _UpdateBefore.Clear();
  965. _UpdateAfter.Clear();
  966. }
  967. }
  968. }
  969. }
  970. catch (System.Exception exp)
  971. {
  972. this.Cursor = oldCursor;
  973. MessageBox.Show("保存不成功!\n" + exp.ToString(), "错误!", MessageBoxButtons.OK, MessageBoxIcon.Error);
  974. }
  975. }
  976. }
  977. /// <summary>
  978. /// 取当前班次
  979. /// </summary>
  980. private string GetClassCode()//此方法已废弃不用
  981. {
  982. #region "取班次编码"
  983. string szCurrClass = "";
  984. return (szCurrClass);
  985. #endregion
  986. }
  987. private void button2_Click(object sender, EventArgs e)
  988. {
  989. try
  990. {
  991. if (m_szJRCLH != "")
  992. {
  993. string strErr = "";
  994. DialogResult result = DialogResult.No;
  995. result = MessageBox.Show(this, "确实要保存信息吗?", "提示", MessageBoxButtons.YesNo,
  996. MessageBoxIcon.Question, MessageBoxDefaultButton.Button1);
  997. if (result == DialogResult.Yes)
  998. {
  999. Cursor oldCursor = this.Cursor;
  1000. this.Cursor = Cursors.WaitCursor;//等待光标
  1001. try
  1002. {
  1003. ArrayList arry = new ArrayList();
  1004. arry.Add("UpdateMouldInfo.select");//此ID为XML文件ID
  1005. #region 浇次信息保存参数
  1006. arry.Add(dsCcmJc.Tables[0].Rows[0]["MWRAPNO"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["BALESTARTTIME"].ToString());
  1007. arry.Add(dsCcmJc.Tables[0].Rows[0]["BALEENDTIME"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["BALEENDDATE"].ToString());
  1008. arry.Add(dsCcmJc.Tables[0].Rows[0]["ACCIDENTENDTIME"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["S1CRYSTALCODE"].ToString());
  1009. arry.Add(dsCcmJc.Tables[0].Rows[0]["S2CRYSTALCODE"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["S3CRYSTALCODE"].ToString());
  1010. arry.Add(dsCcmJc.Tables[0].Rows[0]["S4CRYSTALCODE"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["S5CRYSTALCODE"].ToString());
  1011. arry.Add(dsCcmJc.Tables[0].Rows[0]["S1STARTTIME"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["S2STARTTIME"].ToString());
  1012. arry.Add(dsCcmJc.Tables[0].Rows[0]["S3STARTTIME"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["S4STARTTIME"].ToString());
  1013. arry.Add(dsCcmJc.Tables[0].Rows[0]["S5STARTTIME"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["S1ENDTIME"].ToString());
  1014. arry.Add(dsCcmJc.Tables[0].Rows[0]["S2ENDTIME"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["S3ENDTIME"].ToString());
  1015. arry.Add(dsCcmJc.Tables[0].Rows[0]["S4ENDTIME"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["S5ENDTIME"].ToString());
  1016. arry.Add(dsCcmJc.Tables[0].Rows[0]["S1ENDCAUSE"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["S2ENDCAUSE"].ToString());
  1017. arry.Add(dsCcmJc.Tables[0].Rows[0]["S3ENDCAUSE"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["S4ENDCAUSE"].ToString());
  1018. arry.Add(dsCcmJc.Tables[0].Rows[0]["S5ENDCAUSE"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["S1PLANENDTIME"].ToString());
  1019. arry.Add(dsCcmJc.Tables[0].Rows[0]["S2PLANENDTIME"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["S3PLANENDTIME"].ToString());
  1020. arry.Add(dsCcmJc.Tables[0].Rows[0]["S4PLANENDTIME"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["S5PLANENDTIME"].ToString());
  1021. arry.Add(dsCcmJc.Tables[0].Rows[0]["S1ENDOVERTIME"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["S2ENDOVERTIME"].ToString());
  1022. arry.Add(dsCcmJc.Tables[0].Rows[0]["S3ENDOVERTIME"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["S4ENDOVERTIME"].ToString());
  1023. arry.Add(dsCcmJc.Tables[0].Rows[0]["S5ENDOVERTIME"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["S1CUTFRONT"].ToString());
  1024. arry.Add(dsCcmJc.Tables[0].Rows[0]["S2CUTFRONT"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["S3CUTFRONT"].ToString());
  1025. arry.Add(dsCcmJc.Tables[0].Rows[0]["S4CUTFRONT"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["S5CUTFRONT"].ToString());
  1026. arry.Add(dsCcmJc.Tables[0].Rows[0]["S1CUTBACK"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["S2CUTBACK"].ToString());
  1027. arry.Add(dsCcmJc.Tables[0].Rows[0]["S3CUTBACK"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["S4CUTBACK"].ToString());
  1028. arry.Add(dsCcmJc.Tables[0].Rows[0]["S5CUTBACK"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["UPGAP"].ToString());
  1029. arry.Add(dsCcmJc.Tables[0].Rows[0]["DOWNGAP"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["STUFFSTICK"].ToString());
  1030. arry.Add(dsCcmJc.Tables[0].Rows[0]["PROTECTDTEG"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["S1CRPASSSTEELWEIGHT"].ToString());//50
  1031. arry.Add(dsCcmJc.Tables[0].Rows[0]["S2CRPASSSTEELWEIGHT"].ToString());arry.Add(tb_SCJS.Text);//备注
  1032. arry.Add(dsCcmJc.Tables[0].Rows[0]["S3CRPASSSTEELWEIGHT"].ToString());
  1033. arry.Add(dsCcmJc.Tables[0].Rows[0]["S4CRPASSSTEELWEIGHT"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["S5CRPASSSTEELWEIGHT"].ToString());
  1034. arry.Add(dsCcmJc.Tables[0].Rows[0]["MWRAPBESTROWNAME"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["MWRAPBESTROWDOSAGE"].ToString());
  1035. arry.Add(dsCcmJc.Tables[0].Rows[0]["PROTECTDTEGDOSAGE"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["MINFIREBEGINTIME"].ToString());
  1036. arry.Add(dsCcmJc.Tables[0].Rows[0]["MIDDLEFIREBEGINTIME"].ToString()); arry.Add(dsCcmJc.Tables[0].Rows[0]["MAXBEGINTIME"].ToString());
  1037. arry.Add(dsCcmJc.Tables[0].Rows[0]["MOULDNO"].ToString());
  1038. #endregion
  1039. CommonClientToServer cctos = new CommonClientToServer();
  1040. cctos.ob = this.ob;
  1041. DataSet ds = cctos.ExecuteQueryFunctions("Core.LgMes.Server.Common.ComDBSave",
  1042. "doSimpleSave", arry, out strErr);
  1043. if (strErr != "")
  1044. {
  1045. this.Cursor = oldCursor;
  1046. MessageBox.Show("保存不成功!\n" + strErr, "错误!", MessageBoxButtons.OK, MessageBoxIcon.Error);
  1047. return;
  1048. }
  1049. else
  1050. {
  1051. this.Cursor = oldCursor;
  1052. if (_UpdateColumnName_Mould != null && _UpdateColumnName_Mould.Count > 0)
  1053. {
  1054. bool blReturn = StaticFunction.SaveUpdateLog(dsCcmJc.Tables[0].Rows[0]["MOULDNO"].ToString(), CStaticMethod.analysProcess(DEVICE_POSITION.Substring(0, 3)) + _htCcmJobInfo["STATIONCODE"].ToString(), "浇次信息", _UpdateColumnName_Mould, _UpdateBefore_Mould, _UpdateAfter_Mould, this.ob);
  1055. if (blReturn == true)
  1056. {
  1057. _UpdateColumnName_Mould.Clear();
  1058. _UpdateBefore_Mould.Clear();
  1059. _UpdateAfter_Mould.Clear();
  1060. }
  1061. }
  1062. }
  1063. }
  1064. catch (System.Exception exp)
  1065. {
  1066. this.Cursor = oldCursor;
  1067. MessageBox.Show("保存不成功!\n" + exp.ToString(), "错误!", MessageBoxButtons.OK, MessageBoxIcon.Error);
  1068. }
  1069. GetMouldInfo(_htCcmJobInfo["MOULDNO"].ToString()); //刷新数据
  1070. }
  1071. }
  1072. else
  1073. {
  1074. MessageBox.Show("浇次表中没有对应的浇次号记录!\n\n无法保存数据!", "提示");
  1075. return;
  1076. }
  1077. }
  1078. catch (Exception ex)
  1079. {
  1080. MessageBox.Show(ex.Message);
  1081. }
  1082. }
  1083. private void button36_Click(object sender, EventArgs e)
  1084. {
  1085. foreach (Form mdiChild in this.MdiParent.MdiChildren)
  1086. {
  1087. if (mdiChild.Text == DEVICE_POS + "#连铸交接班管理")
  1088. {
  1089. mdiChild.Activate();
  1090. return;
  1091. }
  1092. }
  1093. frmCcmMgt frm = new frmCcmMgt(DEVICE_POSITION);
  1094. frm.Text = frm.Text = DEVICE_POS + "#连铸交接班管理";
  1095. frm.MdiParent = this.MdiParent;
  1096. frm.Show();
  1097. }
  1098. /// <summary>
  1099. /// 判断是否交班
  1100. /// </summary>
  1101. private void JudgeIfChangeClass()
  1102. {
  1103. try
  1104. {
  1105. myThread = new Thread(new ThreadStart(QueryClass));
  1106. myThread.Priority = ThreadPriority.Highest;
  1107. myThread.Start();
  1108. }
  1109. catch (Exception ex)
  1110. {
  1111. MessageBox.Show(ex.Message);
  1112. }
  1113. }
  1114. public override void ToolBar_Click(object sender, string ToolbarKey)
  1115. {
  1116. switch (ToolbarKey)
  1117. {
  1118. case "Relieve":
  1119. foreach (Form mdiChild in this.MdiParent.MdiChildren)
  1120. {
  1121. if (mdiChild.Text == DEVICE_POS + "#炼钢转炉交接班管理")
  1122. {
  1123. mdiChild.Activate();
  1124. return;
  1125. }
  1126. }
  1127. frmCcmMgt frm = new frmCcmMgt(DEVICE_POSITION);
  1128. frm.Text = DEVICE_POS + "#炼钢转炉交接班管理";
  1129. frm.MdiParent = this.MdiParent;
  1130. frm.AutoSize = true;
  1131. frm.Show();
  1132. break;
  1133. case "Refresh":
  1134. DialogResult result = DialogResult.No;
  1135. result = MessageBox.Show(this, "刷新将撤消界面上所做的修改,继续?", "提示", MessageBoxButtons.YesNo,
  1136. MessageBoxIcon.Question, MessageBoxDefaultButton.Button1);
  1137. if (result == DialogResult.Yes)
  1138. {
  1139. RefreshData();
  1140. }
  1141. break;
  1142. case "Save"://新增
  1143. udLH.Select(); //释放焦点
  1144. Save();
  1145. break;
  1146. case "Exit":
  1147. this.Close();
  1148. break;
  1149. default:
  1150. break;
  1151. }
  1152. }
  1153. /// <summary>
  1154. /// 实时刷新判断是否是交接班时间
  1155. /// </summary>
  1156. private void QueryClass()
  1157. {
  1158. try
  1159. {
  1160. int i = 0, scanLH = 5;
  1161. System.Windows.Forms.Control.CheckForIllegalCrossThreadCalls = false;
  1162. while (true)
  1163. {
  1164. if (!this.On_Off_Thread)//!this.On_Off_Thread
  1165. {
  1166. System.Threading.Thread.Sleep(500);
  1167. continue;
  1168. }
  1169. Thread.Sleep(1000 * 5);
  1170. string strError = "";
  1171. DateTime currTime = DateTime.Now;
  1172. if (strError == "")
  1173. {
  1174. datetime = currTime.ToString("HH:mm:ss");
  1175. }
  1176. string Z1 = "07:45:00", Z2 = "08:16:00", Z3 = "15:45:00", Z4 = "16:16:00", Z5 = "23:45:00", Z6 = "23:59:59", Z7 = "00:00:00", Z8 = "00:00:16";
  1177. if ((string.Compare(datetime, Z1) >= 0 && string.Compare(datetime, Z2) < 0)
  1178. || (string.Compare(datetime, Z3) >= 0 && string.Compare(datetime, Z4) < 0)
  1179. || (string.Compare(datetime, Z5) >= 0 && string.Compare(datetime, Z6) < 0)
  1180. || (string.Compare(datetime, Z7) >= 0 && string.Compare(datetime, Z8) < 0))
  1181. {
  1182. ucPlan1.ultraGrid1.Rows[0].Cells["cue"].Value = "交接班时间到!";
  1183. ucPlan1.ultraGrid1.Rows[0].Cells["cue"].Appearance.FontData.SizeInPoints = 15;
  1184. ucPlan1.ultraGrid1.Rows[0].Cells["cue"].Appearance.FontData.Bold = Infragistics.Win.DefaultableBoolean.True;
  1185. switch (i)
  1186. {
  1187. case 0:
  1188. ucPlan1.ultraGrid1.Rows[0].Cells["cue"].Appearance.ForeColor = Color.Blue;
  1189. break;
  1190. case 1:
  1191. ucPlan1.ultraGrid1.Rows[0].Cells["cue"].Appearance.ForeColor = Color.Red;
  1192. break;
  1193. case 2:
  1194. ucPlan1.ultraGrid1.Rows[0].Cells["cue"].Appearance.ForeColor = Color.SeaGreen;
  1195. break;
  1196. case 3:
  1197. ucPlan1.ultraGrid1.Rows[0].Cells["cue"].Appearance.ForeColor = Color.Green;
  1198. break;
  1199. case 4:
  1200. ucPlan1.ultraGrid1.Rows[0].Cells["cue"].Appearance.ForeColor = Color.Gray;
  1201. break;
  1202. default:
  1203. ucPlan1.ultraGrid1.Rows[0].Cells["cue"].Appearance.ForeColor = Color.LightSeaGreen;
  1204. i = -1;
  1205. break;
  1206. }
  1207. i++;
  1208. if (button36.Enabled == false)
  1209. button36.Enabled = true;
  1210. }
  1211. else
  1212. {
  1213. if (button36.Enabled == true)
  1214. button36.Enabled = false;
  1215. m_bJJBFlag = false;
  1216. m_bDelay = false;
  1217. // lb_JBTS.Text = "";
  1218. }
  1219. scanLH++;
  1220. if (scanLH == 6)
  1221. {
  1222. scanLH = 0;
  1223. QueryLHInfo();
  1224. }
  1225. }
  1226. }
  1227. catch
  1228. {
  1229. myThread.Abort();
  1230. }
  1231. }
  1232. /// <summary>
  1233. /// 刷新熔炼号信息
  1234. /// </summary>
  1235. private void QueryLHInfo()
  1236. {
  1237. if (threadGoOn)
  1238. {
  1239. RefreshStoveInfo(DateTime.Now.ToString("yyyy-MM-dd"), DateTime.Now.ToString("yyyy-MM-dd"), " where 1=1");
  1240. SetColumnRGB();
  1241. }
  1242. }
  1243. private void btAddLH_Click(object sender, EventArgs e)
  1244. {
  1245. }
  1246. /// <summary>
  1247. /// 手动新增一个新熔炼号后,刷新熔炼号信息
  1248. /// </summary>
  1249. public void AfterAddNewLH(string v_JRCLH)
  1250. {
  1251. m_szJRCLH = v_JRCLH;
  1252. RefreshStoveInfo(DateTime.Now.ToString("yyyy-MM-dd"), DateTime.Now.ToString("yyyy-MM-dd"), " where 1=1");
  1253. SetColumnRGB();
  1254. }
  1255. private void button4_Click(object sender, EventArgs e)
  1256. {
  1257. FrmTundishManage ftd = new FrmTundishManage();
  1258. foreach (Form mdiChild in this.MdiParent.MdiChildren)
  1259. {
  1260. if (mdiChild.Text == "中间包信息管理")
  1261. {
  1262. mdiChild.Activate();
  1263. return;
  1264. }
  1265. }
  1266. ftd.MdiParent = this.MdiParent;
  1267. ftd.ob = this.ob;
  1268. ftd.Key = "Core.LgMes.Client.LgDeviceManager.FrmTundishManage";
  1269. ftd.Toolbar = CStaticMethod.GetFromToolInfo(ftd.Key, "", ob);
  1270. ftd.Show();
  1271. }
  1272. private void button3_Click(object sender, EventArgs e)
  1273. {
  1274. string strTitle = "";
  1275. strTitle = "结晶器管理";
  1276. foreach (Form mdiChild in this.MdiParent.MdiChildren)
  1277. {
  1278. if (mdiChild.Text == strTitle)
  1279. {
  1280. mdiChild.Activate();
  1281. return;
  1282. }
  1283. }
  1284. FrmCrystallizerManage fct = new FrmCrystallizerManage();
  1285. fct.MdiParent = this.MdiParent;
  1286. fct.ob = this.ob;
  1287. fct.Key = "Core.LgMes.Client.LgDeviceManager.FrmTundishManage";
  1288. fct.Toolbar = CStaticMethod.GetFromToolInfo(fct.Key, "", ob);
  1289. //fct.Text = strTitle;
  1290. fct.Show();
  1291. }
  1292. private void ute_S1TGLj_KeyPress(object sender, KeyPressEventArgs e)
  1293. {
  1294. if (!(Char.IsNumber(e.KeyChar) || e.KeyChar == '.' || e.KeyChar == '\b'))
  1295. {
  1296. e.Handled = true;
  1297. }
  1298. }
  1299. private void ute_GBDJ_KeyPress(object sender, KeyPressEventArgs e)
  1300. {
  1301. if (!(Char.IsNumber(e.KeyChar) || e.KeyChar == '.' || e.KeyChar == '\b'))
  1302. {
  1303. e.Handled = true;
  1304. }
  1305. }
  1306. private void ute_SGTJSJ_KeyPress(object sender, KeyPressEventArgs e)
  1307. {
  1308. if (!(Char.IsNumber(e.KeyChar) || e.KeyChar == '.' || e.KeyChar == '\b'))
  1309. {
  1310. e.Handled = true;
  1311. }
  1312. }
  1313. private void ultraGrid4_ClickCellButton(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
  1314. {
  1315. frmSetTime frm = new frmSetTime(e.Cell.Value);
  1316. frm.Location = CStaticMethod.GetChildWindowLocation(frm.Size);
  1317. frm.ShowDialog();
  1318. if (frm._returnTime > new DateTime(2000, 1, 1, 0, 0, 0, 0))
  1319. {
  1320. DateTime dt = frm._returnTime;
  1321. e.Cell.Value = dt;
  1322. }
  1323. }
  1324. private void ultraGrid4_CellChange(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
  1325. {
  1326. if (ultraGrid4.ActiveCell.Text != "" && e.Cell.Value.GetType().ToString() != "System.DateTime" && e.Cell.Column.Key!="BALEFLOWFLAG"
  1327. && e.Cell.Value.GetType().ToString() != "System.DBNull" && e.Cell.Column.Key != "SWRAPENDCAUSE" && e.Cell.Column.Key != "MEMO" && e.Cell.Column.Key != "FLAG")
  1328. {
  1329. try
  1330. {
  1331. Convert.ToDecimal(ultraGrid4.ActiveCell.Text);
  1332. if (e.Cell.Column.Key == "BALELEAVEWGT" || e.Cell.Column.Key == "PFBALEWGT")
  1333. {
  1334. double dblPfbalewgt = 0.0;
  1335. double dblBaleleavewgt = 0.0;
  1336. if (!string.IsNullOrEmpty(e.Cell.Row.Cells["PFBALEWGT"].Text))
  1337. dblPfbalewgt = Convert.ToDouble(e.Cell.Row.Cells["PFBALEWGT"].Text);
  1338. if (!string.IsNullOrEmpty(e.Cell.Row.Cells["BALELEAVEWGT"].Text))
  1339. dblBaleleavewgt = Convert.ToDouble(e.Cell.Row.Cells["BALELEAVEWGT"].Text);
  1340. if (e.Cell.Column.Key == "BALELEAVEWGT" && dblBaleleavewgt > dblPfbalewgt)
  1341. {
  1342. MessageBox.Show("大包下台重量不能大于上台重量,请重新输入!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
  1343. e.Cell.Row.Cells["BALELEAVEWGT"].Value = "";
  1344. return;
  1345. }
  1346. e.Cell.Row.Cells["MOULDWGT"].Value = (dblPfbalewgt - dblBaleleavewgt).ToString("F2");
  1347. e.Cell.Row.Cells["MOULDBALEWGT"].Value = e.Cell.Row.Cells["BALELEAVEWGT"].Text;
  1348. }
  1349. }
  1350. catch (Exception ex)
  1351. {
  1352. MessageBox.Show(ex.Message, "提示");
  1353. ultraGrid4.ActiveCell.Value = "";
  1354. }
  1355. }
  1356. }
  1357. private void ultraGrid1_ClickCellButton(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
  1358. {
  1359. if (e.Cell.Value.GetType().ToString() == "System.DateTime" || e.Cell.Column.DataType.ToString() == "System.DateTime")
  1360. {
  1361. frmSetTime frm = new frmSetTime(e.Cell.Value);
  1362. frm.Location = CStaticMethod.GetChildWindowLocation(frm.Size);
  1363. frm.ShowDialog();
  1364. if (frm._returnTime > new DateTime(2000, 1, 1, 0, 0, 0, 0))
  1365. {
  1366. DateTime dt = frm._returnTime;
  1367. e.Cell.Value = dt;
  1368. }
  1369. }
  1370. else
  1371. {
  1372. frmSetAddit frmsetaddit = new frmSetAddit(ob);
  1373. frmsetaddit.WindowState = FormWindowState.Normal;
  1374. frmsetaddit.StartPosition = FormStartPosition.CenterScreen;
  1375. frmsetaddit.ShowDialog();
  1376. if (frmsetaddit.strMaterCode.Length > 0 || frmsetaddit.blClean == true)
  1377. {
  1378. e.Cell.Tag = frmsetaddit.strMaterCode;
  1379. e.Cell.Value = frmsetaddit.strMaterName;
  1380. if (frmsetaddit.blClean == true && e.Cell.Column.Key == "PROTECTDTEG")
  1381. dsCcmJc.Tables[0].Rows[0]["PROTECTDTEGDOSAGE"] = "";
  1382. else if (frmsetaddit.blClean == true && e.Cell.Column.Key == "MWRAPBESTROWNAME")
  1383. dsCcmJc.Tables[0].Rows[0]["MWRAPBESTROWDOSAGE"] = "";
  1384. }
  1385. }
  1386. }
  1387. private void ultraGrid1_CellChange(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
  1388. {
  1389. if (ultraGrid1.ActiveCell.Text != "" && (e.Cell.Column.Key == "BALEENDDATE" ||
  1390. e.Cell.Column.Key == "ACCIDENTENDTIME" || e.Cell.Column.Key == "S1CUTFRONT" || e.Cell.Column.Key == "S2CUTFRONT" ||
  1391. e.Cell.Column.Key == "S3CUTFRONT" || e.Cell.Column.Key == "S4CUTFRONT" || e.Cell.Column.Key == "S5CUTFRONT" ||
  1392. e.Cell.Column.Key == "S6CUTFRONT" || e.Cell.Column.Key == "S1CUTBACK" || e.Cell.Column.Key == "S2CUTBACK" ||
  1393. e.Cell.Column.Key == "S3CUTBACK" || e.Cell.Column.Key == "S4CUTBACK" || e.Cell.Column.Key == "S5CUTBACK" ||
  1394. e.Cell.Column.Key == "S6CUTBACK" || e.Cell.Column.Key == "S1CRPASSSTEELWEIGHT" || e.Cell.Column.Key == "S2CRPASSSTEELWEIGHT" ||
  1395. e.Cell.Column.Key == "S3CRPASSSTEELWEIGHT" || e.Cell.Column.Key == "S4CRPASSSTEELWEIGHT" || e.Cell.Column.Key == "S5CRPASSSTEELWEIGHT" ||
  1396. e.Cell.Column.Key == "PROTECTDTEGDOSAGE" || e.Cell.Column.Key == "MWRAPBESTROWDOSAGE"))
  1397. {
  1398. try
  1399. {
  1400. Convert.ToDecimal(ultraGrid1.ActiveCell.Text);
  1401. }
  1402. catch (Exception ex)
  1403. {
  1404. MessageBox.Show(ex.Message, "提示");
  1405. ultraGrid1.ActiveCell.Value = "";
  1406. }
  1407. }
  1408. }
  1409. #region "记录实绩修改日志"
  1410. /// <summary>
  1411. /// 设置用户控件委托
  1412. /// </summary>
  1413. private void SetUserControlDelegate()
  1414. {
  1415. ///修改数据之前事情
  1416. ucPlan1.ultraGrid1.AfterCellUpdate += new Infragistics.Win.UltraWinGrid.CellEventHandler(ultraGridPlan_AfterCellUpdate);
  1417. ucAdditives1.ulgridPrcMtr.AfterCellUpdate += new Infragistics.Win.UltraWinGrid.CellEventHandler(ulgridPrcMtr_AfterCellUpdate);
  1418. ucAdditives1.ultgridAlloy.AfterCellUpdate += new Infragistics.Win.UltraWinGrid.CellEventHandler(ultgridAlloy_AfterCellUpdate);
  1419. ucAdditives1.ultgridManual.AfterCellUpdate += new Infragistics.Win.UltraWinGrid.CellEventHandler(ultgridManual_AfterCellUpdate);
  1420. ucAdditives1.ultgridWs.AfterCellUpdate += new Infragistics.Win.UltraWinGrid.CellEventHandler(ultgridWs_AfterCellUpdate);
  1421. ///修改数据之后事情
  1422. ucPlan1.ultraGrid1.BeforeCellUpdate += new Infragistics.Win.UltraWinGrid.BeforeCellUpdateEventHandler(ultraGridPlan_BeforeCellUpdate);
  1423. ucAdditives1.ulgridPrcMtr.BeforeCellUpdate += new Infragistics.Win.UltraWinGrid.BeforeCellUpdateEventHandler(ulgridPrcMtr_BeforeCellUpdate);
  1424. ucAdditives1.ultgridAlloy.BeforeCellUpdate += new Infragistics.Win.UltraWinGrid.BeforeCellUpdateEventHandler(ultgridAlloy_BeforeCellUpdate);
  1425. ucAdditives1.ultgridManual.BeforeCellUpdate += new Infragistics.Win.UltraWinGrid.BeforeCellUpdateEventHandler(ultgridManual_BeforeCellUpdate);
  1426. ucAdditives1.ultgridWs.BeforeCellUpdate += new Infragistics.Win.UltraWinGrid.BeforeCellUpdateEventHandler(ultgridWs_BeforeCellUpdate);
  1427. }
  1428. void ultraGridPlan_BeforeCellUpdate(object sender, Infragistics.Win.UltraWinGrid.BeforeCellUpdateEventArgs e)
  1429. {
  1430. if (!string.IsNullOrEmpty(e.Cell.Column.Header.Caption.Trim()))
  1431. {
  1432. if (_UpdateBefore != null && _UpdateBefore.Contains(e.Cell.Column.Key))
  1433. {
  1434. _UpdateBefore.Remove(e.Cell.Column.Key);
  1435. _UpdateColumnName.Remove(e.Cell.Column.Key);
  1436. }
  1437. _UpdateBefore.Add(e.Cell.Column.Key, e.Cell.Value.ToString());
  1438. _UpdateColumnName.Add(e.Cell.Column.Key, e.Cell.Column.Header.Caption);
  1439. }
  1440. }
  1441. void ultraGridPlan_AfterCellUpdate(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
  1442. {
  1443. if (!string.IsNullOrEmpty(e.Cell.Column.Header.Caption.Trim()))
  1444. {
  1445. if (_UpdateAfter.Contains(e.Cell.Column.Key))
  1446. {
  1447. _UpdateAfter.Remove(e.Cell.Column.Key);
  1448. //_UpdateColumnName.Remove(e.Cell.Column.Key);
  1449. }
  1450. _UpdateAfter.Add(e.Cell.Column.Key, e.Cell.Value.ToString());
  1451. }
  1452. }
  1453. private void ultraGrid4_AfterCellUpdate(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
  1454. {
  1455. if (_UpdateAfter.Contains(e.Cell.Column.Key))
  1456. {
  1457. _UpdateAfter.Remove(e.Cell.Column.Key);
  1458. //_UpdateColumnName.Remove(e.Cell.Column.Key);
  1459. }
  1460. _UpdateAfter.Add(e.Cell.Column.Key, e.Cell.Value.ToString());
  1461. }
  1462. private void ultraGrid4_BeforeCellUpdate(object sender, Infragistics.Win.UltraWinGrid.BeforeCellUpdateEventArgs e)
  1463. {
  1464. if (_UpdateBefore != null && _UpdateBefore.Contains(e.Cell.Column.Key))
  1465. {
  1466. _UpdateBefore.Remove(e.Cell.Column.Key);
  1467. _UpdateColumnName.Remove(e.Cell.Column.Key);
  1468. }
  1469. _UpdateBefore.Add(e.Cell.Column.Key, e.Cell.Value.ToString());
  1470. _UpdateColumnName.Add(e.Cell.Column.Key, e.Cell.Column.Header.Caption);
  1471. }
  1472. void ulgridPrcMtr_AfterCellUpdate(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
  1473. {
  1474. if (!string.IsNullOrEmpty(e.Cell.Column.Header.Caption.Trim()))
  1475. {
  1476. if (_UpdateAfter.Contains(e.Cell.Column.Key))
  1477. {
  1478. _UpdateAfter.Remove(e.Cell.Column.Key);
  1479. //_UpdateColumnName.Remove(e.Cell.Column.Key);
  1480. }
  1481. _UpdateAfter.Add(e.Cell.Column.Key, e.Cell.Value.ToString());
  1482. }
  1483. }
  1484. void ulgridPrcMtr_BeforeCellUpdate(object sender, Infragistics.Win.UltraWinGrid.BeforeCellUpdateEventArgs e)
  1485. {
  1486. if (!string.IsNullOrEmpty(e.Cell.Column.Header.Caption.Trim()))
  1487. {
  1488. if (_UpdateBefore != null && _UpdateBefore.Contains(e.Cell.Column.Key))
  1489. {
  1490. _UpdateBefore.Remove(e.Cell.Column.Key);
  1491. _UpdateColumnName.Remove(e.Cell.Column.Key);
  1492. }
  1493. _UpdateBefore.Add(e.Cell.Column.Key, e.Cell.Value.ToString());
  1494. _UpdateColumnName.Add(e.Cell.Column.Key, e.Cell.Column.Header.Caption);
  1495. }
  1496. }
  1497. void ultgridWs_BeforeCellUpdate(object sender, Infragistics.Win.UltraWinGrid.BeforeCellUpdateEventArgs e)
  1498. {
  1499. if (!string.IsNullOrEmpty(e.Cell.Column.Header.Caption.Trim()))
  1500. {
  1501. if (_UpdateBefore != null && _UpdateBefore.Contains(e.Cell.Column.Key))
  1502. {
  1503. _UpdateBefore.Remove(e.Cell.Column.Key);
  1504. _UpdateColumnName.Remove(e.Cell.Column.Key);
  1505. }
  1506. _UpdateBefore.Add(e.Cell.Column.Key, e.Cell.Value.ToString());
  1507. _UpdateColumnName.Add(e.Cell.Column.Key, e.Cell.Column.Header.Caption);
  1508. }
  1509. }
  1510. void ultgridWs_AfterCellUpdate(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
  1511. {
  1512. if (!string.IsNullOrEmpty(e.Cell.Column.Header.Caption.Trim()))
  1513. {
  1514. if (_UpdateAfter.Contains(e.Cell.Column.Key))
  1515. {
  1516. _UpdateAfter.Remove(e.Cell.Column.Key);
  1517. //_UpdateColumnName.Remove(e.Cell.Column.Key);
  1518. }
  1519. _UpdateAfter.Add(e.Cell.Column.Key, e.Cell.Value.ToString());
  1520. }
  1521. }
  1522. void ultgridManual_BeforeCellUpdate(object sender, Infragistics.Win.UltraWinGrid.BeforeCellUpdateEventArgs e)
  1523. {
  1524. if (!string.IsNullOrEmpty(e.Cell.Column.Header.Caption.Trim()))
  1525. {
  1526. if (_UpdateBefore != null && _UpdateBefore.Contains(e.Cell.Column.Key))
  1527. {
  1528. _UpdateBefore.Remove(e.Cell.Column.Key);
  1529. _UpdateColumnName.Remove(e.Cell.Column.Key);
  1530. }
  1531. _UpdateBefore.Add(e.Cell.Column.Key, e.Cell.Value.ToString());
  1532. _UpdateColumnName.Add(e.Cell.Column.Key, e.Cell.Column.Header.Caption);
  1533. }
  1534. }
  1535. void ultgridAlloy_BeforeCellUpdate(object sender, Infragistics.Win.UltraWinGrid.BeforeCellUpdateEventArgs e)
  1536. {
  1537. if (!string.IsNullOrEmpty(e.Cell.Column.Header.Caption.Trim()))
  1538. {
  1539. if (_UpdateBefore != null && _UpdateBefore.Contains(e.Cell.Column.Key))
  1540. {
  1541. _UpdateBefore.Remove(e.Cell.Column.Key);
  1542. _UpdateColumnName.Remove(e.Cell.Column.Key);
  1543. }
  1544. _UpdateBefore.Add(e.Cell.Column.Key, e.Cell.Value.ToString());
  1545. _UpdateColumnName.Add(e.Cell.Column.Key, e.Cell.Column.Header.Caption);
  1546. }
  1547. }
  1548. void ultgridManual_AfterCellUpdate(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
  1549. {
  1550. if (!string.IsNullOrEmpty(e.Cell.Column.Header.Caption.Trim()))
  1551. {
  1552. if (_UpdateAfter.Contains(e.Cell.Column.Key))
  1553. {
  1554. _UpdateAfter.Remove(e.Cell.Column.Key);
  1555. // _UpdateColumnName.Remove(e.Cell.Column.Key);
  1556. }
  1557. _UpdateAfter.Add(e.Cell.Column.Key, e.Cell.Value.ToString());
  1558. }
  1559. }
  1560. void ultgridAlloy_AfterCellUpdate(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
  1561. {
  1562. if (!string.IsNullOrEmpty(e.Cell.Column.Header.Caption.Trim()))
  1563. {
  1564. if (_UpdateAfter.Contains(e.Cell.Column.Key))
  1565. {
  1566. _UpdateAfter.Remove(e.Cell.Column.Key);
  1567. // _UpdateColumnName.Remove(e.Cell.Column.Key);
  1568. }
  1569. _UpdateAfter.Add(e.Cell.Column.Key, e.Cell.Value.ToString());
  1570. }
  1571. }
  1572. #endregion
  1573. private void ultraGrid1_AfterCellUpdate(object sender, Infragistics.Win.UltraWinGrid.CellEventArgs e)
  1574. {
  1575. if (_UpdateAfter_Mould.Contains(e.Cell.Column.Key))
  1576. {
  1577. _UpdateAfter_Mould.Remove(e.Cell.Column.Key);
  1578. //_UpdateColumnName.Remove(e.Cell.Column.Key);
  1579. }
  1580. _UpdateAfter_Mould.Add(e.Cell.Column.Key, e.Cell.Value.ToString());
  1581. }
  1582. private void ultraGrid1_BeforeCellUpdate(object sender, Infragistics.Win.UltraWinGrid.BeforeCellUpdateEventArgs e)
  1583. {
  1584. if (_UpdateBefore_Mould != null && _UpdateBefore_Mould.Contains(e.Cell.Column.Key))
  1585. {
  1586. _UpdateBefore_Mould.Remove(e.Cell.Column.Key);
  1587. _UpdateColumnName_Mould.Remove(e.Cell.Column.Key);
  1588. }
  1589. _UpdateBefore_Mould.Add(e.Cell.Column.Key, e.Cell.Value.ToString());
  1590. _UpdateColumnName_Mould.Add(e.Cell.Column.Key, e.Cell.Column.Header.Caption);
  1591. }
  1592. }
  1593. }