bc2b7b7a765248f79cf5525b201d46ee1ac219d7.svn-base 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <?xml-stylesheet type="text/css" href="../../css/body.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[新余钢铁股份有限公司产销MES系统-II]]>
  7. </xhtml:title>
  8. <model id="model1">
  9. <instance id="instance1">
  10. <root xmlns="">
  11. <initData/>
  12. <codeData/>
  13. <cookieData/>
  14. <popup>
  15. <item>
  16. <label>复制(&amp;C)</label>
  17. <func>copyText</func>
  18. </item>
  19. </popup>
  20. <fwdData>
  21. <UIH090140>
  22. <URL>../../H/H09/UIH090140.xrw</URL>
  23. </UIH090140>
  24. </fwdData>
  25. <INFO/>
  26. </root>
  27. </instance>
  28. <script type="javascript" ev:event="xforms-ready">
  29. <![CDATA[
  30. Init();
  31. //model.makeValue("/root/initData/scrInfo/MNSCR_ID" ,"UIB010071.xrw");
  32. // alert(model.getValue("/root/initData/scrList/ListResult_0_VO/ListResult_0_Row[MNSCR_ID=/root/initData/scrInfo/MNSCR_ID]/MNSCR_URL"));
  33. // load();
  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">
  41. <![CDATA[
  42. submitID = "main-service";
  43. var isAdmin = false;
  44. function Init() {
  45. isAdmin = model.getValue("/root/initData/rcvInfo/ROOT_AMN_YN") == "Y";
  46. showProgressBar();
  47. exec("/root/initData", "", "", "/root/codeData/ListResult_0_VO", "/root/codeData/ListResult_1_VO");
  48. if (model.getValue("/root/resData/userRegInfoData") != "") return;
  49. // 新闻发布
  50. if (model.getXPathValue("count(/root/codeData/ListResult_1_VO/ListResult_1_Row)") > 0)
  51. {
  52. capState.value = "有重要信息发布";
  53. }
  54. JsObject.makeButton("/root/codeData/ListResult_0_VO/ListResult_0_Row");
  55. var isNeedInit = false;
  56. if (model.getXPathValue("count(/root/initData/fwdData)") > 0) {
  57. isNeedInit = true;
  58. var url = model.getValue("/root/initData/fwdData/URL");
  59. model.removenode("/root/initData/fwdData/URL");
  60. if (url.substring(0, 1) == "/")
  61. model.setValue("/root/initData/scrInfo/MNSCR_URL", url);
  62. else
  63. model.setValue("/root/initData/scrInfo/MNSCR_URL", model.getValue("/root/initData/scrInfo/SCR_PATH") + url);
  64. model.setValue("/root/initData/scrInfo/MNSCR_ID", url.substring(url.lastIndexOf("/")+1, url.lastIndexOf(".")));
  65. }
  66. model.removenode("/root/resData");
  67. load();
  68. if (isNeedInit) model.removenode("/root/initData/fwdData");
  69. removeProgressBar();
  70. window.showPopupMenu(false);
  71. //iviewer1.window.showPopupMenu(false);
  72. iviewer1.window.setPopupMenu(true, "/root/popup/item", "label", "func", false);
  73. capID.value = "登录人:" + "admin";
  74. }
  75. function pageInit() {
  76. model.removenode("/root/reqData");
  77. model.removenode("/root/resData");
  78. model.refresh();
  79. }
  80. function load() {
  81. //showProgressBar();
  82. JsObject.setCookie();
  83. var mnscrid = model.getValue("/root/initData/scrInfo/MNSCR_ID");
  84. var url = model.getValue("/root/initData/scrInfo/MNSCR_URL");
  85. if (url == "") {
  86. url = model.getValue("/root/initData/scrInfo/SCR_PATH") +
  87. model.getValue("/root/initData/scrInfo/MNSCR_ID") + ".xrw";
  88. } else {
  89. model.setValue("/root/initData/scrInfo/MNSCR_ID", url.substring(url.lastIndexOf("/") + 1, url.lastIndexOf(".")));
  90. }
  91. model.makeValue("/root/initData/rcvInfo/REG_ID" , "admin");
  92. model.makeValue("/root/initData/rcvInfo/ROLE_CD" , "ADMIN");
  93. iviewer1.src = url;
  94. exec("/root/initData", "", "find");
  95. model.setValue("/root/initData/scrInfo/MNSCR_ID", mnscrid);
  96. if (model.getValue("/root/resData/userRegInfoData") != "") return;
  97. JsObject.setButton("/root/resData/ListResult_0_VO/ListResult_0_Row");
  98. pageInit();
  99. JsObject.setGrid();
  100. var java = iviewer1.window.javaScript;
  101. try {
  102. // java.Init(model.instances(0).selectSingleNode("/root/initData/rcvInfo"));
  103. var submodel = iviewer1.window.model;
  104. // if (submodel.getXPathValue("count(/root/initData/rcvInfo)") == 0) {
  105. submodel.makeNode("/root/initData/rcvInfo");
  106. var nodeList = model.instances(0).selectSingleNode("/root/initData/rcvInfo").childNodes;
  107. node = submodel.instances(0).selectSingleNode("/root/initData/rcvInfo");
  108. for (var i = 0; i < nodeList.length; i++)
  109. node.appendChild(nodeList.item(i));
  110. // }
  111. // if (submodel.getXPathValue("count(/root/popup)") == 0) {
  112. submodel.makeNode("/root/popup");
  113. var nodeList = model.instances(0).selectSingleNode("/root/popup").childNodes;
  114. node = submodel.instances(0).selectSingleNode("/root/popup");
  115. for (var i = 0; i < nodeList.length; i++)
  116. node.appendChild(nodeList.item(i));
  117. // }
  118. java.Init();
  119. } catch(e) {}
  120. var title = "";
  121. try {
  122. title = " " + java.setTitle();
  123. } catch(e) {
  124. title = " " + iviewer1.window.document.title;
  125. }
  126. title = " " + title.substring(0, title.lastIndexOf(">>") + 2) + "\n " + title.substring(title.lastIndexOf(">>") + 2);
  127. capTitle.text = title;
  128. removeProgressBar();
  129. capUI.value = "登录界面:" + url.substring(url.lastIndexOf("/") + 1, url.lastIndexOf("."))
  130. }
  131. function open(node) {
  132. model.makeNode("/root/initData/fwdData");
  133. var destnode = model.instances(0).selectSingleNode("/root/initData/fwdData");
  134. if (typeof node == "object") duplicate(node, destnode);
  135. var vleft = window.screenLeft + 20;
  136. var vtop = window.screenTop + 20;
  137. window.load("./main.xrw", "new", "",
  138. "left:"+vleft+"; top:"+vtop+"; width:990; height:730;", "/root/initData", "root/initData");
  139. model.removenode("/root/initData/fwdData");
  140. }
  141. function getInitDataNode() {
  142. try {
  143. return model.instances(0).selectSingleNode("/root/initData/fwdData");
  144. } catch (e) {
  145. return null;
  146. }
  147. }
  148. function JsClass() {
  149. var btns;
  150. this.makeButton = function(nodeset) { // 动态生成按钮
  151. var cnt = model.getXPathValue("count(" + nodeset + ")");
  152. btns = new Array(cnt);
  153. for (var i=cnt; i>0; i--) {
  154. btns[i-1] = group1.createChild("xforms:button", "id:" + model.getValue(nodeset + "["+i+"]/FC_ID") +
  155. ";left:893px; top:27px; width:70px; height:18px;");
  156. }
  157. }
  158. this.setButton = function(nodeset) {
  159. var length = btns.length;
  160. for (var i=0; i<length; i++) {
  161. btns[i].visible = false;
  162. }
  163. //var btnPosition = new Array(920, 845, 770, 695, 620, 545, 470, 395);
  164. var btnLimm = 980-75; // 最后一个按键的位置
  165. var btnSize = 75;
  166. var cnt = model.getXPathValue("count(" + nodeset + ")");
  167. for (var i=cnt; i>0; i--) {
  168. var id = model.getValue(nodeset + "[" + i + "]/FC_ID");
  169. // if (id == "NULL") continue;
  170. var control = document.controls(id);
  171. if(id == "F007") {control.visible = false; continue;}
  172. control.visible = true;
  173. control.disabled = false;
  174. control.attribute("left") = btnLimm;
  175. if (model.getValue(nodeset + "[" + i + "]/FC_NM").length > 2)
  176. control.attribute("text-align") = "right";
  177. control.text = model.getValue(nodeset + "[" + i + "]/FC_NM");
  178. control.attribute("background-image") = model.getValue(nodeset + "[" + i + "]/FN_IMG_URL");
  179. control.attribute("js_func") = model.getValue(nodeset + "[" + i + "]/JS_FUNC_NM");
  180. btnLimm -= btnSize;
  181. }
  182. if (getDocument()) {
  183. var srcNode = "/root/cookieData/" + docName + "/buttons";
  184. if (nodeset != srcNode) {
  185. model.removenode(srcNode);
  186. model.makeNode(srcNode);
  187. var cnt = model.getXPathValue("count(" + nodeset + ")");
  188. for (var i=1; i<=cnt; i++) {
  189. model.makeValue(srcNode + "[" + i + "]/FC_ID", model.getValue(nodeset + "[" + i + "]/FC_ID"));
  190. model.makeValue(srcNode + "[" + i + "]/FC_NM", model.getValue(nodeset + "[" + i + "]/FC_NM"));
  191. model.makeValue(srcNode + "[" + i + "]/FN_IMG_URL", model.getValue(nodeset + "[" + i + "]/FN_IMG_URL"));
  192. model.makeValue(srcNode + "[" + i + "]/JS_FUNC_NM", model.getValue(nodeset + "[" + i + "]/JS_FUNC_NM"));
  193. }
  194. } else {
  195. model.setValue("/root/initData/scrInfo/MNSCR_ID", docName);
  196. model.refresh();
  197. }
  198. }
  199. }
  200. var docName = "";
  201. this.setCookie = function() {
  202. if (!getDocument()) return;
  203. var arrGrid = getGrid();
  204. var length = arrGrid.length;
  205. for (var i = 0; i < length; i++) {
  206. var oGrid = arrGrid[i];
  207. var cols = oGrid.cols;
  208. var colwidth = "";
  209. for (var j = 0; j < cols; j++)
  210. colwidth += "," + oGrid.colWidth(j);
  211. var name = docName + "." + oGrid.attribute("id");
  212. model.registry("HKEY_LOCAL_MACHINE", "SOFTWARE\\Comsquare\\TFViewer\\DataGrid", name, "STRING") = colwidth.substring(1);
  213. }
  214. }
  215. this.setGrid = function() {
  216. if (!getDocument()) return;
  217. var arrGrid = getGrid();
  218. var length = arrGrid.length;
  219. for (var i = 0; i < length; i++) {
  220. var oGrid = arrGrid[i];
  221. var name = docName + "." + oGrid.attribute("id");
  222. var colwidth = model.registry("HKEY_LOCAL_MACHINE", "SOFTWARE\\Comsquare\\TFViewer\\Config", name, "STRING");
  223. if (typeof colwidth == "undefined" || colwidth == "") continue;
  224. colwidth = colwidth.split(",");
  225. var cols = (colwidth.length < oGrid.cols)? colwidth.length : oGrid.cols;
  226. for (var j = 0; j < cols; j++) {
  227. if (colwidth[j] == 0 && isAdmin) continue;
  228. oGrid.colWidth(j) = colwidth[j];
  229. }
  230. }
  231. }
  232. function getDocument() {
  233. var src = iviewer1.src;
  234. if (src == "") return false;
  235. src = iviewer1.window.document.url;
  236. docName = src.substring(src.lastIndexOf("/") + 1, src.lastIndexOf("."));
  237. return true;
  238. }
  239. function getGrid() {
  240. var arrGrid = new Array();
  241. var controls = iviewer1.window.document.controls;
  242. var length = controls.length;
  243. var idx = 0;
  244. for (var i = 0; i < length; i++ ) {
  245. var control = controls.item(i);
  246. if (control.elementName == "xforms:datagrid")
  247. arrGrid[idx++] = control;
  248. }
  249. return arrGrid;
  250. }
  251. }
  252. var JsObject = new JsClass();
  253. var clockTimer;
  254. function setPage() {
  255. clockTimer = window.setInterval("intervalRun()", 100);
  256. }
  257. function intervalRun() {
  258. window.clearInterval(clockTimer);
  259. var src = iviewer1.window.document.url;
  260. JsObject.setButton("/root/cookieData/" + src.substring(src.lastIndexOf("/") + 1, src.lastIndexOf(".")) + "/buttons");
  261. }
  262. ]]>
  263. </script>
  264. </xhtml:head>
  265. <xhtml:body overflow="hidden" scroll="vertical" pagewidth="980" pageheight="695" style="font-family:宋体; ">
  266. <group id="group1" style="left:0px; top:0px; width:980px; height:67px; ">
  267. <img id="img1" src="../../images/topframe.jpg" style="left:0px; top:0px; width:461px; height:40px; background-stretch:stretch; "/>
  268. <caption id="capTitle" style="left:470px; top:1px; width:235px; height:26px; color:#3366ff; vertical-align:top; background-image:../../images/tit.gif; "/>
  269. <caption id="caption1" visibility="hidden" style="left:770px; top:0px; width:55px; height:20px; vertical-align:middle; background-color:#ccffcc; border-color:#000000; border-style:solid; cursor:hand; ">
  270. <![CDATA[界面选取]]>
  271. <script type="javascript" ev:event="onclick">
  272. <![CDATA[
  273. var vleft = window.screenLeft + window.width/2 - 355;
  274. var vtop = window.screenTop + window.height/2 - 250;
  275. window.load("./menu2.xrw",
  276. "modal",
  277. "",
  278. "left:"+vleft+"; top:"+vtop+"; width:715; height:500; sysmenu:visible; min:visible; max:true; resize:true; caption:hidden;",
  279. "/root/initData", "/root/initData");
  280. Init();
  281. ]]>
  282. </script>
  283. </caption>
  284. <select1 id="combo1" ref="/root/initData/scrInfo/MNSCR_ID" visibility="hidden" appearance="minimal" style="left:830px; top:0px; width:150px; height:20px; ">
  285. <choices>
  286. <itemset nodeset="/root/initData/scrList/ListResult_0_VO/ListResult_0_Row[LEVEL = 2]">
  287. <label ref="MNSCR_NM"/>
  288. <value ref="MNSCR_ID"/>
  289. </itemset>
  290. </choices>
  291. <script type="javascript" ev:event="xforms-value-changed">
  292. <![CDATA[
  293. model.setValue("/root/initData/scrInfo/MNSCR_URL",
  294. model.getValue("/root/initData/scrList/ListResult_0_VO/ListResult_0_Row[MNSCR_ID=/root/initData/scrInfo/MNSCR_ID]/MNSCR_URL"));
  295. load();
  296. ]]>
  297. </script>
  298. </select1>
  299. <script type="javascript" ev:event="onclick">
  300. <![CDATA[
  301. var target = event.target;
  302. var control = document.controls(target);
  303. if (control.elementName != "xforms:button") return;
  304. // showProgressBar();
  305. var java = iviewer1.window.javaScript;
  306. try {
  307. if (control.attribute("js_func") != "") {
  308. eval(control.attribute("js_func"));
  309. }
  310. } catch(e) {
  311. alert("脚本执行错误:" + control.attribute("js_func"));
  312. }
  313. try {
  314. if (iviewer1.model.getValue("/root/resData/userRegInfoData") != "") {
  315. alert("遗失用户登录信息,请重新登录!");
  316. window.load("./login.xrw", "replace");
  317. }
  318. } catch(e) {}
  319. // removeProgressBar();
  320. ]]>
  321. </script>
  322. <button id="button1" visibility="hidden" style="left:705px; top:0px; width:60px; height:20px; background-color:#ccffcc; border-style:solid; ">
  323. <caption>操作手册</caption>
  324. <script type="javascript" ev:event="DOMActivate">
  325. <![CDATA[
  326. var url = "http://10.10.0.10:8040/";
  327. window.load(url+"xg3mes/help/help.html" , "html");
  328. ]]>
  329. </script>
  330. </button>
  331. </group>
  332. <iviewer id="iviewer1" style="left:0px; top:50px; width:980px; height:620px; "/>
  333. <caption id="capState" style="left:0px; top:675px; width:980px; height:20px; color:#ff0000; text-align:center; background-color:#ccccff; border-color:#ccccff; border-style:solid; ">
  334. <script type="javascript" ev:event="onclick">
  335. <![CDATA[
  336. if (capState.value != "")
  337. {
  338. open(model.instances(0).selectSingleNode("/root/fwdData/UIH090140"));
  339. }
  340. ]]>
  341. </script>
  342. </caption>
  343. <caption id="capUI" style="left:0px; top:675px; width:200px; height:20px; text-align:center; background-color:#ccccff; border-color:#ccccff; border-style:solid; "/>
  344. <caption id="capID" style="left:780px; top:675px; width:200px; height:20px; text-align:center; background-color:#ccccff; border-color:#ccccff; border-style:solid; "/>
  345. </xhtml:body>
  346. </xhtml:html>