SMZSD00700_센터구성관리.xrw 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523
  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>센터구성관리</xhtml:title>
  6. <model id="model1">
  7. <instance id="instance1">
  8. <root xmlns="">
  9. <main>
  10. <list>
  11. <cntrdeptlist>
  12. </cntrdeptlist>
  13. </list>
  14. <deptlist>
  15. <cntrsubdeptlist>
  16. </cntrsubdeptlist>
  17. <cntrhistorylist/>
  18. </deptlist>
  19. <item>
  20. <deptcd/>
  21. <depthngnm/>
  22. </item>
  23. <search>
  24. <deptcd/>
  25. <depthngnm/>
  26. <detail/>
  27. </search>
  28. </main>
  29. <init>
  30. <flag>
  31. <label>센터부서명</label>
  32. <value>cntrdeptnm</value>
  33. </flag>
  34. <flag>
  35. <label>센터부서코드</label>
  36. <value>cntrdeptcd</value>
  37. </flag>
  38. <kind>
  39. <label>일반부서</label>
  40. <label>D</label>
  41. </kind>
  42. <kind>
  43. <label>센타</label>
  44. <value>C</value>
  45. </kind>
  46. </init>
  47. <send>
  48. <searchitemvalue/>
  49. <cntrsubdeptlist/>
  50. <optcntrdeptcd/>
  51. <flagvalue/>
  52. <cntrhistorylist/>
  53. </send>
  54. <temp>
  55. <optcntrdeptcd/>
  56. <deptlist>
  57. <cntrsubdeptlist/>
  58. </deptlist>
  59. <cnt/>
  60. </temp>
  61. <agmenu>
  62. <label>센터구성부서삭제</label>
  63. <func>delcntrsubdept</func>
  64. </agmenu>
  65. </root>
  66. </instance>
  67. <script type="javascript" ev:event="xforms-ready">
  68. <![CDATA[
  69. finitalize();
  70. ]]>
  71. </script>
  72. <submission id="TRZSD00200" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/list"/>
  73. <submission id="TRZSD00201" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/deptlist"/>
  74. <submission id="TRZBC00101" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/deptlist"/>
  75. <submission id="TRZSD00202" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/main/historylist"/>
  76. <submission id="TXZSD00200" mediatype="application/x-www-form-urlencoded" method="post" ref="/root/send" resultref="/root/temp"/>
  77. </model>
  78. <script type="javascript" src="../../../com/commonweb/js/common.js"/>
  79. <script type="javascript" src="../../../com/commonweb/js/tfHelper.js"/>
  80. <script type="javascript" src="../../../com/departmentcodeweb/js/ZSD001.js"/>
  81. <script type="javascript" src="../../../com/commonweb/js/dateHelper.js"/>
  82. <script type="javascript">
  83. <![CDATA[
  84. /*
  85. 초기화 작업을 합니다.
  86. */
  87. function finitalize(){
  88. model.removeNodeset("/root/main/cntrlist/cntrdeptlist");
  89. model.removeNodeset("/root/main/historylist/cntrhistorylist");
  90. model.removeNodeset("/root/main/deptlist/cntrsubdeptlist");
  91. combo1.select(0);
  92. model.refresh();
  93. }
  94. /*
  95. 버튼 컨트롤들을 클릭했을때 공통으로 타는 함수입니다.
  96. control : "search" 는 조회 버튼 클릭
  97. "init"은 신규 버튼 클릭
  98. "save"는 저장 버튼 클릭
  99. "update"는 구성삭제 버튼 클릭 -- 이력을 남기면서 종료일자를 변경하여 구성만 삭제한다.
  100. "delete"는 삭제버튼 클릭 -- 이력을 남기지 않고 삭제한다.
  101. grid : 그리드 컨트롤을 넘겨줍니다.
  102. param : 기타 param을 넘겨줍니다.
  103. */
  104. function fClicked(control, grid, param){
  105. if("search" == control){
  106. fSearchClick(grid, param);
  107. } else if("init" == control){
  108. model.reset();
  109. } else if("save" == control){
  110. fSaveClick(grid, param);
  111. } else if("update" == control){
  112. fUpdateClick(grid, param);
  113. } else if("delete" == control){
  114. fDeleteClick(grid, param);
  115. } else {
  116. messageBox("처리를 수행","E002");//권한이 없습니다.
  117. }
  118. }
  119. /*
  120. 조회버튼 클릭 타는 함수입니다.
  121. grid.explorerbar = "sortshow" sort설정합니다.
  122. ipt_search_item은 검색조건의 센터부서명 or 센터부서코드입니다.
  123. submit을 날립니다. .
  124. */
  125. function fSearchClick(grid, param){
  126. //grid.explorerbar = "sortshow";
  127. model.removeNodeset("/root/main/list/cntrdeptlist");
  128. grid.rebuild();
  129. model.resetInstanceNode("/root/send");
  130. model.setValue("/root/send/searchitemvalue", ipt_search_item.currentText);// 입력중 텍스트 얻기
  131. model.setValue("/root/send/flagvalue", combo1.value);
  132. submit("TRZSD00200");
  133. }
  134. /*
  135. 저장 버튼 클릭시 사는 함수입니다.
  136. 이미 저장된 하위부서가 있는지 먼저 체크를 하고 submit을 날립니다.
  137. */
  138. function fSaveClick(grid, param){
  139. var iRow = grd_cntrsubdeptlist.row;
  140. var iDate = model.getValue("/root/main/deptlist/cntrsubdeptlist["+iRow+"]/cntrvalifromdd");
  141. var toDay = getCurrentDate();
  142. if(iDate > toDay){
  143. alert("유효시작일자는 현재보다 클수 없습니다.");
  144. }else{
  145. if("subdept" == param){
  146. alert("센터 하위부서항목을 구성 저장합니다.");
  147. model.setValue("/root/send/optcntrdeptcd", opt_cntrdeptcd.value);
  148. model.setValue("/root/send/cntrsubdeptlist", grid.getUpdateData());
  149. if(submit("TXZSD00200")) {
  150. grid.clearStatus(); //submit()성공하면 그리드의 i,u,d 상태 제거
  151. //changeNodeSet();
  152. }
  153. }
  154. }
  155. }
  156. function fUpdateClick(grid, param){
  157. if(param == "subdept") {
  158. grid.addStatus(grid.row, "update");
  159. var iRow = grd_cntrsubdeptlist.row;
  160. var iLevel = model.getValue("/root/main/deptlist/cntrsubdeptlist["+iRow+"]/level");
  161. var iCntrDeptCD = model.getValue("/root/main/list/cntrdeptlist/cntrdeptcd");
  162. if( iRow < 0 ){
  163. alert("해당 부서를 선택하세요");
  164. }else{
  165. if(iLevel != 1 && iLevel != null && iLevel != ""){
  166. var rtn = messageBox("해당센터로 가서 삭제 하십시요!\n다른 센터로 구성된 하위부서는 삭제", "E001");
  167. grid.clearStatus();
  168. }else{
  169. var rtn = messageBox("센터하위부서를 ", "Q001");
  170. if (rtn == 6) {
  171. model.setValue("/root/send/cntrsubdeptlist", grid.getUpdateData());
  172. if( submit("TXZSD00200") ) {
  173. grid.clearStatus(); //submit() 성공하면 그리드의 i,u,d 상태 제거
  174. }
  175. }
  176. }
  177. }
  178. }
  179. }
  180. function fDeleteClick(grid, param){
  181. if(param == "subdept") {
  182. grid.addStatus(grid.row, "delete");
  183. var iRow = grd_cntrsubdeptlist.row;
  184. var iLevel = model.getValue("/root/main/deptlist/cntrsubdeptlist["+iRow+"]/level");
  185. var iCntrDeptCD = model.getValue("/root/main/list/cntrdeptlist/cntrdeptcd");
  186. if( iRow < 1){
  187. alert("해당 부서를 선택하세요");
  188. }else{
  189. if(iLevel != 1 && iLevel != null && iLevel != ""){
  190. var rtn = messageBox("해당센터로 가서 삭제 하십시요!\n다른 센터로 구성된 하위부서는 삭제","E001");
  191. grid.clearStatus();
  192. }else{
  193. var rtn = messageBox("이력을 남기지 않고 삭제됩니다. ", "Q001");
  194. if (rtn == 6) {
  195. model.setValue("/root/send/cntrsubdeptlist", grid.getUpdateData());
  196. if( submit("TXZSD00200") ) {
  197. grid.clearStatus(); //submit() 성공하면 그리드의 i,u,d 상태 제거
  198. var jRow = grid.row;
  199. grid.deleteItem(jRow);
  200. }
  201. }
  202. }
  203. }
  204. }
  205. }
  206. /*
  207. model.getValue(); 를 함수로 만들었습니다.
  208. param1 : node는 grid의 xPath입니다.
  209. param2 : row는 grid에서 선택한 row값입니다.
  210. param3 : element는 getvalue할 해당 element 명입니다.
  211. 해당 getvalue값을 return 해줍니다.
  212. return 하지 않으면 해당값을 가져올 수 없습니다.
  213. */
  214. function fGetValue(node, row, element) {
  215. var rtnValue = model.getValue(node + "[" + row + "]/" + element); //해당 ref 노드값 얻어오기.
  216. return rtnValue;
  217. }
  218. /*
  219. 조회된 노드를 클릭후 그에 해당하는 로우에 대해 추가 입력
  220. */
  221. function fSetRowValue(node, destinationelement, sourceelement, row) {
  222. model.makeValue(node + "[" + row + "]/" + destinationelement, sourceelement);
  223. }
  224. ]]>
  225. </script>
  226. </xhtml:head>
  227. <xhtml:body guideline="1,7;1,1201;2,750;2,80;2,750;2,750;">
  228. <script type="javascript" ev:event="onmenu">
  229. <![CDATA[
  230. if(event.description == "delcntrsubdept")
  231. {
  232. btn_delete_subdeptitem.dispatch("DOMActivate");
  233. }
  234. ]]>
  235. </script>
  236. <group id="group1" style="left:0px; top:0px; width:1201px; height:13px; ">
  237. <caption id="caption6" class="tit_1" style="left:0px; top:0px; width:189px; height:14px; ">센터구성관리</caption>
  238. </group>
  239. <group id="grp_sea" style="left:5px; top:20px; width:357px; height:60px; vertical-align:top; ">
  240. <shape id="roundrect1" appearance="roundrect" ellipsewidth="10" ellipseheight="10" style="left:0px; top:0px; width:357px; height:60px; background-color:#fffbf2; border-color:#ffd799; "/>
  241. <caption id="caption1" class="search_name" style="left:15px; top:9px; width:117px; height:17px; ">센터부서조회</caption>
  242. <line id="line1" style="x1:281px; y1:7px; x2:281px; y2:51px; border-color:#ffe4bb; border-left-style:solid; "/>
  243. <button id="btn_search" class="btn1_letter2" style="left:289px; top:19px; width:56px; height:22px; ">
  244. <caption>조회</caption>
  245. <script type="javascript" ev:event="DOMActivate">
  246. <![CDATA[
  247. fClicked("search", grd_cntrdeptlist);
  248. ]]>
  249. </script>
  250. </button>
  251. <input id="ipt_search_item" ref="/root/send/searchitemvalue" class="input_s_essential" imemode="hangul" style="left:125px; top:35px; width:134px; height:19px; ">
  252. <script type="javascript" ev:event="onkeypress">
  253. <![CDATA[
  254. inputEnterKey("btn_search", "DOMActivate");
  255. ]]>
  256. </script>
  257. </input>
  258. <select1 id="combo1" ref="/root/init/flag" class="combo_search" appearance="minimal" style="left:126px; top:8px; width:134px; height:19px; ">
  259. <choices>
  260. <itemset nodeset="/root/init/flag">
  261. <label ref="label"/>
  262. <value ref="value"/>
  263. </itemset>
  264. </choices>
  265. </select1>
  266. </group>
  267. <caption id="caption9" class="tit_2" style="left:10px; top:89px; width:111px; height:13px; vertical-align:middle; ">센터부서</caption>
  268. <line id="line12" class="line_1" style="x1:5px; y1:104px; x2:362px; y2:104px; "/>
  269. <datagrid id="grd_cntrdeptlist" nodeset="/root/main/list/cntrdeptlist" class="datagrid2" allowuserresize="true" caption="센터 부서명^센터 부서코드^센터 부서 영문명" colsep="^" colwidth="122, 110, 112" extendlastcol="scroll" frozencols="1" mergecellsfixedrows="bycolrec" rowheader="update" style="left:5px; top:110px; width:357px; height:640px; ">
  270. <col ref="depthngnm"/>
  271. <col ref="deptcd"/>
  272. <col ref="deptengnm"/>
  273. <script type="javascript" ev:event="ondblclick">
  274. <![CDATA[
  275. btn_search_cntrsubdept.dispatch("DOMActivate");
  276. ]]>
  277. </script>
  278. </datagrid>
  279. <button id="btn_search_cntrsubdept" class="btn2_letter2" visibility="hidden" style="left:305px; top:82px; width:42px; height:19px; ">
  280. <caption>조회</caption>
  281. <script type="javascript" ev:event="DOMActivate">
  282. <![CDATA[
  283. /* datagrid
  284. explorerbar : 사용자가 그리드 열의 헤더(캡션) 을 사용하여 할 수 있는 동작을 설정하는 속성이다.
  285. sortshow : sort기능을 하며 헤더에 작은 화살표시로 정렬 방식 을 표현 (오름차순, 내림차순)
  286. */
  287. //grd_cntrsubdeptlist.explorerbar = "sortshow";
  288. var iRow = grd_cntrdeptlist.row;
  289. var iNode = "/root/main/list/cntrdeptlist";
  290. // 단 선택 센터 부서관리 output 세팅
  291. opt_cntrdeptnm.value = fGetValue(iNode, iRow, "depthngnm"); //인스턴스에 반영된 값 반환
  292. opt_cntrdeptcd.value = fGetValue(iNode, iRow, "deptcd");
  293. var iOptcntrdeptcd = opt_cntrdeptcd.value;
  294. model.setValue("/root/main/item/depthngnm", fGetValue(iNode, iRow, "depthngnm")); //지정된 노드에 값 세팅.
  295. model.setValue("/root/main/item/deptcd", fGetValue(iNode, iRow, "deptcd"));
  296. var iOptcntrdeptcd = model.getValue("/root/main/item/deptcd");
  297. model.setValue("/root/send/optcntrdeptcd", iOptcntrdeptcd);
  298. submit("TRZSD00201");
  299. grd_cntrsubdeptlist.rebuild(); //그리드를 초기화하여 현재의 인스턴스 구조로 재구성한다.
  300. setTree(grd_cntrsubdeptlist, 1, 2, false);
  301. //센터구성색깔입히기
  302. var cls_fixed_rows = grd_cntrsubdeptlist.fixedRows;
  303. var cls_rows = grd_cntrsubdeptlist.rows;
  304. var cls_isexpired_index = grd_cntrsubdeptlist.colRef("isexpired");
  305. var cls_color_index = grd_cntrsubdeptlist.colRef("color");
  306. for(var i = cls_fixed_rows; i<cls_rows; i++){
  307. var isexpired = grd_cntrsubdeptlist.valueMatrix(i, cls_isexpired_index);//현재 사용중인것과 종료된것을 구분한다.
  308. if(isexpired=='N'){//기관에서 현재사용중인부서
  309. grd_cntrsubdeptlist.rowstyle( i , "data" , "background-color" ) = "#ffffff";//현재 기관에서 사용중인 부서
  310. grd_cntrsubdeptlist.valueMatrix(i, cls_color_index) = "#ffffff";
  311. }else{
  312. grd_cntrsubdeptlist.rowstyle( i , "data" , "background-color" ) = "#c8e67b";//현재 기관에서 종료된 부서
  313. grd_cntrsubdeptlist.valueMatrix(i, grd_cntrsubdeptlist.colRef("color")) = "#c8e67b";
  314. }
  315. }
  316. //센터구성이력색깔입히기
  317. var cls_fixed_rows = grd_cntrhistorylist.fixedRows;
  318. var cls_rows = grd_cntrhistorylist.rows;
  319. var cls_iscurrent_index = grd_cntrhistorylist.colRef("iscurrent");
  320. var cls_isexpired_index = grd_cntrhistorylist.colRef("isexpired");
  321. var cls_color_index = grd_cntrhistorylist.colRef("color");
  322. for(var i = cls_fixed_rows; i<cls_rows; i++){
  323. var iscurrent = grd_cntrhistorylist.valueMatrix(i, cls_iscurrent_index);//현재 사용중인것과 종료된것을 구분한다.
  324. var isexpired = grd_cntrhistorylist.valueMatrix(i, cls_isexpired_index);//현재 사용중인것과 종료된것을 구분한다.
  325. if(iscurrent=='Y' && isexpired=='N'){//센터구성유효하고, 기관에서 현재사용중인부서
  326. grd_cntrhistorylist.rowstyle( i , "data" , "background-color" ) = "#ffffff";//현제 기관에서 사용중인 부서
  327. grd_cntrhistorylist.valueMatrix(i, cls_color_index) = "#ffffff";
  328. }else if(isexpired=='Y' && isexpired=='Y' ){//센터구성유효하고, 기관에서 현재종료된부서
  329. grd_cntrhistorylist.rowstyle( i , "data" , "background-color" ) = "#c8e67b";//현재 기관에서 종료된 부서
  330. grd_cntrhistorylist.valueMatrix(i, grd_cntrhistorylist.colRef("color")) = "#c8e67b";
  331. }else if (isexpired=='N' && isexpired=='N' ){//센터구성종료,기관에서 현재사용중인부서
  332. grd_cntrhistorylist.rowstyle( i , "data" , "background-color" ) = "#fec34d";//현제 기관에서 사용중인 부서
  333. grd_cntrhistorylist.valueMatrix(i, grd_cntrhistorylist.colRef("color")) = "#fec34d";
  334. }else if (isexpired=='N' && isexpired=='Y' ){//센터구성종료, 기관에서 현재 종료된 부서
  335. grd_cntrhistorylist.rowstyle( i , "data" , "background-color" ) = "#fec34d";//현제 기관에서 사용중인 부서
  336. grd_cntrhistorylist.valueMatrix(i, grd_cntrhistorylist.colRef("color")) = "#fec34d";
  337. }
  338. }
  339. ]]>
  340. </script>
  341. </button>
  342. <group id="group4" style="left:380px; top:35px; width:820px; height:45px; vertical-align:top; ">
  343. <caption id="caption11" class="cell_1" style="left:0px; top:21px; width:135px; height:23px; ">센터부서(명/코드)</caption>
  344. <output id="opt_cntrdeptnm" ref="/root/main/item/depthngnm" class="output_fix" style="left:138px; top:21px; width:135px; height:19px; "/>
  345. <output id="opt_cntrdeptcd" ref="/root/main/item/deptcd" class="output_fix" style="left:276px; top:21px; width:135px; height:19px; "/>
  346. <caption id="caption12" class="tit_2" style="left:0px; top:0px; width:169px; height:14px; ">선택 센터부서</caption>
  347. <line id="line7" class="line_1" style="x1:0px; y1:15px; x2:820px; y2:15px; "/>
  348. <line id="line8" class="line_3" style="x1:0px; y1:42px; x2:820px; y2:42px; "/>
  349. </group>
  350. <button id="btn_delete_subdeptitem" class="btn2_letter4" style="left:1036px; top:83px; width:64px; height:19px; ">
  351. <caption>이력삭제</caption>
  352. <script type="javascript" ev:event="DOMActivate">
  353. <![CDATA[
  354. fClicked("delete", grd_cntrsubdeptlist, "subdept");
  355. ]]>
  356. </script>
  357. </button>
  358. <button id="btn_add_subdept" class="btn2_letter4" style="left:904px; top:83px; width:64px; height:19px; ">
  359. <caption>부서추가</caption>
  360. <script type="javascript" ev:event="DOMActivate">
  361. <![CDATA[
  362. if(opt_cntrdeptcd.value == ""){
  363. model.alert("센터부서를 선택하십시오!");
  364. } else {
  365. var search_condition = "deptnm";
  366. //var search_term = model.getValue("/root/main/search/deptcd");
  367. var search_term = "";
  368. var receive_deptcd_path = "/root/main/search/deptcd";
  369. var receive_deptnm_path = "/root/main/search/depthngnm";
  370. var receive_detail_path = "/root/main/search/detail";
  371. var standard_yn = null;
  372. var ord_deptflag = null;
  373. var toDay = getCurrentDate();
  374. zbcfOpenInstDeptCodeList(
  375. search_condition,
  376. search_term,
  377. receive_deptcd_path,
  378. receive_deptnm_path,
  379. standard_yn,
  380. ord_deptflag,
  381. new Array("deptcd", "depthngnm"),
  382. receive_detail_path
  383. );
  384. var iRow = grd_cntrsubdeptlist.row;
  385. var iNode = "/root/main/deptlist/cntrsubdeptlist";
  386. var iSplit_Value=model.getValue("/root/main/search/detail").split("|");
  387. if(model.getValue("/root/main/search/detail") != "") {
  388. grd_cntrsubdeptlist.addItem();
  389. iRow = grd_cntrsubdeptlist.row;
  390. fSetRowValue(iNode, "subdeptcd", model.getValue("/root/main/search/deptcd"), iRow);
  391. fSetRowValue(iNode, "subdepthngnm", model.getValue("/root/main/search/depthngnm"), iRow);
  392. if(iSplit_Value.length > 0 && iSplit_Value[0] != "" && iSplit_Value[0] != undefined){
  393. fSetRowValue(iNode, "subdeptengnm", iSplit_Value[2], iRow);
  394. fSetRowValue(iNode, "subdepthngabbr", iSplit_Value[4], iRow);
  395. fSetRowValue(iNode, "subdeptengabbr", iSplit_Value[5], iRow);
  396. fSetRowValue(iNode, "cntrvalifromdd", toDay, iRow);
  397. model.resetInstanceNode("/root/main/search/detail");
  398. model.resetInstanceNode("/root/main/search/deptcd");
  399. model.resetInstanceNode("/root/main/search/depthngnm");
  400. }
  401. }
  402. }
  403. ]]>
  404. </script>
  405. </button>
  406. <caption id="caption3" class="tit_2" style="left:378px; top:89px; width:131px; height:13px; ">센터부서 구성 항목</caption>
  407. <button id="btn_update_subdeptitem" class="btn2_letter4" style="left:970px; top:83px; width:64px; height:19px; ">
  408. <caption>구성삭제</caption>
  409. <script type="javascript" ev:event="DOMActivate">
  410. <![CDATA[
  411. fClicked("update", grd_cntrsubdeptlist, "subdept");
  412. ]]>
  413. </script>
  414. </button>
  415. <button id="btn_save_subdept" class="btn5_letter2" style="left:1157px; top:83px; width:42px; height:19px; ">
  416. <caption>저장</caption>
  417. <script type="javascript" ev:event="DOMActivate">
  418. <![CDATA[
  419. fClicked("save", grd_cntrsubdeptlist, "subdept");
  420. //btn_save_subdept.dispatch("DOMActivate"); //버튼컨트롤에 강제적으로 이벤트 발생시킴
  421. ]]>
  422. </script>
  423. </button>
  424. <datagrid id="grd_cntrsubdeptlist" nodeset="/root/main/deptlist/cntrsubdeptlist" class="datagrid2" caption="level^하위부서명^하위부서코드^하위부서 영문명^하위부서 한글약어^하위부서 영문약어^유효시작일자^부서종료여부^센터여부" colsep="^" colwidth="33, 180, 110, 120, 150, 110, 110, 100, 100" ellipsis="true" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="update" rowsep="|" style="left:380px; top:150px; width:821px; height:230px; ">
  425. <col ref="level" visibility="hidden"/>
  426. <col ref="subdepthngnm"/>
  427. <col ref="subdeptcd"/>
  428. <col ref="subdeptengnm"/>
  429. <col ref="subdepthngabbr"/>
  430. <col ref="subdeptengabbr"/>
  431. <col ref="cntrvalifromdd" type="inputdate"/>
  432. <col ref="orddeptkind" visibility="hidden"/>
  433. <col ref="isexpired" visibility="hidden"/>
  434. <script type="javascript" ev:event="onmousedown">
  435. <![CDATA[
  436. if(event.button == 3){
  437. if(grd_cntrsubdeptlist.isCell(event.target) && grd_cntrsubdeptlist.mouseRow >= grd_cntrsubdeptlist.fixedrows){
  438. window.setPopupMenu(true, "/root/agmenu", "label", "func", true);
  439. }else{
  440. window.setPopupMenu(false);
  441. }
  442. }
  443. ]]>
  444. </script>
  445. </datagrid>
  446. <datagrid id="grd_cntrhistorylist" nodeset="/root/main/deptlist/cntrhistorylist" class="datagrid2" caption="이력^색상^유효시작일자^유효종료일자^부서코드^부서한글명^부서영문명^최초등록자^최초등록일시^최종등록자^최종등록일시^부서종료여부" colsep="^" colwidth="43, 100, 90, 90, 100, 150, 150, 90, 150, 90, 150, 100" ellipsis="true" extendlastcol="scroll" mergecellsfixedrows="bycolrec" rowheader="seq" rowsep="|" style="left:380px; top:430px; width:821px; height:320px; ">
  447. <col ref="iscurrent" visibility="hidden"/>
  448. <col ref="color" visibility="hidden"/>
  449. <col ref="cntrvalifromdd" format="yyyy-mm-dd"/>
  450. <col ref="cntrvalitodd" format="yyyy-mm-dd"/>
  451. <col ref="cntrsubdeptcd"/>
  452. <col ref="cntrsubdepthngnm"/>
  453. <col ref="cntrsubdeptengnm"/>
  454. <col ref="fstrgstrid"/>
  455. <col ref="fstrgstdt" format="yyyy-mm-dd hh:nn:ss"/>
  456. <col ref="lastupdtrid"/>
  457. <col ref="lastupdtdt" format="yyyy-mm-dd hh:nn:ss"/>
  458. <col ref="isexpired" visibility="hidden"/>
  459. </datagrid>
  460. <caption id="caption22" style="left:996px; top:398px; width:74px; height:14px; ">센터구성종료</caption>
  461. <caption id="caption47" class="cell_2" style="left:899px; top:395px; width:70px; height:20px; ">범 례</caption>
  462. <caption id="caption37" class="color_8" style="left:1147px; top:398px; width:15px; height:15px; background-color:#ffffff; border-style:solid; "/>
  463. <caption id="caption38" style="left:1165px; top:398px; width:32px; height:14px; ">현재</caption>
  464. <shape id="roundrect2" class="roundrect_example" appearance="roundrect" style="left:890px; top:390px; width:311px; height:30px; "/>
  465. <caption id="caption2" class="tit_2" style="left:385px; top:410px; width:131px; height:13px; ">센터구성 이력</caption>
  466. <line id="line2" class="line_1" style="x1:380px; y1:104px; x2:1200px; y2:104px; "/>
  467. <caption id="caption21" class="color_7" style="left:977px; top:398px; width:15px; height:15px; "/>
  468. <button id="button1" class="btn2_letter3" style="left:1102px; top:83px; width:53px; height:19px; ">
  469. <caption>행삭제</caption>
  470. <script type="javascript" ev:event="DOMActivate">
  471. <![CDATA[
  472. grd_cntrsubdeptlist.deleteRow(grd_cntrsubdeptlist.row);
  473. ]]>
  474. </script>
  475. </button>
  476. <caption id="caption20" style="left:1094px; top:398px; width:50px; height:14px; ">부서종료</caption>
  477. <caption id="caption24" class="color_9" style="left:1076px; top:398px; width:15px; height:15px; "/>
  478. <caption id="caption4" style="left:1095px; top:123px; width:50px; height:14px; ">부서종료</caption>
  479. <caption id="caption5" class="color_9" style="left:1077px; top:123px; width:15px; height:15px; "/>
  480. <caption id="caption7" class="cell_2" style="left:995px; top:120px; width:70px; height:20px; ">범 례</caption>
  481. <caption id="caption8" class="color_8" style="left:1150px; top:123px; width:15px; height:15px; background-color:#ffffff; border-style:solid; "/>
  482. <caption id="caption10" style="left:1166px; top:123px; width:32px; height:14px; ">현재</caption>
  483. <shape id="roundrect3" class="roundrect_example" appearance="roundrect" style="left:985px; top:115px; width:216px; height:30px; "/>
  484. </xhtml:body>
  485. </xhtml:html>