SMADB01600_TDM기준정보.xfdl 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMADB01600" position="absolute 0 0 1194 784" titletext="TDM 기준정보" oninit="SMADB01600_oninit" onload="SMADB01600_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 0 91 1194 783" id="group3" scrollbars="autoboth" anchor="all">
  8. <Layouts>
  9. <Layout>
  10. <Button position="absolute 1018 0 1071 19" id="btn_grdcopy" class="btn2" text="행복사" anchor="top right" onclick="group3_btn_grdcopy_onclick"/>
  11. <Grid position="absolute 0 24 1194 692" id="grd_tdmlist" class="datagrid2" binddataset="ds_main_tdmlist" anchor="all" autofittype="col" cellsizingtype="both" onkeydown="group3_grd_tdmlist_onkeydown" onexpanddown="group3_grd_tdmlist_onexpanddown" autoenter="select" extendsizetype="row">
  12. <Formats>
  13. <Format id="default">
  14. <Columns>
  15. <Column size="20"/>
  16. <Column size="81"/>
  17. <Column size="200"/>
  18. <Column size="57"/>
  19. <Column size="60"/>
  20. <Column size="57"/>
  21. <Column size="57"/>
  22. <Column size="57"/>
  23. <Column size="64"/>
  24. <Column size="65"/>
  25. <Column size="56"/>
  26. <Column size="61"/>
  27. <Column size="38"/>
  28. <Column size="152"/>
  29. <Column size="125"/>
  30. </Columns>
  31. <Rows>
  32. <Row size="35" band="head"/>
  33. <Row size="24"/>
  34. </Rows>
  35. <Band id="head">
  36. <Cell/>
  37. <Cell col="1" text="검사코드"/>
  38. <Cell col="2" text="검사명"/>
  39. <Cell col="3" text="일련번호"/>
  40. <Cell col="4" text="입원/외래"/>
  41. <Cell col="5" text="T1/2"/>
  42. <Cell col="6" text="Vd"/>
  43. <Cell col="7" text="Km"/>
  44. <Cell col="8" text="VMax"/>
  45. <Cell col="9" text="Clearance"/>
  46. <Cell col="10" text="혈중농도"/>
  47. <Cell col="11" text="약물농도&#10;측정여부"/>
  48. <Cell col="12" text="조건"/>
  49. <Cell col="13" text="치료(Trough)범위"/>
  50. <Cell col="14" text="치료(Peak)범위"/>
  51. </Band>
  52. <Band id="body">
  53. <Cell celltype="head" displaytype="image"/>
  54. <Cell col="1" displaytype="text" edittype="expr:getRowType(currow) == 2 ? &quot;text&quot; : &quot;none&quot;" style="align:left middle;" text="bind:testcd" wordwrap="char" expandshow="show"/>
  55. <Cell col="2" style="align:left middle;" text="bind:testnm" wordwrap="char"/>
  56. <Cell col="3" displaytype="text" edittype="text" text="bind:testcdseq" wordwrap="char"/>
  57. <Cell col="4" displaytype="combo" edittype="combo" text="bind:ioflag" wordwrap="char" combodataset="ds_cmb_ioflag" combocodecol="value" combodatacol="label"/>
  58. <Cell col="5" displaytype="text" edittype="text" text="bind:t12val" wordwrap="char"/>
  59. <Cell col="6" displaytype="text" edittype="text" text="bind:vdval" wordwrap="char"/>
  60. <Cell col="7" displaytype="text" edittype="text" text="bind:kmval" wordwrap="char"/>
  61. <Cell col="8" displaytype="text" edittype="text" text="bind:vmaxval" wordwrap="char"/>
  62. <Cell col="9" displaytype="text" edittype="text" text="bind:clrc" wordwrap="char"/>
  63. <Cell col="10" displaytype="text" edittype="text" text="bind:blodconcen" wordwrap="char"/>
  64. <Cell col="11" displaytype="checkbox" edittype="checkbox" text="bind:tdmyn" expr="expr:(tdmyn==&quot;Y&quot; || tdmyn==1)?1:0" wordwrap="char"/>
  65. <Cell col="12" displaytype="text" edittype="text" text="bind:cond" wordwrap="char"/>
  66. <Cell col="13" displaytype="text" edittype="text" text="bind:trgh" wordwrap="char"/>
  67. <Cell col="14" displaytype="text" edittype="text" text="bind:peak" wordwrap="char"/>
  68. </Band>
  69. </Format>
  70. </Formats>
  71. </Grid>
  72. <Button position="absolute 962 0 1015 19" id="btn_grdadd" class="btn2" text="행추가" anchor="top right" onclick="group3_btn_grdadd_onclick"/>
  73. <Button position="absolute 1074 0 1127 19" id="btn_grddel" class="btn2" text="행삭제" anchor="top right" onclick="group3_btn_grddel_onclick"/>
  74. <Button position="absolute 1130 0 1194 19" id="btn_excsave" class="btn7" text="Excel" anchor="top right" onclick="group3_btn_excsave_onclick"/>
  75. <Static text="TDM 기준정보" position="absolute 0 4 127 19" id="caption10" class="tit_2" anchor="default"/>
  76. <Shape position="absolute 0 19 1194 25" linetype="horizontal" id="line2" class="line_1" anchor="left top right" style="strokepen:3 solid #33bbbbff;"/>
  77. </Layout>
  78. </Layouts>
  79. </Div>
  80. <Div position="absolute 0 64 1194 91" id="group5" scrollbars="autoboth" anchor="left top right">
  81. <Layouts>
  82. <Layout>
  83. <Button position="absolute 1136 3 1192 25" id="btn_save" class="btn4" text="저장" anchor="right" onclick="group5_btn_save_onclick"/>
  84. </Layout>
  85. </Layouts>
  86. </Div>
  87. <Static id="caption19" text="TDM 기준정보" class="tit_1" position="absolute 0 0 160 25"/>
  88. <Div id="group2" taborder="1" class="div_SA" position="absolute 0 25 1194 65" anchor="left top right">
  89. <Layouts>
  90. <Layout>
  91. <Shape id="line13" linetype="vertical" position="absolute 1107 5 1113 35" anchor="top right bottom"/>
  92. <Static id="caption2" text="검사코드 :" class="search_name" position="absolute 20 12 111 29" anchor="default"/>
  93. <Edit id="ipt_srchtestcd" taborder="1" class="input" position="absolute 110 10 250 29" anchor="default" onkeyup="group2_ipt_srchtestcd_onkeyup"/>
  94. <Edit id="opt_search" taborder="2" readonly="true" class="output" position="absolute 280 10 610 29" anchor="default"/>
  95. <Button id="btn_sea" taborder="3" text="조회" class="btn1" position="absolute 1125 10 1181 32" anchor="top right bottom" onclick="group2_btn_sea_onclick"/>
  96. <Button id="btn_srch" taborder="4" class="icon_search" position="absolute 257 10 273 26" anchor="default" onclick="group2_btn_srch_onclick"/>
  97. </Layout>
  98. </Layouts>
  99. </Div>
  100. </Layout>
  101. </Layouts>
  102. <Objects>
  103. <Dataset id="ds_main_tdmlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false" oncolumnchanged="ds_main_tdmlist_oncolumnchanged">
  104. <ColumnInfo>
  105. <Column id="testcd" type="STRING" size="256"/>
  106. <Column id="testnm" type="STRING" size="256"/>
  107. <Column id="testcdseq" type="STRING" size="256"/>
  108. <Column id="ioflag" type="STRING" size="256"/>
  109. <Column id="t12val" type="STRING" size="256"/>
  110. <Column id="vdval" type="STRING" size="256"/>
  111. <Column id="kmval" type="STRING" size="256"/>
  112. <Column id="vmaxval" type="STRING" size="256"/>
  113. <Column id="clrc" type="STRING" size="256"/>
  114. <Column id="blodconcen" type="STRING" size="256"/>
  115. <Column id="tdmyn" type="STRING" size="256"/>
  116. <Column id="cond" type="STRING" size="256"/>
  117. <Column id="trgh" type="STRING" size="256"/>
  118. <Column id="peak" type="STRING" size="256"/>
  119. <Column id="instcd" type="STRING" size="256"/>
  120. </ColumnInfo>
  121. <Rows>
  122. <Row>
  123. <Col id="testcd"/>
  124. <Col id="testnm"/>
  125. <Col id="testcdseq"/>
  126. <Col id="ioflag"/>
  127. <Col id="t12val"/>
  128. <Col id="vdval"/>
  129. <Col id="kmval"/>
  130. <Col id="vmaxval"/>
  131. <Col id="clrc"/>
  132. <Col id="blodconcen"/>
  133. <Col id="tdmyn"/>
  134. <Col id="cond"/>
  135. <Col id="trgh"/>
  136. <Col id="peak"/>
  137. <Col id="instcd"/>
  138. </Row>
  139. </Rows>
  140. </Dataset>
  141. <Dataset id="ds_send_req_data1" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  142. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  143. <ColumnInfo>
  144. <Column id="srchtestcd" type="STRING" size="256"/>
  145. <Column id="srchdrugcd" type="STRING" size="256"/>
  146. <Column id="srchtclscd" type="STRING" size="256"/>
  147. <Column id="srchtestnm" type="STRING" size="256"/>
  148. </ColumnInfo>
  149. <Rows>
  150. <Row>
  151. <Col id="srchtestcd"/>
  152. <Col id="srchdrugcd"/>
  153. <Col id="srchtclscd"/>
  154. <Col id="srchtestnm"/>
  155. </Row>
  156. </Rows>
  157. </Dataset>
  158. <Dataset id="ds_init_testitem" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  159. <ColumnInfo>
  160. <Column id="testcd" type="STRING" size="256"/>
  161. <Column id="testnm" type="STRING" size="256"/>
  162. </ColumnInfo>
  163. <Rows>
  164. <Row/>
  165. </Rows>
  166. </Dataset>
  167. <Dataset id="ds_init_drugitem" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  168. <ColumnInfo>
  169. <Column id="drugcd" type="STRING" size="256"/>
  170. <Column id="drugnm" type="STRING" size="256"/>
  171. </ColumnInfo>
  172. </Dataset>
  173. <Dataset id="dS_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  174. <ColumnInfo>
  175. <Column id="count" type="STRING" size="256"/>
  176. </ColumnInfo>
  177. </Dataset>
  178. <Dataset id="ds_hidden_item" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  179. <ColumnInfo>
  180. <Column id="testcd" type="STRING" size="256"/>
  181. <Column id="instcd" type="STRING" size="256"/>
  182. <Column id="t12val" type="STRING" size="256"/>
  183. <Column id="vdval" type="STRING" size="256"/>
  184. <Column id="kmval" type="STRING" size="256"/>
  185. <Column id="vmaxval" type="STRING" size="256"/>
  186. <Column id="clrc" type="STRING" size="256"/>
  187. <Column id="blodconcen" type="STRING" size="256"/>
  188. <Column id="tdmyn" type="STRING" size="256"/>
  189. <Column id="cond" type="STRING" size="256"/>
  190. <Column id="trgh" type="STRING" size="256"/>
  191. <Column id="peak" type="STRING" size="256"/>
  192. </ColumnInfo>
  193. <Rows>
  194. <Row>
  195. <Col id="testcd"/>
  196. <Col id="instcd"/>
  197. <Col id="t12val"/>
  198. <Col id="vdval"/>
  199. <Col id="kmval"/>
  200. <Col id="vmaxval"/>
  201. <Col id="clrc"/>
  202. <Col id="blodconcen"/>
  203. <Col id="tdmyn"/>
  204. <Col id="cond"/>
  205. <Col id="trgh"/>
  206. <Col id="peak"/>
  207. </Row>
  208. </Rows>
  209. </Dataset>
  210. <Dataset id="ds_temp_testinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  211. <ColumnInfo>
  212. <Column id="testcd" type="STRING" size="256"/>
  213. <Column id="testnm" type="STRING" size="256"/>
  214. </ColumnInfo>
  215. <Rows>
  216. <Row/>
  217. </Rows>
  218. </Dataset>
  219. <Dataset id="ds_temp_receivedata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  220. <ColumnInfo>
  221. <Column id="receiveref" type="STRING" size="256"/>
  222. <Column id="receivedrugcd" type="STRING" size="256"/>
  223. <Column id="drugcd" type="STRING" size="256"/>
  224. </ColumnInfo>
  225. <Rows>
  226. <Row>
  227. <Col id="receiveref">ds_temp_receiveref</Col>
  228. <Col id="receivedrugcd">drugcd</Col>
  229. </Row>
  230. </Rows>
  231. </Dataset>
  232. <Dataset id="ds_cmb_ioflag" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  233. <ColumnInfo>
  234. <Column id="label" type="STRING" size="256"/>
  235. <Column id="value" type="STRING" size="256"/>
  236. </ColumnInfo>
  237. <Rows>
  238. <Row>
  239. <Col id="label">입원</Col>
  240. <Col id="value">I</Col>
  241. </Row>
  242. <Row>
  243. <Col id="label">외래</Col>
  244. <Col id="value">O</Col>
  245. </Row>
  246. </Rows>
  247. </Dataset>
  248. </Objects>
  249. <Bind>
  250. <BindItem id="item0" compid="group2.ipt_srchtestcd" propid="value" datasetid="ds_send" columnid="srchtestcd"/>
  251. <BindItem id="item1" compid="group2.opt_search" propid="value" datasetid="ds_send" columnid="srchtestnm"/>
  252. </Bind>
  253. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  254. * System Name :
  255. * Job Name :
  256. * Creator :
  257. * Make Date : 2015-11-13
  258. * Description :
  259. *---------------------------------------------------------------------------------------
  260. * Modify Date Modifier Modify Description
  261. *---------------------------------------------------------------------------------------
  262. * 2015-11-13 Live Converter TF->XP
  263. *
  264. *---------------------------------------------------------------------------------------
  265. ****************************************************************************************/
  266. //=======================================================================================
  267. // Lib Include
  268. //---------------------------------------------------------------------------------------
  269. include "com_commonxp::comm_main.xjs"
  270. include "ast_commonxp::AST.xjs"
  271. //=======================================================================================
  272. // Global Form Variable
  273. //---------------------------------------------------------------------------------------
  274. var arErrorCode = new HashArray();
  275. //=======================================================================================
  276. // Function
  277. //---------------------------------------------------------------------------------------
  278. /****************************************************************************************
  279. * Argument : N/A
  280. * Description : 조회함수
  281. ****************************************************************************************/
  282. function call_TRADB01601() {
  283. var oParam = {};
  284. oParam.id = "TRADB01601";
  285. oParam.service = "pharmacybaseapp.TDMBase";
  286. oParam.method = "reqGetTDMBaseList";
  287. oParam.inds = "req=ds_send";
  288. oParam.outds = "ds_main_tdmlist=item";
  289. oParam.async = true;
  290. oParam.callback = "cf_TRADB01601";
  291. tranf_submit(oParam);
  292. }
  293. function cf_TRADB01601(sSvcId, nErrorCode, sErrorMsg) {
  294. if(nErrorCode < 0) return;
  295. ds_main_tdmlist.updatecontrol = false;
  296. for(var i = 0 ; i < ds_main_tdmlist.rowcount ; i++) {
  297. if(ds_main_tdmlist.getColumn(i,"tdmyn") == "true") ds_main_tdmlist.setColumn(i,"tdmyn","Y");
  298. else ds_main_tdmlist.setColumn(i,"tdmyn","N");
  299. }
  300. ds_main_tdmlist.updatecontrol = true;
  301. }
  302. //=======================================================================================
  303. // Event
  304. //---------------------------------------------------------------------------------------
  305. /****************************************************************************************
  306. * Components : Form
  307. * Components ID : SMADB01600
  308. * Event : oninit
  309. * Argument : 01.obj : Object Event has occurred
  310. * : 02.e : Event Object
  311. * Description : 화면 처음 초기화시 폼초기화
  312. ****************************************************************************************/
  313. function SMADB01600_oninit(obj:Form, e:InitEventInfo)
  314. {
  315. frmf_initForm(obj); // 폼 초기화
  316. }
  317. /****************************************************************************************
  318. * Components : Form
  319. * Components ID : SMADB01600
  320. * Event : onload
  321. * Argument : 01.obj : Object Event has occurred
  322. * : 02.e : Event Object
  323. * Description : 화면 처음 초기화시 폼초기화
  324. ****************************************************************************************/
  325. function SMADB01600_onload(obj:Form, e:LoadEventInfo)
  326. {
  327. // 권한 관리
  328. group5.btn_save.enable = frmf_checkAuth("X"); // 저장
  329. grdf_setRowTypeIcon(group3.grd_tdmlist, 0);
  330. ds_main_tdmlist.clearData();
  331. // ds_send.setColumn(0,"srchtestcd",ds_send.getColumn(0,"srchtestcd"));
  332. call_TRADB01601();
  333. }
  334. /****************************************************************************************
  335. * Components : Edit
  336. * Components ID : group2.ipt_srchtestcd
  337. * Event : onkeyup
  338. * Argument : 01.obj : Object Event has occurred
  339. * : 02.e : Event Object
  340. * Description : 검사코드 입력 후 엔터로 조회
  341. ****************************************************************************************/
  342. function group2_ipt_srchtestcd_onkeyup(obj:Edit, e:KeyEventInfo)
  343. {
  344. if(e.keycode == 13) {
  345. obj.updateToDataset();
  346. var ev = new ClickEventInfo;
  347. frmf_inputEnterKey("group2.btn_sea", "onclick", ev );
  348. }
  349. }
  350. /****************************************************************************************
  351. * Components : Button
  352. * Components ID : group2.btn_srch
  353. * Event : onclick
  354. * Argument : 01.obj : Object Event has occurred
  355. * : 02.e : Event Object
  356. * Description : 검사코드 조회 팝업 오픈
  357. ****************************************************************************************/
  358. function group2_btn_srch_onclick(obj:Button, e:ClickEventInfo)
  359. {
  360. //검사조회
  361. frmf_modal("SPADB62200","SPADB62200", "", "", 0, 200, 200, "", "", "", "", "", "M");
  362. ds_send.setColumn(0,"srchtestcd",ds_temp_testinfo.getColumn(0,"testcd"));
  363. ds_send.setColumn(0,"srchtestnm",ds_temp_testinfo.getColumn(0,"testnm"));
  364. }
  365. /****************************************************************************************
  366. * Components : Button
  367. * Components ID : group2.btn_sea
  368. * Event : onclick
  369. * Argument : 01.obj : Object Event has occurred
  370. * : 02.e : Event Object
  371. * Description : TDM기준정보 조회
  372. ****************************************************************************************/
  373. function group2_btn_sea_onclick(obj:Button, e:ClickEventInfo)
  374. {
  375. // model.setValue("/root/send/srchtestcd",model.getValue("/root/send/srchtestcd"));
  376. call_TRADB01601();
  377. ds_send.setColumn(0,"srchtestcd","");
  378. ds_send.setColumn(0,"srchtestnm","");
  379. }
  380. /****************************************************************************************
  381. * Components : Button
  382. * Components ID : group3.btn_grdadd
  383. * Event : onclick
  384. * Argument : 01.obj : Object Event has occurred
  385. * : 02.e : Event Object
  386. * Description : TDM기준정보 추가
  387. ****************************************************************************************/
  388. function group3_btn_grdadd_onclick(obj:Button, e:ClickEventInfo)
  389. {
  390. ds_main_tdmlist.addRow();
  391. }
  392. /****************************************************************************************
  393. * Components : Button
  394. * Components ID : group3.btn_grdcopy
  395. * Event : onclick
  396. * Argument : 01.obj : Object Event has occurred
  397. * : 02.e : Event Object
  398. * Description : TDM기준정보 복사
  399. ****************************************************************************************/
  400. function group3_btn_grdcopy_onclick(obj:Button, e:ClickEventInfo)
  401. {
  402. var grdrow = ds_main_tdmlist.rowposition;
  403. dsf_copyColInfo(ds_hidden_item,ds_main_tdmlist);
  404. ds_hidden_item.copyRow(ds_hidden_item.addRow(),ds_main_tdmlist,grdrow);
  405. ds_main_tdmlist.enableevent = false;
  406. ds_main_tdmlist.insertRow(grdrow);
  407. ds_main_tdmlist.copyRow(grdrow,ds_hidden_item,0);
  408. ds_main_tdmlist.enableevent = true;
  409. }
  410. /****************************************************************************************
  411. * Components : Button
  412. * Components ID : group3.btn_grddel
  413. * Event : onclick
  414. * Argument : 01.obj : Object Event has occurred
  415. * : 02.e : Event Object
  416. * Description : TDM기준정보 삭제
  417. ****************************************************************************************/
  418. function group3_btn_grddel_onclick(obj:Button, e:ClickEventInfo)
  419. {
  420. var cRow = ds_main_tdmlist.rowposition;
  421. if( ds_main_tdmlist.getRowType(cRow) == 2 ) {
  422. ds_main_tdmlist.deleteRow(cRow);
  423. }else{
  424. grdf_setStatus(group3.grd_tdmlist, "D", [cRow]);
  425. }
  426. }
  427. /****************************************************************************************
  428. * Components : Button
  429. * Components ID : group3.btn_excsave
  430. * Event : onclick
  431. * Argument : 01.obj : Object Event has occurred
  432. * : 02.e : Event Object
  433. * Description : TDM기준정보 Excel저장
  434. ****************************************************************************************/
  435. function group3_btn_excsave_onclick(obj:Button, e:ClickEventInfo)
  436. {
  437. if( ds_main_tdmlist.rowcount > 0 ){
  438. grdf_exportExcel(group3.grd_tdmlist, "TDM 기준정보", "sheet", false, "", "user", false);
  439. } else {
  440. sysf_messageBox("조회된 데이터가 ", "I004");
  441. }
  442. }
  443. /****************************************************************************************
  444. * Components : Grid
  445. * Components ID : group3.grd_tdmlist
  446. * Event : onexpanddown
  447. * Argument : 01.obj : Object Event has occurred
  448. * : 02.e : Event Object
  449. * Description : TDM기준정보 리스트 검사코드 버튼 클릭
  450. ****************************************************************************************/
  451. function group3_grd_tdmlist_onexpanddown(obj:Grid, e:GridMouseEventInfo)
  452. {
  453. if(e.col == 1) {
  454. var instcd = "";
  455. var testcd = "";
  456. var testnm = "";
  457. var grdrow = e.row;
  458. // 입력상태에서만 검색가능(기관코드 있으면 입력상태로 간주)
  459. instcd = ds_main_tdmlist.getColumn(grdrow,"instcd");
  460. if (!utlf_isNull(instcd)) return;
  461. frmf_modal("SPADB62200","SPADB62200", "", "", 0, 200, 200, "", "", "", "", "", "M");
  462. testcd = ds_temp_testinfo.getColumn(0,"testcd");
  463. testnm = ds_temp_testinfo.getColumn(0,"testnm");
  464. ds_main_tdmlist.setColumn(grdrow,"testcd",testcd);
  465. ds_main_tdmlist.setColumn(grdrow,"testnm",testnm);
  466. }
  467. }
  468. /****************************************************************************************
  469. * Components : Grid
  470. * Components ID : group3.grd_tdmlist
  471. * Event : onkeydown
  472. * Argument : 01.obj : Object Event has occurred
  473. * : 02.e : Event Object
  474. * Description : TDM기준정보 리스트 검사코드 입력후 엔터로 조회
  475. ****************************************************************************************/
  476. function group3_grd_tdmlist_onkeydown(obj:Grid, e:KeyEventInfo)
  477. {
  478. var grdrow = obj.currentrow;
  479. var grdcol = obj.currentcol;
  480. var srchtestcd = "";
  481. var srchdrugcd = "";
  482. if(e.keycode == 13) {
  483. if (grdcol == 1) {
  484. obj.updateToDataset();
  485. srchtestcd = ds_main_tdmlist.getColumn(grdrow,"testcd");
  486. if (utlf_isNull(srchtestcd)) {
  487. sysf_messageBox("검사코드를", "C001");
  488. }
  489. ds_send.setColumn(0,"srchtclscd",srchtestcd);
  490. var oParam = {};
  491. oParam.id = "TRADB01602";
  492. oParam.service = "pharmacybaseapp.TDMBase";
  493. oParam.method = "reqGetTestNm";
  494. oParam.inds = "req=ds_send";
  495. oParam.outds = "ds_init_testitem=testitem";
  496. oParam.async = false;
  497. //oParam.callback = "cf_TRADB01602";
  498. tranf_submit(oParam);
  499. ds_main_tdmlist.setColumn(grdrow,"testcd",ds_init_testitem.getColumn(0,"testcd"));
  500. ds_main_tdmlist.setColumn(grdrow,"testnm",ds_init_testitem.getColumn(0,"testnm"));
  501. }
  502. }
  503. }
  504. /****************************************************************************************
  505. * Components : Grid
  506. * Components ID : group3.grd_tdmlist
  507. * Event : onkeydown
  508. * Argument : 01.obj : Object Event has occurred
  509. * : 02.e : Event Object
  510. * Description : TDM기준정보 리스트 검사코드 입력후 엔터로 조회
  511. ****************************************************************************************/
  512. function ds_main_tdmlist_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  513. {
  514. if(e.columnid == "tdmyn") {
  515. obj.setColumn(e.row,e.columnid,(e.newvalue=="Y"||e.newvalue==1)?"Y":"N");
  516. } else if(e.columnid == "testcd" || e.columnid == "testcdseq") {
  517. var testcd = "" ;
  518. var testcdseq = "" ;
  519. var new_testcd = obj.getColumn(e.row,"testcd");
  520. var new_testcdseq = obj.getColumn(e.row,"testcdseq");
  521. for (var i = 0 ; i < obj.rowcount ; i++) {
  522. testcd = obj.getColumn(i,"testcd");
  523. testcdseq = obj.getColumn(i,"testcdseq");
  524. if ((new_testcd == testcd ) && (e.row != i ) ) {
  525. if (new_testcdseq == testcdseq) {
  526. alert ("[ " + testcd + " ] 코드에 동일 일련번호 [" + testcdseq + "]가 발생되었습니다. 확인하여 주시기 바랍니다.");
  527. obj.setColumn(e.row,"testcdseq","");
  528. group3.grd_tdmlist.setEditText("");
  529. group3.grd_tdmlist.setCellPos(group3.grd_tdmlist.getBindCellIndex("body","testcdseq"));
  530. return;
  531. }
  532. }
  533. }
  534. }
  535. }
  536. /****************************************************************************************
  537. * Components : Button
  538. * Components ID : group3.btn_save
  539. * Event : onclick
  540. * Argument : 01.obj : Object Event has occurred
  541. * : 02.e : Event Object
  542. * Description : TDM기준정보 저장
  543. ****************************************************************************************/
  544. function group5_btn_save_onclick(obj:Button, e:ClickEventInfo)
  545. {
  546. // 필수사항체크
  547. if(!frmf_chkMdtGrid(group3.grd_tdmlist, [1,2,3,4], ["검사코드","검사명","일련번호","입원/외래"])) return;
  548. var tdmyn = "";
  549. var updtdata = grdf_getGridUpdateData(group3.grd_tdmlist, "all");
  550. grdf_setStatusColumn(updtdata, "m");
  551. // 변경사항체크
  552. if (updtdata.rowcount == 0) {
  553. sysf_messageBox("변경된 데이터가","I004");
  554. return;
  555. }
  556. ds_send_req_data1.copyData(updtdata,true);
  557. var oParam = {};
  558. oParam.id = "TXADB00601";
  559. oParam.service = "pharmacybaseapp.TDMBase";
  560. oParam.method = "reqexeTDMBase";
  561. oParam.inds = "req=ds_send_req_data1";
  562. oParam.outds = "ds_hidden=item";
  563. oParam.async = false;
  564. //oParam.callback = "cf_TXADB00601";
  565. tranf_submit(oParam);
  566. call_TRADB01601();
  567. }
  568. ]]></Script>
  569. </Form>
  570. </FDL>