SPMMB20100_구수익분류구조조회.xfdl 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPMMB20100" position="absolute 0 0 350 400" titletext="구처방조회" onload="SPMMB20100_onload">
  5. <Layouts>
  6. <Layout>
  7. <Grid position="absolute 0 25 350 395" treeusecheckbox="false" autofit="col" id="treeview1" scrollpixel="all" autosizingtype="col" selecttype="treecell" binddataset="ds_main_indxlist_itemlist_item" cantreestatuschange="treeview1_cantreestatuschange" onkeydown="treeview1_onkeydown" onkeyup="treeview1_onkeyup" onmousewheel="treeview1_onmousewheel" onrbuttondown="treeview1_onrbuttondown" oncelldblclick="treeview1_oncelldblclick">
  8. <Formats>
  9. <Format id="default">
  10. <Columns>
  11. <Column size="343"/>
  12. </Columns>
  13. <Rows>
  14. <Row size="24"/>
  15. </Rows>
  16. <Band id="body">
  17. <Cell displaytype="tree" edittype="tree" style="line:0 none #808080ff ;background:white;background2:white;" text="bind:indxnm" treestartlevel="1" treelevel="bind:depth" autosizerow="limitmin"/>
  18. </Band>
  19. </Format>
  20. </Formats>
  21. </Grid>
  22. <Shape position="absolute 0 20 350 26" linetype="horizontal" id="line1" class="line_10"/>
  23. <Shape position="absolute 0 394 350 400" linetype="horizontal" id="line4" class="line_3"/>
  24. <!--
  25. <Button position="absolute 308 0 350 19" id="brn_srchtree" class="btn2" visible="false" text="신규"/>
  26. <Div position="absolute 10 80 235 160" id="group2" visible="false" class="div_DA">
  27. <Layouts>
  28. <Layout>
  29. <Edit position="absolute 67 5 214 24" id="inpt_srch" class="input_default"/>
  30. <Edit position="absolute 9 52 64 71" id="input3" class="input_default" visible="false"/>
  31. <Button position="absolute 127 53 169 72" id="btn_ok" class="btn2_letter2" text="확인"/>
  32. <Button position="absolute 127 53 169 72" id="btn_modify" class="btn2" text="확인"/>
  33. <Static text="색인명" position="absolute 5 5 65 25" align="align:center middle;" id="cap_menu" class="cell_1"/>
  34. <Button position="absolute 172 53 214 72" id="btn_cancle" class="btn2" text="취소"/>
  35. <Static text="코드분류" position="absolute 5 27 65 47" align="align:center middle;" id="caption1" class="cell_1"/>
  36. <Edit position="absolute 67 28 214 47" id="ipt_ordclass" class="input_default"/>
  37. </Layout>
  38. </Layouts>
  39. </Div>
  40. -->
  41. <Static text="구 수익분류 조회" position="absolute 0 0 127 20" id="caption6" class="tit_1"/>
  42. </Layout>
  43. </Layouts>
  44. <Objects>
  45. <Dataset id="ds_main_indxlist_itemlist_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" canrowposchange="ds_main_indxlist_itemlist_item_canrowposchange">
  46. <ColumnInfo>
  47. <Column id="status" type="STRING" size="256"/>
  48. <Column id="indxno" type="STRING" size="256"/>
  49. <Column id="indxnm" type="STRING" size="256"/>
  50. <Column id="supindxno" type="STRING" size="256"/>
  51. <Column id="indxrefseq" type="STRING" size="256"/>
  52. <Column id="depth" type="STRING" size="256"/>
  53. <Column id="indxhistseq" type="STRING" size="256"/>
  54. <Column id="image" type="STRING" size="256"/>
  55. </ColumnInfo>
  56. </Dataset>
  57. <Dataset id="ds_main_formdata_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  58. <ColumnInfo>
  59. <Column id="status" type="STRING" size="256"/>
  60. <Column id="indxno" type="STRING" size="256"/>
  61. <Column id="indxnm" type="STRING" size="256"/>
  62. <Column id="supindxno" type="STRING" size="256"/>
  63. <Column id="indxrefseq" type="STRING" size="256"/>
  64. <Column id="depth" type="STRING" size="256"/>
  65. <Column id="indxhistseq" type="STRING" size="256"/>
  66. <Column id="image" type="STRING" size="256"/>
  67. <Column id="ordclass" type="STRING" size="256"/>
  68. </ColumnInfo>
  69. <Rows>
  70. <Row>
  71. <Col id="status"/>
  72. <Col id="indxno"/>
  73. <Col id="indxnm"/>
  74. <Col id="supindxno"/>
  75. <Col id="indxrefseq"/>
  76. <Col id="depth"/>
  77. <Col id="indxhistseq"/>
  78. <Col id="image"/>
  79. <Col id="ordclass"/>
  80. </Row>
  81. </Rows>
  82. </Dataset>
  83. <Dataset id="ds_main_popupmenu_tree_supmenu" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  84. <ColumnInfo>
  85. <Column id="name" type="STRING" size="256"/>
  86. <Column id="func" type="STRING" size="256"/>
  87. <Column id="level" type="STRING" size="256"/>
  88. </ColumnInfo>
  89. <Rows>
  90. <Row>
  91. <Col id="name">새폴더</Col>
  92. <Col id="func">fFolderAdd</Col>
  93. <Col id="level">0</Col>
  94. </Row>
  95. <Row>
  96. <Col id="name">-</Col>
  97. <Col id="func"/>
  98. <Col id="level">0</Col>
  99. </Row>
  100. <Row>
  101. <Col id="name">새폴더</Col>
  102. <Col id="func">fFolderAdd</Col>
  103. <Col id="level">0</Col>
  104. </Row>
  105. <Row>
  106. <Col id="name">이름바꾸기</Col>
  107. <Col id="func">fFolderSet</Col>
  108. <Col id="level">0</Col>
  109. </Row>
  110. <Row>
  111. <Col id="name">삭제</Col>
  112. <Col id="func">fFolderDel</Col>
  113. <Col id="level">0</Col>
  114. </Row>
  115. <Row>
  116. <Col id="name">-</Col>
  117. <Col id="func"/>
  118. <Col id="level">0</Col>
  119. </Row>
  120. <Row>
  121. <Col id="name">색인 추가</Col>
  122. <Col id="func">fIndxAdd</Col>
  123. <Col id="level">0</Col>
  124. </Row>
  125. </Rows>
  126. </Dataset>
  127. <Dataset id="ds_main_popupmenu_tree_indxmenu" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  128. <ColumnInfo>
  129. <Column id="name" type="STRING" size="256"/>
  130. <Column id="func" type="STRING" size="256"/>
  131. <Column id="level" type="STRING" size="256"/>
  132. </ColumnInfo>
  133. <Rows>
  134. <Row>
  135. <Col id="name">파일다운로드</Col>
  136. <Col id="func">fFileDown</Col>
  137. <Col id="level">0</Col>
  138. </Row>
  139. <Row>
  140. <Col id="name">-</Col>
  141. <Col id="func"/>
  142. <Col id="level">0</Col>
  143. </Row>
  144. <Row>
  145. <Col id="name">삭제</Col>
  146. <Col id="func">fFolderDel</Col>
  147. <Col id="level">0</Col>
  148. </Row>
  149. </Rows>
  150. </Dataset>
  151. <Dataset id="ds_temp_reqdata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  152. <ColumnInfo>
  153. <Column id="selectIndxCd" type="STRING" size="256"/>
  154. <Column id="selectIndxNm" type="STRING" size="256"/>
  155. </ColumnInfo>
  156. <Rows>
  157. <Row>
  158. <Col id="selectIndxCd"/>
  159. <Col id="selectIndxNm"/>
  160. </Row>
  161. </Rows>
  162. </Dataset>
  163. </Objects>
  164. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  165. * System Name :
  166. * Job Name :
  167. * Creator :
  168. * Make Date : 2015-11-13
  169. * Description :
  170. *---------------------------------------------------------------------------------------
  171. * Modify Date Modifier Modify Description
  172. *---------------------------------------------------------------------------------------
  173. * 2015-11-13 Live Converter TF->XP
  174. *
  175. *---------------------------------------------------------------------------------------
  176. ****************************************************************************************/
  177. // 2018.01.04 미사용 로직 제외
  178. //=======================================================================================
  179. // Lib Include
  180. //---------------------------------------------------------------------------------------
  181. include "com_commonxp::comm_main.xjs";
  182. //=======================================================================================
  183. // Local methods
  184. //---------------------------------------------------------------------------------------
  185. var selectIndxCd = ds_temp_reqdata.getColumn(0, "selectIndxCd");
  186. var flagcd = "";
  187. var iFocusIndx;
  188. var preItem;
  189. var preindx;
  190. var sIndxNo = "";
  191. var tIndxNo = "";
  192. var appCpYN = "N";
  193. /****************************************************************************************
  194. * Argument :
  195. * Description : 초기화 및 색인을 조회한다.
  196. ****************************************************************************************/
  197. function fInitialize() {
  198. fGetIndxList("A");
  199. }
  200. /****************************************************************************************
  201. * Argument :
  202. * Description : 색인을 조회한다.
  203. ****************************************************************************************/
  204. function fGetIndxList(flag) {
  205. // model.getValue("/root/main/search_cond/indxnm"); // 조회할 색인명 - 추후 사용노드 확인필요
  206. var indxnmSch = "";
  207. ds_main_indxlist_itemlist_item.clearData();
  208. dsf_createDsRow("ds_send_reqdata", [{col:"mode", type:"STRING", size:256, val:"A"}
  209. , {col:"indxnm", type:"STRING", size:256, val:indxnmSch}]);
  210. var oParam = {};
  211. oParam.id = "TRMMB20101";
  212. oParam.service = "prcpbaseapp.EnvInfoMngt";
  213. oParam.method = "reqGetOldPrcpIndxList";
  214. oParam.inds = "req=ds_send_reqdata";
  215. oParam.outds = "ds_main_indxlist_itemlist_item=item";
  216. oParam.async = false;
  217. tranf_submit(oParam);
  218. }
  219. //=======================================================================================
  220. // Event
  221. //---------------------------------------------------------------------------------------
  222. /****************************************************************************************
  223. * Components : Form
  224. * Components ID : SPMMB20100
  225. * Event : onload
  226. * Argument : 01.obj : Object Event has occurred
  227. * : 02.e : Event Object
  228. * Description : 화면 로드시 화면 초기화 실행
  229. ****************************************************************************************/
  230. function SPMMB20100_onload(obj:Form, e:LoadEventInfo)
  231. {
  232. frmf_initForm(obj); // 폼 초기화
  233. grdf_setToolTipBind(treeview1);
  234. fInitialize(); //좌측 CP Tree 조회
  235. }
  236. /****************************************************************************************
  237. * Components : Grid
  238. * Components ID : treeview1
  239. * Event : cantreestatuschange
  240. * Argument : 01.obj : Object Event has occurred
  241. * : 02.e : Event Object
  242. * Description : 트리 동작관련
  243. ****************************************************************************************/
  244. function treeview1_cantreestatuschange(obj:Grid, e:GridTreeStatusEventInfo)
  245. {
  246. obj.userdata = 1;
  247. }
  248. var stopAutoCursor = false;
  249. /****************************************************************************************
  250. * Components : Grid
  251. * Components ID : treeview1
  252. * Event : onkeydown
  253. * Argument : 01.obj : Object Event has occurred
  254. * : 02.e : Event Object
  255. * Description : 트리 동작관련
  256. ****************************************************************************************/
  257. function treeview1_onkeydown(obj:Grid, e:KeyEventInfo)
  258. {
  259. var oDs = this.objects[obj.binddataset];
  260. if(e.keycode == 13) {
  261. obj.oncelldblclick.fireEvent(obj, new GridClickEventInfo());
  262. } if(e.keycode == 37) { // left arrow
  263. var currow = oDs.rowposition;
  264. var row = obj.getTreeRow(currow);
  265. if(row != -1) {
  266. var status = obj.getTreeStatus(row); // 0 : Collapse, 1 : Expand, 3: Leaf
  267. if(status == 0 || status == 3) { // 자식 없는 행이거나 있더라도 접혀 있으면 상위 행으로 이동
  268. var parentRow = obj.getTreeParentRow(row, false);
  269. if(parentRow != -1) {
  270. obj.setTreeStatus(obj.getTreeRow(parentRow), false);
  271. oDs.rowposition = parentRow;
  272. }
  273. } else { // 자식 있는 행인데 펼쳐져 있으면 행 접기
  274. oDs.rowposition = currow;
  275. obj.setTreeStatus(row, false);
  276. }
  277. obj.userdata = 0;
  278. }
  279. stopAutoCursor = true;
  280. } else if(e.keycode == 39) { // right arrow
  281. var currow = oDs.rowposition;
  282. var row = obj.getTreeRow(currow);
  283. if(row != -1) {
  284. var status = obj.getTreeStatus(row); // 0 : Collapse, 1 : Expand, 3: Leaf
  285. if(status == 0) { // 접혀 있으면 펼치기
  286. obj.setTreeStatus(row, true);
  287. obj.userdata = 0;
  288. } else {
  289. if(oDs.rowposition != oDs.rowcount - 1)
  290. oDs.rowposition += 1;
  291. }
  292. }
  293. stopAutoCursor = true;
  294. }
  295. }
  296. /****************************************************************************************
  297. * Components : Grid
  298. * Components ID : treeview1
  299. * Event : onkeyup
  300. * Argument : 01.obj : Object Event has occurred
  301. * : 02.e : Event Object
  302. * Description : 트리 동작관련
  303. ****************************************************************************************/
  304. function treeview1_onkeyup(obj:Grid, e:KeyEventInfo)
  305. {
  306. if(e.keycode == 37) { // left arrow
  307. stopAutoCursor = false;
  308. } else if(e.keycode == 39) { // right arrow
  309. stopAutoCursor = false;
  310. }
  311. }
  312. /****************************************************************************************
  313. * Components : Grid
  314. * Components ID : treeview1
  315. * Event : onmousewheel
  316. * Argument : 01.obj : Object Event has occurred
  317. * : 02.e : Event Object
  318. * Description : 트리 동작관련
  319. ****************************************************************************************/
  320. function treeview1_onmousewheel(obj:Grid, e:MouseWheelEventInfo)
  321. {
  322. obj.vscrollbar.pos = obj.vscrollbar.pos - e.amount;
  323. }
  324. /****************************************************************************************
  325. * Components : Grid
  326. * Components ID : treeview1
  327. * Event : onrbuttondown
  328. * Argument : 01.obj : Object Event has occurred
  329. * : 02.e : Event Object
  330. * Description : 트리 동작관련
  331. ****************************************************************************************/
  332. function treeview1_onrbuttondown(obj:Grid, e:GridMouseEventInfo)
  333. {
  334. if(e.row < 0 || e.col < 0) return;
  335. obj.setFocus();
  336. grdf_setSelectedCell(obj, e);
  337. obj.oncellclick.fireEvent(obj, new GridClickEventInfo());
  338. var srchcond1 = ds_init.getColumn(0, "srchcond1"); //개인, 과, 타과 구분
  339. var srchcond3 = ds_init.getColumn(0, "srchcond3"); //약속, prlt 구분
  340. if(srchcond3 == "P" && srchcond1 == "T")
  341. pmn_menu_set3.trackPopup(e.screenX,e.screenY);
  342. else
  343. pmn_menu_set.trackPopup(e.screenX,e.screenY);
  344. }
  345. /****************************************************************************************
  346. * Components : Dataset
  347. * Components ID : ds_main_indxlist_itemlist_item
  348. * Event : canrowposchange
  349. * Argument : 01.obj : Object Event has occurred
  350. * : 02.e : Event Object
  351. * Description : 트리 동작관련
  352. ****************************************************************************************/
  353. function ds_main_indxlist_itemlist_item_canrowposchange(obj:Dataset, e:DSRowPosChangeEventInfo)
  354. {
  355. if(stopAutoCursor) { // 그리드에서 화살표 좌우 누를때 자동으로 rowposition 변경 막기 위함
  356. return false;
  357. }
  358. }
  359. /****************************************************************************************
  360. * Components : Grid
  361. * Components ID : treeview1
  362. * Event : oncelldblclick
  363. * Argument : 01.obj : Object Event has occurred
  364. * : 02.e : Event Object
  365. * Description : 트리 동작관련
  366. ****************************************************************************************/
  367. function treeview1_oncelldblclick(obj:Grid, e:GridClickEventInfo)
  368. {
  369. // icon으로 tree를 컨트롤 하는 경우는 여기를 태우지 않는다.
  370. if(obj.userdata == 1 && e.clickitem == "treebutton") { // 15.10.23, e.clickitem == "treebutton" 조건 추가 타과 선택 후 첫클릭 (노드 클릭) 시 조회 안되는 현상 제거
  371. obj.userdata = 0;
  372. return;
  373. }
  374. var oDs = this.objects[obj.binddataset];
  375. var nRow = oDs.rowposition;
  376. var nItemCnt = obj.getTreeChildCount(nRow);
  377. if (nItemCnt == 0 ) {
  378. var ordclass = oDs.getColumn(nRow, "ordclass");
  379. var indxno = oDs.getColumn(nRow, "indxno");
  380. var indxnm = oDs.getColumn(nRow, "indxnm");
  381. var depth = oDs.getColumn(nRow, "depth");
  382. for(i=nRow; i>=0; i--) {
  383. var bfdepth = oDs.getColumn(i, "depth");
  384. if (depth > bfdepth) {
  385. var bfindxnm = oDs.getColumn(i, "indxnm");
  386. indxnm = bfindxnm + " >> " + indxnm;
  387. break;
  388. }
  389. }
  390. try {
  391. opener.frmf_setParameter("SPMMB20100_ordclass" , ordclass);
  392. opener.frmf_setParameter("SPMMB20100_indxno" , indxno);
  393. opener.frmf_setParameter("SPMMB20100_indxnm" , indxnm);
  394. this.close()
  395. } catch(E) {
  396. sysf_catchTrace(e);
  397. }
  398. }
  399. var row = obj.getTreeRow(ds_main_indxlist_itemlist_item.rowposition);
  400. if(obj.getTreeStatus(row) == 0)
  401. obj.setTreeStatus(row, true);
  402. else
  403. obj.setTreeStatus(row, false);
  404. obj.userdata = 0;
  405. }
  406. ]]></Script>
  407. </Form>
  408. </FDL>