SMAEB01000_예약예문관리.xrw 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357
  1. <?xml version="1.0" encoding="EUC-KR"?>
  2. <?xml-stylesheet href="../../../com/commonweb/css/common.css" type="text/css" ?>
  3. <xhtml:html xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.w3.org/2002/01/xforms" xmlns:ev="http://www.w3.org/2001/xml-events">
  4. <xhtml:head>
  5. <xhtml:title>예약예문관리</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <tmplcodelist>
  11. <tmplcode>
  12. <sortno/>
  13. <tmplcd/>
  14. <tmplnm/>
  15. <tmplflag/>
  16. <tmplcdflag/>
  17. <tmpldata/>
  18. </tmplcode>
  19. </tmplcodelist>
  20. </main>
  21. <send>
  22. <req>
  23. <data/>
  24. </req>
  25. <tmplflag/>
  26. <tmplcd/>
  27. <tmplnm/>
  28. <tmplcdflag/>
  29. <globalinstance>
  30. <instance1/>
  31. </globalinstance>
  32. <filename/>
  33. </send>
  34. <init>
  35. <baseinfo>
  36. <tmplcdflag/>
  37. </baseinfo>
  38. <cmb_info>
  39. <initexecroom>
  40. <excuroomcdid/>
  41. <excuroomcdnm/>
  42. </initexecroom>
  43. <suppdept>
  44. <suppdeptcd/>
  45. <depthngnm/>
  46. </suppdept>
  47. </cmb_info>
  48. </init>
  49. <hidden/>
  50. <temp>
  51. <count/>
  52. </temp>
  53. </root>
  54. </instance>
  55. <script type="javascript" ev:event="xforms-ready">
  56. <![CDATA[
  57. aezfSetSuppDeptcd();
  58. zbcfGetCodeList( new Array("A0146"), new Array("/root/init/baseinfo/tmplcdflag"), true );
  59. submit("TRZBC00101");
  60. cmb_tmplcdflag.select(0);
  61. submit("TRAEA01301", false);
  62. if( instance1.selectSingleNode("/root/init/cmb_info/suppdept[suppdeptcd='" + model.getValue("/root/send/globalinstance/instance1") + "']") == null ){
  63. caption4.visible = true;
  64. cmb_deptcd.visible = true;
  65. btn_save1.disabled = true;
  66. btn_upd.disabled = true;
  67. btn_apply.disabled = true;
  68. btn_save2.disabled = true;
  69. btn_fileopen.disabled = true;
  70. btn_grdadd.disabled = true;
  71. btn_grddel.disabled = true;
  72. }else{
  73. caption4.visible = false;
  74. cmb_deptcd.visible = false;
  75. btn_save1.disabled = false;
  76. btn_upd.disabled = false;
  77. btn_apply.disabled = false;
  78. btn_save2.disabled = false;
  79. btn_fileopen.disabled = false;
  80. btn_grdadd.disabled = false;
  81. btn_grddel.disabled = false;
  82. }
  83. model.removeNodeset("/root/main/tmplcodelist/tmplcode");
  84. model.removeNodeset("/root/main/tmpldata");
  85. model.refresh();
  86. ]]>
  87. </script>
  88. <submission id="TXAEB01001" ref="/root/send" method="post" mediatype="application/x-www-form-urlencoded" resultref="/root/temp/count"/>
  89. <submission id="TRAEB01001" ref="/root/send" method="post" mediatype="application/x-www-form-urlencoded" resultref="/root/main/tmplcodelist"/>
  90. <submission id="TXAEB01002" ref="/root/send" method="post" mediatype="application/x-www-form-urlencoded" resultref="/root/temp"/>
  91. <submission id="TRAEA01301" ref="/root/send/globalinstance" method="post" mediatype="application/x-www-form-urlencoded" replace="instance" resultref="/root/init/cmb_info"/>
  92. <submission id="TRZBC00101"/>
  93. </model>
  94. <script type="javascript" src="../../../com/basiccodeweb/js/ZBC001.js"/>
  95. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  96. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  97. <script type="javascript" src="../../../com/commonweb/js/stringHelper.js"/>
  98. <script type="javascript" src="../../../ast/examcureweb/js/AEZ0001.js"/>
  99. <script type="javascript">
  100. <![CDATA[
  101. function fOpenRtfFileDialog() {
  102. var file = window.fileDialog("open","","false","","","RTF Files(*.rtf)|*.rtf");
  103. return file;
  104. }
  105. function fGetFileName(path) {
  106. var lastIdx = path.lastIndexOf("\\");
  107. if (lastIdx >= 0) {
  108. return path.substr(lastIdx+1);
  109. } else {
  110. return path;
  111. }
  112. }
  113. ]]>
  114. </script>
  115. </xhtml:head>
  116. <xhtml:body guideline="1,1194;" style="margin-left:8; margin-top:0; margin-right:8; margin-bottom:0; ">
  117. <shape id="roundrect2" appearance="roundrect" ellipsewidth="20" ellipseheight="20" style="left:335px; top:755px; width:385px; height:25px; "/>
  118. <caption id="caption2" class="tit_1" style="left:0px; top:0px; width:106px; height:14px; background-image:../../../com/commonweb/images/tit_bullet1.gif; ">예약예문관리</caption>
  119. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:2px; top:20px; width:1190px; height:30px; background-color:#fffbf2; border-color:#ffd799; "/>
  120. <line id="line13" style="x1:1115px; y1:25px; x2:1115px; y2:47px; border-color:#ffe4bb; border-left-style:solid; "/>
  121. <caption id="caption1" class="search_name" style="left:525px; top:25px; width:73px; height:17px; background-image:../../../com/commonweb/images/search_bullet1.gif; ">예문명 :</caption>
  122. <caption id="caption3" class="search_name" style="left:339px; top:25px; width:91px; height:17px; background-image:../../../com/commonweb/images/search_bullet1.gif; ">예문코드 :</caption>
  123. <line id="line1" style="x1:735px; y1:25px; x2:735px; y2:47px; border-color:#ffe4bb; border-left-style:solid; "/>
  124. <line id="line2" class="line_1" style="x1:3px; y1:78px; x2:327px; y2:79px; "/>
  125. <caption id="caption11" class="tit_2" style="left:5px; top:60px; width:100px; height:14px; background-image:../../../com/commonweb/images/tit_bullet2.gif; ">예문코드</caption>
  126. <button id="btn_sea" class="btn1_letter2" style="left:1128px; top:25px; width:56px; height:22px; background-image:../../../com/commonweb/images/btn1_letter2.gif; ">
  127. <caption>조회</caption>
  128. <script type="javascript" ev:event="DOMActivate">
  129. <![CDATA[
  130. submit("TRAEB01001");
  131. ]]>
  132. </script>
  133. </button>
  134. <button id="btn_grddel" class="btn2_letter3" style="left:272px; top:56px; width:53px; height:19px; background-image:../../../com/commonweb/images/btn2_letter3.gif; ">
  135. <caption>행삭제</caption>
  136. <script type="javascript" ev:event="DOMActivate">
  137. <![CDATA[
  138. deleteSelectedRows(grd_tmplcodelist, true);
  139. ]]>
  140. </script>
  141. </button>
  142. <button id="btn_prt" class="btn4_letter2" disable.background-image="../../../com/commonweb/images/dis_btn4_letter2.gif" style="left:1139px; top:760px; width:56px; height:22px; background-image:../../../com/commonweb/images/btn4_letter2.gif; ">
  143. <caption>출력</caption>
  144. <script type="javascript" ev:event="DOMActivate">
  145. <![CDATA[
  146. rtfviewer.SaveRtfFile(); // 현재 내용을 파일에 저장
  147. rtfviewer.print();
  148. ]]>
  149. </script>
  150. </button>
  151. <button id="btn_grdadd" class="btn2_letter3" style="left:210px; top:56px; width:53px; height:19px; background-image:../../../com/commonweb/images/btn2_letter3.gif; ">
  152. <caption>행추가</caption>
  153. <script type="javascript" ev:event="DOMActivate">
  154. <![CDATA[
  155. grd_tmplcodelist.addItem();
  156. model.setValue("/root/main/tmplcodelist/tmplcode[" + grd_tmplcodelist.row + "]/tmplcdflag",model.getValue("/root/send/tmplcdflag"));
  157. ]]>
  158. </script>
  159. </button>
  160. <select1 id="cmb_tmplcdflag" ref="/root/send/tmplcdflag" class="combo_s_essential" appearance="minimal" style="left:15px; top:25px; width:165px; height:19px; background-image:../../../com/commonweb/images/input_s_essential.gif; ">
  161. <choices>
  162. <itemset nodeset="/root/init/baseinfo/tmplcdflag/A0146">
  163. <label ref="cdnm"/>
  164. <value ref="cdid"/>
  165. </itemset>
  166. </choices>
  167. </select1>
  168. <select1 id="rdo_tmplflag" ref="/root/send/tmplflag" class="radio_search" overflow="visible" appearance="full" cols="3" style="left:195px; top:26px; width:140px; height:20px; background-color:transparent; border-style:none; ">
  169. <choices>
  170. <item>
  171. <label>전체</label>
  172. <value/>
  173. </item>
  174. <item>
  175. <label>한글</label>
  176. <value>H</value>
  177. </item>
  178. <item>
  179. <label>영문</label>
  180. <value>E</value>
  181. </item>
  182. </choices>
  183. </select1>
  184. <input id="ipt_tmplcd" ref="/root/send/tmplcd" class="input_search" _chartype="upper" style="left:435px; top:25px; width:80px; height:19px; ">
  185. <script type="javascript" ev:event="onkeydown">
  186. <![CDATA[
  187. inputEnterKey("btn_sea","DOMActivate");
  188. ]]>
  189. </script>
  190. </input>
  191. <input id="ipt_tmplnm" ref="/root/send/tmplnm" class="input_search" style="left:605px; top:25px; width:175px; height:19px; ">
  192. <script type="javascript" ev:event="onkeydown">
  193. <![CDATA[
  194. inputEnterKey("btn_sea","DOMActivate");
  195. ]]>
  196. </script>
  197. </input>
  198. <button id="btn_save1" class="btn4_letter2" disable.background-image="../../../com/commonweb/images/dis_btn4_letter2.gif" style="left:275px; top:760px; width:56px; height:22px; background-image:../../../com/commonweb/images/btn4_letter2.gif; ">
  199. <caption>저장</caption>
  200. <script type="javascript" ev:event="DOMActivate">
  201. <![CDATA[
  202. var update = getGridUpdateData(grd_tmplcodelist);
  203. if(update == ""){
  204. messageBox("업데이트 정보가 ", "I004");
  205. } else {
  206. model.setValue("/root/send/req/data",update);
  207. submit("TXAEB01001");
  208. }
  209. submit("TRAEB01001");
  210. ]]>
  211. </script>
  212. <script type="javascript" ev:event="DOMFocusIn">
  213. <![CDATA[
  214. checkKeyColumn("grd_tmplcodelist");
  215. ]]>
  216. </script>
  217. </button>
  218. <button id="btn_save2" class="btn4_letter2" disable.background-image="../../../com/commonweb/images/dis_btn4_letter2.gif" style="left:1013px; top:760px; width:56px; height:22px; background-image:../../../com/commonweb/images/btn4_letter2.gif; ">
  219. <caption>저장</caption>
  220. <script type="javascript" ev:event="DOMActivate">
  221. <![CDATA[
  222. if (grd_tmplcodelist.row < 0) {
  223. messageBox("예문코드를 ","C002");
  224. return;
  225. }
  226. var str = rtfviewer.TextRtf;
  227. //if (str.isByteSize(32000)) {
  228. model.makeValue("/root/main/tmplcodelist/tmplcode[" + grd_tmplcodelist.row + "]/tmpldata", str);
  229. //} else {
  230. // messageBox("저장할 수 있는 파일크기(최대 32KByte)를 " , "E003")
  231. // return;
  232. //}
  233. model.copyNode("/root/send/req/data","/root/main/tmplcodelist/tmplcode[" + grd_tmplcodelist.row + "]");
  234. submit("TXAEB01002");
  235. model.removeNodeset("/root/send/req/data");
  236. model.makeNode("/root/send/req/data");
  237. submit("TRAEB01001");
  238. ]]>
  239. </script>
  240. </button>
  241. <button id="btn_clear" class="btn4_letter3" disable.background-image="../../../com/commonweb/images/dis_btn4_letter3.gif" style="left:1070px; top:760px; width:68px; height:22px; background-image:../../../com/commonweb/images/btn4_letter3.gif; ">
  242. <caption>초기화</caption>
  243. <script type="javascript" ev:event="DOMActivate">
  244. <![CDATA[
  245. rtfviewer.Clear();
  246. ]]>
  247. </script>
  248. </button>
  249. <datagrid id="grd_tmplcodelist" nodeset="/root/main/tmplcodelist/tmplcode" caption="순번^코드^Templet명^구분^caption1" colwidth="37, 59, 152, 55, 100" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" colsep="^" fixed.background-image="../../../com/commonweb/images/grid_bg.gif" style="left:2px; top:82px; width:328px; height:672px; ">
  250. <col ref="sortno" type="input" format="#"/>
  251. <col ref="tmplcd" type="input" maxlength="12" _chartype="upper" _key="true"/>
  252. <col ref="tmplnm" type="input"/>
  253. <col class="gridcombo" ref="tmplflag" type="combo" style="background-image:../../../com/commonweb/images/combo_btn.gif; ">
  254. <choices>
  255. <item>
  256. <label>한글</label>
  257. <value>H</value>
  258. </item>
  259. <item>
  260. <label>영문</label>
  261. <value>E</value>
  262. </item>
  263. </choices>
  264. </col>
  265. <col ref="tmplcdflag" visibility="hidden"/>
  266. <script type="javascript" ev:event="onendedit">
  267. <![CDATA[
  268. checkKeyColumn("grd_tmplcodelist");
  269. ]]>
  270. </script>
  271. <script type="javascript" ev:event="onclick">
  272. <![CDATA[
  273. rtfviewer.TextRtf = model.getValue("/root/main/tmplcodelist/tmplcode[" + grd_tmplcodelist.row + "]/tmpldata");
  274. ]]>
  275. </script>
  276. </datagrid>
  277. <button id="btn_apply" navindex="13" class="btn4_letter2" style="left:955px; top:760px; width:56px; height:22px; ">
  278. <caption>적용</caption>
  279. <script type="javascript" ev:event="DOMActivate">
  280. <![CDATA[
  281. //var filename = rtfviewer.getFileName();
  282. //rtfviewer.OpenRtfFile(filename);
  283. //rtfviewer.ReadOnly = "true";
  284. rtfviewer.Reload();
  285. ]]>
  286. </script>
  287. </button>
  288. <caption id="caption7" class="search_name" style="left:411px; top:757px; width:80px; height:17px; text-align:center; vertical-align:middle; ">파일명</caption>
  289. <input id="opt_imgnm" ref="/root/send/filename" navindex="3" class="output_search" style="left:496px; top:757px; width:215px; height:19px; "/>
  290. <button id="btn_fileopen" class="btn1_letter4" style="left:346px; top:757px; width:80px; height:22px; background-image:../../../com/commonweb/images/btn1_letter4.gif; ">
  291. <caption>파일열기</caption>
  292. <script type="javascript" ev:event="DOMActivate">
  293. <![CDATA[
  294. var file = fOpenRtfFileDialog();
  295. if (file == "") {
  296. return;
  297. }
  298. // 선택한 파일을 RTF viewer로 보여준다.
  299. rtfviewer.OpenRtfFile(file);
  300. rtfviewer.ReadOnly = "true";
  301. model.setValue("/root/send/filename",fGetFileName(file));
  302. model.refresh();
  303. ]]>
  304. </script>
  305. </button>
  306. <button id="btn_upd" navindex="13" class="btn4_letter2" style="left:895px; top:760px; width:56px; height:22px; ">
  307. <caption>수정</caption>
  308. <script type="javascript" ev:event="DOMActivate">
  309. <![CDATA[
  310. //rtfviewer.SaveRtfFile();
  311. var filename = rtfviewer.getFileName();
  312. rtfviewer.ModifyWithWord(filename);
  313. ]]>
  314. </script>
  315. </button>
  316. <object id="rtfviewer" clsid="{a4bf7e18-5f67-4868-a726-eed421632374}" style="left:335px; top:80px; width:849px; height:670px; "/>
  317. <caption id="caption4" class="search_name" style="left:790px; top:25px; width:86px; height:17px; background-image:../../../com/commonweb/images/search_bullet1.gif; ">지원부서 :</caption>
  318. <select1 id="cmb_deptcd" ref="/root/send/globalinstance/instance1" appearance="minimal" style="left:885px; top:25px; width:140px; height:19px; ">
  319. <choices>
  320. <itemset nodeset="/root/init/cmb_info/suppdept">
  321. <label ref="depthngnm"/>
  322. <value ref="suppdeptcd"/>
  323. </itemset>
  324. </choices>
  325. <script type="javascript" ev:event="xforms-value-changed">
  326. <![CDATA[
  327. btn_sea.dispatch("DOMActivate");
  328. ]]>
  329. </script>
  330. </select1>
  331. </xhtml:body>
  332. </xhtml:html>