SMLLP01000_누적결과조회.xrw 30 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <!--
  3. * 제 목 : SMLLP00100_WorkList조회.xrw
  4. * 설 명 : WorkList조회
  5. * 설 계 자 : (주)에이씨케이 -
  6. * 작 성 자 : (주)에이씨케이 - 조철형
  7. * 작 성 일 : 2007.08.16
  8. * 수정이력 :
  9. * 기 타 :
  10. -->
  11. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.css" ?>
  12. <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">
  13. <xhtml:head>
  14. <xhtml:title/>
  15. <model id="model1">
  16. <instance id="instance1">
  17. <root>
  18. <main>
  19. <acptddlist>
  20. <cd/>
  21. <nm/>
  22. <testmdlcd/>
  23. </acptddlist>
  24. <testmdllist>
  25. <nm00 chk="" gbn="" cd="" readonly=""/>
  26. <nm01 chk="" gbn="" cd="" readonly=""/>
  27. <nm02 chk="" gbn="" cd="" readonly=""/>
  28. <nm03 chk="" gbn="" cd="" readonly=""/>
  29. <nm04 chk="" gbn="" cd="" readonly=""/>
  30. <nm05 chk="" gbn="" cd="" readonly=""/>
  31. <nm06 chk="" gbn="" cd="" readonly=""/>
  32. <nm07 chk="" gbn="" cd="" readonly=""/>
  33. <nm08 chk="" gbn="" cd="" readonly=""/>
  34. <nm09 chk="" gbn="" cd="" readonly=""/>
  35. <nm10 chk="" gbn="" cd="" readonly=""/>
  36. </testmdllist>
  37. <rsltlist>
  38. <row>
  39. <a/>
  40. <b/>
  41. <c/>
  42. <d/>
  43. <e/>
  44. </row>
  45. <hearder/>
  46. </rsltlist>
  47. <rsltlist2>
  48. <row>
  49. <chk/>
  50. <tclsscrnnm/>
  51. </row>
  52. </rsltlist2>
  53. </main>
  54. <send>
  55. <data1/>
  56. <data2/>
  57. </send>
  58. <init>
  59. <LB0103>
  60. <cd/>
  61. <nm/>
  62. </LB0103>
  63. </init>
  64. <hidden>
  65. <ref>
  66. <tclscdlist>
  67. <testgrup/>
  68. </tclscdlist>
  69. <startdd/>
  70. <enddd/>
  71. <pid/>
  72. <refgbn>1</refgbn>
  73. <acptdd/>
  74. <acptdde/>
  75. <testmdllist/>
  76. <tclscdlist/>
  77. <patNM/>
  78. </ref>
  79. <temp>
  80. <rsltlist/>
  81. </temp>
  82. <testmdllist/>
  83. <allchk/>
  84. </hidden>
  85. </root>
  86. </instance>
  87. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  88. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  89. <script type="javascript" src="../../../lis/commonweb/js/LLZ001.js"/>
  90. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  91. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  92. <script type="javascript" src="../../../com/commonweb/js/numericHelper.js"/>
  93. <script type="javascript" src="../../../com/commonweb/js/tchartHelper.js"/>
  94. <!-- 시행부서 조회-->
  95. <submission id="TRLZZ00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init"/>
  96. <submission id="TRLLP01001" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/acptddlist"/>
  97. <submission id="TRLLP01002" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/testmdllist"/>
  98. <submission id="TRLLP01003" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/hidden/temp/rsltlist"/>
  99. <submission id="TRLZZ00103" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/LB0103"/>
  100. <script type="javascript" ev:event="xforms-ready">
  101. <![CDATA[
  102. fSetInit();
  103. ]]>
  104. </script>
  105. <submission id="TRLLP90402" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/hidden/patnm"/>
  106. </model>
  107. <script type="javascript">
  108. <![CDATA[
  109. function fSetInit(ref){
  110. if(ref != 2) {
  111. //datagrid2.fixedcellcheckbox(0,1)=true;
  112. model.resetInstanceNode("/root/main/acptddlist");
  113. model.removeNodeset("/root/main/rsltlist/row");
  114. model.removeNodeset("/root/main/rsltlist2/row");
  115. datagrid2.rowHeight(0) = 30;
  116. datagrid3.fixedcellcheckbox(0,1)=true;
  117. datagrid3.fixedcellischeck(0, 1) = false;
  118. datagrid3.removeRow();
  119. //datagrid2.removeRow();
  120. model.setValue("/root/hidden/ref/startdd", getCurrentDate());
  121. model.setValue("/root/hidden/ref/enddd", getCurrentDate());
  122. model.setValue("/root/hidden/ref/tclscdlist/testgrup", "");
  123. model.setValue("/root/hidden/ref/pid", "");
  124. fMakeTestMdlList();
  125. if(ref == 1) {
  126. var cols = datagrid2.cols-datagrid2.fixedCols;
  127. var rows = datagrid2.rows-datagrid2.fixedRows;
  128. //alert(cols)
  129. for( var i = 0; i < cols; i++ ) {
  130. datagrid2.removeColumn(false);
  131. }
  132. for( var i = 0; i < rows; i++ ) {
  133. datagrid2.removeRow(false);
  134. }
  135. model.removeNodeset("/root/main/rsltlist");
  136. model.makeNode("/root/main/rsltlist/row");
  137. model.refresh();
  138. }
  139. }
  140. fBaseInfoRef("0103|");
  141. createTChart("object1", 215, 5, 975, 565, case2); //그래프 object 생성
  142. //createTChart8("object1", 215, 5, 975, 565, case2); //그래프 object 생성
  143. model.refresh();
  144. }
  145. function fMakeTestMdlList(){
  146. submit("TRLLP01002");
  147. datagrid1.rowHidden(0) = true;
  148. if(model.getvalue("/root/main/testmdllist/maxcol") !=""){
  149. var maxcol = parseInt(model.getvalue("/root/main/testmdllist/maxcol")) + 1
  150. for(i=maxcol;i<datagrid1.cols;i++){
  151. datagrid1.colHidden(i) = true;
  152. }
  153. }
  154. for (var r=1; r<datagrid1.rows; r++) {
  155. for (var c=0; c<datagrid1.cols; c++) {
  156. var vCol = c.toString().getLeftPad(2,0);
  157. var imgYN = model.getValue("/root/main/testmdllist["+r+"]/nm" + vCol+"/@img");
  158. if(imgYN == "Y"){
  159. datagrid1.cellstyle("background-image", r, c) = "../../../lis/commonweb/images/chkBOOLG0.gif";
  160. datagrid1.cellstyle("background-position",r, c) = "left";
  161. datagrid1.cellstyle("background-color" , r,c) = "#EEFFFF";
  162. datagrid1.cellstyle("padding-left", r, c) = 15;
  163. }
  164. else{
  165. model.setValue("/root/main/testmdllist["+r+"]/nm" + vCol + "/@readonly", "true");
  166. datagrid1.cellStyle("background-color",r,c,r,c) = "#eaeaea";
  167. }
  168. if(c == 0){
  169. //datagrid1.cellStyle("background-color",r,c,r,c) = "#b9e5fb";
  170. }
  171. }
  172. }
  173. }
  174. function fTestLRGList_Click(){
  175. var row = datagrid1.row;
  176. for(i=0; i<datagrid1.cols; i++){
  177. fTestMdlList_Click(row , i);
  178. }
  179. }
  180. function fTestMdlList_Click(row, col) {
  181. var curRow = row;
  182. var curCol = col;
  183. var vCol = curCol.toString().getLeftPad(2,0);
  184. var chk = model.getValue("/root/main/testmdllist["+curRow+"]/nm" + vCol + "/@chk");
  185. var vSlipcd = model.getValue("/root/main/testmdllist["+curRow+"]/nm" + vCol + "/@cd");
  186. var vReadonly = model.getValue("/root/main/testmdllist["+curRow+"]/nm" + vCol + "/@readonly");
  187. var vSelSlipcd = model.getvalue("/root/hidden/testmdllist");
  188. if (vReadonly != "true") {
  189. if (chk == "1") {
  190. datagrid1.cellstyle("background-image", curRow, curCol) = "../../../lis/commonweb/images/chkBOOLG0.gif";
  191. datagrid1.cellstyle("background-position",curRow, curCol) = "left";
  192. datagrid1.cellstyle("padding-left", curRow, curCol) = 15;
  193. model.setValue("/root/main/testmdllist["+curRow+"]/nm" + vCol + "/@chk", "0");
  194. datagrid1.cellStyle("background-color",curRow,curCol,curRow,curCol) = "#EEFFFF";
  195. //var color = new Array(3);
  196. //color = fCOMLIS_getBackColor("WHITE");
  197. //TFGridRowColor("grdSlipList", curRow, curCol, curRow, curCol, 1, color[0], color[1], color[2]);
  198. if (vSelSlipcd.indexOf("'" + vSlipcd.getTrim() + "'" + ",") >= 0) {
  199. vSelSlipcd = vSelSlipcd.replace("'" +vSlipcd.getTrim() + "'"+ ",", "");
  200. }
  201. } else {
  202. datagrid1.cellstyle("background-image", curRow, curCol) = "../../../lis/commonweb/images/chkBOOLG1.gif";
  203. datagrid1.cellstyle("background-position",curRow, curCol) = "left";
  204. datagrid1.cellStyle("background-color",curRow,curCol,curRow,curCol) = "#ffe79d";
  205. datagrid1.cellstyle("padding-left", curRow, curCol) = 15;
  206. model.setValue("/root/main/testmdllist["+curRow+"]/nm" + vCol + "/@chk", "1");
  207. //TFGridRowColor("grdSlipList", curRow, curCol, curRow, curCol, 1, 221, 234, 234);
  208. if (vSelSlipcd.indexOf(vSlipcd.getTrim() + ",") <= 0) {
  209. vSelSlipcd = vSelSlipcd +"'" +vSlipcd.getTrim()+"'" + "," ;
  210. }
  211. }
  212. model.setValue("/root/hidden/testmdllist", vSelSlipcd);
  213. }
  214. }
  215. function fGetACPTDD() {
  216. var vText = model.getValue("/root/hidden/ref/pid");
  217. if(vText == "" ){
  218. messageBox("등록번호를","C001","") ;
  219. return;
  220. }
  221. model.copyNode("/root/send/data1" , "/root/hidden/ref");
  222. submit("TRLLP01001",false);
  223. var mRow = getNodesetCount("/root/main/acptddlist");
  224. if(mRow > 0){
  225. model.setvalue("/root/hidden/ref/startdd" ,model.getvalue("/root/main/acptddlist["+mRow+"]/cd") );
  226. model.setvalue("/root/hidden/ref/enddd" ,model.getvalue("/root/main/acptddlist/cd") );
  227. fGetTestMDLRef();
  228. }
  229. else{
  230. model.setValue("/root/hidden/ref/startdd", getCurrentDate());
  231. model.setValue("/root/hidden/ref/enddd", getCurrentDate());
  232. messageBox("결과가 ","I004","") ;
  233. }
  234. model.refresh();
  235. /*var maxRow = getNodesetCount("/root/main/acptddlist");
  236. model.setValue("/root/hidden/ref/acptdd", model.getValue("/root/main/acptddlist[" + maxRow + "]/cd"));
  237. model.setValue("/root/hidden/ref/startdd", model.getValue("/root/main/acptddlist[" + maxRow + "]/cd"));
  238. model.setValue("/root/hidden/ref/acptdde", model.getValue("/root/MainData/TKDDList/tkdde/cd"));
  239. model.setValue("/root/hidden/ref/enddd", model.getValue("/root/MainData/TKDDList/tkdde/cd"));*/
  240. }
  241. function fGetTestMDLRef(){
  242. var vTestmdlcdStr = "";
  243. var maxr = getNodesetCount("/root/main/acptddlist");
  244. for(var j=1; j<=maxr; j++){
  245. if(model.getValue("/root/main/acptddlist["+j+"]/cd") >= model.getValue("/root/hidden/ref/startdd")){
  246. //alert("j= " + model.getValue("/root/MainData/TKDDList/tkdd["+j+"]/cd"));
  247. var vSelAcptDD = model.getValue("/root/main/acptddlist["+j+"]/cd");
  248. vTestmdlcdStr = vTestmdlcdStr + model.getValue("/root/main/acptddlist["+j+"]/testmdlcd");
  249. }
  250. }
  251. var vMaxRow = datagrid1.rows- 1
  252. var vMaxCol = model.getvalue("/root/main/testmdllist/maxcol");
  253. for (var r=1; r<=vMaxRow; r++) {
  254. for (var c=1; c<=vMaxCol; c++) {
  255. var vCol =c.toString().getLeftPad(2,0);
  256. var vTestmdlcd = model.getValue("/root/main/testmdllist[" + r + "]/nm" + vCol + "/@cd");
  257. if(vTestmdlcd != "") {
  258. if (vTestmdlcdStr.indexOf(vTestmdlcd.getTrim()) < 0) {
  259. model.setValue("/root/main/testmdllist[" + r + "]/nm" + vCol + "/@readonly", "true");
  260. model.setValue("/root/main/testmdllist[" + r + "]/nm" + vCol + "/@chk", "0");
  261. datagrid1.cellstyle("background-image", r, c) = "../../../lis/commonweb/images/chkBOOLG-.gif";
  262. datagrid1.cellstyle("background-position",r, c) = "left";
  263. //datagrid1.cellstyle("background-color" , r,c) = "#EEFFFF";
  264. datagrid1.cellstyle("background-color" , r,c) = "#FFFFFA";
  265. datagrid1.cellstyle("padding-left", r, c) = 15;
  266. //var color = new Array(3);
  267. //color = fCOMLIS_getBackColor("GRAY");
  268. //TFGridRowColor("grdSlipList", r, c, r, c, 1, color[0], color[1], color[2]);
  269. } else {
  270. model.setValue("/root/main/testmdllist[" + r + "]/nm" + vCol + "/@readonly", "false");
  271. model.setValue("/root/main/testmdllist[" + r + "]/nm" + vCol + "/@chk", "0");
  272. datagrid1.cellstyle("background-image", r, c) = "../../../lis/commonweb/images/chkBOOLG0.gif";
  273. datagrid1.cellstyle("background-position",r, c) = "left";
  274. datagrid1.cellstyle("background-color" , r,c) = "#EEFFFF";
  275. datagrid1.cellstyle("padding-left", r, c) = 15;
  276. //var color = new Array(3);
  277. //color = fCOMLIS_getBackColor("WHITE");
  278. //TFGridRowColor("grdSlipList", r, c, r, c, 1, color[0], color[1], color[2]);
  279. }
  280. }
  281. }
  282. model.setValue("/root/hidden/testmdllist", "");
  283. }
  284. }
  285. function fKeyUP(){
  286. if(event.keyCode == "13"){
  287. model.setvalue("/root/hidden/ref/pid", ipt_PID.currentText);
  288. model.refresh();
  289. fGetACPTDD();
  290. ipt_PID.selBegin = 0;
  291. ipt_PID.selEnd = ipt_PID.currentText.length;
  292. }
  293. }
  294. function fGetNResultRef(){
  295. var vText = model.getValue("/root/hidden/ref/pid");
  296. if(vText == "" ){
  297. messageBox("등록번호를","C001","") ;
  298. return;
  299. }
  300. var vText1 = model.getvalue("/root/hidden/testmdllist");
  301. var vText2 = model.getvalue("/root/hidden/ref/tclscdlist/testgrup");
  302. if(vText1 == "" && vText2==""){
  303. messageBox("검사중분류를 ","C002","") ;
  304. return;
  305. }
  306. var cols = datagrid2.cols-datagrid2.fixedCols;
  307. var rows = datagrid2.rows-datagrid2.fixedRows;
  308. //alert(cols)
  309. for( var i = 0; i < cols; i++ ) {
  310. datagrid2.removeColumn(false);
  311. }
  312. for( var i = 0; i < rows; i++ ) {
  313. datagrid2.removeRow(false);
  314. }
  315. model.removeNodeset("/root/main/rsltlist");
  316. model.makeNode("/root/main/rsltlist/row");
  317. model.refresh();
  318. var vSelSlipcd = model.getvalue("/root/hidden/testmdllist");
  319. if(vSelSlipcd != "") model.setvalue("/root/hidden/ref/testmdllist" , vSelSlipcd.substring(0,vSelSlipcd.length -1));
  320. else model.setvalue("/root/hidden/ref/testmdllist","");
  321. model.copyNode("/root/send/data1" , "/root/hidden/ref");
  322. submit("TRLLP01003" , false);
  323. var gridCaption = model.getValue("/root/hidden/temp/rsltlist/header/caption");
  324. if(gridCaption == "") return;
  325. //ref 정보
  326. var gridColRef = model.getValue("/root/hidden/temp/rsltlist/header/colref");
  327. var gridColRefArray = gridColRef.split("^");
  328. var gridColType = model.getValue("/root/hidden/temp/rsltlist/header/type");
  329. var gridColTypeArray = gridColType.split("^");
  330. for( var i = 0; i < gridColRefArray.length; i++ ) {
  331. datagrid2.addColumn("ref:" + gridColRefArray[i] + "; type:"+gridColTypeArray[i]+"; ", false);
  332. }
  333. datagrid2.colWidth(1) = 22;
  334. datagrid2.colWidth(2) = 150;
  335. datagrid2.colWidth(3) = 100;
  336. datagrid2.colWidth(4) = 80;
  337. for( i = 5; i < datagrid2.cols; i++ ) {
  338. datagrid2.colWidth(i) = 70;
  339. }
  340. datagrid2.caption = gridCaption;
  341. var node = instance1.selectSingleNode("/root/main");
  342. node.replaceChild(instance1.root.hidden.temp.rsltlist, instance1.root.main.rsltlist);
  343. datagrid2.fixedcellcheckbox(0,1)=true;
  344. datagrid2.rowheight(0) = 30;
  345. //alert(datagrid2.rowheight(0));
  346. datagrid2.rebuild();
  347. fReMake();
  348. }
  349. function fReMake(){
  350. xx = 0;
  351. //alert(model.getvalue("/root/main/rsltlist/row["+9+"]/judg0"))
  352. for(i=1;i<datagrid2.rows;i++){
  353. for(j=5;j<datagrid2.cols;j++){
  354. var vJudg = model.getvalue("/root/main/rsltlist/row["+i+"]/judg" + xx);
  355. if(vJudg == "H"){
  356. datagrid2.cellStyle("background-color",i,j,i,j) = "#f7a08b";
  357. }
  358. else if(vJudg == "L"){
  359. datagrid2.cellStyle("background-color",i,j,i,j) = "#b9e5fb";
  360. }
  361. xx ++;
  362. }
  363. xx = 0
  364. }
  365. }
  366. function fDrawGraph(){
  367. model.copyNode("/root/main/rsltlist2" , "/root/main/rsltlist");
  368. model.refresh();
  369. drawLine999(object1, datagrid2, 2, "누적결과추이", true);
  370. }
  371. function drawLine999(tChartObj, gridObj, row, title, refresh) {
  372. // TChart 초기화
  373. if( refresh ) {
  374. tChartObj.RemoveAllSeries();
  375. tChartObj.Tools.clear();
  376. }
  377. if( title != null || title == "" ) {
  378. tChartObj.Header.Text(0) = title; // Title 설정
  379. }
  380. tChartObj.Aspect.View3D = 0; // 모양 설정 :: 0 = 2D | 1 = 3D
  381. tChartObj.Legend.CheckBoxes = true;
  382. tChartObj.Legend.Alignment = 0; // Legend 위치 설정 :: 0 = left | 1 = right | 2 = top| 3 = bottom
  383. var Rnd1, Rnd2, Rnd3;
  384. var cColor;
  385. var i;
  386. var x, y;
  387. //var trgRow = row;
  388. for(j = 1;j<gridObj.rows;j++){
  389. if(gridObj.valueMatrix(j, 1) == "true"){
  390. tChartObj.AddSeries(0); // TChart Type 설정 :: 0 = Line | 1 = Bar ..
  391. var seriesIndex =tChartObj.SeriesCount - 1;
  392. tChartObj.Series(seriesIndex).asLine.Pointer.Visible = true;
  393. tChartObj.Series(seriesIndex).asLine.Pointer.Style = j; //PointStyle 설정 :: 0 - 8
  394. tChartObj.Series(seriesIndex).Title = datagrid2.valueMatrix(j, 2);
  395. //tChartObj.Series(seriesIndex).Marks.Visible = true;
  396. //tChartObj.Series(seriesIndex).Marks.Style = 0;
  397. tChartObj.Axis.Bottom.Labels.Angle = 270;
  398. //tChartObj.Series(cline - 2).Marks.Style = 0;
  399. Rnd1 = Math.random();
  400. Rnd2 = Math.random();
  401. Rnd3 = Math.random();
  402. cColor = window.rgb( (255 - 1) * Rnd1 + 1, (255 - 1) * Rnd2 + 1 , (255 - 1) * Rnd3 + 1);
  403. xx= 0;
  404. for( i = 5; i < gridObj.cols; i++ ){
  405. x = model.getvalue("/root/main/rsltlist/row["+j+"]/acptdt" + xx);
  406. //x = "111"
  407. y = model.getvalue("/root/main/rsltlist/row["+j+"]/rsltORD" + xx);
  408. if(y != "" && !isNaN(y)){
  409. x = x.substring(0,4) + "-" + x.substring(4,6) + "-" +x.substring(6,8) + " " + x.substring(8,10) + ":" + x.substring(10,12);
  410. tChartObj.Series(seriesIndex).Add (y, x, tChartObj.Series(seriesIndex).Color);
  411. tChartObj.Series(seriesIndex).LegendItemColor(cColor);
  412. }
  413. xx ++;
  414. }
  415. }
  416. }
  417. }
  418. function fGraphGrdClick(){
  419. var col = datagrid3.col;
  420. var row = datagrid3.row;
  421. if(col == 1){
  422. if(model.getvalue("/root/main/rsltlist2/row["+row+"]/chk") == "true"){
  423. datagrid2.valueMatrix(row , 1) = "true";
  424. }
  425. else {
  426. datagrid2.valueMatrix(row , 1) = "false";
  427. }
  428. drawLine999(object1, datagrid2, 2, "누적결과추이", true);
  429. }
  430. }
  431. //키이벤트
  432. function fKeyEvent(){
  433. if(event.keyCode == "13"){
  434. if(event.target == "ipt_PID"){ //입력자
  435. model.makeValue("/root/hidden/pid",ipt_PID.currentText);
  436. model.refresh();
  437. fUserNMRef();
  438. ipt_PID.selBegin = 0;
  439. ipt_PID.selEnd = ipt_PID.currentText.length;
  440. model.setFocus("ipt_PID");
  441. }
  442. }
  443. }
  444. function fUserNMRef(){
  445. if(model.getvalue("/root/hidden/pid") != ""){
  446. model.removeNodeset("/root/hidden/ref/patnm");
  447. model.makeValue("/root/send/pid" , model.getvalue("/root/hidden/pid"));
  448. submit("TRLLP90402");
  449. //model.setValue("/root/hidden/ref/patNM", model.getValue("/root/main/getUsernm/patnm"));
  450. }
  451. model.removeNodeset("/root/send/pid");
  452. model.refresh();
  453. }
  454. //전체 선택 버튼 선택시
  455. function fAllChkYN(){
  456. var bChk = model.getValue("/root/hidden/allchk"); //체크여부
  457. var vRow = datagrid1.rows- 1;
  458. var vCol = datagrid1.cols;
  459. var vReadOnly; //Readonly 속성 여부
  460. var vSlipcd; //분류코드
  461. var vSelSlipcd = ""; //조회할분류코드 리스트
  462. if(bChk){ //선택
  463. for(i = 1; i <= vRow; i++){
  464. for(j = 0; j < vCol; j++){
  465. vReadOnly = model.getValue("/root/main/testmdllist[" + i + "]/nm" + j.toString().getLeftPad(2,0) + "/@readonly");
  466. if(vReadOnly == "false"){ //readonly = false
  467. model.setValue("/root/main/testmdllist[" + i + "]/nm" + j.toString().getLeftPad(2,0) + "/@chk", "1"); //체크
  468. datagrid1.cellstyle("background-image", i, j) = "../../../lis/commonweb/images/chkBOOLG1.gif"; //이미지
  469. datagrid1.cellstyle("background-position", i, j) = "left"; //좌측
  470. datagrid1.cellStyle("background-color", i, j, i, j) = "#ffe79d"; //오른쪽배경
  471. datagrid1.cellstyle("padding-left", i, j) = 15;
  472. vSlipcd = model.getValue("/root/main/testmdllist["+ i +"]/nm" + j.toString().getLeftPad(2,0) + "/@cd"); //분류코드
  473. vSelSlipcd += "'" +vSlipcd.getTrim() + "'"+ ","; //붙이기
  474. }
  475. }
  476. }
  477. model.setValue("/root/hidden/testmdllist", vSelSlipcd);
  478. }else{ //해제
  479. for(i = 1; i <= vRow; i++){
  480. for(j = 0; j < vCol; j++){
  481. vReadOnly = model.getValue("/root/main/testmdllist[" + i + "]/nm" + j.toString().getLeftPad(2,0) + "/@readonly");
  482. if(vReadOnly == "false"){
  483. model.setValue("/root/main/testmdllist[" + i + "]/nm" + j.toString().getLeftPad(2,0) + "/@chk", "0");
  484. datagrid1.cellstyle("background-image", i, j) = "../../../lis/commonweb/images/chkBOOLG0.gif";
  485. datagrid1.cellstyle("background-position",i, j) = "left";
  486. datagrid1.cellStyle("background-color", i, j, i, j) = "#EEFFFF";
  487. datagrid1.cellstyle("padding-left", i, j) = 15;
  488. }
  489. }
  490. }
  491. model.setValue("/root/hidden/testmdllist", "");
  492. }
  493. model.refresh();
  494. }
  495. ]]>
  496. </script>
  497. </xhtml:head>
  498. <xhtml:body style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  499. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  500. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:800px; height:14px; ">누적결과조회</caption>
  501. </group>
  502. <group id="group3" scroll="auto" style="left:0px; top:40px; width:1195px; height:744px; ">
  503. <group id="group2" style="left:0px; top:10px; width:325px; height:120px; vertical-align:top; ">
  504. <shape id="roundrect1" class="roundrect_search" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:320px; height:115px; "/>
  505. <caption id="caption2" class="search_name" style="left:15px; top:9px; width:90px; height:17px; ">등록번호 :</caption>
  506. <input id="input3" ref="/root/hidden/ref/startdd" class="input_default" inputtype="date" rclass="input_search" style="left:105px; top:35px; width:95px; height:19px; "/>
  507. <select1 id="combo2" ref="/root/hidden/ref/tclscdlist/testgrup" class="combo_default" appearance="minimal" itemcount="20" style="left:105px; top:60px; width:185px; height:19px; ">
  508. <choices>
  509. <itemset nodeset="/root/init/LB0103">
  510. <label ref="nm"/>
  511. <value ref="cd"/>
  512. </itemset>
  513. </choices>
  514. </select1>
  515. <line id="line11" class="line_4" style="x1:252px; y1:85px; x2:252px; y2:107px; "/>
  516. <caption id="caption3" class="search_name" style="left:15px; top:60px; width:115px; height:17px; ">검사그룹 :</caption>
  517. <caption id="caption5" class="search_name" style="left:15px; top:35px; width:92px; height:17px; ">기준일자 :</caption>
  518. <input id="input2" ref="/root/hidden/ref/enddd" class="input_default" inputtype="date" rclass="input_search" style="left:220px; top:35px; width:95px; height:19px; "/>
  519. <caption id="caption7" class="search_no_b" style="left:205px; top:35px; width:15px; height:17px; ">~</caption>
  520. <img id="img1" class="icon_search" style="left:297px; top:60px; width:16px; height:16px; ">
  521. <script type="javascript" ev:event="onclick">
  522. <![CDATA[
  523. modal("SMLLF90400", 200, 300, 200, "", "/root/hidden/ref/tclscdlist/testgrup", "/root/hidden/tclscdlist/testgrup");
  524. ]]>
  525. </script>
  526. </img>
  527. <button id="btn_ref" class="btn1_letter2" style="left:260px; top:85px; width:56px; height:22px; ">
  528. <caption>조회</caption>
  529. <script type="javascript" ev:event="onclick">
  530. <![CDATA[
  531. fGetNResultRef();
  532. ]]>
  533. </script>
  534. </button>
  535. <input id="ipt_PID" ref="/root/hidden/ref/pid" class="input_button" navindex="1" inputtype="button" style="left:105px; top:10px; width:110px; height:19px; ">
  536. <script type="javascript" ev:event="onbuttonclick">
  537. <![CDATA[
  538. fGetACPTDD();
  539. ]]>
  540. </script>
  541. <script type="javascript" ev:event="onkeypress">
  542. <![CDATA[
  543. fKeyUP();
  544. ]]>
  545. </script>
  546. <script type="javascript" ev:event="onkeypress">
  547. <![CDATA[
  548. fKeyEvent();
  549. ]]>
  550. </script>
  551. </input>
  552. <output id="input1" ref="/root/hidden/ref/patnm" class="output_fix" navindex="1" visibility="visible" inputtype="button" appearance="output" style="left:220px; top:10px; width:95px; height:19px; text-align:center; "/>
  553. </group>
  554. <datagrid id="datagrid1" nodeset="/root/main/testmdllist" backcoloralternate="transparent" caption="caption1^caption2^caption3^caption4^caption6^caption7^caption5^caption10^caption9^caption8^caption11" colsep="^" colwidth="120, 120, 120, 100, 100, 100, 100, 100, 100, 100, 100" dataheight="25" defaultrows="1" ellipsis="true" mergecellsfixedrows="bycolrec" rowheight="0" rowsep="|" selectionmode="free" tooltip="true" style="left:330px; top:10px; width:865px; height:150px; ">
  555. <col ref="nm00"/>
  556. <col ref="nm01"/>
  557. <col ref="nm02"/>
  558. <col ref="nm03"/>
  559. <col ref="nm04"/>
  560. <col ref="nm05"/>
  561. <col ref="nm06"/>
  562. <col ref="nm07"/>
  563. <col ref="nm08"/>
  564. <col ref="nm09"/>
  565. <col ref="nm10"/>
  566. <script type="javascript" ev:event="onclick">
  567. <![CDATA[
  568. if(datagrid1.isCell(event.target) && datagrid1.row >= datagrid1.fixedRows ){
  569. if(datagrid1.col == 0){
  570. fTestLRGList_Click()
  571. }
  572. else{
  573. fTestMdlList_Click(datagrid1.row,datagrid1.col);
  574. }
  575. }
  576. ]]>
  577. </script>
  578. </datagrid>
  579. <switch id="switch1" style="left:0px; top:165px; width:1195px; height:575px; ">
  580. <case id="case1" selected="true">
  581. <datagrid id="datagrid2" nodeset="/root/main/rsltlist/row" backcoloralternate="transparent" colsep="^" dataheight="25" ellipsis="true" explorerbar="sortshow" frozencols="5" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="30" rowsep="|" selectionmode="free" style="left:0px; top:5px; width:1190px; height:565px; ">
  582. <script type="javascript" ev:event="onaftersort">
  583. <![CDATA[
  584. datagrid2.gridToInstance();
  585. ]]>
  586. </script>
  587. </datagrid>
  588. <line id="line2" class="line_1" style="x1:0px; y1:1px; x2:1190px; y2:1px; "/>
  589. </case>
  590. <case id="case2">
  591. <datagrid id="datagrid3" nodeset="/root/main/rsltlist2/row" backcoloralternate="transparent" caption="^검사항목" colsep="^" colwidth="22, 150" dataheight="25" ellipsis="true" explorerbar="sortshow" frozencols="5" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" selectionmode="free" style="left:0px; top:5px; width:210px; height:565px; ">
  592. <col ref="chk" type="checkbox"/>
  593. <col ref="tclsscrnnm"/>
  594. <script type="javascript" ev:event="onclick">
  595. <![CDATA[
  596. if(datagrid3.isCell(event.target) && datagrid3.row >= datagrid3.fixedRows ){
  597. fGraphGrdClick();
  598. }
  599. ]]>
  600. </script>
  601. <script type="javascript" ev:event="onaftersort">
  602. <![CDATA[
  603. datagrid3.gridToInstance();
  604. ]]>
  605. </script>
  606. </datagrid>
  607. <line id="line1" class="line_1" style="x1:0px; y1:1px; x2:1190px; y2:1px; "/>
  608. <!-- <object id="object1" clsid="{fab9b41c-87d6-474d-ab7e-f07d78f2422e}" DragCursor="-12" style="left:215px; top:5px; width:975px; height:565px; "/>-->
  609. </case>
  610. </switch>
  611. <button id="button16" class="btn_sw" group="tab" select.background-image="../../../com/commonweb/images/tab_show.gif" style="left:75px; top:140px; width:75px; height:22px; ">
  612. <caption>그 래 프</caption>
  613. <script type="javascript" ev:event="onclick">
  614. <![CDATA[
  615. model.setvalue("/root/hidden/ref/refgbn","2");
  616. model.toggle("case2");
  617. fDrawGraph();
  618. ]]>
  619. </script>
  620. </button>
  621. <button id="button6" class="btn_sw" group="tab" selected="true" select.background-image="../../../com/commonweb/images/tab_show.gif" style="left:0px; top:140px; width:75px; height:22px; ">
  622. <caption>결 과</caption>
  623. <script type="javascript" ev:event="onclick">
  624. <![CDATA[
  625. model.setvalue("/root/hidden/ref/refgbn","1");
  626. model.toggle("case1");
  627. ]]>
  628. </script>
  629. </button>
  630. <input id="ipt_tclscdlist" visibility="hidden" style="left:225px; top:135px; width:100px; height:19px; "/>
  631. <button id="btn_excel" class="btn2_letter2" style="left:282px; top:145px; width:42px; height:19px; ">
  632. <caption>엑셀</caption>
  633. <script type="javascript" ev:event="DOMActivate">
  634. <![CDATA[
  635. var fileName = window.fileDialog("save", ",", false, "excel", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
  636. if (fileName != "")
  637. {
  638. datagrid2.saveExcel(fileName);
  639. }
  640. ]]>
  641. </script>
  642. </button>
  643. </group>
  644. <group id="group4" scroll="auto" style="left:0px; top:13px; width:1195px; height:27px; ">
  645. <line id="line17" class="line_6" style="x1:0px; y1:25px; x2:1194px; y2:25px; "/>
  646. <button id="btn_reset" class="btn4_letter3" style="left:1127px; top:3px; width:68px; height:22px; ">
  647. <caption>초기화</caption>
  648. <script type="javascript" ev:event="onclick">
  649. <![CDATA[
  650. fSetInit(1);
  651. ]]>
  652. </script>
  653. </button>
  654. <button id="btn_print" class="btn6_letter2" style="left:0px; top:3px; width:56px; height:22px; ">
  655. <caption>출력</caption>
  656. </button>
  657. <select id="checkbox1" ref="/root/hidden/allchk" overflow="visible" appearance="full" style="left:330px; top:10px; width:125px; height:15px; border-style:none; ">
  658. <choices>
  659. <item>
  660. <label>전체선택</label>
  661. <value>true</value>
  662. </item>
  663. </choices>
  664. <script type="javascript" ev:event="xforms-value-changed">
  665. <![CDATA[
  666. fAllChkYN();
  667. ]]>
  668. </script>
  669. </select>
  670. </group>
  671. </xhtml:body>
  672. </xhtml:html>