SMLBT11000_혈액반납폐기관리.xfdl 31 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMLBT11000" position="absolute 0 0 1198 778" titletext="혈액반환폐기관리" oninit="SMLBT11000_oninit" onload="SMLBT11000_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static id="caption5" text="혈액반환폐기관리" class="tit_1" position="absolute 0 0 145 25"/>
  8. <Shape id="line1" linetype="horizontal" class="line_6" position="absolute 0 49 1195 55" style="strokepen:3 solid #9ebed4ff;"/>
  9. <Static id="caption11" text="반환(폐기) 목록" class="tit_2" position="absolute 2 117 117 139"/>
  10. <Shape id="line7" linetype="horizontal" class="line_1" position="absolute 0 134 1194 140" style="strokepen:3 solid #33bbbbff;"/>
  11. <Grid id="grd_rtnabnlist" taborder="5" binddataset="ds_grd_rtnabnlist" useinputpanel="false" position="absolute 0 138 1194 776" cellsizingtype="col">
  12. <Formats>
  13. <Format id="default">
  14. <Columns>
  15. <Column size="25"/>
  16. <Column size="80"/>
  17. <Column size="75"/>
  18. <Column size="70"/>
  19. <Column size="60"/>
  20. <Column size="47"/>
  21. <Column size="90"/>
  22. <Column size="110"/>
  23. <Column size="66"/>
  24. <Column size="100"/>
  25. <Column size="100"/>
  26. <Column size="30"/>
  27. <Column size="81"/>
  28. <Column size="66"/>
  29. <Column size="66"/>
  30. <Column size="168"/>
  31. <Column size="0"/>
  32. <Column size="0"/>
  33. <Column size="0"/>
  34. <Column size="0"/>
  35. <Column size="0"/>
  36. <Column size="0"/>
  37. <Column size="0"/>
  38. <Column size="0"/>
  39. <Column size="0"/>
  40. <Column size="0"/>
  41. <Column size="0"/>
  42. <Column size="0"/>
  43. <Column size="0"/>
  44. <Column size="0"/>
  45. <Column size="0"/>
  46. </Columns>
  47. <Rows>
  48. <Row size="24" band="head"/>
  49. <Row size="24"/>
  50. </Rows>
  51. <Band id="head">
  52. <Cell/>
  53. <Cell col="1" text="반환/폐기"/>
  54. <Cell col="2" text="등록번호"/>
  55. <Cell col="3" text="환자명"/>
  56. <Cell col="4" text="병실"/>
  57. <Cell col="5" text="seq"/>
  58. <Cell col="6" text="혈액번호"/>
  59. <Cell col="7" text="혈액성분"/>
  60. <Cell col="8" text="확인자"/>
  61. <Cell col="9" text="출고일자"/>
  62. <Cell col="10" text="반환/폐기일자"/>
  63. <Cell col="11" text="확인"/>
  64. <Cell col="12" text="사용량(ml)"/>
  65. <Cell col="13" text="의뢰의사"/>
  66. <Cell col="14" text="간호사"/>
  67. <Cell col="15" text="사유"/>
  68. <Cell col="16" text="caption1"/>
  69. <Cell col="17" text="수혈의뢰접수번호"/>
  70. <Cell col="18" text="성분제제코드"/>
  71. <Cell col="19" text="혈액용량"/>
  72. <Cell col="20" text="수혈의뢰일련번호"/>
  73. <Cell col="21" text="기관코드"/>
  74. <Cell col="22" text="준비연도"/>
  75. <Cell col="23" text="준비혈액일련번호"/>
  76. <Cell col="24" text="처방발생구분"/>
  77. <Cell col="25" text="사유코드"/>
  78. <Cell col="26" text="처방코드"/>
  79. <Cell col="27" text="수가코드"/>
  80. <Cell col="28" text="검체코드"/>
  81. <Cell col="29" text="chk"/>
  82. <Cell col="30" text="blodbarcd"/>
  83. </Band>
  84. <Band id="body">
  85. <Cell displaytype="normal" edittype="none"/>
  86. <Cell col="1" displaytype="combo" edittype="combo" style="align:center middle;" text="bind:rtnabn" combodataset="ds_cmb_rtnabn" combocodecol="cd" combodatacol="nm" enable="false"/>
  87. <Cell col="2" text="bind:pid"/>
  88. <Cell col="3" text="bind:patnm"/>
  89. <Cell col="4" text="bind:roomcd"/>
  90. <Cell col="5" text="bind:prepblodseqno"/>
  91. <Cell col="6" text="bind:blodno"/>
  92. <Cell col="7" style="align:left middle;" text="bind:blodcomnm"/>
  93. <Cell col="8" text="bind:usernm"/>
  94. <Cell col="9" displaytype="date" edittype="date" text="bind:execdt" mask="yyyy-MM-dd HH:mm"/>
  95. <Cell col="10" displaytype="date" edittype="date" text="bind:cnfmdt" mask="yyyy-MM-dd HH:mm"/>
  96. <Cell col="11" text="bind:cnfm" enable="false"/>
  97. <Cell col="12" text="bind:drugqty"/>
  98. <Cell col="13" text="bind:orddrnm"/>
  99. <Cell col="14" text="bind:tnsstrnursenm"/>
  100. <Cell col="15" text="bind:resndesc"/>
  101. <Cell col="16" text="bind:iryn"/>
  102. <Cell col="17" text="bind:tnsreqacptno"/>
  103. <Cell col="18" text="bind:blodcomcd"/>
  104. <Cell col="19" text="bind:blodvol"/>
  105. <Cell col="20" text="bind:tnsreqseq"/>
  106. <Cell col="21" text="bind:instcd"/>
  107. <Cell col="22" text="bind:prepyy"/>
  108. <Cell col="23" text="bind:prepblodseqno"/>
  109. <Cell col="24" text="bind:prcpgenrflag"/>
  110. <Cell col="25" text="bind:rsncd"/>
  111. <Cell col="26" text="bind:prcpcd"/>
  112. <Cell col="27" text="bind:calcscorcd"/>
  113. <Cell col="28" text="bind:drugmthdspccd"/>
  114. <Cell col="29" displaytype="checkbox" edittype="checkbox" text="bind:chk"/>
  115. <Cell col="30" text="bind:blodbarcd"/>
  116. </Band>
  117. </Format>
  118. </Formats>
  119. </Grid>
  120. <Div id="group2" taborder="6" class="div_SA2" position="absolute 0 53 1195 113">
  121. <Layouts>
  122. <Layout>
  123. <Radio id="rdo_flag" taborder="1" columncount="5" rowcount="0" codecolumn="codecolumn" datacolumn="datacolumn" class="radio_search" position="absolute 800 5 1177 32" style="textpadding:0 0 0 2;">
  124. <Dataset id="innerdataset">
  125. <ColumnInfo>
  126. <Column id="codecolumn"/>
  127. <Column id="datacolumn"/>
  128. </ColumnInfo>
  129. <Rows>
  130. <Row>
  131. <Col id="codecolumn">0</Col>
  132. <Col id="datacolumn">전체</Col>
  133. </Row>
  134. <Row>
  135. <Col id="codecolumn">4</Col>
  136. <Col id="datacolumn">반환_보관</Col>
  137. </Row>
  138. <Row>
  139. <Col id="codecolumn">1</Col>
  140. <Col id="datacolumn">반환_취소</Col>
  141. </Row>
  142. <Row>
  143. <Col id="codecolumn">2</Col>
  144. <Col id="datacolumn">폐기</Col>
  145. </Row>
  146. <Row>
  147. <Col id="codecolumn">3</Col>
  148. <Col id="datacolumn">잔여혈액폐기</Col>
  149. </Row>
  150. </Rows>
  151. </Dataset>
  152. </Radio>
  153. <Radio id="rdo_cnfmflag" taborder="2" columncount="4" rowcount="0" codecolumn="codecolumn" datacolumn="datacolumn" class="radio_search" position="absolute 799 31 1054 52">
  154. <Dataset id="innerdataset">
  155. <ColumnInfo>
  156. <Column id="codecolumn"/>
  157. <Column id="datacolumn"/>
  158. </ColumnInfo>
  159. <Rows>
  160. <Row>
  161. <Col id="codecolumn">0</Col>
  162. <Col id="datacolumn">전체</Col>
  163. </Row>
  164. <Row>
  165. <Col id="codecolumn">1</Col>
  166. <Col id="datacolumn">확정</Col>
  167. </Row>
  168. <Row>
  169. <Col id="codecolumn">2</Col>
  170. <Col id="datacolumn">미확정</Col>
  171. </Row>
  172. </Rows>
  173. </Dataset>
  174. </Radio>
  175. <Calendar id="ipt_appsdt" taborder="3" class="input_search" position="absolute 114 33 218 52"/>
  176. <Calendar id="ipt_appedt" taborder="4" class="input_search" position="absolute 232 33 336 52" onkeyup="group2_ipt_appedt_onkeyup"/>
  177. <Static id="cap_bkind" text="혈액종류 :" class="search_name" position="absolute 348 34 447 51"/>
  178. <Combo id="cbo_bkind" taborder="5" innerdataset="@ds_init_0606" codecolumn="cd" datacolumn="nm" class="combo_s_essential" position="absolute 430 33 646 52"/>
  179. <Button id="btn_ref" taborder="6" text="조회" class="btn1" position="absolute 1119 34 1175 56" onclick="group2_btn_ref_onclick"/>
  180. <Static id="caption2" text="반환(폐기)자 :" class="search_name" position="absolute 15 9 126 26"/>
  181. <Static id="caption3" text="준비일시 :" class="search_name" position="absolute 15 34 106 51"/>
  182. <Static id="caption6" text="등록번호 :" class="search_name" position="absolute 349 9 427 26"/>
  183. <Static id="caption7" text="구분 :" class="search_name" position="absolute 737 9 786 26"/>
  184. <Static id="caption77" text="구분 :" class="search_name" position="absolute 737 34 786 51"/>
  185. <Edit id="ipt_rtnpsn" taborder="7" class="input_button" position="absolute 114 8 214 27"/>
  186. <Edit id="opt_rtnpsnnm" taborder="8" readonly="true" class="output_search" position="absolute 216 8 316 27"/>
  187. <Edit id="ipt_pid" taborder="9" class="input_button" position="absolute 429 8 529 27" onkeyup="group2_ipt_pid_onkeyup"/>
  188. <Static id="caption8" text="혈액번호 :" class="search_name" position="absolute 543 11 614 28"/>
  189. <Edit id="ipt_blodno" taborder="10" class="input_button" position="absolute 621 8 721 27" onkeydown="group2_ipt_blodno_onkeydown"/>
  190. <Static id="caption4" text="~" class="search_no_b" position="absolute 218 34 228 51"/>
  191. </Layout>
  192. </Layouts>
  193. </Div>
  194. <Button id="btn_excel" taborder="7" text="엑셀" class="btn7" position="absolute 1135 117 1193 136" onclick="btn_excel_onclick"/>
  195. <Button id="btn_cancel" taborder="8" text="선택취소" class="btn2" position="absolute 1065 117 1129 136" onclick="btn_cancel_onclick"/>
  196. <Div position="absolute 476 253 757 410" id="Group_idChk" style="background:#ff99ccff;">
  197. <Layouts>
  198. <Layout>
  199. <Static text="반환자를 입력하세요" position="absolute 19 19 268 89" id="caption1" anchor="default" style="background:transparent;font:Dotum,18,bold;"/>
  200. <TextArea position="absolute 34 89 229 144" id="ID_txt" anchor="default" onkeydown="Group_idChk_ID_txt_onkeydown" inputmode="upper" style="font:Dotum,28;"/>
  201. <Button position="absolute 232 119 274 144" align="align:center middle;" id="button44" text="닫기" anchor="default" class="btn2" onclick="Group_idChk_button44_onclick"/>
  202. </Layout>
  203. </Layouts>
  204. </Div>
  205. <Div id="group3" taborder="9" position="absolute 1 24 1197 50">
  206. <Layouts>
  207. <Layout>
  208. <Button id="button1" taborder="0" text="폐기취소" class="btn4" position="absolute 985 4 1065 26" anchor="default" onclick="group3_button1_onclick"/>
  209. <Button id="btn_init" taborder="1" text="초기화" class="btn4" position="absolute 1126 4 1194 26" anchor="default" onclick="group3_btn_init_onclick"/>
  210. <Button id="btn_save" taborder="2" text="저장" class="btn4" position="absolute 1067 4 1123 26" anchor="default" onclick="group3_btn_save_onclick"/>
  211. <Button id="btn_print" taborder="3" text="출력" class="btn6" visible="false" position="absolute 1 3 57 25" anchor="default"/>
  212. </Layout>
  213. </Layouts>
  214. </Div>
  215. </Layout>
  216. </Layouts>
  217. <Objects>
  218. <Dataset id="ds_grd_rtnabnlist" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  219. <ColumnInfo>
  220. <Column id="blodno" type="STRING" size="256" sumtext="혈액번호"/>
  221. <Column id="blodcomnm" type="STRING" size="256" sumtext="혈액성분"/>
  222. <Column id="btype" type="STRING" size="256" sumtext="혈액형"/>
  223. <Column id="usernm" type="STRING" size="256" sumtext="검사자"/>
  224. <Column id="execdt" type="STRING" size="256" sumtext="수령자"/>
  225. <Column id="rtnabn" type="STRING" size="256" sumtext="반환폐기"/>
  226. <Column id="cnfmdt" type="STRING" size="256" sumtext="확인일시"/>
  227. <Column id="cnfm" type="STRING" size="256" sumtext="확인"/>
  228. <Column id="resndesc" type="STRING" size="256" sumtext="사유"/>
  229. <Column id="tnsreqacptno" type="STRING" size="256" sumtext="수혈의회접수번호"/>
  230. <Column id="blodcomcd" type="STRING" size="256" sumtext="성분제제코드"/>
  231. <Column id="blodvol" type="STRING" size="256" sumtext="혈액용량"/>
  232. <Column id="tnsreqseq" type="STRING" size="256" sumtext="수혈의회일련번호"/>
  233. <Column id="instcd" type="STRING" size="256" sumtext="기관코드"/>
  234. <Column id="prepyy" type="STRING" size="256" sumtext="준비연도"/>
  235. <Column id="prepblodseqno" type="STRING" size="256" sumtext="준비혈액일련번호"/>
  236. <Column id="prcpgenrflag" type="STRING" size="256" sumtext="처방발생구분"/>
  237. <Column id="rsncd" type="STRING" size="256" sumtext="사유코드"/>
  238. <Column id="prcpcd" type="STRING" size="256" sumtext="처방코드"/>
  239. <Column id="calcscorcd" type="STRING" size="256" sumtext="검사코드"/>
  240. <Column id="drugmthdspccd" type="STRING" size="256" sumtext="검체코드"/>
  241. <Column id="pid" type="STRING" size="256" sumtext="등록번혹"/>
  242. <Column id="patnm" type="STRING" size="256" sumtext="환자명"/>
  243. <Column id="roomcd" type="STRING" size="256" sumtext="병실"/>
  244. <Column id="drugqty" type="STRING" size="256" sumtext="사용량"/>
  245. <Column id="orddrnm" type="STRING" size="256" sumtext="의뢰의사"/>
  246. <Column id="tnsstrnursenm" type="STRING" size="256" sumtext="간호사"/>
  247. <Column id="iryn" type="STRING" size="256" sumtext="irr여부"/>
  248. <Column id="prcpdd" type="STRING" size="256" sumtext="처방일자"/>
  249. <Column id="chk" type="STRING" size="256" sumtext="선택여부"/>
  250. <Column id="blodbarcd" type="STRING" size="256" sumtext="혈액바코드"/>
  251. <Column id="color" type="STRING" size="256"/>
  252. <Column id="rsn" type="STRING" size="256"/>
  253. </ColumnInfo>
  254. </Dataset>
  255. <Dataset id="ds_init_cbo_bkind" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  256. <ColumnInfo>
  257. <Column id="nm" type="STRING"/>
  258. <Column id="cd" type="STRING"/>
  259. </ColumnInfo>
  260. </Dataset>
  261. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  262. <ColumnInfo>
  263. <Column id="rtnpsn" type="STRING" size="256"/>
  264. <Column id="pid" type="STRING" size="256"/>
  265. <Column id="blodno" type="STRING" size="256"/>
  266. <Column id="flag" type="STRING" size="256"/>
  267. <Column id="appsdt" type="STRING" size="256"/>
  268. <Column id="appedt" type="STRING" size="256"/>
  269. <Column id="bldkind" type="STRING" size="256"/>
  270. <Column id="cnfmflag" type="STRING" size="256"/>
  271. </ColumnInfo>
  272. <Rows>
  273. <Row>
  274. <Col id="cnfmflag">0</Col>
  275. <Col id="bldkind">00</Col>
  276. </Row>
  277. </Rows>
  278. </Dataset>
  279. <Dataset id="ds_init_0606" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  280. <ColumnInfo>
  281. <Column id="cd" type="STRING" size="256" sumtext="코드"/>
  282. <Column id="nm" type="STRING" size="256" sumtext="코드명"/>
  283. <Column id="chk" type="STRING" size="256" sumtext="chk"/>
  284. <Column id="etc01" type="STRING" size="256" sumtext="기타1"/>
  285. <Column id="etc02" type="STRING" size="256" sumtext="기타2"/>
  286. <Column id="etc03" type="STRING" size="256" sumtext="기타3"/>
  287. <Column id="etc04" type="STRING" size="256" sumtext="기타4"/>
  288. <Column id="etc05" type="STRING" size="256" sumtext="기타4"/>
  289. </ColumnInfo>
  290. </Dataset>
  291. <Dataset id="ds_getrtnpsnnm" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  292. <ColumnInfo>
  293. <Column id="usernm" type="STRING" size="256" sumtext="반환폐기자명"/>
  294. </ColumnInfo>
  295. </Dataset>
  296. <Dataset id="ds_cmb_rtnabn" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  297. <ColumnInfo>
  298. <Column id="cd" type="STRING" size="256"/>
  299. <Column id="nm" type="STRING" size="256"/>
  300. </ColumnInfo>
  301. <Rows>
  302. <Row>
  303. <Col id="cd">1</Col>
  304. <Col id="nm">반납</Col>
  305. </Row>
  306. <Row>
  307. <Col id="cd">2</Col>
  308. <Col id="nm">폐기</Col>
  309. </Row>
  310. <Row>
  311. <Col id="cd">3</Col>
  312. <Col id="nm">잔여혈액폐기</Col>
  313. </Row>
  314. <Row>
  315. <Col id="cd">4</Col>
  316. <Col id="nm">잔여혈액폐기</Col>
  317. </Row>
  318. </Rows>
  319. </Dataset>
  320. </Objects>
  321. <Bind>
  322. <BindItem id="item0" compid="group2.ipt_rtnpsn" propid="value" datasetid="ds_hidden" columnid="rtnpsn"/>
  323. <BindItem id="item1" compid="group2.opt_rtnpsnnm" propid="value" datasetid="ds_getrtnpsnnm" columnid="usernm"/>
  324. <BindItem id="item2" compid="group2.ipt_pid" propid="value" datasetid="ds_hidden" columnid="pid"/>
  325. <BindItem id="item3" compid="group2.ipt_blodno" propid="value" datasetid="ds_hidden" columnid="blodno"/>
  326. <BindItem id="item4" compid="group2.rdo_flag" propid="value" datasetid="ds_hidden" columnid="flag"/>
  327. <BindItem id="item5" compid="group2.ipt_appsdt" propid="value" datasetid="ds_hidden" columnid="appsdt"/>
  328. <BindItem id="item6" compid="group2.ipt_appedt" propid="value" datasetid="ds_hidden" columnid="appedt"/>
  329. <BindItem id="item7" compid="group2.cbo_bkind" propid="value" datasetid="ds_hidden" columnid="bldkind"/>
  330. <BindItem id="item8" compid="group2.rdo_cnfmflag" propid="value" datasetid="ds_hidden" columnid="cnfmflag"/>
  331. </Bind>
  332. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  333. * System Name :
  334. * Job Name :
  335. * Creator :
  336. * Make Date : 2015-05-01
  337. * Description :
  338. *---------------------------------------------------------------------------------------
  339. * Modify Date Modifier Modify Description
  340. *---------------------------------------------------------------------------------------
  341. * 2015-05-01 Live Converter TF->XP
  342. *
  343. *---------------------------------------------------------------------------------------
  344. ****************************************************************************************/
  345. include "com_commonxp::comm_main.xjs";
  346. include "lis_commonxp::LLZ001.xjs";
  347. function SMLBT11000_oninit(obj:Form, e:InitEventInfo)
  348. {
  349. frmf_initForm(obj);
  350. grdf_initGrid(grd_rtnabnlist);
  351. grdf_setRowTypeIcon(grd_rtnabnlist, 0);
  352. }
  353. function SMLBT11000_onload(obj:Form, e:LoadEventInfo)
  354. {
  355. fSetInit();
  356. group3.enable = false;
  357. Group_idChk.ID_txt.setFocus();
  358. }
  359. //초기화
  360. function fSetInit()
  361. {
  362. ds_grd_rtnabnlist.clearData();
  363. var toDay = utlf_getCurrentDate();
  364. ds_hidden.setColumn(0, "rtnpsn", "");
  365. ds_hidden.setColumn(0, "pid", "");
  366. ds_hidden.setColumn(0, "blodno", "");
  367. ds_hidden.setColumn(0, "flag", "0");
  368. ds_hidden.setColumn(0, "appsdt", toDay);
  369. ds_hidden.setColumn(0, "appedt", toDay);
  370. //grd_rtnabnlist.fixedcellcheckbox(0,1)=true;
  371. dsf_createDsRow("ds_send", [{col : "codeflag", val : "0606|"}]); //성분제제 blodbarcd
  372. var oParam = {};
  373. oParam.id = "TRLZZ00101";
  374. oParam.service = "diagtestapplib.DiagTestBaseInfoMngt";
  375. oParam.method = "reqGetInitCodeInfo";
  376. oParam.inds = "cond=ds_send";
  377. oParam.outds = "ds_init_0606=0606";
  378. oParam.async = false;
  379. //oParam.callback = "cf_TRLZZ00101";
  380. tranf_submit(oParam);
  381. }
  382. function Group_idChk_ID_txt_onkeydown(obj:TextArea, e:KeyEventInfo)
  383. {
  384. if(e.keycode == 13)
  385. {
  386. var I_txt = Group_idChk.ID_txt.text;
  387. ds_hidden.setColumn(0, "rtnpsn", (I_txt).toUpperCase());
  388. fGetRtnPsnNm();
  389. //if(model.getValue("/root/main/getrtnpsnnm/rtnpsnnm") == "")
  390. if(utlf_isNull(ds_getrtnpsnnm.getColumn(0, "usernm")))
  391. {
  392. alert("반환(폐기)자를 입력하십시오.");
  393. ds_hidden.setColumn(0, "rtnpsn", "");
  394. group2.ipt_pid.setFocus();
  395. Group_idChk.ID_txt.value = "";
  396. Group_idChk.ID_txt.setFocus();
  397. return;
  398. }
  399. else
  400. {
  401. //model.setFocus("ipt_pid");
  402. ds_hidden.setColumn(0, "rtnpsn", I_txt);
  403. group2.ipt_pid.setFocus();
  404. Group_idChk.visible = false;
  405. group3.enable = true;
  406. }
  407. }
  408. }
  409. //반환(폐기)자 조회
  410. function fGetRtnPsnNm()
  411. {
  412. //if(model.getValue("/root/hidden/rtnpsn")=="")
  413. if(utlf_isNull(ds_hidden.getColumn(0, "rtnpsn")))
  414. {
  415. alert("반환(폐기)자를 입력하십시오.");
  416. return;
  417. }
  418. //model.setValue("/root/send/rtnpsn", model.getValue("/root/hidden/rtnpsn"));
  419. dsf_createDsRow("ds_send", [{col : "rtnpsn", val : ds_hidden.getColumn(0, "rtnpsn")}]);
  420. var oParam = {};
  421. oParam.id = "TRLBT10701";
  422. oParam.service = "transfusionmngtapp.BloodRtnAbnRgst";
  423. oParam.method = "reqGetRtnPsnNm";
  424. oParam.inds = "cond=ds_send";
  425. oParam.outds = "ds_getrtnpsnnm=getRtnPsnNm";
  426. oParam.async = false;
  427. //oParam.callback = "cf_TRLBT10701";
  428. tranf_submit(oParam);
  429. }
  430. //조회
  431. function group2_btn_ref_onclick(obj:Button, e:ClickEventInfo)
  432. {
  433. fGetRtnAbnList();
  434. }
  435. //조회
  436. function fGetRtnAbnList()
  437. {
  438. dsf_createDsRow("ds_cond_rtnpsn", [{col : "rtnpsn", val : ds_hidden.getColumn(0, "rtnpsn")}
  439. ,{col : "pid", val : group2.ipt_pid.value}
  440. ,{col : "flag", val : ds_hidden.getColumn(0, "flag")}
  441. ,{col : "appsdt", val : ds_hidden.getColumn(0, "appsdt")}
  442. ,{col : "appedt", val : ds_hidden.getColumn(0, "appedt")}
  443. ,{col : "blodkind", val : ds_hidden.getColumn(0, "bldkind")}
  444. ,{col : "cnfmflag", val : ds_hidden.getColumn(0, "cnfmflag")}]);
  445. var oParam = {};
  446. oParam.id = "TRLBT10702";
  447. oParam.service = "transfusionmngtapp.BloodRtnAbnRgst";
  448. oParam.method = "reqGetAbnRtnList";
  449. oParam.inds = "cond=ds_cond_rtnpsn";
  450. oParam.outds = "ds_grd_rtnabnlist=getAbnRtnList";
  451. oParam.async = false;
  452. //oParam.callback = "cf_TRLBT10702";
  453. tranf_submit(oParam);
  454. var count_yn = 'N' ;
  455. //for(iRow = 1; iRow < grd_rtnabnlist.rows;iRow++)
  456. for(iRow = 0; iRow < ds_grd_rtnabnlist.rowcount; iRow++)
  457. {
  458. //if(model.getvalue("/root/main/rtnabnlist["+iRow+"]/rsncd") == "07299" || model.getvalue("/root/main/rtnabnlist["+iRow+"]/rsncd") == "07201" )
  459. if(ds_grd_rtnabnlist.getColumn(iRow, "rsncd") == "07299" || ds_grd_rtnabnlist.getColumn(iRow, "rsncd") == "07201")
  460. {
  461. count_yn = 'Y';
  462. break;
  463. }
  464. }
  465. if(count_yn == "Y")
  466. {
  467. sysf_messageBox("주의! 병원사유로 폐기신청된 혈액입니다. " + ds_grd_rtnabnlist.getColumn(iRow, "resndesc") + " : 주의를 요합니다 " , "I007"); //model.getvalue("/root/main/rtnabnlist["+iRow+"]/rsn") + " : 주의를 요합니다 " , "I007");
  468. }
  469. }
  470. // function group2_ipt_pid_onkeydown(obj:Edit, e:KeyEventInfo)
  471. // {
  472. // if(e.keycode == 13)
  473. // {
  474. // fGetRtnAbnList();
  475. // }
  476. // }
  477. function group2_ipt_blodno_onkeydown(obj:Edit, e:KeyEventInfo)
  478. {
  479. if(e.keycode == 13)
  480. {
  481. ds_hidden.setColumn(0, "blodno", (group2.ipt_blodno.text).substr(0, 10));
  482. if(utlf_isNull(ds_hidden.getColumn(0, "blodno")))
  483. {
  484. sysf_messageBox("혈액번호를 입력하십시오.", "I");
  485. return;
  486. }
  487. if(ds_grd_rtnabnlist.rowcount >= 0)
  488. {
  489. fSetChekConfrim();
  490. }
  491. else
  492. {
  493. sysf_messageBox("반납,폐기 할 내역이 없습니다.", "I");
  494. return;
  495. }
  496. group2.ipt_blodno.setFocus();
  497. }
  498. }
  499. function group2_ipt_appedt_onkeyup(obj:Calendar, e:KeyEventInfo)
  500. {
  501. if(e.keycode == 13)
  502. {
  503. fGetRtnAbnList();
  504. }
  505. }
  506. function group2_ipt_pid_onkeyup(obj:Edit, e:KeyEventInfo)
  507. {
  508. if(e.keycode == 13)
  509. {
  510. fGetRtnAbnList();
  511. }
  512. }
  513. //조회
  514. function fSetChekConfrim()
  515. {
  516. var sblodno = group2.ipt_blodno.value;
  517. var findrow = ds_grd_rtnabnlist.findRow("blodno", sblodno);
  518. group2.ipt_blodno.value = "";
  519. if(findrow < 0)
  520. {
  521. sysf_messageBox("해당 혈액번호가 없습니다.","I","");
  522. group2.ipt_blodno.setFocus();
  523. }
  524. else
  525. {
  526. if(ds_grd_rtnabnlist.getColumn(findrow, "cnfm") == "Y")
  527. {
  528. sysf_messageBox("이미 반납/폐기 확인 된 혈액입니다.","I","");
  529. }
  530. ds_grd_rtnabnlist.setColumn(findrow, "color", "red");
  531. var sExpr = "EXPR(color)";
  532. for(var i=0; i< grd_rtnabnlist.getCellCount("body"); i++)
  533. {
  534. grd_rtnabnlist.setCellProperty("body", i, "color", sExpr);
  535. grd_rtnabnlist.setCellProperty("body", i, "color2", sExpr);
  536. grd_rtnabnlist.setCellProperty("body", i, "selectcolor", sExpr);
  537. }
  538. ds_grd_rtnabnlist.updatecontrol = false;
  539. ds_grd_rtnabnlist.setRowType(findrow, Dataset.ROWTYPE_INSERT);
  540. ds_grd_rtnabnlist.updatecontrol = true;
  541. ds_grd_rtnabnlist.addColumn("chk","string");
  542. ds_grd_rtnabnlist.setColumn(findrow, "chk", "Y");
  543. }
  544. }
  545. //폐기취소
  546. function group3_button1_onclick(obj:Button, e:ClickEventInfo)
  547. {
  548. fExeRtnAbnListCancel();
  549. }
  550. // 저장취소 ??진료에서 IF 못만들어준다고 해서 개발 중단 ??
  551. function fExeRtnAbnListCancel()
  552. {
  553. if(utlf_isNull(ds_hidden.getColumn(0, "rtnpsn")) || utlf_isNull(ds_getrtnpsnnm.getColumn(0, "usernm")))
  554. {
  555. sysf_messageBox("반환(폐기)자는", "I003");
  556. group2.ipt_rtnpsn.setFocus();
  557. return;
  558. }
  559. var cnfmchk ="";
  560. for(i = 0; i < ds_grd_rtnabnlist.rowcount; i++)
  561. {
  562. if(ds_grd_rtnabnlist.getColumn(i, "chk") == "Y" && ds_grd_rtnabnlist.getColumn(i, "cnfm") == "Y")
  563. {
  564. }
  565. else
  566. {
  567. cnfmchk = cnfmchk + i;
  568. }
  569. }
  570. if(!utlf_isNull(cnfmchk))
  571. {
  572. alert("확인 된 혈액만 확정취소 할 수 있습니다.");
  573. return;
  574. }
  575. var rtnabndata = grdf_getGridUpdateData(grd_rtnabnlist, "all");
  576. if(utlf_isNull(rtnabndata))
  577. {
  578. alert("확정취소할 내용이 없습니다. ");
  579. return;
  580. }
  581. dsf_createDsRow("ds_send_rtn", [{col : "rtnabndata", val : rtnabndata}
  582. ,{col : "rtnpsn", val : ds_hidden.getColumn(0, "rtnpsn")}]);
  583. //submit("TXLBT10702");
  584. var oParam = {};
  585. oParam.id = "TXLBT10702";
  586. oParam.service = "transfusionmngtapp.BloodRtnAbnRgst";
  587. oParam.method = "reqExeAbnRtnListBack";
  588. oParam.inds = "cond=ds_grd_rtnabnlist:U rtn=ds_send_rtn";
  589. oParam.async = false;
  590. //oParam.callback = "cf_TXLBT10702";
  591. tranf_submit(oParam);
  592. }
  593. function btn_cancel_onclick(obj:Button, e:ClickEventInfo)
  594. {
  595. fCheckCancel();
  596. }
  597. //선택취소(사용안함)
  598. function fCheckCancel()
  599. {
  600. if(ds_grd_rtnabnlist.rowcount > 0)
  601. {
  602. var row = ds_grd_rtnabnlist.rowposition;
  603. creatColumn(ds_grd_rtnabnlist, "color");
  604. creatColumn(ds_grd_rtnabnlist, "chk");
  605. ds_grd_rtnabnlist.setColumn(row, "color", "balck");
  606. ds_grd_rtnabnlist.setColumn(row, "chk", "N");
  607. var sExpr = "EXPR(color)";
  608. for(var i=0; i < ds_grd_rtnabnlist.getColCount(); i++)
  609. {
  610. grd_rtnabnlist.setCellProperty("body", i, "color", sExpr);
  611. grd_rtnabnlist.setCellProperty("body", i, "color2", sExpr);
  612. }
  613. ds_grd_rtnabnlist.updatecontrol = false;
  614. ds_grd_rtnabnlist.setRowType(row, Dataset.ROWTYPE_DELETE);
  615. ds_grd_rtnabnlist.updatecontrol = true;
  616. }
  617. else
  618. {
  619. sysf_messageBox("취소할 목록을","C002","");
  620. }
  621. }
  622. function creatColumn(objDs, strColID)
  623. {
  624. var isExist = false;
  625. if(!isExistCol(objDs, strColID))
  626. {
  627. objDs.addColumn(strColID,"string");
  628. }
  629. }
  630. //저장
  631. function group3_btn_save_onclick(obj:Button, e:ClickEventInfo)
  632. {
  633. fExeRtnAbnList();
  634. }
  635. //저장
  636. function fExeRtnAbnList()
  637. {
  638. var rtnabndata = grdf_getGridUpdateData(grd_rtnabnlist, "insert");
  639. if(utlf_isNull(ds_hidden.getColumn(0, "rtnpsn")) || utlf_isNull(ds_getrtnpsnnm.getColumn(0, "usernm")))
  640. {
  641. sysf_messageBox("반환(폐기)자는", "I003");
  642. group2.ipt_rtnpsn.setFocus();
  643. }
  644. else
  645. {
  646. //model.setValue("/root/send/rtnabndata", rtnabndata);
  647. //model.setValue("/root/send/rtnpsn", model.getValue("/root/hidden/rtnpsn"));
  648. dsf_createDsRow("ds_rtnabndata", [{col : "rtnabndata", val : rtnabndata}
  649. ,{col : "rtnpsn", val : ds_hidden.getColumn(0, "rtnpsn")}]);
  650. var oParam = {};
  651. oParam.id = "TXLBT10701";
  652. oParam.service = "transfusionmngtapp.BloodRtnAbnRgst";
  653. oParam.method = "reqExeAbnRtnList";
  654. oParam.inds = "cond=ds_grd_rtnabnlist:U rtn=ds_rtnabndata";
  655. oParam.async = false;
  656. //oParam.callback = "cf_TXLBT10701";
  657. tranf_submit(oParam);
  658. fGetRtnAbnList();
  659. var rowStatus;
  660. ds_grd_rtnabnlist.updatecontrol = false;
  661. for(var i=0; i < ds_grd_rtnabnlist.rowcount; i++)
  662. {
  663. rowStatus = ds_grd_rtnabnlist.getRowType(i);
  664. if(ds_grd_rtnabnlist.getColumn(i, "color") != "")
  665. {
  666. ds_grd_rtnabnlist.setColumn(i, "color", "");
  667. }
  668. ds_grd_rtnabnlist.setRowType(i, rowStatus);
  669. }
  670. ds_grd_rtnabnlist.updatecontrol = true;;
  671. var sExpr = "EXPR(color)";
  672. for(var i=0; i < grd_rtnabnlist.getCellCount("Head"); i++)
  673. {
  674. grd_rtnabnlist.setCellProperty("body", i, "color", sExpr);
  675. grd_rtnabnlist.setCellProperty("body", i, "color2", sExpr);
  676. }
  677. }
  678. }
  679. //초기화
  680. function group3_btn_init_onclick(obj:Button, e:ClickEventInfo)
  681. {
  682. fSetInit();
  683. }
  684. //엑셀
  685. function btn_excel_onclick(obj:Button, e:ClickEventInfo)
  686. {
  687. grdf_exportExcel(grd_rtnabnlist, lf_lisGetTitle(), "sheet1", false);
  688. }
  689. function Group_idChk_button44_onclick(obj:Button, e:ClickEventInfo)
  690. {
  691. Group_idChk.visible = false;
  692. }
  693. function Group_idChk_ID_txt_oneditclick(obj:TextArea, e:EditClickEventInfo)
  694. {
  695. }
  696. ]]></Script>
  697. </Form>
  698. </FDL>