SMLBT00100_혈액입고관리.xfdl 86 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMLBT00100" position="absolute 0 0 1207 782" titletext="New Form" oninit="SMLBT00100_oninit" onload="SMLBT00100_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 1 26 1201 778" id="group3" scrollbars="autoboth" anchor="all">
  8. <Layouts>
  9. <Layout>
  10. <Static text="입고리스트" position="absolute 377 63 465 79" id="caption3" class="tit_2" anchor="default"/>
  11. <Static text="개별입고" position="absolute 3 441 77 457" id="caption5" class="tit_2" anchor="left bottom"/>
  12. <Shape position="absolute 2 457 370 463" linetype="horizontal" id="line4" class="line_1" anchor="left bottom" style="strokepen:3 solid #33bbbbff;"/>
  13. <Combo position="absolute 92 515 222 534" id="cmb_inst" class="combo_essential" innerdataset="ds_init_cmb_inst" datacolumn="nm" codecolumn="cd" anchor="left bottom"/>
  14. <Radio position="absolute 92 665 295 686" id="rad_blodkind" class="radio_search" columncount="3" codecolumn="codecolumn" datacolumn="datacolumn" anchor="left bottom">
  15. <Dataset id="innerdataset">
  16. <ColumnInfo>
  17. <Column id="codecolumn"/>
  18. <Column id="datacolumn"/>
  19. </ColumnInfo>
  20. <Rows>
  21. <Row>
  22. <Col id="codecolumn">0</Col>
  23. <Col id="datacolumn">혈액원</Col>
  24. </Row>
  25. <Row>
  26. <Col id="codecolumn">1</Col>
  27. <Col id="datacolumn">헌혈</Col>
  28. </Row>
  29. <Row>
  30. <Col id="codecolumn">2</Col>
  31. <Col id="datacolumn">교환</Col>
  32. </Row>
  33. </Rows>
  34. </Dataset>
  35. </Radio>
  36. <Calendar position="absolute 92 592 182 611" id="input8" class="input_essential" anchor="left bottom"/>
  37. <Calendar position="absolute 92 640 182 659" id="input4" class="input_essential" anchor="left bottom"/>
  38. <Static position="absolute 231 576 364 651" id="caption57" class="font_ab" anchor="left bottom" style="align:center middle;font:Dotum,48;" visible="true"/>
  39. <Shape position="absolute 2 615 215 621" linetype="vertical" id="line8" class="line_2" anchor="left bottom"/>
  40. <Div position="absolute 0 -1 1191 57" align="align:center top;" id="group5" class="div_SA" anchor="left top right">
  41. <Layouts>
  42. <Layout>
  43. <Combo position="absolute 553 29 652 48" id="combo6" class="combo_search" visible="false" codecolumn="codecolumn" datacolumn="datacolumn" anchor="top right" onitemchanged="group3_group5_combo6_onitemchanged">
  44. <Dataset id="innerdataset">
  45. <ColumnInfo>
  46. <Column id="codecolumn"/>
  47. <Column id="datacolumn"/>
  48. </ColumnInfo>
  49. <Rows>
  50. <Row>
  51. <Col id="codecolumn">1</Col>
  52. <Col id="datacolumn">바코드입력</Col>
  53. </Row>
  54. <Row>
  55. <Col id="codecolumn">2</Col>
  56. <Col id="datacolumn">혈액번호</Col>
  57. </Row>
  58. </Rows>
  59. </Dataset>
  60. </Combo>
  61. <Static text="입고일자 :" position="absolute 566 10 637 27" id="caption15" class="search_name" anchor="top right"/>
  62. <Button position="absolute 887 7 943 29" id="button2" class="btn1" text="조회" anchor="top right" onclick="group3_group5_button2_onclick"/>
  63. <Shape position="absolute 879 7 885 29" linetype="vertical" id="line12" class="line_4" anchor="top right"/>
  64. <Calendar position="absolute 640 9 746 28" id="input2" class="input_s_essential" anchor="top right"/>
  65. <Calendar position="absolute 758 9 864 28" id="input9" class="input_s_essential" anchor="top right" onkeyup="group3_group5_input9_onkeyup"/>
  66. <Static text="~" position="absolute 746 11 761 28" id="caption16" class="search_no_b" anchor="top right"/>
  67. <Static text="혈액검색 :" position="absolute 964 10 1036 27" id="caption4" class="search_name" anchor="top right"/>
  68. <Edit position="absolute 1039 8 1179 27" id="input6" class="input_button" anchor="top right" onkeydown="group3_group5_input6_onkeydown"/>
  69. <Static text="입고자 ID:" position="absolute 13 10 88 27" id="caption2" class="search_name" anchor="left top"/>
  70. <Edit position="absolute 91 9 166 28" id="input7" class="input_s_essential" taborder="1" anchor="left top" onkeyup="group3_group5_input7_onkeyup"/>
  71. <Edit readonly="true" position="absolute 167 9 247 28" id="output1" class="output_search" anchor="left top" enable="false" enableevent="false" tabstop="true" visible="true"/>
  72. <Combo position="absolute 367 9 536 28" id="combo3" innerdataset="ds_init_combo3" datacolumn="nm" codecolumn="cd" anchor="left top"/>
  73. <Combo position="absolute 263 9 363 28" id="combo4" codecolumn="codecolumn" datacolumn="datacolumn" anchor="left top">
  74. <Dataset id="innerdataset">
  75. <ColumnInfo>
  76. <Column id="codecolumn"/>
  77. <Column id="datacolumn"/>
  78. </ColumnInfo>
  79. <Rows>
  80. <Row>
  81. <Col id="codecolumn">-</Col>
  82. <Col id="datacolumn">전체</Col>
  83. </Row>
  84. <Row>
  85. <Col id="codecolumn">0</Col>
  86. <Col id="datacolumn">혈액원</Col>
  87. </Row>
  88. <Row>
  89. <Col id="codecolumn">1</Col>
  90. <Col id="datacolumn">헌혈</Col>
  91. </Row>
  92. <Row>
  93. <Col id="codecolumn">2</Col>
  94. <Col id="datacolumn">교환입고</Col>
  95. </Row>
  96. </Rows>
  97. </Dataset>
  98. </Combo>
  99. </Layout>
  100. </Layouts>
  101. </Div>
  102. <TextArea position="absolute 92 689 371 743" id="textarea1" anchor="left bottom"/>
  103. <Edit position="absolute 92 488 222 507" id="input3" class="input_essential" anchor="left bottom"/>
  104. <Static text="헌혈일시" position="absolute 2 591 90 614" align="align:center middle;" id="caption10" class="cell_1" anchor="left bottom"/>
  105. <Static text="기관코드" position="absolute 2 513 90 536" align="align:center middle;" id="caption11" class="cell_1" anchor="left bottom"/>
  106. <Static text="입고일시" position="absolute 2 639 90 662" align="align:center middle;" id="caption12" class="cell_1" anchor="left bottom"/>
  107. <Static text="입고유형" position="absolute 2 665 90 688" align="align:center middle;" id="caption7" class="cell_1" anchor="left bottom"/>
  108. <Static text="Comment" position="absolute 2 689 90 743" align="align:center middle;" id="caption17" class="cell_1" anchor="left bottom"/>
  109. <Static text="혈액형" position="absolute 2 539 90 562" align="align:center middle;" id="caption8" class="cell_1" anchor="left bottom"/>
  110. <Static text="성분제제용량" position="absolute 2 565 91 588" align="align:center middle;" id="caption9" class="cell_1" anchor="left bottom" style="align:left middle;"/>
  111. <Static text="혈액번호" position="absolute 2 487 90 510" align="align:center middle;" id="caption18" class="cell_1" anchor="left bottom"/>
  112. <Static text="파일입고 Summary" position="absolute 1 65 144 83" id="caption1" class="tit_2" anchor="default"/>
  113. <Shape position="absolute 1 81 369 87" linetype="horizontal" id="line2" class="line_1" anchor="default" style="strokepen:3 solid #33bbbbff;"/>
  114. <Grid position="absolute 1 85 369 422" id="grd_summery" binddataset="ds_grd_summery" anchor="left top bottom" autofittype="col" cellsizingtype="col">
  115. <Formats>
  116. <Format id="default">
  117. <Columns>
  118. <Column size="25"/>
  119. <Column size="222"/>
  120. <Column size="66"/>
  121. <Column size="54"/>
  122. </Columns>
  123. <Rows>
  124. <Row size="24" band="head"/>
  125. <Row size="24"/>
  126. <Row size="24" band="summ"/>
  127. </Rows>
  128. <Band id="head">
  129. <Cell/>
  130. <Cell col="1" text="혈액성분"/>
  131. <Cell col="2" text="혈액형"/>
  132. <Cell col="3" text="수량"/>
  133. </Band>
  134. <Band id="body">
  135. <Cell celltype="head" text="expr:currow + 1"/>
  136. <Cell col="1" style="align:left middle;" text="bind:blodcomnm"/>
  137. <Cell col="2" text="bind:aborh"/>
  138. <Cell col="3" text="bind:cnt"/>
  139. </Band>
  140. <Band id="summary">
  141. <Cell celltype="none"/>
  142. <Cell col="1" style="align:left middle;" text="Total"/>
  143. <Cell col="2"/>
  144. <Cell col="3" text="expr:getSum(&quot;cnt&quot;)"/>
  145. </Band>
  146. </Format>
  147. </Formats>
  148. </Grid>
  149. <Edit position="absolute 92 462 222 481" id="input5" class="input_essential" taborder="2" anchor="left bottom" oneditclick="group3_input5_oneditclick"/>
  150. <Edit position="absolute 275 539 340 558" id="input10" class="input_essential" visible="false" anchor="left bottom"/>
  151. <Edit position="absolute 330 488 370 507" id="input11" class="input_essential" visible="false" anchor="left bottom"/>
  152. <Edit position="absolute 330 461 370 480" id="input12" class="input_essential" visible="false" anchor="left bottom"/>
  153. <Edit position="absolute 290 488 330 507" id="input13" class="input_essential" visible="false" anchor="left bottom"/>
  154. <Edit position="absolute 290 461 330 480" id="input14" class="input_essential" visible="false" anchor="left bottom"/>
  155. <Edit position="absolute 245 488 285 507" id="input16" class="input_essential" visible="false" anchor="left bottom"/>
  156. <Edit position="absolute 245 461 285 480" id="input17" class="input_essential" visible="false" anchor="left bottom"/>
  157. <Combo position="absolute 92 540 222 559" id="combo1" class="combo_essential" codecolumn="codecolumn" datacolumn="datacolumn" anchor="left bottom" onitemchanged="group3_combo1_onitemchanged">
  158. <Dataset id="innerdataset">
  159. <ColumnInfo>
  160. <Column id="codecolumn"/>
  161. <Column id="datacolumn"/>
  162. </ColumnInfo>
  163. <Rows>
  164. <Row>
  165. <Col id="codecolumn">A+</Col>
  166. <Col id="datacolumn">A+</Col>
  167. </Row>
  168. <Row>
  169. <Col id="codecolumn">A-</Col>
  170. <Col id="datacolumn">A-</Col>
  171. </Row>
  172. <Row>
  173. <Col id="codecolumn">B+</Col>
  174. <Col id="datacolumn">B+</Col>
  175. </Row>
  176. <Row>
  177. <Col id="codecolumn">B-</Col>
  178. <Col id="datacolumn">B-</Col>
  179. </Row>
  180. <Row>
  181. <Col id="codecolumn">O+</Col>
  182. <Col id="datacolumn">O+</Col>
  183. </Row>
  184. <Row>
  185. <Col id="codecolumn">O-</Col>
  186. <Col id="datacolumn">O-</Col>
  187. </Row>
  188. <Row>
  189. <Col id="codecolumn">AB+</Col>
  190. <Col id="datacolumn">AB+</Col>
  191. </Row>
  192. <Row>
  193. <Col id="codecolumn">AB-</Col>
  194. <Col id="datacolumn">AB-</Col>
  195. </Row>
  196. </Rows>
  197. </Dataset>
  198. </Combo>
  199. <MaskEdit position="absolute 183 592 223 611" id="input1" mask="##:##" anchor="left bottom" type="string"/>
  200. <MaskEdit position="absolute 183 640 223 659" id="input15" mask="##:##" anchor="left bottom" type="string"/>
  201. <Combo position="absolute 93 566 222 585" id="combo2" innerdataset="@ds_init_combo3" datacolumn="nm" codecolumn="cd" anchor="left bottom"/>
  202. <Grid position="absolute 375 84 1194 745" id="grd_winlist" visible="true" binddataset="ds_grd_winlist" anchor="all" autofittype="none" cellsizingtype="col">
  203. <Formats>
  204. <Format id="default">
  205. <Columns>
  206. <Column size="20"/>
  207. <Column size="29"/>
  208. <Column size="80"/>
  209. <Column size="86"/>
  210. <Column size="36"/>
  211. <Column size="30"/>
  212. <Column size="70"/>
  213. <Column size="70"/>
  214. <Column size="70"/>
  215. <Column size="116"/>
  216. <Column size="116"/>
  217. <Column size="116"/>
  218. <Column size="116"/>
  219. <Column size="80"/>
  220. <Column size="70"/>
  221. <Column size="70"/>
  222. <Column size="70"/>
  223. <Column size="0"/>
  224. <Column size="0"/>
  225. <Column size="0"/>
  226. <Column size="0"/>
  227. <Column size="0"/>
  228. <Column size="0"/>
  229. <Column size="0"/>
  230. <Column size="0"/>
  231. <Column size="0"/>
  232. <Column size="0"/>
  233. <Column size="0"/>
  234. <Column size="0"/>
  235. </Columns>
  236. <Rows>
  237. <Row size="24" band="head"/>
  238. <Row size="24"/>
  239. </Rows>
  240. <Band id="head">
  241. <Cell/>
  242. <Cell col="1" displaytype="checkbox" edittype="checkbox"/>
  243. <Cell col="2" text="혈액번호"/>
  244. <Cell col="3" text="성분제제"/>
  245. <Cell col="4" text="ABO"/>
  246. <Cell col="5" text="RH"/>
  247. <Cell col="6" text="환자명"/>
  248. <Cell col="7" text="등록번호"/>
  249. <Cell col="8" text="Donor"/>
  250. <Cell col="9" text="유효일시"/>
  251. <Cell col="10" text="헌혈일시"/>
  252. <Cell col="11" text="제제일시"/>
  253. <Cell col="12" text="입고일시"/>
  254. <Cell col="13" text="입고자"/>
  255. <Cell col="14" text="구분"/>
  256. <Cell col="15" text="상태"/>
  257. <Cell col="16" text="출고유형"/>
  258. <Cell col="17"/>
  259. <Cell col="18"/>
  260. <Cell col="19"/>
  261. <Cell col="20"/>
  262. <Cell col="21"/>
  263. <Cell col="22"/>
  264. <Cell col="23"/>
  265. <Cell col="24"/>
  266. <Cell col="25"/>
  267. <Cell col="26"/>
  268. <Cell col="27"/>
  269. <Cell col="28"/>
  270. </Band>
  271. <Band id="body">
  272. <Cell celltype="head" expr="expr:currow + 1"/>
  273. <Cell col="1" displaytype="checkbox" edittype="checkbox" style="background:BIND(backcolor);background2:BIND(backcolor);" text="bind:chk"/>
  274. <Cell col="2" style="background:BIND(backcolor);background2:BIND(backcolor);" text="bind:blodno"/>
  275. <Cell col="3" style="align:left middle;background:BIND(backcolor);background2:BIND(backcolor);" text="bind:blodcomnm"/>
  276. <Cell col="4" style="background:BIND(backcolor);background2:BIND(backcolor);" text="bind:abo"/>
  277. <Cell col="5" style="background:BIND(backcolor);background2:BIND(backcolor);" text="bind:rh"/>
  278. <Cell col="6" style="background:BIND(backcolor);background2:BIND(backcolor);" text="bind:tnsrnm"/>
  279. <Cell col="7" style="background:BIND(backcolor);background2:BIND(backcolor);" text="bind:tnsrpid"/>
  280. <Cell col="8" style="background:BIND(backcolor);background2:BIND(backcolor);" text="bind:dnornm"/>
  281. <Cell col="9" displaytype="date" style="background:BIND(backcolor);background2:BIND(backcolor);" text="bind:validt" mask="yyyy-MM-dd HH:mm:ss"/>
  282. <Cell col="10" displaytype="date" style="background:BIND(backcolor);background2:BIND(backcolor);" text="bind:dondt" mask="yyyy-MM-dd HH:mm:ss"/>
  283. <Cell col="11" displaytype="date" style="background:BIND(backcolor);background2:BIND(backcolor);" text="bind:proddt" mask="yyyy-MM-dd HH:mm:ss"/>
  284. <Cell col="12" displaytype="date" style="background:BIND(backcolor);background2:BIND(backcolor);" text="bind:windt" mask="yyyy-MM-dd HH:mm:ss"/>
  285. <Cell col="13" style="background:BIND(backcolor);background2:BIND(backcolor);" text="bind:winnm"/>
  286. <Cell col="14" style="background:BIND(backcolor);background2:BIND(backcolor);" text="bind:blodkindnm"/>
  287. <Cell col="15" style="background:BIND(backcolor);background2:BIND(backcolor);" text="bind:blodstatnm"/>
  288. <Cell col="16" style="background:BIND(backcolor);background2:BIND(backcolor);" text="bind:iokind"/>
  289. <Cell col="17" text="bind:blodkind"/>
  290. <Cell col="18" text="bind:blodstat"/>
  291. <Cell col="19" text="bind:winid"/>
  292. <Cell col="20" text="bind:blodbarcd"/>
  293. <Cell col="21" text="bind:blodbasevol"/>
  294. <Cell col="22" text="bind:blodrem"/>
  295. <Cell col="23" text="bind:blodcomcd"/>
  296. <Cell col="24" text="bind:dnorpid"/>
  297. <Cell col="25" text="bind:dnornm"/>
  298. <Cell col="26" text="bind:execprcpuniqno"/>
  299. <Cell col="27" text="bind:donflag"/>
  300. <Cell col="28" text="bind:inst"/>
  301. </Band>
  302. </Format>
  303. </Formats>
  304. </Grid>
  305. <Grid position="absolute 388 410 1178 520" id="grd_tmp" visible="false" binddataset="ds_grd_tmp" anchor="default">
  306. <Formats>
  307. <Format id="default">
  308. <Columns>
  309. <Column size="100"/>
  310. <Column size="100"/>
  311. <Column size="100"/>
  312. <Column size="100"/>
  313. <Column size="100"/>
  314. <Column size="100"/>
  315. <Column size="100"/>
  316. <Column size="100"/>
  317. <Column size="100"/>
  318. <Column size="100"/>
  319. <Column size="100"/>
  320. <Column size="100"/>
  321. <Column size="100"/>
  322. <Column size="100"/>
  323. </Columns>
  324. <Rows>
  325. <Row size="24" band="head"/>
  326. <Row size="24"/>
  327. </Rows>
  328. <Band id="head">
  329. <Cell text="NO"/>
  330. <Cell col="1" text="공급일"/>
  331. <Cell col="2" text="공급시간"/>
  332. <Cell col="3" text="혈액명"/>
  333. <Cell col="4" text="혈액코드"/>
  334. <Cell col="5" text="채혈량mL"/>
  335. <Cell col="6" text="혈액번호"/>
  336. <Cell col="7" text="채혈일"/>
  337. <Cell col="8" text="채혈시간"/>
  338. <Cell col="9" text="제제일"/>
  339. <Cell col="10" text="제제시간"/>
  340. <Cell col="11" text="혈액형"/>
  341. <Cell col="12" text="단가"/>
  342. <Cell col="13" text="출고인"/>
  343. </Band>
  344. <Band id="body">
  345. <Cell displaytype="text" text="bind:seq"/>
  346. <Cell col="1" displaytype="text" text="bind:supldd"/>
  347. <Cell col="2" displaytype="text" text="bind:supltm"/>
  348. <Cell col="3" displaytype="text" text="bind:blodcomnm"/>
  349. <Cell col="4" displaytype="text" text="bind:blodbarcd"/>
  350. <Cell col="5" displaytype="text" text="bind:blodbasevol"/>
  351. <Cell col="6" displaytype="text" text="bind:blodno"/>
  352. <Cell col="7" displaytype="text" text="bind:bcolldd"/>
  353. <Cell col="8" displaytype="text" text="bind:bcolltm"/>
  354. <Cell col="9" displaytype="text" text="bind:jdd"/>
  355. <Cell col="10" displaytype="text" text="bind:jtm"/>
  356. <Cell col="11" displaytype="text" text="bind:aborh"/>
  357. <Cell col="12" displaytype="text" text="bind:unitcost"/>
  358. <Cell col="13" displaytype="text" text="bind:delivenm"/>
  359. </Band>
  360. </Format>
  361. </Formats>
  362. </Grid>
  363. <Static text="바코드입력" position="absolute 2 461 90 484" align="align:center middle;" id="caption19" class="cell_1" anchor="left bottom"/>
  364. <Calendar position="absolute 92 617 182 636" id="ipt_proddt" class="input_essential" anchor="left bottom"/>
  365. <Static text="제제일시" position="absolute 2 615 90 638" align="align:center middle;" id="caption13" class="cell_1" anchor="left bottom"/>
  366. <MaskEdit position="absolute 183 617 223 636" id="ipt_prodtm" mask="##:##" anchor="left bottom" maskchar="-" type="string"/>
  367. <Shape id="line00" class="line_1" position="absolute 375 80 1194 86" style="strokepen:3 solid #33bbbbff;" anchor="left top right"/>
  368. </Layout>
  369. </Layouts>
  370. </Div>
  371. <Button position="absolute 1139 86 1192 105" id="btn_add" class="btn2" text="행삭제" anchor="top right"/>
  372. <Div position="absolute 466 250 804 415" id="Group_idChk" style="background:#ff99ccff;">
  373. <Layouts>
  374. <Layout>
  375. <TextArea position="absolute 34 89 229 144" id="ID_txt" anchor="default" style="font:Dotum,22;" onkeydown="Group_idChk_ID_txt_onkeydown"/>
  376. <Button position="absolute 232 119 274 144" align="align:center middle;" id="button44" text="닫기" anchor="default" onclick="Group_idChk_button44_onclick"/>
  377. <Static text="입고자를 입력하세요" position="absolute 34 15 276 85" id="caption14" anchor="default" style="font:Dotum,18;"/>
  378. </Layout>
  379. </Layouts>
  380. </Div>
  381. <Static id="caption6" text="혈액입고관리" class="tit_1" position="absolute 0 0 110 25" anchor="left top"/>
  382. <Button id="button4" taborder="3" text="지정헌혈해제" class="btn4" position="absolute 938 3 1042 25" enable="true" onclick="button4_onclick" anchor="top right"/>
  383. <Button id="button1" taborder="4" text="입고취소" class="btn4" position="absolute 1043 3 1123 25" enable="true" onclick="button1_onclick" anchor="top right"/>
  384. <Button id="button5" taborder="5" text="초기화" class="btn4" position="absolute 1124 3 1192 25" enable="true" onclick="button5_onclick" anchor="top right"/>
  385. <Button id="button36" taborder="7" text="혈액입고" class="btn4" position="absolute 857 3 937 25" onclick="button36_onclick" anchor="top right"/>
  386. <Button id="button3" taborder="1" text="파일입고" class="btn4" position="absolute 776 3 856 25" enable="true" style="align:right;" onclick="button3_onclick" anchor="top right"/>
  387. <Button id="btn_search" taborder="8" onclick="group4_btn_search_onclick" style="background:skyblue;" defaultbutton="false" position="absolute 205 490 221 506" anchor="left bottom"/>
  388. <Button id="btn_search00" taborder="9" onclick="group4_btn_search_onclick" position="absolute 1162 35 1178 51" anchor="top right" style="background:skyblue;"/>
  389. </Layout>
  390. </Layouts>
  391. <Objects>
  392. <Dataset id="ds_init_cmb_inst" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  393. <ColumnInfo>
  394. <Column id="nm" type="STRING"/>
  395. <Column id="cd" type="STRING"/>
  396. </ColumnInfo>
  397. </Dataset>
  398. <Dataset id="ds_init_combo3" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  399. <ColumnInfo>
  400. <Column id="nm" type="STRING"/>
  401. <Column id="cd" type="STRING"/>
  402. <Column id="etc01" type="STRING" size="256"/>
  403. <Column id="etc02" type="STRING" size="256"/>
  404. <Column id="etc03" type="STRING" size="256"/>
  405. <Column id="etc04" type="STRING" size="256"/>
  406. </ColumnInfo>
  407. </Dataset>
  408. <Dataset id="ds_grd_summery" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  409. <ColumnInfo>
  410. <Column id="blodcomnm" type="STRING"/>
  411. <Column id="aborh" type="STRING"/>
  412. <Column id="cnt" type="STRING"/>
  413. </ColumnInfo>
  414. </Dataset>
  415. <Dataset id="ds_init_combo2" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  416. <ColumnInfo>
  417. <Column id="nm" type="STRING"/>
  418. <Column id="cd" type="STRING"/>
  419. </ColumnInfo>
  420. </Dataset>
  421. <Dataset id="ds_grd_winlist" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  422. <ColumnInfo>
  423. <Column id="chk" type="STRING"/>
  424. <Column id="blodno" type="STRING"/>
  425. <Column id="blodcomnm" type="STRING"/>
  426. <Column id="abo" type="STRING"/>
  427. <Column id="rh" type="STRING"/>
  428. <Column id="tnsrnm" type="STRING"/>
  429. <Column id="tnsrpid" type="STRING"/>
  430. <Column id="dnornm" type="STRING"/>
  431. <Column id="validt" type="STRING"/>
  432. <Column id="dondt" type="STRING"/>
  433. <Column id="proddt" type="STRING"/>
  434. <Column id="windt" type="STRING"/>
  435. <Column id="winnm" type="STRING"/>
  436. <Column id="blodkindnm" type="STRING"/>
  437. <Column id="blodstatnm" type="STRING"/>
  438. <Column id="iokind" type="STRING"/>
  439. <Column id="blodkind" type="STRING"/>
  440. <Column id="blodstat" type="STRING"/>
  441. <Column id="winid" type="STRING"/>
  442. <Column id="blodbarcd" type="STRING"/>
  443. <Column id="blodbasevol" type="STRING"/>
  444. <Column id="blodrem" type="STRING"/>
  445. <Column id="blodcomcd" type="STRING"/>
  446. <Column id="dnorpid" type="STRING"/>
  447. <Column id="dnornm" type="STRING"/>
  448. <Column id="execprcpuniqno" type="STRING"/>
  449. <Column id="donflag" type="STRING"/>
  450. <Column id="inst" type="STRING"/>
  451. <Column id="cstatColor" type="STRING" size="256"/>
  452. <Column id="backcolor" type="STRING" size="256"/>
  453. </ColumnInfo>
  454. <Rows>
  455. <Row/>
  456. </Rows>
  457. </Dataset>
  458. <Dataset id="ds_grd_tmp" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  459. <ColumnInfo>
  460. <Column id="status" type="STRING" size="256"/>
  461. <Column id="seq" type="STRING"/>
  462. <Column id="supldd" type="STRING"/>
  463. <Column id="supltm" type="STRING"/>
  464. <Column id="blodcomnm" type="STRING"/>
  465. <Column id="blodbarcd" type="STRING"/>
  466. <Column id="blodbasevol" type="STRING"/>
  467. <Column id="blodno" type="STRING"/>
  468. <Column id="bcolldd" type="STRING"/>
  469. <Column id="bcolltm" type="STRING"/>
  470. <Column id="jdd" type="STRING"/>
  471. <Column id="jtm" type="STRING"/>
  472. <Column id="aborh" type="STRING"/>
  473. <Column id="unitcost" type="STRING"/>
  474. <Column id="delivenm" type="STRING"/>
  475. </ColumnInfo>
  476. <Rows>
  477. <Row/>
  478. </Rows>
  479. </Dataset>
  480. <Dataset id="ds_hidden_pastwinrefparam" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  481. <ColumnInfo>
  482. <Column id="windt1" type="STRING" size="256"/>
  483. <Column id="windt2" type="STRING" size="256"/>
  484. <Column id="refflag" type="STRING" size="256"/>
  485. <Column id="blodno" type="STRING" size="256"/>
  486. <Column id="blodbarcd" type="STRING" size="256"/>
  487. <Column id="searchflag" type="STRING" size="256"/>
  488. <Column id="searchtext" type="STRING" size="256"/>
  489. <Column id="blodcomvol" type="STRING" size="256"/>
  490. <Column id="refblodkind" type="STRING" size="256"/>
  491. </ColumnInfo>
  492. <Rows>
  493. <Row>
  494. <Col id="refblodkind">-</Col>
  495. <Col id="searchflag">2</Col>
  496. </Row>
  497. </Rows>
  498. </Dataset>
  499. <Dataset id="ds_hidden_winlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  500. <ColumnInfo>
  501. <Column id="chk" type="STRING" size="256"/>
  502. <Column id="windt" type="STRING" size="256"/>
  503. <Column id="wintm" type="STRING" size="256"/>
  504. <Column id="abo" type="STRING" size="256"/>
  505. <Column id="rh" type="STRING" size="256"/>
  506. <Column id="blodcomnm" type="STRING" size="256"/>
  507. <Column id="blodno" type="STRING" size="256"/>
  508. <Column id="dondt" type="STRING" size="256"/>
  509. <Column id="dontm" type="STRING" size="256"/>
  510. <Column id="validt" type="STRING" size="256"/>
  511. <Column id="blodkind" type="STRING" size="256"/>
  512. <Column id="blodstat" type="STRING" size="256"/>
  513. <Column id="winid" type="STRING" size="256"/>
  514. <Column id="blodbarcd" type="STRING" size="256"/>
  515. <Column id="blodbasevol" type="STRING" size="256"/>
  516. <Column id="blodrem" type="STRING" size="256"/>
  517. <Column id="blodcomcd" type="STRING" size="256"/>
  518. <Column id="blodcomnmvol" type="STRING" size="256"/>
  519. <Column id="bcdno" type="STRING" size="256"/>
  520. <Column id="aborh" type="STRING" size="256"/>
  521. <Column id="valiterm" type="STRING" size="256"/>
  522. <Column id="inst" type="STRING" size="256"/>
  523. <Column id="blodcomnmvol2" type="STRING" size="256"/>
  524. <Column id="proddt" type="STRING" size="256"/>
  525. <Column id="prodtm" type="STRING" size="256"/>
  526. <Column id="Column0" type="STRING" size="256"/>
  527. </ColumnInfo>
  528. <Rows>
  529. <Row>
  530. <Col id="blodkind">0</Col>
  531. </Row>
  532. </Rows>
  533. </Dataset>
  534. <Dataset id="ds_hidden_winparam" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  535. <ColumnInfo>
  536. <Column id="winid" type="STRING" size="256"/>
  537. <Column id="winnm" type="STRING" size="256"/>
  538. <Column id="getuserAnm" type="STRING" size="256"/>
  539. </ColumnInfo>
  540. <Rows>
  541. <Row/>
  542. </Rows>
  543. </Dataset>
  544. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  545. <ColumnInfo>
  546. <Column id="data1" type="STRING" size="256"/>
  547. <Column id="data2" type="STRING" size="256"/>
  548. <Column id="data3" type="STRING" size="256"/>
  549. <Column id="deliveryid" type="STRING" size="256"/>
  550. <Column id="acceptid" type="STRING" size="256"/>
  551. <Column id="blodcomvol" type="STRING" size="256"/>
  552. </ColumnInfo>
  553. <Rows>
  554. <Row/>
  555. </Rows>
  556. </Dataset>
  557. <Dataset id="ds_hidden_winparam_getuserAnm" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  558. <ColumnInfo>
  559. <Column id="acceptnm" type="STRING" size="256"/>
  560. </ColumnInfo>
  561. <Rows>
  562. <Row/>
  563. </Rows>
  564. </Dataset>
  565. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  566. <ColumnInfo>
  567. <Column id="refparam" type="STRING" size="256"/>
  568. <Column id="pastwinrefparam" type="STRING" size="256"/>
  569. <Column id="tmpwinlist" type="STRING" size="256"/>
  570. <Column id="default" type="STRING" size="256"/>
  571. <Column id="winparam" type="STRING" size="256"/>
  572. <Column id="winlist" type="STRING" size="256"/>
  573. <Column id="indcaasewinlist" type="STRING" size="256"/>
  574. <Column id="comdoninfo" type="STRING" size="256"/>
  575. <Column id="bloodsearchyn" type="STRING" size="256"/>
  576. </ColumnInfo>
  577. <Rows>
  578. <Row/>
  579. </Rows>
  580. </Dataset>
  581. <Dataset id="ds_init_LB0601" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  582. <ColumnInfo>
  583. <Column id="cd" type="STRING" size="256"/>
  584. <Column id="nm" type="STRING" size="256"/>
  585. <Column id="etc01" type="STRING" size="256"/>
  586. <Column id="etc02" type="STRING" size="256"/>
  587. <Column id="etc03" type="STRING" size="256"/>
  588. <Column id="etc04" type="STRING" size="256"/>
  589. </ColumnInfo>
  590. <Rows>
  591. <Row/>
  592. </Rows>
  593. </Dataset>
  594. <Dataset id="ds_win_winlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  595. <ColumnInfo>
  596. <Column id="chk" type="STRING" size="256"/>
  597. <Column id="blodno" type="STRING" size="256"/>
  598. <Column id="blodcomnm" type="STRING" size="256"/>
  599. <Column id="abo" type="STRING" size="256"/>
  600. <Column id="rh" type="STRING" size="256"/>
  601. <Column id="tnsrnm" type="STRING" size="256"/>
  602. <Column id="tnsrpid" type="STRING" size="256"/>
  603. <Column id="validt" type="STRING" size="256"/>
  604. <Column id="dondt" type="STRING" size="256"/>
  605. <Column id="proddt" type="STRING" size="256"/>
  606. <Column id="windt" type="STRING" size="256"/>
  607. <Column id="winid" type="STRING" size="256"/>
  608. <Column id="blodkind" type="STRING" size="256"/>
  609. <Column id="blodstat" type="STRING" size="256"/>
  610. <Column id="blodbarcd" type="STRING" size="256"/>
  611. <Column id="blodbasevol" type="STRING" size="256"/>
  612. <Column id="blodrem" type="STRING" size="256"/>
  613. <Column id="blodcomcd" type="STRING" size="256"/>
  614. <Column id="inst" type="STRING" size="256"/>
  615. <Column id="dnorpid" type="STRING" size="256"/>
  616. <Column id="dnornm" type="STRING" size="256"/>
  617. <Column id="winnm" type="STRING" size="256"/>
  618. <Column id="execprcpuniqno" type="STRING" size="256"/>
  619. <Column id="donflag" type="STRING" size="256"/>
  620. </ColumnInfo>
  621. <Rows>
  622. <Row/>
  623. </Rows>
  624. </Dataset>
  625. <Dataset id="ds_return_blodnolist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  626. <ColumnInfo>
  627. <Column id="cnt" type="STRING" size="256"/>
  628. <Column id="blodnolist" type="STRING" size="256"/>
  629. </ColumnInfo>
  630. <Rows>
  631. <Row/>
  632. </Rows>
  633. </Dataset>
  634. <Dataset id="ds_getuserAnm" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  635. <ColumnInfo>
  636. <Column id="acceptnm" type="STRING" size="256"/>
  637. </ColumnInfo>
  638. <Rows>
  639. <Row/>
  640. </Rows>
  641. </Dataset>
  642. <Dataset id="ds_send_outerlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  643. <ColumnInfo>
  644. <Column id="chk" type="STRING"/>
  645. <Column id="blodno" type="STRING"/>
  646. <Column id="blodcomnm" type="STRING"/>
  647. <Column id="abo" type="STRING"/>
  648. <Column id="rh" type="STRING"/>
  649. <Column id="tnsrnm" type="STRING"/>
  650. <Column id="tnsrpid" type="STRING"/>
  651. <Column id="dnornm" type="STRING"/>
  652. <Column id="validt" type="STRING"/>
  653. <Column id="dondt" type="STRING"/>
  654. <Column id="proddt" type="STRING"/>
  655. <Column id="windt" type="STRING"/>
  656. <Column id="winnm" type="STRING"/>
  657. <Column id="blodkindnm" type="STRING"/>
  658. <Column id="blodstatnm" type="STRING"/>
  659. <Column id="iokind" type="STRING"/>
  660. <Column id="blodkind" type="STRING"/>
  661. <Column id="blodstat" type="STRING"/>
  662. <Column id="winid" type="STRING"/>
  663. <Column id="blodbarcd" type="STRING"/>
  664. <Column id="blodbasevol" type="STRING"/>
  665. <Column id="blodrem" type="STRING"/>
  666. <Column id="blodcomcd" type="STRING"/>
  667. <Column id="dnorpid" type="STRING"/>
  668. <Column id="dnornm" type="STRING"/>
  669. <Column id="execprcpuniqno" type="STRING"/>
  670. <Column id="donflag" type="STRING"/>
  671. <Column id="inst" type="STRING"/>
  672. </ColumnInfo>
  673. <Rows>
  674. <Row/>
  675. </Rows>
  676. </Dataset>
  677. <Dataset id="ds_hidden_casewinlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  678. <ColumnInfo>
  679. <Column id="chk" type="STRING" size="256"/>
  680. <Column id="windt" type="STRING" size="256"/>
  681. <Column id="wintm" type="STRING" size="256"/>
  682. <Column id="abo" type="STRING" size="256"/>
  683. <Column id="rh" type="STRING" size="256"/>
  684. <Column id="blodcomnm" type="STRING" size="256"/>
  685. <Column id="blodno" type="STRING" size="256"/>
  686. <Column id="dondt" type="STRING" size="256"/>
  687. <Column id="dontm" type="STRING" size="256"/>
  688. <Column id="validt" type="STRING" size="256"/>
  689. <Column id="blodkind" type="STRING" size="256"/>
  690. <Column id="blodstat" type="STRING" size="256"/>
  691. <Column id="winid" type="STRING" size="256"/>
  692. <Column id="blodbarcd" type="STRING" size="256"/>
  693. <Column id="blodbasevol" type="STRING" size="256"/>
  694. <Column id="blodrem" type="STRING" size="256"/>
  695. <Column id="blodcomcd" type="STRING" size="256"/>
  696. <Column id="blodcomnmvol" type="STRING" size="256"/>
  697. <Column id="bcdno" type="STRING" size="256"/>
  698. <Column id="aborh" type="STRING" size="256"/>
  699. <Column id="valiterm" type="STRING" size="256"/>
  700. <Column id="inst" type="STRING" size="256"/>
  701. <Column id="blodcomnmvol2" type="STRING" size="256"/>
  702. <Column id="proddt" type="STRING" size="256"/>
  703. <Column id="prodtm" type="STRING" size="256"/>
  704. <Column id="Column0" type="STRING" size="256"/>
  705. </ColumnInfo>
  706. </Dataset>
  707. <Dataset id="ds_send_data3" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  708. <ColumnInfo>
  709. <Column id="blodno" type="STRING" size="256"/>
  710. <Column id="blodbarcd" type="STRING" size="256"/>
  711. </ColumnInfo>
  712. <Rows>
  713. <Row/>
  714. </Rows>
  715. </Dataset>
  716. <Dataset id="ds_comdoninfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  717. <ColumnInfo>
  718. <Column id="instcd" type="STRING" size="256"/>
  719. <Column id="blodno" type="STRING" size="256"/>
  720. <Column id="blodbarcd" type="STRING" size="256"/>
  721. <Column id="btype" type="STRING" size="256"/>
  722. <Column id="donflag" type="STRING" size="256"/>
  723. <Column id="execprcpuniqno" type="STRING" size="256"/>
  724. <Column id="tnsrpid" type="STRING" size="256"/>
  725. <Column id="tnsrnm" type="STRING" size="256"/>
  726. <Column id="dnorpid" type="STRING" size="256"/>
  727. <Column id="dnornm" type="STRING" size="256"/>
  728. </ColumnInfo>
  729. </Dataset>
  730. <Dataset id="ds_copy_winlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  731. </Objects>
  732. <Bind>
  733. <BindItem id="item0" compid="group3.group5.input2" propid="value" datasetid="ds_hidden_pastwinrefparam" columnid="windt1"/>
  734. <BindItem id="item1" compid="group3.group5.input9" propid="value" datasetid="ds_hidden_pastwinrefparam" columnid="windt2"/>
  735. <BindItem id="item2" compid="group3.input8" propid="value" datasetid="ds_hidden_winlist" columnid="dondt"/>
  736. <BindItem id="item3" compid="group3.input1" propid="value" datasetid="ds_hidden_winlist" columnid="dontm"/>
  737. <BindItem id="item4" compid="group3.ipt_proddt" propid="value" datasetid="ds_hidden_winlist" columnid="proddt"/>
  738. <BindItem id="item5" compid="group3.ipt_prodtm" propid="value" datasetid="ds_hidden_winlist" columnid="prodtm"/>
  739. <BindItem id="item6" compid="group3.input4" propid="value" datasetid="ds_hidden_winlist" columnid="windt"/>
  740. <BindItem id="item7" compid="group3.input15" propid="value" datasetid="ds_hidden_winlist" columnid="wintm"/>
  741. <BindItem id="item8" compid="group3.rad_blodkind" propid="value" datasetid="ds_hidden_winlist" columnid="blodkind"/>
  742. <BindItem id="item9" compid="group3.group5.combo4" propid="value" datasetid="ds_hidden_pastwinrefparam" columnid="refblodkind"/>
  743. <BindItem id="item10" compid="group3.group5.input6" propid="value" datasetid="ds_hidden_pastwinrefparam" columnid="searchtext"/>
  744. <BindItem id="item11" compid="group3.group5.combo3" propid="value" datasetid="ds_hidden_pastwinrefparam" columnid="searchflag"/>
  745. <BindItem id="item12" compid="group3.input5" propid="value" datasetid="ds_hidden_winlist" columnid="bcdno"/>
  746. <BindItem id="item13" compid="group3.input17" propid="value" datasetid="ds_hidden_winlist" columnid="valiterm"/>
  747. <BindItem id="item14" compid="group3.input14" propid="value" datasetid="ds_hidden_winlist" columnid="blodcomcd"/>
  748. <BindItem id="item15" compid="group3.input12" propid="value" datasetid="ds_hidden_winlist" columnid="blodcomnm"/>
  749. <BindItem id="item16" compid="group3.input3" propid="value" datasetid="ds_hidden_winlist" columnid="blodno"/>
  750. <BindItem id="item17" compid="group3.input16" propid="value" datasetid="ds_hidden_winlist" columnid="validt"/>
  751. <BindItem id="item18" compid="group3.input13" propid="value" datasetid="ds_hidden_winlist" columnid="blodbarcd"/>
  752. <BindItem id="item19" compid="group3.input11" propid="value" datasetid="ds_hidden_winlist" columnid="blodbasevol"/>
  753. <BindItem id="item20" compid="group3.cmb_inst" propid="value" datasetid="ds_hidden_winlist" columnid="inst"/>
  754. <BindItem id="item21" compid="group3.combo1" propid="value" datasetid="ds_hidden_winlist" columnid="aborh"/>
  755. <BindItem id="item22" compid="group3.input10" propid="value" datasetid="ds_hidden_winlist" columnid="blodcomnmvol"/>
  756. <BindItem id="item23" compid="group3.combo2" propid="value" datasetid="ds_hidden_winlist" columnid="blodcomnmvol2"/>
  757. <BindItem id="item24" compid="group3.textarea1" propid="value" datasetid="ds_hidden_winlist" columnid="blodrem"/>
  758. </Bind>
  759. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  760. * System Name :
  761. * Job Name :
  762. * Creator :
  763. * Make Date : 2015-05-01
  764. * Description :
  765. *---------------------------------------------------------------------------------------
  766. * Modify Date Modifier Modify Description
  767. *---------------------------------------------------------------------------------------
  768. * 2015-05-01 Live Converter TF->XP
  769. *
  770. *---------------------------------------------------------------------------------------
  771. ****************************************************************************************/
  772. include "com_commonxp::comm_main.xjs";
  773. include "lis_commonxp::LLZ001.xjs";
  774. //콜백함수
  775. function cf_TXLBT00101(strSvcID, nErrorCode, strErrorMag)
  776. {
  777. if(nErrorCode == 0)
  778. {
  779. var bnoall = ds_return_blodnolist.getColumn(0, "blodnolist");
  780. var bno1 = bnoall.split("|");
  781. for(z = 0; z< ds_grd_winlist.rowcount; z++)
  782. {
  783. if(ds_grd_winlist.getColumn(z, "chk") == "1")
  784. {
  785. ds_grd_winlist.setColumn(z, "backcolor", "#00CC66");
  786. }
  787. }
  788. sysf_messageBox("입고완료.","I");
  789. }
  790. else
  791. {
  792. var bnoall = ds_return_blodnolist.getColumn(0, "blodnolist");
  793. var bno1 = bnoall.split("|");
  794. for(z = 0; z< ds_grd_winlist.rowcount; z++)
  795. {
  796. if(ds_grd_winlist.getColumn(z, "chk") == "1")
  797. {
  798. ds_grd_winlist.setColumn(z, "backcolor", "#FF0000");
  799. }
  800. }
  801. }
  802. }
  803. function cf_TRLBT00104(sSvcId, nErrorCode, sErrorMsg) {
  804. if(nErrorCode < 0) return;
  805. }
  806. function cf_TRLBT00103(sSvcId, nErrorCode, sErrorMsg) {
  807. if(nErrorCode < 0) return;
  808. }
  809. function SMLBT00100_oninit(obj:Form, e:InitEventInfo)
  810. {
  811. //폼 초기화 함수
  812. frmf_initForm(obj);
  813. }
  814. function SMLBT00100_onload(obj:Form, e:LoadEventInfo)
  815. {
  816. grdf_initGrid(group3.grd_summery);
  817. grdf_initGrid(group3.grd_winlist);
  818. grdf_initGrid(group3.grd_tmp);
  819. fSetClear();
  820. button3.enable = false;
  821. button36.enable = false;
  822. button4.enable = false;
  823. button1.enable = false;
  824. button5.enable = false;
  825. }
  826. var iRefFlag = 0;
  827. var hhCnt = 0;
  828. //초기화
  829. function fSetClear()
  830. {
  831. ds_grd_winlist.clearData();
  832. ds_grd_summery.clearData();
  833. var today = utlf_getNewDate();
  834. var sInDsName = dsf_createDsRow("ds_temp_search", [{col: "codeflag", val: "0601|0121|"}]);
  835. // 서브밋호출
  836. var oParam = {};
  837. oParam.id = "TRLZZ00101";
  838. oParam.service = "diagtestapplib.DiagTestBaseInfoMngt";
  839. oParam.method = "reqGetInitCodeInfo";
  840. oParam.inds = "cond=" + sInDsName;
  841. oParam.outds = "ds_init_combo3=0601 ds_init_cmb_inst=0121";
  842. oParam.async = false;
  843. oParam.callback = "cf_TRLZZ00101";
  844. tranf_submit(oParam);
  845. ds_hidden_pastwinrefparam.setColumn(0, "windt1", utlf_getCurrentDate());
  846. ds_hidden_pastwinrefparam.setColumn(0, "windt2", utlf_getCurrentDate());
  847. ds_hidden_winlist.setColumn(0, "dondt", utlf_getDateTime(today, "A"));
  848. ds_hidden_winlist.setColumn(0, "proddt", utlf_getDateTime(today, "A"));
  849. ds_hidden_winlist.setColumn(0, "windt", utlf_getDateTime(today, "A"));
  850. ds_hidden_winlist.setColumn(0, "wintm", utlf_getCurrentTime().substr(0,4));
  851. ds_hidden_winlist.setColumn(0, "prodtm", utlf_getCurrentTime().substr(0,4));
  852. ds_hidden_winlist.setColumn(0, "dontm", utlf_getCurrentTime().substr(0,4));
  853. ds_hidden_winlist.setColumn(0, "blodkind", "0");
  854. Group_idChk.ID_txt.setFocus();
  855. }
  856. function cf_TRLZZ00101(strSvcID, nErrorCode, strErrorMag)
  857. {
  858. if(nErrorCode != 0) sysf_messageBox("ID: " + strSvcID + " Error: " + strErrorMag, "E009", "");
  859. }
  860. //콜백_담당자 조회
  861. function cbf_TRLBT10404(strSvcID, nErrorCode, strErrorMag)
  862. {
  863. if(nErrorCode != 0)
  864. {
  865. sysf_messageBox("ID: " + strSvcID + " Error: " + strErrorMag, "E009", "");
  866. }
  867. else
  868. {
  869. group3.group5.output1.value = ds_temp_acceptnm.getColumn(0, "usernm");
  870. group3.group5.input7.value = ds_temp_acceptnm.getColumn(0, "userid");
  871. if(ds_temp_acceptnm.getColumn(0, "usernm") != "")
  872. {
  873. group3.group5.input6.setFocus();
  874. Group_idChk.visible = false; //입고자 입력
  875. button3.enable = true; //파일입고
  876. button36.enable = true; //핼액입고
  877. button4.enable = true; //지정헌혈해제
  878. button1.enable = true; //입고취소
  879. button5.enable = true; //초기화
  880. Group_idChk.button44.enable = true; //닫기
  881. }
  882. else
  883. {
  884. sysf_messageBox("입고자 ID가 정확히 입력되지","E007","");
  885. Group_idChk.ID_txt.value = "";
  886. Group_idChk.ID_txt.setFocus();
  887. return;
  888. }
  889. }
  890. }
  891. //입고자 입력
  892. function Group_idChk_ID_txt_onkeyup(obj:TextArea, e:KeyEventInfo)
  893. {
  894. if(e.keycode == 13)
  895. {
  896. var I_txt = Group_idChk.ID_txt.value;
  897. ds_hidden_winparam.setColumn(0, "winid", (I_txt).toUpperCase());
  898. ds_hidden_winparam.setColumn(0, "winid", (ds_hidden_winparam.getColumn(0, "winid")).replace("\n", ""));
  899. var sInDsName = dsf_createDsRow("ds_temp_search"
  900. , [{col: "acceptid", val: group3.group5.input7.value}]);
  901. var sOutDsName = dsf_createDsRow("ds_temp_acceptnm"
  902. , [{col: "usernm", val: ""}]);
  903. var oParam = {};
  904. oParam.id = "TRLBT10404";
  905. oParam.service = "transfusionmngtapp.BloodDelivery";
  906. oParam.method = "reqGetUsernm";
  907. oParam.inds = "cond="+sInDsName;
  908. oParam.outds = sOutDsName+"=getDeliverynm";
  909. oParam.async = false;
  910. oParam.callback = "cbf_TRLBT10404";
  911. tranf_submit(oParam);
  912. if( utlf_isNull(ds_temp_acceptnm.getColumn(0, "usernm"))){
  913. }
  914. else
  915. {
  916. group3.group5.input6.setFocus();
  917. Group_idChk.visible = false; //입고자 입력
  918. button3.enable = true; //파일입고
  919. button36.enable = true; //핼액입고
  920. button4.enable = true; //지정헌혈해제
  921. button1.enable = true; //입고취소
  922. button5.enable = true; //초기화
  923. }
  924. }
  925. }
  926. //조회
  927. function fPastWinList()
  928. {
  929. ds_hidden.setColumn(0, "bloodsearchyn", "N");
  930. ds_hidden_pastwinrefparam.setColumn(0, "refflag", "1");
  931. var oParam = {};
  932. oParam.id = "TRLBT00101";
  933. oParam.service = "donmngtapp.BloodWinMngt";
  934. oParam.method = "reqGetBloodWinList";
  935. oParam.inds = "cond=ds_hidden_pastwinrefparam";
  936. oParam.outds = "ds_grd_winlist=winlist ds_grd_summery=filesummerylist";
  937. oParam.async = false;
  938. //oParam.callback = "cf_TRLBT00101";
  939. tranf_submit(oParam);
  940. if(ds_grd_winlist.rowcount - 1 > 0)
  941. {
  942. iRefFlag = 1;
  943. btn_add.enable = false;
  944. }
  945. }
  946. // 혈액형 콤보 선택시
  947. function fSetABOCombo()
  948. {
  949. var pBlodABO = group3.combo1.value;
  950. var pBlodbarcd = "";
  951. if(pBlodABO =="A+")
  952. {
  953. pBlodbarcd = "6200";
  954. }
  955. else if(pBlodABO =="A-")
  956. {
  957. pBlodbarcd = "0600";
  958. }
  959. else if(pBlodABO =="B+")
  960. {
  961. pBlodbarcd = "7300";
  962. }
  963. else if(pBlodABO =="B-")
  964. {
  965. pBlodbarcd = "1700";
  966. }
  967. else if(pBlodABO =="AB+")
  968. {
  969. pBlodbarcd = "8400";
  970. }
  971. else if(pBlodABO =="AB-")
  972. {
  973. pBlodbarcd = "2800";
  974. }
  975. else if(pBlodABO =="O+")
  976. {
  977. pBlodbarcd = "5100";
  978. }
  979. else if(pBlodABO =="O-")
  980. {
  981. pBlodbarcd = "9500";
  982. }
  983. fABORH(pBlodbarcd);
  984. }
  985. function fABORH(pBlodbarcd)
  986. {
  987. var abo = ds_init_combo3.lookup("etc01",pBlodbarcd,"etc04");
  988. var rh = ds_init_combo3.lookup("etc01",pBlodbarcd,"etc05");
  989. ds_hidden_winlist.setColumn(0,"abo",abo);
  990. ds_hidden_winlist.setColumn(0,"rh",rh);
  991. ds_hidden_winlist.setColumn(0,"aborh",abo+rh);
  992. group3.caption57.text = abo + rh;
  993. }
  994. function fGetUser()
  995. {
  996. var I_id = group3.group5.input7.value;
  997. var sInDsName = dsf_createDsRow("ds_temp_search"
  998. , [{col: "acceptid", val: group3.group5.input7.value}]);
  999. var sOutDsName = dsf_createDsRow("ds_temp_acceptnm"
  1000. , [{col: "acceptnm", val: ""}]);
  1001. var oParam = {};
  1002. oParam.id = "TRLBT10404";
  1003. oParam.service = "transfusionmngtapp.BloodDelivery";
  1004. oParam.method = "reqGetUsernm";
  1005. oParam.inds = "cond="+sInDsName;
  1006. oParam.outds = sOutDsName+"=getDeliverynm";
  1007. oParam.async = false;
  1008. oParam.callback = "cbf_TRLBT10404";
  1009. tranf_submit(oParam);
  1010. group3.group5.input6.setFocus();
  1011. }
  1012. //파일입고
  1013. function fFileWin()
  1014. {
  1015. //혈액검색으로 조회여부
  1016. ds_hidden.setColumn(0, "bloodsearchyn", "N");
  1017. var fd = new FileDialog();
  1018. trace("fd = " +fd);
  1019. var file = fd.open("open", FileDialog.LOAD,"%MYDOCUMENT%");
  1020. file.open(VirtualFile.openRead | VirtualFile.openBinary);
  1021. file.close();
  1022. var objExtCommon = new ExtCommon();
  1023. ds_grd_tmp.clearData();
  1024. trace("fullpath = " + utlf_right(file.fullpath, 4));
  1025. if(utlf_right(file.fullpath, 4) == ".csv")
  1026. {
  1027. objExtCommon.csv2Ds(file.fullpath, "ds_grd_tmp", true, "Col01,Col02,Col03,Col04,Col05,Col06,Col07,Col08,Col09,Col10,Col11,Col12,Col13,Col14,Col15", ",");
  1028. }
  1029. else
  1030. {
  1031. objExtCommon.excelImportByIndex(file.fullpath, 0, "ds_grd_tmp");
  1032. }
  1033. if(ds_grd_tmp.rowcount==0)
  1034. {
  1035. sysf_messageBox("입력할 데이터가 없습니다. 엑셀파일을 확인하세요", "E");
  1036. return;
  1037. }
  1038. var bcnolist = ['status', 'seq','supldd', 'supltm', 'blodcomnm', 'blodbarcd', 'blodbasevol', 'blodno', 'bcolldd', 'bcolltm', 'jdd', 'jtm', 'aborh', 'unitcost', 'delivenm'];//▩';
  1039. trace("ds_grd_tmp = " + ds_grd_tmp.rowcount);
  1040. trace("bcnolist = " + bcnolist.length);
  1041. if(ds_grd_tmp.rowcount > 0)
  1042. {
  1043. var sInDsName = dsf_createDs("ds_temp_search");
  1044. for (var i = 0; i < bcnolist.length; i++)
  1045. {
  1046. ds_temp_search.addColumn(bcnolist[i], "String");
  1047. }
  1048. for(var i = 0; i < ds_grd_tmp.rowcount ; i++)
  1049. {
  1050. var a = ds_temp_search.addRow();
  1051. ds_temp_search.setColumn(a, bcnolist[0], "i");
  1052. for(var j = 1; j < bcnolist.length; j++)
  1053. {
  1054. ds_temp_search.setColumn(a, bcnolist[j], ds_grd_tmp.getColumn(i + 1, "Col" + (j.toString()).getLeftPad(2, '0')));
  1055. }
  1056. }
  1057. group3.grd_tmp.binddataset = "ds_temp_search";
  1058. ds_temp_search.deleteRow( ds_grd_tmp.rowcount - 1);
  1059. var oParam = {};
  1060. oParam.id = "TRLBT00102";
  1061. oParam.service = "donmngtapp.BloodWinMngt";
  1062. oParam.method = "reqGetFileBloodWinList";
  1063. oParam.inds = "filewinlist=ds_temp_search";
  1064. oParam.outds = "ds_grd_winlist=winlist ds_grd_summery=filesummerylist";
  1065. oParam.async = false;
  1066. //oParam.callback = "cf_TRLBT00102";
  1067. tranf_submit(oParam);
  1068. }
  1069. var posinstcd = sysf_getUserInfo("posinstcd");
  1070. trace("posinstcd = :" + posinstcd);
  1071. ds_grd_winlist.addColumn("inst", "String");
  1072. ds_grd_winlist.addColumn("winid", "String");
  1073. for(x = 0; x < ds_grd_winlist.rowcount; x++)
  1074. {
  1075. var blod2 = ds_grd_winlist.getColumn(x, "blodno").substr(0, 2);
  1076. var blod3 = ds_grd_winlist.getColumn(x, "blodno").substr(0, 1);
  1077. ds_grd_winlist.setColumn(x, "abo", ds_grd_winlist.getColumn(x,"abo").getTrim());
  1078. ds_grd_winlist.setColumn(x, "winid", ds_hidden_winparam.getColumn(0, "winid"));
  1079. if((posinstcd == "011" && blod2 <= "16") || (posinstcd == "012" && blod2 <= "16"))
  1080. {
  1081. ds_grd_winlist.setColumn(x, "inst", "16");
  1082. }
  1083. else if(blod2 == "20")
  1084. {
  1085. if(ds_hidden_winlist.getColumn(0, "blodkind") == "1")
  1086. {
  1087. ds_grd_winlist.setColumn(x, "inst", "8" + posinstcd.substr(2,1));
  1088. }
  1089. else
  1090. {
  1091. ds_grd_winlist.setColumn(x, "inst", "20");
  1092. }
  1093. }
  1094. else if(blod3 == "8")
  1095. {
  1096. ds_grd_winlist.setColumn(x, "inst", "8" + posinstcd.substr(2,1));
  1097. }
  1098. else if(blod2 == "01")
  1099. {
  1100. ds_grd_winlist.setColumn(x, "inst", "01");
  1101. }
  1102. else if(blod2 == "02")
  1103. {
  1104. ds_grd_winlist.setColumn(x, "inst", "02");
  1105. }
  1106. else if(blod2 == "03")
  1107. {
  1108. ds_grd_winlist.setColumn(x, "inst", "03");
  1109. }
  1110. else if(blod2 == "04")
  1111. {
  1112. ds_grd_winlist.setColumn(x, "inst", "04");
  1113. }
  1114. else if(blod2 == "05")
  1115. {
  1116. ds_grd_winlist.setColumn(x, "inst", "05");
  1117. }
  1118. else if(blod2 == "06")
  1119. {
  1120. ds_grd_winlist.setColumn(x, "inst", "06");
  1121. }
  1122. else if(blod2 == "07")
  1123. {
  1124. ds_grd_winlist.setColumn(x, "inst", "07");
  1125. }
  1126. else if(blod2 == "08")
  1127. {
  1128. ds_grd_winlist.setColumn(x, "inst", "08");
  1129. }
  1130. else if(blod2 == "09")
  1131. {
  1132. ds_grd_winlist.setColumn(x, "inst", "09");
  1133. }
  1134. else if(blod2 == "10")
  1135. {
  1136. ds_grd_winlist.setColumn(x, "inst", "10");
  1137. }
  1138. else if(blod2 == "11")
  1139. {
  1140. ds_grd_winlist.setColumn(x, "inst", "11");
  1141. }
  1142. else if(blod2 == "12")
  1143. {
  1144. ds_grd_winlist.setColumn(x, "inst", "12");
  1145. }
  1146. else if(blod2 == "13")
  1147. {
  1148. ds_grd_winlist.setColumn(x, "inst", "13");
  1149. }
  1150. else if(blod2 == "14")
  1151. {
  1152. ds_grd_winlist.setColumn(x, "inst", "14");
  1153. }
  1154. else if(blod2 == "15")
  1155. {
  1156. ds_grd_winlist.setColumn(x, "inst", "15");
  1157. }
  1158. else
  1159. {
  1160. ds_grd_winlist.setColumn(x, "inst", "12");
  1161. }
  1162. }
  1163. }
  1164. /* @group : 혈액입고관리
  1165. * @ver : 2007.04.25 (CMCDEV-0001)
  1166. * @by : 조철형
  1167. * @-----------------------------------
  1168. * @type : function
  1169. * @access : public
  1170. * @desc : 유효일자 체크
  1171. */
  1172. function fChkValiTerm()
  1173. {
  1174. var dondt = ds_hidden_winlist.getColumn(0, "dondt");
  1175. var valiterm = ds_hidden_winlist.getColumn(0, "valiterm");
  1176. //alert(dondt + " " + valiterm);
  1177. var validt = dondt.toDate().getAddDate(parseInt(valiterm),"D");
  1178. var windt = ds_hidden_winlist.getColumn(0, "windt");
  1179. validt = validt.getDateFormat("YYYYMMDD");
  1180. trace(validt);
  1181. if(validt >= windt) return true;
  1182. else return false;
  1183. }
  1184. //혈액입고
  1185. function fBlodWin()
  1186. {
  1187. if(iRefFlag == 1)
  1188. {
  1189. sysf_messageBox( "입고리스트 조회입니다." , "E");
  1190. return;
  1191. }
  1192. if(utlf_isNull(ds_hidden_winparam.getColumn(0, "winid")))
  1193. {
  1194. sysf_messageBox("입고자 ID 를 입력하세요!!", "E");
  1195. return;
  1196. }
  1197. if(ds_grd_winlist.rowcount > 0)
  1198. {
  1199. var winTF = false;
  1200. ds_send_outerlist.clearData();
  1201. for(i = 0; i < ds_grd_winlist.rowcount; i++)
  1202. {
  1203. if(ds_grd_winlist.getColumn(i, "chk") == "1")
  1204. {
  1205. ds_grd_winlist.setColumn(i, "winid", ds_hidden_winparam.getColumn(0, "winid"));
  1206. ds_grd_winlist.setRowType(i , "U");
  1207. var aRow = ds_send_outerlist.addRow();
  1208. ds_send_outerlist.copyRow(aRow, ds_grd_winlist, i);
  1209. ds_send_outerlist.setRowType(i,Dataset.ROWTYPE_INSERT);
  1210. ds_grd_winlist.setColumn(i, "cstatColor", "#03830c");
  1211. winTF = true;
  1212. }
  1213. }
  1214. // 완료시 녹색
  1215. if(winTF)
  1216. {
  1217. var oParam = {};
  1218. oParam.id = "TXLBT00101";
  1219. oParam.service = "donmngtapp.BloodWinMngt";
  1220. oParam.method = "reqInsBloodWin";
  1221. oParam.inds = "winlist=ds_send_outerlist";
  1222. oParam.outds = "ds_return_blodnolist=blodwinOK";
  1223. oParam.async = false;
  1224. oParam.callback = "cf_TXLBT00101";
  1225. tranf_submit(oParam);
  1226. }
  1227. else
  1228. {
  1229. sysf_messageBox("입고 할 혈액을 선택하세요!!", "E");
  1230. }
  1231. }
  1232. }
  1233. //지정헌혈해제
  1234. function fDonorCanCel()
  1235. {
  1236. if(iRefFlag == 0)
  1237. {
  1238. sysf_messageBox("입고되지않은 리스트 입니다.","I");
  1239. return;
  1240. }
  1241. //혈액검색으로 조회하지 않으면 공여자지정해제 불가능
  1242. if(ds_hidden.getColumn(0, "bloodsearchyn") != "Y")
  1243. {
  1244. sysf_messageBox("혈액검색으로 검색하지 않은 경우 지정헌혈해제 할 수 없습니다..","I");
  1245. return;
  1246. }
  1247. if(ds_grd_winlist.rowcount >= 0)
  1248. {
  1249. var winTF = false;
  1250. for(i = 0; i < ds_grd_winlist.rowcount; i++)
  1251. {
  1252. if(ds_win_winlist.getColumn(i, "chk") == 0)
  1253. {
  1254. if(ds_win_winlist.getColumn(i, "blodstat") != "1" && ds_win_winlist.getColumn(i, "blodstat") != "2")
  1255. {
  1256. sysf_messageBox("초입고, 입고 상태만 지정헌혈해제 할 수 있습니다.","I");
  1257. return;
  1258. }
  1259. if(ds_win_winlist.getColumn(i, "donflag") != "02")
  1260. {
  1261. sysf_messageBox("지정헌혈 등록한 경우만 지정헌혈해제 할 수 있습니다.","I");
  1262. return;
  1263. }
  1264. ds_grd_winlist.setRowType(i , "U");
  1265. winTF = true;
  1266. }
  1267. }
  1268. if(winTF)
  1269. {
  1270. var oDsUpdate = grdf_getGridUpdateData(ds_grd_winlist);
  1271. ds_send.setColumn(0, "data1", oDsUpdate);
  1272. var oParam = {};
  1273. oParam.id = "TXLBT00103";
  1274. oParam.service = "donmngtapp.BloodWinMngt";
  1275. oParam.method = "reqSetDonorCanCel";
  1276. oParam.inds = "winlist=ds_send";
  1277. oParam.async = false;
  1278. //oParam.callback = "cf_TXLBT00103";
  1279. tranf_submit(oParam);
  1280. fSetClear();
  1281. }
  1282. else{
  1283. sysf_messageBox("지정헌혈해제 할 혈액을 선택하세요.","I");
  1284. return;
  1285. }
  1286. }
  1287. //혈액검색으로 조회여부
  1288. ds_hidden.setColumn(0, "bloodsearchyn", "N");
  1289. }
  1290. //입고취소
  1291. function fBloodWinCanCel()
  1292. {
  1293. if(iRefFlag == 0)
  1294. {
  1295. sysf_messageBox("입고되지않은 리스트 입니다.","I");
  1296. return;
  1297. }
  1298. if(ds_grd_winlist.rowcount > 0)
  1299. {
  1300. var winTF = false;
  1301. for(i = 0; i < ds_grd_winlist.rowcount; i++)
  1302. {
  1303. if(ds_grd_winlist.getColumn(i, "chk") == "Y" || ds_grd_winlist.getColumn(i, "chk") == "1")
  1304. {
  1305. if((ds_grd_winlist.getColumn(i, "blodstat") != "1") && ((ds_grd_winlist.getColumn(i, "blodstat") != "2")))
  1306. {
  1307. sysf_messageBox("취소리스트중 초입고, 입고 상태가 있어 취소할 수 없습니다.","I");
  1308. ds_grd_winlist.clearData();
  1309. return;
  1310. }
  1311. // ds_grd_winlist.setRowType(i, 'u');
  1312. winTF = true;
  1313. }
  1314. else
  1315. {
  1316. // ds_grd_winlist.setRowType(i, 'u');
  1317. }
  1318. }
  1319. ds_copy_winlist.clear();
  1320. ds_grd_winlist.filterstr = "chk == 'Y' || chk == '1'";
  1321. ds_copy_winlist.copyData(ds_grd_winlist, true);
  1322. trace("ds_copy_winlist = " + ds_copy_winlist.saveXML());
  1323. ds_grd_winlist.filterstr = "";
  1324. var oParam = {};
  1325. oParam.id = "TXLBT00102";
  1326. oParam.service = "donmngtapp.BloodWinMngt";
  1327. oParam.method = "reqsetBloodWinCanCel";
  1328. oParam.inds = "winlist=ds_copy_winlist";
  1329. oParam.async = false;
  1330. //oParam.callback = "cf_TXLBT00102";
  1331. tranf_submit(oParam);
  1332. fSetClear();
  1333. }
  1334. else
  1335. {
  1336. sysf_messageBox("입고할취소할 혈액을 선택하세요.","I");
  1337. }
  1338. //혈액검색으로 조회여부
  1339. ds_hidden.setColumn(0, "bloodsearchyn", "N");
  1340. }
  1341. //조회
  1342. function group3_group5_button2_onclick(obj:Button, e:ClickEventInfo)
  1343. {
  1344. fPastWinList();
  1345. }
  1346. function Group_idChk_button44_onclick(obj:Button, e:ClickEventInfo)
  1347. {
  1348. Group_idChk.visible = false;
  1349. }
  1350. function group3_input5_oneditclick(obj:Edit, e:EditClickEventInfo)
  1351. {
  1352. fBlodcdInput();
  1353. //sysf_messageBox("헌혈일자를 반드시 고쳐서 입력하십시오.", "E");
  1354. }
  1355. function fBlodcdInput()
  1356. {
  1357. //혈액검색으로 조회여부
  1358. ds_hidden.setColumn(0, "bloodsearchyn", "N");
  1359. var sBcdno = ds_hidden_winlist.getColumn(0,"bcdno")
  1360. var sBcdLen = String(sBcdno).length;
  1361. if( ds_hidden_winlist.getColumn(0, "wintm").length != "6")
  1362. {
  1363. ds_hidden_winlist.setColumn(0, "windt", ds_hidden_winlist.getColumn(0,"windt").substring(0,8) + ds_hidden_winlist.getColumn(0, "wintm").substring(0,4) + "00");
  1364. }
  1365. if( ds_hidden_winlist.getColumn(0, "dontm").length != "6")
  1366. {
  1367. ds_hidden_winlist.setColumn(0, "dondt", ds_hidden_winlist.getColumn(0,"dondt").substring(0,8) + ds_hidden_winlist.getColumn(0, "dontm").substring(0,4) + "00");
  1368. }
  1369. switch (sBcdLen)
  1370. {
  1371. case 12: //혈액번호
  1372. ds_hidden_winlist.setColumn(0, "blodno", sBcdno.substring(0,10));
  1373. fBlodnoRef();
  1374. break;
  1375. case 10: //혈액번호
  1376. ds_hidden_winlist.setColumn(0, "blodno",sBcdno);
  1377. fBlodnoRef();
  1378. //fIndCaseWin();
  1379. break;
  1380. case 5: // 혈액바코드
  1381. fBlodcomnmRef(sBcdno.toUpperCase());
  1382. break;
  1383. case 4: //혈액형
  1384. fABORH(sBcdno);
  1385. fBlodnoRef();
  1386. break;
  1387. case 0:
  1388. break;
  1389. default:
  1390. return;
  1391. }
  1392. }
  1393. //성분제제용량 콤보 선택시
  1394. function fSetBlodCom()
  1395. {
  1396. var pBlodcomcd = ds_hidden_winlist.getColumn(0,"blodcomnmvol2");
  1397. var fRow = ds_init_combo3.findRow("cd",pBlodcomcd);
  1398. var blodbarcd = ds_init_combo3.getColumn( fRow,"etc01");
  1399. // fBlodcomnmRef(blodbarcd);
  1400. if(blodbarcd.substr(0,1) == "A")
  1401. {
  1402. // sysf_messageBox("변경안됨!!", "I");
  1403. fBlodcomcd(pBlodcomcd);
  1404. }
  1405. else{
  1406. fBlodcomnmRef(blodbarcd);
  1407. }
  1408. }
  1409. /* @group : 혈액입고관리
  1410. * @ver : 2007.04.25 (CMCDEV-0001)
  1411. * @by : 조철형
  1412. * @-----------------------------------
  1413. * @type : function
  1414. * @access : public
  1415. * @desc : 바코드 번호 키이벤트
  1416. */
  1417. function fBlodcomnmRef(pBlodbarcd)
  1418. {
  1419. var fRow = ds_init_combo3.findRow("etc01",pBlodbarcd);
  1420. var blodcomcd = ds_init_combo3.getColumn( fRow,"cd");
  1421. var blodcomnm = ds_init_combo3.getColumn( fRow,"nm");
  1422. var blodbasevol = ds_init_combo3.getColumn( fRow,"etc02");
  1423. var valiterm = ds_init_combo3.getColumn( fRow,"etc03");
  1424. if(String(blodcomcd).length ==5){ // 정은 추가
  1425. if(blodcomnm == "" && blodbasevol == "") {
  1426. sysf_messageBox("정확한 혈액바코드번호를 입력하세요!!", "I");
  1427. return;
  1428. }
  1429. }
  1430. ds_hidden_winlist.setColumn(0, "blodcomcd",blodcomcd);
  1431. ds_hidden_winlist.setColumn(0, "blodcomnm",blodcomnm);
  1432. ds_hidden_winlist.setColumn(0, "blodbarcd",pBlodbarcd);
  1433. ds_hidden_winlist.setColumn(0, "blodbasevol",blodbasevol);
  1434. ds_hidden_winlist.setColumn(0, "blodcomnmvol",blodcomnm);
  1435. ds_hidden_winlist.setColumn(0, "blodcomnmvol2",blodcomcd);
  1436. ds_hidden_winlist.setColumn(0, "valiterm",valiterm);
  1437. var dondt = ds_hidden_winlist.getColumn( 0,"dondt"); //헌혈일시
  1438. if(utlf_isNull(dondt)){
  1439. dondt = "";
  1440. };
  1441. var dondate = dondt.substring(0,8)+ ds_hidden_winlist.getColumn( 0,"dontm"); //헌혈일시
  1442. var proddt = ds_hidden_winlist.getColumn( 0,"proddt"); //제제일시
  1443. if(utlf_isNull(proddt)){
  1444. proddt = "";
  1445. };
  1446. var proddate = proddt.substring(0,8)+ ds_hidden_winlist.getColumn( 0,"prodtm"); //제제일시
  1447. var validt = "";
  1448. if(pBlodbarcd=="12003" || pBlodbarcd=="12004" || pBlodbarcd=="12017" ||pBlodbarcd=="A0003"){
  1449. validt = proddate.toDate("YYYYMMDDhhmmss").getAddDate(parseInt("120"), "h");
  1450. }else{
  1451. validt = dondate.toDate("YYYYMMDDhhmmss").getAddDate(parseInt(valiterm),"D");
  1452. }
  1453. ds_hidden_winlist.setColumn(0, "validt",validt.getDateFormat("YYYYMMDDhhmmss"));
  1454. }
  1455. /* @group : 혈액입고관리
  1456. * @ver : 2019.02.22 (CMCDEV-0001)
  1457. * @by : 조철형
  1458. * @-----------------------------------
  1459. * @type : function
  1460. * @access : public
  1461. * @desc : 바코드 번호 키이벤트
  1462. */
  1463. function fBlodcomcd(pBlodbarcd){
  1464. var fRow = ds_init_combo3.findRow("cd",pBlodbarcd);
  1465. var blodcomcd = ds_init_combo3.getColumn( fRow,"cd");
  1466. var blodcomnm = ds_init_combo3.getColumn( fRow,"nm");
  1467. var blodbasevol = ds_init_combo3.getColumn( fRow,"etc02");
  1468. var valiterm = ds_init_combo3.getColumn( fRow,"etc03");
  1469. var blodbarcd = ds_init_combo3.getColumn( fRow,"etc01"); //추가
  1470. if(String(blodcomcd).length ==5){ // 정은 추가
  1471. if(blodcomnm == "" && blodbasevol == "") {
  1472. sysf_messageBox("정확한 혈액바코드번호를 입력하세요!!", "I");
  1473. return;
  1474. }
  1475. if(blodcomnm == "" && blodbasevol == "") {
  1476. sysf_messageBox("정확한 혈액바코드번호를 입력하세요!!", "I");
  1477. return;
  1478. }
  1479. }
  1480. ds_hidden_winlist.setColumn(0, "blodcomcd",blodcomcd);
  1481. ds_hidden_winlist.setColumn(0, "blodcomnm",blodcomnm);
  1482. ds_hidden_winlist.setColumn(0, "blodbarcd",blodbarcd);
  1483. ds_hidden_winlist.setColumn(0, "blodbasevol",blodbasevol);
  1484. ds_hidden_winlist.setColumn(0, "blodcomnmvol",blodcomnm);
  1485. ds_hidden_winlist.setColumn(0, "blodcomnmvol2",blodcomcd);
  1486. ds_hidden_winlist.setColumn(0, "valiterm",valiterm);
  1487. var dondt = ds_hidden_winlist.getColumn( 0,"dondt"); //헌혈일시
  1488. if(utlf_isNull(dondt)){
  1489. dondt = "";
  1490. };
  1491. var dondate = dondt.substring(0,8)+ ds_hidden_winlist.getColumn( 0,"dontm"); //헌혈일시
  1492. var proddt = ds_hidden_winlist.getColumn( 0,"proddt"); //제제일시
  1493. if(utlf_isNull(proddt)){
  1494. proddt = "";
  1495. };
  1496. var proddate = proddt.substring(0,8)+ ds_hidden_winlist.getColumn( 0,"prodtm"); //제제일시
  1497. var validt = "";
  1498. if(pBlodbarcd=="12003" || pBlodbarcd=="12004" || pBlodbarcd=="12017" ||pBlodbarcd=="A0003"){
  1499. validt = proddate.toDate("YYYYMMDDhhmmss").getAddDate(parseInt("120"), "h");
  1500. }else{
  1501. validt = dondate.toDate("YYYYMMDDhhmmss").getAddDate(parseInt(valiterm),"D");
  1502. }
  1503. ds_hidden_winlist.setColumn(0, "validt",validt.getDateFormat("YYYYMMDDhhmmss"));
  1504. }
  1505. /* @group : 혈액입고관리
  1506. * @by : 이재오
  1507. * @-----------------------------------
  1508. * @type : function
  1509. * @access : public
  1510. * @desc : 혈액번호 조회
  1511. */
  1512. function fBlodnoRef(){
  1513. fSetBlodCom();
  1514. var sBlodno = ds_hidden_winlist.getColumn(0, "blodno");
  1515. var sBlodbarcd = ds_hidden_winlist.getColumn(0, "blodbarcd");
  1516. //alert(sBlodno);
  1517. if(String(sBlodno).length== 12) sBlodno = sBlodno.substring(0,10);
  1518. //alert(sBlodno);
  1519. if(sBlodno == "") return;
  1520. if(String(sBlodno).length != 10 && String(sBlodno).length != 5){
  1521. sysf_messageBox("혈액번호를 정확히 입력하세요.", "I");
  1522. return;
  1523. }
  1524. ds_hidden_pastwinrefparam.setColumn(0, "refflag","2");
  1525. ds_hidden_pastwinrefparam.setColumn(0, "blodno",sBlodno);
  1526. ds_hidden_pastwinrefparam.setColumn(0, "blodbarcd",sBlodbarcd)
  1527. fSetwinInstcd(); // 입고기관 셋팅
  1528. if(sBlodbarcd == "" || sBlodno == ""){
  1529. sysf_messageBox("혈액바코드번호, 혈액번호를 모두 입력하세요.", "I");
  1530. return;
  1531. }
  1532. //submit("TRLBT00103");
  1533. var oParam = {};
  1534. oParam.id = "TRLBT00103";
  1535. oParam.service = "donmngtapp.BloodWinMngt";
  1536. oParam.method = "reqGetBloodWinList";
  1537. oParam.inds = "cond=ds_hidden_pastwinrefparam";
  1538. oParam.outds = "ds_hidden_casewinlist=winlist ds_grd_summery=filesummerylist";
  1539. oParam.async = false;
  1540. oParam.callback = "cf_TRLBT00103";
  1541. tranf_submit(oParam);
  1542. //ds_grd_winlist - > ds_hidden_casewinlist 대치
  1543. fIndCaseWin();
  1544. }
  1545. // 혈액번호 입력시 입고기관 셋팅
  1546. function fSetwinInstcd()
  1547. {
  1548. var aaa = sysf_getUserInfo("posinstcd");
  1549. if(ds_hidden_winlist.getColumn(0, "blodno") != ""){
  1550. var blod2 = ds_hidden_winlist.getColumn(0, "blodno").substr(0,2);
  1551. var blod3 = ds_hidden_winlist.getColumn(0, "blodno").substr(0,1);
  1552. if((aaa == "011" && blod2 <= "16") || (aaa == "012" && blod2 <= "16")){ // 서울, 여의도일때 서부혈액원으로 치고
  1553. ds_hidden_winlist.setColumn(0, "inst", "16");
  1554. }else if(blod2 == "20"){
  1555. if(ds_hidden_winlist.getColumn(0, "blodkind") == "1") // 헌혈일때
  1556. {
  1557. ds_hidden_winlist.setColumn(0, "inst", "8" + aaa.substr(2,1)); // 각자병원
  1558. }
  1559. else
  1560. {
  1561. ds_hidden_winlist.setColumn(0, "inst", "20"); // 한마음으로 셋팅
  1562. }
  1563. //자가일때 각자병원
  1564. }else if(blod3 == "8"){
  1565. ds_hidden_winlist.setColumn(0, "inst", "8" + aaa.substr(2,1)); // 한마음으로 셋팅
  1566. //alert( aaa.substr(2,1));
  1567. }else if(blod2 == "01"){
  1568. //model.setValue("/root/hidden/winlist/inst", "01");
  1569. ds_hidden_winlist.setColumn(0, "inst", "01");
  1570. }else if(blod2 == "02"){
  1571. ds_hidden_winlist.setColumn(0, "inst", "02");
  1572. }else if(blod2 == "03"){
  1573. ds_hidden_winlist.setColumn(0, "inst", "03");
  1574. }else if(blod2 == "04"){
  1575. ds_hidden_winlist.setColumn(0, "inst", "04");
  1576. }else if(blod2 == "05"){
  1577. ds_hidden_winlist.setColumn(0, "inst", "05");
  1578. }else if(blod2 == "06"){
  1579. ds_hidden_winlist.setColumn(0, "inst", "06");
  1580. }else if(blod2 == "07"){
  1581. ds_hidden_winlist.setColumn(0, "inst", "07");
  1582. }else if(blod2 == "08"){
  1583. ds_hidden_winlist.setColumn(0, "inst", "08");
  1584. }else if(blod2 == "09"){
  1585. ds_hidden_winlist.setColumn(0, "inst", "09");
  1586. }else if(blod2 == "10"){
  1587. ds_hidden_winlist.setColumn(0, "inst", "10");
  1588. }else if(blod2 == "11"){
  1589. ds_hidden_winlist.setColumn(0, "inst", "11");
  1590. }else if(blod2 == "12"){
  1591. ds_hidden_winlist.setColumn(0, "inst", "12");
  1592. }else if(blod2 == "13"){
  1593. ds_hidden_winlist.setColumn(0, "inst", "13");
  1594. }else if(blod2 == "14"){
  1595. ds_hidden_winlist.setColumn(0, "inst", "14");
  1596. }else if(blod2 == "15"){
  1597. ds_hidden_winlist.setColumn(0, "inst", "15");
  1598. }else{ // 대구혈액원으로 치고
  1599. ds_hidden_winlist.setColumn(0, "inst", "12");
  1600. }
  1601. }
  1602. }
  1603. function group3_group5_input9_onkeyup(obj:Calendar, e:KeyEventInfo)
  1604. {
  1605. if(e.keycode == 13)
  1606. {
  1607. fPastWinList();
  1608. }
  1609. }
  1610. function group3_combo1_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  1611. {
  1612. fSetABOCombo();
  1613. }
  1614. //파일입고
  1615. function button3_onclick(obj:Button, e:ClickEventInfo)
  1616. {
  1617. fFileWin();
  1618. }
  1619. //혈액입고
  1620. function button36_onclick(obj:Button, e:ClickEventInfo)
  1621. {
  1622. fBlodWin();
  1623. }
  1624. function group3_group5_input7_onkeyup(obj:Edit, e:KeyEventInfo)
  1625. {
  1626. if(e.keycode == 13)
  1627. {
  1628. fGetUser();
  1629. }
  1630. }
  1631. //지정헌혈해제
  1632. function button4_onclick(obj:Button, e:ClickEventInfo)
  1633. {
  1634. fDonorCanCel();
  1635. }
  1636. //입고취소
  1637. function button1_onclick(obj:Button, e:ClickEventInfo)
  1638. {
  1639. fBloodWinCanCel();
  1640. }
  1641. //초기화
  1642. function button5_onclick(obj:Button, e:ClickEventInfo)
  1643. {
  1644. fSetClear();
  1645. }
  1646. function Group_idChk_ID_txt_onkeydown(obj:TextArea, e:KeyEventInfo)
  1647. {
  1648. if(e.keycode == "13")
  1649. {
  1650. var I_txt = Group_idChk.ID_txt.value;
  1651. ds_hidden_winparam.setColumn(0, "winid", (I_txt).toUpperCase());
  1652. ds_hidden_winparam.setColumn(0, "winid", (ds_hidden_winparam.getColumn(0, "winid")).replace("\n", ""));
  1653. var sInDsName = dsf_createDsRow("ds_temp_search"
  1654. , [{col: "acceptid", val: ds_hidden_winparam.getColumn(0, "winid")}]);
  1655. var sOutDsName = dsf_createDsRow("ds_temp_acceptnm"
  1656. , [{col: "usernm", val: ""}]);
  1657. var oParam = {};
  1658. oParam.id = "TRLBT10404";
  1659. oParam.service = "transfusionmngtapp.BloodDelivery";
  1660. oParam.method = "reqGetUsernm";
  1661. oParam.inds = "cond="+sInDsName;
  1662. oParam.outds = sOutDsName+"=getDeliverynm";
  1663. oParam.async = false;
  1664. //oParam.callback = "cbf_TRLBT10404";
  1665. tranf_submit(oParam);
  1666. group3.group5.output1.value = ds_temp_acceptnm.getColumn(0, "usernm");
  1667. group3.group5.input7.value = ds_temp_acceptnm.getColumn(0, "userid");
  1668. if(!utlf_isNull(ds_temp_acceptnm.getColumn(0, "usernm")))
  1669. {
  1670. group3.group5.input6.setFocus();
  1671. Group_idChk.visible = false; //입고자 입력
  1672. button3.enable = true; //파일입고
  1673. button36.enable = true; //핼액입고
  1674. button4.enable = true; //지정헌혈해제
  1675. button1.enable = true; //입고취소
  1676. button5.enable = true; //초기화
  1677. Group_idChk.button44.enable = true; //닫기
  1678. }
  1679. else
  1680. {
  1681. sysf_messageBox("입고자 ID가 정확히 입력되지","E007","");
  1682. Group_idChk.ID_txt.value = "";
  1683. Group_idChk.ID_txt.setFocus();
  1684. return;
  1685. }
  1686. }
  1687. }
  1688. /* @group : 혈액입고관리
  1689. * @ver : 2007.04.25 (CMCDEV-0001)
  1690. * @by : 조철형
  1691. * @-----------------------------------
  1692. * @type : function
  1693. * @access : public
  1694. * @desc : 완료버튼
  1695. */
  1696. function fIndCaseWin()
  1697. {
  1698. if(ds_hidden_casewinlist.rowcount > 0 )
  1699. {
  1700. sysf_messageBox("이미 입고된 혈액입니다.", "I");
  1701. return;
  1702. }
  1703. if(fChkValiTerm())
  1704. {
  1705. } else {
  1706. sysf_messageBox("유효기간을 체크하세요!!", "I");
  1707. return;
  1708. }
  1709. var blodno = ds_hidden_winlist.getColumn(0, "blodno"); // 혈액번호
  1710. var blodbarcd = ds_hidden_winlist.getColumn(0, "blodbarcd"); // 번호
  1711. var grdFindRowBlodno = "";
  1712. var grdFindRowBlodComcd = "";
  1713. var grdRow = 1;
  1714. var equalCnt = 0;
  1715. var winBlodno = "";
  1716. var winBlodbarcd = "";
  1717. //--------------------------------------------------------
  1718. //입고리스트에 같은 혈액번호, 같은 성분제제가 있는지 체크
  1719. for(iRow = 0 ; iRow <= ds_grd_winlist.rowcount; iRow++){
  1720. winBlodno = ds_grd_winlist.getColumn(iRow, "blodno"); // 혈액번호
  1721. winBlodbarcd = ds_grd_winlist.getColumn(iRow, "blodbarcd"); //
  1722. if(utlf_isNull(winBlodno)){
  1723. winBlodno = "";
  1724. };
  1725. if(utlf_isNull(winBlodbarcd)){
  1726. winBlodbarcd = "";
  1727. };
  1728. //--------------------------------
  1729. //자가1,2, HPC,DGI가 아닌경우 4자리로 자른다.(용량 구분 없앰)
  1730. if(blodbarcd.substr(0,1) != "A"){
  1731. blodbarcd = blodbarcd.substr(0,4);
  1732. }
  1733. if(winBlodbarcd.substr(0,1) != "A"){
  1734. winBlodbarcd = winBlodbarcd.substr(0,4);
  1735. }
  1736. //같은 혈액번호,성분제제가 같은지 체크, 같은게 하나라도 있다면 for문 바로 빠져나가기.
  1737. if(winBlodno == blodno && winBlodbarcd == blodbarcd){
  1738. equalCnt++;
  1739. break;
  1740. }
  1741. }
  1742. if(equalCnt > 0)
  1743. {
  1744. sysf_messageBox("이미 추가된 혈액입니다.", "I");
  1745. return;
  1746. }
  1747. iRefFlag = 0;
  1748. var gRow = ds_grd_winlist.addRow();
  1749. var dataBlodbarcd = "";
  1750. //-----------------------------------------------------------------------------------------------------------
  1751. //개별입고하는 혈액이 헌혈인지 혈액번호, 혈액바코드로 성분헌혈 정보 조회
  1752. ds_send_data3.setColumn(0, "blodno", ds_hidden_winlist.getColumn(0, "blodno"));
  1753. ds_send_data3.setColumn(0, "blodbarcd", ds_hidden_winlist.getColumn(0, "blodbarcd"));
  1754. dataBlodbarcd = ds_hidden_winlist.getColumn(0, "blodbarcd"); // 혈액번호
  1755. //자가1(A0001), 자가2(A0002), HPC(A0003), DGI(A0004), WB(00163,00164
  1756. if((dataBlodbarcd.substring(0,4) =="A000" || dataBlodbarcd.substring(0,4) == "0016") ||
  1757. ( ds_hidden_winlist.getColumn(0, "blodkind") == "1") && (dataBlodbarcd=="04064")){
  1758. //submit("TRLBT00104");
  1759. var oParam = {};
  1760. oParam.id = "TRLBT00104";
  1761. oParam.service = "donmngtapp.BloodWinMngt";
  1762. oParam.method = "reqGetComDonInfo";
  1763. oParam.inds = "cond=ds_send_data3";
  1764. oParam.outds = "ds_comdoninfo=comdoninfo";
  1765. oParam.async = false;
  1766. oParam.callback = "cf_TRLBT00104";
  1767. tranf_submit(oParam);
  1768. }
  1769. var bfBlodkind = ds_hidden_winlist.getColumn(0, "blodkind");
  1770. trace("1111111111 "+ bfBlodkind);
  1771. var bfInst = ds_hidden_winlist.getColumn(0, "inst");
  1772. var bfAborh = ds_hidden_winlist.getColumn(0, "aborh");
  1773. //-----------------------------------------------------------------------------------------------------------
  1774. //헌혈입고정보가 있다면 입고유형을 헌혈로 셋팅, 헌혈정보 셋팅
  1775. if(ds_comdoninfo.rowcount > 0)
  1776. {
  1777. ds_hidden_winlist.setColumn(0, "blodkind", "1"); //이재오 수정 2018.07
  1778. trace("lee +++++++++"+ ds_hidden_winlist.getColumn(0, "blodkind"));
  1779. fSetABOCombo();
  1780. winBlodno = ds_grd_winlist.getColumn(iRow, "blodno"); // 혈액번호
  1781. winBlodbarcd = ds_grd_winlist.getColumn(iRow, "blodbarcd"); //
  1782. ds_grd_winlist.setColumn(gRow, "execprcpuniqno", ds_comdoninfo.getColumn(0, "execprcpuniqno"));
  1783. ds_grd_winlist.setColumn(gRow, "tnsrpid", ds_comdoninfo.getColumn(0, "tnsrpid"));
  1784. ds_grd_winlist.setColumn(gRow, "tnsrnm", ds_comdoninfo.getColumn(0, "tnsrnm"));
  1785. ds_grd_winlist.setColumn(gRow, "dnorpid", ds_comdoninfo.getColumn(0, "dnorpid"));
  1786. ds_grd_winlist.setColumn(gRow, "dnornm", ds_comdoninfo.getColumn(0, "dnornm"));
  1787. ds_grd_winlist.setColumn(gRow, "donflag", ds_comdoninfo.getColumn(0, "donflag"));
  1788. }
  1789. else
  1790. {
  1791. ds_hidden_winlist.setColumn(0, "blodkind", bfBlodkind);
  1792. if(bfInst == ""){
  1793. sysf_messageBox("기관코드를 선택해주세요.", "I");
  1794. ds_grd_winlist.deleteRow(gRow);
  1795. return;
  1796. }
  1797. if(bfAborh == ""){
  1798. sysf_messageBox("혈액형을 선택해주세요.", "I");
  1799. ds_grd_winlist.deleteRow(gRow);
  1800. return;
  1801. }
  1802. }
  1803. var dondt = ds_hidden_winlist.getColumn(0, "dondt");
  1804. var dontm = ds_hidden_winlist.getColumn(0, "dontm");
  1805. var windt = ds_hidden_winlist.getColumn(0, "windt");
  1806. var wintm = ds_hidden_winlist.getColumn(0, "wintm");
  1807. var proddt = ds_hidden_winlist.getColumn(0, "proddt");
  1808. var prodtm = ds_hidden_winlist.getColumn(0, "prodtm");
  1809. var aaa = sysf_getUserInfo("posinstcd");
  1810. var blod2 = ds_hidden_winlist.getColumn(0, "blodno").substr(0, 2);
  1811. var blod3 = ds_hidden_winlist.getColumn(0, "blodno").substr(0, 1);
  1812. ds_grd_winlist.setColumn(gRow, "chk", "1");
  1813. ds_grd_winlist.setColumn(gRow, "windt", windt.substring(0,8) + wintm.substring(0,4) + "00");
  1814. ds_grd_winlist.setColumn(gRow, "abo", ds_hidden_winlist.getColumn(0, "abo"));
  1815. ds_grd_winlist.setColumn(gRow, "rh", ds_hidden_winlist.getColumn(0, "rh"));
  1816. ds_grd_winlist.setColumn(gRow, "blodcomnm", ds_hidden_winlist.getColumn(0, "blodcomnm"));
  1817. ds_grd_winlist.setColumn(gRow, "blodno", ds_hidden_winlist.getColumn(0, "blodno"));
  1818. ds_grd_winlist.setColumn(gRow, "dondt", dondt.substring(0,8) + dontm.substring(0,4) + "00");
  1819. ds_grd_winlist.setColumn(gRow, "proddt", proddt.substring(0,8) + prodtm.substring(0,4) + "00");
  1820. ds_grd_winlist.setColumn(gRow, "validt", ds_hidden_winlist.getColumn(0, "validt"));
  1821. ds_grd_winlist.setColumn(gRow, "blodkind", ds_hidden_winlist.getColumn(0, "blodkind"));
  1822. if((aaa=="011" && blod2 <= "16") || (aaa=="012" && blod2 <= "16")){ // 서울, 여의도일때 서부혈액원으로 치고
  1823. ds_hidden_winlist.setColumn(0, "inst", "16");
  1824. ds_grd_winlist.setColumn(gRow, "inst", "16");
  1825. }
  1826. else if(blod2 == "20")
  1827. {
  1828. if(ds_hidden_winlist.getColumn(0, "blodkind") == "1")
  1829. {
  1830. ds_grd_winlist.setColumn(gRow, "inst", "8" + aaa.substr(2,1));
  1831. }
  1832. else
  1833. {
  1834. ds_grd_winlist.setColumn(gRow, "inst", "20");
  1835. }
  1836. //자가일때 각자병원
  1837. }else if(blod3 == "8")
  1838. {
  1839. ds_grd_winlist.setColumn(gRow, "inst", "8" + aaa.substr(2,1));
  1840. }
  1841. else if(blod2 == "01")
  1842. {
  1843. ds_grd_winlist.setColumn(gRow, "inst", "01");
  1844. }
  1845. else if(blod2 == "02")
  1846. {
  1847. ds_grd_winlist.setColumn(gRow, "inst", "02");
  1848. }
  1849. else if(blod2 == "03")
  1850. {
  1851. ds_grd_winlist.setColumn(gRow, "inst", "03");
  1852. }
  1853. else if(blod2 == "04")
  1854. {
  1855. ds_grd_winlist.setColumn(gRow, "inst", "04");
  1856. }
  1857. else if(blod2 == "05")
  1858. {
  1859. ds_grd_winlist.setColumn(gRow, "inst", "05");
  1860. }
  1861. else if(blod2 == "06")
  1862. {
  1863. ds_grd_winlist.setColumn(gRow, "inst", "06");
  1864. }
  1865. else if(blod2 == "07")
  1866. {
  1867. ds_grd_winlist.setColumn(gRow, "inst", "07");
  1868. }
  1869. else if(blod2 == "08")
  1870. {
  1871. ds_grd_winlist.setColumn(gRow, "inst", "08");
  1872. }
  1873. else if(blod2 == "09")
  1874. {
  1875. ds_grd_winlist.setColumn(gRow, "inst", "09");
  1876. }
  1877. else if(blod2 == "10")
  1878. {
  1879. ds_grd_winlist.setColumn(gRow, "inst", "10");
  1880. }
  1881. else if(blod2 == "11")
  1882. {
  1883. ds_grd_winlist.setColumn(gRow, "inst", "11");
  1884. }
  1885. else if(blod2 == "12")
  1886. {
  1887. ds_grd_winlist.setColumn(gRow, "inst", "12");
  1888. }
  1889. else if(blod2 == "13")
  1890. {
  1891. ds_grd_winlist.setColumn(gRow, "inst", "13");
  1892. }
  1893. else if(blod2 == "14")
  1894. {
  1895. ds_grd_winlist.setColumn(gRow, "inst", "14");
  1896. }
  1897. else if(blod2 == "15")
  1898. {
  1899. ds_grd_winlist.setColumn(gRow, "inst", "15");
  1900. }
  1901. else
  1902. {
  1903. ds_grd_winlist.setColumn(gRow, "inst", "12");
  1904. }
  1905. ds_grd_winlist.setColumn(gRow, "blodstat", "1");
  1906. if(ds_hidden_winlist.getColumn(0, "blodkind") == "0")
  1907. {
  1908. ds_grd_winlist.setColumn(gRow, "blodkindnm", "혈액원");
  1909. }
  1910. else if(ds_hidden_winlist.getColumn(0, "blodkind") == "1")
  1911. {
  1912. ds_grd_winlist.setColumn(gRow, "blodkindnm", "헌혈");
  1913. }
  1914. else if(ds_hidden_winlist.getColumn(0, "blodkind") == "2")
  1915. {
  1916. ds_grd_winlist.setColumn(gRow, "blodkindnm", "교환");
  1917. }
  1918. ds_grd_winlist.setColumn(gRow, "blodstatnm", "초입고");
  1919. ds_grd_winlist.setColumn(gRow, "blodbarcd", ds_hidden_winlist.getColumn(0, "blodbarcd"));
  1920. ds_grd_winlist.setColumn(gRow, "blodbasevol", ds_hidden_winlist.getColumn(0, "blodbasevol"));
  1921. ds_grd_winlist.setColumn(gRow, "blodrem",ds_hidden_winlist.getColumn(0, "blodrem"));
  1922. ds_grd_winlist.setColumn(gRow, "blodcomcd", ds_hidden_winlist.getColumn(0, "blodcomcd"));
  1923. }
  1924. function group3_group5_input6_onkeydown(obj:Edit, e:KeyEventInfo)
  1925. {
  1926. if(e.keycode == "13")
  1927. {
  1928. obj.updateToDataset();
  1929. fSearch();
  1930. }
  1931. }
  1932. function fSearch()
  1933. {
  1934. ds_hidden_pastwinrefparam.setColumn(0,"refflag","3");
  1935. var searchtext = ds_hidden_pastwinrefparam.getColumn(0,"searchtext")
  1936. var sBcdLen = String(searchtext).length;
  1937. if(sBcdLen == 12)
  1938. {
  1939. ds_hidden_pastwinrefparam.setColumn(0, "searchtext", searchtext.substring(0,10))
  1940. }
  1941. ds_hidden_pastwinrefparam.updatecontrol = true;
  1942. var oParam = {};
  1943. oParam.id = "TRLBT00101";
  1944. oParam.service = "donmngtapp.BloodWinMngt";
  1945. oParam.method = "reqGetBloodWinList";
  1946. oParam.inds = "cond=ds_hidden_pastwinrefparam";
  1947. oParam.outds = "ds_grd_winlist=winlist ds_grd_summery=filesummerylist";
  1948. oParam.async = false;
  1949. //oParam.callback = "cf_TRLBT00101";
  1950. tranf_submit(oParam);
  1951. if(ds_grd_winlist.rowcount > 0){
  1952. iRefFlag = 1;
  1953. btn_add.disabled = true;
  1954. }
  1955. ds_hidden_pastwinrefparam.setColumn(0,"searchtext","");
  1956. group3.group5.input6.value = "";
  1957. }
  1958. function group4_btn_search_onclick(obj:Button, e:ClickEventInfo)
  1959. {
  1960. fBlodcdInput();
  1961. }
  1962. ]]></Script>
  1963. </Form>
  1964. </FDL>