SMLLJ00100_검체접수관리.xfdl 124 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMLLJ00100" position="absolute 0 0 1197 805" titletext="검체접수관리" oninit="SMLLJ00100_oninit" onload="SMLLJ00100_onload" ontimer="SMLLJ00100_ontimer">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 0 0 1195 25" id="group1">
  8. <Layouts>
  9. <Layout>
  10. <Static text="검체접수" position="absolute 0 0 98 25" id="caption6" class="tit_1"/>
  11. </Layout>
  12. </Layouts>
  13. </Div>
  14. <Div position="absolute 0 40 1195 801" id="group3" scrollbars="autoboth">
  15. <Layouts>
  16. <Layout>
  17. <Tab position="absolute 0 18 1194 760" id="switch3" class="sw_box" anchor="default" onchanged="group3_switch3_onchanged">
  18. <Tabpages>
  19. <Tabpage text="검체접수" id="case1" scrollbars="none">
  20. <Layouts>
  21. <Layout>
  22. <Shape position="absolute 5 66 653 72" linetype="horizontal" id="line8" class="line_1" anchor="default" style="strokepen:3 solid #33bbbbff;"/>
  23. <Static text="검체목록" position="absolute 5 48 105 65" id="caption21" class="tit_2" anchor="default"/>
  24. <Static text="검체상세목록" position="absolute 660 50 760 72" id="caption1" class="tit_2" anchor="default"/>
  25. <Shape position="absolute 659 66 1189 72" linetype="horizontal" id="line1" class="line_1" anchor="default" style="strokepen:3 solid #33bbbbff;"/>
  26. <Static text="의뢰의사리마크" position="absolute 659 608 784 624" id="caption7" class="tit_2" anchor="default"/>
  27. <Shape position="absolute 659 625 1189 631" linetype="horizontal" id="line3" class="line_3" anchor="default" style="strokepen:3 solid #33bbbbff;"/>
  28. <Static text="의뢰의사리마크" position="absolute 659 629 754 712" id="caption8" class="cell_1" anchor="default"/>
  29. <Shape position="absolute 755 708 1188 714" linetype="horizontal" id="line4" class="line_3" anchor="default"/>
  30. <Grid position="absolute 5 70 653 711" id="grd_spclist" binddataset="ds_grd_spclist" anchor="default" oncellclick="group3_switch3_case1_grd_spclist_oncellclick" cellsizingtype="col">
  31. <Formats>
  32. <Format id="default">
  33. <Columns>
  34. <Column size="30"/>
  35. <Column size="20"/>
  36. <Column size="119"/>
  37. <Column size="0"/>
  38. <Column size="85"/>
  39. <Column size="80"/>
  40. <Column size="95"/>
  41. <Column size="110"/>
  42. <Column size="125"/>
  43. <Column size="80"/>
  44. <Column size="0"/>
  45. <Column size="0"/>
  46. <Column size="0"/>
  47. <Column size="0"/>
  48. </Columns>
  49. <Rows>
  50. <Row size="24" band="head"/>
  51. <Row size="24"/>
  52. </Rows>
  53. <Band id="head">
  54. <Cell/>
  55. <Cell col="1" displaytype="checkbox" edittype="checkbox"/>
  56. <Cell col="2" text="시행부서"/>
  57. <Cell col="3" text="접수번호"/>
  58. <Cell col="4" text="바코드번호"/>
  59. <Cell col="5" text="진료과"/>
  60. <Cell col="6" text="환자명"/>
  61. <Cell col="7" text="검체명"/>
  62. <Cell col="8" text="접수일시"/>
  63. <Cell col="9" text="가접수일시"/>
  64. <Cell col="10"/>
  65. <Cell col="11"/>
  66. <Cell col="12"/>
  67. <Cell col="13"/>
  68. </Band>
  69. <Band id="body">
  70. <Cell celltype="head" text="expr:currow + 1"/>
  71. <Cell col="1" displaytype="checkbox" edittype="checkbox" style="color:EXPR(!utlf_isNull(color)?color:&quot;&quot;);color2:EXPR(!utlf_isNull(color)?color:&quot;&quot;);" text="bind:chk" expr="expr:chk =='true' || chk == '1'?1:0"/>
  72. <Cell col="2" displaytype="combo" edittype="combo" style="align:left;color:EXPR(!utlf_isNull(color)?color:&quot;&quot;);color2:EXPR(!utlf_isNull(color)?color:&quot;&quot;);" text="bind:execdeptcd" combodataset="ds_init_lb0106" combocodecol="cd" combodatacol="nm" enable="false"/>
  73. <Cell col="3" style="align:left;color:EXPR(!utlf_isNull(color)?color:&quot;&quot;);color2:EXPR(!utlf_isNull(color)?color:&quot;&quot;);" text="bind:workno"/>
  74. <Cell col="4" style="align:left;color:EXPR(!utlf_isNull(color)?color:&quot;&quot;);color2:EXPR(!utlf_isNull(color)?color:&quot;&quot;);" text="bind:bcno"/>
  75. <Cell col="5" style="align:left;color:EXPR(!utlf_isNull(color)?color:&quot;&quot;);color2:EXPR(!utlf_isNull(color)?color:&quot;&quot;);" text="bind:orddeptnm"/>
  76. <Cell col="6" style="align:left;color:EXPR(!utlf_isNull(color)?color:&quot;&quot;);color2:EXPR(!utlf_isNull(color)?color:&quot;&quot;);" text="bind:patnm"/>
  77. <Cell col="7" style="align:left;color:EXPR(!utlf_isNull(color)?color:&quot;&quot;);color2:EXPR(!utlf_isNull(color)?color:&quot;&quot;);" text="bind:spcnm"/>
  78. <Cell col="8" displaytype="date" style="align:left;color:EXPR(!utlf_isNull(color)?color:&quot;&quot;);color2:EXPR(!utlf_isNull(color)?color:&quot;&quot;);" text="bind:spcacptdt" mask="yyyy-MM-dd HH:mm:ss" calendardisplaynulltype="nulltext"/>
  79. <Cell col="9" displaytype="date" style="align:left;color:EXPR(!utlf_isNull(color)?color:&quot;&quot;);color2:EXPR(!utlf_isNull(color)?color:&quot;&quot;);" text="bind:spcarvdt" calendardisplaynulltype="nulltext"/>
  80. <Cell col="10" text="bind:spcnm"/>
  81. <Cell col="11" text="bind:pid"/>
  82. <Cell col="12" text="bind:patage"/>
  83. <Cell col="13" text="bind:haspnm"/>
  84. </Band>
  85. </Format>
  86. </Formats>
  87. </Grid>
  88. <Div position="absolute 5 5 1190 40" id="group2" anchor="default" class="div_SA2">
  89. <Layouts>
  90. <Layout>
  91. <Static text="시행부서 :" position="absolute 19 9 105 26" id="caption3" class="search_name" anchor="default"/>
  92. <Static text="바코드번호 :" position="absolute 749 9 848 26" id="caption10" class="search_name" anchor="default"/>
  93. <Static text="접수구분 :" position="absolute 339 9 436 26" id="caption11" class="search_name" anchor="default"/>
  94. <Edit position="absolute 854 8 989 27" id="ipt_bcno" class="input_button" taborder="4" anchor="default" onkeydown="group3_switch3_case1_group2_ipt_bcno_onkeydown" autoselect="true"/>
  95. <Radio position="absolute 439 6 564 27" id="rdo_acptflag" class="radio_search" taborder="2" columncount="3" codecolumn="codecolumn" datacolumn="datacolumn" anchor="default">
  96. <Dataset id="innerdataset">
  97. <ColumnInfo>
  98. <Column id="codecolumn"/>
  99. <Column id="datacolumn"/>
  100. </ColumnInfo>
  101. <Rows>
  102. <Row>
  103. <Col id="codecolumn">1</Col>
  104. <Col id="datacolumn">가접수</Col>
  105. </Row>
  106. <Row>
  107. <Col id="codecolumn">2</Col>
  108. <Col id="datacolumn">접 수</Col>
  109. </Row>
  110. </Rows>
  111. </Dataset>
  112. </Radio>
  113. <CheckBox position="absolute 574 6 674 26" id="chk_spcchoi" class="checkbox_search" taborder="3" text="검체선택여부" truevalue="1" falsevalue="0" anchor="default" onchanged="group3_switch3_case1_group2_chk_spcchoi_onchanged"/>
  114. <CheckBox position="absolute 995 7 1105 27" id="checkbox2" class="checkbox_search" text="화면초기화여부" truevalue="1" falsevalue="0" anchor="default"/>
  115. <Combo position="absolute 216 8 316 27" align="align:left middle;" id="cmd_TMdlCd" class="combo_s_essential" innerdataset="@ds_init_lb0106" datacolumn="nm" codecolumn="cd" anchor="default"/>
  116. <Combo position="absolute 110 8 210 27" align="align:left middle;" id="cmb_TLrgCd" class="combo_s_essential" innerdataset="@ds_init_lb0111" datacolumn="nm" codecolumn="cd" anchor="default" onitemchanged="group3_switch3_case1_group2_cmb_TLrgCd_onitemchanged"/>
  117. <CheckBox position="absolute 1110 11 1185 26" id="checkbox3" class="checkbox_search" text="아침채혈" truevalue="1" falsevalue="0" anchor="default"/>
  118. <Button id="btn_search" taborder="5" position="absolute 971 10 987 25" style="background:skyblue;" onclick="group3_switch3_case1_group2_btn_search_onclick"/>
  119. </Layout>
  120. </Layouts>
  121. </Div>
  122. <CheckBox position="absolute 9 694 109 714" id="chk_label" visible="false" anchor="default" text="라벨발행" truevalue="Y" falsevalue="N"/>
  123. <CheckBox position="absolute 144 694 244 714" id="chk_acptbcd" visible="false" anchor="default" text="접수 바코드" truevalue="Y" falsevalue="N"/>
  124. <Grid position="absolute 659 70 1189 597" id="grd_detllist" binddataset="ds_grd_detllist" anchor="default" autosizingtype="none" cellsizingtype="col">
  125. <Formats>
  126. <Format id="default">
  127. <Columns>
  128. <Column size="29"/>
  129. <Column size="80"/>
  130. <Column size="160"/>
  131. <Column size="40"/>
  132. <Column size="125"/>
  133. <Column size="0"/>
  134. <Column size="0"/>
  135. <Column size="80"/>
  136. </Columns>
  137. <Rows>
  138. <Row size="24" band="head"/>
  139. <Row size="24"/>
  140. </Rows>
  141. <Band id="head">
  142. <Cell/>
  143. <Cell col="1" text="검사코드"/>
  144. <Cell col="2" text="검사명"/>
  145. <Cell col="3" text="응급"/>
  146. <Cell col="4" text="작업번호"/>
  147. <Cell col="5" text="표시"/>
  148. <Cell col="6" text="특수검사연번호"/>
  149. <Cell col="7" text="원내전화"/>
  150. </Band>
  151. <Band id="body">
  152. <Cell celltype="head" text="expr:currow + 1"/>
  153. <Cell col="1" style="align:left;" text="bind:tclscd"/>
  154. <Cell col="2" style="align:left;" text="bind:tclsscrnnm"/>
  155. <Cell col="3" style="background:EXPR(erprcpflag == 'Y'?&quot;red&quot;:&quot;&quot;);background2:EXPR(erprcpflag == 'Y'?&quot;red&quot;:&quot;&quot;);" text="bind:erprcpflag"/>
  156. <Cell col="4" style="align:left;" text="bind:workno"/>
  157. <Cell col="5" style="align:left;" text="bind:spcltestseq"/>
  158. <Cell col="6" style="align:left;" text="bind:refprntyn"/>
  159. <Cell col="7" style="align:left;" text="bind:phone"/>
  160. </Band>
  161. </Format>
  162. </Formats>
  163. </Grid>
  164. <Button position="absolute 567 44 653 63" id="btn_spcf" class="btn2" text="특이사항저장" anchor="default"/>
  165. <TextArea position="absolute 755 630 1189 710" align="align:left middle;" id="tar_rem" anchor="default"/>
  166. <Button position="absolute 980 40 1143 59" id="btn_urine" class="btn2" visible="false" text="Urine 24시간유린일때 보이기" anchor="default" onclick="group3_switch3_case1_btn_urine_onclick"/>
  167. <Edit readonly="true" position="absolute 512 47 562 66" align="align:left middle;" id="opt_cnt" anchor="default"/>
  168. <Static text="접수된 검체 갯수 =&gt;" position="absolute 369 48 516 69" id="cap_cnt" class="tit_2" anchor="default"/>
  169. <CheckBox position="absolute 1100 40 1193 56" id="checkbox1" visible="false" anchor="default" text="바코드출력" truevalue="1" falsevalue="0"/>
  170. <Combo position="absolute 820 40 961 59" align="align:left middle;" id="cmb_execdept" class="combo_search" taborder="1" visible="false" innerdataset="@ds_init_lb0106" datacolumn="nm" codecolumn="cd" anchor="default"/>
  171. <Button position="absolute 155 45 360 65" id="btn_formprnt" enable="false" text="" anchor="default" onclick="group3_switch3_case1_btn_formprnt_onclick"/>
  172. <Static text="동의서 :" position="absolute 76 44 157 67" id="caption5" class="hand" anchor="default"/>
  173. </Layout>
  174. </Layouts>
  175. </Tabpage>
  176. <Tabpage text="검체조회" id="case2">
  177. <Layouts>
  178. <Layout>
  179. <Shape position="absolute 5 92 1190 98" linetype="horizontal" id="line2" class="line_1" anchor="default"/>
  180. <Static text="검체목록" position="absolute 5 77 80 93" id="caption9" class="tit_2" anchor="default"/>
  181. <Div position="absolute 5 5 1190 71" id="group5" anchor="default" class="div_SA2">
  182. <Layouts>
  183. <Layout>
  184. <Shape position="absolute 1100 37 1106 59" linetype="vertical" id="line6" class="line_4" anchor="default"/>
  185. <Static text="검색구분 :" position="absolute 15 10 102 27" id="caption13" class="search_name" anchor="default"/>
  186. <Static text="조회일자 :" position="absolute 360 40 446 57" id="caption14" class="search_name" anchor="default"/>
  187. <Static text="~" position="absolute 539 41 554 58" align="align:center middle;" id="caption16" class="search_no_b" visible="false" anchor="default"/>
  188. <Static text="조회기준 :" position="absolute 677 39 767 56" id="caption17" class="search_name" anchor="default"/>
  189. <Static text="시행부서 :" position="absolute 15 39 101 56" id="caption2" class="search_name" anchor="default"/>
  190. <Edit position="absolute 197 9 295 28" id="ipt_text" class="input_button" taborder="12" anchor="default" autoselect="true" onkeyup="group3_switch3_case2_group5_ipt_text_onkeyup"/>
  191. <Button position="absolute 1113 38 1169 60" id="btn_ref" class="btn1" taborder="13" text="조회" anchor="default" onclick="group3_switch3_case2_group5_btn_ref_onclick"/>
  192. <Combo position="absolute 104 9 194 28" id="cmb_refgbn" class="combo_search" taborder="11" codecolumn="codecolumn" datacolumn="datacolumn" anchor="default" onitemchanged="group3_switch3_case2_group5_cmb_refgbn_onitemchanged">
  193. <Dataset id="innerdataset">
  194. <ColumnInfo>
  195. <Column id="codecolumn"/>
  196. <Column id="datacolumn"/>
  197. </ColumnInfo>
  198. <Rows>
  199. <Row>
  200. <Col id="codecolumn">1</Col>
  201. <Col id="datacolumn">환자번호</Col>
  202. </Row>
  203. <Row>
  204. <Col id="codecolumn">2</Col>
  205. <Col id="datacolumn">바코드번호</Col>
  206. </Row>
  207. </Rows>
  208. </Dataset>
  209. </Combo>
  210. <Radio position="absolute 770 41 1020 57" id="rdo_acptdd" class="radio_search" taborder="8" columncount="3" codecolumn="codecolumn" datacolumn="datacolumn" anchor="default">
  211. <Dataset id="innerdataset">
  212. <ColumnInfo>
  213. <Column id="codecolumn"/>
  214. <Column id="datacolumn"/>
  215. </ColumnInfo>
  216. <Rows>
  217. <Row>
  218. <Col id="codecolumn">1</Col>
  219. <Col id="datacolumn">검체접수일</Col>
  220. </Row>
  221. <Row>
  222. <Col id="codecolumn">2</Col>
  223. <Col id="datacolumn">검체채취일</Col>
  224. </Row>
  225. <Row>
  226. <Col id="codecolumn">3</Col>
  227. <Col id="datacolumn">채혈리스트</Col>
  228. </Row>
  229. </Rows>
  230. </Dataset>
  231. </Radio>
  232. <Calendar position="absolute 435 38 536 57" id="ipt_reffromdd" class="input_search" taborder="9" mask="yyyy-mm-dd" anchor="default" autoselect="true" autoskip="true"/>
  233. <Calendar position="absolute 550 39 651 58" id="ipt_reftodd" class="input_search" taborder="10" visible="false" mask="yyyy-mm-dd" anchor="default" autoselect="true"/>
  234. <Combo position="absolute 208 38 345 57" id="cmb_exec" class="combo_search" taborder="7" innerdataset="@ds_init_lb0106" datacolumn="nm" codecolumn="cd" anchor="default"/>
  235. <CheckBox position="absolute 1037 41 1092 56" id="chk_undoacpt" class="checkbox_search" anchor="default" text="미접수" truevalue="1" onclick="group3_switch3_case2_group5_chk_undoacpt_onclick"/>
  236. <CheckBox position="absolute 1037 11 1105 26" id="chk_detlspcinfoyn" class="checkbox_search" visible="true" anchor="default" text="상세조회" truevalue="1" falsevalue="0"/>
  237. <Shape position="absolute 15 31 1185 32" linetype="vertical" id="line5" class="line_7" anchor="default"/>
  238. <Calendar position="absolute 559 9 660 28" id="input1" class="input_search" taborder="10" visible="false" mask="yyyy-mm-dd" anchor="default" autoselect="true"/>
  239. <Static text="~" position="absolute 546 12 561 29" align="align:center middle;" id="caption4" class="search_no_b" visible="false" anchor="default"/>
  240. <Calendar position="absolute 443 9 544 28" id="input2" class="input_search" taborder="9" visible="false" mask="yyyy-mm-dd" anchor="default" autoselect="true" autoskip="true"/>
  241. <Static text="검색처방일자 :" position="absolute 335 10 432 27" id="caption12" class="search_name" visible="false" anchor="default"/>
  242. <CheckBox position="absolute 667 11 738 26" id="checkbox6" class="checkbox_search" visible="false" anchor="default" truevalue="1" onclick="group3_switch3_case2_group5_checkbox6_onclick" text="일자사용"/>
  243. <Combo position="absolute 105 38 205 57" align="align:left middle;" id="cmb_lrgexec" class="combo_s_essential" innerdataset="@ds_init_lb0111" datacolumn="nm" codecolumn="cd" anchor="default" onitemchanged="group3_switch3_case2_group5_cmb_lrgexec_onitemchanged"/>
  244. <Radio position="absolute 770 10 1000 26" id="radio1" class="radio_search" columncount="4" codecolumn="codecolumn" datacolumn="datacolumn" anchor="default">
  245. <Dataset id="innerdataset">
  246. <ColumnInfo>
  247. <Column id="codecolumn"/>
  248. <Column id="datacolumn"/>
  249. </ColumnInfo>
  250. <Rows>
  251. <Row>
  252. <Col id="codecolumn">00</Col>
  253. <Col id="datacolumn">전체</Col>
  254. </Row>
  255. <Row>
  256. <Col id="codecolumn">1</Col>
  257. <Col id="datacolumn">입원</Col>
  258. </Row>
  259. <Row>
  260. <Col id="codecolumn">2</Col>
  261. <Col id="datacolumn">외래</Col>
  262. </Row>
  263. <Row>
  264. <Col id="codecolumn">3</Col>
  265. <Col id="datacolumn">건진</Col>
  266. </Row>
  267. </Rows>
  268. </Dataset>
  269. </Radio>
  270. <Button id="btn_search" taborder="14" position="absolute 278 11 294 26" style="background:skyblue;" onclick="group3_switch3_case2_group5_btn_search_onclick"/>
  271. <CheckBox id="CheckBox00" taborder="15" text="CheckBox00" position="absolute 298 11 313 26"/>
  272. </Layout>
  273. </Layouts>
  274. </Div>
  275. <Grid position="absolute 5 95 1190 693" align="align:center middle;" id="grd_spcreflist" binddataset="ds_grd_spcreflist" anchor="default" cellsizingtype="col">
  276. <Formats>
  277. <Format id="default">
  278. <Columns>
  279. <Column size="27" band="left"/>
  280. <Column size="21"/>
  281. <Column size="68"/>
  282. <Column size="95"/>
  283. <Column size="85"/>
  284. <Column size="90"/>
  285. <Column size="100"/>
  286. <Column size="130"/>
  287. <Column size="80"/>
  288. <Column size="0"/>
  289. <Column size="0"/>
  290. <Column size="80"/>
  291. <Column size="80"/>
  292. <Column size="100"/>
  293. <Column size="80"/>
  294. <Column size="60"/>
  295. <Column size="140"/>
  296. <Column size="130"/>
  297. <Column size="100"/>
  298. <Column size="120"/>
  299. <Column size="100"/>
  300. <Column size="200"/>
  301. <Column size="0"/>
  302. </Columns>
  303. <Rows>
  304. <Row size="24" band="head"/>
  305. <Row size="24"/>
  306. </Rows>
  307. <Band id="head">
  308. <Cell/>
  309. <Cell col="1"/>
  310. <Cell col="2" text="등록번호"/>
  311. <Cell col="3" text="환자명"/>
  312. <Cell col="4" text="진료과"/>
  313. <Cell col="5" text="병동/병실"/>
  314. <Cell col="6" text="시행부서"/>
  315. <Cell col="7" text="접수번호"/>
  316. <Cell col="8" text="바코드번호"/>
  317. <Cell col="9" text="검사코드"/>
  318. <Cell col="10" text="검사명"/>
  319. <Cell col="11" text="검체명"/>
  320. <Cell col="12" text="결과"/>
  321. <Cell col="13" text="특수검사연번호"/>
  322. <Cell col="14" text="처방일시"/>
  323. <Cell col="15" text="검체상태"/>
  324. <Cell col="16" text="바코드출력일시"/>
  325. <Cell col="17" text="채취일시"/>
  326. <Cell col="18" text="가접수일시"/>
  327. <Cell col="19" text="접수일시"/>
  328. <Cell col="20" text="취소사유"/>
  329. <Cell col="21" text="취소자"/>
  330. <Cell col="22" text="검체상태"/>
  331. </Band>
  332. <Band id="body">
  333. <Cell celltype="head" text="expr:currow+1"/>
  334. <Cell col="1" displaytype="checkbox" edittype="checkbox" text="bind:chk" expr="expr:chk == 'Y' || chk == '1'?1:0"/>
  335. <Cell col="2" edittype="readonly" text="bind:pid" editautoselect="true"/>
  336. <Cell col="3" text="bind:patnm"/>
  337. <Cell col="4" text="bind:orddeptnm"/>
  338. <Cell col="5" text="bind:wardroom"/>
  339. <Cell col="6" displaytype="combo" edittype="combo" text="bind:tsectcd" combodataset="ds_init_lb0106" combocodecol="cd" combodatacol="nm" enable="false"/>
  340. <Cell col="7" text="bind:workno"/>
  341. <Cell col="8" displaytype="text" edittype="readonly" text="bind:bcno" editautoselect="true"/>
  342. <Cell col="9" text="bind:testcd"/>
  343. <Cell col="10" text="bind:tclsnm"/>
  344. <Cell col="11" style="align:left;" text="bind:spcnm"/>
  345. <Cell col="12" style="color:EXPR(reptrslt =='미등록'?&quot;#EE0000&quot;,&quot;#000000&quot;);color2:EXPR(reptrslt =='미등록'?&quot;#EE0000&quot;,&quot;#000000&quot;);" text="bind:reptrslt"/>
  346. <Cell col="13" text="bind:spcltestseq"/>
  347. <Cell col="14" displaytype="date" text="bind:prcpdd" calendardisplaynulltype="nulltext"/>
  348. <Cell col="15" displaytype="combo" edittype="combo" text="bind:spcstat" combodataset="ds_init_spcstat" combocodecol="value" combodatacol="label" enable="false"/>
  349. <Cell col="16" text="bind:barcdprntdt"/>
  350. <Cell col="17" style="align:left;" text="bind:bcolldt"/>
  351. <Cell col="18" style="align:left;" text="bind:spcpseuacptdt"/>
  352. <Cell col="19" style="align:left;" text="bind:spcacptdt"/>
  353. <Cell col="20" text="bind:cnclcnts"/>
  354. <Cell col="21" text="bind:spccnclnm"/>
  355. <Cell col="22" displaytype="combo" edittype="combo" text="bind:spcstat" enable="false"/>
  356. </Band>
  357. </Format>
  358. </Formats>
  359. </Grid>
  360. <Div position="absolute 1040 693 1185 715" id="group_page" visible="false" anchor="default">
  361. <Layouts>
  362. <Layout>
  363. <Edit readonly="true" position="absolute 45 1 70 20" id="opt_first" anchor="default"/>
  364. <Edit readonly="true" position="absolute 82 1 107 20" id="opt_last" anchor="default"/>
  365. <Static text="/" position="absolute 72 2 87 17" id="cap_aaa" anchor="default"/>
  366. <Button position="absolute 28 2 44 18" id="btn_pp" class="icon_pre_month" text="" anchor="default" onclick="group3_switch3_case2_group_page_btn_pp_onclick"/>
  367. <Button position="absolute 11 2 27 18" id="btn_pf" class="icon_pre_year" text="" anchor="default" onclick="group3_switch3_case2_group_page_btn_pf_onclick"/>
  368. <Button position="absolute 108 2 124 18" id="btn_np" class="icon_next_month" text="" anchor="default" onclick="group3_switch3_case2_group_page_btn_np_onclick"/>
  369. <Button position="absolute 125 2 141 18" id="ntn_nl" class="icon_next_year" text="" anchor="default" onclick="group3_switch3_case2_group_page_ntn_nl_onclick"/>
  370. </Layout>
  371. </Layouts>
  372. </Div>
  373. <Button position="absolute 1113 73 1188 92" id="btn_excel" class="btn7" text="엑셀저장" anchor="default" onclick="group3_switch3_case2_btn_excel_onclick"/>
  374. </Layout>
  375. </Layouts>
  376. </Tabpage>
  377. </Tabpages>
  378. </Tab>
  379. <CheckBox position="absolute 1088 18 1193 38" id="checkbox4" text="환자정보띄우기" truevalue="1" falsevalue="0" anchor="default"/>
  380. <ActiveX position="absolute 456 13 491 43" id="socket" progid="{81e9de7e-90be-4958-bbda-ac731c05aba8}" visible="false" anchor="default" OnError="group3_socket_OnError" OnConnect="group3_socket_OnConnect"/>
  381. <ActiveX position="absolute 491 13 526 43" id="socket2" progid="{81e9de7e-90be-4958-bbda-ac731c05aba8}" visible="false" anchor="default" OnError="group3_socket2_OnError" OnConnect="group3_socket2_OnConnect"/>
  382. <CheckBox position="absolute 990 18 1085 38" id="checkbox5" text="미생물처방전" truevalue="1" falsevalue="0" anchor="default" value="0" onclick="group3_checkbox5_onclick"/>
  383. <CheckBox position="absolute 955 18 990 38" id="checkbox7" text="재" truevalue="1" falsevalue="0" anchor="default"/>
  384. </Layout>
  385. </Layouts>
  386. </Div>
  387. <Div position="absolute 0 24 1194 51" id="group4" scrollbars="none">
  388. <Layouts>
  389. <Layout>
  390. <Shape position="absolute 0 24 1194 30" linetype="horizontal" id="line17" class="line_6"/>
  391. <Div position="absolute 827 0 1194 25" id="group7">
  392. <Layouts>
  393. <Layout>
  394. <Button position="absolute 298 3 366 25" id="btn_init" class="btn4" text="초기화" onclick="group4_group7_btn_init_onclick"/>
  395. <Button position="absolute 3 3 83 25" id="btn_acptcancel" class="btn4" taborder="14" text="접수취소" onclick="group4_group7_btn_acptcancel_onclick"/>
  396. <Button position="absolute 85 3 189 25" id="btn_spclist" class="btn4" taborder="15" text="검체목록출력" onclick="group4_group7_btn_spclist_onclick"/>
  397. <Button position="absolute 192 3 296 25" id="btn_rebarcd" class="btn4" taborder="16" text="바코드재출력" onclick="group4_group7_btn_rebarcd_onclick"/>
  398. </Layout>
  399. </Layouts>
  400. </Div>
  401. <Div position="absolute 1039 0 1194 25" id="group6">
  402. <Layouts>
  403. <Layout>
  404. <Button position="absolute 3 3 83 25" id="btn_batacpt" class="btn4" taborder="6" visible="false" text="일괄접수" onclick="group4_group6_btn_batacpt_onclick"/>
  405. <Button position="absolute 86 3 154 25" id="btn_reset" class="btn4" taborder="5" text="초기화" onclick="group4_group6_btn_reset_onclick"/>
  406. </Layout>
  407. </Layouts>
  408. </Div>
  409. <Button position="absolute 0 3 92 25" id="btn_prnt" class="btn3" taborder="18" text="프린터설정" onclick="group4_btn_prnt_onclick"/>
  410. <Button position="absolute 93 3 209 25" id="btn_badspc" class="btn3" taborder="17" text="부적합검체등록" onclick="group4_btn_badspc_onclick"/>
  411. <Button position="absolute 210 3 314 25" id="btn_aprv" class="btn3" text="유전자동의서" onclick="group4_btn_aprv_onclick"/>
  412. </Layout>
  413. </Layouts>
  414. </Div>
  415. </Layout>
  416. </Layouts>
  417. <Objects>
  418. <Dataset id="ds_grd_spclist" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  419. <ColumnInfo>
  420. <column id="chk" type="string" desc="선택" ref="getBcollSpcInfo.chk"/>
  421. <column id="execdeptcd" type="string" desc="시행부서" ref="getBcollSpcInfo.execdeptcd"/>
  422. <column id="workno" type="string" desc="접수번호" ref="getBcollSpcInfo.workno"/>
  423. <column id="bcno" type="string" desc="바코드번호" ref="getBcollSpcInfo.bcno"/>
  424. <column id="orddeptnm" type="string" desc="진료과" ref="getBcollSpcInfo.orddeptnm"/>
  425. <column id="orddrid" type="string" desc="진료의" ref="getBcollSpcInfo.orddrid"/>
  426. <column id="orddeptcd" type="string" desc="진료과코드" ref="getBcollSpcInfo.orddeptcd"/>
  427. <column id="prcpgenrflag" type="string" desc="처방구분" ref="getBcollSpcInfo.prcpgenrflag"/>
  428. <column id="pid" type="string" desc="환자명" ref="getBcollSpcInfo.pid"/>
  429. <column id="patnm" type="string" desc="환자명" ref="getBcollSpcInfo.patnm"/>
  430. <column id="spccd" type="cdata" desc="검체명" ref="getBcollSpcInfo.spcnm"/>
  431. <column id="spcarvdt" type="string" desc="가접수일시" ref="getBcollSpcInfo.spcpseuacptdt"/>
  432. <column id="spcacptdt" type="string" desc="접수일시" ref="getBcollSpcInfo.spcacptdt"/>
  433. <column id="spcfrem" type="cdata" desc="특이사항" ref="getBcollSpcInfo.spcfrem"/>
  434. <column id="Msg" type="cdata" desc="메세지" ref="getBcollSpcInfo.Msg"/>
  435. <column id="urinspcyn" type="string" desc="유린여부" ref="getBcollSpcInfo.urinspcyn"/>
  436. <column id="prcpremfact" type="cdata" desc="처방특이사항" ref="getBcollSpcInfo.prcpremfact"/>
  437. <column id="instcd" type="string" desc="처방특이사항" ref="getBcollSpcInfo.instcd"/>
  438. <column id="prcpdd" type="string" desc="처방특이사항" ref="getBcollSpcInfo.prcpdd"/>
  439. <column id="execprcpuniqno" type="string" desc="처방특이사항" ref="getBcollSpcInfo.execprcpuniqno"/>
  440. <column id="patage" type="cdata" desc="환자나이" ref="getBcollSpcInfo.patage"/>
  441. <column id="spcnm" type="cdata" desc="검체명" ref="getBcollSpcInfo.spcnm"/>
  442. <column id="haspnm" type="cdata" desc="검체명" ref="getBcollSpcInfo.haspnm"/>
  443. <column id="spcstat" type="cdata" desc="검체명" ref="getBcollSpcInfo.spcstat"/>
  444. <Column id="Msg" type="STRING" size="256"/>
  445. <Column id="spcstat" type="STRING" size="256"/>
  446. </ColumnInfo>
  447. </Dataset>
  448. <Dataset id="ds_grd_detllist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  449. <ColumnInfo>
  450. <Column id="tclscd" type="STRING"/>
  451. <Column id="tclsscrnnm" type="STRING"/>
  452. <Column id="erprcpflag" type="STRING"/>
  453. <Column id="workno" type="STRING"/>
  454. <Column id="spcltestseq" type="STRING"/>
  455. <Column id="refprntyn" type="STRING"/>
  456. <Column id="phone" type="STRING"/>
  457. </ColumnInfo>
  458. </Dataset>
  459. <Dataset id="ds_grd_spcreflist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  460. <ColumnInfo>
  461. <Column id="chk" type="STRING"/>
  462. <Column id="pid" type="STRING"/>
  463. <Column id="patnm" type="STRING"/>
  464. <Column id="orddeptnm" type="STRING"/>
  465. <Column id="wardroom" type="STRING"/>
  466. <Column id="tsectcd" type="STRING"/>
  467. <Column id="workno" type="STRING"/>
  468. <Column id="bcno" type="STRING"/>
  469. <Column id="testcd" type="STRING"/>
  470. <Column id="tclsnm" type="STRING"/>
  471. <Column id="spcnm" type="STRING"/>
  472. <Column id="reptrslt" type="STRING"/>
  473. <Column id="spcltestseq" type="STRING"/>
  474. <Column id="prcpdd" type="STRING"/>
  475. <Column id="spcstat" type="STRING"/>
  476. <Column id="barcdprntdt" type="STRING"/>
  477. <Column id="bcolldt" type="STRING"/>
  478. <Column id="spcarvdt" type="STRING"/>
  479. <Column id="spcacptdt" type="STRING"/>
  480. <Column id="cnclcnts" type="STRING"/>
  481. <Column id="spccnclnm" type="STRING"/>
  482. <Column id="spcstat" type="STRING"/>
  483. </ColumnInfo>
  484. </Dataset>
  485. <Dataset id="ds_spcacpt" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  486. <ColumnInfo>
  487. <Column id="testmdlcd" type="STRING" size="256"/>
  488. <Column id="testlrgcd" type="STRING" size="256"/>
  489. <Column id="refflag" type="STRING" size="256"/>
  490. <Column id="spcchoiyn" type="STRING" size="256"/>
  491. <Column id="bcno" type="STRING" size="256"/>
  492. <Column id="resetyn" type="STRING" size="256"/>
  493. <Column id="bt" type="STRING" size="256"/>
  494. </ColumnInfo>
  495. <Rows>
  496. <Row>
  497. <Col id="testmdlcd">00</Col>
  498. <Col id="testlrgcd">00</Col>
  499. <Col id="refflag">2</Col>
  500. <Col id="spcchoiyn"/>
  501. <Col id="bcno"/>
  502. <Col id="resetyn"/>
  503. <Col id="bt"/>
  504. </Row>
  505. </Rows>
  506. </Dataset>
  507. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  508. <ColumnInfo>
  509. <Column id="bcno" type="STRING" size="256"/>
  510. <Column id="labelyn" type="STRING" size="256"/>
  511. <Column id="acptbcdyn" type="STRING" size="256"/>
  512. <Column id="toppatinfo" type="STRING" size="256"/>
  513. <Column id="refprnt" type="STRING" size="256"/>
  514. <Column id="microorder" type="STRING" size="256"/>
  515. <Column id="remicroorder" type="STRING" size="256"/>
  516. <Column id="barcdcheck" type="STRING" size="256"/>
  517. <Column id="acptcnt" type="STRING" size="256"/>
  518. </ColumnInfo>
  519. <Rows>
  520. <Row>
  521. <Col id="bcno"/>
  522. <Col id="labelyn">Y</Col>
  523. <Col id="acptbcdyn">Y</Col>
  524. <Col id="toppatinfo"/>
  525. <Col id="refprnt"/>
  526. <Col id="microorder"/>
  527. <Col id="remicroorder"/>
  528. </Row>
  529. </Rows>
  530. </Dataset>
  531. <Dataset id="ds_init_lb0102" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  532. <ColumnInfo>
  533. <Column id="cd" type="STRING"/>
  534. <Column id="nm" type="STRING"/>
  535. </ColumnInfo>
  536. </Dataset>
  537. <Dataset id="ds_init_lb0106" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  538. <ColumnInfo>
  539. <Column id="cd" type="STRING"/>
  540. <Column id="nm" type="STRING"/>
  541. </ColumnInfo>
  542. </Dataset>
  543. <Dataset id="ds_init_lb0104" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  544. <ColumnInfo>
  545. <Column id="cd" type="STRING"/>
  546. <Column id="nm" type="STRING"/>
  547. </ColumnInfo>
  548. </Dataset>
  549. <Dataset id="ds_init_lb0111" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  550. <ColumnInfo>
  551. <Column id="cd" type="STRING"/>
  552. <Column id="nm" type="STRING"/>
  553. </ColumnInfo>
  554. </Dataset>
  555. <Dataset id="ds_init_lb0000" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  556. <ColumnInfo>
  557. <Column id="cd" type="STRING"/>
  558. <Column id="nm" type="STRING"/>
  559. </ColumnInfo>
  560. </Dataset>
  561. <Dataset id="ds_init_lb0103" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  562. <ColumnInfo>
  563. <Column id="cd" type="STRING"/>
  564. <Column id="nm" type="STRING"/>
  565. </ColumnInfo>
  566. </Dataset>
  567. <Dataset id="ds_spcref" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  568. <ColumnInfo>
  569. <Column id="refbase" type="STRING" size="256"/>
  570. <Column id="reffromdd" type="STRING" size="256"/>
  571. <Column id="reftodd" type="STRING" size="256"/>
  572. <Column id="refflag" type="STRING" size="256"/>
  573. <Column id="refcnts" type="STRING" size="256"/>
  574. <Column id="lrgexecdept" type="STRING" size="256"/>
  575. <Column id="execdept" type="STRING" size="256"/>
  576. <Column id="undoacpt" type="STRING" size="256"/>
  577. <Column id="genrflag" type="STRING" size="256"/>
  578. <Column id="detlspcinfoyn" type="STRING" size="256"/>
  579. <Column id="pidfromdd" type="STRING" size="256"/>
  580. <Column id="pidtodd" type="STRING" size="256"/>
  581. <Column id="piddd" type="STRING" size="256"/>
  582. </ColumnInfo>
  583. <Rows>
  584. <Row>
  585. <Col id="refbase">1</Col>
  586. <Col id="reffromdd"/>
  587. <Col id="reftodd"/>
  588. <Col id="refflag">2</Col>
  589. <Col id="refcnts"/>
  590. <Col id="lrgexecdept">00</Col>
  591. <Col id="execdept">00</Col>
  592. <Col id="undoacpt"/>
  593. <Col id="genrflag">00</Col>
  594. <Col id="detlspcinfoyn"/>
  595. <Col id="pidfromdd"/>
  596. <Col id="pidtodd"/>
  597. <Col id="piddd">1</Col>
  598. </Row>
  599. </Rows>
  600. </Dataset>
  601. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  602. <ColumnInfo>
  603. <Column id="page" type="STRING" size="256"/>
  604. <Column id="scrnid" type="STRING" size="256"/>
  605. <Column id="bcnolist" type="STRING" size="256"/>
  606. <Column id="spcchoiyn" type="STRING" size="256"/>
  607. <Column id="btyn" type="STRING" size="256"/>
  608. <Column id="btdt" type="STRING" size="256"/>
  609. <Column id="execdept" type="STRING" size="256"/>
  610. <Column id="sectcd" type="STRING" size="256"/>
  611. <Column id="refbase" type="STRING" size="256"/>
  612. <Column id="piddd" type="STRING" size="256"/>
  613. <Column id="reffromdd" type="STRING" size="256"/>
  614. <Column id="reftodd" type="STRING" size="256"/>
  615. <Column id="refgbn" type="STRING" size="256"/>
  616. <Column id="pidfromdd" type="STRING" size="256"/>
  617. <Column id="pidtodd" type="STRING" size="256"/>
  618. <Column id="undoacpt" type="STRING" size="256"/>
  619. <Column id="genrflag" type="STRING" size="256"/>
  620. <Column id="detlspcinfoyn" type="STRING" size="256"/>
  621. <Column id="reftext" type="STRING" size="256"/>
  622. <Column id="flag" type="STRING" size="256"/>
  623. <Column id="NL" type="STRING" size="256"/>
  624. <Column id="bcno" type="STRING" size="256"/>
  625. <Column id="refflag" type="STRING" size="256"/>
  626. <Column id="spcstat" type="STRING" size="256"/>
  627. <Column id="menuparam" type="STRING" size="256"/>
  628. <Column id="urineyn" type="STRING" size="256"/>
  629. <Column id="lrgexecdept" type="STRING" size="256"/>
  630. </ColumnInfo>
  631. <Rows>
  632. <Row>
  633. <Col id="page">1</Col>
  634. </Row>
  635. </Rows>
  636. </Dataset>
  637. <Dataset id="ds_barcdprntsetup" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  638. <Dataset id="ds_data_setupinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  639. <ColumnInfo>
  640. <Column id="dsvaluepath" type="STRING" size="256"/>
  641. <Column id="prntkind" type="STRING" size="256"/>
  642. <Column id="commkind" type="STRING" size="256"/>
  643. <Column id="rexgbn" type="STRING" size="256"/>
  644. </ColumnInfo>
  645. </Dataset>
  646. <Dataset id="ds_data_blank" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  647. <ColumnInfo>
  648. <Column id="dsvaluepath" type="STRING" size="256"/>
  649. <Column id="left" type="STRING" size="256"/>
  650. <Column id="top" type="STRING" size="256"/>
  651. <Column id="b472size" type="STRING" size="256"/>
  652. </ColumnInfo>
  653. </Dataset>
  654. <Dataset id="ds_data_comm01" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  655. <ColumnInfo>
  656. <Column id="setupval" type="STRING" size="256"/>
  657. </ColumnInfo>
  658. </Dataset>
  659. <Dataset id="ds_data_comm02" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  660. <ColumnInfo>
  661. <Column id="dsvaluepath" type="STRING" size="256"/>
  662. <Column id="comm" type="STRING" size="256"/>
  663. <Column id="databit" type="STRING" size="256"/>
  664. <Column id="stopbit" type="STRING" size="256"/>
  665. <Column id="baudrate" type="STRING" size="256"/>
  666. <Column id="parity" type="STRING" size="256"/>
  667. </ColumnInfo>
  668. <Rows>
  669. <Row>
  670. <Col id="dsvaluepath">/setupinfo</Col>
  671. <Col id="comm">2</Col>
  672. <Col id="databit">8</Col>
  673. <Col id="stopbit">1</Col>
  674. <Col id="baudrate">9600</Col>
  675. <Col id="parity">n</Col>
  676. </Row>
  677. </Rows>
  678. </Dataset>
  679. <Dataset id="ds_data_comm03" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  680. <ColumnInfo>
  681. <Column id="dsvaluepath" type="STRING" size="256"/>
  682. <Column id="comm" type="STRING" size="256"/>
  683. <Column id="databit" type="STRING" size="256"/>
  684. <Column id="stopbit" type="STRING" size="256"/>
  685. <Column id="baudrate" type="STRING" size="256"/>
  686. <Column id="parity" type="STRING" size="256"/>
  687. </ColumnInfo>
  688. <Rows>
  689. <Row>
  690. <Col id="dsvaluepath">/setupinfo</Col>
  691. <Col id="comm">2</Col>
  692. <Col id="databit">8</Col>
  693. <Col id="stopbit">1</Col>
  694. <Col id="baudrate">9600</Col>
  695. <Col id="parity">n</Col>
  696. </Row>
  697. </Rows>
  698. </Dataset>
  699. <Dataset id="ds_barcodeinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  700. <Dataset id="ds_dbarcodeinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  701. <Dataset id="ds_nbarcodeinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  702. <Dataset id="ds_slideprnt" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  703. <Dataset id="ds_casetprnt" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  704. <Dataset id="ds_slidecaset" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  705. <Dataset id="ds_infdisinfolist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  706. <Dataset id="ds_mreport" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  707. <Dataset id="ds_init_prcpinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  708. <Dataset id="ds_page" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  709. <ColumnInfo>
  710. <Column id="lastpage" type="STRING" size="256"/>
  711. </ColumnInfo>
  712. <Rows>
  713. <Row/>
  714. </Rows>
  715. </Dataset>
  716. <Dataset id="ds_getspcltestlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  717. <Dataset id="ds_hidden_report" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  718. <Dataset id="ds_Rslt" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  719. <Dataset id="ds_CF" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  720. <Dataset id="ds_init_spcstat" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  721. <ColumnInfo>
  722. <Column id="label" type="STRING" size="256"/>
  723. <Column id="value" type="STRING" size="256"/>
  724. </ColumnInfo>
  725. <Rows>
  726. <Row>
  727. <Col id="label">검체취소</Col>
  728. <Col id="value">0</Col>
  729. </Row>
  730. <Row>
  731. <Col id="label">바코드출력</Col>
  732. <Col id="value">1</Col>
  733. </Row>
  734. <Row>
  735. <Col id="label">채혈</Col>
  736. <Col id="value">2</Col>
  737. </Row>
  738. <Row>
  739. <Col id="label">가접수</Col>
  740. <Col id="value">3</Col>
  741. </Row>
  742. <Row>
  743. <Col id="label">접수</Col>
  744. <Col id="value">4-</Col>
  745. </Row>
  746. <Row>
  747. <Col id="label">결과저장</Col>
  748. <Col id="value">41</Col>
  749. </Row>
  750. <Row>
  751. <Col id="label">중간보고</Col>
  752. <Col id="value">42</Col>
  753. </Row>
  754. <Row>
  755. <Col id="label">검사중</Col>
  756. <Col id="value">43</Col>
  757. </Row>
  758. <Row>
  759. <Col id="label">최종보고</Col>
  760. <Col id="value">44</Col>
  761. </Row>
  762. <Row>
  763. <Col id="label">수정보고</Col>
  764. <Col id="value">45</Col>
  765. </Row>
  766. </Rows>
  767. </Dataset>
  768. <Dataset id="ds_grd_spclist2" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  769. <ColumnInfo>
  770. <column id="chk" type="string" desc="선택" ref="getBcollSpcInfo.chk"/>
  771. <column id="execdeptcd" type="string" desc="시행부서" ref="getBcollSpcInfo.execdeptcd"/>
  772. <column id="workno" type="string" desc="접수번호" ref="getBcollSpcInfo.workno"/>
  773. <column id="bcno" type="string" desc="바코드번호" ref="getBcollSpcInfo.bcno"/>
  774. <column id="orddeptnm" type="string" desc="진료과" ref="getBcollSpcInfo.orddeptnm"/>
  775. <column id="orddrid" type="string" desc="진료의" ref="getBcollSpcInfo.orddrid"/>
  776. <column id="orddeptcd" type="string" desc="진료과코드" ref="getBcollSpcInfo.orddeptcd"/>
  777. <column id="prcpgenrflag" type="string" desc="처방구분" ref="getBcollSpcInfo.prcpgenrflag"/>
  778. <column id="pid" type="string" desc="환자명" ref="getBcollSpcInfo.pid"/>
  779. <column id="patnm" type="string" desc="환자명" ref="getBcollSpcInfo.patnm"/>
  780. <column id="spccd" type="cdata" desc="검체명" ref="getBcollSpcInfo.spcnm"/>
  781. <column id="spcarvdt" type="string" desc="가접수일시" ref="getBcollSpcInfo.spcpseuacptdt"/>
  782. <column id="spcacptdt" type="string" desc="접수일시" ref="getBcollSpcInfo.spcacptdt"/>
  783. <column id="spcfrem" type="cdata" desc="특이사항" ref="getBcollSpcInfo.spcfrem"/>
  784. <column id="Msg" type="cdata" desc="메세지" ref="getBcollSpcInfo.Msg"/>
  785. <column id="urineyn" type="string" desc="유린여부" ref="getBcollSpcInfo.urinspcyn"/>
  786. <column id="prcpremfact" type="cdata" desc="처방특이사항" ref="getBcollSpcInfo.prcpremfact"/>
  787. <column id="instcd" type="string" desc="처방특이사항" ref="getBcollSpcInfo.instcd"/>
  788. <column id="prcpdd" type="string" desc="처방특이사항" ref="getBcollSpcInfo.prcpdd"/>
  789. <column id="execprcpuniqno" type="string" desc="처방특이사항" ref="getBcollSpcInfo.execprcpuniqno"/>
  790. <column id="patage" type="cdata" desc="환자나이" ref="getBcollSpcInfo.patage"/>
  791. <column id="spcnm" type="cdata" desc="검체명" ref="getBcollSpcInfo.spcnm"/>
  792. <column id="haspnm" type="cdata" desc="검체명" ref="getBcollSpcInfo.haspnm"/>
  793. <column id="spcstat" type="cdata" desc="검체명" ref="getBcollSpcInfo.spcstat"/>
  794. </ColumnInfo>
  795. </Dataset>
  796. <Dataset id="ds_main_KeepBcnoPrint_printinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  797. </Objects>
  798. <Bind>
  799. <BindItem id="item0" compid="group3.switch3.case1.group2.cmb_TLrgCd" propid="value" datasetid="ds_spcacpt" columnid="testlrgcd"/>
  800. <BindItem id="item1" compid="group3.switch3.case1.group2.cmd_TMdlCd" propid="value" datasetid="ds_spcacpt" columnid="testmdlcd"/>
  801. <BindItem id="item2" compid="group3.switch3.case1.group2.rdo_acptflag" propid="value" datasetid="ds_spcacpt" columnid="refflag"/>
  802. <BindItem id="item3" compid="group3.switch3.case1.group2.chk_spcchoi" propid="value" datasetid="ds_spcacpt" columnid="spcchoiyn"/>
  803. <BindItem id="item4" compid="group3.switch3.case1.group2.ipt_bcno" propid="value" datasetid="ds_spcacpt" columnid="bcno"/>
  804. <BindItem id="item5" compid="group3.switch3.case1.group2.checkbox2" propid="value" datasetid="ds_spcacpt" columnid="resetyn"/>
  805. <BindItem id="item6" compid="group3.switch3.case1.group2.checkbox3" propid="value" datasetid="ds_spcacpt" columnid="bt"/>
  806. <BindItem id="item7" compid="group3.checkbox7" propid="value" datasetid="ds_hidden" columnid="remicroorder"/>
  807. <BindItem id="item8" compid="group3.checkbox5" propid="value" datasetid="ds_hidden" columnid="microorder"/>
  808. <BindItem id="item9" compid="group3.checkbox4" propid="value" datasetid="ds_hidden" columnid="toppatinfo"/>
  809. <BindItem id="item10" compid="group3.switch3.case1.checkbox1" propid="value" datasetid="ds_hidden" columnid="barcdcheck"/>
  810. <BindItem id="item11" compid="group3.switch3.case1.opt_cnt" propid="value" datasetid="ds_hidden" columnid="acptcnt"/>
  811. <BindItem id="item12" compid="group3.switch3.case1.cmb_execdept" propid="value" datasetid="ds_spcacpt" columnid="testmdlcd"/>
  812. <BindItem id="item13" compid="group3.switch3.case1.tar_rem" propid="value" datasetid="ds_grd_detllist" columnid="prcpremfact"/>
  813. <BindItem id="item14" compid="group3.switch3.case2.group5.cmb_refgbn" propid="value" datasetid="ds_spcref" columnid="refflag"/>
  814. <BindItem id="item15" compid="group3.switch3.case2.group5.ipt_text" propid="value" datasetid="ds_spcref" columnid="refcnts"/>
  815. <BindItem id="item16" compid="group3.switch3.case2.group5.input2" propid="value" datasetid="ds_spcref" columnid="pidfromdd"/>
  816. <BindItem id="item17" compid="group3.switch3.case2.group5.input1" propid="value" datasetid="ds_spcref" columnid="pidtodd"/>
  817. <BindItem id="item18" compid="group3.switch3.case2.group5.checkbox6" propid="value" datasetid="ds_spcref" columnid="piddd"/>
  818. <BindItem id="item19" compid="group3.switch3.case2.group5.radio1" propid="value" datasetid="ds_spcref" columnid="genrflag"/>
  819. <BindItem id="item20" compid="group3.switch3.case2.group5.chk_detlspcinfoyn" propid="value" datasetid="ds_spcref" columnid="detlspcinfoyn"/>
  820. <BindItem id="item21" compid="group3.switch3.case2.group5.cmb_lrgexec" propid="value" datasetid="ds_spcref" columnid="lrgexecdept"/>
  821. <BindItem id="item22" compid="group3.switch3.case2.group5.cmb_exec" propid="value" datasetid="ds_spcref" columnid="execdept"/>
  822. <BindItem id="item23" compid="group3.switch3.case2.group5.ipt_reffromdd" propid="value" datasetid="ds_spcref" columnid="reffromdd"/>
  823. <BindItem id="item24" compid="group3.switch3.case2.group5.ipt_reftodd" propid="value" datasetid="ds_spcref" columnid="reftodd"/>
  824. <BindItem id="item25" compid="group3.switch3.case2.group5.rdo_acptdd" propid="value" datasetid="ds_spcref" columnid="refbase"/>
  825. <BindItem id="item26" compid="group3.switch3.case2.group5.chk_undoacpt" propid="value" datasetid="ds_spcref" columnid="undoacpt"/>
  826. <BindItem id="item27" compid="group3.switch3.case2.group_page.opt_first" propid="value" datasetid="ds_send" columnid="page"/>
  827. <BindItem id="item28" compid="group3.switch3.case2.group_page.opt_last" propid="value" datasetid="ds_page" columnid="lastpage"/>
  828. </Bind>
  829. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  830. * System Name :
  831. * Job Name :
  832. * Creator :
  833. * Make Date : 2015-11-09
  834. * Description :
  835. *---------------------------------------------------------------------------------------
  836. * Modify Date Modifier Modify Description
  837. *---------------------------------------------------------------------------------------
  838. * 2015-11-09 Live Converter TF->XP
  839. *
  840. *---------------------------------------------------------------------------------------
  841. ****************************************************************************************/
  842. include "com_commonxp::comm_main.xjs";
  843. include "lis_commonxp::LPZ001.xjs";
  844. include "lis_commonxp::LZZ002.xjs";
  845. include "lis_commonxp::LLZ001.xjs";
  846. include "lis_commonxp::LZZ001.xjs";
  847. include "com_commodulexp::SSZFM00901.xjs";
  848. var arErrorCode = new HashArray();
  849. // *** 접수 *** 바코드번호 등록후 엔터 쳤을때
  850. function fsetBCNOEnter()
  851. {
  852. var bfnodecount = ds_grd_spclist.rowcount;
  853. var btdt = utlf_getCurrentDateTime().toDate("YYYYMMDD hhmmss").getAddDate(-10, "m").getDateFormat("YYYYMMDDhhmmss");
  854. // 유효성 체크
  855. if ( fexeBCNOtrue() == false )
  856. {
  857. return;
  858. }
  859. else
  860. {
  861. // 화면초기화여부 선택되면
  862. if(ds_spcacpt.getColumn(0, "resetyn")== "1")
  863. {
  864. ds_grd_spclist.clearData();
  865. }
  866. var bcno = utlf_transNullToEmpty(ds_spcacpt.getColumn(0, "bcno")).toUpperCase();
  867. var acptcnt = 0;
  868. if(ds_spcacpt.getColumn(0,"spcchoiyn") == "1")
  869. {
  870. var find = ds_grd_spclist.findRow("bcno", bcno);
  871. if(find > 0)
  872. {
  873. sysf_messageBox("이미 선택된 검체", "E008");
  874. ds_grd_spclist.setColumn(ds_grd_spclist.rowcount -1, "Msg", "error");
  875. return;
  876. }
  877. }
  878. ds_send.addColumn("bcno", "string");
  879. ds_send.addColumn("refflag", "string");
  880. ds_send.setColumn(0, "bcno", bcno);
  881. ds_send.setColumn(0, "refflag", ds_spcacpt.getColumn(0, "refflag"));
  882. ds_send.setColumn(0, "spcchoiyn", ds_spcacpt.getColumn(0, "spcchoiyn"));
  883. ds_send.setColumn(0, "execdept", ds_spcacpt.getColumn(0, "testmdlcd"));
  884. ds_send.setColumn(0, "btyn", ds_spcacpt.getColumn(0, "bt"));
  885. ds_send.setColumn(0, "btdt", btdt);
  886. ds_send.setColumn(0, "sectcd", ds_spcacpt.getColumn(0, "testlrgcd"));
  887. ds_send.setColumn(0, "NL", frmf_getMenuParam());
  888. ds_grd_spclist2.clearData();
  889. ds_barcodeinfo.clearData();
  890. var oParam = {};
  891. oParam.id = "TXLLJ00105";
  892. oParam.service = "acptmngtapp.AcptMngt";
  893. oParam.method = "reqExeSpcInfo";
  894. oParam.inds = "cond=ds_send";
  895. oParam.outds = "ds_grd_spclist2=getBcollSpcInfo ds_barcodeinfo=barcodeinfo ds_dbarcodeinfo=dbarcodeinfo ds_nbarcodeinfo=nbarcodeinfo ds_slideprnt=slideprnt ds_casetprnt=casetprnt ds_slidecaset=slidecaset";
  896. oParam.transaction = false;
  897. oParam.async = false;
  898. //oParam.callback = "cf_TXLLJ00105";
  899. tranf_submit(oParam);
  900. ds_grd_spclist.updatecontrol = false;
  901. if (ds_grd_spclist2.rowcount > 0 )
  902. {
  903. for(i =0; i < ds_grd_spclist2.rowcount; i++)
  904. {
  905. var nRow = ds_grd_spclist.addRow();
  906. ds_grd_spclist.copyRow(nRow, ds_grd_spclist2, i);
  907. }
  908. }
  909. ds_grd_spclist.updatecontrol = true;
  910. var afnodecount = ds_grd_spclist.rowcount;
  911. group3.switch3.case1.grd_spclist.setFocus();
  912. if(ds_spcacpt.getColumn(0, "resetyn") != "1")
  913. {
  914. if(bfnodecount == afnodecount) //조회된 데이터가 없을 경우 메세지 띄움.
  915. {
  916. sysf_messageBox("바코드 번호를", "I007");
  917. return;
  918. }
  919. }
  920. ds_grd_spclist.rowposition = (ds_grd_spclist.rowcount-1);
  921. if(ds_hidden.getColumn(0, "toppatinfo") == "1") // 환자정보띄우기 체크되있을때만
  922. {
  923. if(ds_grd_spclist.rowcount > 0)
  924. {
  925. if(appf_getPatientInfo("pid") != ds_grd_spclist.getColumn(ds_grd_spclist.rowposition, "pid"))
  926. {
  927. fGetTopInfo();
  928. }
  929. }
  930. }
  931. else
  932. {
  933. appf_delPatientInfos(); //환자정보 전체 삭제
  934. }
  935. var gridRow = ds_grd_spclist.rowcount;
  936. ds_grd_spclist.rowposition = gridRow;
  937. group3.switch3.case1.grd_spclist.vscrollbar.pos = gridRow;
  938. //색깔 구분 및 체크 아래 메세지 표시 안에 있던거에서 위로 뺌(검체 내 일부 취소건 있을때 두줄 조회되서)
  939. ds_grd_spclist.addColumn("color", "string");
  940. ds_grd_spclist.updatecontrol = false;
  941. for(i = 0; i < ds_grd_spclist.rowcount; i++)
  942. {
  943. var msgbcno = ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1, "bcno");
  944. if(ds_grd_spclist.getColumn(i, "bcno") == msgbcno && !utlf_isNull(ds_grd_spclist.getColumn(i, "Msg")))
  945. {
  946. ds_grd_spclist.setColumn(i, "color", "#aaaaaa");
  947. ds_grd_spclist.setColumn(i, "chk", "1");
  948. }
  949. else if(ds_grd_spclist.getColumn(i, "spcstat") == "0" )
  950. {
  951. ds_grd_spclist.setColumn(i, "color", "#aaaaaa");
  952. ds_grd_spclist.setColumn(i, "chk", "0");
  953. }
  954. else
  955. {
  956. ds_grd_spclist.setColumn(i, "chk", "1");
  957. }
  958. }
  959. ds_grd_spclist.updatecontrol = true;
  960. // 메세지 표시
  961. if(!utlf_isNull(ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1, "Msg")))
  962. {
  963. var msg = ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1, "Msg");
  964. sysf_messageBox(msg, "E008", "");
  965. //위로 끌어올림
  966. }
  967. else
  968. {
  969. if(ds_grd_spclist.rowcount > 0)
  970. {
  971. //감염정보 조회
  972. ds_send.addColumn("pid", "string");
  973. ds_send.setColumn(0, "pid", ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1, "pid"));
  974. ds_send.setColumn(0, "bcno", ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1, "bcno"));
  975. ds_send.setColumn(0, "flag", "");
  976. var oParam = {};
  977. oParam.id = "TRLLC90801";
  978. oParam.service = "bcollmngtapp.BCollMngt";
  979. oParam.method = "reqGetInfDisInfo";
  980. oParam.inds = "cond=ds_send";
  981. oParam.outds = "ds_infdisinfolist=getinfdisinfo";
  982. oParam.async = false;
  983. // oParam.callback = "cf_TRLLC90801";
  984. tranf_submit(oParam);
  985. if(ds_infdisinfolist.rowcount > 0) //감염정보가 있다면..
  986. {
  987. var objArg = new Object();
  988. objArg.arg_ds_infdisinfolist = ds_infdisinfolist;
  989. frmf_modal("SPLLC90800", "SPLLC90800", objArg, "", "", "", "","", "", "", "", "", "M"); //감염정보창 띄우기
  990. }
  991. }
  992. }
  993. group3.switch3.case1.group2.ipt_bcno.setFocus();
  994. group3.switch3.case1.group2.ipt_bcno.setSelect();
  995. // 검체 상세목록 보여주기
  996. var sRow = ds_grd_spclist.rowcount;
  997. if(sRow > 0)
  998. {
  999. fGetSpcDetlList(sRow);
  1000. }
  1001. var prntYN = "N" // 세포유전 워크리스트 출력여부
  1002. for(i = 0; i < ds_grd_detllist.rowcount; i++)
  1003. {
  1004. if("Y" == ds_grd_detllist.getColumn(i, "refprntyn"))
  1005. {
  1006. prntYN = "Y";
  1007. }
  1008. }
  1009. //접수 할 검체이거나, 접수된 검체만 report 출력 20090422 김성희 수정 : 세포유전 요청사항
  1010. if(prntYN == "Y" && !utlf_isNull(ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1, "spcacptdt")))
  1011. {
  1012. ds_hidden_refprint.clearData();
  1013. dsf_createDsRow("ds_hidden_refprint", [{col : "workno", val : ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1, "workno")}
  1014. ,{col : "workdd", val : utlf_transNullToEmpty(ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1, "spcacptdt")).substring(0,8)}
  1015. ,{col : "spcnm", val : ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1, "spcnm")}
  1016. ,{col : "patnm", val : ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1, "patnm")}
  1017. ,{col : "patage", val : ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1, "patage")}
  1018. ,{col : "pid", val : ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1, "pid")}
  1019. ,{col : "orddeptnm", val : ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1, "orddeptnm")}
  1020. ,{col : "haspnm", val : ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1, "haspnm")}]);
  1021. var objDOM = rptf_createDOM(); // DOM 객체 설정
  1022. rptf_setNodeListToDOM(objDOM, "root/hidden/refprnt", ds_hidden_refprint); // 데이터셋 1
  1023. var objParam = new Object();
  1024. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  1025. var option = "open=1;save=1;directprint=1;print=0;zoom=0;printdialog=0;callback=cbf_SPLPP01600";
  1026. rptf_exeReportPreview30(["RPLLJ00101"],[objParam], option);
  1027. }
  1028. // 유린검체 정보 등록
  1029. if(ds_grd_spclist.getColumn(sRow-1, "urinspcyn") == "Y")
  1030. {
  1031. // 유린 팝업 띄우고 등록하기
  1032. fSetUrine(sRow-1);
  1033. }
  1034. }
  1035. var remicroorder = "";
  1036. // 접수시 spcacptbarcdprntcnt 갯수만큼 바코드 출력
  1037. if(ds_spcacpt.getColumn(0, "spcchoiyn") == "1")
  1038. {
  1039. }
  1040. else
  1041. {
  1042. if(frmf_getMenuParam=="N")
  1043. {
  1044. fExeNBarcdPrnt(); //핵의학 바코드 프린트 연결 안된데서 실행하면 뻗어요 ~~
  1045. fGetNAcptCnt(); //접수된 검체개수 보이게
  1046. }
  1047. else
  1048. {
  1049. if(utlf_isNull(ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1, "Msg")))
  1050. {
  1051. if (ds_barcodeinfo.rowcount > 0 )
  1052. {
  1053. trace('바코드 274');
  1054. fExeBarcdPrnt(); //바코드 프린트 연결 안된데서 실행하면 뻗어요 ~~
  1055. }
  1056. if(ds_hidden.getColumn(0, "microorder") == "1")
  1057. {
  1058. ds_mreport.clearData();
  1059. var oParam = {};
  1060. oParam.id = "TRLLJ00106";
  1061. oParam.service = "acptmngtapp.AcptMngt";
  1062. oParam.method = "reqGetMreportListRef";
  1063. oParam.inds = "cond=ds_send";
  1064. oParam.outds = "ds_mreport=mreport";
  1065. oParam.async = false;
  1066. //oParam.callback = "cf_TRLLJ00105";
  1067. tranf_submit(oParam);
  1068. if (ds_mreport.rowcount > 0 )
  1069. {
  1070. trace('미생물291');
  1071. var objDOM = rptf_createDOM(); // DOM 객체 설정
  1072. rptf_setNodeListToDOM(objDOM, "root/temp/mreport", ds_mreport); // 데이터셋 1
  1073. var objParam = new Object();
  1074. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  1075. var option = "open=1;save=1;directprint=1;print=0;zoom=0;printdialog=0;callback=cbf_SPLPP01600";
  1076. rptf_exeReportPreview30(["RPLLJ00102"],[objParam], option);
  1077. remicroorder = "1";
  1078. }
  1079. }
  1080. }
  1081. }
  1082. }
  1083. //fExeSlidIss(); 임시로 막음
  1084. //미생물처방전 출력
  1085. if (utlf_isNull(remicroorder) && ds_hidden.getColumn(0, "remicroorder") == "1" )
  1086. {
  1087. trace('미생물 315');
  1088. ds_mreport.clearData();
  1089. var oParam = {};
  1090. oParam.id = "TRLLJ00106";
  1091. oParam.service = "acptmngtapp.AcptMngt";
  1092. oParam.method = "reqGetMreportListRef";
  1093. oParam.inds = "cond=ds_send";
  1094. oParam.outds = "ds_mreport=mreport";
  1095. oParam.async = false;
  1096. //oParam.callback = "cf_TRLLJ00105";
  1097. tranf_submit(oParam);
  1098. if(ds_mreport.rowcount > 0)
  1099. {
  1100. var objDOM = rptf_createDOM(); // DOM 객체 설정
  1101. rptf_setNodeListToDOM(objDOM, "root/temp/mreport", ds_mreport); // 데이터셋 1
  1102. var objParam = new Object();
  1103. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  1104. var option = "open=1;save=1;directprint=1;print=0;zoom=0;printdialog=0;callback=cbf_SPLPP01600";
  1105. //var option = "open=1;save=1;directprint=1;printdialog=0;print=1;zoom=0;callback=cbf_SPLPP01600";
  1106. rptf_exeReportPreview30(["RPLLJ00102"],[objParam], option);
  1107. }
  1108. }
  1109. for(i = 0; i < ds_grd_spclist.rowcount; i++)
  1110. {
  1111. if(utlf_transNullToEmpty(ds_grd_spclist.getColumn(i, "patnm")).indexOf("★") == "1")
  1112. {
  1113. ds_grd_spclist.setColumn(i, "color", "#ff0000");
  1114. }
  1115. }
  1116. group3.switch3.case1.group2.ipt_bcno.setFocus();
  1117. }
  1118. function cbf_SPLPP01600()
  1119. {
  1120. this.setTimer(0, 100);
  1121. }
  1122. function fExeSlidIss()
  1123. {
  1124. trace('장비 ');
  1125. //장비IP set
  1126. var slideprnt = ds_slideprnt.getColumn(0,"slideprnt");
  1127. var casetprnt = ds_slideprnt.getColumn(0,"casetprnt");
  1128. if(slideprnt > 0)
  1129. {
  1130. sSlidBcIP = ds_slidecaset.getColumn(0,"slideip");
  1131. sSlidBcPort = ds_slidecaset.getColumn(0,"slideport");
  1132. //----------------------------------------
  1133. if (utlf_isNull(sSlidBcIP) || sSlidBcIP == "-")
  1134. {
  1135. sysf_messageBox("슬라이드 라벨지 장비의 IP주소가 없습니다. 병원별 환경설정에서 ", "C001");
  1136. return false;
  1137. }
  1138. //--------------------------------------------
  1139. if (utlf_isNull(sSlidBcPort) || sSlidBcPort == "-")
  1140. {
  1141. sysf_messageBox("슬라이드 라벨지 장비의 Port번호가 없습니다. 병원별 환경설정에서 ", "C001");
  1142. return false;
  1143. }
  1144. trace('장비1 ');
  1145. socket.connect(sSlidBcIP, sSlidBcPort);
  1146. trace('장비 2');
  1147. }
  1148. if(casetprnt > 0)
  1149. {
  1150. trace('장비3 ');
  1151. sSlidBcIP2 = ds_slidecaset.getColumn(0,"casetip");
  1152. sSlidBcPort2 = ds_slidecaset.getColumn(0,"casetport");
  1153. //----------------------------------------
  1154. if (utlf_isNull(sSlidBcIP2) || sSlidBcIP2 == "-")
  1155. {
  1156. sysf_messageBox("카세트 장비의 IP주소가 없습니다. 병원별 환경설정에서 ", "C001");
  1157. return false;
  1158. }
  1159. //--------------------------------------------
  1160. if (utlf_isNull(sSlidBcPort2) || sSlidBcPort2 == "-")
  1161. {
  1162. sysf_messageBox("카세트 장비의 Port번호가 없습니다. 병원별 환경설정에서 ", "C001");
  1163. return false;
  1164. }
  1165. //-------------------------------------
  1166. trace('장비 4');
  1167. socket2.connect(sSlidBcIP2, sSlidBcPort2);
  1168. trace('장비 5');
  1169. }
  1170. }
  1171. function fExeSlidIssA()
  1172. {
  1173. var iMaxRowCnt = 0;
  1174. var sSlidNode = "/root/main/slide/slideprnt";
  1175. iMaxRowCnt = ds_slideprnt.rowcount;
  1176. for(var iRowNo = 0; iRowNo < iMaxRowCnt; iRowNo++)
  1177. {
  1178. var prntcnt = ds_slideprnt.getColumn(iRowNo, "prntcnt");
  1179. for(var slidecnt = 0 ; slidecnt < prntcnt ; slidecnt++)
  1180. {
  1181. var patnm = getNameInitial(ds_slideprnt.getColumn(iRowNo, "patnm"));
  1182. var etc1 = ds_slideprnt.getColumn(iRowNo, "etc1");
  1183. if(utlf_isNull(etc1))
  1184. {
  1185. etc1 = "-";
  1186. }
  1187. sSendMsg = "S▦"; //슬라이드구분
  1188. sSendMsg += ds_slideprnt.getColumn(iRowNo, "spclno") + "▦"; // 특수검사연번호
  1189. sSendMsg += patnm + "▦"; // 환자명
  1190. sSendMsg += etc1 + "▦";
  1191. sSendMsg += ds_slideprnt.getColumn(iRowNo, "workdd") + "▦"; // 접수일시
  1192. sSendMsg += ds_slideprnt.getColumn(iRowNo, "etc2") + "▦";
  1193. sSendMsg += ds_slideprnt.getColumn(iRowNo, "hospnm") + "▩"; // 병원명
  1194. //sSendMsg += "▩";
  1195. socket.sendString(sSendMsg);
  1196. }
  1197. }
  1198. socket.close();
  1199. ds_slideprnt.clear();
  1200. }
  1201. function fExeSlidIssB()
  1202. {
  1203. var iMaxRowCnt2 = 0;
  1204. //var sSlidNode2 = "/root/main/slide/casetprnt";
  1205. //--------------------------------------
  1206. iMaxRowCnt2 = ds_casetprnt.rowcount;
  1207. for(var iRowNo2 = 0; iRowNo2 < iMaxRowCnt2; iRowNo2++)
  1208. {
  1209. var patnm = getNameInitial(ds_casetprnt.getColumn(iRowNo2, "patnm"));
  1210. var etcvalue = ds_casetprnt.getColumn(iRowNo2, "etc");
  1211. var etcMark = "";
  1212. if(etcvalue.indexOf("C") == -1)
  1213. {
  1214. etcMark = "1";
  1215. }
  1216. else{
  1217. etcMark = "2";
  1218. }
  1219. sSendMsg = "C▦"; //카세트구분
  1220. sSendMsg += ds_casetprnt.getColumn(iRowNo2, "spclno") + "▦"; // 특수검사연번호
  1221. sSendMsg += etcMark + "▦"; //후퍼
  1222. sSendMsg += ds_casetprnt.getColumn(iRowNo2, "etc") + "▦";
  1223. sSendMsg += patnm + "▩"; // 환자명
  1224. socket2.sendString(sSendMsg);
  1225. }
  1226. socket2.close();
  1227. ds_casetprnt.clear();
  1228. }
  1229. function getNameInitial(nameStr)
  1230. {
  1231. //받은 이름 문자열을 스페이스바로 분리
  1232. var part = nameStr.split(" ");
  1233. var str = "";
  1234. var nameChr = "";
  1235. var chr;
  1236. var cnt = 3;
  1237. //영문이름을 위한 대문자 변환
  1238. nameStr = nameStr.toUpperCase();
  1239. //스페이스로 구분되어 있는 이름(영문)의 경우 첫단어와 마지막 단어의 이니셜만 처리
  1240. if(part.length > 1)
  1241. {
  1242. if(part[0].length == 0) part[0] = " ";
  1243. if(part[part.length-1].length == 0) part[part.length-1] = " ";
  1244. nameChr = part[0].substr(0,1) + "." + part[part.length-1].substr(0,1);
  1245. }
  1246. else
  1247. {
  1248. nameChr = part[0];
  1249. }
  1250. //변환할 값이 0보다 큰지 확인
  1251. if(nameChr.length < cnt) cnt = nameChr.length;
  1252. if(cnt <= 0) return str;
  1253. //영문일 때를 위해 대문자로 변환
  1254. nameChr = nameChr.toUpperCase();
  1255. for(var pati = 0; pati < cnt; pati++)
  1256. {
  1257. chr = nameChr.substr(pati, 1).charCodeAt(0);
  1258. if(chr < 128)
  1259. {
  1260. str = str + nameChr.substr(pati, 1);
  1261. }
  1262. else
  1263. {
  1264. switch(nameChr.substr(pati, 1))
  1265. {
  1266. case "박":
  1267. str = str + "P";
  1268. break;
  1269. case "김":
  1270. str = str + "K";
  1271. break;
  1272. case "이":
  1273. if(pati == 0) str = str + "L";
  1274. else str = str + "I";
  1275. break;
  1276. default :
  1277. if(chr>=44032 && chr<45208) str = str + "G";
  1278. else if(chr>=45208 && chr<45796) str = str + "N";
  1279. else if(chr>=45796 && chr<46972) str = str + "D";
  1280. else if(chr>=46972 && chr<47560) str = str + "R";
  1281. else if(chr>=47560 && chr<48148) str = str + "M";
  1282. else if(chr>=48148 && chr<49324) str = str + "B";
  1283. else if(chr>=49324 && chr<50500) str = str + "S";
  1284. else if(chr>=50500 && chr<50556) str = str + "A";
  1285. else if(chr>=50556 && chr<50612) str = str + "Y";
  1286. else if(chr>=50612 && chr<50668) str = str + "E";
  1287. else if(chr>=50668 && chr<50724) str = str + "Y";
  1288. else if(chr>=50724 && chr<50752) str = str + "O";
  1289. else if(chr>=50752 && chr<50808) str = str + "W";
  1290. else if(chr>=50808 && chr<50836) str = str + "O";
  1291. else if(chr>=50836 && chr<50864) str = str + "Y";
  1292. else if(chr>=50864 && chr<50892) str = str + "U";
  1293. else if(chr>=50892 && chr<50976) str = str + "W";
  1294. else if(chr>=50976 && chr<51004) str = str + "Y";
  1295. else if(chr>=51004 && chr<51032) str = str + "E";
  1296. else if(chr>=51032 && chr<51060) str = str + "U";
  1297. else if(chr>=51060 && chr<51088) str = str + "I";
  1298. else if(chr>=51088 && chr<52264) str = str + "J";
  1299. else if(chr>=52264 && chr<52852) str = str + "C";
  1300. else if(chr>=52852 && chr<53440) str = str + "K";
  1301. else if(chr>=53440 && chr<54028) str = str + "T";
  1302. else if(chr>=54028 && chr<54616) str = str + "P";
  1303. else if(chr>=54616 && chr<55203) str = str + "H";
  1304. else str = str + " ";
  1305. break;
  1306. }
  1307. }
  1308. }
  1309. return str;
  1310. }
  1311. // 탑정보 위한 조회
  1312. function fGetTopInfo()
  1313. {
  1314. ds_send.setColumn(0, "pid", ds_grd_spclist.getColumn(ds_grd_spclist.rowposition, "pid"));
  1315. var oParam = {};
  1316. oParam.id = "TRLZZ00109";
  1317. oParam.service = "diagtestapplib.LisCommon";
  1318. oParam.method = "reqGetPidTopinfo";
  1319. oParam.inds = "cond=ds_send";
  1320. oParam.outds = "ds_init_prcpinfo=getPidTopinfo";
  1321. oParam.async = false;
  1322. //oParam.callback = "cf_TRLZZ00109";
  1323. tranf_submit(oParam);
  1324. if(ds_grd_spclist.rowcount> 0)
  1325. {
  1326. if(!utlf_isNull(ds_init_prcpinfo.getColumn(0, "pid")))
  1327. {
  1328. frmf_setParameter("errflag", "Y");
  1329. var ordtype = "";
  1330. var genrflag = ds_init_prcpinfo.getColumn(0, "genrflag");
  1331. if(genrflag =="D")
  1332. {
  1333. genrflag = "I";
  1334. }
  1335. var param = "";
  1336. //modal("SPMMO08900");
  1337. if((genrflag == "I") || (genrflag == "E"))
  1338. {
  1339. param = genrflag + "▦" + ds_init_prcpinfo.getColumn(0,"pid") + "▦" +
  1340. ds_init_prcpinfo.getColumn(0,"orddd") + "▦" +
  1341. ds_init_prcpinfo.getColumn(0,"cretno") + "▦" +
  1342. ds_init_prcpinfo.getColumn(0,"acptseqno") + "▦" + // seqno
  1343. ds_init_prcpinfo.getColumn(0,"todd") + "▦" +
  1344. ds_init_prcpinfo.getColumn(0,"instcd");
  1345. frmf_setParameter("condparam",param ); // 임시로
  1346. }
  1347. else if((genrflag == "O") || (genrflag == "S"))
  1348. {
  1349. param = genrflag + "▦" + ds_init_prcpinfo.getColumn(0,"pid") + "▦" +
  1350. ds_init_prcpinfo.getColumn(0,"orddd") + "▦" +
  1351. ds_init_prcpinfo.getColumn(0,"cretno") + "▦" +
  1352. ds_init_prcpinfo.getColumn(0,"instcd") + "▦" +
  1353. ds_init_prcpinfo.getColumn(0,"acptseqno") + "▦" +
  1354. ds_init_prcpinfo.getColumn(0,"orgorddd") + "▦";
  1355. frmf_setParameter("condparam",param );
  1356. }
  1357. appf_initPatientInfo(param);
  1358. }
  1359. var paminfo = sysf_getGlobalVariable("paminfo");
  1360. if(paminfo.length < 1) //상단정보가 없는 경우
  1361. {
  1362. appf_delPatientInfos(); //환자정보 전체 삭제
  1363. var pid = ds_grd_spclist.getColumn(ds_grd_spclist.rowposition, "pid");
  1364. var hngnm = ds_grd_spclist.getColumn(ds_grd_spclist.rowposition, "patnm");
  1365. //상단에 올릴 수 있는 정보가 있으면 아래와 같이 설정해 주시면 됩니다. 없으면 안 해주셔도 되구요..
  1366. frmf_setPatientInfo("pid" , pid); //등록번호
  1367. frmf_setPatientInfo("pname" , pid + "|" + hngnm); //환자명
  1368. }
  1369. }
  1370. }
  1371. // 핵의학 접수된 Cnt 조회
  1372. function fGetNAcptCnt()
  1373. {
  1374. var ncnt = 0;
  1375. for(i = 0; i < ds_grd_spclist.rowcount; i++)
  1376. {
  1377. if(utlf_isNull(ds_grd_spclist.getColumn(i, "Msg")))
  1378. {
  1379. ncnt += 1;
  1380. }
  1381. }
  1382. group3.switch3.case1.cap_cnt.visible = true;
  1383. group3.switch3.case1.opt_cnt.visible = true;
  1384. group3.switch3.case1.opt_cnt.value = ncnt;
  1385. }
  1386. // 유효성 체크
  1387. function fexeBCNOtrue()
  1388. {
  1389. var txtbcno = group3.switch3.case1.group2.ipt_bcno.value;
  1390. if(!utlf_isNull(txtbcno) )
  1391. {
  1392. // 바코드 길이 9자리
  1393. if(txtbcno.length == 9)
  1394. {
  1395. }
  1396. else
  1397. {
  1398. sysf_messageBox("잘못된 검체번호 ", "E008"); // 잘못된 검체번호 입니다.
  1399. return false;
  1400. }
  1401. }
  1402. }
  1403. // 핵의학 화면 접수검체갯수 보이기
  1404. function fSetNCnt()
  1405. {
  1406. if(frmf_getMenuParam()=="N")
  1407. {
  1408. group3.switch3.case1.cap_cnt.visible = true;
  1409. group3.switch3.case1.opt_cnt.visible = true;
  1410. }
  1411. else
  1412. {
  1413. group3.switch3.case1.cap_cnt.visible = false;
  1414. group3.switch3.case1.opt_cnt.visible = false;
  1415. }
  1416. }
  1417. // 일괄접수 버튼
  1418. function fSetBatAcpt()
  1419. {
  1420. var btdt = utlf_getCurrentDateTime().toDate("YYYYMMDD hhmmss").getAddDate(-10, "m").getDateFormat("YYYYMMDDhhmmss");
  1421. // 일괄접수
  1422. var bcnolist ="";
  1423. if(sysf_messageBox("모든 리스트를 접수", "Q004") == 6)
  1424. {
  1425. for(i = 0; i < ds_grd_spclist.rowcount; i++)
  1426. {
  1427. if(ds_grd_spclist.getColumn(i, "chk") == "1")
  1428. {
  1429. bcnolist += ds_grd_spclist.getColumn(i, "bcno") + "▦";
  1430. }
  1431. ds_grd_spclist.setRowType(i, "I");
  1432. }
  1433. dsf_createDs("ds_send_batacptgrd");
  1434. grdf_setStatusColumn(group3.switch3.case1.grd_spclist, "status");
  1435. ds_send_batacptgrd.copyData(grdf_getGridUpdateData(group3.switch3.case1.grd_spclist));
  1436. for(var i=0; i < ds_send_batacptgrd.rowcount; i++)
  1437. {
  1438. if(ds_send_batacptgrd.getColumn(i, "chk") == "1")
  1439. {
  1440. ds_send_batacptgrd.setColumn(i, "chk", "true");
  1441. }
  1442. else
  1443. {
  1444. ds_send_batacptgrd.setColumn(i, "chk", "false");
  1445. }
  1446. }
  1447. ds_send.addColumn("bcnolist", "string");
  1448. ds_send.setColumn(0, "bcnolist", bcnolist);
  1449. ds_send.setColumn(0, "refflag", ds_spcacpt.getColumn(0, "refflag"));
  1450. ds_send.setColumn(0, "spcchoiyn", ds_spcacpt.getColumn(0, "spcchoiyn"));
  1451. ds_send.setColumn(0, "btyn", ds_spcacpt.getColumn(0, "bt"));
  1452. ds_send.setColumn(0, "btdt", btdt);
  1453. ds_send.setColumn(0, "execdept", ds_spcacpt.getColumn(0, "testmdlcd"));
  1454. var oParam = {};
  1455. oParam.id = "TXLLJ00104";
  1456. oParam.service = "acptmngtapp.AcptMngt";
  1457. oParam.method = "reqSetBatAcpt";
  1458. oParam.inds = "cond=ds_send datalist=ds_send_batacptgrd";
  1459. oParam.outds = "ds_grd_spclist=getspcinfolist ds_barcodeinfo=barcodeinfo ds_dbarcodeinfo=dbarcodeinfo ds_nbarcodeinfo=nbarcodeinfo";
  1460. oParam.transaction = false;
  1461. oParam.async = false;
  1462. oParam.callback = "cf_TXLLJ00104";
  1463. tranf_submit(oParam);
  1464. if(arErrorCode.pop("TXLLJ00104") > -1)
  1465. {
  1466. ds_barcodeinfo.addColumn("cntflag", "string");
  1467. if(ds_barcodeinfo.rowcount == 0)
  1468. {
  1469. ds_barcodeinfo.addRow();
  1470. ds_barcodeinfo.addRow();
  1471. }
  1472. else if (ds_barcodeinfo.rowcount == 1)
  1473. {
  1474. ds_barcodeinfo.addRow();
  1475. }
  1476. ds_barcodeinfo.setColumn(0, "cntflag", "acpt");
  1477. ds_barcodeinfo.setColumn(1, "cntflag", "acpt");
  1478. var count2 = ds_barcodeinfo.rowcount;
  1479. var mTF = false;
  1480. var spcTF = false;
  1481. var LCount = 0;
  1482. var MCount = 0;
  1483. var BCount = 0;
  1484. for(i = 0; i < count2; i++ )
  1485. {
  1486. if(ds_barcodeinfo.getColumn(i, "spcacptbarcdprntcnt") > 0)
  1487. {
  1488. spcTF = true;
  1489. LCount = 1;
  1490. }
  1491. if(ds_barcodeinfo.getColumn(i, "microbarcdprntcnt") > 0)
  1492. {
  1493. mTF = true;
  1494. MCount = 1;
  1495. }
  1496. }
  1497. var prtkind = ds_data_setupinfo.getColumn(0, "prntkind");
  1498. var portnm = ds_data_setupinfo.getColumn(0, "commkind");
  1499. BCount = ds_dbarcodeinfo.rowcount; //분주바코드갯수
  1500. // 접수 바코드 출력
  1501. if(spcTF)
  1502. {
  1503. if( (prtkind == "9" && portnm == "01") || (prtkind == "11" && portnm == "01") || prtkind == "10" || prtkind == "2" || prtkind == "6" || prtkind == "7" )
  1504. {
  1505. lf_LisSpcBarcodePrint2(ds_barcodeinfo, "", 0, BCount);
  1506. }
  1507. else if(prtkind == "8" )
  1508. {
  1509. lf_LisSpcBarcodePrint3(ds_barcodeinfo, "", 0, BCount);
  1510. }
  1511. else
  1512. {
  1513. lf_LisSpcBarcodePrint(ds_barcodeinfo, "", 0, BCount); // 접수 바코드 출력(접수바코드출력노드, 보관검체출력수, 분주바코드 출력수)
  1514. }
  1515. }
  1516. if( prtkind == "2" || prtkind == "6" || prtkind == "7" )
  1517. {
  1518. lf_LisSpcBarcodePrintB2(ds_dbarcodeinfo, "", LCount, MCount); // 분주 바뀐거 (분주바코드출력노드, 접수 바코드 출력수, 미생물바코드 출력수)
  1519. }
  1520. else
  1521. {
  1522. lf_LisSpcBarcodePrintB(ds_dbarcodeinfo, "", LCount, MCount);
  1523. }
  1524. // 미생물 바코드 출력
  1525. if(mTF)
  1526. {
  1527. if( (BCount != 0) || (LCount != 0) )
  1528. {
  1529. BCount = 1; //분주바코드가 있거나, 진검바코드가 있을경우 미생물 바코드 portopen 을 하지 않는다.
  1530. }
  1531. else
  1532. {
  1533. BCount = 0; //분주바코드, 진검바코드가 모두 없을 경우 portopen을 한다.
  1534. }
  1535. if( prtkind == "2" || prtkind == "6" || prtkind == "7" )
  1536. {
  1537. lf_LisMicroWorknoSpcBarcodePrint2(ds_barcodeinfo, "", BCount);
  1538. }
  1539. else
  1540. {
  1541. //fLisMicroWorknoSpcBarcodePrint("/root/main/barcode/barcodeinfo", BCount); // 미생물 작업번호 바코드 출력 (미생물바코드 출력노드, 분주 또는 진검바코드 출력여부)
  1542. lff_LisMicroWorknoSpcBarcodePrint(ds_barcodeinfo, "", BCount); // 미생물 작업번호 바코드 출력(출력노드, 분주 또는 진검 바코드여부)
  1543. }
  1544. }
  1545. ds_grd_spclist.clearData();
  1546. ds_grd_detllist.clearData();
  1547. }
  1548. }
  1549. }
  1550. function cf_TXLLJ00104(sSvcId, nErrorCode, sErrorMsg)
  1551. {
  1552. arErrorCode.push(sSvcId, nErrorCode);
  1553. }
  1554. // Urine Volume 등록
  1555. function fSetUrine(Row)
  1556. {
  1557. if(utlf_isNull(Row))
  1558. {
  1559. Row = ds_grd_spclist.rowposition;
  1560. }
  1561. var bcno = ds_grd_spclist.getColumn(Row, "bcno");
  1562. ds_hidden.setColumn(0, "bcno", bcno);
  1563. // 검체명 24시간 Urine 일경우 팝업띄워서 등록
  1564. var objArg = new Object();
  1565. objArg.arg_ds_hidden = ds_hidden;
  1566. frmf_open("SPLLJ90200", "SPLLJ90200", objArg, null, null, null, null, null, null, null, null, null, "M");
  1567. }
  1568. // 검체상세목록 조회
  1569. function fGetSpcDetlList(Ref)
  1570. {
  1571. ds_grd_detllist.clearData();
  1572. var rRow = "";
  1573. if(!utlf_isNull(Ref)) // 자동 상세목록 조회(Ref = 마지막 Row)
  1574. {
  1575. rRow = Ref-1;
  1576. }
  1577. else
  1578. {
  1579. rRow = ds_grd_spclist.rowposition;
  1580. }
  1581. ds_send.addColumn("spcstat", "string");
  1582. ds_send.addColumn("menuparam", "string");
  1583. ds_send.setColumn(0, "bcno", ds_grd_spclist.getColumn(rRow, "bcno"));
  1584. ds_send.setColumn(0, "spcstat", ds_grd_spclist.getColumn(rRow, "spcstat"));
  1585. ds_send.setColumn(0, "menuparam", frmf_getMenuParam());
  1586. var oParam = {};
  1587. oParam.id = "TRLLJ00101";
  1588. oParam.service = "acptmngtapp.AcptMngt";
  1589. oParam.method = "reqGetDetlListRef";
  1590. oParam.inds = "cond=ds_send";
  1591. oParam.outds = "ds_grd_detllist=getDetlListRef";
  1592. oParam.async = false;
  1593. //oParam.callback = "cf_TRLLJ00101";
  1594. tranf_submit(oParam);
  1595. if(ds_grd_detllist.getColumn(0,"scanyn") == "Y")
  1596. {
  1597. group3.switch3.case1.btn_formprnt.enable = true;
  1598. group3.switch3.case1.btn_formprnt.text = ds_grd_detllist.getColumn(0, "scrn");
  1599. }
  1600. else
  1601. {
  1602. group3.switch3.case1.btn_formprnt.text = ds_grd_detllist.getColumn(0, "scrn");
  1603. group3.switch3.case1.btn_formprnt.enable = false;
  1604. }
  1605. }
  1606. // 검체조회 tab 검체조회
  1607. function fGetSpcListref(flag)
  1608. {
  1609. ds_send.setColumn(0, "refbase" ,ds_spcref.getColumn(0, "refbase"));
  1610. ds_send.setColumn(0, "piddd" ,ds_spcref.getColumn(0, "piddd"));
  1611. ds_send.setColumn(0, "reffromdd" ,ds_spcref.getColumn(0, "reffromdd"));
  1612. ds_send.setColumn(0, "reftodd" ,ds_spcref.getColumn(0, "reffromdd"));
  1613. ds_send.setColumn(0, "refgbn" ,ds_spcref.getColumn(0, "refflag"));
  1614. ds_send.setColumn(0, "pidfromdd" ,ds_spcref.getColumn(0, "pidfromdd"));
  1615. ds_send.setColumn(0, "pidtodd" ,ds_spcref.getColumn(0, "pidtodd"));
  1616. ds_send.setColumn(0, "execdept" ,ds_spcref.getColumn(0, "execdept"));
  1617. ds_send.setColumn(0, "undoacpt" ,ds_spcref.getColumn(0, "undoacpt"));
  1618. ds_send.setColumn(0, "genrflag" ,ds_spcref.getColumn(0, "genrflag"));
  1619. ds_send.setColumn(0, "detlspcinfoyn" ,ds_spcref.getColumn(0, "detlspcinfoyn")); //상세조회 성가병원 요청 20090930 추가
  1620. ds_send.setColumn(0, "lrgexecdept" ,ds_spcref.getColumn(0, "lrgexecdept")); //시행부서 대분류로 조회
  1621. if(flag != "P")
  1622. {
  1623. ds_send.setColumn(0, "page", "1"); //page처리 20090930 추가
  1624. ds_send.setColumn(0, "NL", frmf_getMenuParam()); //2018.01.08
  1625. }
  1626. if((flag == "K") || ((flag == "C") && (!utlf_isNull(ds_spcref.getColumn(0, "refcnts"))))) //bcno enter키 누르거나, input 버튼 눌렀을 경우, 접수취소 후 검색어가 있으면 검색어로 조회
  1627. {
  1628. ds_send.setColumn(0, "reftext", ds_spcref.getColumn(0, "refcnts"));
  1629. var etc = ds_spcref.getColumn(0, "lrgexecdept");
  1630. if(etc == "00")
  1631. {
  1632. ds_send.setColumn(0, "reftodd", ds_spcref.getColumn(0, "reffromdd"));
  1633. }
  1634. else
  1635. {
  1636. ds_send.setColumn(0, "reftodd", ds_spcref.getColumn(0, "reftodd"));
  1637. if(fSetRefFromdd()==false)
  1638. {
  1639. return;
  1640. }
  1641. }
  1642. }
  1643. else //조회버튼 클릭시
  1644. {
  1645. // 이재오 수정 처리
  1646. ds_send.setColumn(0, "reftext", "");
  1647. ds_send.setColumn(0, "flag", "1");
  1648. var etc = ds_spcref.getColumn(0, "lrgexecdept");
  1649. if(etc == "00")
  1650. {
  1651. ds_send.setColumn(0, "reftodd", ds_spcref.getColumn(0, "reffromdd"));
  1652. }
  1653. else
  1654. {
  1655. ds_send.setColumn(0, "reftodd", ds_spcref.getColumn(0, "reftodd"));
  1656. if(fSetRefFromdd()==false)
  1657. {
  1658. return;
  1659. }
  1660. }
  1661. }
  1662. group3.switch3.case2.group_page.opt_last.value = ""; //상세 조회일 경우 page관련 내용 같이 조회 해 오는데 조회해올때마다 초기화
  1663. ds_send.addColumn("refcnts", "string");
  1664. ds_send.setColumn(0, "refcnts", ds_send.getColumn(0, "reftext"));
  1665. var oParam = {};
  1666. oParam.id = "TRLLJ00103";
  1667. oParam.service = "acptmngtapp.AcptMngt";
  1668. oParam.method = "reqGetSpcListRef";
  1669. oParam.inds = "cond=ds_send";
  1670. oParam.outds = "ds_grd_spcreflist=getspclistref ds_page=page";
  1671. oParam.async = false;
  1672. oParam.callback = "cf_TRLLJ00103";
  1673. tranf_submit(oParam);
  1674. }
  1675. function cf_TRLLJ00103(sSvcId, nErrorCode, sErrorMsg)
  1676. {
  1677. if(nErrorCode < 0) return;
  1678. var tmpPage = ds_send.getColumn(0, "page");
  1679. ds_grd_spcreflist.addColumn("chk", "string");
  1680. ds_send.setColumn(0, "page", tmpPage);
  1681. fSetSpcRefList(); //상세조회 여부에 따른 컬럼 Hidden
  1682. if(group3.switch3.case2.group5.chk_detlspcinfoyn.value == 1 && parseInt(ds_page.getColumn(0, "lastpage")) > 1)
  1683. {
  1684. group3.switch3.case2.group_page.visible = true;
  1685. }
  1686. else
  1687. {
  1688. group3.switch3.case2.group_page.visible = false;
  1689. }
  1690. }
  1691. // 부적합검체등록
  1692. function fSetBadSpc()
  1693. {
  1694. var bcno = "";
  1695. if(group3.switch3.tabindex == 0) //접수
  1696. {
  1697. if(ds_grd_spclist.rowcount > 0)
  1698. {
  1699. bcno = utlf_transNullToEmpty(ds_grd_spclist.getColumn(ds_grd_spclist.rowposition, "bcno"));
  1700. }
  1701. if(utlf_isNull(bcno))
  1702. {
  1703. var row = ds_grd_spclist.rowcount-1;
  1704. bcno = ds_grd_spclist.getColumn(row, "bcno");
  1705. }
  1706. }
  1707. else if(group3.switch3.tabindex == 1) //조회
  1708. {
  1709. if(ds_grd_spcreflist.rowcount > 0)
  1710. {
  1711. bcno = utlf_transNullToEmpty(ds_grd_spcreflist.getColumn(ds_grd_spcreflist.rowposition, "bcno"));
  1712. }
  1713. if(utlf_isNull(bcno))
  1714. {
  1715. var row = ds_grd_spcreflist.rowcount-1;
  1716. bcno = ds_grd_spcreflist.getColumn(row, "bcno");
  1717. }
  1718. }
  1719. ds_hidden.setColumn(0,"bcno", bcno);
  1720. var objArg = new Object();
  1721. objArg.arg_ds_hidden = ds_hidden;
  1722. frmf_modal("SPLLJ90100", "SPLLJ90100", objArg, "", "", "", "", "", "", "", "", "", "M");
  1723. }
  1724. // 채혈접수취소등록
  1725. function fSetAcptCncl()
  1726. {
  1727. if(ds_grd_spcreflist.rowcount < 1 )
  1728. {
  1729. sysf_messageBox("선택된 검체가 없습니다. 검체를 ", "C002"); // 선택하십시오!
  1730. return;
  1731. }
  1732. var find = ds_grd_spcreflist.findRow("chk", "1");
  1733. if(find < 0)
  1734. {
  1735. sysf_messageBox("선택된 검체가 없습니다. 검체를 ", "C002"); // 선택하십시오!
  1736. return;
  1737. }
  1738. if(utlf_transNullToEmpty(ds_grd_spcreflist.getColumn(find, "bcno")).substr(0, 1) == "G")
  1739. {
  1740. sysf_messageBox("헌혈 검체는 취소", "E001"); //헌혈검체는 취소할 수 없습니다.
  1741. return;
  1742. }
  1743. if(ds_grd_spcreflist.getColumn(find, "spcstat") != "4-")
  1744. {
  1745. sysf_messageBox("접수상태가 아니라 접수취소를", "E001") //할 수 없습니다.
  1746. return;
  1747. }
  1748. dsf_createDsRow("ds_hidden_canceldata" , [{col : "data1", val : ds_grd_spcreflist.getColumn(ds_grd_spcreflist.rowposition, "bcno")}
  1749. ,{col : "data2", val : "02"}]);
  1750. var objArg = new Object();
  1751. objArg.arg_ds_canceldata = ds_hidden_canceldata;
  1752. frmf_modal("SPLLC90400", "SPLLC90400", objArg, "", "", "", "", "", "", "", "", "", "M");
  1753. }
  1754. //프린터 설정
  1755. function fSetPrint()
  1756. {
  1757. var objArg = new Object();
  1758. objArg.arg_sSetupInfo = ds_barcdprntsetup.getColumn(0, "prntsetupinfo");
  1759. objArg.arg_sCallBackFunction = "lf_convertXmlToDs";
  1760. frmf_modal("SPLLC90100", "SPLLC90100" ,objArg, "", "", "", "", "", "", "", "", "", "M");
  1761. }
  1762. // 초기화
  1763. function fSetInit()
  1764. {
  1765. ds_grd_spcreflist.clearData();
  1766. ds_grd_spclist.clearData();
  1767. ds_grd_detllist.clearData();
  1768. ds_barcdprntsetup.clearData();
  1769. }
  1770. // 스위치에 따라 버튼 보이기
  1771. function fbuttonvisible(ref)
  1772. {
  1773. // 검체접수
  1774. if(ref == "A")
  1775. {
  1776. group4.group7.visible = false;
  1777. group4.group6.visible = true;
  1778. group3.checkbox4.visible = true;
  1779. }
  1780. // 검체조회
  1781. else if(ref == "B")
  1782. {
  1783. group4.group7.visible = true;
  1784. group4.group6.visible = false;
  1785. group3.checkbox4.visible = false;
  1786. }
  1787. }
  1788. // 접수 시 바코드 출력
  1789. function fExeBarcdPrnt()
  1790. {
  1791. var BCount = 0; //분주바코드
  1792. var LCount = 0; //진검바코드
  1793. var MCount = 0; //미생물 바코드
  1794. var spcTF = false;
  1795. var mTF = false;
  1796. // 2007-10-14 수정
  1797. ds_barcodeinfo.addColumn("cntflag"," string");
  1798. ds_barcodeinfo.setColumn(0, "cntflag", "acpt");
  1799. ds_barcodeinfo.addColumn("tsectlblnm2", "string");
  1800. ds_barcodeinfo.addColumn("patnm2", "string");
  1801. ds_barcodeinfo.addColumn("prcpdelivefact", "string");
  1802. ds_barcodeinfo.addColumn("tclslblnmlist2", "string");
  1803. var count = ds_barcodeinfo.rowcount;
  1804. for(i = 0; i < count; i++)
  1805. {
  1806. if(ds_barcodeinfo.getColumn(i, "spcacptbarcdprntcnt") > 0)
  1807. {
  1808. ds_barcodeinfo.setColumn(i, "tclslblnmlist", ds_barcodeinfo.getColumn(i, "tclsnmlist"));
  1809. spcTF = true;
  1810. LCount = 1;
  1811. }
  1812. else
  1813. {
  1814. ds_barcodeinfo.deleteRow(i);
  1815. i--;
  1816. count--;
  1817. }
  1818. if(ds_barcodeinfo.getColumn(i, "microbarcdprntcnt") > 0)
  1819. {
  1820. mTF = true;
  1821. MCount = 1;
  1822. }
  1823. }
  1824. BCount = ds_dbarcodeinfo.rowcount;//분주바코드 갯수
  1825. var prtkind = ds_data_setupinfo.getColumn(0,"prntkind");
  1826. var portnm = ds_data_setupinfo.getColumn(0,"commkind");
  1827. // 접수 바코드 출력
  1828. if(spcTF)
  1829. {
  1830. if( (prtkind == "9" && portnm == "01") || (prtkind == "11" && portnm == "01") || prtkind == "10" || prtkind == "2" || prtkind == "6" || prtkind == "7" )
  1831. { // sato
  1832. lf_LisSpcBarcodePrint2(ds_barcodeinfo, "", 0, BCount);// 접수 바코드 출력 //fLisSpcBarcodePrint(출력노드, 오픈을 위해 0셋팅, 분주바코드갯수)
  1833. }
  1834. else if(prtkind == "8" )
  1835. { // b472
  1836. lf_LisSpcBarcodePrint3(ds_barcodeinfo, "", 0, BCount);
  1837. }
  1838. else
  1839. { // zebra ...
  1840. lf_LisSpcBarcodePrint(ds_barcodeinfo, "", 0, BCount);// 접수 바코드 출력 //fLisSpcBarcodePrint(출력노드, 오픈을 위해 0셋팅, 분주바코드갯수)
  1841. }
  1842. }
  1843. if(ds_dbarcodeinfo.rowcount == 1)
  1844. {
  1845. ds_dbarcodeinfo.addRow();
  1846. }
  1847. ds_dbarcodeinfo.setColumn(1, "cntflag", "acpt");
  1848. if( prtkind == "2" || prtkind == "6" || prtkind == "7")
  1849. {
  1850. lf_LisSpcBarcodePrintB2(ds_dbarcodeinfo, "", LCount, MCount); // 분주(출력노드, 진검바코드여부, 미생물바코드여부)
  1851. }
  1852. else
  1853. {
  1854. lf_LisSpcBarcodePrintB(ds_dbarcodeinfo, "", LCount, MCount); // 분주(출력노드, 진검바코드여부, 미생물바코드여부)
  1855. }
  1856. // 미생물 바코드 출력
  1857. if(mTF)
  1858. {
  1859. if((BCount != 0) || (LCount != 0) ) //분주 바코드가 있거나 진검 바코드가 있을 경우 portopen을 하지 않는다.
  1860. {
  1861. BCount = 1;
  1862. }
  1863. else
  1864. {
  1865. BCount = 0; //분주바코드, 진검바코드 모두 없을 경우 portopen을 하기 위해 셋팅.
  1866. }
  1867. if( prtkind == "2" || prtkind == "6" || prtkind == "7") // sato
  1868. {
  1869. lf_LisMicroWorknoSpcBarcodePrint2(ds_barcodeinfo, "", BCount);
  1870. }
  1871. else
  1872. { // 기타바코드 zebra...
  1873. //alert("여의도 일까요 " + getUserInfo("dutplceinstcd"));
  1874. //이재오 2017 5월 11일 추가
  1875. var count = ds_barcodeinfo.rowcount;
  1876. for(i = 0; i < count; i++ )
  1877. {
  1878. if(ds_barcodeinfo.getColumn(i, "microbarcdprntcnt") == '2')
  1879. {
  1880. lf_LisSpcBarcodePrint2(ds_barcodeinfo, "", 0, BCount);// 접수 바코드 출력
  1881. //fLisSpcBarcodePrint(출력노드, 오픈을 위해 0셋팅, 분주바코드갯수)
  1882. }
  1883. }
  1884. //이재오 2017 5월 11일 추가 끝
  1885. fLisMicroWorknoSpcBarcodePrint(ds_barcodeinfo, "", BCount); // 미생물 작업번호 바코드 출력(출력노드, 분주 또는 진검 바코드여부)
  1886. }
  1887. return;
  1888. }
  1889. }
  1890. // 바코드 재출력
  1891. function fExeBarcdRePrnt()
  1892. {
  1893. ds_barcodeinfo.clearData();
  1894. var bcno = "";
  1895. var bcollTF = false;
  1896. for(i = 0; i < ds_grd_spcreflist.rowcount; i++)
  1897. {
  1898. if(ds_grd_spcreflist.getColumn(i, "chk") == "1")
  1899. {
  1900. bcno = bcno + "'" + ds_grd_spcreflist.getColumn(i, "bcno") + "'" + ",";
  1901. bcollTF = true;
  1902. }
  1903. }
  1904. if(bcollTF == false)
  1905. {
  1906. alert("재출력할 검체를 선택하십시오. ");
  1907. }
  1908. if(bcollTF)
  1909. {
  1910. bcno = bcno.substring(0, bcno.length-1);
  1911. ds_send.setColumn(0, "bcnolist", bcno);
  1912. var oParam = {};
  1913. oParam.id = "TRLZZ00102";
  1914. oParam.service = "diagtestapplib.LisCommon";
  1915. oParam.method = "reqGetBarCodeInfo";
  1916. oParam.inds = "bcollbcnolist=ds_send";
  1917. oParam.outds = "ds_barcodeinfo=barcodeinfo";
  1918. oParam.async = false;
  1919. //oParam.callback = "cf_TRLZZ00102";
  1920. tranf_submit(oParam);
  1921. ds_barcodeinfo.addColumn("cntflag", "string");
  1922. ds_barcodeinfo.setColumn(0, "cntflag", "acpt");
  1923. var count2 = ds_barcodeinfo.rowcount;
  1924. var spcTF = false;
  1925. for(i = 0; i < count2; i++)
  1926. {
  1927. if(ds_barcodeinfo.getColumn(i,"spcacptbarcdprntcnt") > 0)
  1928. {
  1929. spcTF = true;
  1930. }
  1931. }
  1932. var prtkind = ds_data_setupinfo.getColumn(0, "prntkind");
  1933. var portnm = ds_data_setupinfo.getColumn(0, "commkind");
  1934. // 접수 바코드 출력
  1935. if(spcTF)
  1936. {
  1937. //-----------------------------------------------------
  1938. if( (prtkind == "9" && portnm == "01") || (prtkind == "11" && portnm == "01") || prtkind == "10" || prtkind == "2" || prtkind == "6" || prtkind == "7")
  1939. {
  1940. lf_LisSpcBarcodePrint2(ds_barcodeinfo, "");
  1941. }
  1942. else if(prtkind == "8" )
  1943. {
  1944. lf_LisSpcBarcodePrint3(ds_barcodeinfo,"");
  1945. }
  1946. else
  1947. {
  1948. lf_LisSpcBarcodePrint(ds_barcodeinfo,"");
  1949. }
  1950. }
  1951. }
  1952. }
  1953. // 대분류콤보 선택시
  1954. function fSetTLrgCd()
  1955. {
  1956. var etc = ds_spcacpt.getColumn(0, "testlrgcd");
  1957. if(etc == "00")
  1958. {
  1959. ds_init_lb0106.filter("");
  1960. ds_spcacpt.setColumn(0, "testmdlcd", "00");
  1961. }
  1962. else
  1963. {
  1964. ds_spcacpt.setColumn(0, "testmdlcd", "00");
  1965. ds_init_lb0106.filter("cd== '00' || etc01=='"+ etc +"'");
  1966. ds_init_lb0106.applyChange();
  1967. }
  1968. }
  1969. function fSetTLrgCd2()
  1970. {
  1971. var etc = ds_spcref.getColumn(0,"lrgexecdept");
  1972. //alert(etc);
  1973. if(etc == "00")
  1974. {
  1975. ds_init_lb0106.filter("");
  1976. ds_spcref.setColumn(0, "execdept" , "00");
  1977. group3.switch3.case2.group5.ipt_reftodd.visible = false ;
  1978. group3.switch3.case2.group5.caption16.visible = false ;
  1979. }
  1980. else
  1981. {
  1982. ds_spcref.setColumn(0,"execdept" , "00");
  1983. ds_init_lb0106.filter("cd== '00' || etc01=='"+ etc +"'");
  1984. ds_init_lb0106.applyChange();
  1985. group3.switch3.case2.group5.ipt_reftodd.visible = true ;
  1986. group3.switch3.case2.group5.caption16.visible = true ;
  1987. }
  1988. }
  1989. //특수검사 조회
  1990. function fGetSpclTestList()
  1991. {
  1992. ds_getspcltestlist.clearData();
  1993. dsf_makeValue(ds_send, "acptsdd", "string", utlf_getCurrentDate());
  1994. dsf_makeValue(ds_send, "acptedd", "string", utlf_getCurrentDate());
  1995. dsf_makeValue(ds_send, "spcltestgrup", "string", "00");
  1996. dsf_makeValue(ds_send, "seqsno", "string", "00000");
  1997. dsf_makeValue(ds_send, "seqeno", "string", "99999");
  1998. dsf_makeValue(ds_send, "userdeptflagcd", "string", ds_init_lb0000.getColumn(0, "nm"));
  1999. dsf_makeValue(ds_send, "refflag", "string", "1");
  2000. dsf_makeValue(ds_send, "spcchoiyn", "string", "1");
  2001. dsf_makeValue(ds_send, "bcno", "string", ds_spcacpt.getColumn(0, "bcno"));
  2002. var oParam = {};
  2003. oParam.id = "TRLLP00701";
  2004. oParam.service = "refprintmngtapp.SpecialTestRefPrintMngt";
  2005. oParam.method = "reqGetSpclTestList";
  2006. oParam.inds = "cond=ds_send";
  2007. oParam.outds = "ds_getspcltestlist=getSpclTestList";
  2008. oParam.async = false;
  2009. // oParam.callback = "cf_TRLLP00701";
  2010. tranf_submit(oParam);
  2011. dsf_copyColInfo(ds_hidden_report,ds_getspcltestlist, "replace");
  2012. }
  2013. // 조회일자 3일 이전으로 못가게 막기
  2014. function fSetRefFromdd()
  2015. {
  2016. var todd = ds_spcref.getColumn(0, "reftodd");
  2017. var mDate = todd.toDate("YYYYMMDD").getAddDate(-2);
  2018. var fromdd = ds_spcref.getColumn(0, "reffromdd");
  2019. if( mDate.getDateFormat("YYYYMMDD") > fromdd)
  2020. {
  2021. sysf_messageBox("환자개별 조회 이외의 검색구간은 최대 3일까지","E008");
  2022. var mr = sysf_messageBox("최대 3일 조회", "S001"); //메세지에서 선택한 값.
  2023. if(mr == "6")
  2024. {
  2025. ds_spcref.setColumn(0, "reffromdd", mDate.getDateFormat("YYYYMMDD"));
  2026. ds_send.setColumn(0, "reffromdd", ds_spcref.getColumn(0, "reffromdd"));
  2027. return true;
  2028. }
  2029. else if(mr == "2")
  2030. {
  2031. return false;
  2032. }
  2033. else
  2034. {
  2035. return false;
  2036. }
  2037. }
  2038. else if(todd < fromdd)
  2039. {
  2040. alert("기간설정이 잘못 되었습니다.");
  2041. return false;
  2042. }
  2043. else
  2044. {
  2045. return true;
  2046. }
  2047. }
  2048. // 검체목록출력
  2049. function fExePrint()
  2050. {
  2051. if(ds_grd_spcreflist.rowcount < 1)
  2052. {
  2053. sysf_messageBox("출력할", "E013");
  2054. return;
  2055. }
  2056. var prtrow = 0;
  2057. dsf_createDs("ds_hidden_report_spclistref");
  2058. dsf_copyColInfo(ds_hidden_report_spclistref,ds_grd_spcreflist);
  2059. for(i = 0; i < ds_grd_spcreflist.rowcount; i++)
  2060. {
  2061. if(ds_grd_spcreflist.getColumn(i, "chk") == "1")
  2062. {
  2063. prtrow = ds_hidden_report_spclistref.addRow();
  2064. ds_hidden_report_spclistref.copyRow(prtrow, ds_grd_spcreflist, i);
  2065. ds_hidden_report_spclistref.setColumn(prtrow, "spcstat", ds_grd_spcreflist.getColumn(i, "reptrslt"));
  2066. }
  2067. }
  2068. var objDOM = rptf_createDOM(); // DOM 객체 설정
  2069. rptf_setNodeListToDOM(objDOM, "root/hidden/report/spclistref", ds_hidden_report_spclistref); // 데이터셋 1
  2070. var objParam = new Object();
  2071. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  2072. var option = "open=1;save=1;directprint=1;print=1;zoom=0";
  2073. rptf_exeReportPreview30(["RPLLJ00100"],[objParam], option);
  2074. }
  2075. //상세조회 선택시 검체 목록 컬럼 Hidden 변경
  2076. function fSetSpcRefList()
  2077. {
  2078. //상세조회
  2079. if(group3.switch3.case2.group5.chk_detlspcinfoyn.value == "1")
  2080. {
  2081. group3.switch3.case2.grd_spcreflist.setFormatColProperty(group3.switch3.case2.grd_spcreflist.getBindCellIndex("body", "testcd"), "size", 80);
  2082. group3.switch3.case2.grd_spcreflist.setFormatColProperty(group3.switch3.case2.grd_spcreflist.getBindCellIndex("body", "tclsnm"), "size", 140);
  2083. group3.switch3.case2.grd_spcreflist.setFormatColProperty(group3.switch3.case2.grd_spcreflist.getBindCellIndex("body", "reptrslt"), "size", 80);
  2084. }
  2085. else
  2086. {
  2087. group3.switch3.case2.grd_spcreflist.setFormatColProperty(group3.switch3.case2.grd_spcreflist.getBindCellIndex("body", "testcd"), "size", 0);
  2088. group3.switch3.case2.grd_spcreflist.setFormatColProperty(group3.switch3.case2.grd_spcreflist.getBindCellIndex("body", "tclsnm"), "size", 0);
  2089. group3.switch3.case2.grd_spcreflist.setFormatColProperty(group3.switch3.case2.grd_spcreflist.getBindCellIndex("body", "reptrslt"), "size", 0);
  2090. /* 이재오 추가 20120704 일 */
  2091. if (group3.switch3.case2.group5.rdo_acptdd.value == 3)
  2092. {
  2093. group3.switch3.case2.grd_spcreflist.setFormatColProperty(group3.switch3.case2.grd_spcreflist.getBindCellIndex("body", "tsectcd"), "size", 0);
  2094. group3.switch3.case2.grd_spcreflist.setFormatColProperty(group3.switch3.case2.grd_spcreflist.getBindCellIndex("body", "workno"), "size", 0);
  2095. group3.switch3.case2.grd_spcreflist.setFormatColProperty(group3.switch3.case2.grd_spcreflist.getBindCellIndex("body", "bcno"), "size", 0);
  2096. group3.switch3.case2.grd_spcreflist.setFormatColProperty(group3.switch3.case2.grd_spcreflist.getBindCellIndex("body", "testcd"), "size", 0);
  2097. group3.switch3.case2.grd_spcreflist.setFormatColProperty(group3.switch3.case2.grd_spcreflist.getBindCellIndex("body", "tclsnm"), "size", 0);
  2098. group3.switch3.case2.grd_spcreflist.setFormatColProperty(group3.switch3.case2.grd_spcreflist.getBindCellIndex("body", "spcnm"), "size", 0);
  2099. group3.switch3.case2.grd_spcreflist.setFormatColProperty(group3.switch3.case2.grd_spcreflist.getBindCellIndex("body", "spcltestseq"), "size", 0);
  2100. }
  2101. else
  2102. {
  2103. group3.switch3.case2.grd_spcreflist.setFormatColProperty(group3.switch3.case2.grd_spcreflist.getBindCellIndex("body", "tsectcd"), "size", 100);
  2104. group3.switch3.case2.grd_spcreflist.setFormatColProperty(group3.switch3.case2.grd_spcreflist.getBindCellIndex("body", "workno"), "size", 130);
  2105. group3.switch3.case2.grd_spcreflist.setFormatColProperty(group3.switch3.case2.grd_spcreflist.getBindCellIndex("body", "bcno"), "size", 80);
  2106. group3.switch3.case2.grd_spcreflist.setFormatColProperty(group3.switch3.case2.grd_spcreflist.getBindCellIndex("body", "testcd"), "size", 80);
  2107. group3.switch3.case2.grd_spcreflist.setFormatColProperty(group3.switch3.case2.grd_spcreflist.getBindCellIndex("body", "tclsnm"), "size", 140);
  2108. group3.switch3.case2.grd_spcreflist.setFormatColProperty(group3.switch3.case2.grd_spcreflist.getBindCellIndex("body", "spcnm"), "size", 80);
  2109. group3.switch3.case2.grd_spcreflist.setFormatColProperty(group3.switch3.case2.grd_spcreflist.getBindCellIndex("body", "spcltestseq"), "size", 100);
  2110. }
  2111. /* 이재오 추가 20120704 일 */
  2112. }
  2113. }
  2114. //페이지 버튼에따라 처리
  2115. function fSetPage(pVal)
  2116. {
  2117. //pVal = 1:맨처음, 2:이전, 3:다음, 4:맨끝 page로..
  2118. var vFPage = parseInt(ds_send.getColumn(0, "page"));
  2119. //model.setValue("/root/main/page/lastpage", 10); //test
  2120. var vLPage = parseInt(ds_page.getColumn(0, "lastpage"));
  2121. if(pVal == "1")
  2122. {
  2123. if(vFPage != 1)
  2124. {
  2125. ds_send.setColumn(0, "page", 1);
  2126. }
  2127. else
  2128. {
  2129. return;
  2130. }
  2131. }
  2132. else if(pVal == "2")
  2133. {
  2134. if(vFPage != 1)
  2135. {
  2136. vFPage -= 1;
  2137. ds_send.setColumn(0, "page", vFPage);
  2138. }
  2139. else
  2140. {
  2141. return;
  2142. }
  2143. }
  2144. else if(pVal == "3")
  2145. {
  2146. if(vFPage < vLPage)
  2147. {
  2148. vFPage += 1;
  2149. ds_send.setColumn(0, "page", vFPage);
  2150. }
  2151. else
  2152. {
  2153. return;
  2154. }
  2155. }
  2156. else if(pVal == "4")
  2157. {
  2158. if(vLPage != vFPage)
  2159. {
  2160. ds_send.setColumn(0, "page", vLPage);
  2161. }
  2162. else
  2163. {
  2164. return;
  2165. }
  2166. }
  2167. fGetSpcListref("P");
  2168. }
  2169. function SMLLJ00100_oninit(obj:Form, e:InitEventInfo)
  2170. {
  2171. frmf_initForm(obj); // 화면공통
  2172. }
  2173. function SMLLJ00100_onload(obj:Form, e:LoadEventInfo)
  2174. {
  2175. grdf_initGrid(group3.switch3.case1.grd_spclist);
  2176. grdf_initGrid(group3.switch3.case1.grd_detllist);
  2177. grdf_initGrid(group3.switch3.case2.grd_spcreflist);
  2178. grdf_setToolTipBind(group3.switch3.case1.grd_spclist);
  2179. grdf_setToolTipBind(group3.switch3.case1.grd_detllist);
  2180. grdf_setToolTipBind(group3.switch3.case2.grd_spcreflist);
  2181. // 검체접수 tab 선택
  2182. group3.switch3.tabindex = 0;
  2183. // 스위치에 따라 버튼 보이기
  2184. fbuttonvisible("A");
  2185. lf_getDbDeptcd("0102|0106|0104|0111|0000|");
  2186. // 노드 초기화
  2187. ds_grd_spclist.clearData();
  2188. ds_grd_detllist.clearData();
  2189. ds_grd_spcreflist.clearData()
  2190. fSetNCnt(); // 핵의학 화면 접수검체갯수 보이기
  2191. // 핵의학
  2192. if((frmf_getMenuParam() == "N") || (ds_init_lb0000.getColumn(0, "nm") == "N"))
  2193. {
  2194. ds_spcacpt.setColumn(0, "testmdlcd", "NR");
  2195. ds_spcref.setColumn(0, "execdept", "NR");
  2196. ds_init_lb0106.deleteRow(0); // 핵의학 -전체- 노드삭제
  2197. }
  2198. var today = utlf_getCurrentDate();
  2199. ds_spcref.setColumn(0, "reffromdd", today);
  2200. ds_spcref.setColumn(0, "reftodd", today);
  2201. ds_spcref.setColumn(0, "pidfromdd", today);
  2202. ds_spcref.setColumn(0, "pidtodd", today);
  2203. group3.switch3.case1.group2.ipt_bcno.setFocus();
  2204. //lzzfMakeBrcdPrntObj("CommAX"); //이전 OCX
  2205. ds_send.setColumn(0, "scrnid", frmf_getScreenID());
  2206. var oParam = {};
  2207. oParam.id = "TRLLC90101";
  2208. oParam.service = "diagtestapplib.LisCommon";
  2209. oParam.method = "reqGetSetUpInfo";
  2210. oParam.inds = "scrnid=ds_send";
  2211. oParam.outds = "ds_barcdprntsetup=getSetUpInfo";
  2212. oParam.async = false;
  2213. oParam.callback = "cf_TRLLC90101";
  2214. tranf_submit(oParam);
  2215. lzzfMakeBrcdPrntObjHanDo("CommAX");
  2216. appf_delPatientInfos(); //환자정보 전체 삭제
  2217. }
  2218. function cf_TRLLC90101(sSvcId, nErrorCode, sErrorMsg)
  2219. {
  2220. if(nErrorCode < 0) return;
  2221. var pParamObj = new Object();
  2222. pParamObj.pathYN = "N";
  2223. pParamObj.nullColumnYN = "N";
  2224. lf_convertXmlToDs(ds_barcdprntsetup.getColumn(0, "prntsetupinfo"), pParamObj);
  2225. }
  2226. function group3_switch3_case1_group2_ipt_bcno_onkeydown(obj:Edit, e:KeyEventInfo)
  2227. {
  2228. if (e.keycode == 13)
  2229. {
  2230. ds_spcacpt.setColumn(0, "bcno", utlf_transNullToEmpty(obj.value).toUpperCase());
  2231. //fSetSpcAcpt();
  2232. var TM = system.getMemoryStatus("TotalPhysical" )/1024/1024/1024;
  2233. var FM = system.getMemoryStatus("FreePhysical" )/1024/1024/1024;
  2234. trace("Memory Total/Free size :"+TM+'/'+ FM);
  2235. fsetBCNOEnter();
  2236. if(utlf_isNull(ds_grd_spclist.getColumn(ds_grd_spclist.rowcount - 1, "Msg")))
  2237. {
  2238. fGetSpclTestList();
  2239. var count = ds_getspcltestlist.rowcount ;
  2240. var spc = ds_grd_spclist.rowcount;
  2241. // if(count > 0 ) {
  2242. // for(var jki = 0; jki < count; jki++) {
  2243. //
  2244. // //if(model.getValue("/root/main/spclist["+ spc +"]/bcno") == model.getValue("/root/main/getspcltestlist["+ jki +"]/bcno")) {
  2245. // if (ds_grd_spclist.getColumn(spc,"bcno") == ds_getspcltestlist.getColumn(jki,"bcno")) {
  2246. // //alert(getUserInfo("dutplceinstcd"));
  2247. // var i = "";
  2248. // var row = grd_detllist.rowcount;
  2249. // if(sysf_getUserInfo("dutplceinstcd") != "011") {
  2250. // fPrint(jki);
  2251. // }else if(sysf_getUserInfo("dutplceinstcd") == "011"){
  2252. // for (i = 1; i <= row-1; i++){
  2253. // if(ds_grd_detllist.getcolumn(i ,"tclscd") == "LHR114"){
  2254. // var bbb = "1";
  2255. // break;
  2256. // }
  2257. // }
  2258. // if(bbb != "1") {
  2259. // fPrint(jki);
  2260. // }
  2261. // }
  2262. // }
  2263. // }
  2264. // }
  2265. }
  2266. obj.setFocus(); //20090422 김성희 추가 : 세포유전 출력물 출력후 포커스 아웃 현상 발생하여 수정
  2267. obj.setSelect();
  2268. }
  2269. }
  2270. // function group3_switch3_case2_group5_ipt_text_onkeydown(obj:Edit, e:KeyEventInfo)
  2271. // {
  2272. // if(e.keycode == 13)
  2273. // {
  2274. // if ( obj.value.length > 11 )
  2275. // {
  2276. // var a1 = (obj.value).toUpperCase();
  2277. // var a2 = "20" + a1.substr(0,8) + "0" + a1.substr(8,4);
  2278. // obj.value = a2 ;
  2279. // }
  2280. //
  2281. // if(!utlf_isNull(obj.value))
  2282. // {
  2283. // ds_spcref.setColumn(0, "refcnts", (obj.value).toUpperCase());
  2284. // fGetSpcListref("K");
  2285. // }
  2286. // else
  2287. // {
  2288. // sysf_messageBox("검색어를", "C001");
  2289. // }
  2290. // obj.setSelect();
  2291. // }
  2292. // }
  2293. function group3_switch3_case1_grd_spclist_oncellclick(obj:Grid, e:GridClickEventInfo)
  2294. {
  2295. var col = e.col;
  2296. // 체크박스(1), 검체별특이사항(10) col 제외
  2297. if(col != 1)
  2298. {
  2299. // 검체상세목록 조회
  2300. fGetSpcDetlList("");
  2301. }
  2302. }
  2303. function group3_switch3_case1_group2_chk_spcchoi_onchanged(obj:CheckBox, e:CheckBoxChangeEventInfo)
  2304. {
  2305. //obj.updateToDataset();
  2306. if((e.postvalue == "1") || (e.postvalue == "true"))
  2307. {
  2308. group4.group6.btn_batacpt.visible = true;
  2309. }
  2310. else
  2311. {
  2312. group4.group6.btn_batacpt.visible = false;
  2313. }
  2314. ds_grd_spclist.clearData();
  2315. ds_grd_detllist.clearData();
  2316. }
  2317. function group3_switch3_case1_group2_cmb_TLrgCd_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  2318. {
  2319. obj.updateToDataset();
  2320. fSetTLrgCd();
  2321. }
  2322. function group3_switch3_case1_btn_urine_onclick(obj:Button, e:ClickEventInfo)
  2323. {
  2324. fSetUrine();
  2325. }
  2326. function group3_switch3_case1_btn_formprnt_onclick(obj:Button, e:ClickEventInfo)
  2327. {
  2328. //================================================================================================
  2329. //pid : 환자번호
  2330. //orddeptcd : 진료과 코드
  2331. //indd : 입(내)원일
  2332. //docucd : 서식코드
  2333. //ioflag : 입원/외래
  2334. //cmc_cretno : 생성번호
  2335. //================================================================================================
  2336. var prcpgenrflag = ds_grd_spclist.getColumn(0,"prcpgenrflag");
  2337. dsf_createDsRow("ds_send_iemr", [{col : "pid", val : ds_grd_spclist.getColumn(0, "pid") }
  2338. ,{col : "orddeptcd", val : ds_grd_spclist.getColumn(0, "orddeptcd") }
  2339. ,{col : "indd", val : ds_grd_spclist.getColumn(0, "orddd") }
  2340. ,{col : "docucd", val : ds_grd_detllist.getColumn(0, "formcd") }
  2341. ,{col : "ioflag", val : prcpgenrflag }
  2342. ,{col : "cmc_cretno", val : ds_grd_detllist.getColumn(0, "cretno") }
  2343. ,{col : "cmc_spcid", val : "" }
  2344. ,{col : "cmc_orddate", val : "" }
  2345. ,{col : "cmc_orderseqno", val : "" }]);
  2346. var objArg = new Object();
  2347. objArg.arg_ds_send_iemr = ds_send_iemr;
  2348. frmf_open("SSMRC03110", "SSMRC03110", objArg, "", "", "", "", "", "", "", "", "", "M");
  2349. // if(window.children.item("imgemrviewer") == null) {
  2350. // window.load("SSMRC03110.xrw", "modeless", "imgemrviewer", "", "/root/send/iemr", "/root/hidden/temp");
  2351. // }
  2352. // else
  2353. // {
  2354. // // 팝업 EMR Viewer 사용중인 상태에서 리로드 기능 추가 - 20080416
  2355. // var iemrNode = instance1.selectSingleNode("/root/send/iemr");
  2356. // window.children.item("imgemrviewer").javascript.reloadChart(iemrNode);
  2357. // // 팝업 EMR Viewer 화면 맨 앞으로 가져오기
  2358. // window.children.item("imgemrviewer").modelesstopmost = true;
  2359. // window.children.item("imgemrviewer").modelesstopmost = false;
  2360. // }
  2361. }
  2362. function group3_switch3_case2_group5_btn_ref_onclick(obj:Button, e:ClickEventInfo)
  2363. {
  2364. fGetSpcListref();
  2365. }
  2366. function group3_switch3_case2_group5_cmb_refgbn_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  2367. {
  2368. var cmb_value = e.postvalue;
  2369. if(cmb_value == "1")
  2370. {
  2371. group3.switch3.case2.group5.caption12.visible = true;
  2372. group3.switch3.case2.group5.caption4.visible = true;
  2373. group3.switch3.case2.group5.input1.visible = true;
  2374. group3.switch3.case2.group5.input2.visible = true;
  2375. group3.switch3.case2.group5.checkbox6.visible = true;
  2376. }
  2377. else
  2378. {
  2379. group3.switch3.case2.group5.caption12.visible = false;
  2380. group3.switch3.case2.group5.caption4.visible = false;
  2381. group3.switch3.case2.group5.input1.visible = false;
  2382. group3.switch3.case2.group5.input2.visible = false;
  2383. group3.switch3.case2.group5.checkbox6.visible = false;
  2384. }
  2385. }
  2386. function group3_switch3_case2_group5_cmb_lrgexec_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  2387. {
  2388. fSetTLrgCd2();
  2389. }
  2390. function group3_switch3_case2_group_page_btn_pp_onclick(obj:Button, e:ClickEventInfo)
  2391. {
  2392. fSetPage("2");
  2393. }
  2394. function group3_switch3_case2_group_page_btn_pf_onclick(obj:Button, e:ClickEventInfo)
  2395. {
  2396. fSetPage("1");
  2397. }
  2398. function group3_switch3_case2_group_page_btn_np_onclick(obj:Button, e:ClickEventInfo)
  2399. {
  2400. fSetPage("3");
  2401. }
  2402. function group3_switch3_case2_group_page_ntn_nl_onclick(obj:Button, e:ClickEventInfo)
  2403. {
  2404. fSetPage("4");
  2405. }
  2406. function group3_switch3_case2_btn_excel_onclick(obj:Button, e:ClickEventInfo)
  2407. {
  2408. grdf_exportExcel(group3.switch3.case2.grd_spcreflist,"검체접수관리", "sheet1", false);
  2409. }
  2410. function group3_switch3_onchanged(obj:Tab, e:TabIndexChangeEventInfo)
  2411. {
  2412. if(obj.tabindex == 0)
  2413. {
  2414. fbuttonvisible("A");
  2415. }
  2416. else
  2417. {
  2418. fbuttonvisible("B");
  2419. }
  2420. }
  2421. function group3_socket_OnError(obj:ActiveX, e)
  2422. {
  2423. //alert("Error code = " + obj.lError+"\nError Message : "+szMsg);
  2424. group3.socket.close();
  2425. }
  2426. function group3_socket_OnConnect(obj:ActiveX, e)
  2427. {
  2428. fExeSlidIssA();
  2429. }
  2430. function group3_socket2_OnError(obj:ActiveX, e)
  2431. {
  2432. group3.socket.close();
  2433. }
  2434. function group3_socket2_OnConnect(obj:ActiveX, e)
  2435. {
  2436. fExeSlidIssB();
  2437. }
  2438. function group4_group7_btn_init_onclick(obj:Button, e:ClickEventInfo)
  2439. {
  2440. ds_grd_spcreflist.clearData();
  2441. }
  2442. function group4_group7_btn_acptcancel_onclick(obj:Button, e:ClickEventInfo)
  2443. {
  2444. fSetAcptCncl();
  2445. }
  2446. function group4_group7_btn_spclist_onclick(obj:Button, e:ClickEventInfo)
  2447. {
  2448. fExePrint();
  2449. }
  2450. function group4_group7_btn_rebarcd_onclick(obj:Button, e:ClickEventInfo)
  2451. {
  2452. fExeBarcdRePrnt();
  2453. }
  2454. function group4_group6_btn_batacpt_onclick(obj:Button, e:ClickEventInfo)
  2455. {
  2456. fSetBatAcpt();
  2457. }
  2458. function group4_group6_btn_reset_onclick(obj:Button, e:ClickEventInfo)
  2459. {
  2460. fSetInit();
  2461. }
  2462. function group4_btn_prnt_onclick(obj:Button, e:ClickEventInfo)
  2463. {
  2464. fSetPrint();
  2465. }
  2466. function group4_btn_badspc_onclick(obj:Button, e:ClickEventInfo)
  2467. {
  2468. fSetBadSpc();
  2469. }
  2470. function group4_btn_aprv_onclick(obj:Button, e:ClickEventInfo)
  2471. {
  2472. frmf_open("SPLLJ90400","SPLLJ90400","","","","","","","","","","","M");
  2473. }
  2474. function group3_switch3_case2_group5_ipt_text_onkeydown(obj:Edit, e:KeyEventInfo)
  2475. {
  2476. if(e.keycode == 13)
  2477. {
  2478. obj.updateToDataset();
  2479. if ( obj.value.length > 11)
  2480. {
  2481. var a1 = (obj.value).toUpperCase();
  2482. var a2 = "20" + a1.substr(0,8) + "0" + a1.substr(8,4);
  2483. obj.value = a2 ;
  2484. }
  2485. if(!utlf_isNull(obj.value))
  2486. {
  2487. ds_spcref.setColumn(0, "refcnts", (obj.value).toUpperCase());
  2488. fGetSpcListref("K");
  2489. }
  2490. else
  2491. {
  2492. sysf_messageBox("검색어를", "C001");
  2493. }
  2494. obj.setSelect();
  2495. }
  2496. }
  2497. function group3_switch3_case1_grd_spclist_oncellclick(obj:Grid, e:GridClickEventInfo)
  2498. {
  2499. var col = e.col;
  2500. // 체크박스(1), 검체별특이사항(10) col 제외
  2501. if(col != 1)
  2502. {
  2503. // 검체상세목록 조회
  2504. fGetSpcDetlList("");
  2505. }
  2506. }
  2507. // function group3_switch3_case1_group2_chk_spcchoi_onchanged(obj:CheckBox, e:CheckBoxChangeEventInfo)
  2508. // {
  2509. // obj.updateToDataset();
  2510. // if(e.postvalue == "1"){
  2511. // group4.group6.btn_batacpt.visible = true;
  2512. // }else{
  2513. // group4.group6.btn_batacpt.visible = false;
  2514. // }
  2515. //
  2516. // ds_grd_spclist.clearData();
  2517. // ds_grd_detllist.clearData();
  2518. //
  2519. // }
  2520. function group3_switch3_case1_group2_cmb_TLrgCd_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  2521. {
  2522. obj.updateToDataset();
  2523. fSetTLrgCd();
  2524. }
  2525. function group3_switch3_case1_btn_urine_onclick(obj:Button, e:ClickEventInfo)
  2526. {
  2527. fSetUrine();
  2528. }
  2529. function group3_switch3_case1_btn_formprnt_onclick(obj:Button, e:ClickEventInfo)
  2530. {
  2531. var prcpgenrflag = ds_grd_spclist.getColumn(0, "prcpgenrflag");
  2532. dsf_createDsRow("ds_send_iemr", [{col : "pid", val : ds_grd_spclist.getColumn(0, "pid")}
  2533. ,{col : "orddeptcd", val : ds_grd_spclist.getColumn(0, "orddeptcd")}
  2534. ,{col : "indd", val : ds_grd_spclist.getColumn(0, "orddd")}
  2535. ,{col : "docucd", val : ds_grd_detllist.getColumn(0, "formcd")}
  2536. ,{col : "ioflag", val : prcpgenrflag}
  2537. ,{col : "cmc_cretno", val : ds_grd_detllist.getColumn(0, "cretno")}
  2538. ,{col : "cmc_spcid", val : ""}
  2539. ,{col : "cmc_orddate", val : ""}
  2540. ,{col : "cmc_orderseqno", val : ""}]);
  2541. var objArg = new Object();
  2542. objArg.arg_ds_send_iemr = ds_send_iemr;
  2543. frmf_open("SSMRC03110", "SSMRC03110", objArg, "", "", "", "", "", "", "", "", "", "M");
  2544. }
  2545. function group3_switch3_case2_group5_btn_ref_onclick(obj:Button, e:ClickEventInfo)
  2546. {
  2547. fGetSpcListref();
  2548. }
  2549. function group3_switch3_case2_group5_cmb_refgbn_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  2550. {
  2551. var cmb_value = e.postvalue;
  2552. if(cmb_value == "1")
  2553. {
  2554. group3.switch3.case2.group5.caption12.visible = true;
  2555. group3.switch3.case2.group5.caption4.visible = true;
  2556. group3.switch3.case2.group5.input1.visible = true;
  2557. group3.switch3.case2.group5.input2.visible = true;
  2558. group3.switch3.case2.group5.checkbox6.visible = true;
  2559. }
  2560. else
  2561. {
  2562. group3.switch3.case2.group5.caption12.visible = false;
  2563. group3.switch3.case2.group5.caption4.visible = false;
  2564. group3.switch3.case2.group5.input1.visible = false;
  2565. group3.switch3.case2.group5.input2.visible = false;
  2566. group3.switch3.case2.group5.checkbox6.visible = false;
  2567. }
  2568. }
  2569. function group3_switch3_case2_group5_cmb_lrgexec_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  2570. {
  2571. fSetTLrgCd2();
  2572. }
  2573. function group3_switch3_case2_group_page_btn_pp_onclick(obj:Button, e:ClickEventInfo)
  2574. {
  2575. fSetPage("2");
  2576. }
  2577. function group3_switch3_case2_group_page_btn_pf_onclick(obj:Button, e:ClickEventInfo)
  2578. {
  2579. fSetPage("1");
  2580. }
  2581. function group3_switch3_case2_group_page_btn_np_onclick(obj:Button, e:ClickEventInfo)
  2582. {
  2583. fSetPage("3");
  2584. }
  2585. function group3_switch3_case2_group_page_ntn_nl_onclick(obj:Button, e:ClickEventInfo)
  2586. {
  2587. fSetPage("4");
  2588. }
  2589. function group3_socket_OnError(obj:ActiveX, e)
  2590. {
  2591. group3.socket.close();
  2592. }
  2593. function group3_socket_OnConnect(obj:ActiveX, e)
  2594. {
  2595. fExeSlidIssA();
  2596. }
  2597. function group3_socket2_OnError(obj:ActiveX, e)
  2598. {
  2599. group3.socket.close();
  2600. }
  2601. function group3_socket2_OnConnect(obj:ActiveX, e)
  2602. {
  2603. fExeSlidIssB();
  2604. }
  2605. function group4_group7_btn_init_onclick(obj:Button, e:ClickEventInfo)
  2606. {
  2607. ds_grd_spcreflist.clearData();
  2608. }
  2609. function group4_group7_btn_acptcancel_onclick(obj:Button, e:ClickEventInfo)
  2610. {
  2611. fSetAcptCncl();
  2612. }
  2613. function group4_group7_btn_spclist_onclick(obj:Button, e:ClickEventInfo)
  2614. {
  2615. fExePrint();
  2616. }
  2617. function group4_group7_btn_rebarcd_onclick(obj:Button, e:ClickEventInfo)
  2618. {
  2619. fExeBarcdRePrnt();
  2620. }
  2621. function group4_group6_btn_batacpt_onclick(obj:Button, e:ClickEventInfo)
  2622. {
  2623. fSetBatAcpt();
  2624. }
  2625. function group4_group6_btn_reset_onclick(obj:Button, e:ClickEventInfo)
  2626. {
  2627. fSetInit();
  2628. }
  2629. function group4_btn_prnt_onclick(obj:Button, e:ClickEventInfo)
  2630. {
  2631. fSetPrint();
  2632. }
  2633. function group4_btn_badspc_onclick(obj:Button, e:ClickEventInfo)
  2634. {
  2635. fSetBadSpc();
  2636. }
  2637. function group4_btn_aprv_onclick(obj:Button, e:ClickEventInfo)
  2638. {
  2639. frmf_open("SPLLJ90400", "SPLLJ90400", "", "", "", "", "", "", "", "", "", "", "M");
  2640. }
  2641. function SMLLJ00100_ontimer(obj:Form, e:TimerEventInfo)
  2642. {
  2643. if(e.timerid == 0)
  2644. {
  2645. this.killTimer(0);
  2646. sysf_trace("timer kill");
  2647. group3.switch3.case1.group2.ipt_bcno.setFocus();
  2648. }
  2649. }
  2650. function group3_switch3_case2_group5_btn_search_onclick(obj:Button, e:ClickEventInfo)
  2651. {
  2652. var obj = group3.switch3.case2.group5.ipt_text;
  2653. if(obj.length > 11)
  2654. {
  2655. var a1 = (obj.value).toUpperCase();
  2656. var a2 = "20" + a1.substr(0,8) + "0" + a1.substr(8,4);
  2657. obj.value = a2 ;
  2658. }
  2659. if(!utlf_isNull(obj.value))
  2660. {
  2661. ds_spcref.setColumn(0, "refcnts", (obj.value).toUpperCase());
  2662. fGetSpcListref("K");
  2663. }
  2664. else
  2665. {
  2666. sysf_messageBox("검색어를", "C001");
  2667. }
  2668. obj.setSelect();
  2669. }
  2670. function group3_switch3_case1_group2_btn_search_onclick(obj:Button, e:ClickEventInfo)
  2671. {
  2672. var obj = group3.switch3.case1.group2.ipt_bcno;
  2673. ds_spcacpt.setColumn(0, "bcno", utlf_transNullToEmpty(obj.value).toUpperCase());
  2674. var TM = system.getMemoryStatus("TotalPhysical" )/1024/1024/1024;
  2675. var FM = system.getMemoryStatus("FreePhysical" )/1024/1024/1024;
  2676. trace("Memory Total/Free size :"+TM+'/'+ FM);
  2677. fsetBCNOEnter();
  2678. if(utlf_isNull(ds_grd_spclist.getColumn(ds_grd_spclist.rowcount - 1, "Msg")))
  2679. {
  2680. fGetSpclTestList();
  2681. var count = ds_getspcltestlist.rowcount ;
  2682. var spc = ds_grd_spclist.rowcount;
  2683. }
  2684. obj.setFocus(); //20090422 김성희 추가 : 세포유전 출력물 출력후 포커스 아웃 현상 발생하여 수정
  2685. obj.setSelect();
  2686. }
  2687. function group3_switch3_case2_group5_chk_undoacpt_onclick(obj:CheckBox, e:ClickEventInfo)
  2688. {
  2689. if(obj.value == 1){
  2690. }
  2691. else
  2692. {
  2693. ds_spcref.setColumn(0, "undoacpt", "");
  2694. }
  2695. }
  2696. function group3_switch3_case2_group5_checkbox6_onkeyup(obj:CheckBox, e:KeyEventInfo)
  2697. {
  2698. obj.updateToDataset();
  2699. }
  2700. function group3_switch3_case2_group5_checkbox6_onclick(obj:CheckBox, e:ClickEventInfo)
  2701. {
  2702. if(obj.value == false) ds_spcref.setColumn(0,"piddd","");
  2703. }
  2704. function group3_switch3_case2_group5_ipt_text_onkeyup(obj:Edit, e:KeyEventInfo)
  2705. {
  2706. if(e.keycode == 13)
  2707. {
  2708. if ( obj.value.length > 11 )
  2709. {
  2710. var a1 = (obj.value).toUpperCase();
  2711. var a2 = "20" + a1.substr(0,8) + "0" + a1.substr(8,4);
  2712. obj.value = a2 ;
  2713. }
  2714. if(!utlf_isNull(obj.value))
  2715. {
  2716. ds_spcref.setColumn(0, "refcnts", (obj.value).toUpperCase());
  2717. //아래 조건 포함시
  2718. if(group3.switch3.case2.group5.CheckBox00.value == true)
  2719. {
  2720. ds_send.setColumn(0, "flag", "1");
  2721. }
  2722. else
  2723. {
  2724. ds_send.setColumn(0, "flag", "");
  2725. }
  2726. var searchtext = utlf_transNullToEmpty(obj.value).getTrim();
  2727. if (searchtext.isNumber())
  2728. {
  2729. group3.switch3.case2.group5.cmb_refgbn.value = "1";
  2730. }
  2731. else if(group3.switch3.case2.group5.cmb_refgbn.value == 1)
  2732. {
  2733. group3.switch3.case2.group5.cmb_refgbn.value = "2";
  2734. }
  2735. fGetSpcListref("K");
  2736. }
  2737. else
  2738. {
  2739. sysf_messageBox("검색어를", "C001");
  2740. }
  2741. obj.setSelect();
  2742. }
  2743. }
  2744. ]]></Script>
  2745. </Form>
  2746. </FDL>