SPADT63400_외래투약관리승인.xfdl 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPADT63400" position="absolute 0 0 298 207" titletext="외래투약관리승인" oninit="SPADT63400_oninit" onload="SPADT63400_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 0 0 297 174" id="grp_biz" scrollbars="autoboth">
  8. <Layouts>
  9. <Layout>
  10. <Static text="외래투약관리승인" position="absolute 2 6 160 27" id="caption1" class="tit_2" anchor="default"/>
  11. <Shape position="absolute 2 22 296 28" linetype="horizontal" id="line1" class="line_1" anchor="default"/>
  12. <Static text="사번" position="absolute 2 27 82 50" align="align:center middle;" id="caption21" class="cell_1" anchor="default"/>
  13. <Edit position="absolute 86 29 161 48" id="ipt_writeid" class="input_essential" anchor="default" onkeydown="grp_biz_ipt_writeid_onkeydown"/>
  14. <Edit position="absolute 165 29 240 48" id="ipt_writenm" anchor="default"/>
  15. <Static text="사유" position="absolute 2 52 82 170" align="align:center middle;" id="caption3" class="cell_1" anchor="default"/>
  16. <TextArea position="absolute 86 54 296 170" id="tar_memo" anchor="default"/>
  17. </Layout>
  18. </Layouts>
  19. </Div>
  20. <Div position="absolute 0 177 300 203" id="grp_btn" scrollbars="autoboth">
  21. <Layouts>
  22. <Layout>
  23. <Button position="absolute 240 0 296 22" id="btn_cls" class="btn4" text="닫기" anchor="default" onclick="grp_btn_btn_cls_onclick"/>
  24. <Button position="absolute 180 0 236 22" id="btn_del" class="btn4" visible="true" text="저장" anchor="default" onclick="grp_btn_btn_del_onclick"/>
  25. </Layout>
  26. </Layouts>
  27. </Div>
  28. </Layout>
  29. </Layouts>
  30. <Objects>
  31. <Dataset id="ds_main_cnfrinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  32. <ColumnInfo>
  33. <Column id="drugdd" type="STRING" size="256"/>
  34. <Column id="drugno" type="STRING" size="256"/>
  35. <Column id="ioflag" type="STRING" size="256"/>
  36. <Column id="instcd" type="STRING" size="256"/>
  37. <Column id="pid" type="STRING" size="256"/>
  38. <Column id="userid" type="STRING" size="256"/>
  39. <Column id="usernm" type="STRING" size="256"/>
  40. <Column id="memo" type="STRING" size="256"/>
  41. </ColumnInfo>
  42. <Rows>
  43. <Row>
  44. <Col id="drugdd"/>
  45. <Col id="drugno"/>
  46. <Col id="ioflag"/>
  47. <Col id="instcd"/>
  48. <Col id="pid"/>
  49. <Col id="userid"/>
  50. <Col id="usernm"/>
  51. <Col id="memo"/>
  52. </Row>
  53. </Rows>
  54. </Dataset>
  55. <Dataset id="ds_send_srchinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  56. <ColumnInfo>
  57. <Column id="drugdd" type="STRING" size="256"/>
  58. <Column id="drugno" type="STRING" size="256"/>
  59. <Column id="ioflag" type="STRING" size="256"/>
  60. <Column id="drugstat" type="STRING" size="256"/>
  61. <Column id="dispflag" type="STRING" size="256"/>
  62. <Column id="dispcnts" type="STRING" size="256"/>
  63. <Column id="inputtm" type="STRING" size="256"/>
  64. <Column id="userid" type="STRING" size="256"/>
  65. <Column id="stocdeptcd" type="STRING" size="256"/>
  66. <Column id="instcd" type="STRING" size="256"/>
  67. <Column id="srchrcvflag" type="STRING" size="256"/>
  68. <Column id="srchdrugmngtyn" type="STRING" size="256"/>
  69. <Column id="pid" type="STRING" size="256"/>
  70. </ColumnInfo>
  71. <Rows>
  72. <Row>
  73. <Col id="drugdd"/>
  74. <Col id="drugno"/>
  75. <Col id="ioflag"/>
  76. <Col id="drugstat"/>
  77. <Col id="dispflag"/>
  78. <Col id="dispcnts"/>
  79. <Col id="inputtm"/>
  80. <Col id="userid"/>
  81. <Col id="stocdeptcd"/>
  82. <Col id="instcd"/>
  83. <Col id="srchrcvflag"/>
  84. <Col id="srchdrugmngtyn"/>
  85. <Col id="pid"/>
  86. </Row>
  87. </Rows>
  88. </Dataset>
  89. <Dataset id="ds_send_usersrchinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  90. <ColumnInfo>
  91. <Column id="srchuserid" type="STRING" size="256"/>
  92. <Column id="srchinstcd" type="STRING" size="256"/>
  93. </ColumnInfo>
  94. <Rows>
  95. <Row>
  96. <Col id="srchuserid"/>
  97. <Col id="srchinstcd"/>
  98. </Row>
  99. </Rows>
  100. </Dataset>
  101. <Dataset id="ds_init" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  102. <Dataset id="ds_hidden_userinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  103. <ColumnInfo>
  104. <Column id="userid" type="STRING" size="256"/>
  105. <Column id="usernm" type="STRING" size="256"/>
  106. </ColumnInfo>
  107. <Rows>
  108. <Row>
  109. <Col id="userid"/>
  110. <Col id="usernm"/>
  111. </Row>
  112. </Rows>
  113. </Dataset>
  114. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  115. </Objects>
  116. <Bind>
  117. <BindItem id="item0" compid="grp_biz.ipt_writeid" propid="value" datasetid="ds_main_cnfrinfo" columnid="userid"/>
  118. <BindItem id="item1" compid="grp_biz.ipt_writenm" propid="value" datasetid="ds_main_cnfrinfo" columnid="usernm"/>
  119. <BindItem id="item2" compid="grp_biz.tar_memo" propid="value" datasetid="ds_main_cnfrinfo" columnid="memo"/>
  120. </Bind>
  121. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  122. * System Name :
  123. * Job Name :
  124. * Creator :
  125. * Make Date : 2015-11-13
  126. * Description :
  127. *---------------------------------------------------------------------------------------
  128. * Modify Date Modifier Modify Description
  129. *---------------------------------------------------------------------------------------
  130. * 2015-11-13 Live Converter TF->XP
  131. *
  132. *---------------------------------------------------------------------------------------
  133. ****************************************************************************************/
  134. //=======================================================================================
  135. // Lib Include
  136. //---------------------------------------------------------------------------------------
  137. include "com_commonxp::comm_main.xjs"
  138. include "ast_commonxp::AST.xjs"
  139. //=======================================================================================
  140. // Global Form Variable
  141. //---------------------------------------------------------------------------------------
  142. var arErrorCode = new HashArray();
  143. //=======================================================================================
  144. // Function
  145. //---------------------------------------------------------------------------------------
  146. /****************************************************************************************
  147. * Argument : N/A
  148. * Description :
  149. ****************************************************************************************/
  150. function trim(data){
  151. return data.replace(/(^\s*)|(\s*$)/g, "");
  152. }
  153. /****************************************************************************************
  154. * Argument : N/A
  155. * Description :
  156. ****************************************************************************************/
  157. function fSubmitConfirm() {
  158. // 필수사항 확인
  159. if (trim(utlf_transNullToEmpty(ds_main_cnfrinfo.getColumn(0,"userid"))) == "" || trim(utlf_transNullToEmpty(ds_main_cnfrinfo.getColumn(0,"usernm"))) == ""
  160. || trim(utlf_transNullToEmpty(ds_main_cnfrinfo.getColumn(0,"instcd"))) == "") {
  161. sysf_messageBox("승인자 사번을", "C001");
  162. return;
  163. }
  164. if (trim(utlf_transNullToEmpty(ds_main_cnfrinfo.getColumn(0,"drugdd"))) == "" || trim(utlf_transNullToEmpty(ds_main_cnfrinfo.getColumn(0,"drugno"))) == ""
  165. || trim(utlf_transNullToEmpty(ds_main_cnfrinfo.getColumn(0,"ioflag"))) == "") {
  166. sysf_messageBox("환자를 선택하시고", "C001");
  167. return;
  168. }
  169. if (trim(ds_send_srchinfo.getColumn(0,"srchrcvflag")) == "Y" && trim(ds_send_srchinfo.getColumn(0,"srchdrugmngtyn")) != "Y"
  170. && trim(utlf_transNullToEmpty(ds_main_cnfrinfo.getColumn(0,"memo"))) == "") {
  171. sysf_messageBox("사유를", "C001");
  172. grp_biz.tar_memo.setFocus();
  173. return;
  174. }
  175. var oParam = {};
  176. oParam.id = "TXADT63401";
  177. oParam.service = "pharmacyprescriptionapp.Medication";
  178. oParam.method = "reqExeOutDrugStatMemo";
  179. oParam.inds = "req=ds_main_cnfrinfo";
  180. oParam.outds = "ds_hidden=item";
  181. oParam.async = false;
  182. oParam.callback = "cf_TXADT63401";
  183. tranf_submit(oParam);
  184. if(arErrorCode.pop("TXADT63401") > -1) {
  185. opener.ds_hidden.setColumn(0,"cnfrresult", "Y");
  186. this.close();
  187. } else {
  188. opener.ds_hidden.setColumn(0,"cnfrresult", "N");
  189. sysf_messageBox("사유 저장이", "E009");
  190. return;
  191. }
  192. }
  193. function cf_TXADT63401(sSvcId, nErrorCode, sErrorMsg) {
  194. arErrorCode.push(sSvcId, nErrorCode);
  195. }
  196. //=======================================================================================
  197. // Event
  198. //---------------------------------------------------------------------------------------
  199. /****************************************************************************************
  200. * Components : Form
  201. * Components ID : SPADT63400
  202. * Event : oninit
  203. * Argument : 01.obj : Object Event has occurred
  204. * : 02.e : Event Object
  205. * Description : 화면 처음 초기화시 폼초기화
  206. ****************************************************************************************/
  207. function SPADT63400_oninit(obj:Form, e:InitEventInfo)
  208. {
  209. frmf_initForm(obj); // 폼 초기화
  210. }
  211. function grp_btn_btn_del_onclick(obj:Button, e:ClickEventInfo)
  212. {
  213. if (sysf_messageBox("승인 사유를","Q002") == 6) {
  214. fSubmitConfirm();
  215. }
  216. }
  217. function grp_btn_btn_cls_onclick(obj:Button, e:ClickEventInfo)
  218. {
  219. this.close();
  220. }
  221. function grp_biz_ipt_writeid_onkeydown(obj:Edit, e:KeyEventInfo)
  222. {
  223. if(e.keycode == 13) {
  224. obj.updateToDataset();
  225. var writid = trim(ds_main_cnfrinfo.getColumn(0,"userid"));
  226. if(!utlf_isNull(writid)) {
  227. ds_send_usersrchinfo.setColumn(0,"srchuserid",writid);
  228. var oParam = {};
  229. oParam.id = "TRADT63401";
  230. oParam.service = "pharmacyprescriptionapp.MpsCheck";
  231. oParam.method = "reqGetUserInfo";
  232. oParam.inds = "req=ds_send_usersrchinfo";
  233. oParam.outds = "ds_hidden_userinfo=item";
  234. oParam.async = false;
  235. oParam.callback = "cf_TRADT63401";
  236. tranf_submit(oParam);
  237. if (arErrorCode.pop("TRADT63401") > -1) {
  238. if(trim(utlf_transNullToEmpty(ds_hidden_userinfo_item.getColumn(0,"usernm"))) != "") {
  239. ds_main_cnfrinfo.setColumn(0,"userid", ds_hidden_userinfo_item.getColumn(0,"userid"));
  240. ds_main_cnfrinfo.setColumn(0,"usernm", ds_hidden_userinfo_item.getColumn(0,"usernm"));
  241. ds_main_cnfrinfo.setColumn(0,"drugdd", ds_send_srchinfo.getColumn(0,"drugdd"));
  242. ds_main_cnfrinfo.setColumn(0,"drugno", ds_send_srchinfo.getColumn(0,"drugno"));
  243. ds_main_cnfrinfo.setColumn(0,"ioflag", ds_send_srchinfo.getColumn(0,"ioflag"));
  244. ds_main_cnfrinfo.setColumn(0,"pid" , ds_send_srchinfo.getColumn(0,"pid"));
  245. ds_main_cnfrinfo.setColumn(0,"instcd", ds_send_srchinfo.getColumn(0,"userid"));
  246. // 미수령약 + 투약관리약 조회결과, 투약완료 처리 시
  247. if(ds_send_srchinfo.getColumn(0,"srchrcvflag") == "Y" && ds_send_srchinfo.getColumn(0,"srchdrugmngtyn") == "Y") {
  248. fSubmitConfirm();
  249. } else if(ds_send_srchinfo.getColumn(0,"srchrcvflag") == "Y") {
  250. sysf_messageBox("조제취소 사유를", "C001");
  251. grp_biz.tar_memo.setFocus();
  252. return;
  253. } else {
  254. // 강제로 창닫기
  255. this.close();
  256. }
  257. } else {
  258. sysf_messageBox("입력한 사번으로 이름 확인을", "E009");
  259. return;
  260. }
  261. }
  262. } else {
  263. sysf_messageBox("외래투약관리 승인을 위해 사번은", "I003");
  264. return;
  265. }
  266. }
  267. }
  268. function cf_TRADT63401(sSvcId, nErrorCode, sErrorMsg) {
  269. arErrorCode.push(sSvcId, nErrorCode);
  270. }
  271. ]]></Script>
  272. </Form>
  273. </FDL>