SMADB00200_성분코드관리.xfdl 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMADB00200" position="absolute 0 0 1174 680" titletext="성분코드관리" oninit="SMADB00200_oninit" onload="SMADB00200_onload">
  5. <Layouts>
  6. <Layout>
  7. <Button id="btn_save" taborder="1" text="저장" class="btn4" position="absolute 1114 2 1170 24" onclick="btn_save_onclick" anchor="top right"/>
  8. <Static id="caption19" text="성분코드관리" class="tit_1" position="absolute 0 0 120 25"/>
  9. <Div id="group2" taborder="9" style="align:center top;" class="div_SA" position="absolute 0 25 1170 65" anchor="left top right">
  10. <Layouts>
  11. <Layout width="576" height="42"/>
  12. </Layouts>
  13. </Div>
  14. <Button id="button3" taborder="10" text="성분조회" onclick="grp_sea_button3_onclick" class="btn1" position="absolute 1080 34 1160 56" anchor="top right"/>
  15. <Static id="caption3" text="코드 :" class="search_name" position="absolute 32 36 78 56"/>
  16. <Edit id="inp_codecd" taborder="11" position="absolute 79 35 336 56" class="input_search" onkeydown="in_code_onkeydown"/>
  17. <Static id="caption00" text="명칭 :" class="search_name" position="absolute 392 36 438 56"/>
  18. <Edit id="inp_codenm" taborder="12" position="absolute 439 35 912 56" class="input_search" onkeydown="in_cdnm_onkeydown"/>
  19. <Button id="button1" taborder="13" text="엑셀" onclick="group3_button1_onclick" class="btn7" position="absolute 953 71 1004 93" anchor="top right"/>
  20. <Button id="button50" taborder="14" text="행복사" onclick="group3_button50_onclick" class="btn2" position="absolute 1061 71 1114 93" anchor="top right"/>
  21. <Button id="btn_grdadd" taborder="15" text="행추가" onclick="group3_btn_grdadd_onclick" class="btn2" position="absolute 1006 71 1059 93" anchor="top right"/>
  22. <Button id="btn_grddel" taborder="16" text="행삭제" onclick="group3_btn_grddel_onclick" class="btn2" position="absolute 1116 71 1169 93" anchor="top right"/>
  23. <Static id="caption10" text="성분코드정보" class="tit_2" position="absolute 0 77 106 96"/>
  24. <Shape id="line2" linetype="horizontal" class="line_1" position="absolute 0 92 1170 98" anchor="left top right"/>
  25. <Grid id="grd_comlist" taborder="17" binddataset="ds_grd_comlist" useinputpanel="false" cellsizingtype="both" treeusecheckbox="false" treeuseimage="false" treeinitstatus="expand,null" oncelldblclick="group3_grd_comlist_oncelldblclick" position="absolute 0 98 1170 676" anchor="all" extendsizetype="row" autoenter="select" autofittype="col">
  26. <Formats>
  27. <Format id="default">
  28. <Columns>
  29. <Column size="25" band="left"/>
  30. <Column size="143"/>
  31. <Column size="78"/>
  32. <Column size="350"/>
  33. <Column size="56"/>
  34. <Column size="83"/>
  35. <Column size="61"/>
  36. <Column size="74"/>
  37. <Column size="90"/>
  38. <Column size="80"/>
  39. <Column size="51"/>
  40. <Column size="66"/>
  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="DDD단위"/>
  52. <Cell col="5" text="성인최대량"/>
  53. <Cell col="6" text="소아kg당"/>
  54. <Cell col="7" text="소아최대량"/>
  55. <Cell col="8" text="소아금기(일수)"/>
  56. <Cell col="9" text="소아연령금기"/>
  57. <Cell col="10" text="레벨"/>
  58. <Cell col="11" text="약품갯수"/>
  59. </Band>
  60. <Band id="body">
  61. <Cell celltype="head"/>
  62. <Cell col="1" displaytype="tree" edittype="normal" editfilter="upper,number,char" text="bind:comcd" editimemode="none" treestartlevel="1" treelevel="bind:comlevel"/>
  63. <Cell col="2" displaytype="text" edittype="text" text="bind:comexcd"/>
  64. <Cell col="3" displaytype="text" edittype="text" text="bind:comnm"/>
  65. <Cell col="4" displaytype="text" edittype="text" text="bind:dddunit"/>
  66. <Cell col="5" displaytype="number" edittype="text" text="bind:ddd" mask="######,####"/>
  67. <Cell col="6" displaytype="number" edittype="text" text="bind:dddkg" mask="######,####"/>
  68. <Cell col="7" displaytype="number" edittype="text" text="bind:dddchild" mask="######,####"/>
  69. <Cell col="8" displaytype="normal" edittype="normal" editfilter="digit" text="bind:childdayno" editlimit="10"/>
  70. <Cell col="9" displaytype="normal" edittype="normal" editfilter="digit" text="bind:childage" editlimit="4"/>
  71. <Cell col="10" displaytype="normal" edittype="normal" editfilter="digit" text="bind:comlevel" editlimit="4"/>
  72. <Cell col="11" displaytype="normal" edittype="none" editfilter="digit" text="bind:drugcdcnt" editlimit="4"/>
  73. </Band>
  74. </Format>
  75. </Formats>
  76. </Grid>
  77. <Div id="switch1" taborder="18" style="background:white;border:1 solid #808080ff ;" visible="false" position="absolute 550 199 1035 439" tabindex="0">
  78. <Layouts>
  79. <Layout>
  80. <Button id="button" taborder="4" text="닫기" onclick="group3_switch1_button_onclick" class="btn4" position="absolute 415 210 471 232" anchor="default"/>
  81. <Static id="caption6" position="absolute 195 9 470 39" anchor="default"/>
  82. <Static id="caption4" position="absolute 75 9 135 39" anchor="default"/>
  83. <Static id="caption3" text="명 칭" class="cell_1" position="absolute 145 13 190 36" anchor="default"/>
  84. <Static id="caption9" text="성분코드" class="cell_1" position="absolute 10 13 70 36" anchor="default"/>
  85. <Grid id="grd_druglist" taborder="5" binddataset="ds_grd_druglist" useinputpanel="false" autofittype="col" position="absolute 10 42 475 207" anchor="default">
  86. <Formats>
  87. <Format id="default">
  88. <Columns>
  89. <Column size="117"/>
  90. <Column size="324"/>
  91. </Columns>
  92. <Rows>
  93. <Row size="24" band="head"/>
  94. <Row size="24"/>
  95. </Rows>
  96. <Band id="head">
  97. <Cell text="약품코드"/>
  98. <Cell col="1" text="약품명"/>
  99. </Band>
  100. <Band id="body">
  101. <Cell text="bind:drugcd"/>
  102. <Cell col="1" text="bind:drugnm"/>
  103. </Band>
  104. </Format>
  105. </Formats>
  106. </Grid>
  107. <Shape id="line2" class="line_1" position="absolute 10 36 475 42" anchor="left top right"/>
  108. <Shape id="line00" class="line_1" position="absolute 10 37 475 43" anchor="left top right"/>
  109. <Shape id="line01" class="line_1" position="absolute 10 38 475 44" anchor="left top right"/>
  110. </Layout>
  111. </Layouts>
  112. </Div>
  113. <Shape id="line00" class="line_1" position="absolute 0 93 1170 99" anchor="left top right"/>
  114. <Shape id="line01" class="line_1" position="absolute 0 94 1170 100" anchor="left top right"/>
  115. </Layout>
  116. </Layouts>
  117. <Objects>
  118. <Dataset id="ds_grd_comlist" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  119. <ColumnInfo>
  120. <Column id="comcd" type="STRING"/>
  121. <Column id="comexcd" type="STRING"/>
  122. <Column id="comnm" type="STRING"/>
  123. <Column id="dddunit" type="STRING"/>
  124. <Column id="ddd" type="STRING"/>
  125. <Column id="dddkg" type="STRING"/>
  126. <Column id="dddchild" type="STRING"/>
  127. <Column id="childdayno" type="STRING"/>
  128. <Column id="childage" type="STRING"/>
  129. <Column id="comlevel" type="STRING"/>
  130. <Column id="drugcdcnt" type="STRING"/>
  131. </ColumnInfo>
  132. <Rows>
  133. <Row/>
  134. </Rows>
  135. </Dataset>
  136. <Dataset id="ds_grd_druglist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  137. <ColumnInfo>
  138. <Column id="drugcd" type="STRING"/>
  139. <Column id="drugnm" type="STRING"/>
  140. </ColumnInfo>
  141. </Dataset>
  142. <Dataset id="ds_send_searchItem" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  143. <ColumnInfo>
  144. <Column id="srchcomcd" type="STRING" size="256"/>
  145. <Column id="srchcomnm" type="STRING" size="256"/>
  146. </ColumnInfo>
  147. <Rows>
  148. <Row/>
  149. </Rows>
  150. </Dataset>
  151. <Dataset id="ds_send_req" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  152. <Dataset id="ds_send_druglistreq" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  153. <ColumnInfo>
  154. <Column id="srchcomcd" type="STRING" size="256"/>
  155. <Column id="srchcomexcd" type="STRING" size="256"/>
  156. <Column id="srchcomnm" type="STRING" size="256"/>
  157. </ColumnInfo>
  158. <Rows>
  159. <Row/>
  160. </Rows>
  161. </Dataset>
  162. <Dataset id="ds_temp" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  163. </Objects>
  164. <Bind/>
  165. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  166. * System Name :
  167. * Job Name :
  168. * Creator :
  169. * Make Date : 2015-05-01
  170. * Description :
  171. *---------------------------------------------------------------------------------------
  172. * Modify Date Modifier Modify Description
  173. *---------------------------------------------------------------------------------------
  174. * 2015-05-01 Live Converter TF->XP
  175. *
  176. *---------------------------------------------------------------------------------------
  177. ****************************************************************************************/
  178. include "com_commonxp::comm_main.xjs";
  179. var arErrorCode = new HashArray();
  180. /******************************************************************
  181. * Argument :
  182. * Description : 초기화
  183. ******************************************************************/
  184. function SMADB00200_oninit(obj:Form, e:InitEventInfo)
  185. {
  186. frmf_initForm(obj);
  187. }
  188. function SMADB00200_onload(obj:Form, e:LoadEventInfo)
  189. {
  190. grdf_setRowTypeIcon(grd_comlist, 0);
  191. //권한관리
  192. btn_save.enable = frmf_checkAuth("X"); //저장
  193. ds_grd_comlist.clearData();
  194. inp_codecd.setFocus();
  195. }
  196. /******************************************************************
  197. * Argument :
  198. * Description : 조회
  199. ******************************************************************/
  200. function grp_sea_button3_onclick(obj:Button, e:ClickEventInfo)
  201. {
  202. var getCode = inp_codecd.text;
  203. var getCdnm = inp_codenm.text;
  204. ds_send_searchItem.setColumn(0, "srchcomcd", getCode);
  205. ds_send_searchItem.setColumn(0, "srchcomnm", getCdnm);
  206. var oParam = {};
  207. oParam.id = "TRADB00201";
  208. oParam.service = "pharmacybaseapp.ComCode";
  209. oParam.method = "reqGetComList";
  210. oParam.inds = "req=ds_send_searchItem";
  211. oParam.outds = "ds_grd_comlist=item";
  212. oParam.async = false;
  213. //oParam.callback = "cf_TRADB00201";
  214. tranf_submit(oParam);
  215. }
  216. /******************************************************************
  217. * Argument :
  218. * Description : 코드 조회
  219. ******************************************************************/
  220. function in_code_onkeydown(obj:Edit, e:KeyEventInfo)
  221. {
  222. if( e.keycode == 13 ){
  223. grp_sea_button3_onclick();
  224. }
  225. }
  226. /******************************************************************
  227. * Argument :
  228. * Description : 명칭 조회
  229. ******************************************************************/
  230. function in_cdnm_onkeydown(obj:Edit, e:KeyEventInfo)
  231. {
  232. if( e.keycode == 13 ){
  233. grp_sea_button3_onclick();
  234. }
  235. }
  236. /******************************************************************
  237. * Argument :
  238. * Description : Excel
  239. ******************************************************************/
  240. function group3_button1_onclick(obj:Button, e:ClickEventInfo)
  241. {
  242. if( ds_grd_comlist.rowcount > 0 ){
  243. grdf_exportExcel(grd_comlist, "성분코드관리", "성분코드관리", false, "", "user", false);
  244. } else {
  245. sysf_messageBox("조회된 데이터가 ", "I004");
  246. return;
  247. }
  248. }
  249. /******************************************************************
  250. * Argument :
  251. * Description : 행추가
  252. ******************************************************************/
  253. function group3_btn_grdadd_onclick(obj:Button, e:ClickEventInfo)
  254. {
  255. var aRow = ds_grd_comlist.addRow();
  256. ds_grd_comlist.rowposition = aRow;
  257. grd_comlist.setCellPos(grd_comlist.getBindCellIndex("body", "comcd"));
  258. grd_comlist.showEditor(true);
  259. }
  260. /******************************************************************
  261. * Argument :
  262. * Description : 행복사
  263. ******************************************************************/
  264. function group3_button50_onclick(obj:Button, e:ClickEventInfo)
  265. {
  266. var addRow = ds_grd_comlist.insertRow( ds_grd_comlist.rowposition + 1 );
  267. ds_grd_comlist.copyRow(addRow, ds_grd_comlist, ds_grd_comlist.rowposition - 1);
  268. }
  269. /******************************************************************
  270. * Argument :
  271. * Description : 행삭제
  272. ******************************************************************/
  273. function group3_btn_grddel_onclick(obj:Button, e:ClickEventInfo)
  274. {
  275. var cRow = ds_grd_comlist.rowposition;
  276. if( ds_grd_comlist.getRowType(cRow) == 2 ) {
  277. ds_grd_comlist.deleteRow(cRow);
  278. }else{
  279. grdf_setStatus(grd_comlist, "D", [cRow]);
  280. }
  281. }
  282. /******************************************************************
  283. * Argument :
  284. * Description : 저장
  285. ******************************************************************/
  286. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  287. {
  288. var oDsUpdate = grdf_getGridUpdateData(grd_comlist);
  289. if( oDsUpdate.rowcount < 1 ){
  290. sysf_messageBox("입력","E013");
  291. return;
  292. }
  293. grdf_setStatusColumn(oDsUpdate, "m"); // 각행의 status에 rowType 값에 따라 'i', 'u', 'd'로 업데이트 시켜준다
  294. ds_send_req.copyData(oDsUpdate, true);
  295. dsf_setTypeFormat(ds_send_req, "ddd:INT^dddkg:INT^dddchild:INT^childdayno:INT^childage:INT^comlevel:INT");
  296. var oParam = {};
  297. oParam.id = "TXADB00201";
  298. oParam.service = "pharmacybaseapp.ComCode";
  299. oParam.method = "reqExeComCode";
  300. oParam.inds = "req=ds_send_req";
  301. oParam.outds = "ds_temp=item";
  302. oParam.async = false;
  303. oParam.callback = "cf_TXADB00201";
  304. tranf_submit(oParam);
  305. var oParam = {};
  306. oParam.id = "TRADB00201";
  307. oParam.service = "pharmacybaseapp.ComCode";
  308. oParam.method = "reqGetComList";
  309. oParam.inds = "req=ds_send_searchItem";
  310. oParam.outds = "ds_grd_comlist=item";
  311. oParam.async = false;
  312. //oParam.callback = "cf_TRADB00201";
  313. tranf_submit(oParam);
  314. }
  315. function cf_TXADB00201(sSvcId, nErrorCode, sErrorMsg) {
  316. arErrorCode.push(sSvcId, nErrorCode);
  317. }
  318. /******************************************************************
  319. * Argument :
  320. * Description : 약품코드 조회
  321. ******************************************************************/
  322. function group3_grd_comlist_oncelldblclick(obj:Grid, e:GridClickEventInfo)
  323. {
  324. var colNom = grd_comlist.currentcol;
  325. if( e.col != "11" ){
  326. return;
  327. }
  328. var cRow = ds_grd_comlist.rowposition;
  329. var comCd = ds_grd_comlist.getColumn(cRow, "comcd");
  330. var comNm = ds_grd_comlist.getColumn(cRow, "comnm");
  331. var comExcd = ds_grd_comlist.getColumn(cRow, "comexcd");
  332. var drugCdcnt = ds_grd_comlist.getColumn(cRow, "drugcdcnt");
  333. if( utlf_isNull(comCd) || drugCdcnt <= 0 ) return;
  334. ds_send_druglistreq.setColumn(0, "srchcomcd", comCd); //성분코드
  335. ds_send_druglistreq.setColumn(0, "srchcomexcd", comExcd); //확장코드
  336. ds_send_druglistreq.setColumn(0, "srchcomnm", comNm); //성분명칭
  337. var oParam = {};
  338. oParam.id = "TRADB00202";
  339. oParam.service = "pharmacybaseapp.ComCode";
  340. oParam.method = "reqGetComDrugList";
  341. oParam.inds = "druglistreq=ds_send_druglistreq";
  342. oParam.outds = "ds_grd_druglist=druglist";
  343. oParam.async = false;
  344. //oParam.callback = "cf_TRADB00202";
  345. tranf_submit(oParam);
  346. switch1.visible = true;
  347. }
  348. /******************************************************************
  349. * Argument :
  350. * Description : 약품코드 조회 close
  351. ******************************************************************/
  352. function group3_switch1_button_onclick(obj:Button, e:ClickEventInfo)
  353. {
  354. switch1.visible = false;
  355. }]]></Script>
  356. </Form>
  357. </FDL>