SMADT12170_마약류현재고조회.xfdl 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMADT12170" classname="SMADT12170_마약류현재고조회" inheritanceid="" position="absolute 0 0 1200 780" titletext="마약류 현재고 조회" onload="SMADT12170_onload" oninit="SMADT12170_oninit">
  5. <Layouts>
  6. <Layout>
  7. <Static id="caption6" text="마약류 현재고 조회" class="tit_1" position="absolute 0 0 150 25"/>
  8. <Div id="grp_search" anchor="left top right" taborder="1" class="div_SA" position="absolute 0 50 1195 85">
  9. <Layouts>
  10. <Layout>
  11. <Static id="caption2" text="저장소 :" class="search_name" position="absolute 21 10 83 27" anchor="default"/>
  12. <Button id="btn_search" taborder="58" text="조회" class="btn1" position="absolute 896 7 952 29" anchor="default" onclick="grp_search_btn_search_onclick"/>
  13. <Combo id="cmb_storge_no" taborder="61" innerdataset="@ds_storgelist" codecolumn="storge_no" datacolumn="storge_nonm" class="combo_default" position="absolute 85 8 227 27"/>
  14. <Static id="caption03" text="약품코드 :" class="search_name" position="absolute 413 10 488 27"/>
  15. <Edit id="ipt_gtin" taborder="62" autoselect="true" class="input_search" position="absolute 795 13 888 32" visible="false"/>
  16. <Button id="btn_gtin" taborder="63" class="icon_search" position="absolute 586 10 602 26" onclick="grp_search_btn_gtin_onclick"/>
  17. <Edit id="opt_hngnm" taborder="64" readonly="true" autoselect="true" class="output" position="absolute 607 9 880 28"/>
  18. <Edit id="ipt_drugcd" taborder="68" autoselect="true" class="input_search" position="absolute 489 9 582 28" inputmode="upper" imemode="alpha" onkeydown="grp_search_ipt_drugcd_onkeydown"/>
  19. <Static id="caption05" text="관리구분 :" class="search_name" position="absolute 246 10 321 27"/>
  20. <Combo id="cmb_prtm_se_nm" taborder="69" codecolumn="codecolumn" datacolumn="datacolumn" class="combo_search" position="absolute 324 8 395 27">
  21. <Dataset id="innerdataset">
  22. <ColumnInfo>
  23. <Column id="codecolumn" size="256"/>
  24. <Column id="datacolumn" size="256"/>
  25. </ColumnInfo>
  26. <Rows>
  27. <Row>
  28. <Col id="codecolumn"/>
  29. <Col id="datacolumn">전체</Col>
  30. </Row>
  31. <Row>
  32. <Col id="codecolumn">중점</Col>
  33. <Col id="datacolumn">중점</Col>
  34. </Row>
  35. <Row>
  36. <Col id="codecolumn">일반</Col>
  37. <Col id="datacolumn">일반</Col>
  38. </Row>
  39. </Rows>
  40. </Dataset>
  41. </Combo>
  42. </Layout>
  43. </Layouts>
  44. </Div>
  45. <Static id="caption01" text="현재고" class="tit_2" position="absolute -1 99 170 120"/>
  46. <Grid id="grd_stoclist" taborder="17" boutddataset="ds_stoclist" autoenter="select" useinputpanel="false" selecttype="row" cellsizingtype="both" position="absolute 0 121 1195 768" anchor="all" binddataset="ds_stoclist">
  47. <Formats>
  48. <Format id="default">
  49. <Columns>
  50. <Column size="25" band="left"/>
  51. <Column size="70"/>
  52. <Column size="83"/>
  53. <Column size="96"/>
  54. <Column size="260"/>
  55. <Column size="51"/>
  56. <Column size="44"/>
  57. <Column size="132"/>
  58. <Column size="39"/>
  59. </Columns>
  60. <Rows>
  61. <Row size="24" band="head"/>
  62. <Row size="24"/>
  63. </Rows>
  64. <Band id="head">
  65. <Cell/>
  66. <Cell col="1" text="저장소"/>
  67. <Cell col="2" text="약품코드"/>
  68. <Cell col="3" text="제품코드"/>
  69. <Cell col="4" text="제품명"/>
  70. <Cell col="5" colspan="2" text="낱개단위 수" taborder="undefined"/>
  71. <Cell col="7" text="유통단위별 낱개수량"/>
  72. <Cell col="8" text="구분"/>
  73. </Band>
  74. <Band id="body">
  75. <Cell celltype="head" text="expr:currow+1"/>
  76. <Cell col="1" style="align:left;" text="bind:storge_nm"/>
  77. <Cell col="2" style="align:left;" text="bind:drugcd"/>
  78. <Cell col="3" text="bind:gtin"/>
  79. <Cell col="4" style="align:left;" text="bind:hngnm"/>
  80. <Cell col="5" displaytype="normal" edittype="none" editfilter="number" style="align:center;" text="bind:pce_qy" editautoselect="true"/>
  81. <Cell col="6" text="bind:prd_pce_unit"/>
  82. <Cell col="7" text="bind:trans_unit"/>
  83. <Cell col="8" text="bind:prtm_se_nm"/>
  84. </Band>
  85. </Format>
  86. </Formats>
  87. </Grid>
  88. <Shape id="line7" class="line_10" position="absolute 0 116 1195 122" anchor="left top right"/>
  89. <Div id="grp_button" anchor="left top right" taborder="40" position="absolute 0 13 1195 45">
  90. <Layouts>
  91. <Layout>
  92. <Shape id="line2" class="line_6" position="absolute 0 25 1195 31" anchor="left top right"/>
  93. </Layout>
  94. </Layouts>
  95. </Div>
  96. <Button id="btn_download" taborder="41" text="엑셀 Download" class="btn2" position="absolute 1087 96 1195 115" anchor="top right" onclick="btn_download_onclick"/>
  97. </Layout>
  98. </Layouts>
  99. <Bind>
  100. <BindItem id="item12" compid="SMADT12170" propid="text" datasetid="ds_main_prntlist_patinfo" columnid=""/>
  101. <BindItem id="item0" compid="grp_search.cmb_storge_no" propid="value" datasetid="ds_send_search" columnid="storge_no"/>
  102. <BindItem id="item5" compid="grp_search.ipt_gtin" propid="value" datasetid="ds_send_search" columnid="gtin"/>
  103. <BindItem id="item22" compid="grp_search.opt_hngnm" propid="value" datasetid="ds_send_search" columnid="hngnm"/>
  104. <BindItem id="item2" compid="grp_search.ipt_drugcd" propid="value" datasetid="ds_send_search" columnid="drugcd"/>
  105. <BindItem id="item26" compid="grp_search.cmb_prtm_se_nm" propid="value" datasetid="ds_send_search" columnid="prtm_se_nm"/>
  106. </Bind>
  107. <Objects>
  108. <Dataset id="ds_send_search" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_send_search_oncolumnchanged">
  109. <ColumnInfo>
  110. <Column id="indd_from" type="STRING" size="256"/>
  111. <Column id="indd_to" type="STRING" size="256"/>
  112. <Column id="storge_no" type="STRING" size="256" sumtext="연도"/>
  113. <Column id="prtm_se_nm" type="STRING" size="256"/>
  114. <Column id="gtin" type="STRING" size="256"/>
  115. <Column id="hngnm" type="STRING" size="256"/>
  116. <Column id="outdd" type="STRING" size="256"/>
  117. <Column id="drugcd" type="STRING" size="256"/>
  118. </ColumnInfo>
  119. <Rows>
  120. <Row/>
  121. </Rows>
  122. </Dataset>
  123. <Dataset id="ds_storgelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  124. <ColumnInfo>
  125. <Column id="storge_no" type="STRING" size="256"/>
  126. <Column id="storge_nm" type="STRING" size="256"/>
  127. <Column id="storge_nonm" type="STRING" size="256"/>
  128. </ColumnInfo>
  129. </Dataset>
  130. <Dataset id="ds_stoclist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_stoclist_oncolumnchanged">
  131. <ColumnInfo>
  132. <Column id="gtin" type="STRING" size="256"/>
  133. <Column id="prd_pce_unit" type="STRING" size="256"/>
  134. <Column id="pce_qy" type="STRING" size="256"/>
  135. <Column id="trans_unit" type="STRING" size="256"/>
  136. <Column id="prtm_se_nm" type="STRING" size="256"/>
  137. <Column id="hngnm" type="STRING" size="256"/>
  138. <Column id="drugcd" type="STRING" size="256"/>
  139. <Column id="storge_nm" type="STRING" size="256"/>
  140. </ColumnInfo>
  141. </Dataset>
  142. <Dataset id="ds_temp_receivedata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  143. <ColumnInfo>
  144. <Column id="receiveref" type="STRING" size="256"/>
  145. <Column id="receive_drugcd" type="STRING" size="256"/>
  146. <Column id="receive_hngnm" type="STRING" size="256"/>
  147. <Column id="receive_gtin" type="STRING" size="256"/>
  148. <Column id="receive_prtm_se_nm" type="STRING" size="256"/>
  149. <Column id="receive_prd_min_distb_qy" type="STRING" size="256"/>
  150. <Column id="receive_prd_min_distb_unit" type="STRING" size="256"/>
  151. <Column id="receive_prd_tot_pce_qy" type="STRING" size="256"/>
  152. <Column id="receive_prd_pce_unit" type="STRING" size="256"/>
  153. <Column id="basedd" type="STRING" size="256"/>
  154. </ColumnInfo>
  155. <Rows>
  156. <Row/>
  157. </Rows>
  158. </Dataset>
  159. </Objects>
  160. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  161. * System Name : 경대 의료정보시스템
  162. * Job Name : ast_pharmacydrugsumxp-> SMADT12170
  163. * Creator : pjb
  164. * Make Date : 2018-04-11
  165. * Description :
  166. *---------------------------------------------------------------------------------------
  167. * Modify Date Modifier Modify Description
  168. *---------------------------------------------------------------------------------------
  169. * 2018-04-11 pjb XP개발
  170. *
  171. *---------------------------------------------------------------------------------------
  172. ****************************************************************************************/
  173. //=======================================================================================
  174. // Lib Include
  175. //---------------------------------------------------------------------------------------
  176. include "com_commonxp::comm_main.xjs";
  177. //include "mis_miscommonxp::MIS.xjs";
  178. //include "mis_humtrafactmngtxp::RPB001.xjs";
  179. //=======================================================================================
  180. // Global Form Variable
  181. //---------------------------------------------------------------------------------------
  182. var arErrorCode = new HashArray();
  183. //=======================================================================================
  184. // Function
  185. //---------------------------------------------------------------------------------------
  186. //=======================================================================================
  187. // Event
  188. //---------------------------------------------------------------------------------------
  189. /****************************************************************************************
  190. * Components : Form
  191. * Components ID : SMADT12170
  192. * Event : oninit
  193. * Argument : 01.obj : Object Event has occurred
  194. * : 02.e : Event Object
  195. * Description : 화면 처음 초기화시
  196. ****************************************************************************************/
  197. function SMADT12170_oninit(obj:Form, e:InitEventInfo)
  198. {
  199. frmf_initForm(obj); //폼 초기화
  200. }
  201. /****************************************************************************************
  202. * Components : Form
  203. * Components ID : SMADT12170
  204. * Event : onload
  205. * Argument : 01.obj : Object Event has occurred
  206. * : 02.e : Event Object
  207. * Description : 화면 로딩 완료시
  208. ****************************************************************************************/
  209. function SMADT12170_onload(obj:Form, e:LoadEventInfo)
  210. {
  211. //grdf_setRowTypeIcon(grd_stoclist, 0);
  212. grdf_setGridSort(grd_stoclist);
  213. //ds_movinfo.setColumn(0, "status", "i"); // 작업구분(i, u, d)
  214. //저장소 목록 조회
  215. var oParam = {};
  216. oParam.id = "TRADT12112";
  217. oParam.service = "pharmacydrugsumapp.NarcManagent";
  218. oParam.method = "reqGetStorgeList";
  219. oParam.inds = "req=";
  220. oParam.outds = "ds_storgelist=storgelist";
  221. oParam.async = false;
  222. // oParam.callback = "cf_TRADT12112";
  223. tranf_submit(oParam);
  224. //frmf_addComboItem("grp_search.cmb_storge_no","전체","","above");
  225. ds_send_search.setColumn(0, "storge_no", "S0001"); //default setting : S0001 기본저장소
  226. ds_send_search.setColumn(0, "prtm_se_nm", ""); //default setting : 관리구분
  227. grp_search.cmb_storge_no.setFocus();
  228. }
  229. /****************************************************************************************
  230. * Components : Button
  231. * Components ID : grp_search_btn_search
  232. * Event : onclick
  233. * Argument : 01.obj : Object Event has occurred
  234. * : 02.e : Event Object
  235. * Description : 조회버튼 클릭시
  236. ****************************************************************************************/
  237. function grp_search_btn_search_onclick(obj:Button, e:ClickEventInfo)
  238. {
  239. //현재고 조회
  240. var oParam = {};
  241. oParam.id = "TRADT12171";
  242. oParam.service = "pharmacydrugsumapp.NarcManagent";
  243. oParam.method = "reqGetPrdStocList";
  244. oParam.inds = "req=ds_send_search";
  245. oParam.outds = "ds_stoclist=stoclist";
  246. oParam.async = false;
  247. oParam.callback = "cf_TRADT12171";
  248. tranf_submit(oParam);
  249. if (arErrorCode.pop("TRADT12171") > -1){
  250. }
  251. }
  252. function cf_TRADT12171(sSvcId, nErrorCode, sErrorMsg) {
  253. arErrorCode.push(sSvcId, nErrorCode);
  254. }
  255. /****************************************************************************************
  256. * Components : Dataset
  257. * Components ID : ds_send_search
  258. * Event : oncolumnchanged
  259. * Argument : 01.obj : Object Event has occurred
  260. * : 02.e : Event Object
  261. * Description : 컬럼의 값 변경시
  262. ****************************************************************************************/
  263. function ds_send_search_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  264. {
  265. if(e.columnid == "indd_from" || e.columnid == "indd_to" || e.columnid == "storge_no" || e.columnid == "prtm_se_nm" ) {
  266. //Grid Clear
  267. ds_stoclist.clearData();
  268. }
  269. else if(e.columnid == "drugcd") {
  270. if(e.newvalue != e.oldvalue) {
  271. obj.setColumn(0, "hngnm", "");
  272. obj.setColumn(0, "gtin", "");
  273. }
  274. }
  275. }
  276. /****************************************************************************************
  277. * Components : Button
  278. * Components ID : btn_gtin
  279. * Event : onclick
  280. * Argument : 01.obj : Object Event has occurred
  281. * : 02.e : Event Object
  282. * Description : 제품코드 버튼 Click시
  283. ****************************************************************************************/
  284. function grp_search_btn_gtin_onclick(obj:Button, e:ClickEventInfo)
  285. {
  286. ds_temp_receivedata.setColumn(0,"receiveref","ds_send_search");
  287. ds_temp_receivedata.setColumn(0,"receive_drugcd","drugcd");
  288. ds_temp_receivedata.setColumn(0,"receive_hngnm","hngnm");
  289. ds_temp_receivedata.setColumn(0,"receive_gtin","gtin");
  290. ds_temp_receivedata.setColumn(0,"receive_prtm_se_nm",""); //prtm_se_nm
  291. ds_temp_receivedata.setColumn(0,"receive_prd_min_distb_qy","prd_min_distb_qy");
  292. ds_temp_receivedata.setColumn(0,"receive_prd_min_distb_unit","prd_min_distb_unit");
  293. ds_temp_receivedata.setColumn(0,"receive_prd_tot_pce_qy","prd_tot_pce_qy");
  294. ds_temp_receivedata.setColumn(0,"receive_prd_pce_unit","prd_pce_unit");
  295. ds_temp_receivedata.setColumn(0,"basedd",""); //utlf_getCurrentDate() //ds_send_search.getColumn(0, "indd_to")
  296. var objArg = new Object();
  297. objArg.arg_ds_temp_receivedata = ds_temp_receivedata;
  298. frmf_modal("SMADT12120","SMADT12120", objArg, "", "", 100, 150, "", "", "", "", "", "M");
  299. }
  300. function grp_search_ipt_drugcd_onkeydown(obj:Edit, e:KeyEventInfo)
  301. {
  302. if(e.keycode == 13) {
  303. obj.updateToDataset();
  304. }
  305. }
  306. function btn_download_onclick(obj:Button, e:ClickEventInfo)
  307. {
  308. //조회된 자료가 없으면 먼저 조회하라고 message
  309. if(ds_stoclist.rowcount < 1) {
  310. sysf_messageBox("조회된 결과가 존재하지 않습니다. \n\n먼저 조회 후 Download 하십시요. ", "E999", "");
  311. return;
  312. }
  313. grdf_exportExcel(grd_stoclist, "excel", "savetype", false, "", "user", false);
  314. }
  315. ]]></Script>
  316. </Form>
  317. </FDL>