4ada403cb9802eac027b94685a36e64b6cbedd65.svn-base 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <?xml-stylesheet type="text/css" href="../../css/body.css" ?>
  3. <xhtml:html xmlns:ex="http://www.comsquare.co.kr/xforms/excel" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:my="http://www.comsquare.co.kr/example" xmlns:ms="urn:schemas-microsoft-com:xslt" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events" xmlns:cs="http://www.comsquare.co.kr/xforms">
  4. <xhtml:head>
  5. <xhtml:title>
  6. <![CDATA[]]>
  7. </xhtml:title>
  8. <model id="model1">
  9. <instance id="instance1">
  10. <root xmlns="">
  11. <rec/>
  12. <reqData/>
  13. <tempData1>
  14. <rowStuts0>i</rowStuts0>
  15. <FAC_STL_GRD/>
  16. <FAC_CODE/>
  17. </tempData1>
  18. </root>
  19. </instance>
  20. <script type="javascript" ev:event="xforms-ready">
  21. <![CDATA[
  22. //查询炼钢放行成分信息
  23. model.removenode("/root/reqData");
  24. model.makeNode("/root/reqData");
  25. // var param = datagrid1.valueMatrix(currentRow , datagrid1.colRef("HIDDENGRD"));//获得隐藏列对应的
  26. commSendReq("/root/rec");
  27. commSubmit("UIB010051-service", "findChem", "glueAction.do");
  28. //调用b01.js文件中的copyFixNode方法,执行拷贝
  29. copyFixNode("/root/datagrid2","/root/resData/ChemResult_VO/ChemResult_Row",1,13);
  30. copyFixNode("/root/datagrid3","/root/resData/ChemResult_VO/ChemResult_Row",14,26);
  31. copyFixNode("/root/datagrid4","/root/resData/ChemResult_VO/ChemResult_Row",27,50);
  32. model.copyNode("/root/datagrid5" , "/root/resData/CompChemResult_VO");
  33. model.refresh();
  34. ]]>
  35. </script>
  36. </model>
  37. <script type="javascript" src="../../js/boaCommon.js"/>
  38. <script type="javascript" src="../../js/boaMsg.js"/>
  39. <script type="javascript" src="../../js/mesCommon.js"/>
  40. <script type="javascript" src="../../js/b01.js"/>
  41. <script type="javascript">
  42. <![CDATA[
  43. var isSaved = false;//记录是否保存
  44. function setData()
  45. {
  46. for(var i = 1;i<datagrid2.rows;i++)
  47. {
  48. if(datagrid2.valueMatrix(i,1) != ""||datagrid2.valueMatrix(i,2) != ""||datagrid2.valueMatrix(i,3) != "")
  49. {
  50. datagrid2.addStatus(i,"insert");
  51. }
  52. }
  53. for(var i = 1;i<datagrid3.rows;i++)
  54. {
  55. if(datagrid3.valueMatrix(i,1) != ""||datagrid3.valueMatrix(i,2) != ""||datagrid3.valueMatrix(i,3) != "")
  56. {
  57. datagrid3.addStatus(i,"insert");
  58. }
  59. }
  60. for(var i = 1;i<datagrid4.rows;i++)
  61. {
  62. if(datagrid4.valueMatrix(i,1) != ""||datagrid4.valueMatrix(i,2) != ""||datagrid4.valueMatrix(i,3) != "")
  63. {
  64. datagrid4.addStatus(i,"insert");
  65. }
  66. }
  67. for(var i = 1;i<datagrid5.rows;i++)
  68. {
  69. if(datagrid5.valueMatrix(i,2) != ""||datagrid5.valueMatrix(i,3) != ""||datagrid5.valueMatrix(i,4) != "")
  70. {
  71. datagrid5.addStatus(i,"insert");
  72. }
  73. }
  74. }
  75. function checkData()
  76. {
  77. //验证钢号
  78. if(model.getValue("/root/tempData1/FAC_STL_GRD") == "")
  79. {
  80. window.alert("请选择钢号","提示");
  81. return false;
  82. }
  83. //验证生产线
  84. if(model.getValue("/root/tempData1/FAC_CODE") == "")
  85. {
  86. window.alert("请选择生产线","提示");
  87. return false;
  88. }
  89. //验证是否录入成分信息
  90. var chemRow = 0;//录入成分信息的行
  91. //datagrid2录入成分信息的行
  92. for(var i = 1;i < datagrid2.rows;i++)
  93. {
  94. if(datagrid2.valueMatrix(i,1) != "")
  95. {
  96. chemRow++;
  97. continue;
  98. }
  99. if(datagrid2.valueMatrix(i,2) != "")
  100. {
  101. chemRow++;
  102. continue;
  103. }
  104. if(datagrid2.valueMatrix(i,3) != "")
  105. {
  106. chemRow++;
  107. continue;
  108. }
  109. }
  110. //datagrid3录入成分信息的行
  111. for(var i = 1;i < datagrid3.rows;i++)
  112. {
  113. if(datagrid3.valueMatrix(i,1) != "")
  114. {
  115. chemRow++;
  116. continue;
  117. }
  118. if(datagrid3.valueMatrix(i,2) != "")
  119. {
  120. chemRow++;
  121. continue;
  122. }
  123. if(datagrid3.valueMatrix(i,3) != "")
  124. {
  125. chemRow++;
  126. continue;
  127. }
  128. }
  129. //datagrid4录入成分信息的行
  130. for(var i = 1;i < datagrid4.rows;i++)
  131. {
  132. if(datagrid4.valueMatrix(i,1) != "")
  133. {
  134. chemRow++;
  135. continue;
  136. }
  137. if(datagrid4.valueMatrix(i,2) != "")
  138. {
  139. chemRow++;
  140. continue;
  141. }
  142. if(datagrid4.valueMatrix(i,3) != "")
  143. {
  144. chemRow++;
  145. continue;
  146. }
  147. }
  148. //datagrid5录入成分信息的行
  149. for(var i = 1;i < datagrid5.rows;i++)
  150. {
  151. if(datagrid5.valueMatrix(i,2) != "")
  152. {
  153. chemRow++;
  154. continue;
  155. }
  156. if(datagrid5.valueMatrix(i,3) != "")
  157. {
  158. chemRow++;
  159. continue;
  160. }
  161. if(datagrid5.valueMatrix(i,4) != "")
  162. {
  163. chemRow++;
  164. continue;
  165. }
  166. }
  167. //若输入成分的行为零则验证失败
  168. if(chemRow == 0)
  169. {
  170. window.alert("请输入成分信息","提示");
  171. return false;
  172. }
  173. //验证钢号是否已经存在
  174. model.removenode("root/reqData");
  175. model.makeNode("root/reqData");
  176. commSendReq("/root/tempData1");
  177. commSubmit("UIB010050-service", "check", "glueAction.do");
  178. var CHECKResult = model.getValue("root/resData/CHECKResult_VO/CHECKResult_Row/CHECKRESULT");
  179. if(CHECKResult == 0 )
  180. {
  181. window.alert("钢号,生长线已经存在!!","提示");
  182. return false;
  183. }
  184. }
  185. function save()
  186. {
  187. if(isSaved == true)//如果已经保存则返回
  188. {
  189. window.alert("已经保存","提示");
  190. return;
  191. }
  192. var checkResult = checkData();
  193. if(checkResult == false)//如果验证失败则返回
  194. {
  195. return;
  196. }
  197. //设置表单状态
  198. setData();
  199. model.removenode("/root/reqData");
  200. model.makeNode("/root/reqData");
  201. model.removenode("/root/tempData2");//对应表2
  202. model.makeNode("/root/tempData2");
  203. model.removenode("/root/tempData3");//对应表3
  204. model.makeNode("/root/tempData3");
  205. model.removenode("/root/tempData4");//对应表4
  206. model.makeNode("/root/tempData4");
  207. model.removenode("/root/tempData5");//对应表5
  208. model.makeNode("/root/tempData5");
  209. model.removenode("/root/findData");//为成分更新准备的客户参数号信息
  210. model.makeNode("/root/findData");
  211. //区分是否做了添加参数号操作,因为未作添加参数号操作时候为更新,需要用到EX
  212. b01MultiUpdate(datagrid2,"/root/tempData2" ,"A", true, "rowStuts");
  213. b01MultiUpdate(datagrid3,"/root/tempData3" ,"A", true, "rowStuts");
  214. b01MultiUpdate(datagrid4,"/root/tempData4" ,"A", true, "rowStuts");
  215. b01MultiUpdate(datagrid5,"/root/tempData5" ,"A", true, "rowStuts");
  216. //在仅更新成分时其作用
  217. var stl = model.getValue("/root/formData/FacStlGrd");
  218. var fCode = model.getValue("/root/formData/FacCode");//获得生产线
  219. model.makeValue("/root/findData/FACPARAM" , stl);
  220. model.makeValue("/root/findData/FACCODE" , fCode);
  221. commSendReq("/root/tempData1","/root/tempData2","/root/tempData3","/root/tempData4","/root/tempData5","/root/findData");
  222. model.makeValue("/root/reqData/XX" , "UIB010050");
  223. model.makeValue("/root/reqData/FAC_STL_GRD" , combo1.value);
  224. model.makeValue("/root/reqData/rowStuts0" , "i");
  225. model.makeValue("/root/reqData/beInit",false);//不做初始化操作
  226. commSubmit("UIB010050-service", "save", "glueAction.do");
  227. errMSG = model.getValue("/root/resData/errorData");
  228. if(errMSG != "")
  229. {
  230. window.alert(errMSG," 警告 ");
  231. return;
  232. }
  233. //清除删除、插入、更新状态
  234. datagrid2.clearStatus();
  235. datagrid3.clearStatus();
  236. datagrid4.clearStatus();
  237. datagrid5.clearStatus();
  238. window.alert("保存成功"," 提示 ");
  239. isSaved = true;
  240. }
  241. ]]>
  242. </script>
  243. </xhtml:head>
  244. <xhtml:body overflow="hidden" pagewidth="730" pageheight="700" style="font-family:宋体; ">
  245. <caption id="caption4" style="left:645px; top:665px; width:73px; height:20px; color:#000000; text-align:center; vertical-align:middle; background-image:../../images/exit.gif; cursor:hand; ">
  246. <![CDATA[ 退 出]]>
  247. <script type="javascript" ev:event="onclick">
  248. <![CDATA[
  249. window.close();
  250. ]]>
  251. </script>
  252. </caption>
  253. <datagrid id="datagrid2" nodeset="/root/rec/datagrid2/ChemResult_Row" allowuserresize="false" caption="成分^目标值^最小^最大^EX" colsep="^" colwidth="50, 60, 60, 60, 100" defaultrows="14" mergecellsfixedrows="bycolrec" rowsep="|" selectionmode="free" style="left:10px; top:70px; width:232px; height:296px; border-color:#000000; border-style:solid; ">
  254. <col editable="false" ref="CHEM_CD" type="input" style="background-color:#ffffff; "/>
  255. <col ref="CHEM_AIM" type="input" style="background-color:#ffff99; "/>
  256. <col ref="CHEM_MIN" type="input" style="background-color:#ffff99; "/>
  257. <col ref="CHEM_MAX" type="input" style="background-color:#ffff99; "/>
  258. <col ref="EX" visibility="hidden"/>
  259. <col ref="COMP_YN" visibility="hidden"/>
  260. <script type="javascript" ev:event="onclick">
  261. <![CDATA[
  262. datagrid2.editCell();
  263. ]]>
  264. </script>
  265. <script type="javascript" ev:event="onkeydown">
  266. <![CDATA[
  267. if(event.keyCode==13)
  268. {
  269. datagrid2.row++;
  270. }
  271. ]]>
  272. </script>
  273. <script type="javascript" ev:event="xforms-value-changed">
  274. <![CDATA[
  275. compareMINMAX(datagrid2,"CHEM_MIN","CHEM_MAX") //验证最大值不能小于最小值
  276. ]]>
  277. </script>
  278. </datagrid>
  279. <datagrid id="datagrid3" nodeset="/root/rec/datagrid3/ChemResult_Row" allowuserresize="false" caption="成分^目标值^最小^最大^EX" colsep="^" colwidth="50, 60, 60, 60, 100" defaultrows="14" mergecellsfixedrows="bycolrec" rowsep="|" selectionmode="free" style="left:250px; top:70px; width:233px; height:296px; border-color:#000000; border-style:solid; ">
  280. <col editable="false" ref="CHEM_CD" type="input" style="background-color:#ffffff; "/>
  281. <col ref="CHEM_AIM" type="input" style="background-color:#ffff99; "/>
  282. <col ref="CHEM_MIN" type="input" style="background-color:#ffff99; "/>
  283. <col ref="CHEM_MAX" type="input" style="background-color:#ffff99; "/>
  284. <col ref="EX" visibility="hidden"/>
  285. <col ref="COMP_YN" visibility="hidden"/>
  286. <script type="javascript" ev:event="onclick">
  287. <![CDATA[
  288. datagrid3.editCell();
  289. ]]>
  290. </script>
  291. <script type="javascript" ev:event="onkeydown">
  292. <![CDATA[
  293. if(event.keyCode==13)
  294. {
  295. datagrid3.row++;
  296. }
  297. ]]>
  298. </script>
  299. <script type="javascript" ev:event="xforms-value-changed">
  300. <![CDATA[
  301. compareMINMAX(datagrid3,"CHEM_MIN","CHEM_MAX") //验证最大值不能小于最小值
  302. ]]>
  303. </script>
  304. </datagrid>
  305. <datagrid id="datagrid4" nodeset="/root/rec/datagrid4/ChemResult_Row" allowuserresize="false" caption="成分^目标值^最小^最大^EX" colsep="^" colwidth="50, 60, 60, 60, 100" defaultrows="14" extendlastcol="false" mergecellsfixedrows="bycolrec" rowsep="|" selectionmode="free" style="left:490px; top:70px; width:232px; height:296px; border-color:#000000; border-style:solid; ">
  306. <col editable="false" ref="CHEM_CD" type="input" style="background-color:#ffffff; "/>
  307. <col ref="CHEM_AIM" type="input" style="background-color:#ffff99; "/>
  308. <col ref="CHEM_MIN" type="input" style="background-color:#ffff99; "/>
  309. <col ref="CHEM_MAX" type="input" style="background-color:#ffff99; "/>
  310. <col ref="EX" visibility="hidden"/>
  311. <col ref="COMP_YN" visibility="hidden"/>
  312. <script type="javascript" ev:event="onclick">
  313. <![CDATA[
  314. datagrid4.editCell();
  315. ]]>
  316. </script>
  317. <script type="javascript" ev:event="onkeydown">
  318. <![CDATA[
  319. if(event.keyCode==13)
  320. {
  321. datagrid4.row++;
  322. }
  323. ]]>
  324. </script>
  325. <script type="javascript" ev:event="xforms-value-changed">
  326. <![CDATA[
  327. compareMINMAX(datagrid4,"CHEM_MIN","CHEM_MAX") //验证最大值不能小于最小值
  328. ]]>
  329. </script>
  330. </datagrid>
  331. <datagrid id="datagrid5" nodeset="/root/rec/datagrid5/CompChemResult_Row" allowuserresize="false" caption="成分^复合元素与计算式^目标值^最小^最大^EX^CHEM_CD" colsep="^" colwidth="60, 459, 60, 54, 43, 40, 42" defaultrows="14" mergecellsfixedrows="bycolrec" rowsep="|" selectionmode="free" style="left:10px; top:370px; width:712px; height:285px; border-color:#000000; border-style:solid; ">
  332. <col ref="COMP_DETAIL" style="text-align:left; "/>
  333. <col ref="COMP_CAL" style="text-align:left; "/>
  334. <col ref="CHEM_AIM" type="input" style="background-color:#ffff99; "/>
  335. <col ref="CHEM_MIN" type="input" style="background-color:#ffff99; "/>
  336. <col ref="CHEM_MAX" type="input" style="background-color:#ffff99; "/>
  337. <col ref="EX" visibility="hidden"/>
  338. <col ref="COMP_YN" visibility="hidden"/>
  339. <col ref="CHEM_CD" visibility="hidden"/>
  340. <script type="javascript" ev:event="onclick">
  341. <![CDATA[
  342. datagrid5.editCell();
  343. ]]>
  344. </script>
  345. <script type="javascript" ev:event="xforms-value-changed">
  346. <![CDATA[
  347. compareMINMAX(datagrid5,"CHEM_MIN","CHEM_MAX") //验证最大值不能小于最小值
  348. ]]>
  349. </script>
  350. </datagrid>
  351. <caption id="caption1" class="cell" style="left:10px; top:40px; width:96px; height:20px; text-align:left; border-color:#000000; border-style:solid; ">·厂内钢号</caption>
  352. <caption id="caption2" class="cell" style="left:250px; top:40px; width:96px; height:20px; text-align:left; border-color:#000000; border-style:solid; ">·生产线</caption>
  353. <select1 id="combo1" ref="/root/tempData1/FAC_STL_GRD" appearance="minimal" editmode="inputsearch" style="left:108px; top:40px; width:132px; height:20px; border-color:#000000; border-style:solid; ">
  354. <choices>
  355. <itemset nodeset="/root/rec/FacStlGrd/FacStlGrdResult_Row">
  356. <label ref="LABEL"/>
  357. <value ref="VALUE"/>
  358. </itemset>
  359. </choices>
  360. </select1>
  361. <select1 id="combo2" ref="/root/tempData1/FAC_CODE" appearance="minimal" style="left:350px; top:40px; width:76px; height:20px; border-color:#000000; border-style:solid; ">
  362. <choices>
  363. <itemset nodeset="/root/rec/FAC_CODE/result_Row">
  364. <label ref="SM_CFNM"/>
  365. <value ref="SM_CD"/>
  366. </itemset>
  367. </choices>
  368. </select1>
  369. <caption id="caption3" style="left:555px; top:665px; width:73px; height:20px; color:#000000; text-align:center; vertical-align:middle; background-image:../../images/exit.gif; cursor:hand; ">
  370. <![CDATA[保 存]]>
  371. <script type="javascript" ev:event="onclick">
  372. <![CDATA[
  373. save();
  374. ]]>
  375. </script>
  376. </caption>
  377. <caption id="caption100" style="left:10px; top:11px; width:305px; height:15px; background-image:../../images/tit.gif; ">
  378. <![CDATA[ >> 内控标准成分参数录入]]>
  379. </caption>
  380. </xhtml:body>
  381. </xhtml:html>