22c0db2d12f5ef5fd83aeee260682aeee7371e2e.svn-base 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <?xml-stylesheet href="../../css/body.css" type="text/css" ?>
  3. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" 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">
  4. <xhtml:head>
  5. <xhtml:title>
  6. <![CDATA[品质设计>>生产规范录入>>客户外形尺寸标准录入]]>
  7. </xhtml:title>
  8. <model id="model1">
  9. <instance id="instance1">
  10. <root xmlns="">
  11. <formData>
  12. <CoName/>
  13. <CODE/>
  14. </formData>
  15. <datagrid1/>
  16. <datagrid2/>
  17. <reqData/>
  18. <resData/>
  19. <tempData1/>
  20. <tempData2/>
  21. <tolerance>
  22. <Tolerance_Row>
  23. <LABEL/>
  24. <VALUE/>
  25. </Tolerance_Row>
  26. </tolerance>
  27. </root>
  28. </instance>
  29. <script type="javascript" ev:event="xforms-ready">
  30. <![CDATA[
  31. if(window.parent==null) Init();
  32. ]]>
  33. </script>
  34. </model>
  35. <script type="javascript" src="../../js/boaCommon.js"/>
  36. <script type="javascript" src="../../js/b01.js"/>
  37. <script type="javascript">
  38. <![CDATA[
  39. var currentRow;
  40. function Init(node)
  41. {
  42. InitParams(node);
  43. model.removenode("/root/reqData");
  44. model.makeNode("/root/reqData");
  45. commSubmit("UIB010280-service", "success1", "glueAction.do");
  46. model.copyNode("/root/tolerance" , "/root/resData/Tolerance_VO");//公差(名)初始化
  47. model.refresh();
  48. }
  49. function find()
  50. {
  51. model.removenode("/root/reqData");
  52. model.makeNode("/root/reqData");
  53. commSendReq("/root/formData");
  54. commSubmit("UIB010280-service", "find", "glueAction.do");
  55. model.copyNode("/root/datagrid1" , "/root/resData/DelCustResult_VO");
  56. currentRow = 0;
  57. // model.resetInstanceNode("/root/datagrid2"); 数据行实际上仍然保留,所以不能用该方法
  58. model.removenode("/root/datagrid2");
  59. model.makeNode("/root/datagrid2");
  60. datagrid1.clearStatus();
  61. datagrid2.clearStatus();
  62. model.refresh();
  63. datagrid1.cellAttribute("disabled",datagrid1.fixedRows , datagrid1.fixedCols , datagrid1.rows - 1 , datagrid1.cols - 1) = "true";
  64. }
  65. function save()
  66. {
  67. if(currentRow==0){window.alert("非法操作" , "提示"); return;}
  68. if(commComfirmBox("确认保存?","提示")=="0") return;
  69. model.removenode("/root/reqData");
  70. model.makeNode("/root/reqData");
  71. model.removenode("/root/tempData1");
  72. model.makeNode("/root/tempData1");
  73. b01MultiUpdate(datagrid2 , "/root/tempData1" , "A" , true , "rowStatusA");
  74. commSendReq("/root/datagrid1/DelCustResult_Row["+currentRow+"]" , "/root/tempData1");
  75. //getLoggingInInfo();
  76. model.makeValue("/root/reqData/REG_ID" , "XXX");
  77. commSubmit("UIB010280-service", "save", "glueAction.do");
  78. datagrid1.clearStatus();
  79. datagrid2.clearStatus();
  80. currentRow = 0;//防止保存误操作
  81. datagrid1.cellAttribute("disabled",datagrid1.fixedRows , datagrid1.fixedCols , datagrid1.rows - 1 , datagrid1.cols - 1) = "true";
  82. }
  83. var currentRow = 0;
  84. ]]>
  85. </script>
  86. </xhtml:head>
  87. <xhtml:body pagewidth="980" pageheight="620">
  88. <datagrid id="datagrid2" nodeset="/root/datagrid2/GridTolerance_Row" caption="选择^公差名^下限^下限^上限^上限^备注^公差名|选择^公差名^符号^值^符号^值^备注^公差名" colsep="^" colwidth="40, 85, 46, 56, 54, 51, 100, 40" defaultrows="36" mergecellsfixedrows="bycolrec" rowsep="|" selectionmode="free" tooltip="label" style="left:415px; top:35px; width:565px; height:585px; border-style:solid; ">
  89. <col checkvalue="Y,N" ref="CHK" type="checkbox"/>
  90. <col disabled="true" ref="DEL_TOL_CD" type="combo" maxlength="2" style="text-align:left; background-color:#ffffff; ">
  91. <choices>
  92. <itemset nodeset="/root/tolerance/Tolerance_Row">
  93. <label ref="LABEL"/>
  94. <value ref="VALUE"/>
  95. </itemset>
  96. </choices>
  97. </col>
  98. <col disabled="true" ref="TOL_MIN_SYM" type="combo" style="text-align:left; background-color:#ffffff; ">
  99. <choices>
  100. <item>
  101. <label>-</label>
  102. <value>-</value>
  103. </item>
  104. <item>
  105. <label>+</label>
  106. <value>+</value>
  107. </item>
  108. </choices>
  109. </col>
  110. <col disabled="true" ref="TOL_MIN" type="input" style="text-align:right; background-color:#ffffff; "/>
  111. <col disabled="true" ref="TOL_MAX_SYM" type="combo" style="text-align:left; background-color:#ffffff; ">
  112. <choices>
  113. <item>
  114. <label>-</label>
  115. <value>-</value>
  116. </item>
  117. <item>
  118. <label>+</label>
  119. <value>+</value>
  120. </item>
  121. </choices>
  122. </col>
  123. <col disabled="true" ref="TOL_MAX" type="input" style="text-align:right; background-color:#ffffff; "/>
  124. <col ref="DEV_RMK" type="input" style="text-align:left; background-color:#ffffff; "/>
  125. <col ref="DEL_TOL_CD1" visibility="hidden"/>
  126. <script type="javascript" ev:event="onclick">
  127. <![CDATA[
  128. if(datagrid2.row < datagrid2.fixedRows) return;
  129. if(datagrid2.col != datagrid2.colRef("CHK")) return;
  130. var cRow = datagrid2.row;
  131. var chkCol = datagrid2.colRef("CHK");
  132. var startCol = datagrid2.colRef("DEL_TOL_CD");
  133. if(datagrid2.valueMatrix(cRow , chkCol) == "Y")//可编辑状态
  134. {
  135. datagrid2.cellAttribute("disabled",cRow , chkCol+1 , cRow , datagrid2.cols-1) = "false";
  136. for(var i = startCol ; i < datagrid2.cols ; i++)
  137. {
  138. datagrid2.cellStyle("background-color",cRow, i) = "#ffff99";
  139. }
  140. }
  141. else
  142. {
  143. datagrid2.cellAttribute("disabled",cRow , chkCol+1 , cRow , datagrid2.cols-1) = "true";
  144. for(var i = startCol ; i < datagrid2.cols ; i++)
  145. {
  146. datagrid2.cellStyle("background-color",cRow, i) = "#ffffff";
  147. }
  148. }
  149. ]]>
  150. </script>
  151. <script type="javascript" ev:event="onentercell">
  152. <![CDATA[
  153. datagrid2.editCell();
  154. ]]>
  155. </script>
  156. <script type="javascript" ev:event="onkeydown">
  157. <![CDATA[
  158. onkeydownmove(datagrid2);
  159. ]]>
  160. </script>
  161. </datagrid>
  162. <caption id="caption1" class="cell" style="left:0px; top:5px; width:100px; height:20px; vertical-align:middle; border-style:solid; ">客户公司名称</caption>
  163. <button id="button6" style="left:840px; top:5px; width:70px; height:20px; background-image:../../images/btn_add.gif; ">
  164. <caption>增加</caption>
  165. <script type="javascript" ev:event="onclick">
  166. <![CDATA[
  167. datagrid2.addRow();
  168. datagrid2.vscroll.attribute("pos") = datagrid2.rows*20;
  169. datagrid2.valueMatrix(datagrid2.row , datagrid2.colRef("CHK")) = "Y";
  170. datagrid2.cellStyle("background-color",datagrid2.row, datagrid2.colRef("DEL_TOL_CD") , datagrid2.row , datagrid2.cols-1) = "#ffff99";
  171. model.refresh();
  172. ]]>
  173. </script>
  174. </button>
  175. <button id="button7" style="left:902px; top:5px; width:73px; height:20px; background-image:../../images/btn_move.gif; ">
  176. <caption>删除</caption>
  177. <script type="javascript" ev:event="onclick">
  178. <![CDATA[
  179. if(beGridChanged(datagrid2) == "1")
  180. {
  181. if(commComfirmBox("数据已被更改,可能出现误删,确定删除?","提示")=="0") return;
  182. }
  183. var rows = datagrid2.rows;
  184. for(var i=rows; i > 0; i--)
  185. {
  186. if(datagrid2.valueMatrix(i , 0)=="Y")
  187. {
  188. datagrid2.deleteRow(i , false);
  189. }
  190. }
  191. save();
  192. ]]>
  193. </script>
  194. </button>
  195. <button id="button8" style="left:270px; top:35px; width:70px; height:20px; background-image:../../images/btn_add.gif; ">
  196. <caption>增加</caption>
  197. <script type="javascript" ev:event="onclick">
  198. <![CDATA[
  199. if(model.getValue("/root/formData/CODE") == "")
  200. {
  201. window.alert("请选择客户公司" , "提示");
  202. return;
  203. }
  204. if(beGridChanged(datagrid1,datagrid2) == "1")
  205. {
  206. window.alert("数据已更新,请保存!" , "警告");
  207. return;
  208. }
  209. //只有最后一行允许编辑
  210. datagrid1.cellAttribute("disabled",datagrid1.fixedRows , datagrid1.fixedCols-2 , datagrid1.rows - 1 , datagrid1.cols - 1) = "true";
  211. datagrid1.addRow();
  212. currentRow = datagrid1.row;
  213. datagrid1.valueMatrix(currentRow , datagrid1.colRef("CUST_CD")) = model.getValue("/root/formData/CODE");
  214. ]]>
  215. </script>
  216. </button>
  217. <button id="button9" style="left:340px; top:35px; width:70px; height:20px; background-image:../../images/btn_move.gif; ">
  218. <caption>删除</caption>
  219. <script type="javascript" ev:event="onclick">
  220. <![CDATA[
  221. if(beGridChanged(datagrid1) == "1")
  222. {
  223. window.alert("数据已修改,请保存或初始化!" , "警告");
  224. return;
  225. }
  226. if(commComfirmBox("确定删除?","提示")=="0") return;
  227. model.removenode("/root/reqData");
  228. model.makeNode("/root/reqData");
  229. datagrid1.deleteRow(datagrid1.row );
  230. b01MultiUpdate(datagrid1,"/root/reqData" ,"A", true, "rowStatusD");
  231. getLoggingInInfo();
  232. commSubmit("UIB010280-service", "save", "glueAction.do");
  233. datagrid1.clearStatus();
  234. model.removenode("/root/datagrid2");
  235. model.makeNode("/root/datagrid2");
  236. model.refresh();
  237. ]]>
  238. </script>
  239. </button>
  240. <line id="line2" style="x1:0px; y1:0px; x2:980px; y2:0px; "/>
  241. <line id="line1" style="x1:0px; y1:30px; x2:980px; y2:30px; "/>
  242. <datagrid id="datagrid1" nodeset="/root/datagrid1/DelCustResult_Row" caption="公司代码^交货状态^序号^产线^标准号^公司名称^查询" colsep="^" colwidth="55, 35, 45, 37, 90, 62, 43" defaultrows="46" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="35" rowsep="|" tooltip="label" style="left:0px; top:57px; width:410px; height:563px; ">
  243. <col disabled="true" ref="CUST_CD" style="text-align:left; "/>
  244. <col disabled="true" ref="PRDNM_CD" type="input" style="text-align:left; background-color:#ffff99; "/>
  245. <col ref="SEQ" type="input" style="background-color:#ffff99; "/>
  246. <col ref="PROD_LINE" type="input" style="background-color:#ffff99; "/>
  247. <col ref="SPEC_STL_GRD" type="input" style="background-color:#ffff99; "/>
  248. <col ref="CUST_NM"/>
  249. <col ref="QUERY" style="cursor:hand; "/>
  250. <script type="javascript" ev:event="onclick">
  251. <![CDATA[
  252. if(datagrid1.col == datagrid1.colRef("QUERY") && datagrid1.row >= datagrid1.fixedRows)
  253. {
  254. if(datagrid1.rowStatus(datagrid1.rows-1) == 1)
  255. {
  256. window.alert("增加状态下不允许该操作!" , "警告");
  257. datagrid1.row = datagrid1.rows-1;
  258. return;
  259. }
  260. if(beGridChanged(datagrid1 , datagrid2) == "1" && currentRow != 0)
  261. {
  262. if(commComfirmBox("数据已修改,是否保存被修改的数据?","提示")=="0")
  263. {
  264. datagrid1.clearStatus();
  265. datagrid2.clearStatus();
  266. }
  267. else
  268. {
  269. save();
  270. }
  271. }
  272. model.removenode("/root/reqData");
  273. model.makeNode("/root/reqData");
  274. //commSendReq("/root/datagrid1/DelSpecResult_Row["+datagrid1.row+"]");
  275. model.makeValue("/root/reqData/CUSTSPECNO",datagrid1.valueMatrix(datagrid1.row , datagrid1.colRef("CUST_CD"))
  276. +datagrid1.valueMatrix(datagrid1.row , datagrid1.colRef("PRDNM_CD"))+datagrid1.valueMatrix(datagrid1.row , datagrid1.colRef("SEQ"))
  277. +datagrid1.valueMatrix(datagrid1.row , datagrid1.colRef("PROD_LINE")));
  278. commSubmit("UIB010280-service", "onclick", "glueAction.do");
  279. model.copyNode("/root/datagrid2" , "/root/resData/GridTolerance_VO");
  280. model.refresh();
  281. currentRow = datagrid1.row;
  282. datagrid1.col = 1;//焦点变化,以免拖动滚动条时做了查询操作
  283. datagrid1.clearStatus();
  284. datagrid2.clearStatus();
  285. datagrid2.rebuildStyle();
  286. datagrid2.cellAttribute("disabled",datagrid2.fixedRows , datagrid2.fixedCols+1 , datagrid2.rows - 1 , datagrid2.cols - 1) = "true";
  287. }
  288. ]]>
  289. </script>
  290. <script type="javascript" ev:event="onentercell">
  291. <![CDATA[
  292. datagrid1.editCell();
  293. ]]>
  294. </script>
  295. <script type="javascript" ev:event="onkeydown">
  296. <![CDATA[
  297. onkeydownmove(datagrid1);
  298. ]]>
  299. </script>
  300. </datagrid>
  301. <input id="input1" ref="/root/formData/CoName" style="left:100px; top:5px; width:230px; height:20px; "/>
  302. <button id="button2" style="left:335px; top:5px; width:70px; height:20px; text-align:center; background-image:../../images/btn_add.gif; ">
  303. <caption>选择</caption>
  304. <script type="javascript" ev:event="onclick">
  305. <![CDATA[
  306. var vleft = window.screenLeft +100 ; //- 355;
  307. var vtop = window.screenTop + 100 ;//- 250;
  308. window.load("../Common/_Customer.xrw",
  309. "modal",
  310. "",
  311. "left:"+vleft+"; top:"+vtop+"; width:810; height:510; sysmenu:visible; min:visible; max:true; resize:true; caption:hidden;",
  312. "/root/interface", "/root/initData");
  313. ]]>
  314. </script>
  315. </button>
  316. <input id="input2" ref="/root/formData/CODE" visibility="hidden" style="left:400px; top:5px; width:90px; height:20px; "/>
  317. <button id="button99" visibility="hidden" style="left:570px; top:5px; width:100px; height:20px; ">
  318. <caption>FIND</caption>
  319. <script type="javascript" ev:event="DOMActivate">
  320. <![CDATA[
  321. find();
  322. ]]>
  323. </script>
  324. </button>
  325. </xhtml:body>
  326. </xhtml:html>