SMMNR10500_FlowSheet약품정보관리.xfdl 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMMNR10500" position="absolute 0 0 1202 788" titletext="FlowSheet 약품정보 관리" oninit="SMMNR10500_oninit" onload="SMMNR10500_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static id="caption1" text="FlowSheet 약품정보 관리" class="tit_1" position="absolute 0 0 286 25"/>
  8. <Div id="grp_sea" taborder="1" class="div_SA" position="absolute 0 25 1195 65" anchor="left top right">
  9. <Layouts>
  10. <Layout>
  11. <Shape id="line13" linetype="vertical" class="line_4" position="absolute 1031 6 1037 33" anchor="top right"/>
  12. <Static id="caption12" text="조회구분 :" class="search_name" position="absolute 487 12 573 29"/>
  13. <Combo id="cmb_srchtype" taborder="10" innerdataset="@ds_init_srchtypeinfo_srchtypelist" codecolumn="cdid" datacolumn="cdnm" class="combo_search" position="absolute 577 11 724 30"/>
  14. <Button id="btn_srch" taborder="11" text="조회" class="btn1" position="absolute 1055 9 1111 31" anchor="top right" onclick="grp_sea_btn_srch_onclick"/>
  15. <Static id="caption13" text="약품정보 :" class="search_name" position="absolute 249 12 335 29"/>
  16. <Edit id="ipt_srchtext" taborder="12" class="input_search" position="absolute 727 11 917 30" autoselect="true" autoskip="true" onkeyup="grp_sea_ipt_srchtext_onkeyup"/>
  17. <Combo id="cmb_drugtype" taborder="13" innerdataset="@ds_init_drugtypeinfo_drugtypelist" codecolumn="cdid" datacolumn="cdnm" class="combo_search" position="absolute 341 11 436 30"/>
  18. <Button id="btn_save" taborder="14" text="저장" class="btn4" position="absolute 1121 9 1177 31" anchor="top right" onclick="grp_sea_btn_save_onclick"/>
  19. <Static id="caption00" text="약품정보 :" class="search_name" position="absolute 249 12 335 29"/>
  20. <Static id="caption01" text="병 동 :" class="search_name" position="absolute 9 12 95 29"/>
  21. <Combo id="cmb_wardcd" taborder="15" innerdataset="@ds_init_cmb_wardcd" codecolumn="wardcd" datacolumn="wardnm" onitemchanged="grp_sea_cmb_wardcd_onitemchanged" class="combo_s_essential" position="absolute 68 10 207 30"/>
  22. </Layout>
  23. </Layouts>
  24. </Div>
  25. <Static id="caption11" text="약품정보 리스트" class="tit_2" position="absolute 0 79 120 100"/>
  26. <Grid id="grd_druglist" taborder="2" binddataset="ds_main_druginfo_druglist" useinputpanel="false" position="absolute 0 100 1194 779" autoenter="select" autofittype="col" cellsizingtype="col" onexpanddown="grd_druglist_onexpanddown" anchor="all">
  27. <Formats>
  28. <Format id="default">
  29. <Columns>
  30. <Column size="22"/>
  31. <Column size="120"/>
  32. <Column size="280"/>
  33. <Column size="50"/>
  34. <Column size="50"/>
  35. <Column size="100"/>
  36. <Column size="200"/>
  37. <Column size="200"/>
  38. <Column size="100"/>
  39. <Column size="50"/>
  40. <Column size="0"/>
  41. </Columns>
  42. <Rows>
  43. <Row size="24" band="head"/>
  44. <Row size="24"/>
  45. </Rows>
  46. <Band id="head">
  47. <Cell/>
  48. <Cell col="1" text="부서"/>
  49. <Cell col="2" text="기록명칭"/>
  50. <Cell col="3" text="용량"/>
  51. <Cell col="4" text="단위"/>
  52. <Cell col="5" text="약품코드"/>
  53. <Cell col="6" text="처방명칭"/>
  54. <Cell col="7" text="한글명칭"/>
  55. <Cell col="8" text="지속약물단위"/>
  56. <Cell col="9" text="조회순서"/>
  57. <Cell col="10"/>
  58. </Band>
  59. <Band id="body">
  60. <Cell celltype="head"/>
  61. <Cell col="1" displaytype="combo" edittype="combo" style="padding:0 0 0 2;" text="bind:deptcd" combodataset="ds_init_cmb_wardcd" combocodecol="wardcd" combodatacol="wardnm" combodisplayrowcount="-1"/>
  62. <Cell col="2" displaytype="text" edittype="text" style="align:left middle;padding:0 0 0 3;" text="bind:recnm"/>
  63. <Cell col="3" displaytype="text" edittype="text" style="align:left middle;padding:0 0 0 3;" text="bind:recvol"/>
  64. <Cell col="4" displaytype="text" edittype="text" style="align:left middle;padding:0 0 0 3;" text="bind:recunit"/>
  65. <Cell col="5" displaytype="text" edittype="text" style="align:left middle;padding:0 0 0 3;" text="bind:drugcd" expandshow="show"/>
  66. <Cell col="6" style="align:left middle;padding:0 0 0 3;" text="bind:ordnm"/>
  67. <Cell col="7" style="align:left middle;padding:0 0 0 3;" text="bind:hngnm"/>
  68. <Cell col="8" displaytype="text" edittype="text" style="align:center middle;" text="bind:recfluidunit"/>
  69. <Cell col="9" displaytype="text" edittype="text" style="align:center middle;" text="bind:sortno"/>
  70. <Cell col="10" text="bind:seqno"/>
  71. </Band>
  72. </Format>
  73. </Formats>
  74. </Grid>
  75. <Shape id="line1" class="line_10" position="absolute 0 95 1194 101" anchor="left top right"/>
  76. <Button id="btn_add" taborder="3" text="행추가" class="btn2" position="absolute 1016 76 1069 95" anchor="top right" onclick="btn_add_onclick"/>
  77. <Button id="btn_del" taborder="4" text="행삭제" class="btn2" position="absolute 1073 76 1126 95" anchor="top right" onclick="btn_del_onclick"/>
  78. <Button id="button1" taborder="5" text="삭제취소" class="btn2" position="absolute 1130 76 1194 95" anchor="top right" onclick="button1_onclick"/>
  79. </Layout>
  80. </Layouts>
  81. <Objects>
  82. <Dataset id="ds_cond" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  83. <ColumnInfo>
  84. <Column id="useflag" type="STRING" size="256"/>
  85. <Column id="drugtype" type="STRING" size="256"/>
  86. <Column id="srchtype" type="STRING" size="256"/>
  87. <Column id="srchtext" type="STRING" size="256"/>
  88. <Column id="deptcd" type="STRING" size="256"/>
  89. </ColumnInfo>
  90. <Rows>
  91. <Row>
  92. <Col id="useflag"/>
  93. <Col id="drugtype"/>
  94. <Col id="srchtype"/>
  95. <Col id="srchtext"/>
  96. </Row>
  97. </Rows>
  98. </Dataset>
  99. <Dataset id="ds_init_srchtypeinfo_srchtypelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  100. <ColumnInfo>
  101. <Column id="cdid" type="STRING" size="256"/>
  102. <Column id="cdnm" type="STRING" size="256"/>
  103. </ColumnInfo>
  104. <Rows>
  105. <Row>
  106. <Col id="cdid">ALL</Col>
  107. <Col id="cdnm">전체</Col>
  108. </Row>
  109. <Row>
  110. <Col id="cdid">0</Col>
  111. <Col id="cdnm">기록명칭</Col>
  112. </Row>
  113. <Row>
  114. <Col id="cdid">1</Col>
  115. <Col id="cdnm">처방명칭</Col>
  116. </Row>
  117. <Row>
  118. <Col id="cdid">2</Col>
  119. <Col id="cdnm">약품코드</Col>
  120. </Row>
  121. <Row>
  122. <Col id="cdid">3</Col>
  123. <Col id="cdnm">한글명칭</Col>
  124. </Row>
  125. </Rows>
  126. </Dataset>
  127. <Dataset id="ds_init_drugtypeinfo_drugtypelist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  128. <ColumnInfo>
  129. <Column id="cdid" type="STRING" size="256"/>
  130. <Column id="cdnm" type="STRING" size="256"/>
  131. </ColumnInfo>
  132. <Rows>
  133. <Row>
  134. <Col id="cdid">ALL</Col>
  135. <Col id="cdnm">전체</Col>
  136. </Row>
  137. <Row>
  138. <Col id="cdid">A2</Col>
  139. <Col id="cdnm">내복</Col>
  140. </Row>
  141. <Row>
  142. <Col id="cdid">A4</Col>
  143. <Col id="cdnm">외용</Col>
  144. </Row>
  145. <Row>
  146. <Col id="cdid">A6</Col>
  147. <Col id="cdnm">주사</Col>
  148. </Row>
  149. <Row>
  150. <Col id="cdid">-</Col>
  151. <Col id="cdnm">텍스트</Col>
  152. </Row>
  153. </Rows>
  154. </Dataset>
  155. <Dataset id="ds_main_druginfo_druglist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" oncolumnchanged="ds_main_druginfo_druglist_oncolumnchanged">
  156. <ColumnInfo>
  157. <Column id="deptcd" type="STRING" size="256"/>
  158. <Column id="recnm" type="STRING" size="256" sumtext="기록명칭"/>
  159. <Column id="recvol" type="STRING" size="256" sumtext="기록용량"/>
  160. <Column id="recunit" type="STRING" size="256" sumtext="기록단위"/>
  161. <Column id="drugcd" type="STRING" size="256" sumtext="약품코드"/>
  162. <Column id="ordnm" type="STRING" size="256" sumtext="처방명칭"/>
  163. <Column id="hngnm" type="STRING" size="256" sumtext="한글명칭"/>
  164. <Column id="sortno" type="INT" size="256" sumtext="조회순서"/>
  165. <Column id="seqno" type="INT" size="256" sumtext="일련번호"/>
  166. <Column id="recfluidunit" type="STRING" size="256" sumtext="지속적약물기록단위"/>
  167. </ColumnInfo>
  168. </Dataset>
  169. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  170. <Dataset id="ds_temp_receivedata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  171. <ColumnInfo>
  172. <Column id="receiveref" type="STRING" size="256"/>
  173. <Column id="srchflag" type="STRING" size="256"/>
  174. <Column id="srchcnts" type="STRING" size="256"/>
  175. <Column id="drugkind" type="STRING" size="256"/>
  176. <Column id="srchdrugcd" type="STRING" size="256"/>
  177. </ColumnInfo>
  178. <Rows>
  179. <Row/>
  180. </Rows>
  181. </Dataset>
  182. <Dataset id="ds_temp" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  183. <Dataset id="ds_hidden_mech" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  184. <ColumnInfo>
  185. <Column id="drugcd" type="STRING" size="256" sumtext="약품코드"/>
  186. <Column id="ordnm" type="STRING" size="256" sumtext="처방명칭"/>
  187. <Column id="hngnm" type="STRING" size="256" sumtext="한글명칭"/>
  188. <Column id="stndvol" type="STRING" size="256" sumtext="기록용량"/>
  189. <Column id="stndunit" type="STRING" size="256" sumtext="기록단위"/>
  190. </ColumnInfo>
  191. </Dataset>
  192. <Dataset id="ds_init_cmb_wardcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  193. <ColumnInfo>
  194. <Column id="wardcd" type="STRING" size="256" sumtext="병동코드"/>
  195. <Column id="wardnm" type="STRING" size="256" sumtext="병동명"/>
  196. </ColumnInfo>
  197. </Dataset>
  198. </Objects>
  199. <Bind>
  200. <BindItem id="item0" compid="grp_sea.cmb_drugtype" propid="value" datasetid="ds_cond" columnid="drugtype"/>
  201. <BindItem id="item1" compid="grp_sea.cmb_srchtype" propid="value" datasetid="ds_cond" columnid="srchtype"/>
  202. <BindItem id="item2" compid="grp_sea.ipt_srchtext" propid="value" datasetid="ds_cond" columnid="srchtext"/>
  203. <BindItem id="item3" compid="grp_sea.cmb_wardcd" propid="value" datasetid="ds_cond" columnid="deptcd"/>
  204. </Bind>
  205. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  206. * System Name :
  207. * Job Name :
  208. * Creator :
  209. * Make Date : 2015-11-13
  210. * Description :
  211. *---------------------------------------------------------------------------------------
  212. * Modify Date Modifier Modify Description
  213. *---------------------------------------------------------------------------------------
  214. * 2015-11-13 Live Converter TF->XP
  215. *
  216. *---------------------------------------------------------------------------------------
  217. ****************************************************************************************/
  218. include "com_commonxp::comm_main.xjs";
  219. function SMMNR10500_oninit(obj:Form, e:InitEventInfo)
  220. {
  221. frmf_initForm(obj);
  222. }
  223. function SMMNR10500_onload(obj:Form, e:LoadEventInfo)
  224. {
  225. grdf_initGrid(grd_druglist);
  226. grdf_setRowTypeIcon(grd_druglist, 0);
  227. grdf_setToolTipBind(grd_druglist)
  228. fInitialize();
  229. }
  230. function fInitialize()
  231. {
  232. ds_cond.setColumn(0, "useflag", "1");
  233. ds_cond.setColumn(0, "drugtype", "ALL");
  234. ds_cond.setColumn(0, "srchtype", "ALL");
  235. ds_cond.setColumn(0, "srchtext", "");
  236. //병동 조회
  237. var oParam = {};
  238. oParam.id = "TRMNW04705";
  239. oParam.service = "wardcareapp.WardCareMngt";
  240. oParam.method = "reqGetWMInitData";
  241. oParam.inds = "reqcond=ds_main_cond";
  242. oParam.outds = "ds_init_cmb_wardcd=ward ds_init_settingrn=settingrn";
  243. oParam.async = false;
  244. //oParam.callback = "cf_TRMNW04705";
  245. tranf_submit(oParam);
  246. dsf_addDsItem( ds_init_cmb_wardcd, "wardcd","wardnm", "공 통", "OOOOOOOOOO", "above");
  247. dsf_addDsItem( ds_init_cmb_wardcd, "wardcd","wardnm", "전 체", "", "above");
  248. ds_cond.setColumn(0, "deptcd", sysf_getUserInfo("dutplcecd"));
  249. fSrchData();
  250. }
  251. function cf_TRMNW04705(sSvcId, nErrorCode, sErrorMsg) {
  252. arErrorCode.push(sSvcId, nErrorCode);
  253. }
  254. function fSrchData()
  255. {
  256. if(String(grp_sea.ipt_srchtext.value).getTrim().length < 1 )
  257. {
  258. grp_sea.ipt_srchtext.value = "";
  259. }
  260. ds_send.clearData();
  261. ds_send.addRow();
  262. ds_send.copyData(ds_cond);
  263. var oParam = {};
  264. oParam.id = "TRMNR10501";
  265. oParam.service = "flowchartapp.FlowChartCtrlMngt";
  266. oParam.method = "reqGetFlowSheetPrcpInfo";
  267. oParam.inds = "req=ds_send";
  268. oParam.outds = "ds_main_druginfo_druglist=druglist";
  269. oParam.async = false;
  270. //oParam.callback = "cf_TRMNR10501";
  271. tranf_submit(oParam);
  272. }
  273. function grd_druglist_onexpanddown(obj:Grid, e:GridMouseEventInfo)
  274. {
  275. fDrugDbClick();
  276. }
  277. /*
  278. function grd_druglist_onexpanddown(obj:Grid, e:GridMouseEventInfo)
  279. {
  280. var iRow=e.row;
  281. if (e.col==obj.getBindCellIndex("body","deptcd")) {
  282. frmf_clearParameter("SPZSA20202_");
  283. var col = grd_druglist.currentcol;
  284. var objArg = new Object();
  285. objArg.SPZSA20202_1 = eval(col);
  286. var iProperties = frmf_modal("SPZSA20202", "SPZSA20202", objArg);
  287. }else{
  288. fDrugDbClick();
  289. }
  290. }
  291. */
  292. function fDrugDbClick()
  293. {
  294. var iRow = ds_main_druginfo_druglist.rowposition;
  295. ds_temp_receivedata.setColumn(0, "receiveref", "ds_temp_receivedata");
  296. var objArg = new Object();
  297. objArg.arg_ds_temp_receivedata = ds_temp_receivedata;
  298. frmf_modal("SPADB60100", "SPADB60100", objArg, "", "", "", "", "", "", "", "", "", "M");
  299. var drugcd = ds_temp_receivedata.getColumn(0,"drugcd")
  300. var drugnm = "";
  301. var row = 0;
  302. if(!utlf_isNull(drugcd))
  303. {
  304. ds_send.clearData();
  305. dsf_makeValue(ds_send, "calcscorcd", "string", drugcd);
  306. var oParam = {};
  307. oParam.id = "TRMNR10502";
  308. oParam.service = "flowchartapp.FlowChartCtrlMngt";
  309. oParam.method = "reqGetDrugDetlInfo";
  310. oParam.inds = "req=ds_send";
  311. oParam.outds = "ds_hidden_mech=mech";
  312. oParam.async = false;
  313. //oParam.callback = "cf_TRMNR10502";
  314. tranf_submit(oParam);
  315. drugnm = ds_hidden_mech.getColumn(0, "hngnm");
  316. if(utlf_isNull(drugnm))
  317. {
  318. sysf_messageBox("약품 유효기간이 지났습니다.","E999");
  319. return;
  320. }
  321. ds_main_druginfo_druglist.setColumn(iRow, "drugcd", ds_hidden_mech.getColumn(0, "drugcd"));
  322. ds_main_druginfo_druglist.setColumn(iRow, "ordnm", ds_hidden_mech.getColumn(0, "ordnm"));
  323. ds_main_druginfo_druglist.setColumn(iRow, "hngnm", ds_hidden_mech.getColumn(0, "hngnm"));
  324. if( utlf_isNull(ds_main_druginfo_druglist.getColumn(iRow, "recnm")))
  325. {
  326. ds_main_druginfo_druglist.setColumn(iRow, "recnm", ds_hidden_mech.getColumn(0, "drugcd"));
  327. }
  328. if( utlf_isNull(ds_main_druginfo_druglist.getColumn(iRow, "recunit")))
  329. {
  330. ds_main_druginfo_druglist.setColumn(iRow, "recunit", ds_hidden_mech.getColumn(0, "stndunit"));
  331. }
  332. if( utlf_isNull(ds_main_druginfo_druglist.getColumn(iRow, "recvol")))
  333. {
  334. ds_main_druginfo_druglist.setColumn(iRow, "recvol", ds_hidden_mech.getColumn(0, "stndvol"));
  335. }
  336. }
  337. }
  338. function ds_main_druginfo_druglist_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  339. {
  340. if(e.columnid == "drugcd" && utlf_isNull(e.newvalue))
  341. {
  342. obj.setColumn(e.row, "ordnm", "");
  343. obj.setColumn(e.row, "hngnm", "");
  344. }
  345. }
  346. function btn_add_onclick(obj:Button, e:ClickEventInfo)
  347. {
  348. ds_main_druginfo_druglist.setColumn(ds_main_druginfo_druglist.addRow(), "sortno", 0);
  349. }
  350. function btn_del_onclick(obj:Button, e:ClickEventInfo)
  351. {
  352. var iRow = ds_main_druginfo_druglist.rowposition;
  353. ds_main_druginfo_druglist.updatecontrol = false;
  354. ds_main_druginfo_druglist.setRowType(iRow, "d");
  355. ds_main_druginfo_druglist.updatecontrol = true;
  356. }
  357. function button1_onclick(obj:Button, e:ClickEventInfo)
  358. {
  359. var iRow = ds_main_druginfo_druglist.rowposition;
  360. if( ds_main_druginfo_druglist.getRowType(iRow) == 8 )
  361. {
  362. if( utlf_isNull(ds_main_druginfo_druglist.getColumn(iRow, "seqno")))
  363. {
  364. ds_main_druginfo_druglist.updatecontrol = false;
  365. ds_main_druginfo_druglist.setRowType(iRow, "i");
  366. ds_main_druginfo_druglist.updatecontrol = true;
  367. }
  368. else
  369. {
  370. ds_main_druginfo_druglist.updatecontrol = false;
  371. ds_main_druginfo_druglist.setRowType(iRow, "u");
  372. ds_main_druginfo_druglist.updatecontrol = true;
  373. }
  374. }
  375. }
  376. function grp_sea_btn_save_onclick(obj:Button, e:ClickEventInfo)
  377. {
  378. var oParam = {};
  379. oParam.id = "TRMNR10501";
  380. oParam.service = "flowchartapp.FlowChartCtrlMngt";
  381. oParam.method = "reqExeFlowSheetPrcpInfo";
  382. oParam.inds = "req=ds_main_druginfo_druglist:u";
  383. oParam.outds = "";
  384. oParam.typeStr = "stat";
  385. oParam.async = false;
  386. oParam.callback = "cf_TRMNR10501";
  387. tranf_submit(oParam);
  388. }
  389. function cf_TRMNR10501(sSvcId, nErrorCode, sErrorMsg)
  390. {
  391. if(nErrorCode < 0) return;
  392. else
  393. {
  394. fSrchData();
  395. }
  396. }
  397. function grp_sea_ipt_srchtext_onkeyup(obj:Edit, e:KeyEventInfo)
  398. {
  399. if(e.keycode == 13)
  400. {
  401. obj.updateToDataset();
  402. grp_sea.btn_srch.click();
  403. }
  404. }
  405. function grp_sea_btn_srch_onclick(obj:Button, e:ClickEventInfo)
  406. {
  407. fSrchData();
  408. }
  409. function grp_sea_cmb_wardcd_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  410. {
  411. fSrchData();
  412. }
  413. ]]></Script>
  414. </Form>
  415. </FDL>