SMZSA20500_화면및보고서관리.xrw 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643
  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>Untitle</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <list>
  11. <scrnlist/>
  12. <msgfrmtlist/>
  13. </list>
  14. <item>
  15. <scrncd/>
  16. <scrnflag/>
  17. <scrnnm/>
  18. <scrnurl/>
  19. <scrnpos/>
  20. <scrnsize/>
  21. <useyn/>
  22. <releaseState/>
  23. </item>
  24. </main>
  25. <send>
  26. <scrnkind/>
  27. <scrncd/>
  28. <scrnurl/>
  29. <scrnlist/>
  30. <awtyn/>
  31. </send>
  32. <init>
  33. <comcd>
  34. </comcd>
  35. </init>
  36. <hidden>
  37. <comcd>
  38. </comcd>
  39. </hidden>
  40. <temp/>
  41. </root>
  42. </instance>
  43. <script type="javascript" ev:event="xforms-ready">
  44. <![CDATA[
  45. // 검색조건에서 기본으로 첫번째 항목이 나타나도록 한다.
  46. fInitComcd();
  47. fInitialize();
  48. ]]>
  49. </script>
  50. <submission id="TRZSA20501" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/list">
  51. <script type="javascript" ev:event="xforms-submit-error">
  52. <![CDATA[
  53. ]]>
  54. </script>
  55. </submission>
  56. <submission id="TRZBC00101" method="post" replace="instance"/>
  57. <submission id="TXZSA20501" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" replace="instance" resultref="/root/main/list"/>
  58. </model>
  59. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  60. <script type="javascript" src="../../../com/authinfoweb/js/ZSA001.js"/>
  61. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  62. <script type="javascript">
  63. <![CDATA[
  64. var ICON_PATH = "com/hismainweb/images/"
  65. /**
  66. * @group :
  67. * @ver : 2006.12.20
  68. * @by : 이상준
  69. * @---------------------------------------------------
  70. * @type : function
  71. * @access : public
  72. * @desc : 공통코드 초기화
  73. * @return :
  74. * @---------------------------------------------------
  75. */
  76. function fInitComcd() {
  77. zbcfGetCodeList( new Array("Z0005"), new Array("/root/init/comcd"));
  78. zbcfGetCodeList( new Array("Z0006"), new Array("/root/init/comcd"));
  79. zbcfGetCodeList( new Array("Z0013"), new Array("/root/init/comcd"));
  80. fInsertInstance("Z0005", "전체", "-");
  81. }
  82. /**
  83. * @group :
  84. * @ver : 2006.12.20
  85. * @by : 이상준
  86. * @---------------------------------------------------
  87. * @type : function
  88. * @access : public
  89. * @desc : 초기화
  90. * @return :
  91. * @---------------------------------------------------
  92. */
  93. function fInitialize() {
  94. model.removeNodeset("/root/main/list/scrnlist");
  95. model.resetInstanceNode("/root/send");
  96. model.resetInstanceNode("/root/main/item");
  97. model.refresh();
  98. cmc_scrncd.select(0);
  99. }
  100. /* @group :
  101. * @ver : 2006.12.20
  102. * @by : 이상준
  103. * @---------------------------------------------------
  104. * @type : function
  105. * @access : public
  106. * @desc : 그리드의 특정행을 아이콘 종류로 노드셋 바꿈
  107. * @return :
  108. * @---------------------------------------------------
  109. */
  110. function changeNodeSet() {
  111. // 각각의 행을 체크하여 아이콘이면 아이콘 종류로 노드셋 바꿈
  112. var scrnflag;
  113. for (var i=grd_scrnlist.fixedRows; i<grd_scrnlist.rows; i++)
  114. {
  115. scrnflag = model.getValue("/root/main/list/scrnlist["+i+"]/scrnflag"); // 현재 행의 화면 이름을 가져온다.
  116. //alert(scrnflag);
  117. if (scrnflag == "gif") //
  118. {
  119. grd_scrnlist.cellComboNodeset(i, 4) = "/root/init/comcd/Z0013";
  120. }
  121. }
  122. }
  123. /* @group :
  124. * @ver : 2006.12.26
  125. * @by : 이상준
  126. * @-----------------------------------
  127. * @type : function
  128. * @access : public
  129. * @desc : 조회 및 검색
  130. */
  131. function fbtnSearch() {
  132. //model.send("TRZSA20501");
  133. submit("TRZSA20501");
  134. //grd_scrnlist.select(1, 3)=true;
  135. changeNodeSet();
  136. grd_scrnlist.row=1;
  137. }
  138. /**
  139. * @group :
  140. * @ver : 2006.12.20
  141. * @by : 이상준
  142. * @---------------------------------------------------
  143. * @type : function
  144. * @access : public
  145. * @desc : 화면명에 따라서 화면코드를 만들어줌
  146. * @return :
  147. * @---------------------------------------------------
  148. */
  149. function fbtnmakecode()
  150. {
  151. var cur_row = grd_scrnlist.row; // 추가된 행 번호 가져오기
  152. var iStatus = grd_scrnlist.rowstatus(cur_row);
  153. var scrnflag = model.getValue("/root/main/list/scrnlist["+cur_row+"]/scrnflag"); // 현재 행의 화면 화면구분 가져온다.
  154. var scrncd = model.getValue("/root/main/list/scrnlist["+cur_row+"]/scrncd"); // 현재 행의 화면 이름을 가져온다.
  155. //model.setValue("/root/main/list/scrnlist["+cur_row+"]/scrnurl",scrncd+"."+scrnflag);
  156. //if (grd_scrnlist.col == 1 && scrnflag == "gif")
  157. //{
  158. // grd_scrnlist.cellComboNodeset(cur_row, 4) = "/root/init/comcd/Z0013";
  159. //}
  160. // 화면 URL 수정시 XP에 사용하는 scrnurlxp 컬럼에 대한 데이타도 자동으로 생성한다.
  161. if(grd_scrnlist.col == 3)
  162. {
  163. var scrnurl = model.getValue("/root/main/list/scrnlist["+cur_row+"]/scrnurl");
  164. if(scrnurl == null || scrnurl == "") return;
  165. if(scrnflag == "gif") {
  166. model.setValue("/root/main/list/scrnlist["+cur_row+"]/scrnurlxp", "com_hismainxp::.xfdl");
  167. grd_scrnlist.refresh();
  168. } else if(scrnurl.lastIndexOf(".xrw") > -1) {
  169. var arScrnurl = scrnurl.split("/xrw/");
  170. var servicename = arScrnurl[0];
  171. var filename = arScrnurl[1];
  172. var service = servicename.split("/");
  173. var biz = service[0] + "_";
  174. var project = service[1];
  175. if(filename == null || filename == "") {
  176. filename = servicename;
  177. }
  178. if(project == null || project == "") {
  179. biz = "";
  180. project = "";
  181. } else {
  182. project = project.substring(0, project.length - 3) + "xp" + "::";
  183. }
  184. var xfdlname = filename.substring(0, filename.length - 3) + "xfdl";
  185. var scrnurlxp = biz + project + xfdlname;
  186. model.setValue("/root/main/list/scrnlist["+cur_row+"]/scrnurlxp", scrnurlxp);
  187. grd_scrnlist.refresh();
  188. } else if(scrnurl.lastIndexOf(".rex") > -1) {
  189. var arScrnurl = scrnurl.split("/rex/");
  190. var servicename = arScrnurl[0];
  191. var filename = arScrnurl[1];
  192. var service = servicename.split("/");
  193. var biz = service[0] + "/";
  194. var project = service[1];
  195. if(filename == null || filename == "") {
  196. filename = servicename;
  197. }
  198. if(project == null || project == "") {
  199. biz = "";
  200. project = "";
  201. } else {
  202. project = project.substring(0, project.length - 3) + "xp" + "/rex/";
  203. }
  204. var rebname = filename.substring(0, filename.length - 3) + "reb";
  205. var scrnurlxp = biz + project + rebname;
  206. model.setValue("/root/main/list/scrnlist["+cur_row+"]/scrnurlxp", scrnurlxp);
  207. grd_scrnlist.refresh();
  208. }
  209. }
  210. else if (grd_scrnlist.col != 1 && grd_scrnlist.col != 2)
  211. {
  212. return;
  213. }
  214. if (scrnflag == "xrw")
  215. {
  216. //model.setValue("/root/main/list/scrnlist["+cur_row+"]/scrnurl", "web/xrw/"+scrncd+"_.xrw");
  217. grd_scrnlist.cellComboNodeset(cur_row, 4) = "/root/init/comcd/Z0006";
  218. }
  219. else if (scrnflag == "rex")
  220. {
  221. //model.setValue("/root/main/list/scrnlist["+cur_row+"]/scrnurl", "web/rex/"+scrncd+"_.rex");
  222. grd_scrnlist.cellComboNodeset(cur_row, 4) = "/root/init/comcd/Z0006";
  223. }
  224. else if (scrnflag == "gif")
  225. {
  226. //model.setValue("/root/main/list/scrnlist["+cur_row+"]/scrnurl", ICON_PATH+scrncd+".gif");
  227. grd_scrnlist.cellComboNodeset(cur_row, 4) = "/root/init/comcd/Z0013";
  228. }
  229. }
  230. /**
  231. * @group :
  232. * @ver : 2006.12.20
  233. * @by : 이상준
  234. * @---------------------------------------------------
  235. * @type : function
  236. * @access : public
  237. * @desc : 그리드 클릭시
  238. * @return :
  239. * @---------------------------------------------------
  240. */
  241. function fgrdClick()
  242. {
  243. var cur_row = grd_scrnlist.row;
  244. var iStatus = grd_scrnlist.rowstatus(cur_row);
  245. if(iStatus=="1" || iStatus=="3") // 삽입이거나 삽입후 변경되었다면...
  246. {
  247. grd_scrnlist.colDisabled(2)=false;
  248. // grd_scrnlist.colDisabled(3)=false;
  249. }
  250. else
  251. {
  252. grd_scrnlist.colDisabled(2)=true;
  253. // grd_scrnlist.colDisabled(3)=true;
  254. }
  255. }
  256. ]]>
  257. </script>
  258. </xhtml:head>
  259. <xhtml:body guideline="1,1193;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  260. <group id="group1" style="left:0px; top:0px; width:1195px; height:13px; ">
  261. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:189px; height:14px; ">화면 및 보고서 관리</caption>
  262. </group>
  263. <group id="group3" scroll="auto" style="left:0px; top:36px; width:1195px; height:744px; ">
  264. <line id="line4" class="line_2" style="x1:0px; y1:176px; x2:1194px; y2:176px; "/>
  265. <line id="line3" class="line_2" style="x1:0px; y1:152px; x2:1194px; y2:152px; "/>
  266. <line id="line2" class="line_2" style="x1:0px; y1:128px; x2:1194px; y2:128px; "/>
  267. <group id="group2" style="left:0px; top:10px; width:1194px; height:35px; vertical-align:top; ">
  268. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:1194px; height:35px; background-color:#fffbf2; border-color:#ffd799; "/>
  269. <caption id="caption2" class="search_name" style="left:16px; top:8px; width:86px; height:17px; ">화면구분</caption>
  270. <line id="line13" style="x1:1106px; y1:7px; x2:1106px; y2:29px; border-color:#ffe4bb; border-left-style:solid; "/>
  271. <caption id="caption22" class="search_name" style="left:471px; top:8px; width:94px; height:17px; ">화면URL</caption>
  272. <button id="btn_search" class="btn1_letter2" style="left:1127px; top:7px; width:56px; height:22px; ">
  273. <caption>조회</caption>
  274. <script type="javascript" ev:event="DOMActivate">
  275. <![CDATA[
  276. fbtnSearch();
  277. ]]>
  278. </script>
  279. </button>
  280. <select1 id="cmc_scrncd" ref="/root/send/scrnkind" class="combo_default" appearance="minimal" style="left:100px; top:8px; width:125px; height:19px; ">
  281. <choices>
  282. <itemset nodeset="/root/hidden/comcd/Z0005">
  283. <label ref="cdnm"/>
  284. <value ref="cdid"/>
  285. </itemset>
  286. </choices>
  287. </select1>
  288. <input id="ipt_scrnurl" ref="/root/send/scrnurl" class="input_search" style="left:557px; top:8px; width:200px; height:19px; ">
  289. <script type="javascript" ev:event="onkeypress">
  290. <![CDATA[
  291. if (event.keycode == 13)
  292. {
  293. ipt_scrnurl.value = ipt_scrnurl.currentText;
  294. fbtnSearch();
  295. }
  296. ]]>
  297. </script>
  298. </input>
  299. <input id="ipt_scrncd" ref="/root/send/scrncd" class="input_search" style="left:335px; top:8px; width:114px; height:19px; ">
  300. <script type="javascript" ev:event="onkeypress">
  301. <![CDATA[
  302. if (event.keycode == 13)
  303. {
  304. ipt_scrncd.value = ipt_scrncd.currentText;
  305. fbtnSearch();
  306. }
  307. ]]>
  308. </script>
  309. </input>
  310. <caption id="caption1" class="search_name" style="left:249px; top:8px; width:94px; height:17px; ">화면코드</caption>
  311. <caption id="caption3" class="search_name" style="left:775px; top:10px; width:104px; height:17px; ">AWT여부</caption>
  312. <select1 id="radio1" ref="/root/send/awtyn" appearance="full" cols="3" overflow="visible" style="left:860px; top:10px; width:205px; height:20px; border-style:none; ">
  313. <choices>
  314. <item>
  315. <label>All</label>
  316. <value/>
  317. </item>
  318. <item>
  319. <label>On</label>
  320. <value>Y</value>
  321. </item>
  322. <item>
  323. <label>Off</label>
  324. <value>N</value>
  325. </item>
  326. </choices>
  327. </select1>
  328. </group>
  329. <caption id="caption20" class="tit_2" style="left:6px; top:62px; width:136px; height:14px; ">화면 및 보고서 목록</caption>
  330. <line id="line8" class="line_1" style="x1:0px; y1:77px; x2:1194px; y2:77px; "/>
  331. <line id="line7" class="line_3" style="x1:0px; y1:741px; x2:1194px; y2:741px; "/>
  332. <datagrid id="grd_scrnlist" nodeset="/root/main/list/scrnlist" caption="화면구분^화면코드^화면URL^화면위치/아이콘종류^사용여부^AWT^공개상태^업무^TF여부^scrnurlxp" colwidth="74, 94, 540, 132, 54, 49, 67, 84, 60, 540" dataheight="25" defaultrows="0" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="update" rowheight="25" style="left:0px; top:81px; width:1194px; height:658px; text-align:center; border-color:#808080; ">
  333. <col ref="scrnflag" type="combo">
  334. <choices>
  335. <itemset nodeset="/root/init/comcd/Z0005">
  336. <label ref="cdnm"/>
  337. <value ref="cdid"/>
  338. </itemset>
  339. </choices>
  340. </col>
  341. <col ref="scrncd" type="input" maxlength="10"/>
  342. <col ref="scrnurl" type="input" style="text-align:left; "/>
  343. <col ref="scrnpos" type="combo" style="text-align:center; ">
  344. <choices>
  345. <itemset nodeset="/root/init/comcd/Z0006">
  346. <label ref="cdnm"/>
  347. <value ref="cdid"/>
  348. </itemset>
  349. </choices>
  350. </col>
  351. <col checkvalue="Y,N" ref="useyn" type="checkbox"/>
  352. <col checkvalue="Y,N" ref="awtyn" type="checkbox"/>
  353. <col ref="releasestate" type="combo">
  354. <choices>
  355. <item>
  356. <label>Y</label>
  357. <value>Y</value>
  358. </item>
  359. <item>
  360. <label>N</label>
  361. <value>N</value>
  362. </item>
  363. </choices>
  364. </col>
  365. <col ref="workcd" type="combo">
  366. <choices>
  367. <item>
  368. <label>기반기술</label>
  369. <value>1</value>
  370. </item>
  371. <item>
  372. <label>원무심사</label>
  373. <value>2</value>
  374. </item>
  375. <item>
  376. <label>진료/기록</label>
  377. <value>3</value>
  378. </item>
  379. <item>
  380. <label>진료지원</label>
  381. <value>4</value>
  382. </item>
  383. <item>
  384. <label>간호</label>
  385. <value>5</value>
  386. </item>
  387. <item>
  388. <label>MIS</label>
  389. <value>6</value>
  390. </item>
  391. </choices>
  392. </col>
  393. <col checkvalue="Y,N" ref="tfyn" type="checkbox"/>
  394. <col ref="scrnurlxp" type="input" visibility="hidden" style="text-align:left; "/>
  395. <script type="javascript" ev:event="onrowchanged">
  396. <![CDATA[
  397. var cur_row = grd_scrnlist.row;
  398. if ( cur_row > 0 ) {
  399. model.copyNode("/root/main/item","/root/main/list/scrnlist["+cur_row+"]");
  400. model.refresh();
  401. }
  402. ]]>
  403. </script>
  404. <script type="javascript" ev:event="xforms-value-changed">
  405. <![CDATA[
  406. fbtnmakecode();
  407. ]]>
  408. </script>
  409. <script type="javascript" ev:event="ondblclick">
  410. <![CDATA[
  411. fgrdClick();
  412. ]]>
  413. </script>
  414. <script type="javascript" ev:event="onkeydown">
  415. <![CDATA[
  416. // grd_scrnlist.row
  417. //alert(event.keyCode);
  418. ]]>
  419. </script>
  420. <script type="javascript" ev:event="xforms-select">
  421. <![CDATA[
  422. if( grd_scrnlist.col == 5 ){ // 아이콘 종류를 선택했을 경우
  423. var cur_row = grd_scrnlist.row;
  424. var scrnflag = model.getValue("/root/main/list/scrnlist["+cur_row+"]/scrnflag"); // 현재 행의 화면구분을 가져온다.
  425. var icontype = model.getValue("/root/main/list/scrnlist["+cur_row+"]/scrnpos"); // 현재 행의 화면구분을 가져온다.
  426. if (scrnflag == "gif" && icontype=="A")
  427. {
  428. //alert("팝업화면");
  429. }
  430. }
  431. ]]>
  432. </script>
  433. <script type="javascript" ev:event="onbuttonclick">
  434. <![CDATA[
  435. var cur_row = grd_scrnlist.row;
  436. var scrnflag = model.getValue("/root/main/list/scrnlist["+cur_row+"]/scrnflag"); // 현재 행의 화면구분을 가져온다.
  437. if( grd_scrnlist.col == 4 && scrnflag=="gif"){ // 아이콘 종류를 선택했을 경우
  438. alert("하이");
  439. }
  440. ]]>
  441. </script>
  442. </datagrid>
  443. <group id="group4" style="left:874px; top:45px; width:321px; height:32px; ">
  444. <button id="button8" class="btn2_letter3" style="left:210px; top:11px; width:53px; height:19px; ">
  445. <caption>행추가</caption>
  446. <script type="javascript" ev:event="DOMActivate">
  447. <![CDATA[
  448. grd_scrnlist.addRow(); // 입력할 행 추가.
  449. var cur_row = grd_scrnlist.row; // 추가된 행 번호 가져오기
  450. var cnt_row = grd_scrnlist.rows; // 현재 행의 갯수 가져오기
  451. var scrnflag;
  452. var scrncd;
  453. var scrnurl;
  454. var scrnurlxp;
  455. var scrnpos;
  456. var useryn;
  457. var releasestate;
  458. var workcd;
  459. var awtyn;
  460. var tfyn;
  461. if (cnt_row > 2) // 이미 데이터가 있으면
  462. {
  463. scrnflag = model.getValue("/root/main/list/scrnlist["+(cnt_row-2)+"]/scrnflag");
  464. //scrnurl = model.getValue("/root/main/list/scrnlist["+(cnt_row-2)+"]/scrnurl");
  465. scrnpos = model.getValue("/root/main/list/scrnlist["+(cnt_row-2)+"]/scrnpos");
  466. useyn = model.getValue("/root/main/list/scrnlist["+(cnt_row-2)+"]/useyn");
  467. releasestate = model.getValue("/root/main/list/scrnlist["+(cnt_row-2)+"]/releasestate");
  468. workcd = model.getValue("/root/main/list/scrnlist["+(cnt_row-2)+"]/workcd");
  469. awtyn = model.getValue("/root/main/list/scrnlist["+(cnt_row-2)+"]/awtyn");
  470. tfyn = model.getValue("/root/main/list/scrnlist["+(cnt_row-2)+"]/tfyn");
  471. grd_scrnlist.cellComboNodeset(cur_row, 4) = grd_scrnlist.cellComboNodeset(cur_row-2, 4);//"/root/init/comcd/Z0013";
  472. }
  473. else // 데이터가 하나도 없으면
  474. {
  475. scrnflag = 'xrw';
  476. scrnurl ="web/xrw/SM_.xrw";
  477. scrnurlxp = "xp::SM_.xfdl";
  478. scrnpos = 'M';
  479. useyn = 'Y';
  480. releasestate = 'N';
  481. awtyn = 'N';
  482. tfyn = 'Y';
  483. }
  484. model.setValue("/root/main/list/scrnlist["+cur_row+"]/scrnflag",scrnflag);
  485. model.setValue("/root/main/list/scrnlist["+cur_row+"]/scrncd",scrncd);
  486. model.setValue("/root/main/list/scrnlist["+cur_row+"]/scrnurl",scrnurl);
  487. model.setValue("/root/main/list/scrnlist["+cur_row+"]/scrnurlxp",scrnurlxp);
  488. model.setValue("/root/main/list/scrnlist["+cur_row+"]/scrnpos",scrnpos);
  489. model.setValue("/root/main/list/scrnlist["+cur_row+"]/useyn",useyn);
  490. model.setValue("/root/main/list/scrnlist["+cur_row+"]/releasestate",releasestate);
  491. model.setValue("/root/main/list/scrnlist["+cur_row+"]/awtyn",awtyn);
  492. model.setValue("/root/main/list/scrnlist["+cur_row+"]/tfyn",tfyn);
  493. // 그리드에 추가
  494. //model.copyNode("/root/main/list/scrnlist["+cur_row+"]","/root/main/item");
  495. model.refresh();
  496. grd_scrnlist.row = cur_row;
  497. //grd_scrnlist.select(cur_row, 2)=true;
  498. //grd_scrnlist.editcell();
  499. ]]>
  500. </script>
  501. </button>
  502. <button id="button9" class="btn2_letter3" style="left:266px; top:11px; width:53px; height:19px; ">
  503. <caption>행삭제</caption>
  504. <script type="javascript" ev:event="DOMActivate">
  505. <![CDATA[
  506. var cur_row = grd_scrnlist.row; // 행 번호 가져오기
  507. var iStatus = grd_scrnlist.rowstatus(cur_row);
  508. if(cur_row<0) {
  509. alert("삭제할 행을 선택해주세요.");
  510. return;
  511. }
  512. if (iStatus == 1) // 새로 삽입된 행이면
  513. {
  514. grd_scrnlist.deleteitem(cur_row);
  515. }
  516. else if (iStatus == 4) // 삭제로 표시된 행이면
  517. {
  518. grd_scrnlist.removestatus(cur_row, "delete");
  519. }
  520. else
  521. {
  522. grd_scrnlist.addStatus(cur_row, "delete");
  523. }
  524. ]]>
  525. </script>
  526. </button>
  527. <button id="button10" class="btn2_letter4" style="left:143px; top:11px; width:64px; height:19px; ">
  528. <caption>엑셀입력</caption>
  529. <script type="javascript" ev:event="DOMActivate">
  530. <![CDATA[
  531. var fileName = window.fileDialog("open", "", false);
  532. grd_scrnlist.loadExcel(fileName);
  533. for (i=grd_scrnlist.fixedRows; i<grd_scrnlist.rows; i++)
  534. {
  535. grd_scrnlist.rowStatus(i) = 1;
  536. }
  537. ]]>
  538. </script>
  539. </button>
  540. <button id="button11" class="btn2_letter4" style="left:76px; top:11px; width:64px; height:19px; ">
  541. <caption>엑셀저장</caption>
  542. <script type="javascript" ev:event="DOMActivate">
  543. <![CDATA[
  544. var fileName = window.fileDialog("save", ",", false, "excel", "xls", "All Files (*.*)|*.*|Excel Files(*.xls)|*.xls");
  545. if (fileName != "")
  546. {
  547. grd_scrnlist.saveExcel(fileName);
  548. }
  549. ]]>
  550. </script>
  551. </button>
  552. </group>
  553. </group>
  554. <line id="line32" class="line_6" style="x1:0px; y1:90px; x2:1194px; y2:90px; "/>
  555. <group id="group6" scroll="auto" style="left:0px; top:13px; width:1195px; height:27px; ">
  556. <button id="button1" class="btn4_letter3" style="left:1126px; top:3px; width:68px; height:22px; ">
  557. <caption>초기화</caption>
  558. <script type="javascript" ev:event="DOMActivate">
  559. <![CDATA[
  560. fInitialize();
  561. ]]>
  562. </script>
  563. </button>
  564. <button id="button2" class="btn4_letter2" style="left:1067px; top:3px; width:56px; height:22px; ">
  565. <caption>저장</caption>
  566. <script type="javascript" ev:event="DOMActivate">
  567. <![CDATA[
  568. if(!checkGridUpdate(grd_scrnlist))
  569. {
  570. alert("저장할 자료가 존재하지 않습니다.");
  571. return;
  572. }
  573. if(checkGridField(grd_scrnlist,"scrncd")==false)
  574. {
  575. alert("데이터중에 비어있는 필수필드가 있습니다.");
  576. return;
  577. }
  578. model.setValue("/root/send/scrnlist",grd_scrnlist.getUpdateData());
  579. if ( submit("TXZSA20501") ) {
  580. grd_scrnlist.clearStatus(); // submit() 성공하면 그리드의 i,u,d 상태 제거
  581. changeNodeSet();
  582. }
  583. ]]>
  584. </script>
  585. </button>
  586. <line id="line1" class="line_6" style="x1:0px; y1:25px; x2:1194px; y2:25px; "/>
  587. </group>
  588. </xhtml:body>
  589. </xhtml:html>