SPMMO04900_공지사항등록.xrw 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528
  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. <listinfo>
  11. <listinfo>
  12. <attfilenm/>
  13. <trgtint/>
  14. <trgtcmd/>
  15. <deliveflag/>
  16. <todd/>
  17. <fromdd/>
  18. <delivetitl/>
  19. <status/>
  20. <genrno/>
  21. <genrdd/>
  22. <updtrid/>
  23. <delivecnts/>
  24. <trgtnm/>
  25. <orddrid/>
  26. <orddeptcd/>
  27. <fileyn/>
  28. </listinfo>
  29. </listinfo>
  30. <choideptinfo>
  31. <choideptlist>
  32. <deptcd/>
  33. <deptnm/>
  34. </choideptlist>
  35. <getrows/>
  36. </choideptinfo>
  37. <choiuserinfo>
  38. <choiuserlist>
  39. <userid/>
  40. <usernm/>
  41. </choiuserlist>
  42. <getrows/>
  43. </choiuserinfo>
  44. <delivetrgt>
  45. <delivetrgt>
  46. <trgtint/>
  47. <trgtcount/>
  48. <genrdd/>
  49. <genrno/>
  50. <trgtnm/>
  51. <trgt/>
  52. </delivetrgt>
  53. </delivetrgt>
  54. <cond>
  55. <orddd/>
  56. <orddeptcd/>
  57. <orddrid/>
  58. </cond>
  59. <noticeinfo>
  60. <noticelist>
  61. <delivetitl/>
  62. <attfilenm/>
  63. <updtrid/>
  64. <genrdd/>
  65. <genrno/>
  66. <fromdd/>
  67. <todd/>
  68. <deliveflag/>
  69. <delivecnts/>
  70. <trgtint/>
  71. <histstat/>
  72. <trgtcmd/>
  73. <attyn/>
  74. <fstrgstdt/>
  75. </noticelist>
  76. </noticeinfo>
  77. <keyinfo>
  78. <keylist/>
  79. </keyinfo>
  80. </main>
  81. <send>
  82. <reqdata/>
  83. <savedata/>
  84. <file>
  85. <filename/>
  86. <genrdd/>
  87. <genrno/>
  88. <orddrid/>
  89. <orddeptcd/>
  90. </file>
  91. </send>
  92. <hidden>
  93. </hidden>
  94. <init/>
  95. </root>
  96. </instance>
  97. <script type="javascript" ev:event="xforms-ready">
  98. <![CDATA[
  99. //**********초기화
  100. //제목, 대상, 첨부, 내용에 data 제거
  101. ipt_titl.value = "";
  102. ipt_att.value = "";
  103. ipt_cnts.value = "";
  104. //기간을 초기화
  105. var getdate = getCurrentDate();
  106. model.setValue("/root/main/listinfo/listinfo/fromdd", getdate);
  107. var todd = ((getCurrentDate().toDate()).getAddDate(30)).getDateFormat();
  108. model.setValue("/root/main/listinfo/listinfo/todd",todd);
  109. model.refresh();
  110. //콤보박스를 초기화
  111. cmb_flag.select(0);
  112. cmb_trgtcmd.select(0);
  113. //대상이 전체로 초기화 되므로 전체로 대상내용에 나타나게 한다
  114. model.setValue("/root/main/listinfo/listinfo/trgtnm",'-');
  115. //진료과와 진료의사 값을 받아온다.
  116. model.setValue("/root/main/listinfo/listinfo/orddrid",model.getValue("/root/main/cond/orddrid"));
  117. model.setValue("/root/main/listinfo/listinfo/orddeptcd",model.getValue("/root/main/cond/orddeptcd"));
  118. model.removeNodeset("/root/main/trgtinfo");
  119. model.removeNodeset("/root/main/keyinfo/keylist");
  120. model.refresh();
  121. ]]>
  122. </script>
  123. <submission id="TXMMO04901" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata" resultref="/root/main/noticeinfo"/>
  124. <submission id="TXMMO04902" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send/savedata" resultref="/root/main/noticeinfo"/>
  125. <submission id="TXMMO04903" mediatype="multipart/form-data" method="form-data-post" ref="/root/send/file" resultref="/root/main/noticeinfo"/>
  126. </model>
  127. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  128. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  129. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  130. <script type="javascript" src="../../../emr/commonweb/js/EMRCommon.js"/>
  131. </xhtml:head>
  132. <xhtml:body pagewidth="610" pageheight="400" guideline="1,599;" style="margin-left:8; margin-top:8; margin-right:8; margin-bottom:8; ">
  133. <line id="line1" class="line_1" style="x1:0px; y1:35px; x2:590px; y2:35px; "/>
  134. <caption id="caption13" class="cell_1" style="left:0px; top:40px; width:115px; height:23px; text-align:center; vertical-align:middle; ">제목</caption>
  135. <input id="ipt_titl" ref="/root/main/listinfo/listinfo/delivetitl" class="input_default" maxlength="300" style="left:119px; top:42px; width:469px; height:19px; "/>
  136. <caption id="caption1" class="cell_1" style="left:0px; top:65px; width:115px; height:23px; text-align:center; vertical-align:middle; ">기간</caption>
  137. <input id="ipt_fromdd" ref="/root/main/listinfo/listinfo/fromdd" class="input_search" inputtype="date" format="yyyy-mm-dd" style="left:118px; top:65px; width:125px; height:19px; "/>
  138. <caption id="caption2" class="cell_1" style="left:0px; top:90px; width:115px; height:23px; text-align:center; vertical-align:middle; ">대상</caption>
  139. <input id="ipt_todd" ref="/root/main/listinfo/listinfo/todd" class="input_search" inputtype="date" format="yyyy-mm-dd" style="left:273px; top:65px; width:125px; height:19px; "/>
  140. <caption id="caption4" class="cell_1" style="left:403px; top:65px; width:75px; height:23px; text-align:center; vertical-align:middle; ">구분</caption>
  141. <select1 id="cmb_flag" ref="/root/main/listinfo/listinfo/deliveflag" appearance="minimal" style="left:483px; top:66px; width:105px; height:19px; ">
  142. <choices>
  143. <item>
  144. <label>일반</label>
  145. <value>0</value>
  146. </item>
  147. <item>
  148. <label>긴급</label>
  149. <value>1</value>
  150. </item>
  151. </choices>
  152. </select1>
  153. <caption id="caption3" class="cell_1" style="left:0px; top:140px; width:115px; height:220px; text-align:center; vertical-align:middle; ">내용</caption>
  154. <caption id="caption6" style="left:253px; top:65px; width:15px; height:20px; ">~</caption>
  155. <select1 id="cmb_trgtcmd" ref="/root/main/listinfo/listinfo/trgtcmd" appearance="minimal" style="left:118px; top:90px; width:90px; height:19px; ">
  156. <choices>
  157. <item>
  158. <label>전체</label>
  159. <value>0</value>
  160. </item>
  161. <item>
  162. <label>개인</label>
  163. <value>1</value>
  164. </item>
  165. <item>
  166. <label>부서</label>
  167. <value>2</value>
  168. </item>
  169. </choices>
  170. <script type="javascript" ev:event="xforms-value-changed">
  171. <![CDATA[
  172. //******대상종류에 따라 팝업창이 뜨게한다.
  173. //대상종류를 받아온다.
  174. var trgtcmdcd = model.getValue("/root/main/listinfo/listinfo/trgtcmd");
  175. if(trgtcmdcd== 0){
  176. //대상종류가 전체인경우 팝업창이 없이 값을 준다.
  177. model.setValue("/root/main/listinfo/listinfo/trgtnm",'-');
  178. model.setValue("/root/main/listinfo/listinfo/trgtint",'00000000');
  179. }else if((trgtcmdcd == 1) ||(trgtcmdcd == 2)){
  180. //대상종류가 개인이거나 부서인경우 조회하러 간다.
  181. model.resetInstanceNode("/root/main/listinfo/listinfo/trgtnm");
  182. //현재 신규입력인 경우 상태값을 받아옴
  183. var status = model.getValue("/root/main/listinfo/listinfo/status");
  184. if(status == 'i'){
  185. //신규입력인 경우 부모창에서 팝업창으로 가겨가는 인스턴스의 값을 가지고 가면 안되므로 인스턴스를 값을 제거한다.
  186. var count = model.getValue("/root/main/delivetrgt/delivetrgt/trgtcount");
  187. for(var i = 1 ; i <= count ; i++){
  188. //신규로 입력시 자식창으로 넘어갈 data를 초기화
  189. model.removenode("/root/main/delivetrgt/delivetrgt[" + i + "]/trgtint");
  190. model.removenode("/root/main/delivetrgt/delivetrgt[" + i + "]/trgtcount");
  191. model.removenode("/root/main/delivetrgt/delivetrgt[" + i + "]/genrdd");
  192. model.removenode("/root/main/delivetrgt/delivetrgt[" + i + "]/genrno");
  193. model.removenode("/root/main/delivetrgt/delivetrgt[" + i + "]/trgt");
  194. model.removenode("/root/main/delivetrgt/delivetrgt[" + i + "]/trgtnm");
  195. }
  196. }
  197. model.refresh();
  198. btn_open.dispatch("DOMActivate");
  199. }
  200. model.refresh();
  201. ]]>
  202. </script>
  203. </select1>
  204. <caption id="caption5" class="cell_1" style="left:0px; top:115px; width:115px; height:23px; text-align:center; vertical-align:middle; ">첨부</caption>
  205. <button id="btn_open" class="icon_search" style="left:570px; top:90px; width:16px; height:16px; ">
  206. <caption/>
  207. <script type="javascript" ev:event="DOMActivate">
  208. <![CDATA[
  209. model.removeNodeset("/root/properties/parameters");
  210. //팝업창을 띄워 선택한 id,명을 저장하기 위한 변수를 선언한다.
  211. var sdeptnm ='';
  212. var susernm = '';
  213. var suserid = '';
  214. var sdeptcd = '';
  215. //대상의 종류를 받아온다.
  216. var gettrgtcmd = model.getValue("/root/main/listinfo/listinfo/trgtcmd");
  217. //현재 대상이 몇개인지 확인
  218. var getrows = model.getValue("/root/main/trgtinfo/count");
  219. if(gettrgtcmd == 0){
  220. //전체의 경우 전체의 기본값을 보낸다.
  221. model.setValue("/root/main/listinfo/listinfo/trgtint", '00000000');
  222. model.setValue("/root/main/listinfo/listinfo/trgtnm",'-');
  223. }else if(gettrgtcmd == 1){
  224. //부모창에서 자식창으로 전달할 data를 보냄
  225. var cmd = model.getValue("/root/main/trgtinfo/cmd");
  226. if(gettrgtcmd == cmd){
  227. for(var i = 1; i <= getrows; i++){
  228. setParameter("count", model.getValue("/root/main/trgtinfo/count"));
  229. if( i == 1 ){
  230. setParameter("cd", model.getValue("/root/main/trgtinfo/trgtlist[" + i + "]/cd"));
  231. setParameter("nm", model.getValue("/root/main/trgtinfo/trgtlist[" + i + "]/nm"));
  232. }else{
  233. addParameter("cd", model.getValue("/root/main/trgtinfo/trgtlist[" + i + "]/cd"));
  234. addParameter("nm", model.getValue("/root/main/trgtinfo/trgtlist[" + i + "]/nm"));
  235. }
  236. }
  237. }
  238. //model.removeNodeset("/root/main/trgtinfo");
  239. modal("SPMMB08200", "1","150", "150", "SPMMB08200", "", "");
  240. //팝업창에서 확인버튼을 부르면 실행
  241. var useyn = model.getValue("/root/properties/parameters/useyn/useynvalue");
  242. if(useyn == 'Y'){
  243. model.copyNode("/root/main/trgtinfo","");
  244. //팝업창에서 선택한 사용자의 개수를 받아온다.
  245. var getrows = model.getValue("/root/properties/parameters/count/countvalue");
  246. model.makeNode("/root/main/trgtinfo/count");
  247. model.makeNode("/root/main/trgtinfo/cmd");
  248. model.setValue("/root/main/trgtinfo/count" , getrows);
  249. model.setValue("/root/main/trgtinfo/cmd" , gettrgtcmd);
  250. //선택한 사용자 개수만큰 포문을 돌려 사용자id, 사용자명을 임의의 변수에 저장한다.
  251. for(var i = 1 ; i <= getrows ; i++){
  252. suserid = suserid + getParameter("cd" , i);
  253. susernm = susernm + getParameter("nm" , i);
  254. //저장하면서 콤마로 구분한다.
  255. if(i != getrows){
  256. susernm = susernm + ", ";
  257. }
  258. model.makeNode("/root/main/trgtinfo/trgtlist[" + i + "]/cd");
  259. model.makeNode("/root/main/trgtinfo/trgtlist[" + i + "]/nm");
  260. model.setValue("/root/main/trgtinfo/trgtlist[" + i + "]/cd" , getParameter("cd" , i));
  261. model.setValue("/root/main/trgtinfo/trgtlist[" + i + "]/nm" , getParameter("nm" , i));
  262. }
  263. //임의의 변수에 저한해둔 값을 인스턴스에 넣는다.
  264. model.setValue("/root/main/listinfo/listinfo/trgtnm", susernm);
  265. model.setValue("/root/main/listinfo/listinfo/trgtint", suserid);
  266. }else{
  267. var count = model.getValue("/root/main/trgtinfo/count");
  268. var cmd = model.getValue("/root/main/trgtinfo/cmd");
  269. for(var i = 1 ; i <= count ; i++){
  270. suserid = suserid + model.getValue("/root/main/trgtinfo/trgtlist[" + i + "]/cd");
  271. susernm = susernm + model.getValue("/root/main/trgtinfo/trgtlist[" + i + "]/nm");
  272. //저장하면서 콤마로 구분한다.
  273. if(i != count){
  274. susernm = susernm + ", ";
  275. }
  276. }
  277. //임의의 변수에 저한해둔 값을 인스턴스에 넣는다.
  278. model.setValue("/root/main/listinfo/listinfo/trgtnm", susernm);
  279. model.setValue("/root/main/listinfo/listinfo/trgtint", suserid);
  280. model.setValue("/root/main/listinfo/listinfo/trgtcmd",cmd);
  281. }
  282. }else if(gettrgtcmd == 2){
  283. var cmd = model.getValue("/root/main/trgtinfo/cmd");
  284. if(gettrgtcmd == cmd){
  285. //부모창에서 자식창으로 전달할 data를 보냄
  286. for(var i = 1; i <= getrows; i++){
  287. setParameter("count", model.getValue("/root/main/trgtinfo/count"));
  288. if( i == 1 ){
  289. setParameter("cd", model.getValue("/root/main/trgtinfo/trgtlist[" + i + "]/cd"));
  290. setParameter("nm", model.getValue("/root/main/trgtinfo/trgtlist[" + i + "]/nm"));
  291. }else{
  292. addParameter("cd", model.getValue("/root/main/trgtinfo/trgtlist[" + i + "]/cd"));
  293. addParameter("nm", model.getValue("/root/main/trgtinfo/trgtlist[" + i + "]/nm"));
  294. }
  295. }
  296. }
  297. //model.removeNodeset("/root/main/trgtinfo");
  298. modal("SPMMB08100", "1","150", "150", "SPMMB08100", "", "");
  299. //팝업창에서 확인버튼을 부르면 실행
  300. var useyn = model.getValue("/root/properties/parameters/useyn/useynvalue");
  301. if(useyn == 'Y'){
  302. model.removeNodeset("/root/main/trgtinfo");
  303. //팝업창에서 선택한 사용자의 개수를 받아온다.
  304. var getrows = model.getValue("/root/properties/parameters/count/countvalue");
  305. model.makeNode("/root/main/trgtinfo/count");
  306. model.makeNode("/root/main/trgtinfo/cmd");
  307. model.setValue("/root/main/trgtinfo/count" , getrows);
  308. model.setValue("/root/main/trgtinfo/cmd" , gettrgtcmd);
  309. //선택한 사용자 개수만큰 포문을 돌려 부서id, 부서명을 임의의 변수에 저장한다.
  310. for(var i = 1 ; i <= getrows ; i++){
  311. sdeptcd = sdeptcd + getParameter("cd" , i);
  312. sdeptnm = sdeptnm + getParameter("nm" , i);
  313. //저장하면서 콤마로 구분한다.
  314. if(i != getrows){
  315. sdeptnm = sdeptnm + ", ";
  316. }
  317. model.makeNode("/root/main/trgtinfo/trgtlist[" + i + "]/cd");
  318. model.makeNode("/root/main/trgtinfo/trgtlist[" + i + "]/nm");
  319. model.setValue("/root/main/trgtinfo/trgtlist[" + i + "]/cd" , getParameter("cd" , i));
  320. model.setValue("/root/main/trgtinfo/trgtlist[" + i + "]/nm" , getParameter("nm" , i));
  321. }
  322. //임의의 변수에 저한해둔 값을 인스턴스에 넣는다.
  323. model.setValue("/root/main/listinfo/listinfo/trgtnm", sdeptnm);
  324. model.setValue("/root/main/listinfo/listinfo/trgtint", sdeptcd);
  325. } else{
  326. var count = model.getValue("/root/main/trgtinfo/count");
  327. var cmd = model.getValue("/root/main/trgtinfo/cmd");
  328. for(var i = 1 ; i <= count ; i++){
  329. sdeptcd = sdeptcd + model.getValue("/root/main/trgtinfo/trgtlist[" + i + "]/cd");
  330. sdeptnm = sdeptnm + model.getValue("/root/main/trgtinfo/trgtlist[" + i + "]/nm");
  331. //저장하면서 콤마로 구분한다.
  332. if(i != count){
  333. sdeptnm = sdeptnm + ", ";
  334. }
  335. }
  336. //임의의 변수에 저한해둔 값을 인스턴스에 넣는다.
  337. model.setValue("/root/main/listinfo/listinfo/trgtnm", sdeptnm);
  338. model.setValue("/root/main/listinfo/listinfo/trgtint", sdeptcd);
  339. model.setValue("/root/main/listinfo/listinfo/trgtcmd",cmd);
  340. }
  341. }
  342. model.refresh();
  343. ]]>
  344. </script>
  345. </button>
  346. <input id="ipt_trgtnm" ref="/root/main/listinfo/listinfo/trgtnm" class="input_default" disabled="true" style="left:213px; top:90px; width:350px; height:19px; "/>
  347. <input id="ipt_att" ref="/root/main/listinfo/listinfo/attfilenm" class="input_default" disabled="true" maxlength="100" style="left:118px; top:115px; width:350px; height:19px; "/>
  348. <textarea id="ipt_cnts" ref="/root/main/listinfo/listinfo/delivecnts" class="input_default" maxlength="4000" appearance="textarea" style="left:118px; top:140px; width:470px; height:220px; "/>
  349. <upload id="upload1" nodeset="/root/send/file/filename" ext="zip" filecount="5" filesize="1048576" validate="true" style="left:478px; top:115px; width:15px; height:20px; "/>
  350. <button id="button2" class="btn2_letter2" style="left:502px; top:115px; width:42px; height:19px; ">
  351. <caption>첨부</caption>
  352. <script type="javascript" ev:event="DOMActivate">
  353. <![CDATA[
  354. //******파일을 첨부하기 위해 파일열기가 open 되게 한다.
  355. //파일의 크기를 측정한다.
  356. var maxsize = upload1.attribute("filesize");
  357. var name = model.getValue("/root/main/listinfo/listinfo/attfilenm");
  358. if((name != '')){
  359. var fileupdata = messageBox(name + " 파일 수정을" , "S001");
  360. if(fileupdata == '6'){
  361. //파일 삭제
  362. //input박스에 나타난 명을 제거
  363. ipt_att.value = "";
  364. //파일 저장
  365. //파일을 받아오기 위해 파일열기 팝업창을 띄운다.
  366. var fileopen = window.fileDialog("open","|","false");
  367. //파일 경로가 아닌 이름만 input박스에 넣기 위한 처리
  368. model.setValue("/root/main/listinfo/listinfo/attfilenm", fileopen);
  369. var name = model.getValue("/root/main/listinfo/listinfo/attfilenm");
  370. //lastIndexOf함수는 \\이것을 뒤어세 검색하여 나오면 앞에 것은 지운다.
  371. var filename = name.lastIndexOf("\\");
  372. //open 파일명를 input박스에 넣는다.
  373. ipt_att.value = fileopen.substring(filename + 1);
  374. //선택한 파일이 저장버튼을 눌렀을때 저장이 되게 하기 위해 파일 저장 인스턴스에 파일주소를 저장해 둔다.
  375. model.setValue("/root/send/file/filename", name);
  376. model.refresh();
  377. //파일 크기가 너무 큰경우 메세지를 띄운다.
  378. if (!checkFileSize(upload1)){
  379. ipt_att.value = "";
  380. messageBox("파일 크기가 최대치("+maxsize+"Byte)를", "E003");
  381. }
  382. model.setValue("/root/main/listinfo/listinfo/fileyn", 'Y');
  383. }else if(fileupdata == '7'){
  384. messageBox(name + " 파일 수정을 하지", "E007");
  385. model.setValue("/root/main/listinfo/listinfo/fileyn", 'N');
  386. }else{
  387. }
  388. }else{
  389. //파일을 받아오기 위해 파일열기 팝업창을 띄운다.
  390. var fileopen = window.fileDialog("open","|","false");
  391. //파일 경로가 아닌 이름만 input박스에 넣기 위한 처리
  392. model.setValue("/root/main/listinfo/listinfo/attfilenm", fileopen);
  393. var name = model.getValue("/root/main/listinfo/listinfo/attfilenm");
  394. //lastIndexOf함수는 \\이것을 뒤어세 검색하여 나오면 앞에 것은 지운다.
  395. var filename = name.lastIndexOf("\\");
  396. //open 파일명를 input박스에 넣는다.
  397. ipt_att.value = fileopen.substring(filename + 1);
  398. //선택한 파일이 저장버튼을 눌렀을때 저장이 되게 하기 위해 파일 저장 인스턴스에 파일주소를 저장해 둔다.
  399. model.setValue("/root/send/file/filename", name);
  400. model.refresh();
  401. //파일 크기가 너무 큰경우 메세지를 띄운다.
  402. if (!checkFileSize(upload1)){
  403. ipt_att.value = "";
  404. messageBox("파일 크기가 최대치("+maxsize+"Byte)를", "E003");
  405. }
  406. model.setValue("/root/main/listinfo/listinfo/fileyn", 'Y');
  407. }
  408. ]]>
  409. </script>
  410. </button>
  411. <button id="button3" class="btn2_letter2" style="left:547px; top:115px; width:42px; height:19px; ">
  412. <caption>삭제</caption>
  413. <script type="javascript" ev:event="DOMActivate">
  414. <![CDATA[
  415. //등록된 파일을 삭제하기 위해 상태값을 삭제로 만든다.
  416. model.setValue("/root/main/listinfo/listinfo/status",'d');
  417. var name = model.getValue("/root/main/listinfo/listinfo/attfilenm");
  418. if((name != '')){
  419. var fileupdata = messageBox(name + " 파일 삭제를" , "S001");
  420. if(fileupdata == '6'){
  421. //파일 삭제
  422. //input박스에 나타난 명을 제거
  423. ipt_att.value = "";
  424. }
  425. }
  426. //기존 상태값으로 변경한다.
  427. model.setValue("/root/main/listinfo/listinfo/status",'u');
  428. model.refresh();
  429. ]]>
  430. </script>
  431. </button>
  432. <caption id="caption7" class="tit_2" style="left:2px; top:20px; width:134px; height:13px; ">공지사항등록</caption>
  433. <button id="button4" class="btn4_letter2" style="left:475px; top:10px; width:56px; height:22px; ">
  434. <caption>저장</caption>
  435. <script type="javascript" ev:event="DOMActivate">
  436. <![CDATA[
  437. //신규로 상태값 변경
  438. model.setValue("/root/main/listinfo/listinfo/status",'i');
  439. model.copyNode("/root/send/savedata","/root/main/listinfo/listinfo");
  440. submit("TXMMO04901");
  441. //키값을 부여 받은것을 다른 대상과 첨부파일 저장시에도 같은 키값으로 저장되도록 값을 보낸다.
  442. //발생번호, 발생날짜를 대상,첨부파일 저장시에도 키값을 가져가도록 키값을 넘겨줌
  443. var getDD = model.getValue("/root/main/keyinfo/keylist/genrdd");
  444. var getNO = model.getValue("/root/main/keyinfo/keylist/genrno");
  445. model.setValue("/root/main/listinfo/listinfo/genrdd", getDD);
  446. model.setValue("/root/main/listinfo/listinfo/genrno", getNO);
  447. var gettrgtcmd = model.getValue("/root/main/listinfo/listinfo/trgtcmd");
  448. if(gettrgtcmd == 0){
  449. //전체인 경우 기본 전체값을 가지고 저장하러 간다.
  450. model.setValue("/root/main/listinfo/listinfo/trgtint",'00000000');
  451. model.copyNode("/root/send/savedata","/root/main/listinfo/listinfo");
  452. submit("TXMMO04902");
  453. }else{
  454. var gettrgtrow = model.getValue("/root/properties/parameters/count/countvalue");
  455. for(var i = 1 ; i <= gettrgtrow ; i++){
  456. var getid = model.getValue("/root/properties/parameters/cd/cdvalue[" + i + "]");
  457. model.setValue("/root/main/listinfo/listinfo/trgtint", getid);
  458. model.copyNode("/root/send/savedata","/root/main/listinfo/listinfo");
  459. submit("TXMMO04902");
  460. }
  461. }
  462. //model.copyNode("/root/main/delivetrgt","");
  463. var fileyn = model.getValue("/root/main/listinfo/listinfo/fileyn");
  464. //신규 등록이거나 파일을 삭제하였고 첨부파일 명이 있는경우
  465. if((fileyn == 'Y')){
  466. //**********첨부파일을 BLOB 형태로 DB에 올림
  467. //선택한 파일의 첨부파일을 선택하기 위해 키를 가지고 간다.
  468. var getno = model.getValue("/root/main/listinfo/listinfo/genrno");
  469. var getdd = model.getValue("/root/main/listinfo/listinfo/genrdd");
  470. model.setValue("/root/send/file/genrno", getno);
  471. model.setValue("/root/send/file/genrdd", getdd);
  472. model.setValue("/root/send/file/orddrid",model.getValue("/root/main/cond/orddrid"));
  473. model.setValue("/root/send/file/orddeptcd",model.getValue("/root/main/cond/orddeptcd"));
  474. // 파일을 DB에 올린다.
  475. submit("TXMMO04903");
  476. }
  477. //저장하지 않고 닫았다는 상태값을 넘겨줌
  478. parent.window.model.makeValue("/root/hidden/noticeinfo/useyn","Y");
  479. window.close();
  480. ]]>
  481. </script>
  482. </button>
  483. <button id="button1" class="btn4_letter2" style="left:535px; top:10px; width:56px; height:22px; ">
  484. <caption>닫기</caption>
  485. <script type="javascript" ev:event="DOMActivate">
  486. <![CDATA[
  487. //저장하지 않고 닫았다는 상태값을 넘겨줌
  488. parent.window.model.makeValue("/root/hidden/noticeinfo/useyn","N");
  489. window.close();
  490. ]]>
  491. </script>
  492. </button>
  493. </xhtml:body>
  494. </xhtml:html>