SPADT00200_ATC라벨설정관리.xfdl 21 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPADT00200" position="absolute 0 0 355 267" titletext="라벨설정관리" oninit="SPADT00200_oninit" onload="SPADT00200_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static text="외래" position="absolute 2 29 187 47" id="caption4" class="tit_2"/>
  8. <Static text="라벨그룹" position="absolute 2 165 82 210" align="align:center middle;" id="caption13" class="cell_1"/>
  9. <Shape position="absolute 2 44 349 50" linetype="horizontal" id="line17" class="line_1"/>
  10. <Static text="출력구분" position="absolute 2 95 82 132" align="align:center middle;" id="caption17" class="cell_1"/>
  11. <Button position="absolute 226 241 282 263" id="btn_save" class="btn4" text="저장" onclick="btn_save_onclick"/>
  12. <Button position="absolute 285 241 341 263" id="btn_close" class="btn4" text="닫기" onclick="btn_close_onclick"/>
  13. <Static text="라벨설정관리" position="absolute 0 0 226 25" id="caption19" class="tit_1"/>
  14. <Static text="병동" position="absolute 2 144 187 162" id="caption1" class="tit_2"/>
  15. <Static text="라벨그룹" position="absolute 2 50 82 93" align="align:center middle;" id="caption5" class="cell_1"/>
  16. <Static text="출력구분" position="absolute 2 213 82 236" align="align:center middle;" id="caption6" class="cell_1"/>
  17. <cp_checkboxList id="chk_lbl_flag" titletext="CheckBox List" taborder="1" scrollbars="none" position="absolute 91 51 346 93" style="background:transparent; " col="1" row="1" cellspacing="2" vcellspacing="0" itemWidth="100" itemHeight="20" overflow="visible" onclick="cp_chk_lbl_flag_onclick"/>
  18. <cp_checkboxList id="chk_manl_lblflag" titletext="CheckBox List" taborder="2" onclick="cp_chk_lbl_flag_onclick" scrollbars="none" position="absolute 92 171 347 210" style="background:transparent; " col="1" row="1" cellspacing="2" vcellspacing="0" itemWidth="100" itemHeight="20" overflow="visible"/>
  19. <cp_radioList id="rdo_oprnt" titletext="Radio List" taborder="3" scrollbars="none" position="absolute 91 95 340 129" style="background:transparent; " col="1" row="1"/>
  20. <cp_radioList id="rdo_iprnt" titletext="Radio List" taborder="4" scrollbars="none" position="absolute 92 213 347 236" style="background:transparent; " col="1" row="1"/>
  21. <Shape id="line00" class="line_1" position="absolute 2 160 347 167"/>
  22. <Shape id="line01" class="line_3" position="absolute 2 235 346 241"/>
  23. <Shape id="line03" class="line_3" position="absolute 1 131 345 137"/>
  24. <Shape id="line3" class="line_2" position="absolute 6 91 345 97"/>
  25. <Shape id="line04" class="line_2" position="absolute 7 209 346 215"/>
  26. <Shape id="line02" class="line_1" position="absolute 2 45 349 51"/>
  27. <Shape id="line05" class="line_1" position="absolute 2 46 349 52"/>
  28. <Shape id="line06" class="line_1" position="absolute 2 159 347 166"/>
  29. <Shape id="line07" class="line_1" position="absolute 2 161 347 168"/>
  30. </Layout>
  31. </Layouts>
  32. <Objects>
  33. <Dataset id="ds_init_radio1" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  34. <ColumnInfo>
  35. <Column id="cdnm" type="STRING"/>
  36. <Column id="cdid" type="STRING"/>
  37. </ColumnInfo>
  38. </Dataset>
  39. <Dataset id="ds_init_radio2" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  40. <ColumnInfo>
  41. <Column id="cdnm" type="STRING"/>
  42. <Column id="cdid" type="STRING"/>
  43. </ColumnInfo>
  44. </Dataset>
  45. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  46. <ColumnInfo>
  47. <Column id="temp" type="STRING" size="256"/>
  48. </ColumnInfo>
  49. </Dataset>
  50. <Dataset id="ds_init_itemlist_ogrup" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  51. <ColumnInfo>
  52. <Column id="cdid" type="STRING" size="256" sumtext="외래라벨그룹코드"/>
  53. <Column id="cdnm" type="STRING" size="256" sumtext="외래라벨그룹코드명"/>
  54. </ColumnInfo>
  55. </Dataset>
  56. <Dataset id="ds_init_itemlist_oprnt" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  57. <ColumnInfo>
  58. <Column id="cdid" type="STRING" size="256" sumtext="외래출력구분코드"/>
  59. <Column id="cdnm" type="STRING" size="256" sumtext="외래출력구분코드명"/>
  60. </ColumnInfo>
  61. </Dataset>
  62. <Dataset id="ds_init_itemlist_igrup" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  63. <ColumnInfo>
  64. <Column id="cdid" type="STRING" size="256" sumtext="병동라벨그룹코드"/>
  65. <Column id="cdnm" type="STRING" size="256" sumtext="병동라벨그룹코드명"/>
  66. </ColumnInfo>
  67. </Dataset>
  68. <Dataset id="ds_init_itemlist_iprnt" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  69. <ColumnInfo>
  70. <Column id="cdid" type="STRING" size="256" sumtext="병동출력구분코드"/>
  71. <Column id="cdnm" type="STRING" size="256" sumtext="병동출력구분코드명"/>
  72. </ColumnInfo>
  73. </Dataset>
  74. <Dataset id="ds_send_sumlistinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  75. <Dataset id="ds_main_lblsetup_lblsetupinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  76. <ColumnInfo>
  77. <Column id="ogrup" type="STRING" size="256" sumtext="외래라벨그룹코드"/>
  78. <Column id="oprnt" type="STRING" size="256" sumtext="외래출력구분코드"/>
  79. <Column id="igrup" type="STRING" size="256" sumtext="병동라벨그룹코드"/>
  80. <Column id="iprnt" type="STRING" size="256" sumtext="병동출력구분코드"/>
  81. </ColumnInfo>
  82. </Dataset>
  83. <Dataset id="ds_hidden_prcpsrch" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  84. <ColumnInfo>
  85. <Column id="lblyn" type="STRING" size="256"/>
  86. </ColumnInfo>
  87. </Dataset>
  88. <Dataset id="ds_test" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  89. <ColumnInfo>
  90. <Column id="drugdd" type="STRING" size="256" sumtext="투약일자"/>
  91. <Column id="drugno" type="INT" size="256" sumtext="투약번호"/>
  92. <Column id="ioflag" type="STRING" size="256" sumtext="입원외래구분"/>
  93. <Column id="pid" type="STRING" size="256" sumtext="등록번호"/>
  94. <Column id="orddd" type="STRING" size="256" sumtext="처방일자"/>
  95. <Column id="cretno" type="INT" size="256" sumtext="생성번호"/>
  96. <Column id="orddeptcd" type="STRING" size="256" sumtext="진료과"/>
  97. <Column id="prcpgenrflag" type="STRING" size="256" sumtext="처방발생구분"/>
  98. <Column id="prntflag" type="STRING" size="256" sumtext="원외/원내처방구분"/>
  99. <Column id="reprintyn" type="STRING" size="256" sumtext="재출력구분"/>
  100. <Column id="eprntype" type="STRING" size="256" sumtext="영문명출력구분"/>
  101. <Column id="stocdeptcd" type="STRING" size="256" sumtext="MIS약품출고부서"/>
  102. <Column id="reprnttype" type="STRING" size="256" sumtext="재출력시 Type"/>
  103. <Column id="reprntpat" type="STRING" size="256" sumtext="재출력시 요청자"/>
  104. <Column id="elctsignkey" type="STRING" size="256" sumtext="재출력시 싸인"/>
  105. <Column id="elctsigncnts" type="STRING" size="256" sumtext="재출력시 싸인"/>
  106. </ColumnInfo>
  107. </Dataset>
  108. </Objects>
  109. <Bind>
  110. <BindItem id="item0" compid="" propid="" datasetid="ds_init_itemlist_ogrup" columnid="cdnm"/>
  111. <BindItem id="item1" compid="" propid="" datasetid="ds_init_itemlist_ogrup" columnid="cdid"/>
  112. </Bind>
  113. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  114. * System Name :
  115. * Job Name :
  116. * Creator :
  117. * Make Date : 2015-10-26
  118. * Description :
  119. *---------------------------------------------------------------------------------------
  120. * Modify Date Modifier Modify Description
  121. *---------------------------------------------------------------------------------------
  122. * 2015-10-26 Live Converter TF->XP
  123. *
  124. *---------------------------------------------------------------------------------------
  125. ****************************************************************************************/
  126. //=======================================================================================
  127. // Lib Include
  128. //---------------------------------------------------------------------------------------
  129. include "com_commonxp::comm_main.xjs";
  130. //=======================================================================================
  131. // Event
  132. //---------------------------------------------------------------------------------------
  133. /****************************************************************************************
  134. * Components :
  135. * Components ID : SPADT00200
  136. * Event : oninit
  137. * Argument : 01.obj : Object Event has occurred
  138. * : 02.e : Event Object
  139. * Description :
  140. ****************************************************************************************/
  141. function SPADT00200_oninit(obj:Form, e:InitEventInfo)
  142. {
  143. frmf_initForm(obj); // 폼 초기화
  144. }
  145. /****************************************************************************************
  146. * Components :
  147. * Components ID : SPADT00200
  148. * Event : onload
  149. * Argument : 01.obj : Object Event has occurred
  150. * : 02.e : Event Object
  151. * Description : 초기화
  152. ****************************************************************************************/
  153. function SPADT00200_onload(obj:Form, e:LoadEventInfo)
  154. {
  155. fInit();
  156. }
  157. /****************************************************************************************
  158. * Components :
  159. * Components ID : btn_close
  160. * Event : onclick
  161. * Argument : 01.obj : Object Event has occurred
  162. * : 02.e : Event Object
  163. * Description : 닫기
  164. ****************************************************************************************/
  165. function btn_close_onclick(obj:Button, e:ClickEventInfo)
  166. {
  167. // // opener.model.setValue("/root/main/lblsetup/lblsetupinfo/setupinfo/olblgrup", model.getValue("/root/main/lblsetup/lblsetupinfo/setupinfo/olblgrup"));
  168. // // opener.model.setValue("/root/main/lblsetup/lblsetupinfo/setupinfo/oprntflag", model.getValue("/root/main/lblsetup/lblsetupinfo/setupinfo/oprntflag"));
  169. // // opener.model.setValue("/root/main/lblsetup/lblsetupinfo/setupinfo/ilblgrup", model.getValue("/root/main/lblsetup/lblsetupinfo/setupinfo/ilblgrup"));
  170. // // opener.model.setValue("/root/main/lblsetup/lblsetupinfo/setupinfo/iprntflag", model.getValue("/root/main/lblsetup/lblsetupinfo/setupinfo/iprntflag"));
  171. // // model.close();
  172. opener.ds_main_lblsetup_lblsetupinfo.setColumn(0,"ogrup",ds_main_lblsetup_lblsetupinfo.getColumn(0,"ogrup"));
  173. opener.ds_main_lblsetup_lblsetupinfo.setColumn(0,"oprnt",ds_main_lblsetup_lblsetupinfo.getColumn(0,"oprnt"));
  174. opener.ds_main_lblsetup_lblsetupinfo.setColumn(0,"igrup",ds_main_lblsetup_lblsetupinfo.getColumn(0,"igrup"));
  175. opener.ds_main_lblsetup_lblsetupinfo.setColumn(0,"iprnt",ds_main_lblsetup_lblsetupinfo.getColumn(0,"iprnt"));
  176. this.close();
  177. }
  178. /****************************************************************************************
  179. * Components :
  180. * Components ID : btn_save
  181. * Event : onclick
  182. * Argument : 01.obj : Object Event has occurred
  183. * : 02.e : Event Object
  184. * Description : 저장
  185. ****************************************************************************************/
  186. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  187. {
  188. fSave();
  189. }
  190. //=======================================================================================
  191. // Function
  192. //---------------------------------------------------------------------------------------
  193. /****************************************************************************************
  194. * Argument : N/A
  195. * Description : 화면 초기화
  196. ****************************************************************************************/
  197. function fInit() {
  198. // // submit("TRADT00215");
  199. //라벨그룹, 출력구분 항목 리스트 조회 -------------------------------------------------------------------------------------------
  200. var oParam = {};
  201. oParam.id = "TRADT00215";
  202. oParam.service = "pharmacyatcapp.DrugATC";
  203. oParam.method = "reqGetAtcLblInit";
  204. oParam.inds = "req=ds_send";
  205. oParam.outds = "ds_init_itemlist_ogrup=ogrup ds_init_itemlist_oprnt=oprnt ds_init_itemlist_igrup=igrup ds_init_itemlist_iprnt=iprnt";
  206. oParam.async = false;
  207. oParam.callback = "cf_TRADT00215";
  208. tranf_submit(oParam);
  209. // 행, 열 속성 셋팅
  210. var sProp_4_2 = "col=4,row=2,cellspacing=4,vcellspacing=0,itemWidth=-1,itemHeight=20,overflow='visible'";
  211. var sProp_3_2 = "col=3,row=2,cellspacing=4,vcellspacing=0,itemWidth=-1,itemHeight=20,overflow='visible'";
  212. // 컴포넌트 매핑 및 선택시 발생하는 함수 지정
  213. chk_lbl_flag.setInitComp(sProp_4_2, ds_init_itemlist_ogrup, "cdid","cdnm", "fn_ogrup");
  214. rdo_oprnt.setInitComp(sProp_3_2, ds_init_itemlist_oprnt, "cdid", "cdnm", "fn_oprnt");
  215. chk_manl_lblflag.setInitComp(sProp_4_2, ds_init_itemlist_igrup, "cdid","cdnm", "fn_igrup");
  216. rdo_iprnt.setInitComp(sProp_3_2, ds_init_itemlist_iprnt, "cdid", "cdnm", "fn_iprnt");
  217. //----------------------------------------------------------------------------------------------------------------------------------
  218. //라벨그룹, 출력구분 저장값 조회 -----------------------------------------------------------------------------------------------
  219. // // submit("TRADT00216");
  220. var oParam = {};
  221. oParam.id = "TRADT00216";
  222. oParam.service = "pharmacyatcapp.DrugATC";
  223. oParam.method = "reqGetAtcLblInitValue";
  224. oParam.inds = "req=ds_send_sumlistinfo";
  225. oParam.outds = "ds_main_lblsetup_lblsetupinfo=list";
  226. oParam.async = false;
  227. oParam.callback = "cf_TRADT00216";
  228. tranf_submit(oParam);
  229. //----------------------------------------------------------------------------------------------------------------------------------
  230. }
  231. /****************************************************************************************
  232. * Argument : N/A
  233. * Description : chk_lbl_flag 멀티체크박스 클릭시 발생
  234. ****************************************************************************************/
  235. function fn_ogrup(){
  236. // 체크 후 체크되어 있는 값 변경
  237. ds_main_lblsetup_lblsetupinfo.setColumn(0,"ogrup",String(chk_lbl_flag.getData()).replace(",","|"));
  238. ds_hidden_prcpsrch.setColumn(0,"lblyn","Y");
  239. }
  240. /****************************************************************************************
  241. * Argument : N/A
  242. * Description : rdo_oprnt 멀티라디오박스 클릭시 발생
  243. ****************************************************************************************/
  244. function fn_oprnt(){
  245. ds_main_lblsetup_lblsetupinfo.setColumn(0,"oprnt",String(rdo_oprnt.getData()));
  246. }
  247. /****************************************************************************************
  248. * Argument : N/A
  249. * Description : chk_manl_lblflag 멀티체크박스 클릭시 발생
  250. ****************************************************************************************/
  251. function fn_igrup(sObj){
  252. var chklbl = eval(sObj).value; //선택한 체크박스 값(value)
  253. if(chklbl == "DP"){
  254. var sChk = "AD";
  255. fn_chkLbl(chklbl, sChk);
  256. }else if(chklbl == "AD"){
  257. var sChk = "DP";
  258. fn_chkLbl(chklbl, sChk);
  259. }
  260. // 체크 후 체크되어 있는 값 변경
  261. ds_main_lblsetup_lblsetupinfo.setColumn(0,"igrup",String(chk_manl_lblflag.getData()).replace(",","|"));
  262. }
  263. /****************************************************************************************
  264. * Argument : N/A
  265. * Description : rdo_iprnt 멀티라디오박스 클릭시 발생
  266. ****************************************************************************************/
  267. function fn_iprnt(){
  268. ds_main_lblsetup_lblsetupinfo.setColumn(0,"iprnt",String(rdo_iprnt.getData()));
  269. }
  270. /****************************************************************************************
  271. * Argument : 01.chkLbl1 : 선택한 값 (DP or AD)
  272. * : 02.chkLbl2 : 선택한 값의 상대값(AD or DP)
  273. * Description : chk_manl_lblflag 에서 'chkLbl1' 이 선택되면 'chkLbl2'를 선택 해제 한다.
  274. ****************************************************************************************/
  275. function fn_chkLbl(chkLbl1, chkLbl2){
  276. var arrLblflag = chk_manl_lblflag.getData();
  277. if(arrLblflag.join(',').indexOf(chkLbl1) < 0) return;
  278. var aData = new Array();
  279. var index = 0;
  280. for (var i = 0 ; i < arrLblflag.length ; i++){
  281. if(arrLblflag[i] == chkLbl2) {
  282. continue;
  283. } else {
  284. aData[index++] = arrLblflag[i];
  285. }
  286. }
  287. var aFalseData = new Array();
  288. aFalseData[0] = chkLbl2;
  289. chk_manl_lblflag.setData(aData, aFalseData, false);
  290. sysf_trace(String(chk_manl_lblflag.getData()).replace(",","|"));
  291. }
  292. /****************************************************************************************
  293. * Argument : N/A
  294. * Description : 저장
  295. ****************************************************************************************/
  296. function fSave() {
  297. // // submit("TXADT00209");
  298. var oParam = {};
  299. oParam.id = "TXADT00209";
  300. oParam.service = "pharmacyatcapp.DrugATC";
  301. oParam.method = "reqExeAtcLblInit";
  302. oParam.inds = "req=ds_main_lblsetup_lblsetupinfo";
  303. oParam.outds = "";
  304. oParam.async = false;
  305. oParam.callback = "cf_TXADT00209";
  306. tranf_submit(oParam);
  307. }
  308. //=======================================================================================
  309. // Transaction Callback
  310. //---------------------------------------------------------------------------------------
  311. /****************************************************************************************
  312. * Argument : 01.sSvcId : 서비스 ID
  313. * : 02.nErrorCode : 에러코드
  314. * : 03.sErrorMsg : 에러메시지
  315. * Description : cf_TXADT00209의 콜백함수
  316. ****************************************************************************************/
  317. function cf_TXADT00209(sSvcId, nErrorCode, sErrorMsg) {
  318. if(nErrorCode < 0) return;
  319. }
  320. /****************************************************************************************
  321. * Argument : 01.sSvcId : 서비스 ID
  322. * : 02.nErrorCode : 에러코드
  323. * : 03.sErrorMsg : 에러메시지
  324. * Description : cf_TRADT00215의 콜백함수
  325. ****************************************************************************************/
  326. function cf_TRADT00215(sSvcId, nErrorCode, sErrorMsg) {
  327. if(nErrorCode < 0) return;
  328. }
  329. /****************************************************************************************
  330. * Argument : 01.sSvcId : 서비스 ID
  331. * : 02.nErrorCode : 에러코드
  332. * : 03.sErrorMsg : 에러메시지
  333. * Description : cf_TRADT00216의 콜백함수
  334. ****************************************************************************************/
  335. function cf_TRADT00216(sSvcId, nErrorCode, sErrorMsg) {
  336. // 에러 체크
  337. if(nErrorCode < 0) return;
  338. //map 파일 컬럼명 변경에 따른 변경
  339. // ds_main_lblsetup_lblsetupinfo.updateColID("ogrup","olblgrup");
  340. // ds_main_lblsetup_lblsetupinfo.updateColID("oprnt","oprntflag");
  341. // ds_main_lblsetup_lblsetupinfo.updateColID("igrup","ilblgrup");
  342. // ds_main_lblsetup_lblsetupinfo.updateColID("iprnt","iprntflag");
  343. //일괄 조회된 데이타 값을 구분값 "|" 으로 나뉘어 멀티체크박스에 셋팅
  344. chk_lbl_flag.setData(ds_main_lblsetup_lblsetupinfo.getColumn(0,"ogrup").split("|") ,null,false);
  345. chk_manl_lblflag.setData(ds_main_lblsetup_lblsetupinfo.getColumn(0,"igrup").split("|") ,null,false);
  346. // 멀티 라디오 박스 선택 값 셋팅
  347. rdo_oprnt.setData(ds_main_lblsetup_lblsetupinfo.getColumn(0,"oprnt"),null,false);
  348. rdo_iprnt.setData(ds_main_lblsetup_lblsetupinfo.getColumn(0,"iprnt"),null,false);
  349. }
  350. ]]></Script>
  351. </Form>
  352. </FDL>