SMADB02600_용량분할관리.xfdl 31 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMADB02600" position="absolute 0 0 1191 785" titletext="용량분할관리" onload="SMADB02600_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div id="group3" taborder="2" position="absolute -2 26 1189 777" anchor="all">
  8. <Layouts>
  9. <Layout>
  10. <Grid id="grd_voldruglist" taborder="2" binddataset="ds_grd_voldruglist" useinputpanel="false" position="absolute 287 93 1191 712" anchor="all" autoenter="key" extendsizetype="row" cellsizingtype="both" onkeydown="group3_grd_voldruglist_onkeydown" onexpandup="group3_grd_voldruglist_onexpandup" selecttype="multirow">
  11. <Formats>
  12. <Format id="default">
  13. <Columns>
  14. <Column size="25" band="left"/>
  15. <Column size="0"/>
  16. <Column size="60"/>
  17. <Column size="59"/>
  18. <Column size="113"/>
  19. <Column size="378"/>
  20. <Column size="56"/>
  21. <Column size="63"/>
  22. <Column size="61"/>
  23. <Column size="91"/>
  24. <Column size="0"/>
  25. <Column size="0"/>
  26. </Columns>
  27. <Rows>
  28. <Row size="24" band="head"/>
  29. <Row size="24"/>
  30. </Rows>
  31. <Band id="head">
  32. <Cell/>
  33. <Cell col="1" text="caption1"/>
  34. <Cell col="2" text="관리구분"/>
  35. <Cell col="3" text="관리코드"/>
  36. <Cell col="4" text="약품코드"/>
  37. <Cell col="5" text="약품명"/>
  38. <Cell col="6" text="적용순서"/>
  39. <Cell col="7" text="기준용량"/>
  40. <Cell col="8" text="기준단위"/>
  41. <Cell col="9" text="큰함량단위용량"/>
  42. <Cell col="10" text="관리구분"/>
  43. <Cell col="11" text="saveflag"/>
  44. </Band>
  45. <Band id="body">
  46. <Cell celltype="head"/>
  47. <Cell col="1" displaytype="text" edittype="text" text="bind:divcd"/>
  48. <Cell col="2" displaytype="combo" edittype="expr:getRowType(currow) == 2 ? 'combo' : 'none'" style="padding:0 2 0 2;background:EXPR(getRowType(currow)==8?'#ffff00':'');background2:EXPR(getRowType(currow)==8?'#ffff00':'');" text="bind:voldivflag" editautoselect="true" suppress="1" combodataset="ds_combo_divcd" combocodecol="value" combodatacol="label" enable="false"/>
  49. <Cell col="3" displaytype="text" edittype="expr:getRowType(currow) == 2 ? 'text' : 'none'" style="background:EXPR(getRowType(currow)==8?'#ffff00':'');background2:EXPR(getRowType(currow)==8?'#ffff00':'');" text="bind:voldivcd" editautoselect="true" suppress="1" suppressedit="false"/>
  50. <Cell col="4" edittype="expr:getRowType(currow) == 2 ? 'text' : 'none'" style="align:left middle;padding:0 2 0 2;background:EXPR(getRowType(currow)==8?'#ffff00':'');background2:EXPR(getRowType(currow)==8?'#ffff00':'');" text="bind:drugcd" editautoselect="true" expandshow="expr:getRowType(currow) == 2 ? 'show' : 'hide'"/>
  51. <Cell col="5" style="align:left middle;background:EXPR(getRowType(currow)==8?'#ffff00':'');background2:EXPR(getRowType(currow)==8?'#ffff00':'');" text="bind:drugnm" editautoselect="true"/>
  52. <Cell col="6" displaytype="text" edittype="text" style="align:right middle;background:EXPR(getRowType(currow)==8?'#ffff00':'');background2:EXPR(getRowType(currow)==8?'#ffff00':'');" text="bind:seqno" editautoselect="true"/>
  53. <Cell col="7" displaytype="text" edittype="text" style="align:right middle;background:EXPR(getRowType(currow)==8?'#ffff00':'');background2:EXPR(getRowType(currow)==8?'#ffff00':'');" text="bind:basevol" editautoselect="true"/>
  54. <Cell col="8" displaytype="combo" edittype="combo" style="background:EXPR(getRowType(currow)==8?'#ffff00':'');background2:EXPR(getRowType(currow)==8?'#ffff00':'');" text="bind:basevolunit" editautoselect="true" combodataset="ds_A0599" combocodecol="cdid" combodatacol="cdnm"/>
  55. <Cell col="9" displaytype="text" edittype="text" style="align:right middle;background:EXPR(getRowType(currow)==8?'#ffff00':'');background2:EXPR(getRowType(currow)==8?'#ffff00':'');" text="bind:nextvol" editautoselect="true"/>
  56. <Cell col="10" text="bind:instcd"/>
  57. <Cell col="11" text="bind:saveflag"/>
  58. </Band>
  59. </Format>
  60. </Formats>
  61. </Grid>
  62. <Static id="caption2" text="상세적용" class="tit_2" position="absolute 287 48 431 69" anchor="default"/>
  63. <Static id="caption4" text="전체적용" class="tit_2" position="absolute 2 48 146 65" anchor="default"/>
  64. <Static id="caption14" text="제외진료과" class="cell_1" position="absolute 2 69 78 92" anchor="default"/>
  65. <Grid id="grd_exptdeptlist" taborder="3" binddataset="ds_grd_exptdeptlist" useinputpanel="false" position="absolute 2 93 284 751" anchor="left top bottom" cellsizingtype="both" extendsizetype="row" autoenter="select" onkeydown="group3_grd_exptdeptlist_onkeydown" onexpandup="group3_grd_exptdeptlist_onexpandup" selecttype="multirow">
  66. <Formats>
  67. <Format id="default">
  68. <Columns>
  69. <Column size="25" band="left"/>
  70. <Column size="93"/>
  71. <Column size="154"/>
  72. <Column size="0"/>
  73. </Columns>
  74. <Rows>
  75. <Row size="24" band="head"/>
  76. <Row size="24"/>
  77. </Rows>
  78. <Band id="head">
  79. <Cell/>
  80. <Cell col="1" text="과코드"/>
  81. <Cell col="2" text="진료과명"/>
  82. <Cell col="3" text="기관코드"/>
  83. </Band>
  84. <Band id="body">
  85. <Cell celltype="head"/>
  86. <Cell col="1" displaytype="text" edittype="expr:getRowType(currow) == 2 ? 'text' : 'none'" text="bind:exptorddeptcd" editautoselect="true" expandshow="expr:getRowType(currow) == 2 ? 'show' : 'hide'"/>
  87. <Cell col="2" text="bind:exptorddeptnm"/>
  88. <Cell col="3" text="bind:instcd"/>
  89. </Band>
  90. </Format>
  91. <Format id="format_copy"/>
  92. </Formats>
  93. </Grid>
  94. <Static id="caption3" text="관리구분코드" class="cell_1" position="absolute 287 69 378 92" anchor="default"/>
  95. <Button id="btn_grdadd1" taborder="4" text="행추가" class="btn2" position="absolute 176 73 229 92" anchor="default" onclick="group3_btn_grdadd1_onclick"/>
  96. <Button id="btn_grdcopy1" taborder="5" text="행복사" class="btn2" visible="false" position="absolute 121 73 174 92" anchor="default" onclick="group3_btn_grdcopy1_onclick"/>
  97. <Button id="btn_grddel1" taborder="6" text="행삭제" class="btn2" position="absolute 231 73 284 92" anchor="default" onclick="group3_btn_grddel1_onclick"/>
  98. <Button id="btn_grdadd2" taborder="7" text="행추가" class="btn2" visible="false" position="absolute 400 74 453 93" anchor="default"/>
  99. <Button id="btn_grdadd3" taborder="8" text="행추가" class="btn2" position="absolute 1028 73 1081 92" anchor="top right" onclick="group3_btn_grdadd3_onclick"/>
  100. <Button id="btn_grdcopy2" taborder="9" text="행복사" class="btn2" visible="false" position="absolute 455 74 508 93" anchor="default"/>
  101. <Button id="btn_grdcopy3" taborder="10" text="행복사" class="btn2" position="absolute 1083 73 1136 92" anchor="top right" onclick="group3_btn_grdcopy3_onclick"/>
  102. <Button id="btn_grddel2" taborder="11" text="행삭제" class="btn2" visible="false" position="absolute 510 74 563 93" anchor="default"/>
  103. <Button id="btn_grddel3" taborder="12" text="행삭제" class="btn2" position="absolute 1138 73 1191 92" anchor="top right" onclick="group3_btn_grddel3_onclick"/>
  104. <Shape id="roundrect2" type="roundrectangle" position="absolute 303 720 488 750" anchor="left bottom"/>
  105. <Static id="caption47" text="범 례" class="cell_2" position="absolute 310 725 380 745" anchor="left right bottom"/>
  106. <Static id="caption32" text="항암(A)" position="absolute 388 728 432 742" anchor="left right bottom"/>
  107. <Static id="caption8" text="일반(N)" position="absolute 438 728 486 742" anchor="left right bottom"/>
  108. <Static id="caption6" text="분할코드내역" class="cell_1" position="absolute 442 69 532 92" anchor="default"/>
  109. <Button id="btn_grdadd" taborder="13" text="신규추가" class="btn2" position="absolute 962 73 1026 92" anchor="top right" onclick="group3_btn_grdadd_onclick"/>
  110. <Shape id="line00" class="line_1" position="absolute 0 64 284 70" anchor="default"/>
  111. <Shape id="line01" class="line_1" position="absolute 0 63 284 69" anchor="default"/>
  112. <Shape id="line02" class="line_1" position="absolute 0 65 284 71" anchor="default"/>
  113. <Shape id="line03" class="line_1" position="absolute 287 64 1190 70" anchor="left top right"/>
  114. <Shape id="line04" class="line_1" position="absolute 287 63 1190 69" anchor="left top right"/>
  115. <Shape id="line05" class="line_1" position="absolute 287 65 1190 71" anchor="left top right"/>
  116. </Layout>
  117. </Layouts>
  118. </Div>
  119. <Div position="absolute 8 63 1191 90" id="group4" scrollbars="autoboth" anchor="left top right">
  120. <Layouts>
  121. <Layout>
  122. <Button position="absolute 1041 5 1121 27" id="btn_cle" class="btn4" visible="false" text="새로고침" anchor="top right" onclick="group4_btn_cle_onclick"/>
  123. <Button position="absolute 1124 5 1180 27" id="btn_save" class="btn4" text="저장" anchor="top right" onclick="group4_btn_save_onclick"/>
  124. </Layout>
  125. </Layouts>
  126. </Div>
  127. <Static id="caption19" text="용량분할관리" class="tit_1" position="absolute 0 0 120 25" onclick="caption19_onclick"/>
  128. <Shape id="Shape00" position="absolute 3 776 1189 782" anchor="left right bottom"/>
  129. <Div id="group2" taborder="3" class="div_SA2" position="absolute 0 25 1189 65" anchor="left top right">
  130. <Layouts>
  131. <Layout>
  132. <Static id="caption10" text="약품코드 :" class="search_name" position="absolute 8 12 103 29" anchor="default"/>
  133. <Button id="btn_sea" taborder="7" text="조회" class="btn1" position="absolute 1111 10 1167 32" anchor="top right" onclick="group2_btn_sea_onclick"/>
  134. <Edit id="ipt_srchdrugcd" taborder="8" class="input_search" position="absolute 99 10 239 29" anchor="default" onkeydown="group2_ipt_srchdrugcd_onkeydown"/>
  135. <Static id="caption5" text="약품명 :" class="search_name" position="absolute 302 13 397 30" anchor="default"/>
  136. <Edit id="ipt_srchdrugnm" taborder="9" class="input_search" position="absolute 381 10 847 29" anchor="default"/>
  137. <Button id="btn_srch" taborder="10" class="icon_search" position="absolute 241 11 257 27" onclick="group2_btn_srch_onclick"/>
  138. </Layout>
  139. </Layouts>
  140. </Div>
  141. </Layout>
  142. </Layouts>
  143. <Objects>
  144. <Dataset id="ds_grd_voldruglist" firefirstcount="0" firenextcount="0" useclientlayout="false" enableevent="true" loadkeymode="keep" reversesubsum="false" updatecontrol="true" oncolumnchanged="ds_grd_voldruglist_oncolumnchanged">
  145. <ColumnInfo>
  146. <Column id="divcd" type="STRING"/>
  147. <Column id="voldivflag" type="STRING"/>
  148. <Column id="voldivcd" type="STRING"/>
  149. <Column id="drugcd" type="STRING"/>
  150. <Column id="drugnm" type="STRING"/>
  151. <Column id="seqno" type="STRING"/>
  152. <Column id="basevol" type="STRING"/>
  153. <Column id="basevolunit" type="STRING"/>
  154. <Column id="nextvol" type="STRING"/>
  155. <Column id="instcd" type="STRING"/>
  156. <Column id="saveflag" type="STRING"/>
  157. </ColumnInfo>
  158. </Dataset>
  159. <Dataset id="ds_grd_exptdeptlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  160. <ColumnInfo>
  161. <Column id="exptorddeptcd" type="STRING"/>
  162. <Column id="exptorddeptnm" type="STRING"/>
  163. <Column id="instcd" type="STRING"/>
  164. </ColumnInfo>
  165. </Dataset>
  166. <Dataset id="ds_combo_divcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  167. <ColumnInfo>
  168. <Column id="label" type="STRING" size="256"/>
  169. <Column id="value" type="STRING" size="256"/>
  170. </ColumnInfo>
  171. <Rows>
  172. <Row>
  173. <Col id="label">항암</Col>
  174. <Col id="value">A</Col>
  175. </Row>
  176. <Row>
  177. <Col id="label">일반</Col>
  178. <Col id="value">N</Col>
  179. </Row>
  180. </Rows>
  181. </Dataset>
  182. <Dataset id="ds_A0599" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  183. <ColumnInfo>
  184. <Column id="cdnm" type="STRING"/>
  185. <Column id="cdid" type="STRING"/>
  186. </ColumnInfo>
  187. </Dataset>
  188. <Dataset id="ds_send_srchinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  189. <ColumnInfo>
  190. <Column id="srchvoldivflag" type="STRING" size="256"/>
  191. <Column id="srchvoldivcd" type="STRING" size="256"/>
  192. <Column id="srchdrug" type="STRING" size="256"/>
  193. <Column id="srchdrugnm" type="STRING" size="256"/>
  194. </ColumnInfo>
  195. <Rows>
  196. <Row>
  197. <Col id="srchvoldivflag"/>
  198. <Col id="srchvoldivcd"/>
  199. <Col id="srchdrug"/>
  200. <Col id="srchdrugnm"/>
  201. </Row>
  202. </Rows>
  203. </Dataset>
  204. <Dataset id="ds_temp_receivedata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  205. <ColumnInfo>
  206. <Column id="receiveref" type="STRING" size="256"/>
  207. <Column id="drugcd" type="STRING" size="256"/>
  208. <Column id="drugnm" type="STRING" size="256"/>
  209. <Column id="comcd" type="STRING" size="256"/>
  210. <Column id="receivedrugcd" type="STRING" size="256"/>
  211. </ColumnInfo>
  212. <Rows>
  213. <Row>
  214. <Col id="receiveref">ds_temp_receivedata</Col>
  215. <Col id="drugcd"/>
  216. <Col id="drugnm"/>
  217. <Col id="comcd"/>
  218. <Col id="receivedrugcd">drugcd</Col>
  219. </Row>
  220. </Rows>
  221. </Dataset>
  222. <Dataset id="ds_send_req_exptdeptdata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  223. <Dataset id="ds_send_req_voldrugdata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  224. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  225. <Dataset id="ds_init_deptitem" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  226. <ColumnInfo>
  227. <Column id="deptnm" type="STRING" size="256"/>
  228. <Column id="deptcd" type="STRING" size="256"/>
  229. </ColumnInfo>
  230. <Rows>
  231. <Row/>
  232. </Rows>
  233. </Dataset>
  234. <Dataset id="ds_init_drugitem" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  235. <ColumnInfo>
  236. <Column id="drugcd" type="STRING" size="256"/>
  237. <Column id="drugnm" type="STRING" size="256"/>
  238. </ColumnInfo>
  239. <Rows>
  240. <Row>
  241. <Col id="drugcd"/>
  242. <Col id="drugnm"/>
  243. </Row>
  244. </Rows>
  245. </Dataset>
  246. </Objects>
  247. <Bind>
  248. <BindItem id="item0" compid="group2.ipt_srchdrugcd" propid="value" datasetid="ds_send_srchinfo" columnid="srchdrug"/>
  249. <BindItem id="item1" compid="group2.ipt_srchdrugnm" propid="value" datasetid="ds_send_srchinfo" columnid="srchdrugnm"/>
  250. </Bind>
  251. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  252. * System Name :
  253. * Job Name :
  254. * Creator :
  255. * Make Date : 2015-11-05
  256. * Description :
  257. *---------------------------------------------------------------------------------------
  258. * Modify Date Modifier Modify Description
  259. *---------------------------------------------------------------------------------------
  260. * 2015-11-05 Live Converter TF->XP
  261. *
  262. *---------------------------------------------------------------------------------------
  263. ****************************************************************************************/
  264. //=======================================================================================
  265. // Lib Include
  266. //---------------------------------------------------------------------------------------
  267. include "com_commonxp::comm_main.xjs"
  268. //=======================================================================================
  269. // Global Form Variable
  270. //---------------------------------------------------------------------------------------
  271. var arErrorCode = new HashArray();
  272. function SMADB02600_onload(obj:Form, e:LoadEventInfo)
  273. {
  274. frmf_initForm(obj); // 폼 초기화
  275. fView();
  276. // zbcfGetCodeList( new Array("A0006", "P0096"), new Array("/root/init/cmbinfo/spcldrug", "/root/init/cmbinfo/efcycls") );
  277. var arrParam = [{dsNm: "ds_A0599", cdGrpId: "A0599"} ]
  278. appf_getCodeList(arrParam);
  279. grdf_setGridSort(group3.grd_exptdeptlist); // 그리드 소트만
  280. grdf_setRowTypeIcon(group3.grd_exptdeptlist, 0); // 그리드 상태 표시
  281. grdf_setGridSort(group3.grd_voldruglist); // 그리드 소트만
  282. grdf_setRowTypeIcon(group3.grd_voldruglist, 0); // 그리드 상태 표시
  283. //sysf_trace(ds_A0599.saveXML());
  284. }
  285. function fView(){
  286. var oParam = {};
  287. oParam.id = "TRADB02601";
  288. oParam.service = "pharmacybaseapp.VolDiv";
  289. oParam.method = "reqGetVolDivList";
  290. oParam.inds = "";
  291. oParam.outds = "ds_grd_exptdeptlist=exptdeptitem";
  292. oParam.async = false;
  293. // oParam.callback = "cf_TRADB02601";
  294. tranf_submit(oParam);
  295. var oParam = {};
  296. oParam.id = "TRADB02602";
  297. oParam.service = "pharmacybaseapp.VolDiv";
  298. oParam.method = "reqGetVolDrugList";
  299. oParam.inds = "req=ds_send_srchinfo";
  300. oParam.outds = "ds_grd_voldruglist=voldrugitem";
  301. oParam.async = false;
  302. oParam.callback = "cf_TRADB02602";
  303. tranf_submit(oParam);
  304. }
  305. function cf_TRADB02602(sSvcId, nErrorCode, sErrorMsg) {
  306. if(nErrorCode < 0) return;
  307. ds_grd_voldruglist.addColumn("saveflag","string");
  308. }
  309. function roundrect1_onclick(obj:Shape, e:ClickEventInfo)
  310. {
  311. }
  312. function caption19_onclick(obj:Static, e:ClickEventInfo)
  313. {
  314. }
  315. function group3_btn_grdcopy1_onclick(obj:Button, e:ClickEventInfo)
  316. {
  317. var copyRow = ds_grd_exptdeptlist.rowposition;
  318. var addRow = ds_grd_exptdeptlist.addRow();
  319. ds_grd_exptdeptlist.copyRow(addRow,ds_grd_exptdeptlist,copyRow);
  320. }
  321. function group3_btn_grdcopy3_onclick(obj:Button, e:ClickEventInfo)
  322. {
  323. var addRow = ds_grd_voldruglist.rowposition+1;
  324. ds_grd_voldruglist.insertRow(addRow);
  325. ds_grd_voldruglist.copyRow(addRow,ds_grd_voldruglist,addRow-1);
  326. }
  327. function group3_btn_grdadd1_onclick(obj:Button, e:ClickEventInfo)
  328. {
  329. var RowCnt = ds_grd_exptdeptlist.rowcount;
  330. ds_grd_exptdeptlist.insertRow(RowCnt);
  331. }
  332. function group3_btn_grdadd3_onclick(obj:Button, e:ClickEventInfo)
  333. {
  334. var voldivflag = ds_grd_voldruglist.getColumn(ds_grd_voldruglist.rowposition, "voldivflag");
  335. var voldivcd = ds_grd_voldruglist.getColumn(ds_grd_voldruglist.rowposition, "voldivcd");
  336. var RowCnt = ds_grd_voldruglist.rowposition+1;
  337. var iRow = ds_grd_voldruglist.insertRow(RowCnt);
  338. ds_grd_voldruglist.setColumn(iRow, "voldivflag", voldivflag);
  339. ds_grd_voldruglist.setColumn(iRow, "voldivcd", voldivcd);
  340. }
  341. function group3_btn_grddel1_onclick(obj:Button, e:ClickEventInfo)
  342. {
  343. var cRow = ds_grd_exptdeptlist.rowposition;
  344. if( ds_grd_exptdeptlist.getRowType(cRow) == 2 ){
  345. ds_grd_exptdeptlist.deleteRow(cRow);
  346. } else {
  347. grdf_setStatus(group3.grd_exptdeptlist, "D", grdf_getSelectedRows(group3.grd_exptdeptlist));
  348. }
  349. }
  350. function group3_btn_grddel3_onclick(obj:Button, e:ClickEventInfo)
  351. {
  352. var cnt = 1;
  353. var cRow = ds_grd_voldruglist.rowposition;
  354. if( ds_grd_voldruglist.getRowType(cRow) == 2 ){
  355. ds_grd_voldruglist.deleteRow(cRow);
  356. } else {
  357. grdf_setStatus(group3.grd_voldruglist, "D", grdf_getSelectedRows(group3.grd_voldruglist));
  358. }
  359. // 삭제된 행을 제외한 나머지에 대하여 적용순서 변경
  360. // 순차적으로 증가
  361. for(var i = 0; i < ds_grd_voldruglist.rowcount; i++) {
  362. // 선택한 행의 같은 관리 코드인 항목에 한해서..
  363. if(ds_grd_voldruglist.getColumn(ds_grd_voldruglist.rowposition, "voldivcd") == ds_grd_voldruglist.getColumn(i, "voldivcd")) {
  364. if(ds_grd_voldruglist.getRowType(i) != 8){
  365. ds_grd_voldruglist.setColumn(i, "seqno", cnt);
  366. cnt++;
  367. }
  368. }
  369. }
  370. }
  371. function group3_btn_grdadd_onclick(obj:Button, e:ClickEventInfo)
  372. {
  373. var RowCnt = ds_grd_voldruglist.rowcount;
  374. ds_grd_voldruglist.insertRow(RowCnt);
  375. ds_grd_voldruglist.setColumn(RowCnt, "saveflag", "N");
  376. }
  377. function group4_btn_save_onclick(obj:Button, e:ClickEventInfo)
  378. {
  379. ds_send_req_exptdeptdata.clear();
  380. ds_send_req_voldrugdata.clear();
  381. var updtdata1 = grdf_getGridUpdateData(group3.grd_exptdeptlist, "all");
  382. grdf_setStatusColumn(updtdata1, "m");
  383. ds_send_req_exptdeptdata.copyData(updtdata1,true);
  384. //var updtdata2 = getGridUpdateData(grd_voldivlist);
  385. var updtdata3 = grdf_getGridUpdateData(group3.grd_voldruglist, "all");
  386. grdf_setStatusColumn(updtdata3, "m");
  387. ds_send_req_voldrugdata.copyData(updtdata3,true);
  388. var sSaveFlag = "";
  389. //if (updtdata1 == "" && updtdata2 == "" && updtdata3 == "") {
  390. if (ds_send_req_exptdeptdata.rowcount < 1 && ds_send_req_voldrugdata.rowcount < 1) {
  391. sysf_messageBox("변경된 데이터가","I004");
  392. return;
  393. }
  394. for(var iRow = 0 ; iRow < ds_grd_voldruglist.rowcount ; iRow++) {
  395. sSaveFlag = ds_grd_voldruglist.getColumn(iRow,"saveflag");
  396. if(sSaveFlag == "N" || sSaveFlag == "M") {
  397. if(utlf_isNull(ds_grd_voldruglist.getColumn(iRow,"basevolunit"))) {
  398. sysf_messageBox("[" + ds_grd_voldruglist.getColumn(iRow,"drugcd") + "] " + "기준단위는 ","I003");
  399. return;
  400. }
  401. }
  402. }
  403. // 제외진료과 필수사항체크
  404. // if (checkKeyColumn("grd_exptdeptlist") == false) return;
  405. if(!frmf_chkMdtGrid(group3.grd_exptdeptlist, [1,2], ["과코드","진료과명"])) return;
  406. // 관리구분코드 필수사항체크
  407. //if (checkKeyColumn("grd_voldivlist") == false) return;
  408. // 분할코드내역 필수사항체크
  409. // if (checkKeyColumn("grd_voldruglist") == false) return;
  410. if(!frmf_chkMdtGrid(group3.grd_voldruglist, [3,4,5], ["관리코드","약품코드","약품명"])) return;
  411. dsf_setTypeFormat(ds_send_req_voldrugdata, "seqno:INT^basevol:FLOAT^nextvol:FLOAT");
  412. var oParam = {};
  413. oParam.id = "TXADB02601";
  414. oParam.service = "pharmacybaseapp.VolDiv";
  415. oParam.method = "reqExeVolDiv";
  416. oParam.inds = "exptdeptdata=ds_send_req_exptdeptdata voldrugdata=ds_send_req_voldrugdata";
  417. oParam.outds = "ds_hidden=item";
  418. oParam.async = false;
  419. oParam.callback = "cf_TXADB02601";
  420. tranf_submit(oParam);
  421. }
  422. function cf_TXADB02601(sSvcId, nErrorCode, sErrorMsg) {
  423. if(nErrorCode < 0) return;
  424. fView();
  425. }
  426. function group4_btn_cle_onclick(obj:Button, e:ClickEventInfo)
  427. {
  428. fView();
  429. }
  430. function group2_btn_sea_onclick(obj:Button, e:ClickEventInfo)
  431. {
  432. fView();
  433. }
  434. function group2_ipt_srchdrugcd_onkeydown(obj:Edit, e:KeyEventInfo)
  435. {
  436. if(e.keycode == 13) {
  437. obj.updateToDataset();
  438. fView();
  439. }
  440. }
  441. function group2_btn_srch_onclick(obj:Button, e:ClickEventInfo)
  442. {
  443. fOpenDrugSrch();
  444. }
  445. function fOpenDrugSrch() {
  446. // 약품코드 검색
  447. var objArg = new Object();
  448. objArg.arg_ds_temp_receivedata = ds_temp_receivedata; // XP 전환시 사용될 아규먼트
  449. frmf_modal("SPADB60100", "SPADB60100", objArg, null, 0, 100, 150, null, null, null, null, null, "M");
  450. var drugcode = ds_temp_receivedata.getColumn(0,"drugcd");
  451. // 약품명 검색
  452. if (!utlf_isNull(drugcode)) {
  453. ds_send_srchinfo.setColumn(0,"srchdrug",drugcode);
  454. }
  455. }
  456. function group3_grd_exptdeptlist_onkeydown(obj:Grid, e:KeyEventInfo)
  457. {
  458. var row = obj.currentrow;
  459. var col = obj.currentcol;
  460. var srchdeptcd = "";
  461. if(e.keycode == 13) {
  462. obj.updateToDataset();
  463. srchdeptcd = ds_grd_exptdeptlist.getColumn(row,"exptorddeptcd");
  464. if (utlf_isNull(srchdeptcd)) {
  465. sysf_messageBox("제외진료과를", "C001");
  466. }
  467. dsf_createDsRow("ds_req", [
  468. {col:"srchdeptcd", type:"STRING", size:256, val:srchdeptcd}
  469. ]);
  470. var oParam = {};
  471. oParam.id = "TRADB02603";
  472. oParam.service = "pharmacybaseapp.VolDiv";
  473. oParam.method = "reqGetDeptNm";
  474. oParam.inds = "req=ds_req";
  475. oParam.outds = "ds_init_deptitem=deptitem";
  476. oParam.async = false;
  477. //oParam.callback = "cf_TRADB02603";
  478. tranf_submit(oParam);
  479. ds_grd_exptdeptlist.setColumn(row,"exptorddeptcd" ,ds_init_deptitem.getColumn(0,"deptcd") );
  480. ds_grd_exptdeptlist.setColumn(row,"exptorddeptnm" ,ds_init_deptitem.getColumn(0,"deptnm" ));
  481. ds_grd_exptdeptlist.setColumn(row,"instcd" ,ds_init_deptitem.getColumn(0,"instcd" ));
  482. }
  483. }
  484. function group3_grd_exptdeptlist_onexpandup(obj:Grid, e:GridMouseEventInfo)
  485. {
  486. var row = e.row;
  487. var search_condition = "deptnm";
  488. var search_term = "";
  489. // var receive_deptcd_path = "ds_init_deptitem_deptcd";
  490. // var receive_deptnm_path = "ds_init_deptitem_deptnm";
  491. var standard_yn = "orduseyn";
  492. var ord_deptflag = ""; //D
  493. ds_init_deptitem.setColumn(0,"deptcd","");
  494. ds_init_deptitem.setColumn(0,"deptnm","");
  495. // zbcfOpenInstDeptCodeList(search_condition, search_term, receive_deptcd_path, receive_deptnm_path, standard_yn, ord_deptflag);
  496. var rtnObj = appf_openInstDeptCodeList(search_condition, search_term, standard_yn, ord_deptflag, "deptcd depthngnm");
  497. dsf_makeValue(ds_init_deptitem,"deptcd","string",rtnObj.deptcd);
  498. dsf_makeValue(ds_init_deptitem,"deptnm","string",rtnObj.depthngnm);
  499. if (!utlf_isNull(ds_init_deptitem.getColumn(0,"deptcd"))) {
  500. ds_grd_exptdeptlist.setColumn(row,"exptorddeptcd",ds_init_deptitem.getColumn(0,"deptcd"));
  501. ds_grd_exptdeptlist.setColumn(row,"exptorddeptnm",ds_init_deptitem.getColumn(0,"deptnm"));
  502. }
  503. }
  504. function group3_grd_voldruglist_onkeydown(obj:Grid, e:KeyEventInfo)
  505. {
  506. var grdrow = obj.currentrow;
  507. var grdcol = obj.currentcol;
  508. var srchdrugcd = "";
  509. if(e.keycode == 13) {
  510. if( grdcol == obj.getBindCellIndex("body","drugcd") ) {
  511. srchdrugcd = ds_grd_voldruglist.getColumn(grdrow,"drugcd");
  512. if (utlf_isNull(srchdrugcd)) {
  513. sysf_messageBox("약품코드를", "C001");
  514. }
  515. dsf_createDsRow("ds_req", [
  516. {col:"srchdrugcd", type:"STRING", size:256, val:srchdrugcd.toUpperCase()}
  517. ]);
  518. var oParam = {};
  519. oParam.id = "TRADB02604";
  520. oParam.service = "pharmacybaseapp.VolDiv";
  521. oParam.method = "reqGetDrugNm";
  522. oParam.inds = "req=ds_req";
  523. oParam.outds = "ds_init_drugitem=drugitem";
  524. oParam.async = false;
  525. //oParam.callback = "cf_TRADB02604";
  526. tranf_submit(oParam);
  527. ds_grd_voldruglist.setColumn(grdrow,"drugcd",ds_init_drugitem.getColumn(0,"drugcd"));
  528. ds_grd_voldruglist.setColumn(grdrow,"drugnm",ds_init_drugitem.getColumn(0,"drugnm"));
  529. }
  530. }
  531. if(e.keycode == 46){
  532. frmf_inputEnterKey("group3.btn_grddel3", "onclick", new ClickEventInfo);
  533. }
  534. }
  535. function group3_grd_voldruglist_onexpandup(obj:Grid, e:GridMouseEventInfo)
  536. {
  537. var row = e.row;
  538. var drugcode = null;
  539. var objArg = new Object();
  540. objArg.arg_ds_temp_receivedata = ds_temp_receivedata; // XP 전환시 사용될 아규먼트
  541. frmf_modal("SPADB60100", "SPADB60100", objArg, null, 0, 100, 150, null, null, null, null, null, "M");
  542. drugcode = ds_temp_receivedata.getColumn(0,"drugcd");
  543. // 약품명 검색
  544. if (!utlf_isNull(drugcode)) {
  545. ds_grd_voldruglist.setColumn(row,"drugcd",drugcode);
  546. dsf_createDsRow("ds_req", [
  547. {col:"srchdrugcd", type:"STRING", size:256, val:drugcode}
  548. ]);
  549. var oParam = {};
  550. oParam.id = "TRADB02604";
  551. oParam.service = "pharmacybaseapp.VolDiv";
  552. oParam.method = "reqGetDrugNm";
  553. oParam.inds = "req=ds_req";
  554. oParam.outds = "ds_init_drugitem=drugitem";
  555. oParam.async = false;
  556. oParam.callback = "cf_TRADB02604";
  557. tranf_submit(oParam);
  558. if(arErrorCode.pop("TRADB02604") > -1){
  559. var n_drugcd = ds_init_drugitem.getColumn(0,"drugcd");
  560. var n_drugnm = ds_init_drugitem.getColumn(0,"drugnm");
  561. // var o_drugcd = ds_grd_voldruglist.getColumn(row,"drugcd");
  562. // var o_drugnm = ds_grd_voldruglist.getColumn(row,"drugnm");
  563. ds_grd_voldruglist.setColumn(row,"drugcd" , n_drugcd);
  564. ds_grd_voldruglist.setColumn(row,"drugnm" , n_drugnm);
  565. ds_temp_receivedata.setColumn(0,"drugcd","");
  566. ds_temp_receivedata.setColumn(0,"drugnm","");
  567. ds_temp_receivedata.setColumn(0,"comcd","");
  568. }
  569. }
  570. }
  571. function cf_TRADB02604(sSvcId, nErrorCode, sErrorMsg) {
  572. arErrorCode.push(sSvcId, nErrorCode);
  573. }
  574. function ds_grd_voldruglist_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  575. {
  576. var sSaveflag = obj.getColumn(e.row,"saveflag");
  577. var sVoldivflag = obj.getColumn(e.row,"voldivflag");
  578. var sVoldivcd = obj.getColumn(e.row,"voldivcd");
  579. var sBaseVolUnit = obj.getColumn(e.row,"basevolunit");
  580. if(e.columnid == "basevolunit") {
  581. for(var iRow = 0 ; iRow < obj.rowcount ; iRow++) {
  582. if(obj.getColumn(iRow,"voldivflag") == sVoldivflag
  583. && obj.getColumn(iRow,"voldivcd") == sVoldivcd) {
  584. obj.setColumn(iRow,"basevolunit", sBaseVolUnit);
  585. // if(model.getValue("/root/main/voldruglist/voldrugitem["+ iRow +"]/saveflag") == "N"
  586. // || model.getValue("/root/main/voldruglist/voldrugitem["+ iRow +"]/saveflag") == "M") {
  587. // grd_voldruglist.rowStatus(iRow) = 1;
  588. // } else {
  589. // grd_voldruglist.rowStatus(iRow) = 2;
  590. // }
  591. }
  592. }
  593. }
  594. // if((sSaveflag == "N") || (sSaveflag == "M")) {
  595. // grdf_setStatus(group3.grd_voldruglist, "I", [e.row]);
  596. // }
  597. }
  598. ]]></Script>
  599. </Form>
  600. </FDL>