SMZRM00400_테스트확인.xrw 36 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet type="text/css" href="../../../com/commonweb/css/common.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>TEST 확인</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <list>
  11. <testmngt>
  12. <testno/>
  13. <reqdd/>
  14. <requserid/>
  15. <requsernm/>
  16. <statcd/>
  17. <statnm/>
  18. <emgflag/>
  19. <blplandt/>
  20. <testteamconfyn/>
  21. <itcconfyn/>
  22. <bldtitl/>
  23. <blddesc/>
  24. <bldlist/>
  25. <label/>
  26. <bldinst/>
  27. <testuserid/>
  28. <testuser/>
  29. <testdt/>
  30. <testdesc/>
  31. <pluserid/>
  32. <pluser/>
  33. <pldate/>
  34. <plconfdesc/>
  35. <pmuserid/>
  36. <pmuser/>
  37. <pmdate/>
  38. <pmconfdesc/>
  39. <bldyn/>
  40. <bldresult/>
  41. <bldt/>
  42. <filegrpno/>
  43. <fstrgstrid/>
  44. <fstrgstrnm/>
  45. <fstrgstdt/>
  46. <lastupdtrid/>
  47. <lastupdtrnm/>
  48. <lastupdtdt/>
  49. <itcuserid/>
  50. <itcuser/>
  51. <itcconfdt/>
  52. <itcconfdesc/>
  53. </testmngt>
  54. </list>
  55. <data>
  56. <testno/>
  57. <reqdd/>
  58. <requserid/>
  59. <requsernm/>
  60. <statcd/>
  61. <statnm/>
  62. <emgflag/>
  63. <blplandt/>
  64. <bldtitl/>
  65. <blddesc/>
  66. <bldlist/>
  67. <label/>
  68. <bldinst/>
  69. <testuserid/>
  70. <testuser/>
  71. <testdt/>
  72. <testdesc/>
  73. <itcuserid/>
  74. <itcuser/>
  75. <itcconfdt/>
  76. <itcconfdesc/>
  77. <pluserid/>
  78. <pluser/>
  79. <pldate/>
  80. <plconfdesc/>
  81. <pmuserid/>
  82. <pmuser/>
  83. <pmdate/>
  84. <pmconfdesc/>
  85. <bldyn/>
  86. <bldresult/>
  87. <bldt/>
  88. <filegrpno/>
  89. <fstrgstrid/>
  90. <fstrgstrnm/>
  91. <fstrgstdt/>
  92. <lastupdtrid/>
  93. <lastupdtrnm/>
  94. <lastupdtdt/>
  95. <posinstnm/>
  96. <posdeptnm/>
  97. <usernm/>
  98. </data>
  99. <mode>
  100. <modestatus/>
  101. <modelabel/>
  102. </mode>
  103. <ftpfilelist>
  104. <filelist>
  105. </filelist>
  106. <itcconffilelist/>
  107. <infomngfilelist/>
  108. </ftpfilelist>
  109. <newfilegrpno>
  110. <filegrpno/>
  111. </newfilegrpno>
  112. <newfileno>
  113. <fileno/>
  114. </newfileno>
  115. <reqdata>
  116. <list>
  117. <prcscd/>
  118. <instnm/>
  119. <reqdeptnm/>
  120. <requsernm/>
  121. <prcstitl/>
  122. <reqdd/>
  123. </list>
  124. </reqdata>
  125. </main>
  126. <send>
  127. <plnfromdd/>
  128. <plntodd/>
  129. <reqfromdd/>
  130. <reqtodd/>
  131. <statcd/>
  132. <gpcd/>
  133. <data>
  134. </data>
  135. <filegrpno/>
  136. <req>
  137. <filelist/>
  138. <itcconffilelist/>
  139. <infomngfilelist/>
  140. </req>
  141. <prcscd/>
  142. </send>
  143. <hidden>
  144. <temp>
  145. </temp>
  146. </hidden>
  147. <init>
  148. <list>
  149. <C0018>
  150. <cdid/>
  151. <cdnm/>
  152. </C0018>
  153. <C0008>
  154. <cdid/>
  155. <cdnm/>
  156. </C0008>
  157. <C0001>
  158. <cdid/>
  159. <cdnm/>
  160. </C0001>
  161. <C0010>
  162. <cdid/>
  163. <cdnm/>
  164. </C0010>
  165. <C0015>
  166. <cdid/>
  167. <cdnm/>
  168. </C0015>
  169. <I0008>
  170. <cdid/>
  171. <cdnm/>
  172. </I0008>
  173. <I0010>
  174. <cdid/>
  175. <cdnm/>
  176. </I0010>
  177. <I0003>
  178. <cdid/>
  179. <cdnm/>
  180. </I0003>
  181. <I0015>
  182. <cdid/>
  183. <cdnm/>
  184. </I0015>
  185. </list>
  186. <itcstat/>
  187. <ftppath>
  188. <pathid/>
  189. <host/>
  190. <port/>
  191. <usr/>
  192. <passwd/>
  193. <path/>
  194. </ftppath>
  195. <userauth>
  196. <auth/>
  197. </userauth>
  198. </init>
  199. </root>
  200. </instance>
  201. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  202. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  203. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  204. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  205. <script type="javascript" src="../../../com/reqmngtweb/js/ZRM002.js"/>
  206. <script type="javascript" ev:event="xforms-ready">
  207. <![CDATA[
  208. // 조회 조건의 콤보박스 출력
  209. model.setValue("/root/send/gpcd","0001|0008|0010|0003|0015|0018");
  210. submit("TRZRM00102");
  211. // 조회일자 초기화 - 디폴트로 당일만 조회되도록 수정
  212. //ipt_plnfromdd.value = fnAddMonth(getCurrentDate(), -1);
  213. ipt_plnfromdd.value = getCurrentDate();
  214. ipt_plntodd.value = getCurrentDate();
  215. //ipt_reqfromdd.value = fnAddMonth(getCurrentDate(), -1);
  216. ipt_reqfromdd.value = getCurrentDate();
  217. ipt_reqtodd.value = getCurrentDate();
  218. // 파일 첨부 경로 가져오기
  219. submit("TRZRM00105");
  220. // 추가할 수 있는 상태로 초기화
  221. fInsertMode();
  222. switch1.selectedIndex = 0
  223. //사용자의 권한 셋팅..
  224. model.makeValue("/root/send/userid", getUserInfo("userid"));
  225. submit("TRZRM00108");
  226. /*
  227. if(strauth == "0010" && strauth != "" ){
  228. button2.disabled = false;
  229. combo2.select(1);
  230. } else {
  231. button2.disabled = true;
  232. combo2.select(2);
  233. }
  234. if(strauth <= "0010" && strauth != "" ){
  235. button3.disabled = false;
  236. button4.disabled = false;
  237. } else {
  238. button3.disabled = true;
  239. button4.disabled = true;
  240. }
  241. if(strauth == "0002" && strauth != "" ){
  242. button1.disabled = false;
  243. } else {
  244. button1.disabled = true;
  245. }
  246. */
  247. var strauth = model.getValue("/root/init/userauth/auth");
  248. switch (strauth) {
  249. case "0001":
  250. case "0002":
  251. combo2.select(4);
  252. break;
  253. case "0010":
  254. combo2.select(1);
  255. break;
  256. case "0006":
  257. case "0007":
  258. case "0008":
  259. case "0009":
  260. combo2.select(2);
  261. break;
  262. default:
  263. combo2.select(0);
  264. break;
  265. }
  266. //버튼초기화
  267. button1.disabled = true;
  268. button2.disabled = true;
  269. button3.disabled = true;
  270. button4.disabled = true;
  271. model.refresh();
  272. ]]>
  273. </script>
  274. <submission id="TRZRM00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list"/>
  275. <submission id="TRZRM00102" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/init/list"/>
  276. <submission id="TRZRM00103" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main"/>
  277. <submission id="TRZRM00104" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/ftpfilelist"/>
  278. <submission id="TRZRM00105" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/ftppath"/>
  279. <submission id="TRZRM00106" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/newfilegrpno"/>
  280. <submission id="TRZRM00108" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/init/userauth"/>
  281. <submission id="TRZRM00110" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list"/>
  282. <submission id="TRZRM00111" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list"/>
  283. <submission id="TRZRM00112" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/reqdata"/>
  284. <submission id="TXZRM00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/data" replace="instance" resultref="/root/hidden/temp"/>
  285. <submission id="TXZRM00102" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/data" replace="instance" resultref="/root/hidden/temp"/>
  286. <submission id="TXZRM00103" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/req" resultref="/root/main/newfileno"/>
  287. <submission id="TXZRM00110" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/data"/>
  288. <submission id="TXZRM00111" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/data"/>
  289. <submission id="TXZRM00112" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/data"/>
  290. <submission id="TXZRM00113" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/data"/>
  291. </model>
  292. <object id="objSFT" visibility="hidden" clsid="{2831e72c-9640-44ea-87dc-ddb462d5796c}" visible="false" style="left:0px; top:0px; width:40px; height:20px; "/>
  293. <script type="javascript">
  294. <![CDATA[
  295. // 화면 초기화
  296. function fInitMainData(disabled){
  297. model.removeNodeset("/root/main/ftpfilelist/filelist");
  298. model.removeNodeset("/root/main/ftpfilelist/itcconffilelist");
  299. model.removeNodeset("/root/main/ftpfilelist/infomngfilelist");
  300. model.makeValue("/root/main/data/testno", "");
  301. model.makeValue("/root/main/data/reqdd","");
  302. model.makeValue("/root/main/data/requserid","");
  303. model.makeValue("/root/main/data/usernm","");
  304. model.makeValue("/root/main/data/statcd","");
  305. model.makeValue("/root/main/data/statnm","");
  306. model.makeValue("/root/main/data/emgflag","");
  307. model.makeValue("/root/main/data/blplandt","");
  308. model.makeValue("/root/main/data/bldtitl","");
  309. model.makeValue("/root/main/data/blddesc","");
  310. model.makeValue("/root/main/data/bldlist","");
  311. model.makeValue("/root/main/data/label","");
  312. model.makeValue("/root/main/data/bldinst","");
  313. model.makeValue("/root/main/data/testuserid","");
  314. model.makeValue("/root/main/data/testuser","");
  315. model.makeValue("/root/main/data/testdt","");
  316. model.makeValue("/root/main/data/testdesc","");
  317. model.makeValue("/root/main/data/pluserid","");
  318. model.makeValue("/root/main/data/pluser","");
  319. model.makeValue("/root/main/data/pldate","");
  320. model.makeValue("/root/main/data/plconfdesc", "");
  321. model.makeValue("/root/main/data/pmuserid", "");
  322. model.makeValue("/root/main/data/pmuser", "");
  323. model.makeValue("/root/main/data/pmdate", "");
  324. model.makeValue("/root/main/data/pmconfdesc", "");
  325. model.makeValue("/root/main/data/bldyn", "");
  326. model.makeValue("/root/main/data/bldresult", "");
  327. model.makeValue("/root/main/data/bldt", "");
  328. model.makeValue("/root/main/data/filegrpno", "");
  329. model.makeValue("/root/main/data/fstrgstrid", "");
  330. model.makeValue("/root/main/data/fstrgstrnm", "");
  331. model.makeValue("/root/main/data/fstrgstdt", "");
  332. model.makeValue("/root/main/data/lastupdtrid", "");
  333. model.makeValue("/root/main/data/lastupdtrnm", "");
  334. model.makeValue("/root/main/data/lastupdtdt", "");
  335. model.makeValue("/root/main/data/itcuserid", "");
  336. model.makeValue("/root/main/data/itcuser", "");
  337. model.makeValue("/root/main/data/itcconfdt", "");
  338. model.makeValue("/root/main/data/itcconfdesc", "");
  339. model.removeNodeset("/root/send/data");
  340. model.makeValue("/root/send/data", "");
  341. model.refresh();
  342. fDisableMainDataControls(disabled);
  343. }
  344. ]]>
  345. </script>
  346. </xhtml:head>
  347. <xhtml:body guideline="2,783;1,1192;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  348. <object id="objSFT" clsid="{2831e72c-9640-44ea-87dc-ddb462d5796c}" style="left:5px; top:91px; width:10px; height:0px; "/>
  349. <line id="line2" class="line_2" style="x1:595px; y1:315px; x2:1192px; y2:315px; "/>
  350. <group id="group3" scroll="auto" style="left:0px; top:0px; width:1192px; height:771px; ">
  351. <group id="grp_sea" style="left:0px; top:15px; width:1192px; height:60px; vertical-align:top; ">
  352. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:1px; width:1192px; height:54px; background-color:#fffbf2; border-color:#ffd799; "/>
  353. <caption id="caption8" class="search_name" style="left:15px; top:5px; width:104px; height:17px; ">배포적용일 :</caption>
  354. <caption id="caption7" class="search_no_b" style="left:220px; top:6px; width:12px; height:17px; ">~</caption>
  355. <input id="ipt_plnfromdd" ref="/root/send/plnfromdd" class="input_search" navindex="2" inputtype="date" style="left:133px; top:5px; width:85px; height:19px; "/>
  356. <input id="ipt_plntodd" ref="/root/send/plntodd" class="input_search" navindex="3" inputtype="date" style="left:233px; top:5px; width:85px; height:19px; "/>
  357. <button id="btn_search" class="btn1_letter2" navindex="10" style="left:1125px; top:5px; width:56px; height:22px; ">
  358. <caption>조회</caption>
  359. <script type="javascript" ev:event="DOMActivate">
  360. <![CDATA[
  361. model.makeValue("/root/send/fstrgstrid", getUserInfo("userid"));
  362. submit("TRZRM00110");
  363. ]]>
  364. </script>
  365. </button>
  366. <caption id="caption4" class="search_name" style="left:345px; top:5px; width:90px; height:17px; ">진행상태 :</caption>
  367. <select1 id="combo2" ref="/root/send/statcd" class="combo_search" navindex="7" appearance="minimal" style="left:435px; top:5px; width:185px; height:19px; ">
  368. <choices>
  369. <itemset nodeset="/root/init/list/C0018">
  370. <label ref="cdnm"/>
  371. <value ref="cdid"/>
  372. </itemset>
  373. </choices>
  374. </select1>
  375. <input id="ipt_reqtodd" ref="/root/send/reqtodd" class="input_search" navindex="3" inputtype="date" style="left:233px; top:30px; width:85px; height:19px; "/>
  376. <caption id="caption1" class="search_name" style="left:15px; top:30px; width:115px; height:17px; ">테스트요청일 :</caption>
  377. <input id="ipt_reqfromdd" ref="/root/send/reqfromdd" class="input_search" navindex="2" inputtype="date" style="left:133px; top:30px; width:85px; height:19px; "/>
  378. <button id="button8" class="btn1_letter2" navindex="10" style="left:1125px; top:30px; width:56px; height:22px; ">
  379. <caption>조회</caption>
  380. <script type="javascript" ev:event="DOMActivate">
  381. <![CDATA[
  382. model.makeValue("/root/send/fstrgstrid", getUserInfo("userid"));
  383. submit("TRZRM00111");
  384. ]]>
  385. </script>
  386. </button>
  387. <caption id="caption2" class="search_no_b" style="left:220px; top:31px; width:12px; height:17px; ">~</caption>
  388. <input id="input1" ref="/root/send/prcscd" class="input_search" style="left:435px; top:30px; width:185px; height:15px; "/>
  389. <caption id="caption33" class="search_name" style="left:345px; top:30px; width:90px; height:17px; ">요청번호 :</caption>
  390. </group>
  391. <line id="line1" class="line_1" style="x1:1px; y1:116px; x2:585px; y2:116px; "/>
  392. <button id="btn_excel" class="btn2_letter4" style="left:475px; top:95px; width:64px; height:19px; ">
  393. <caption>엑셀저장</caption>
  394. <script type="javascript" ev:event="DOMActivate">
  395. <![CDATA[
  396. var fileName = window.fileDialog("save", ",", false, "요구사항관리_" + getCurrentDate(), "xls", "Excel Files(*.xls)|*.xls|All Files (*.*)|*.*");
  397. if (fileName != "")
  398. {
  399. grd_testmngtlist.saveExcel(fileName, "SheetName", true, true, "", "", "false");
  400. }
  401. ]]>
  402. </script>
  403. </button>
  404. <input id="ipt_requsernm" ref="/root/main/data/requserid" class="input_essential" style="left:785px; top:202px; width:85px; height:19px; "/>
  405. <textarea id="tar_prcsmsg" ref="/root/main/data/blddesc" class="input_essential" style="left:660px; top:365px; width:375px; height:130px; "/>
  406. <input id="ipt_bld" ref="/root/main/data/blplandt" class="input_essential" style="left:1098px; top:232px; width:90px; height:19px; "/>
  407. <output id="opt_modellabel" ref="/root/main/mode/modelabel" class="tit_2" style="left:595px; top:100px; width:269px; height:13px; "/>
  408. <caption id="caption20" class="cell_1" style="left:595px; top:338px; width:61px; height:23px; vertical-align:middle; ">배포제목</caption>
  409. <caption id="caption10" class="cell_1" style="left:1020px; top:140px; width:50px; height:23px; vertical-align:middle; ">성명</caption>
  410. <caption id="caption22" class="cell_1" style="left:595px; top:365px; width:61px; height:130px; vertical-align:middle; ">배포내용</caption>
  411. <caption id="caption12" class="cell_1" style="left:1018px; top:200px; width:80px; height:23px; vertical-align:middle; ">테스트요청일</caption>
  412. <upload id="upload_attach" nodeset="/root/main/data/attach/file" filecount="5" filesize="100000000" validate="true" style="left:1040px; top:485px; width:25px; height:20px; "/>
  413. <input id="ipt_prcstitl" ref="/root/main/data/bldtitl" class="input_essential" style="left:660px; top:340px; width:375px; height:19px; "/>
  414. <caption id="caption13" class="cell_1" style="left:595px; top:200px; width:60px; height:23px; vertical-align:middle; ">배포번호</caption>
  415. <caption id="caption24" class="cell_1" style="left:595px; top:140px; width:60px; height:23px; vertical-align:middle; ">소속기관</caption>
  416. <caption id="caption25" class="cell_1" style="left:1018px; top:230px; width:75px; height:23px; vertical-align:middle; ">배포적용일</caption>
  417. <caption id="caption14" class="cell_1" style="left:595px; top:230px; width:61px; height:23px; vertical-align:middle; ">라벨</caption>
  418. <input id="ipt_cdid" ref="/root/main/data/posdeptnm" class="input_essential" disabled="true" style="left:875px; top:142px; width:140px; height:19px; "/>
  419. <input id="ipt_instcd" ref="/root/main/data/posinstnm" class="input_essential" disabled="true" style="left:660px; top:142px; width:144px; height:19px; "/>
  420. <caption id="caption9" class="cell_1" style="left:810px; top:140px; width:60px; height:23px; vertical-align:middle; ">소속부서</caption>
  421. <caption id="caption19" class="cell_1" style="left:725px; top:200px; width:55px; height:23px; vertical-align:middle; ">요청부서</caption>
  422. <input id="ipt_cdnm" ref="/root/main/data/usernm" class="input_essential" disabled="true" style="left:1075px; top:142px; width:115px; height:19px; "/>
  423. <datagrid id="grd_attach" nodeset="/root/main/ftpfilelist/filelist" caption="status^경로^첨부파일^host^port^usr^passwd^pathid^remotepath^ext^fstrgstrid^lastupdtrid^filegrpno^fileno" colwidth="0,0,150,0,0,0,0,0,0,0,0,0,0,0" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="update" tooltip="true" style="left:1040px; top:340px; width:150px; height:155px; ">
  424. <col ref="status"/>
  425. <col ref="localpath"/>
  426. <col ref="filename"/>
  427. <col ref="host"/>
  428. <col ref="port"/>
  429. <col ref="usr"/>
  430. <col ref="passwd"/>
  431. <col ref="pathid"/>
  432. <col ref="remotepath"/>
  433. <col ref="ext"/>
  434. <col ref="fstrgstrid"/>
  435. <col ref="lastupdtrid"/>
  436. <col ref="filegrpno"/>
  437. <col ref="fileno"/>
  438. <script type="javascript" ev:event="ondblclick">
  439. <![CDATA[
  440. if (grd_attach.row <= 0) { return;}
  441. if (grd_attach.col <= 0) { return;}
  442. // 해당파일 다운로드 정보 셋팅
  443. var row = grd_attach.row;
  444. var host = model.getValue("/root/main/ftpfilelist/filelist["+row+"]/host");
  445. var port = model.getValue("/root/main/ftpfilelist/filelist["+row+"]/port");
  446. var user = model.getValue("/root/main/ftpfilelist/filelist["+row+"]/usr");
  447. var pass = model.getValue("/root/main/ftpfilelist/filelist["+row+"]/passwd");
  448. var pathRemote = model.getValue("/root/main/ftpfilelist/filelist["+row+"]/remotepath");
  449. var filename = model.getValue("/root/main/ftpfilelist/filelist["+row+"]/localpath");
  450. fFileExcute(host, port, user, pass, pathRemote, filename);
  451. //fFilePreview();
  452. ]]>
  453. </script>
  454. </datagrid>
  455. <line id="line6" class="line_1" style="x1:595px; y1:116px; x2:1192px; y2:116px; "/>
  456. <line id="line7" class="line_3" style="x1:595px; y1:137px; x2:1192px; y2:137px; "/>
  457. <line id="line8" class="line_3" style="x1:595px; y1:165px; x2:1192px; y2:165px; "/>
  458. <line id="line10" class="line_3" style="x1:595px; y1:198px; x2:1192px; y2:198px; "/>
  459. <caption id="caption27" style="left:748px; top:230px; width:30px; height:23px; ">긴급</caption>
  460. <bool id="bool4" checkvalue="Y,N" ref="/root/main/data/emgflag" style="left:731px; top:232px; width:15px; height:20px; "/>
  461. <caption id="caption28" class="tit_2" style="left:595px; top:120px; width:126px; height:14px; vertical-align:middle; ">TEST확인자 정보</caption>
  462. <caption id="caption29" class="tit_2" style="left:595px; top:180px; width:126px; height:14px; vertical-align:middle; ">요청 내용</caption>
  463. <button id="btn_expan" class="btn2_letter2" style="left:540px; top:95px; width:42px; height:19px; ">
  464. <caption>
  465. <![CDATA[>>]]>
  466. </caption>
  467. <script type="javascript" ev:event="DOMActivate">
  468. <![CDATA[
  469. //alert(grd_testmngtlist.attribute ( "width" ));
  470. var tmp = btn_expan.text
  471. //alert(tmp);
  472. if ( tmp == ">>"){
  473. grd_testmngtlist.attribute ( "width" ) = 1190;
  474. btn_expan.text = "<<";
  475. } else {
  476. grd_testmngtlist.attribute ( "width" ) = 585;
  477. btn_expan.text = ">>"
  478. }
  479. model.refresh();
  480. ]]>
  481. </script>
  482. </button>
  483. <select1 id="combo3" ref="/root/main/data/statcd" class="combo_search" disabled="true" visibility="hidden" appearance="minimal" style="left:1040px; top:500px; width:152px; height:19px; ">
  484. <choices>
  485. <itemset nodeset="/root/init/list/C0018">
  486. <label ref="cdnm"/>
  487. <value ref="cdid"/>
  488. </itemset>
  489. </choices>
  490. <script type="javascript" ev:event="xforms-value-changed">
  491. <![CDATA[
  492. var tmp = model.getValue("/root/main/data/statcd");
  493. model.setValue("/root/init/itcstat", tmp);
  494. model.refresh();
  495. ]]>
  496. </script>
  497. </select1>
  498. <switch id="switch1" style="left:590px; top:626px; width:602px; height:144px; ">
  499. <case id="rpt" selected="true" style="left:0px; top:0px; width:602px; height:213px; ">
  500. <button id="button2" class="btn5_letter2" style="left:555px; top:4px; width:42px; height:19px; ">
  501. <caption>승인</caption>
  502. <script type="javascript" ev:event="onclick">
  503. <![CDATA[
  504. /*
  505. var stat = model.getValue("/root/main/data/statcd");
  506. if (stat <= "0010") {
  507. messageBox("처리상태가 지정되지", "I004");
  508. return;
  509. }
  510. */
  511. var mode = model.getValue("/root/main/mode/modestatus");
  512. model.makeValue("/root/main/data/updateuserid", getUserInfo("userid"));
  513. model.copyNode("/root/send/data", "/root/main/data");
  514. model.refresh();
  515. // ztrmprcs 테이블 insert
  516. submit("TXZRM00110");
  517. btn_search.dispatch("DOMActivate");
  518. grd_testmngtlist.row = 1;
  519. fInitMainData(true);
  520. ]]>
  521. </script>
  522. </button>
  523. <caption id="caption31" class="tit_2" style="left:5px; top:6px; width:70px; height:13px; vertical-align:middle; ">테스트팀</caption>
  524. <line id="line14" class="line_3" style="x1:5px; y1:25px; x2:597px; y2:25px; "/>
  525. <caption id="caption17" class="cell_1" style="left:5px; top:30px; width:61px; height:105px; vertical-align:middle; ">확인내용</caption>
  526. <textarea id="tar_fstrpttxt" ref="/root/main/data/testdesc" navindex="14" editable="true" style="left:70px; top:30px; width:525px; height:105px; "/>
  527. <caption id="caption34" ref="/root/main/data/testdt" style="left:80px; top:5px; width:152px; height:15px; "/>
  528. <caption id="caption11" ref="/root/main/data/testuser" style="left:235px; top:4px; width:215px; height:15px; "/>
  529. </case>
  530. <case id="confirm" style="left:0px; top:0px; width:940px; height:769px; ">
  531. <button id="button3" class="btn5_letter2" style="left:555px; top:4px; width:42px; height:19px; ">
  532. <caption>승인</caption>
  533. <script type="javascript" ev:event="onclick">
  534. <![CDATA[
  535. var mode = model.getValue("/root/main/mode/modestatus");
  536. model.makeValue("/root/main/data/updateuserid", getUserInfo("userid"));
  537. model.copyNode("/root/send/data", "/root/main/data");
  538. model.refresh();
  539. submit("TXZRM00111");
  540. btn_search.dispatch("DOMActivate");
  541. grd_testmngtlist.row = 1;
  542. fInitMainData(true);
  543. ]]>
  544. </script>
  545. </button>
  546. <caption id="caption32" class="tit_2" style="left:5px; top:6px; width:65px; height:13px; vertical-align:middle; ">ITC</caption>
  547. <line id="line16" class="line_3" style="x1:5px; y1:25px; x2:597px; y2:25px; "/>
  548. <textarea id="tar_rpttxt" ref="/root/main/data/itcconfdesc" navindex="12" editable="true" style="left:70px; top:30px; width:525px; height:105px; "/>
  549. <caption id="caption18" class="cell_1" style="left:5px; top:30px; width:61px; height:105px; vertical-align:middle; ">확인내용</caption>
  550. <caption id="caption5" ref="/root/main/data/itcconfdt" style="left:80px; top:5px; width:152px; height:15px; "/>
  551. <caption id="caption15" ref="/root/main/data/itcuser" style="left:235px; top:4px; width:215px; height:15px; "/>
  552. <button id="button4" class="btn2_letter2" style="left:508px; top:4px; width:42px; height:19px; ">
  553. <caption>저장</caption>
  554. <script type="javascript" ev:event="onclick">
  555. <![CDATA[
  556. var mode = model.getValue("/root/main/mode/modestatus");
  557. model.makeValue("/root/main/data/updateuserid", getUserInfo("userid"));
  558. model.copyNode("/root/send/data", "/root/main/data");
  559. model.refresh();
  560. submit("TXZRM00113");
  561. btn_search.dispatch("DOMActivate");
  562. grd_testmngtlist.row = 1;
  563. fInitMainData(true);
  564. ]]>
  565. </script>
  566. </button>
  567. </case>
  568. <case id="pm_confirm">
  569. <button id="button1" class="btn5_letter2" style="left:555px; top:4px; width:42px; height:19px; ">
  570. <caption>승인</caption>
  571. <script type="javascript" ev:event="onclick">
  572. <![CDATA[
  573. var mode = model.getValue("/root/main/mode/modestatus");
  574. model.makeValue("/root/main/data/updateuserid", getUserInfo("userid"));
  575. model.copyNode("/root/send/data", "/root/main/data");
  576. model.refresh();
  577. // ztrmprcs 테이블 insert
  578. submit("TXZRM00112");
  579. btn_search.dispatch("DOMActivate");
  580. grd_testmngtlist.row = 1;
  581. fInitMainData(true);
  582. ]]>
  583. </script>
  584. </button>
  585. <caption id="caption21" class="tit_2" style="left:5px; top:6px; width:70px; height:14px; vertical-align:middle; ">PM</caption>
  586. <line id="line12" class="line_3" style="x1:5px; y1:25px; x2:597px; y2:25px; "/>
  587. <caption id="caption23" ref="/root/main/data/pmuser" style="left:235px; top:4px; width:215px; height:15px; "/>
  588. <caption id="caption26" ref="/root/main/data/pmdate" style="left:80px; top:5px; width:152px; height:15px; "/>
  589. <caption id="caption30" class="cell_1" style="left:5px; top:30px; width:61px; height:105px; vertical-align:middle; ">확인내용</caption>
  590. <textarea id="textarea2" ref="/root/main/data/pmconfdesc" navindex="14" editable="true" style="left:70px; top:30px; width:525px; height:105px; "/>
  591. </case>
  592. </switch>
  593. <button id="btn_rpt" class="btn_sw" group="tab" selected="true" style="left:590px; top:605px; width:80px; height:22px; ">
  594. <caption>테스트팀</caption>
  595. <script type="javascript" ev:event="DOMActivate">
  596. <![CDATA[
  597. switch1.selectedIndex = 0
  598. ]]>
  599. </script>
  600. </button>
  601. <button id="btn_confirm" class="btn_sw" visibility="visible" group="tab" style="left:670px; top:605px; width:80px; height:22px; ">
  602. <caption>ITC</caption>
  603. <toggle case="confirm" ev:event="onclick"/>
  604. </button>
  605. <line id="line17" class="line_2" style="x1:595px; y1:336px; x2:1192px; y2:336px; "/>
  606. <input id="input3" ref="/root/main/data/bldinst" class="input_essential" imemode="hangul" maxlength="85" style="left:661px; top:261px; width:527px; height:19px; "/>
  607. <caption id="caption39" class="cell_1" style="left:595px; top:259px; width:61px; height:23px; vertical-align:middle; ">적용병원</caption>
  608. <input id="input4" ref="/root/main/data/testno" class="input_essential" disabled="true" editable="false" style="left:660px; top:202px; width:60px; height:19px; "/>
  609. <input id="input5" ref="/root/main/data/reqdd" class="input_search" inputtype="date" style="left:1103px; top:202px; width:85px; height:19px; "/>
  610. <input id="input6" ref="/root/main/data/label" class="input_essential" editable="false" style="left:660px; top:232px; width:60px; height:19px; "/>
  611. <textarea id="textarea1" ref="/root/main/data/bldlist" class="input_essential" style="left:661px; top:287px; width:527px; height:45px; "/>
  612. <caption id="caption3" class="cell_1" style="left:595px; top:287px; width:62px; height:45px; vertical-align:middle; ">
  613. <![CDATA[배 포
  614. 리스트]]>
  615. </caption>
  616. <line id="line3" class="line_3" style="x1:595px; y1:497px; x2:1192px; y2:497px; "/>
  617. <line id="line5" class="line_2" style="x1:595px; y1:283px; x2:1192px; y2:283px; "/>
  618. <line id="line9" class="line_2" style="x1:595px; y1:225px; x2:1192px; y2:225px; "/>
  619. <line id="line11" class="line_2" style="x1:595px; y1:255px; x2:1192px; y2:255px; "/>
  620. <datagrid id="datagrid1" nodeset="/root/main/reqdata/list" caption="요청번호^발의기관^요청부서^요청자^요청제목^요청일" colsep="^" colwidth="79, 97, 62, 62, 296, 135" mergecellsfixedrows="bycolrec" rowsep="|" style="left:660px; top:500px; width:532px; height:95px; ">
  621. <col ref="prcscd"/>
  622. <col ref="instnm"/>
  623. <col ref="reqdeptnm"/>
  624. <col ref="requsernm"/>
  625. <col ref="prcstitl"/>
  626. <col ref="reqdd"/>
  627. </datagrid>
  628. <caption id="caption16" class="cell_1" style="left:595px; top:500px; width:61px; height:95px; vertical-align:middle; ">관련요청</caption>
  629. <line id="line4" class="line_3" style="x1:595px; y1:598px; x2:1192px; y2:598px; "/>
  630. <button id="btn_pm" class="btn_sw" visibility="visible" group="tab" style="left:750px; top:605px; width:80px; height:22px; ">
  631. <caption>PM</caption>
  632. <toggle case="pm_confirm" ev:event="onclick"/>
  633. </button>
  634. <caption id="caption35" class="cell_1" style="left:788px; top:230px; width:57px; height:23px; vertical-align:middle; ">요청번호</caption>
  635. <input id="input2" ref="/root/main/data/bldresult" class="input_essential" style="left:850px; top:232px; width:160px; height:19px; "/>
  636. <input id="input7" ref="/root/main/data/requsernm" class="input_essential" style="left:925px; top:202px; width:85px; height:19px; "/>
  637. <caption id="caption36" class="cell_1" style="left:877px; top:200px; width:44px; height:23px; vertical-align:middle; ">요청자</caption>
  638. <datagrid id="grd_testmngtlist" nodeset="/root/main/list/testmngt" allowselection="true" caption="번호^테스트&#xA;요청일^요청부서^요청자^상태코드^상태^긴급^배포적용일^TST^ITC^배포제목^배포내용^배포리스트^라벨^배포적용서버^테스트ID^테스터^테스트일시^테스트내용^팀장ID^팀장명^팀장확인일시^팀장확인내용^PM ID^PM 이름^PM확인일자^PM확인내용^배포여부^요청번호^배포일시^첨부파일^최초입력자ID^최초입력자^최초입력일^최종수정자ID^최종수정자^최종수정일자^ITC ID^ITC이름^ITC확인일자^ITC확인내용" colsep="^" colwidth="37, 57, 66, 79, 3, 67, 30, 82, 28, 27, 183, 201, 188, 77, 117, 70, 57, 104, 198, 72, 71, 94, 151, 60, 69, 110, 168, 70, 69, 70, 80, 100, 100, 130, 100, 100, 120, 100, 100, 100, 100" explorerbar="sort" frozencols="7" mergecellsfixedrows="bycolrec" rowheader="seq" rowheight="50" rowsep="|" tooltip="true" style="left:0px; top:120px; width:585px; height:651px; text-align:center; ">
  639. <col ref="testno" type="output"/>
  640. <col ref="reqdd"/>
  641. <col ref="requserid" style="text-align:left; "/>
  642. <col ref="requsernm" style="text-align:left; "/>
  643. <col ref="statcd" visibility="hidden"/>
  644. <col ref="statnm" style="text-align:left; "/>
  645. <col ref="emgflag"/>
  646. <col ref="blplandt" style="left:410px; top:23px; width:100px; height:23px; "/>
  647. <col ref="testteamconfyn"/>
  648. <col ref="itcconfyn"/>
  649. <col ref="bldtitl" style="left:522px; top:23px; width:183px; height:23px; text-align:left; "/>
  650. <col ref="blddesc" style="text-align:left; "/>
  651. <col ref="bldlist" style="text-align:left; "/>
  652. <col ref="label"/>
  653. <col ref="bldinst"/>
  654. <col ref="testuserid" visibility="hidden"/>
  655. <col ref="testuser"/>
  656. <col ref="testdt"/>
  657. <col ref="testdesc"/>
  658. <col ref="pluserid" visibility="hidden"/>
  659. <col ref="pluser"/>
  660. <col ref="pldate"/>
  661. <col ref="plconfdesc"/>
  662. <col ref="pmuserid" visibility="hidden"/>
  663. <col ref="pmuser"/>
  664. <col ref="pmdate"/>
  665. <col ref="pmconfdesc"/>
  666. <col ref="bldyn"/>
  667. <col ref="bldresult" style="text-align:left; "/>
  668. <col ref="bldt"/>
  669. <col ref="filegrpno"/>
  670. <col ref="fstrgstrid" visibility="hidden" style="left:2801px; top:23px; width:100px; height:23px; "/>
  671. <col ref="fstrgstrnm" style="left:2901px; top:23px; width:100px; height:23px; "/>
  672. <col ref="fstrgstdt" style="left:3001px; top:23px; width:100px; height:23px; "/>
  673. <col ref="lastupdtrid" visibility="hidden"/>
  674. <col ref="lastupdtrnm"/>
  675. <col ref="lastupdtdt"/>
  676. <col ref="itcuserid" visibility="hidden"/>
  677. <col ref="itcuser"/>
  678. <col ref="itcconfdt"/>
  679. <col ref="itcconfdesc"/>
  680. <script type="javascript" ev:event="onaftersort">
  681. <![CDATA[
  682. grd_testmngtlist.gridToInstance();
  683. ]]>
  684. </script>
  685. <script type="javascript" ev:event="ondblclick">
  686. <![CDATA[
  687. // 클릭한 요청번호로 db select한다.
  688. var row = grd_testmngtlist.row;
  689. var testno = grd_testmngtlist.valueMatrix(row, grd_testmngtlist.colRef("testno"));
  690. // 비정상적인 조회금지
  691. if (row <=0) { return;}
  692. if(grd_testmngtlist.col < 0 ) {return;}
  693. if(testno == "" ) {return;}
  694. // 수정할수 있는 상태로 초기화
  695. fUpdateMode();
  696. model.copyNode ("/root/main/data","/root/main/list/testmngt["+row+"]");
  697. model.makeValue("/root/main/data/posinstnm",getUserInfo("posinstnm"));
  698. model.makeValue("/root/main/data/posdeptnm", getUserInfo("posdeptnm"));
  699. model.makeValue("/root/main/data/usernm", getUserInfo("usernm"));
  700. model.makeValue("/root/main/data/userid", getUserInfo("userid"));
  701. //각 첨부파일 초기화
  702. model.makeValue("/root/send/filegrpno", "");
  703. model.makeValue("/root/send/itc_filegrpno", "");
  704. model.makeValue("/root/send/infomng_filegrpno", "");
  705. model.makeValue("/root/send/testno", testno);
  706. // 첨부파일 있으면 목록 읽어오기
  707. var tmpGrpNo = model.getValue("/root/main/data/filegrpno");
  708. if (tmpGrpNo >0 ) {
  709. model.makeValue("/root/send/filegrpno", tmpGrpNo);
  710. }
  711. submit("TRZRM00104");
  712. submit("TRZRM00112");
  713. /*
  714. if(strauth == "0010" && strauth != "" ){
  715. button2.disabled = false;
  716. } else {
  717. button2.disabled = true;
  718. }
  719. if(strauth <= "0010" && strauth != "" ){
  720. button3.disabled = false;
  721. button4.disabled = false;
  722. } else {
  723. button3.disabled = true;
  724. button4.disabled = true;
  725. }
  726. if (tmpstus >= "0004"){
  727. button3.disabled = true;
  728. button4.disabled = true;
  729. } else {
  730. button3.disabled = false;
  731. button4.disabled = false;
  732. }
  733. */
  734. //버튼초기화
  735. button1.disabled = true;
  736. button2.disabled = true;
  737. button3.disabled = true;
  738. button4.disabled = true;
  739. var strauth = model.getValue("/root/init/userauth/auth");
  740. var tmpstus = model.getValue("/root/main/data/statcd");
  741. switch (tmpstus) {
  742. case "0001":
  743. if(strauth == "0010" && strauth != "" ){
  744. button2.disabled = false;
  745. }
  746. break;
  747. case "0002":
  748. case "0003":
  749. if(strauth < "0010" && strauth != "" ){
  750. button3.disabled = false;
  751. button4.disabled = false;
  752. }
  753. break;
  754. }
  755. if(tmpstus < "0005" && tmpstus != ""){
  756. if(strauth < "0003" && strauth != "" ){
  757. button1.disabled = false;
  758. }
  759. }
  760. /*
  761. // ITC첨부파일 있으면 목록 읽어오기
  762. var tmpGrpNo = model.getValue("/root/main/data/itcconfgrpno");
  763. if (tmpGrpNo >0 ) {
  764. model.makeValue("/root/send/itc_filegrpno", tmpGrpNo);
  765. }
  766. // 정보관리 첨부파일 있으면 목록 읽어오기
  767. var tmpGrpNo = model.getValue("/root/main/data/infomnggrpno");
  768. if (tmpGrpNo >0 ) {
  769. model.makeValue("/root/send/infomng_filegrpno", tmpGrpNo);
  770. }
  771. var tmp = btn_expan.text
  772. //alert(tmp);
  773. if ( tmp == "<<"){
  774. grd_testmngtlist.attribute ( "width" ) = 585;
  775. btn_expan.text = ">>"
  776. }
  777. var tmp = model.getValue("/root/main/data/statcd");
  778. model.setValue("/root/init/itcstat", tmp);
  779. if( tmp >= 50){
  780. opt_itcstat.disabled = true;
  781. } else {
  782. opt_itcstat.disabled = false;
  783. }
  784. if(tmp >= 90){
  785. opt_infomng.disabled = true;
  786. } else {
  787. opt_infomng.disabled = false;
  788. }
  789. */
  790. model.refresh();
  791. ]]>
  792. </script>
  793. </datagrid>
  794. </group>
  795. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:800px; height:14px; ">TEST요청확인</caption>
  796. </xhtml:body>
  797. </xhtml:html>