SMLLJ00110_연구용검체관리.xfdl 110 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SMLLJ00110" position="absolute 0 0 1204 818" titletext="검체접수관리" oninit="SMLLJ00110_oninit" onload="SMLLJ00110_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 0 0 1195 13" id="group1"/>
  8. <Div position="absolute 0 40 1195 814" id="group3" scrollbars="autoboth">
  9. <Layouts>
  10. <Layout>
  11. <Tab position="absolute 0 26 1194 770" id="switch3" class="sw_box" onchanged="group3_switch3_onchanged" anchor="default">
  12. <Tabpages>
  13. <Tabpage text="검체접수" id="case1" scrollbars="none">
  14. <Layouts>
  15. <Layout>
  16. <Shape position="absolute 5 66 653 72" linetype="horizontal" id="line8" class="line_1" anchor="default" style="strokepen:3 solid #33bbbbff;"/>
  17. <Static text="검체목록" position="absolute 5 50 80 66" id="caption21" class="tit_2" anchor="default"/>
  18. <Static text="검체상세목록" position="absolute 660 50 760 66" id="caption1" class="tit_2" anchor="default"/>
  19. <Shape position="absolute 659 66 1189 72" linetype="horizontal" id="line1" class="line_1" anchor="default" style="strokepen:3 solid #33bbbbff;"/>
  20. <Static text="의뢰의사리마크" position="absolute 659 609 771 625" id="caption7" class="tit_2" anchor="default"/>
  21. <Shape position="absolute 659 625 1189 631" linetype="horizontal" id="line3" class="line_10" anchor="default"/>
  22. <Static text="의뢰의사리마크" position="absolute 659 629 754 712" id="caption8" class="cell_1" anchor="default"/>
  23. <Shape position="absolute 659 709 1189 715" linetype="horizontal" id="line4" class="line_3" anchor="default"/>
  24. <Grid position="absolute 5 70 653 693" id="grd_spclist" binddataset="ds_grd_spclist" oncellclick="group3_switch3_case1_grd_spclist_oncellclick" anchor="default">
  25. <Formats>
  26. <Format id="default">
  27. <Columns>
  28. <Column size="24"/>
  29. <Column size="20"/>
  30. <Column size="90"/>
  31. <Column size="0"/>
  32. <Column size="85"/>
  33. <Column size="80"/>
  34. <Column size="95"/>
  35. <Column size="110"/>
  36. <Column size="125"/>
  37. <Column size="80"/>
  38. <Column size="0"/>
  39. <Column size="0"/>
  40. <Column size="0"/>
  41. <Column size="0"/>
  42. </Columns>
  43. <Rows>
  44. <Row size="24" band="head"/>
  45. <Row size="24"/>
  46. </Rows>
  47. <Band id="head">
  48. <Cell/>
  49. <Cell col="1" displaytype="checkbox" edittype="checkbox"/>
  50. <Cell col="2" text="시행부서"/>
  51. <Cell col="3" text="접수번호"/>
  52. <Cell col="4" text="바코드번호"/>
  53. <Cell col="5" text="진료과"/>
  54. <Cell col="6" text="환자명"/>
  55. <Cell col="7" text="검체명"/>
  56. <Cell col="8" text="접수일시"/>
  57. <Cell col="9" text="가접수일시"/>
  58. <Cell col="10"/>
  59. <Cell col="11"/>
  60. <Cell col="12"/>
  61. <Cell col="13"/>
  62. </Band>
  63. <Band id="body">
  64. <Cell text="expr:currow+1"/>
  65. <Cell col="1" displaytype="checkbox" edittype="checkbox" style="color:BIND(color);color2:BIND(color);" text="bind:chk" expr="expr:chk == 'true' || chk == '1'?1:0"/>
  66. <Cell col="2" displaytype="combo" edittype="combo" style="color:BIND(color);color2:BIND(color);" text="bind:execdeptcd" combodataset="ds_init_lb0106" combocodecol="cd" combodatacol="nm" enable="false"/>
  67. <Cell col="3" style="color:BIND(color);color2:BIND(color);" text="bind:workno"/>
  68. <Cell col="4" style="color:BIND(color);color2:BIND(color);" text="bind:bcno"/>
  69. <Cell col="5" style="color:BIND(color);color2:BIND(color);" text="bind:orddeptnm"/>
  70. <Cell col="6" style="color:BIND(color);color2:BIND(color);" text="bind:patnm"/>
  71. <Cell col="7" style="color:BIND(color);color2:BIND(color);" text="bind:spccd"/>
  72. <Cell col="8" displaytype="date" style="color:BIND(color);color2:BIND(color);" text="bind:spcacptdt" mask="yyyy-MM-dd HH:mm:ss" calendardisplaynulltype="nulltext"/>
  73. <Cell col="9" displaytype="date" style="color:BIND(color);color2:BIND(color);" text="bind:spcarvdt" calendardisplaynulltype="nulltext"/>
  74. <Cell col="10" text="bind:spcnm"/>
  75. <Cell col="11" text="bind:pid"/>
  76. <Cell col="12" text="bind:patage"/>
  77. <Cell col="13" text="bind:haspnm"/>
  78. </Band>
  79. </Format>
  80. </Formats>
  81. </Grid>
  82. <Div position="absolute 5 5 1190 40" id="group2" anchor="default" class="div_SA2">
  83. <Layouts>
  84. <Layout>
  85. <Static text="시행부서 :" position="absolute 19 9 105 26" id="caption3" class="search_name" anchor="default"/>
  86. <Static text="바코드번호 :" position="absolute 749 9 848 26" id="caption10" class="search_name" anchor="default"/>
  87. <Static text="접수구분 :" position="absolute 339 9 436 26" id="caption11" class="search_name" anchor="default"/>
  88. <Edit position="absolute 854 8 989 27" id="ipt_bcno" class="input_button" taborder="4" onkeydown="group3_switch3_case1_group2_ipt_bcno_onkeydown" autoselect="true" anchor="default"/>
  89. <Radio position="absolute 427 8 552 25" id="rdo_acptflag" class="radio_search" taborder="2" columncount="3" codecolumn="codecolumn" datacolumn="datacolumn" anchor="default">
  90. <Dataset id="innerdataset">
  91. <ColumnInfo>
  92. <Column id="codecolumn"/>
  93. <Column id="datacolumn"/>
  94. </ColumnInfo>
  95. <Rows>
  96. <Row>
  97. <Col id="codecolumn">1</Col>
  98. <Col id="datacolumn">가접수</Col>
  99. </Row>
  100. <Row>
  101. <Col id="codecolumn">2</Col>
  102. <Col id="datacolumn">접 수</Col>
  103. </Row>
  104. </Rows>
  105. </Dataset>
  106. </Radio>
  107. <CheckBox position="absolute 573 7 673 27" id="chk_spcchoi" class="checkbox_search" taborder="3" text="검체선택여부" truevalue="1" falsevalue="0" onchanged="group3_switch3_case1_group2_chk_spcchoi_onchanged" anchor="default"/>
  108. <CheckBox position="absolute 995 8 1105 28" id="checkbox2" class="checkbox_search" text="화면초기화여부" truevalue="1" anchor="default"/>
  109. <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"/>
  110. <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" onitemchanged="group3_switch3_case1_group2_cmb_TLrgCd_onitemchanged" anchor="default"/>
  111. <CheckBox position="absolute 1110 10 1185 25" id="checkbox3" class="checkbox_search" text="아침채혈" truevalue="1" anchor="default"/>
  112. <Button id="btn_search" taborder="5" position="absolute 971 10 987 25" style="background:skyblue;" onclick="group3_switch3_case1_group2_btn_search_onclick"/>
  113. </Layout>
  114. </Layouts>
  115. </Div>
  116. <CheckBox position="absolute 9 694 109 714" id="chk_label" visible="false" anchor="default"/>
  117. <CheckBox position="absolute 144 694 244 714" id="chk_acptbcd" visible="false" anchor="default"/>
  118. <Grid position="absolute 659 70 1189 597" id="grd_detllist" binddataset="ds_grd_detllist" anchor="default">
  119. <Formats>
  120. <Format id="default">
  121. <Columns>
  122. <Column size="23"/>
  123. <Column size="80"/>
  124. <Column size="160"/>
  125. <Column size="40"/>
  126. <Column size="125"/>
  127. <Column size="107"/>
  128. <Column size="0"/>
  129. </Columns>
  130. <Rows>
  131. <Row size="24" band="head"/>
  132. <Row size="24"/>
  133. </Rows>
  134. <Band id="head">
  135. <Cell/>
  136. <Cell col="1" text="검사코드"/>
  137. <Cell col="2" text="검사명"/>
  138. <Cell col="3" text="응급"/>
  139. <Cell col="4" text="작업번호"/>
  140. <Cell col="5" text="특수검사연번호"/>
  141. <Cell col="6"/>
  142. </Band>
  143. <Band id="body">
  144. <Cell text="expr:currow+1"/>
  145. <Cell col="1" text="bind:tclscd"/>
  146. <Cell col="2" text="bind:tclsscrnnm"/>
  147. <Cell col="3" style="color:EXPR(erprcpflag == 'Y'?&quot;#ff3300&quot;:&quot;&quot;);color2:EXPR(erprcpflag == 'Y'?&quot;#ff3300&quot;:&quot;&quot;);" text="bind:erprcpflag"/>
  148. <Cell col="4" text="bind:workno"/>
  149. <Cell col="5" text="bind:spcltestseq"/>
  150. <Cell col="6" text="bind:refprntyn"/>
  151. </Band>
  152. </Format>
  153. </Formats>
  154. </Grid>
  155. <Button position="absolute 563 46 653 65" id="btn_spcf" class="btn2" text="특이사항저장" anchor="default"/>
  156. <TextArea position="absolute 755 630 1189 710" align="align:left middle;" id="tar_rem" anchor="default"/>
  157. <Button position="absolute 980 40 1143 59" id="btn_urine" class="btn2" visible="false" text="Urine 24시간유린일때 보이기" onclick="group3_switch3_case1_btn_urine_onclick" anchor="default"/>
  158. <Edit readonly="true" position="absolute 512 47 562 66" align="align:left middle;" id="opt_cnt" anchor="default"/>
  159. <Static text="접수된 검체 갯수 =&gt;" position="absolute 370 50 517 66" id="cap_cnt" class="tit_2" anchor="default"/>
  160. <CheckBox position="absolute 1100 40 1193 56" id="checkbox1" visible="false" text="바코드출력" truevalue="1" anchor="default"/>
  161. <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"/>
  162. <Button position="absolute 155 45 377 65" id="btn_formprnt" enable="false" text="" anchor="default"/>
  163. <Static text="동의서 :" position="absolute 76 44 157 67" id="caption5" class="hand" anchor="default"/>
  164. </Layout>
  165. </Layouts>
  166. </Tabpage>
  167. <Tabpage text="검체조회" id="case2">
  168. <Layouts>
  169. <Layout>
  170. <Grid id="datagrid1" taborder="1" binddataset="ds_datagrid1" useinputpanel="false" position="absolute 6 71 1191 695" visible="false">
  171. <Formats>
  172. <Format id="default">
  173. <Columns>
  174. <Column size="24"/>
  175. <Column size="21"/>
  176. <Column size="68"/>
  177. <Column size="95"/>
  178. <Column size="85"/>
  179. <Column size="90"/>
  180. <Column size="100"/>
  181. <Column size="130"/>
  182. <Column size="80"/>
  183. <Column size="0"/>
  184. <Column size="0"/>
  185. <Column size="80"/>
  186. <Column size="0"/>
  187. <Column size="100"/>
  188. <Column size="80"/>
  189. <Column size="60"/>
  190. <Column size="140"/>
  191. <Column size="130"/>
  192. <Column size="100"/>
  193. <Column size="120"/>
  194. <Column size="100"/>
  195. <Column size="100"/>
  196. <Column size="0"/>
  197. </Columns>
  198. <Rows>
  199. <Row size="24" band="head"/>
  200. <Row size="24"/>
  201. </Rows>
  202. <Band id="head">
  203. <Cell/>
  204. <Cell col="1" displaytype="checkbox" edittype="checkbox"/>
  205. <Cell col="2" text="등록번호"/>
  206. <Cell col="3" text="환자명"/>
  207. <Cell col="4" text="진료과"/>
  208. <Cell col="5" text="병동/병실"/>
  209. <Cell col="6" text="시행부서"/>
  210. <Cell col="7" text="접수번호"/>
  211. <Cell col="8" text="바코드번호"/>
  212. <Cell col="9" text="검사코드"/>
  213. <Cell col="10" text="검사명"/>
  214. <Cell col="11" text="검체명"/>
  215. <Cell col="12" text="결과"/>
  216. <Cell col="13" text="특수검사연번호"/>
  217. <Cell col="14" text="처방일시"/>
  218. <Cell col="15" text="검체상태"/>
  219. <Cell col="16" text="바코드출력일시"/>
  220. <Cell col="17" text="채취일시"/>
  221. <Cell col="18" text="가접수일시"/>
  222. <Cell col="19" text="접수일시"/>
  223. <Cell col="20" text="취소사유"/>
  224. <Cell col="21" text="취소자"/>
  225. <Cell col="22" text="검체상태"/>
  226. </Band>
  227. <Band id="body">
  228. <Cell celltype="head" text="expr:currow + 1"/>
  229. <Cell col="1" displaytype="checkbox" edittype="checkbox" text="bind:chk"/>
  230. <Cell col="2" text="bind:pid"/>
  231. <Cell col="3" text="bind:patnm"/>
  232. <Cell col="4" text="bind:orddeptnm"/>
  233. <Cell col="5" text="bind:wardroom"/>
  234. <Cell col="6" displaytype="combo" edittype="combo" text="bind:tsectcd" combodataset="ds_init_lb0106" combocodecol="cd" combodatacol="nm" enable="false"/>
  235. <Cell col="7" text="bind:workno"/>
  236. <Cell col="8" displaytype="text" edittype="text" text="bind:bcno"/>
  237. <Cell col="9" text="bind:testcd"/>
  238. <Cell col="10" text="bind:tclsnm"/>
  239. <Cell col="11" text="bind:spcnm"/>
  240. <Cell col="12" text="bind:reptrslt"/>
  241. <Cell col="13" text="bind:spcltestseq"/>
  242. <Cell col="14" displaytype="date" text="bind:prcpdd"/>
  243. <Cell col="15" displaytype="combo" edittype="combo" text="bind:spcstat" enable="false"/>
  244. <Cell col="16" text="bind:barcdprntdt"/>
  245. <Cell col="17" text="bind:bcolldt"/>
  246. <Cell col="18" text="bind:spcarvdt"/>
  247. <Cell col="19" text="bind:spcacptdt"/>
  248. <Cell col="20" text="bind:cnclcnts"/>
  249. <Cell col="21" text="bind:spccnclnm"/>
  250. <Cell col="22" displaytype="combo" edittype="combo" text="bind:spcstat" enable="false"/>
  251. </Band>
  252. </Format>
  253. </Formats>
  254. </Grid>
  255. <Shape position="absolute 5 92 1190 98" linetype="horizontal" id="line2" class="line_1" anchor="default"/>
  256. <Static text="검체목록" position="absolute 9 80 89 93" id="caption9" class="tit_2" anchor="default"/>
  257. <Div position="absolute 5 5 1190 75" id="group5" anchor="default" class="div_SA2">
  258. <Layouts>
  259. <Layout>
  260. <Static text="검색구분 :" position="absolute 15 10 102 27" id="caption13" class="search_name" anchor="default"/>
  261. <Static text="조회일자 :" position="absolute 360 40 446 57" id="caption14" class="search_name" visible="false" anchor="default"/>
  262. <Static text="~" position="absolute 552 40 567 57" align="align:center middle;" id="caption16" class="search_no_b" visible="false" anchor="default"/>
  263. <Static text="조회기준 :" position="absolute 677 39 767 56" id="caption17" class="search_name" visible="false" anchor="default"/>
  264. <Static text="시행부서 :" position="absolute 15 39 101 56" id="caption2" class="search_name" visible="false" anchor="default"/>
  265. <Edit position="absolute 197 9 305 28" id="ipt_text" class="input_button" taborder="12" onkeydown="group3_switch3_case2_group5_ipt_text_onkeydown" autoselect="true" anchor="default"/>
  266. <Button position="absolute 1113 38 1169 60" id="btn_ref" class="btn1" enable="false" taborder="13" visible="false" text="조회" onclick="group3_switch3_case2_group5_btn_ref_onclick" anchor="default"/>
  267. <Combo position="absolute 104 9 194 28" id="cmb_refgbn" class="combo_search" taborder="11" codecolumn="codecolumn" datacolumn="datacolumn" onitemchanged="group3_switch3_case2_group5_cmb_refgbn_onitemchanged" anchor="default">
  268. <Dataset id="innerdataset">
  269. <ColumnInfo>
  270. <Column id="codecolumn"/>
  271. <Column id="datacolumn"/>
  272. </ColumnInfo>
  273. <Rows>
  274. <Row>
  275. <Col id="codecolumn">1</Col>
  276. <Col id="datacolumn">환자번호</Col>
  277. </Row>
  278. <Row>
  279. <Col id="codecolumn">2</Col>
  280. <Col id="datacolumn">바코드번호</Col>
  281. </Row>
  282. </Rows>
  283. </Dataset>
  284. </Combo>
  285. <Radio position="absolute 770 41 1020 54" id="rdo_acptdd" class="radio_search" taborder="8" visible="false" columncount="3" codecolumn="codecolumn" datacolumn="datacolumn" anchor="default">
  286. <Dataset id="innerdataset">
  287. <ColumnInfo>
  288. <Column id="codecolumn"/>
  289. <Column id="datacolumn"/>
  290. </ColumnInfo>
  291. <Rows>
  292. <Row>
  293. <Col id="codecolumn">1</Col>
  294. <Col id="datacolumn">검체접수일</Col>
  295. </Row>
  296. <Row>
  297. <Col id="codecolumn">2</Col>
  298. <Col id="datacolumn">검체채취일</Col>
  299. </Row>
  300. <Row>
  301. <Col id="codecolumn">3</Col>
  302. <Col id="datacolumn">채혈리스트</Col>
  303. </Row>
  304. </Rows>
  305. </Dataset>
  306. </Radio>
  307. <Calendar position="absolute 456 39 546 58" id="ipt_reffromdd" class="input_search" taborder="9" visible="false" mask="yyyy-mm-dd" anchor="default"/>
  308. <Calendar position="absolute 574 39 664 58" id="ipt_reftodd" class="input_search" taborder="10" visible="false" mask="yyyy-mm-dd" anchor="default"/>
  309. <Combo position="absolute 208 38 345 57" id="cmb_exec" class="combo_search" taborder="7" visible="false" innerdataset="ds_init_cmb_exec" datacolumn="nm" codecolumn="cd" anchor="default"/>
  310. <CheckBox position="absolute 1037 41 1092 56" id="chk_undoacpt" class="checkbox_search" visible="false" anchor="default"/>
  311. <CheckBox position="absolute 1037 11 1105 26" id="chk_detlspcinfoyn" class="checkbox_search" visible="false" text="상세조회" truevalue="1" falsevalue="0" anchor="default"/>
  312. <Calendar position="absolute 539 9 629 28" id="input1" class="input_search" taborder="10" visible="false" mask="yyyy-mm-dd" anchor="default"/>
  313. <Static text="~" position="absolute 522 10 537 27" align="align:center middle;" id="caption4" class="search_no_b" visible="false" anchor="default"/>
  314. <Calendar position="absolute 431 9 521 28" id="input2" class="input_search" taborder="9" visible="false" mask="yyyy-mm-dd" anchor="default"/>
  315. <Static text="검색처방일자 :" position="absolute 315 10 436 27" id="caption12" class="search_name" visible="false" anchor="default"/>
  316. <CheckBox position="absolute 637 11 705 26" id="checkbox6" class="checkbox_search" visible="false" text="일자사용" truevalue="1" anchor="default"/>
  317. <Combo position="absolute 105 38 205 57" align="align:left middle;" id="cmb_lrgexec" class="combo_s_essential" visible="false" innerdataset="ds_init_cmb_lrgexec" datacolumn="nm" codecolumn="cd" anchor="default"/>
  318. <Radio position="absolute 770 10 1000 26" id="radio1" class="radio_search" visible="false" columncount="4" codecolumn="codecolumn" datacolumn="datacolumn" anchor="default">
  319. <Dataset id="innerdataset">
  320. <ColumnInfo>
  321. <Column id="codecolumn"/>
  322. <Column id="datacolumn"/>
  323. </ColumnInfo>
  324. <Rows>
  325. <Row>
  326. <Col id="codecolumn">00</Col>
  327. <Col id="datacolumn">전체</Col>
  328. </Row>
  329. <Row>
  330. <Col id="codecolumn">1</Col>
  331. <Col id="datacolumn">입원</Col>
  332. </Row>
  333. <Row>
  334. <Col id="codecolumn">2</Col>
  335. <Col id="datacolumn">외래</Col>
  336. </Row>
  337. <Row>
  338. <Col id="codecolumn">3</Col>
  339. <Col id="datacolumn">건진</Col>
  340. </Row>
  341. </Rows>
  342. </Dataset>
  343. </Radio>
  344. <Button position="absolute 410 9 463 28" id="button1" class="btn2" text="행삭제" onclick="group3_switch3_case2_group5_button1_onclick" anchor="default"/>
  345. <Button position="absolute 330 8 398 30" id="btn_init" class="btn4" text="초기화" onclick="group3_switch3_case2_group5_btn_init_onclick" anchor="default"/>
  346. <Button id="btn_search" taborder="14" position="absolute 287 11 303 26" style="background:skyblue;" onclick="group3_switch3_case2_group5_btn_search_onclick"/>
  347. </Layout>
  348. </Layouts>
  349. </Div>
  350. <Div position="absolute 1040 669 1185 691" id="group_page" visible="false" anchor="default">
  351. <Layouts>
  352. <Layout>
  353. <Edit readonly="true" position="absolute 45 1 70 20" id="opt_first" anchor="default" value="1"/>
  354. <Edit readonly="true" position="absolute 82 1 107 20" id="opt_last" anchor="default"/>
  355. <Static text="/" position="absolute 72 2 87 17" id="cap_aaa" anchor="default"/>
  356. <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"/>
  357. <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"/>
  358. <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"/>
  359. <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"/>
  360. </Layout>
  361. </Layouts>
  362. </Div>
  363. <Button position="absolute 565 15 640 34" id="btn_excel" class="btn7" text="엑셀저장" onclick="group3_switch3_case2_btn_excel_onclick" anchor="default"/>
  364. <Grid position="absolute 5 70 1190 689" align="align:center middle;" id="grd_spcreflist" visible="true" binddataset="ds_grd_spcreflist" anchor="default" cellsizingtype="col">
  365. <Formats>
  366. <Format id="default">
  367. <Columns>
  368. <Column size="28"/>
  369. <Column size="21"/>
  370. <Column size="68"/>
  371. <Column size="95"/>
  372. <Column size="85"/>
  373. <Column size="90"/>
  374. <Column size="100"/>
  375. <Column size="130"/>
  376. <Column size="80"/>
  377. <Column size="0"/>
  378. <Column size="0"/>
  379. <Column size="80"/>
  380. <Column size="0"/>
  381. <Column size="100"/>
  382. <Column size="80"/>
  383. <Column size="60"/>
  384. <Column size="140"/>
  385. <Column size="130"/>
  386. <Column size="100"/>
  387. <Column size="120"/>
  388. <Column size="100"/>
  389. <Column size="100"/>
  390. <Column size="0"/>
  391. </Columns>
  392. <Rows>
  393. <Row size="24" band="head"/>
  394. <Row size="24"/>
  395. </Rows>
  396. <Band id="head">
  397. <Cell/>
  398. <Cell col="1"/>
  399. <Cell col="2" text="등록번호"/>
  400. <Cell col="3" text="환자명"/>
  401. <Cell col="4" text="진료과"/>
  402. <Cell col="5" text="병동/병실"/>
  403. <Cell col="6" text="시행부서"/>
  404. <Cell col="7" text="접수번호"/>
  405. <Cell col="8" text="바코드번호"/>
  406. <Cell col="9" text="검사코드"/>
  407. <Cell col="10" text="검사명"/>
  408. <Cell col="11" text="검체명"/>
  409. <Cell col="12" text="결과"/>
  410. <Cell col="13" text="특수검사연번호"/>
  411. <Cell col="14" text="처방일시"/>
  412. <Cell col="15" text="검체상태"/>
  413. <Cell col="16" text="바코드출력일시"/>
  414. <Cell col="17" text="채취일시"/>
  415. <Cell col="18" text="가접수일시"/>
  416. <Cell col="19" text="접수일시"/>
  417. <Cell col="20" text="취소사유"/>
  418. <Cell col="21" text="취소자"/>
  419. <Cell col="22" text="검체상태"/>
  420. </Band>
  421. <Band id="body">
  422. <Cell text="expr:currow + 1"/>
  423. <Cell col="1" displaytype="checkbox" edittype="checkbox" text="bind:chk"/>
  424. <Cell col="2" text="bind:pid"/>
  425. <Cell col="3" text="bind:patnm"/>
  426. <Cell col="4" text="bind:orddeptnm"/>
  427. <Cell col="5" text="bind:wardroom"/>
  428. <Cell col="6" displaytype="combo" edittype="normal" text="bind:tsectcd" combodataset="ds_init_lb0106" combocodecol="cd" combodatacol="nm" enable="false"/>
  429. <Cell col="7" text="bind:workno"/>
  430. <Cell col="8" displaytype="text" edittype="text" text="bind:bcno"/>
  431. <Cell col="9" text="bind:testcd"/>
  432. <Cell col="10" text="bind:tclsnm"/>
  433. <Cell col="11" text="bind:spcnm"/>
  434. <Cell col="12" text="bind:reptrslt"/>
  435. <Cell col="13" text="bind:spcltestseq"/>
  436. <Cell col="14" displaytype="date" edittype="textarea" text="bind:prcpdd" mask="yyyy-MM-dd"/>
  437. <Cell col="15" displaytype="combo" edittype="combo" text="bind:spcstat" enable="false"/>
  438. <Cell col="16" text="bind:barcdprntdt"/>
  439. <Cell col="17" text="bind:bcolldt"/>
  440. <Cell col="18" text="bind:spcarvdt"/>
  441. <Cell col="19" text="bind:spcacptdt"/>
  442. <Cell col="20" text="bind:cnclcnts"/>
  443. <Cell col="21" text="bind:spccnclnm"/>
  444. <Cell col="22" displaytype="combo" edittype="combo" text="bind:spcstat" enable="false"/>
  445. </Band>
  446. </Format>
  447. </Formats>
  448. </Grid>
  449. </Layout>
  450. </Layouts>
  451. </Tabpage>
  452. </Tabpages>
  453. </Tab>
  454. <CheckBox position="absolute 1088 7 1193 27" id="checkbox4" visible="false" text="환자정보띄우기" truevalue="1" falsevalue="0" anchor="default"/>
  455. <ActiveX position="absolute 320 5 355 35" id="socket" progid="{81e9de7e-90be-4958-bbda-ac731c05aba8}" visible="false" anchor="default"/>
  456. <ActiveX position="absolute 355 5 390 35" id="socket2" progid="{81e9de7e-90be-4958-bbda-ac731c05aba8}" visible="false" anchor="default"/>
  457. <CheckBox position="absolute 990 7 1085 27" id="checkbox5" visible="false" text="미생물처방전" truevalue="1" falsevalue="0" anchor="default"/>
  458. <CheckBox position="absolute 955 7 990 27" id="checkbox7" visible="false" text="재" truevalue="1" falsevalue="0" anchor="default"/>
  459. </Layout>
  460. </Layouts>
  461. </Div>
  462. <Div position="absolute 0 13 1194 40" id="group4" scrollbars="none">
  463. <Layouts>
  464. <Layout>
  465. <Shape position="absolute 0 22 1194 28" linetype="horizontal" id="line17" class="line_6"/>
  466. <Div position="absolute 987 0 1100 25" id="group7">
  467. <Layouts>
  468. <Layout>
  469. <Button position="absolute 5 3 109 25" id="btn_spclist" class="btn4" taborder="15" visible="false" text="검체목록출력" onclick="group4_group7_btn_spclist_onclick"/>
  470. </Layout>
  471. </Layouts>
  472. </Div>
  473. <Button position="absolute 0 3 92 25" id="btn_prnt" class="btn3" taborder="18" text="프린터설정" onclick="group4_btn_prnt_onclick"/>
  474. </Layout>
  475. </Layouts>
  476. </Div>
  477. </Layout>
  478. </Layouts>
  479. <Objects>
  480. <Dataset id="ds_grd_spclist" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false" oncolumnchanged="ds_grd_spclist_oncolumnchanged">
  481. <ColumnInfo>
  482. <Column id="chk" type="STRING"/>
  483. <Column id="execdeptcd" type="STRING"/>
  484. <Column id="workno" type="STRING"/>
  485. <Column id="bcno" type="STRING"/>
  486. <Column id="orddeptnm" type="STRING"/>
  487. <Column id="patnm" type="STRING"/>
  488. <Column id="spccd" type="STRING"/>
  489. <Column id="spcacptdt" type="STRING"/>
  490. <Column id="spcarvdt" type="STRING"/>
  491. <Column id="spcnm" type="STRING"/>
  492. <Column id="pid" type="STRING"/>
  493. <Column id="patage" type="STRING"/>
  494. <Column id="haspnm" type="STRING"/>
  495. <Column id="color" type="STRING" size="256"/>
  496. </ColumnInfo>
  497. </Dataset>
  498. <Dataset id="ds_grd_detllist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  499. <ColumnInfo>
  500. <Column id="tclscd" type="STRING"/>
  501. <Column id="tclsscrnnm" type="STRING"/>
  502. <Column id="erprcpflag" type="STRING"/>
  503. <Column id="workno" type="STRING"/>
  504. <Column id="spcltestseq" type="STRING"/>
  505. <Column id="refprntyn" type="STRING"/>
  506. </ColumnInfo>
  507. </Dataset>
  508. <Dataset id="ds_grd_spcreflist" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  509. <ColumnInfo>
  510. <Column id="chk" type="STRING"/>
  511. <Column id="pid" type="STRING"/>
  512. <Column id="patnm" type="STRING"/>
  513. <Column id="orddeptnm" type="STRING"/>
  514. <Column id="wardroom" type="STRING"/>
  515. <Column id="tsectcd" type="STRING"/>
  516. <Column id="workno" type="STRING"/>
  517. <Column id="bcno" type="STRING"/>
  518. <Column id="testcd" type="STRING"/>
  519. <Column id="tclsnm" type="STRING"/>
  520. <Column id="spcnm" type="STRING"/>
  521. <Column id="reptrslt" type="STRING"/>
  522. <Column id="spcltestseq" type="STRING"/>
  523. <Column id="prcpdd" type="STRING"/>
  524. <Column id="spcstat" type="STRING"/>
  525. <Column id="barcdprntdt" type="STRING"/>
  526. <Column id="bcolldt" type="STRING"/>
  527. <Column id="spcarvdt" type="STRING"/>
  528. <Column id="spcacptdt" type="STRING"/>
  529. <Column id="cnclcnts" type="STRING"/>
  530. <Column id="spccnclnm" type="STRING"/>
  531. <Column id="spcstat" type="STRING"/>
  532. </ColumnInfo>
  533. </Dataset>
  534. <Dataset id="ds_init_cmb_exec" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  535. <ColumnInfo>
  536. <Column id="nm" type="STRING"/>
  537. <Column id="cd" type="STRING"/>
  538. </ColumnInfo>
  539. </Dataset>
  540. <Dataset id="ds_init_cmb_lrgexec" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  541. <ColumnInfo>
  542. <Column id="nm" type="STRING"/>
  543. <Column id="cd" type="STRING"/>
  544. </ColumnInfo>
  545. </Dataset>
  546. <Dataset id="ds_datagrid1" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  547. <ColumnInfo>
  548. <Column id="chk" type="STRING"/>
  549. <Column id="pid" type="STRING"/>
  550. <Column id="patnm" type="STRING"/>
  551. <Column id="orddeptnm" type="STRING"/>
  552. <Column id="wardroom" type="STRING"/>
  553. <Column id="tsectcd" type="STRING"/>
  554. <Column id="workno" type="STRING"/>
  555. <Column id="bcno" type="STRING"/>
  556. <Column id="testcd" type="STRING"/>
  557. <Column id="tclsnm" type="STRING"/>
  558. <Column id="spcnm" type="STRING"/>
  559. <Column id="reptrslt" type="STRING"/>
  560. <Column id="spcltestseq" type="STRING"/>
  561. <Column id="prcpdd" type="STRING"/>
  562. <Column id="spcstat" type="STRING"/>
  563. <Column id="barcdprntdt" type="STRING"/>
  564. <Column id="bcolldt" type="STRING"/>
  565. <Column id="spcarvdt" type="STRING"/>
  566. <Column id="spcacptdt" type="STRING"/>
  567. <Column id="cnclcnts" type="STRING"/>
  568. <Column id="spccnclnm" type="STRING"/>
  569. <Column id="spcstat" type="STRING"/>
  570. </ColumnInfo>
  571. </Dataset>
  572. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  573. <ColumnInfo>
  574. <Column id="Data1" type="STRING" size="256"/>
  575. <Column id="Data2" type="STRING" size="256"/>
  576. <Column id="Data3" type="STRING" size="256"/>
  577. <Column id="Data4" type="STRING" size="256"/>
  578. <Column id="Data5" type="STRING" size="256"/>
  579. <Column id="refflag" type="STRING" size="256"/>
  580. <Column id="bcnolist" type="STRING" size="256"/>
  581. <Column id="spcchoiyn" type="STRING" size="256"/>
  582. <Column id="execdept" type="STRING" size="256"/>
  583. <Column id="codeflag" type="STRING" size="256"/>
  584. <Column id="bcno" type="STRING" size="256"/>
  585. <Column id="batacptgrd" type="STRING" size="256"/>
  586. <Column id="refbase" type="STRING" size="256"/>
  587. <Column id="reffromdd" type="STRING" size="256"/>
  588. <Column id="reftodd" type="STRING" size="256"/>
  589. <Column id="refgbn" type="STRING" size="256"/>
  590. <Column id="reftext" type="STRING" size="256"/>
  591. <Column id="scrnid" type="STRING" size="256"/>
  592. <Column id="sectcd" type="STRING" size="256"/>
  593. <Column id="NL" type="STRING" size="256"/>
  594. <Column id="menuparam" type="STRING" size="256"/>
  595. <Column id="undoacpt" type="STRING" size="256"/>
  596. <Column id="genrflag" type="STRING" size="256"/>
  597. <Column id="spcstat" type="STRING" size="256"/>
  598. <Column id="page" type="STRING" size="256"/>
  599. <Column id="detlspcinfoyn" type="STRING" size="256"/>
  600. <Column id="pidfromdd" type="STRING" size="256"/>
  601. <Column id="pidtodd" type="STRING" size="256"/>
  602. <Column id="piddd" type="STRING" size="256"/>
  603. <Column id="flag" type="STRING" size="256"/>
  604. <Column id="refcnts" type="STRING" size="256"/>
  605. </ColumnInfo>
  606. <Rows>
  607. <Row>
  608. <Col id="Data1"/>
  609. <Col id="Data2"/>
  610. <Col id="Data3"/>
  611. <Col id="Data4"/>
  612. <Col id="Data5"/>
  613. <Col id="refflag"/>
  614. <Col id="bcnolist"/>
  615. <Col id="spcchoiyn"/>
  616. <Col id="execdept"/>
  617. <Col id="codeflag"/>
  618. <Col id="bcno"/>
  619. <Col id="batacptgrd"/>
  620. <Col id="refbase"/>
  621. <Col id="reffromdd"/>
  622. <Col id="reftodd"/>
  623. <Col id="refgbn"/>
  624. <Col id="reftext"/>
  625. <Col id="scrnid"/>
  626. <Col id="sectcd"/>
  627. <Col id="NL"/>
  628. <Col id="menuparam"/>
  629. <Col id="undoacpt"/>
  630. <Col id="genrflag"/>
  631. <Col id="spcstat"/>
  632. <Col id="page">1</Col>
  633. <Col id="detlspcinfoyn"/>
  634. <Col id="pidfromdd"/>
  635. <Col id="pidtodd"/>
  636. <Col id="piddd"/>
  637. </Row>
  638. </Rows>
  639. </Dataset>
  640. <Dataset id="ds_init_lb0102" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  641. <Dataset id="ds_init_lb0106" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  642. <Dataset id="ds_init_lb0104" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  643. <Dataset id="ds_init_lb0111" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  644. <Dataset id="ds_init_lb0000" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  645. <Dataset id="ds_hidden_spcref" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  646. <ColumnInfo>
  647. <Column id="refbase" type="STRING" size="256"/>
  648. <Column id="reffromdd" type="STRING" size="256"/>
  649. <Column id="reftodd" type="STRING" size="256"/>
  650. <Column id="refflag" type="STRING" size="256"/>
  651. <Column id="refcnts" type="STRING" size="256"/>
  652. <Column id="lrgexecdept" type="STRING" size="256"/>
  653. <Column id="execdept" type="STRING" size="256"/>
  654. <Column id="undoacpt" type="STRING" size="256"/>
  655. <Column id="genrflag" type="STRING" size="256"/>
  656. <Column id="detlspcinfoyn" type="STRING" size="256"/>
  657. <Column id="pidfromdd" type="STRING" size="256"/>
  658. <Column id="pidtodd" type="STRING" size="256"/>
  659. <Column id="piddd" type="STRING" size="256"/>
  660. </ColumnInfo>
  661. <Rows>
  662. <Row>
  663. <Col id="refbase">1</Col>
  664. <Col id="reffromdd"/>
  665. <Col id="reftodd"/>
  666. <Col id="refflag">2</Col>
  667. <Col id="refcnts"/>
  668. <Col id="lrgexecdept">00</Col>
  669. <Col id="execdept">00</Col>
  670. <Col id="undoacpt"/>
  671. <Col id="genrflag">00</Col>
  672. <Col id="detlspcinfoyn"/>
  673. <Col id="pidfromdd"/>
  674. <Col id="pidtodd"/>
  675. <Col id="piddd">1</Col>
  676. </Row>
  677. </Rows>
  678. </Dataset>
  679. <Dataset id="ds_hidden_spcacpt" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  680. <ColumnInfo>
  681. <Column id="testmdlcd" type="STRING" size="256"/>
  682. <Column id="testlrgcd" type="STRING" size="256"/>
  683. <Column id="refflag" type="STRING" size="256"/>
  684. <Column id="spcchoiyn" type="STRING" size="256"/>
  685. <Column id="bcno" type="STRING" size="256"/>
  686. <Column id="resetyn" type="STRING" size="256"/>
  687. <Column id="bt" type="STRING" size="256"/>
  688. </ColumnInfo>
  689. <Rows>
  690. <Row>
  691. <Col id="testmdlcd">00</Col>
  692. <Col id="testlrgcd">00</Col>
  693. <Col id="refflag">2</Col>
  694. <Col id="spcchoiyn"/>
  695. <Col id="bcno"/>
  696. <Col id="resetyn"/>
  697. <Col id="bt"/>
  698. </Row>
  699. </Rows>
  700. </Dataset>
  701. <Dataset id="ds_barcdprntsetup" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  702. <Dataset id="ds_data_setupinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  703. <ColumnInfo>
  704. <Column id="dsvaluepath" type="STRING" size="256"/>
  705. <Column id="prntkind" type="STRING" size="256"/>
  706. <Column id="commkind" type="STRING" size="256"/>
  707. <Column id="rexgbn" type="STRING" size="256"/>
  708. </ColumnInfo>
  709. </Dataset>
  710. <Dataset id="ds_data_blank" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  711. <ColumnInfo>
  712. <Column id="dsvaluepath" type="STRING" size="256"/>
  713. <Column id="left" type="STRING" size="256"/>
  714. <Column id="top" type="STRING" size="256"/>
  715. <Column id="b472size" type="STRING" size="256"/>
  716. </ColumnInfo>
  717. </Dataset>
  718. <Dataset id="ds_data_comm01" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  719. <ColumnInfo>
  720. <Column id="setupval" type="STRING" size="256"/>
  721. </ColumnInfo>
  722. </Dataset>
  723. <Dataset id="ds_data_comm02" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  724. <ColumnInfo>
  725. <Column id="dsvaluepath" type="STRING" size="256"/>
  726. <Column id="comm" type="STRING" size="256"/>
  727. <Column id="databit" type="STRING" size="256"/>
  728. <Column id="stopbit" type="STRING" size="256"/>
  729. <Column id="baudrate" type="STRING" size="256"/>
  730. <Column id="parity" type="STRING" size="256"/>
  731. </ColumnInfo>
  732. <Rows>
  733. <Row>
  734. <Col id="dsvaluepath">/setupinfo</Col>
  735. <Col id="comm">2</Col>
  736. <Col id="databit">8</Col>
  737. <Col id="stopbit">1</Col>
  738. <Col id="baudrate">9600</Col>
  739. <Col id="parity">n</Col>
  740. </Row>
  741. </Rows>
  742. </Dataset>
  743. <Dataset id="ds_data_comm03" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  744. <ColumnInfo>
  745. <Column id="dsvaluepath" type="STRING" size="256"/>
  746. <Column id="comm" type="STRING" size="256"/>
  747. <Column id="databit" type="STRING" size="256"/>
  748. <Column id="stopbit" type="STRING" size="256"/>
  749. <Column id="baudrate" type="STRING" size="256"/>
  750. <Column id="parity" type="STRING" size="256"/>
  751. </ColumnInfo>
  752. <Rows>
  753. <Row>
  754. <Col id="dsvaluepath">/setupinfo</Col>
  755. <Col id="comm">2</Col>
  756. <Col id="databit">8</Col>
  757. <Col id="stopbit">1</Col>
  758. <Col id="baudrate">9600</Col>
  759. <Col id="parity">n</Col>
  760. </Row>
  761. </Rows>
  762. </Dataset>
  763. <Dataset id="ds_data_getspcltestlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  764. <Dataset id="ds_barcodeinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  765. <ColumnInfo>
  766. <Column id="tsectlblnm" type="STRING" size="256" sumtext="검사계라벨명"/>
  767. <Column id="bcno" type="STRING" size="256" sumtext="검체번호"/>
  768. <Column id="barcdprntdt" type="STRING" size="256" sumtext="라벨발행일자"/>
  769. <Column id="patnm" type="STRING" size="256" sumtext="환자성명"/>
  770. <Column id="pid" type="STRING" size="256" sumtext="등록번호"/>
  771. <Column id="sexage" type="STRING" size="256" sumtext="성별연령"/>
  772. <Column id="deptroom" type="STRING" size="256" sumtext="진료과병실"/>
  773. <Column id="spclblnm" type="STRING" size="256" sumtext="검체라벨명"/>
  774. <Column id="tubelblnm" type="STRING" size="256" sumtext="용기라벨명"/>
  775. <Column id="secttsect" type="STRING" size="256" sumtext="계검사계"/>
  776. <Column id="tclslblnmlist" type="STRING" size="256" sumtext="검사라벨명"/>
  777. <Column id="infcinfolist" type="STRING" size="256" sumtext="감염정보"/>
  778. <Column id="erprcpflag" type="STRING" size="256" sumtext="응급구분"/>
  779. <Column id="bcollbarcdprntcnt" type="STRING" size="256" sumtext="채혈바코드출력수"/>
  780. <Column id="spcacptbarcdprntcnt" type="STRING" size="256" sumtext="접수바코드출력수"/>
  781. <Column id="microbarcdprntcnt" type="STRING" size="256" sumtext="미생물바코드출력수"/>
  782. <Column id="mdiabarcdprntcnt" type="STRING" size="256" sumtext="핵의학바코드출력수"/>
  783. <Column id="workno" type="STRING" size="256" sumtext="작업번호"/>
  784. <Column id="orddrnm" type="STRING" size="256" sumtext="처방의"/>
  785. <Column id="roomcd" type="STRING" size="256" sumtext="병실코드"/>
  786. <Column id="dept" type="STRING" size="256" sumtext="부서"/>
  787. <Column id="spcacptdd" type="STRING" size="256" sumtext="접수일자"/>
  788. <Column id="dnornm" type="STRING" size="256" sumtext="공여자명"/>
  789. <Column id="tclsnmlist" type="STRING" size="256" sumtext="공여자명"/>
  790. </ColumnInfo>
  791. <Rows>
  792. <Row/>
  793. </Rows>
  794. </Dataset>
  795. <Dataset id="ds_dbarcodeinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  796. <Dataset id="ds_nbarcodeinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  797. <Dataset id="ds_slideprnt" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  798. <Dataset id="ds_casetprnt" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  799. <Dataset id="ds_slidecaset" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  800. <Dataset id="ds_infdisinfolist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  801. <Dataset id="ds_mreport" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  802. <Dataset id="ds_init_prcpinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  803. <Dataset id="ds_page" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  804. <Dataset id="ds_data_inptitem01" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  805. <Dataset id="ds_data_rslt" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  806. <Dataset id="ds_data_cf" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  807. <Dataset id="ds_detltestlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  808. </Objects>
  809. <Bind>
  810. <BindItem id="item0" compid="group3.switch3.case2.group5.cmb_refgbn" propid="value" datasetid="ds_hidden_spcref" columnid="refflag"/>
  811. <BindItem id="item1" compid="group3.switch3.case2.group5.ipt_text" propid="value" datasetid="ds_hidden_spcref" columnid="refcnts"/>
  812. <BindItem id="item2" compid="group3.switch3.case2.group5.input2" propid="value" datasetid="ds_hidden_spcref" columnid="pidfromdd"/>
  813. <BindItem id="item3" compid="group3.switch3.case2.group5.input1" propid="value" datasetid="ds_hidden_spcref" columnid="pidtodd"/>
  814. <BindItem id="item4" compid="group3.switch3.case2.group5.checkbox6" propid="value" datasetid="ds_hidden_spcref" columnid="piddd"/>
  815. <BindItem id="item5" compid="group3.switch3.case2.group5.radio1" propid="value" datasetid="ds_hidden_spcref" columnid="genrflag"/>
  816. <BindItem id="item6" compid="group3.switch3.case2.group5.chk_detlspcinfoyn" propid="value" datasetid="ds_hidden_spcref" columnid="detlspcinfoyn"/>
  817. <BindItem id="item7" compid="group3.switch3.case1.group2.cmb_TLrgCd" propid="value" datasetid="ds_hidden_spcacpt" columnid="testlrgcd"/>
  818. <BindItem id="item8" compid="group3.switch3.case1.group2.cmd_TMdlCd" propid="value" datasetid="ds_hidden_spcacpt" columnid="testmdlcd"/>
  819. <BindItem id="item9" compid="group3.switch3.case1.group2.rdo_acptflag" propid="value" datasetid="ds_hidden_spcacpt" columnid="refflag"/>
  820. <BindItem id="item10" compid="group3.switch3.case1.group2.chk_spcchoi" propid="value" datasetid="ds_hidden_spcacpt" columnid="spcchoiyn"/>
  821. <BindItem id="item11" compid="group3.switch3.case1.group2.ipt_bcno" propid="value" datasetid="ds_hidden_spcacpt" columnid="bcno"/>
  822. <BindItem id="item12" compid="group3.switch3.case1.group2.checkbox2" propid="value" datasetid="ds_hidden_spcacpt" columnid="resetyn"/>
  823. <BindItem id="item13" compid="group3.switch3.case1.group2.checkbox3" propid="value" datasetid="ds_hidden_spcacpt" columnid="bt"/>
  824. <BindItem id="item14" compid="group3.switch3.case1.cmb_execdept" propid="value" datasetid="ds_hidden_spcacpt" columnid="testmdlcd"/>
  825. <BindItem id="item15" compid="group3.switch3.case2.group_page.opt_first" propid="value" datasetid="ds_send" columnid="page"/>
  826. </Bind>
  827. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  828. * System Name :
  829. * Job Name :
  830. * Creator :
  831. * Make Date : 2015-11-09
  832. * Description :
  833. *---------------------------------------------------------------------------------------
  834. * Modify Date Modifier Modify Description
  835. *---------------------------------------------------------------------------------------
  836. * 2015-11-09 Live Converter TF->XP
  837. *
  838. *---------------------------------------------------------------------------------------
  839. ****************************************************************************************/
  840. include "com_commonxp::comm_main.xjs";
  841. include "lis_commonxp::LLZ001.xjs";
  842. include "lis_commonxp::LZZ001.xjs";
  843. include "lis_commonxp::LZZ002.xjs";
  844. include "lis_commonxp::LPZ001.xjs";
  845. include "com_commodulexp::SSZFM00901.xjs";
  846. // *** 접수 *** 바코드번호 등록후 엔터 쳤을때
  847. function fsetBCNOEnter(){
  848. var bfnodecount = ds_grd_spclist.rowcount;
  849. var btdt = utlf_getCurrentDateTime().toDate("YYYYMMDD hhmmss").getAddDate(-10, "m").getDateFormat("YYYYMMDDhhmmss");
  850. // 유효성 체크
  851. if ( fexeBCNOtrue() == false ){
  852. //return;
  853. }else{
  854. // 화면초기화여부 선택되면
  855. if(ds_hidden_spcacpt.getColumn(0,"resetyn")=="1"){
  856. ds_grd_spclist.clearData();
  857. }
  858. var bcno = String(utlf_transNullToEmpty(ds_hidden_spcacpt.getColumn(0,"bcno"))).toUpperCase();
  859. var acptcnt = 0;
  860. if(ds_hidden_spcacpt.getColumn(0,"spcchoiyn") == "1") {
  861. var find = ds_grd_spclist.findRow("bcno",bcno);
  862. if(find > 0) {
  863. sysf_messageBox("이미 선택된 검체", "E008");
  864. ds_grd_spclist.setColumn(ds_grd_spclist.rowcount -1,"Msg", "error");
  865. return;
  866. }
  867. }
  868. ds_send.setColumn(0, "bcno",bcno);
  869. ds_send.setColumn(0, "refflag",ds_hidden_spcacpt.getColumn(0,"refflag"));
  870. ds_send.setColumn(0, "spcchoiyn",ds_hidden_spcacpt.getColumn(0,"spcchoiyn"));
  871. ds_send.setColumn(0, "btyn",ds_hidden_spcacpt.getColumn(0,"bt"));
  872. ds_send.setColumn(0, "btdt",btdt);
  873. ds_send.setColumn(0, "execdept",ds_hidden_spcacpt.getColumn(0,"testmdlcd") );
  874. ds_send.setColumn(0, "sectcd",ds_hidden_spcacpt.getColumn(0,"testlrgcd") );
  875. ds_send.setColumn(0, "NL",frmf_getMenuParam());
  876. var oParam = {};
  877. oParam.id = "TXLLJ00105";
  878. oParam.service = "acptmngtapp.AcptMngt";
  879. oParam.method = "reqExeSpcInfo";
  880. oParam.inds = "cond=ds_send";
  881. oParam.outds = "ds_grd_spclist=getBcollSpcInfo ds_barcodeinfo=barcodeinfo ds_dbarcodeinfo=dbarcodeinfo ds_nbarcodeinfo=nbarcodeinfo ds_slideprnt=slideprnt ds_casetprnt=casetprnt ds_slidecaset=slidecaset";
  882. oParam.transaction = false;
  883. oParam.async = false;
  884. //oParam.callback = "cf_TXLLJ00105";
  885. tranf_submit(oParam);
  886. ds_dbarcodeinfo.addColumn("cntflag","string");
  887. ds_grd_spclist.addColumn("color","string");
  888. var afnodecount = ds_grd_spclist.rowcount;
  889. if(ds_hidden_spcacpt.getColumn(0,"resetyn") != "1") {
  890. if(bfnodecount == afnodecount) { //조회된 데이터가 없을 경우 메세지 띄움.
  891. sysf_messageBox("바코드 번호를", "I007");
  892. return;
  893. }
  894. }
  895. ds_grd_spclist.rowposition = ds_grd_spclist.rowcount -1;
  896. if(group3.checkbox4.value=="1"){ // 환자정보띄우기 체크되있을때만
  897. if(ds_grd_spclist.rowcount > 1){
  898. if(appf_getPatientInfo("pid") != ds_grd_spclist.getColumn(ds_grd_spclist.rowposition,"pid")){
  899. fGetTopInfo();
  900. }
  901. }
  902. }else{
  903. appf_delPatientInfos(); //환자정보 전체 삭제
  904. }
  905. ds_grd_spclist.rowposition = ds_grd_spclist.rowcount -1;
  906. group3.switch3.case1.grd_spclist.vscrollbar.pos = ds_grd_spclist.rowcount -1;
  907. //색깔 구분 및 체크 아래 메세지 표시 안에 있던거에서 위로 뺌(검체 내 일부 취소건 있을때 두줄 조회되서)
  908. for(i =0 ; i < ds_grd_spclist.rowcount ; i ++){
  909. var msgbcno =ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1,"bcno");
  910. if(ds_grd_spclist.getColumn(i,"bcno") == msgbcno
  911. && !utlf_isNull(ds_grd_spclist.getColumn(i,"Msg"))){
  912. ds_grd_spclist.setColumn(i,"color", "#aaaaaa");
  913. ds_grd_spclist.setColumn(i,"chk", "false");
  914. }else if(ds_grd_spclist.getColumn(i,"spcstat") == "0" ){
  915. ds_grd_spclist.setColumn(i,"color", "#aaaaaa");
  916. ds_grd_spclist.setColumn(i,"chk", "false");
  917. }else{
  918. ds_grd_spclist.setColumn(i,"chk", "true");
  919. }
  920. }
  921. // 메세지 표시
  922. if(!utlf_isNull(ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1,"Msg"))){
  923. var msg = ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1,"Msg");
  924. sysf_messageBox(msg , "E008", "");
  925. //위로 끌어올림
  926. }else{
  927. if(ds_grd_spclist.rowcount >0){
  928. //model.setValue("/root/main/spclist["+(grd_spclist.rows-1)+"]/chk", "true");
  929. //감염정보 조회
  930. //model.makeValue("/root/send/pid", "20493"); //test 용
  931. ds_send.setColumn(0, "pid",ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1,"pid"));
  932. ds_send.setColumn(0, "bcno",ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1,"bcno"));
  933. ds_send.setColumn(0, "flag","");
  934. var oParam = {};
  935. oParam.id = "TRLLC90801";
  936. oParam.service = "bcollmngtapp.BCollMngt";
  937. oParam.method = "reqGetInfDisInfo";
  938. oParam.inds = "cond=ds_send";
  939. oParam.outds = "ds_infdisinfolist=getinfdisinfo";
  940. oParam.async = false;
  941. //oParam.callback = "cf_TRLLC90801";
  942. tranf_submit(oParam);
  943. //model.removenode("/root/send/pid"); //인스턴스 삭제
  944. //model.removenode("/root/send/bcno"); //인스턴스 삭제
  945. //model.removenode("/root/send/flag"); //인스턴스 삭제
  946. //model.makeNode("/root/send/bcno"); //인스턴스 생성
  947. if(ds_infdisinfolist.rowcount > 0) { //감염정보가 있다면..
  948. var objArg = new Object();
  949. objArg.arg_ds_infdisinfolist = ds_infdisinfolist;
  950. frmf_modal("SPLLC90800", "SPLLC90800", objArg, "", "", "", "", "", "", "", "","","M"); //감염정보창 띄우기
  951. }
  952. }
  953. }
  954. group3.switch3.case1.group2.ipt_bcno.setFocus();
  955. // 검체 상세목록 보여주기
  956. var sRow = ds_grd_spclist.rowcount;
  957. if(sRow > 0){
  958. // 검체 상세목록 보여주기
  959. fGetSpcDetlList(sRow);
  960. }
  961. var prntYN = "N" // 세포유전 워크리스트 출력여부
  962. for(i=0; i<ds_grd_detllist.rowcount; i++){
  963. if("Y" == ds_grd_detllist.getColumn(i,"refprntyn")){
  964. prntYN = "Y";
  965. }
  966. }
  967. //접수 할 검체이거나, 접수된 검체만 report 출력 20090422 김성희 수정 : 세포유전 요청사항
  968. if(prntYN == "Y" && !utlf_isNull(ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1,"spcacptdt"))){
  969. dsf_createDsRow("ds_refprnt"
  970. , [{col: "workno" , val: group3.switch3.case1.grd_spclist.getCellValue(sRow-1, 3)}
  971. , {col: "workdd" , val: group3.switch3.case1.grd_spclist.getCellValue(sRow-1, 8).substring(0,8)}
  972. , {col: "spcnm" , val: group3.switch3.case1.grd_spclist.getCellValue(sRow-1, 10)}
  973. , {col: "patnm" , val: group3.switch3.case1.grd_spclist.getCellValue(sRow-1, 6)}
  974. , {col: "patage" , val: group3.switch3.case1.grd_spclist.getCellValue(sRow-1, 12)}
  975. , {col: "pid" , val: group3.switch3.case1.grd_spclist.getCellValue(sRow-1, 11)}
  976. , {col: "orddeptnm" , val: group3.switch3.case1.grd_spclist.getCellValue(sRow-1, 5)}
  977. , {col: "haspnm" , val: group3.switch3.case1.grd_spclist.getCellValue(sRow-1, 13)}
  978. ]);
  979. var objDOM = rptf_createDOM(); // DOM 객체 설정
  980. rptf_setNodeListToDOM(objDOM, "/root/hidden/refprnt", ds_refprnt); // 데이터셋 1
  981. var objParam = new Object();
  982. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  983. rptf_exeReportPreview30(["RPLLJ00101"],[objParam]);
  984. }
  985. // 유린검체 정보 등록
  986. //if(model.getValue("/root/hidden/spcacpt/refflag")=="2"){
  987. if(ds_grd_spclist.getColumn(sRow-1,"urineyn") == "Y"){
  988. //if(model.getValue("/root/main/spclist["+(grd_spclist.rows-1)+"]/Msg") == "" ){
  989. // 유린 팝업 띄우고 등록하기
  990. fSetUrine(sRow-1);
  991. //}
  992. }
  993. //}
  994. }
  995. var remicroorder = "";
  996. // 접수시 spcacptbarcdprntcnt 갯수만큼 바코드 출력
  997. if(group3.switch3.case1.group2.chk_spcchoi.value == "1"){
  998. }else{
  999. if(frmf_getMenuParam()=="N"){
  1000. fExeNBarcdPrnt(); //핵의학 바코드 프린트 연결 안된데서 실행하면 뻗어요 ~~
  1001. fGetNAcptCnt(); //접수된 검체개수 보이게
  1002. }else{
  1003. if(!utlf_isNull(ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1,"Msg"))){
  1004. fExeBarcdPrnt(); //바코드 프린트 연결 안된데서 실행하면 뻗어요 ~~
  1005. if(group3.checkbox5.value == "1"){
  1006. var oParam = {};
  1007. oParam.id = "TRLLJ00106";
  1008. oParam.service = "acptmngtapp.AcptMngt";
  1009. oParam.method = "reqGetMreportListRef";
  1010. oParam.inds = "cond=ds_send";
  1011. oParam.outds = "ds_mreport=mreport";
  1012. oParam.async = false;
  1013. //oParam.callback = "cf_TRLLJ00105";
  1014. tranf_submit(oParam);
  1015. var objDOM = rptf_createDOM(); // DOM 객체 설정
  1016. rptf_setNodeListToDOM(objDOM, "/root/temp/mreport", ds_mreport); // 데이터셋 1
  1017. var objParam = new Object();
  1018. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  1019. rptf_exeReportPreview30(["RPLLJ00102"],[objParam]);
  1020. remicroorder = "1";
  1021. }
  1022. }
  1023. }
  1024. }
  1025. fExeSlidIss();
  1026. //미생물처방전 출력
  1027. if(utlf_isNull(remicroorder) && group3.checkbox7.value == "1"){
  1028. var oParam = {};
  1029. oParam.id = "TRLLJ00106";
  1030. oParam.service = "acptmngtapp.AcptMngt";
  1031. oParam.method = "reqGetMreportListRef";
  1032. oParam.inds = "cond=ds_send";
  1033. oParam.outds = "ds_mreport=mreport";
  1034. oParam.async = false;
  1035. //oParam.callback = "cf_TRLLJ00105";
  1036. tranf_submit(oParam);
  1037. var objDOM = rptf_createDOM(); // DOM 객체 설정
  1038. rptf_setNodeListToDOM(objDOM, "/root/temp/mreport", ds_mreport); // 데이터셋 1
  1039. var objParam = new Object();
  1040. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  1041. rptf_exeReportPreview30(["RPLLJ00102"],[objParam]);
  1042. }
  1043. for (i = 0; i<ds_grd_spclist.rowcount; i++){
  1044. if(ds_grd_spclist.getColumn(i,"patnm").indexOf("★") == "1") {
  1045. ds_grd_spclist.setColumn(i,"color","#ff0000");
  1046. }
  1047. }
  1048. }
  1049. function fExeSlidIss() {
  1050. //장비IP set
  1051. var slideprnt = ds_slideprnt.rowcount;
  1052. var casetprnt = ds_casetprnt.rowcount;
  1053. if(slideprnt > 0){
  1054. sSlidBcIP = ds_slidecaset.getColumn(0,"slideip");
  1055. sSlidBcPort = ds_slidecaset.getColumn(0,"slideport");
  1056. //----------------------------------------
  1057. if (utlf_isNull(sSlidBcIP) || sSlidBcIP == "-") {
  1058. sysf_messageBox("슬라이드 라벨지 장비의 IP주소가 없습니다. 병원별 환경설정에서 ", "C001");
  1059. return false;
  1060. }
  1061. //--------------------------------------------
  1062. if (utlf_isNull(sSlidBcPort) || sSlidBcPort == "-"){
  1063. sysf_messageBox("슬라이드 라벨지 장비의 Port번호가 없습니다. 병원별 환경설정에서 ", "C001");
  1064. return false;
  1065. }
  1066. group3.socket.connect(sSlidBcIP, sSlidBcPort);
  1067. }
  1068. if(casetprnt > 0){
  1069. sSlidBcIP2 = ds_slidecaset.getColumn(0,"casetip");
  1070. sSlidBcPort2 = ds_slidecaset.getColumn(0,"casetport");
  1071. //----------------------------------------
  1072. if (utlf_isNull(sSlidBcIP2) || sSlidBcIP2 == "-") {
  1073. sysf_messageBox("카세트 장비의 IP주소가 없습니다. 병원별 환경설정에서 ", "C001");
  1074. return false;
  1075. }
  1076. //--------------------------------------------
  1077. if (utlf_isNull(sSlidBcPort2) || sSlidBcPort2 == "-") {
  1078. sysf_messageBox("카세트 장비의 Port번호가 없습니다. 병원별 환경설정에서 ", "C001");
  1079. return false;
  1080. }
  1081. //-------------------------------------
  1082. group3.socket2.connect(sSlidBcIP2, sSlidBcPort2);
  1083. }
  1084. }
  1085. function fExeSlidIssA(){
  1086. var iMaxRowCnt = 0;
  1087. //var sSlidNode = "/root/main/slide/slideprnt";
  1088. //--------------------------------------
  1089. iMaxRowCnt = ds_slideprnt.rowcount;
  1090. for (var iRowNo=0; iRowNo < iMaxRowCnt; iRowNo++) {
  1091. var prntcnt = ds_slideprnt.getColumn(iRowNo,"prntcnt");
  1092. for(var slidecnt = 1 ; slidecnt <= prntcnt ; slidecnt++){
  1093. var patnm= getNameInitial(ds_slideprnt.getColumn(iRowNo,"patnm"));
  1094. var etc1 = ds_slideprnt.getColumn(iRowNo,"etc1");
  1095. if(utlf_isNull(etc1)){
  1096. etc1 = "-";
  1097. }
  1098. sSendMsg = "S▦"; //슬라이드구분
  1099. sSendMsg += ds_slideprnt.getColumn(iRowNo,"spclno") + "▦"; // 특수검사연번호
  1100. sSendMsg += patnm + "▦"; // 환자명
  1101. sSendMsg += etc1 + "▦";
  1102. sSendMsg += ds_slideprnt.getColumn(iRowNo,"workdd") + "▦"; // 접수일시
  1103. sSendMsg += ds_slideprnt.getColumn(iRowNo,"etc2") + "▦";
  1104. sSendMsg += ds_slideprnt.getColumn(iRowNo,"hospnm") + "▩"; // 병원명
  1105. //sSendMsg += "▩";
  1106. group3.socket.sendString(sSendMsg);
  1107. }
  1108. }
  1109. group3.socket.close();
  1110. }
  1111. function fExeSlidIssB(){
  1112. var iMaxRowCnt2 = 0;
  1113. //var sSlidNode2 = "/root/main/slide/casetprnt";
  1114. //--------------------------------------
  1115. iMaxRowCnt2 = ds_casetprnt.rowcount;;
  1116. for (var iRowNo2=0; iRowNo2 < iMaxRowCnt2; iRowNo2++) {
  1117. var patnm= getNameInitial(ds_casetprnt.getColumn(iRowNo2,"patnm"));
  1118. var etcvalue = ds_casetprnt.getColumn(iRowNo2,"etc");
  1119. var etcMark = "";
  1120. if(etcvalue.indexOf("C") == -1){
  1121. etcMark = "1";
  1122. }
  1123. else{
  1124. etcMark = "2";
  1125. }
  1126. sSendMsg = "C▦"; //카세트구분
  1127. sSendMsg += ds_casetprnt.getColumn(iRowNo2,"spclno") + "▦"; // 특수검사연번호
  1128. sSendMsg += etcMark + "▦"; //후퍼
  1129. sSendMsg += ds_casetprnt.getColumn(iRowNo2,"etc") + "▦";
  1130. sSendMsg += patnm + "▩"; // 환자명
  1131. socket2.sendString(sSendMsg);
  1132. }
  1133. group3.socket2.close();
  1134. }
  1135. function getNameInitial(nameStr){
  1136. //받은 이름 문자열을 스페이스바로 분리
  1137. var part = nameStr.split(' ');
  1138. var str = "";
  1139. var nameChr = "";
  1140. var chr;
  1141. var cnt = 3;
  1142. //영문이름을 위한 대문자 변환
  1143. nameStr = nameStr.toUpperCase();
  1144. //스페이스로 구분되어 있는 이름(영문)의 경우 첫단어와 마지막 단어의 이니셜만 처리
  1145. if(part.length>1){
  1146. if(part[0].length == 0) part[0] = " ";
  1147. if(part[part.length-1].length == 0) part[part.length-1] = " ";
  1148. nameChr = part[0].substr(0,1) + "." + part[part.length-1].substr(0,1);
  1149. }
  1150. else{
  1151. nameChr = part[0];
  1152. }
  1153. //변환할 값이 0보다 큰지 확인
  1154. if(nameChr.length < cnt) cnt = nameChr.length;
  1155. if(cnt <= 0) return str;
  1156. //영문일 때를 위해 대문자로 변환
  1157. nameChr = nameChr.toUpperCase();
  1158. for(var pati=0;pati<cnt;pati++){
  1159. chr = nameChr.substr(pati,1).charCodeAt(0);
  1160. if(chr<128) str = str + nameChr.substr(pati,1);
  1161. else{
  1162. switch(nameChr.substr(pati,1)){
  1163. case "박":
  1164. str = str + "P";
  1165. break;
  1166. case "김":
  1167. str = str + "K";
  1168. break;
  1169. case "이":
  1170. if(pati==0) str = str + "L";
  1171. else str = str + "I";
  1172. break;
  1173. default :
  1174. if(chr>=44032 && chr<45208) str = str + "G";
  1175. else if(chr>=45208 && chr<45796) str = str + "N";
  1176. else if(chr>=45796 && chr<46972) str = str + "D";
  1177. else if(chr>=46972 && chr<47560) str = str + "R";
  1178. else if(chr>=47560 && chr<48148) str = str + "M";
  1179. else if(chr>=48148 && chr<49324) str = str + "B";
  1180. else if(chr>=49324 && chr<50500) str = str + "S";
  1181. else if(chr>=50500 && chr<50556) str = str + "A";
  1182. else if(chr>=50556 && chr<50612) str = str + "Y";
  1183. else if(chr>=50612 && chr<50668) str = str + "E";
  1184. else if(chr>=50668 && chr<50724) str = str + "Y";
  1185. else if(chr>=50724 && chr<50752) str = str + "O";
  1186. else if(chr>=50752 && chr<50808) str = str + "W";
  1187. else if(chr>=50808 && chr<50836) str = str + "O";
  1188. else if(chr>=50836 && chr<50864) str = str + "Y";
  1189. else if(chr>=50864 && chr<50892) str = str + "U";
  1190. else if(chr>=50892 && chr<50976) str = str + "W";
  1191. else if(chr>=50976 && chr<51004) str = str + "Y";
  1192. else if(chr>=51004 && chr<51032) str = str + "E";
  1193. else if(chr>=51032 && chr<51060) str = str + "U";
  1194. else if(chr>=51060 && chr<51088) str = str + "I";
  1195. else if(chr>=51088 && chr<52264) str = str + "J";
  1196. else if(chr>=52264 && chr<52852) str = str + "C";
  1197. else if(chr>=52852 && chr<53440) str = str + "K";
  1198. else if(chr>=53440 && chr<54028) str = str + "T";
  1199. else if(chr>=54028 && chr<54616) str = str + "P";
  1200. else if(chr>=54616 && chr<55203) str = str + "H";
  1201. else str = str + " ";
  1202. break;
  1203. }
  1204. }
  1205. }
  1206. return str;
  1207. }
  1208. // 탑정보 위한 조회
  1209. function fGetTopInfo(){
  1210. dsf_createDsRow("ds_send_req"
  1211. , [{col: "pid" , val: ds_grd_spclist.getColumn(ds_grd_spclist.rowposition,"pid")}
  1212. ]);
  1213. var oParam = {};
  1214. oParam.id = "TRLZZ00109";
  1215. oParam.service = "diagtestapplib.LisCommon";
  1216. oParam.method = "reqGetPidTopinfo";
  1217. oParam.inds = "cond=ds_send_req";
  1218. oParam.outds = "ds_init_prcpinfo=getPidTopinfo";
  1219. oParam.async = false;
  1220. //oParam.callback = "cf_TRLZZ00109";
  1221. tranf_submit(oParam);
  1222. //fUpPatinfo2();
  1223. if(ds_grd_spclist.rowcount> 1){
  1224. if(!utlf_isNull(ds_init_prcpinfo.getColumn(0,"pid"))){
  1225. frmf_setParameter("errflag", "Y");
  1226. var ordtype = "";
  1227. var genrflag = ds_init_prcpinfo.getColumn(0,"genrflag");
  1228. //DSC 환자인 경우 genrflag를 I 로 보냄. 오류나서 2008.12.03 김성희 수정
  1229. //SPMMO08900.js 파일(fInitialize_SPMMO08900())에서 genrflag가 "D"인 것을 처리하는 구문이 없음.("I" 로 처리해야함.)
  1230. if(genrflag =="D"){
  1231. genrflag = "I";
  1232. }
  1233. //modal("SPMMO08900");
  1234. if((genrflag == "I") || (genrflag =="E")){
  1235. frmf_setParameter("condparam", genrflag + "▦" +
  1236. ds_init_prcpinfo.getColumn(0,"pid") + "▦" +
  1237. ds_init_prcpinfo.getColumn(0,"orddd") + "▦" +
  1238. ds_init_prcpinfo.getColumn(0,"cretno") + "▦" +
  1239. ds_init_prcpinfo.getColumn(0,"acptseqno") + "▦" + // seqno
  1240. ds_init_prcpinfo.getColumn(0,"todd") + "▦" +
  1241. ds_init_prcpinfo.getColumn(0,"instcd")); // 임시로
  1242. }else if((genrflag =="O") || (genrflag =="S")){
  1243. frmf_setParameter("condparam", genrflag + "▦" +
  1244. ds_init_prcpinfo.getColumn(0,"pid") + "▦" +
  1245. ds_init_prcpinfo.getColumn(0,"orddd") + "▦" +
  1246. ds_init_prcpinfo.getColumn(0,"cretno") + "▦" +
  1247. ds_init_prcpinfo.getColumn(0,"instcd") + "▦" +
  1248. ds_init_prcpinfo.getColumn(0,"acptseqno") + "▦" +
  1249. ds_init_prcpinfo.getColumn(0,"orgorddd") + "▦");
  1250. }
  1251. appf_initPatientInfo(frmf_getParameter("condparam"));
  1252. //frmf_modal("SPMMO08900","SPMMO08900", "", "", "", "", "", "", "", "", "", "","M");
  1253. }
  1254. var paminfo = sysf_getGlobalVariable("paminfo");
  1255. if(paminfo.length < 1){ //상단정보가 없는 경우
  1256. appf_delPatientInfos(); //환자정보 전체 삭제
  1257. var pid =ds_grd_spclist.getColumn(ds_grd_spclist.rowposition,"pid");
  1258. var hngnm = ds_grd_spclist.getColumn(ds_grd_spclist.rowposition,"patnm");
  1259. //상단에 올릴 수 있는 정보가 있으면 아래와 같이 설정해 주시면 됩니다. 없으면 안 해주셔도 되구요..
  1260. appf_setPatientInfo("pid" , pid); //등록번호
  1261. appf_setPatientInfo("pname" , pid + "|" + hngnm); //환자명
  1262. }
  1263. }
  1264. }
  1265. // 핵의학 접수된 Cnt 조회
  1266. function fGetNAcptCnt(){
  1267. var ncnt = 0;
  1268. for(i=0; i<ds_grd_spclist.rowcount; i++){
  1269. if(utlf_isNull(ds_grd_spclist.getColumn(i,"Msg"))){
  1270. ncnt += 1;
  1271. }
  1272. }
  1273. group3.switch3.case1.cap_cnt.visible = true;
  1274. group3.switch3.case1.opt_cnt.visible = true;
  1275. group3.switch3.case1.opt_cnt.value = ncnt;
  1276. }
  1277. // 유효성 체크
  1278. function fexeBCNOtrue(){
  1279. var txtbcno = group3.switch3.case1.group2.ipt_bcno.value;
  1280. if(!utlf_isNull(txtbcno)){
  1281. // 바코드 길이 9자리
  1282. if(txtbcno.length == 9 ){
  1283. }else{
  1284. sysf_messageBox("잘못된 검체번호 ", "E008"); // 잘못된 검체번호 입니다.
  1285. return false;
  1286. }
  1287. }
  1288. }
  1289. // 핵의학 화면 접수검체갯수 보이기
  1290. function fSetNCnt(){
  1291. if(frmf_getMenuParam()=="N"){
  1292. group3.switch3.case1.cap_cnt.visible = true;
  1293. group3.switch3.case1.opt_cnt.visible = true;
  1294. }else{
  1295. group3.switch3.case1.cap_cnt.visible = false;
  1296. group3.switch3.case1.opt_cnt.visible = false;
  1297. }
  1298. }
  1299. // 일괄접수 버튼
  1300. function fSetBatAcpt(){
  1301. var btdt = utlf_getCurrentDateTime().toDate("YYYYMMDD hhmmss").getAddDate(-10, "m").getDateFormat("YYYYMMDDhhmmss");
  1302. // 일괄접수
  1303. var bcnolist ="";
  1304. if(sysf_messageBox("모든 리스트를 접수", "Q004") == 6){
  1305. for(i=0; i< ds_grd_spclist.rowcount; i++){
  1306. if(ds_grd_spclist.getColumn(i,"chk") == "true"){
  1307. bcnolist += ds_grd_spclist.getColumn(i,"bcno") + "▦";
  1308. }
  1309. ds_grd_spclist.setRowType(i,"I");
  1310. }
  1311. dsf_createDs("ds_grdbatacpt");
  1312. grdf_setStatusColumn(ds_grd_spclist, "status");
  1313. dsf_copyDs(ds_grdbatacpt, grdf_getGridUpdateData(group3.switch3.case1.grd_spclist,"all"),"replace");
  1314. dsf_createDsRow("ds_send_bcnolist"
  1315. , [{col: "bcnolist" , val: bcnolist}
  1316. , {col: "refflag" , val: ds_hidden_spcacpt.getColumn(0,"refflag")}
  1317. , {col: "spcchoiyn" , val: ds_hidden_spcacpt.getColumn(0,"spcchoiyn")}
  1318. , {col: "btyn" , val: ds_hidden_spcacpt.getColumn(0,"bt")}
  1319. , {col: "btdt" , val: btdt}
  1320. , {col: "execdept" , val: ds_hidden_spcacpt.getColumn(0,"testmdlcd")}
  1321. , {col: "sectcd" , val: ds_hidden_spcacpt.getColumn(0,"testlrgcd")}
  1322. ]);
  1323. var oParam = {};
  1324. oParam.id = "TXLLJ00104";
  1325. oParam.service = "acptmngtapp.AcptMngt";
  1326. oParam.method = "reqSetBatAcpt";
  1327. oParam.inds = "cond=ds_send_bcnolist datalist=ds_grdbatacpt";
  1328. oParam.outds = "ds_grd_spclist=getspcinfolist ds_barcodeinfo=barcodeinfo ds_dbarcodeinfo=dbarcodeinfo ds_nbarcodeinfo=nbarcodeinfo";
  1329. oParam.transaction = false;
  1330. oParam.async = false;
  1331. oParam.callback = "cf_TXLLJ00104";
  1332. tranf_submit(oParam);
  1333. }
  1334. }
  1335. function cf_TXLLJ00104(sSvcId, nErrorCode, sErrorMsg) {
  1336. if(nErrorCode < 0) return;
  1337. dsf_makeValue(ds_barcodeinfo,"cntflag","string", "acpt");
  1338. ds_dbarcodeinfo.addColumn("cntflag","string");
  1339. ds_dbarcodeinfo.setColumn(1,"cntflag", "acpt");
  1340. var count2 = ds_barcodeinfo.rowcount;
  1341. var mTF = false;
  1342. var spcTF = false;
  1343. var LCount = 0;
  1344. var MCount = 0;
  1345. var BCount = 0;
  1346. for(i=0; i<count2; i++ ){
  1347. if(ds_barcodeinfo.getColumn(i,"spcacptbarcdprntcnt") >0){
  1348. spcTF = true;
  1349. LCount = 1;
  1350. }
  1351. if(ds_barcodeinfo.getColumn(i,"microbarcdprntcnt") >0){
  1352. mTF = true;
  1353. MCount = 1;
  1354. }
  1355. }
  1356. var prtkind = ds_data_setupinfo.getColumn(0,"prntkind");
  1357. var portnm = ds_data_setupinfo.getColumn(0,"commkind");
  1358. BCount = ds_dbarcodeinfo.rowcount; //분주바코드갯수
  1359. // 접수 바코드 출력
  1360. if(spcTF){
  1361. //alert(model.getValue("/root/main/barcode/barcodeinfo["+i+"]/spcacptbarcdprntcnt"));
  1362. if( (prtkind == "9" && portnm == "01") || (prtkind == "11" && portnm == "01") || prtkind == "10" || prtkind == "2" || prtkind == "6" || prtkind == "7" ){
  1363. lf_LisSpcBarcodePrint2(ds_barcodeinfo,"", 0, BCount);
  1364. }else if(prtkind == "8" ){
  1365. lf_LisSpcBarcodePrint3(ds_barcodeinfo, "",0, BCount);
  1366. }else{
  1367. lf_LisSpcBarcodePrint(ds_barcodeinfo, "", 0, BCount); // 접수 바코드 출력(접수바코드출력노드, 보관검체출력수, 분주바코드 출력수)
  1368. }
  1369. }
  1370. if( prtkind == "2" || prtkind == "6" || prtkind == "7" ){
  1371. lf_LisSpcBarcodePrintB2(ds_dbarcodeinfo,"", LCount, MCount); // 분주 바뀐거 (분주바코드출력노드, 접수 바코드 출력수, 미생물바코드 출력수)
  1372. }else{
  1373. lf_LisSpcBarcodePrintB(ds_dbarcodeinfo,"", LCount, MCount);
  1374. }
  1375. // 미생물 바코드 출력
  1376. if(mTF){
  1377. if( (BCount != 0) || (LCount != 0) ) {
  1378. BCount = 1; //분주바코드가 있거나, 진검바코드가 있을경우 미생물 바코드 portopen 을 하지 않는다.
  1379. } else {
  1380. BCount = 0; //분주바코드, 진검바코드가 모두 없을 경우 portopen을 한다.
  1381. }
  1382. if( prtkind == "2" || prtkind == "6" || prtkind == "7" ){
  1383. lf_LisMicroWorknoSpcBarcodePrint2(ds_barcodeinfo, "", BCount);
  1384. }
  1385. else{
  1386. lf_LisMicroWorknoSpcBarcodePrint(ds_barcodeinfo, "", BCount); // 미생물 작업번호 바코드 출력(출력노드, 분주 또는 진검 바코드여부)
  1387. }
  1388. }
  1389. ds_grd_spclist.clearData();
  1390. ds_grd_detllist.clearData();
  1391. }
  1392. // Urine Volume 등록
  1393. function fSetUrine(Row){
  1394. //
  1395. if(utlf_isNull(Row)){
  1396. Row = ds_grd_spclist.rowcount;
  1397. }
  1398. var bcno = ds_grd_spclist.getColumn(Row,"bcno");
  1399. dsf_createDsRow("ds_hidden"
  1400. , [{col: "bcno" , val: bcno}
  1401. ]);
  1402. var objArg = new Object();
  1403. objArg.arg_ds_hidden = ds_hidden;
  1404. // 검체명 24시간 Urine 일경우 팝업띄워서 등록
  1405. frmf_open("SPLLJ90200","SPLLJ90200", objArg,"","","","","","","","","","M");
  1406. }
  1407. // 검체상세목록 조회
  1408. function fGetSpcDetlList(Ref){
  1409. var rRow = "";
  1410. if(!utlf_isNull(Ref)){ // 자동 상세목록 조회(Ref = 마지막 Row)
  1411. rRow = Ref-1;
  1412. }else{
  1413. rRow = ds_grd_spclist.rowposition;
  1414. }
  1415. ds_send.setColumn(0, "bcno",ds_grd_spclist.getColumn(rRow,"bcno"));
  1416. ds_send.setColumn(0, "spcstat",ds_grd_spclist.getColumn(rRow,"spcstat"));
  1417. ds_send.setColumn(0, "menuparam",frmf_getMenuParam());
  1418. var oParam = {};
  1419. oParam.id = "TRLLJ00101";
  1420. oParam.service = "acptmngtapp.AcptMngt";
  1421. oParam.method = "reqGetDetlListRef";
  1422. oParam.inds = "cond=ds_send";
  1423. oParam.outds = "ds_grd_detllist=getDetlListRef";
  1424. oParam.async = false;
  1425. // oParam.callback = "cf_TRLLJ00101";
  1426. tranf_submit(oParam);
  1427. if(ds_grd_detllist.getColumn(0,"scanyn") == "Y") {
  1428. group3.switch3.case1.btn_formprnt.enable = true;
  1429. group3.switch3.case1.btn_formprnt.text = ds_grd_detllist.getColumn(0,"scrn");
  1430. } else {
  1431. group3.switch3.case1.btn_formprnt.text = ds_grd_detllist.getColumn(0,"scrn");
  1432. group3.switch3.case1.btn_formprnt.enable = false;
  1433. }
  1434. }
  1435. // 검체조회 tab 검체조회
  1436. function fGetSpcListref(flag){
  1437. ds_send.setColumn(0, "refbase",ds_hidden_spcref.getColumn(0,"refbase"));
  1438. ds_send.setColumn(0, "piddd",ds_hidden_spcref.getColumn(0,"piddd"));
  1439. ds_send.setColumn(0, "reffromdd",ds_hidden_spcref.getColumn(0,"reffromdd"));
  1440. ds_send.setColumn(0, "reftodd",ds_hidden_spcref.getColumn(0,"reftodd"));
  1441. ds_send.setColumn(0, "refgbn",ds_hidden_spcref.getColumn(0,"refflag"));
  1442. ds_send.setColumn(0, "pidfromdd",ds_hidden_spcref.getColumn(0,"pidfromdd"));
  1443. ds_send.setColumn(0, "pidtodd",ds_hidden_spcref.getColumn(0,"pidtodd"));
  1444. ds_send.setColumn(0, "execdept",ds_hidden_spcref.getColumn(0,"execdept"));
  1445. ds_send.setColumn(0, "undoacpt",ds_hidden_spcref.getColumn(0,"undoacpt"));
  1446. ds_send.setColumn(0, "genrflag",ds_hidden_spcref.getColumn(0,"genrflag"));
  1447. ds_send.setColumn(0, "detlspcinfoyn",ds_hidden_spcref.getColumn(0,"detlspcinfoyn"));
  1448. if(flag != "P"){
  1449. ds_send.setColumn(0, "page" , "1"); //page처리 20090930 추가
  1450. }
  1451. if((flag == "K") || ((flag == "C") && (!utlf_isNull(ds_hidden_spcref.getColumn(0,"refcnts"))))) { //bcno enter키 누르거나, input 버튼 눌렀을 경우, 접수취소 후 검색어가 있으면 검색어로 조회
  1452. ds_send.setColumn(0, "refcnts", ds_hidden_spcref.getColumn(0,"refcnts"));
  1453. } else { //조회버튼 클릭시
  1454. if(fSetRefFromdd()==true){
  1455. ds_send.setColumn(0, "refcnts", "");
  1456. ds_send.setColumn(0, "flag", "1");
  1457. }
  1458. }
  1459. var tmpPage = ds_send.getColumn(0,"page");
  1460. group3.switch3.case2.group_page.opt_last.value = "";
  1461. trace(ds_send.saveXML());
  1462. var oParam = {};
  1463. oParam.id = "TRLLJ00103";
  1464. oParam.service = "acptmngtapp.AcptMngt";
  1465. oParam.method = "reqGetSpcListRef";
  1466. oParam.inds = "cond=ds_send";
  1467. oParam.outds = "ds_grd_spcreflist=getspclistref ds_page=page";
  1468. oParam.async = false;
  1469. oParam.callback = "cf_TRLLJ00103";
  1470. tranf_submit(oParam);
  1471. }
  1472. function cf_TRLLJ00103(sSvcId, nErrorCode, sErrorMsg) {
  1473. if(nErrorCode < 0) return;
  1474. fSetSpcRefList(); //상세조회 여부에 따른 컬럼 Hidden
  1475. if(group3.switch3.case2.group5.chk_detlspcinfoyn.value == 1 && parseInt(ds_page.getColumn(0,"lastpage")) > 1){
  1476. group3.switch3.case2.group_page.visible = true;
  1477. group3.switch3.case2.group_page.opt_last.value = ds_page.getColumn(0,"lastpage");
  1478. }else{
  1479. group3.switch3.case2.group_page.visible = false;
  1480. }
  1481. }
  1482. // 부적합검체등록
  1483. function fSetBadSpc(){
  1484. if(group3.switch3.tabindex==0){ //접수
  1485. if(ds_grd_spclist.rowcount > 0){
  1486. var bcno = ds_grd_spclist.getColumn(ds_grd_spclist.rowposition,"bcno");
  1487. }
  1488. }else if(group3.switch3.tabindex==1){ //조회
  1489. if(ds_grd_spcreflist.rowcount > 0){
  1490. var bcno = ds_grd_spcreflist.getColumn(ds_grd_spcreflist.rowposition,"bcno");
  1491. }
  1492. }
  1493. dsf_createDsRow("ds_hidden"
  1494. , [{col: "bcno" , val: bcno}
  1495. ]);
  1496. var objArg = new Object();
  1497. objArg.arg_ds_hidden = ds_hidden;
  1498. // 검체명 24시간 Urine 일경우 팝업띄워서 등록
  1499. frmf_modal("SPLLJ90100","SPLLJ90100", objArg,"","","","","","","","","","M");
  1500. }
  1501. // 채혈접수취소등록
  1502. function fSetAcptCncl(){
  1503. if(ds_grd_spcreflist.rowposition < 0 ){
  1504. sysf_messageBox("선택된 검체가 없습니다. 검체를 ", "C002"); // 선택하십시오!
  1505. return;
  1506. }
  1507. var find = ds_grd_spcreflist.findRow("chk","Y");
  1508. if(find < 0) {
  1509. sysf_messageBox("선택된 검체가 없습니다. 검체를 ", "C002"); // 선택하십시오!
  1510. return;
  1511. }
  1512. if(utlf_transNullToEmpty(ds_grd_spcreflist.getColumn(find,"bcno")).substr(0, 1) == "G") {
  1513. sysf_messageBox("헌혈 검체는 취소", "E001"); //헌혈검체는 취소할 수 없습니다.
  1514. return;
  1515. }
  1516. if(ds_grd_spcreflist.getColumn(find,"spcstat") != "4-") {
  1517. sysf_messageBox("접수상태가 아니라 접수취소를", "E001") //할 수 없습니다.
  1518. return;
  1519. }
  1520. dsf_createDsRow("ds_hidden_canceldata"
  1521. , [{col: "data1" , val: ds_grd_spcreflist.getColumn(ds_grd_spcreflist.rowposition,"bcno")}
  1522. , {col: "data2" , val: "02"}
  1523. ]);
  1524. var objArg = new Object();
  1525. objArg.arg_ds_hidden_openerdata = ds_hidden_canceldata;
  1526. frmf_modal("SPLLC90400","SPLLC90400", objArg,"","","","","","","","","","M");
  1527. }
  1528. //프린터 설정
  1529. function fSetPrint() {
  1530. var count = ds_barcdprntsetup.rowcount;
  1531. var objArg = new Object();
  1532. objArg.arg_sSetupInfo = ds_barcdprntsetup.getColumn(0,"prntsetupinfo");
  1533. objArg.arg_sCallBackFunction = "lf_convertXmlToDs";
  1534. frmf_modal("SPLLC90100","SPLLC90100",objArg,"","","","","","","","","","M");
  1535. //open("SPLLC90100_바코드프린터설정.xrw", "", "", "", "", "/root/main/barcdprntsetup/prntsetupinfo/setupinfo", "/root/main/barcdprntsetup/prntsetupinfo/setupinfo");
  1536. }
  1537. // 스위치에 따라 버튼 보이기
  1538. function fbuttonvisible(ref){
  1539. // 검체접수
  1540. if(ref == "A"){
  1541. }
  1542. // 검체조회
  1543. else if(ref == "B"){
  1544. group4.group7.visible = true;
  1545. group3.checkbox4.visible = false;
  1546. }
  1547. }
  1548. // 접수 시 바코드 출력
  1549. function fExeBarcdPrnt(){
  1550. var BCount = 0; //분주바코드
  1551. var LCount = 0; //진검바코드
  1552. var MCount = 0; //미생물 바코드
  1553. var spcTF = false;
  1554. var mTF = false;
  1555. // 2007-10-14 수정
  1556. ds_barcodeinfo.addColumn("cntflag","string");
  1557. ds_barcodeinfo.addRow();
  1558. ds_barcodeinfo.setColumn(0,"cntflag", "acpt");
  1559. var count = ds_barcodeinfo.rowcount;
  1560. for(i=0; i<count; i++ ){
  1561. if(ds_barcodeinfo.getColumn(i,"spcacptbarcdprntcnt") >0){
  1562. ds_barcodeinfo.setColumn(i,"tclslblnmlist", ds_barcodeinfo.getColumn(i,"tclsnmlist"));
  1563. spcTF = true;
  1564. LCount = 1;
  1565. }else{
  1566. ds_barcodeinfo.deleteRow(i);;
  1567. i--;
  1568. count--;
  1569. }
  1570. if(ds_barcodeinfo.getColumn(i,"microbarcdprntcnt") >0){
  1571. mTF = true;
  1572. MCount = 1;
  1573. }
  1574. }
  1575. BCount = ds_dbarcodeinfo.rowcount;//분주바코드 갯수
  1576. var prtkind = ds_data_setupinfo.getColumn(0,"prntkind");
  1577. var portnm = ds_data_setupinfo.getColumn(0,"commkind");
  1578. // 접수 바코드 출력
  1579. if(spcTF){
  1580. if( (prtkind == "9" && portnm == "01") || (prtkind == "11" && portnm == "01") || prtkind == "10" || prtkind == "2" || prtkind == "6" || prtkind == "7" ){ // sato
  1581. lf_LisSpcBarcodePrint2(ds_barcodeinfo,"", 0, BCount);// 접수 바코드 출력 //fLisSpcBarcodePrint(출력노드, 오픈을 위해 0셋팅, 분주바코드갯수)
  1582. }else if(prtkind == "8" ){ // b472
  1583. lf_LisSpcBarcodePrint3(ds_barcodeinfo,"", 0, BCount);
  1584. }else{ // zebra ...
  1585. lf_LisSpcBarcodePrint(ds_barcodeinfo,"", 0, BCount);// 접수 바코드 출력 //fLisSpcBarcodePrint(출력노드, 오픈을 위해 0셋팅, 분주바코드갯수)
  1586. }
  1587. }
  1588. ds_dbarcodeinfo.setColumn(1,"cntflag", "acpt");
  1589. if( prtkind == "2" || prtkind == "6" || prtkind == "7"){
  1590. lf_LisSpcBarcodePrintB2(ds_dbarcodeinfo,"", LCount, MCount); // 분주(출력노드, 진검바코드여부, 미생물바코드여부)
  1591. }else{
  1592. lf_LisSpcBarcodePrintB(ds_dbarcodeinfo,"", LCount, MCount); // 분주(출력노드, 진검바코드여부, 미생물바코드여부)
  1593. }
  1594. // 미생물 바코드 출력
  1595. if(mTF){
  1596. if((BCount != 0) || (LCount != 0) ){ //분주 바코드가 있거나 진검 바코드가 있을 경우 portopen을 하지 않는다.
  1597. BCount = 1;
  1598. } else {
  1599. BCount = 0; //분주바코드, 진검바코드 모두 없을 경우 portopen을 하기 위해 셋팅.
  1600. }
  1601. if( prtkind == "2" || prtkind == "6" || prtkind == "7"){ // sato
  1602. lf_LisMicroWorknoSpcBarcodePrint2(ds_barcodeinfo,"", BCount);
  1603. }else{ // 기타바코드 zebra...
  1604. //alert("여의도 일까요 " + getUserInfo("dutplceinstcd"));
  1605. lf_LisMicroWorknoSpcBarcodePrint(ds_barcodeinfo,"", BCount); // 미생물 작업번호 바코드 출력(출력노드, 분주 또는 진검 바코드여부)
  1606. }
  1607. return;
  1608. }
  1609. }
  1610. // 대분류콤보 선택시
  1611. function fSetTLrgCd() {
  1612. var etc = ds_hidden_spcacpt.getColumn(0,"testlrgcd");
  1613. if(etc == "00"){
  1614. ds_init_lb0106.filter("");
  1615. ds_hidden_spcacpt.setColumn(0,"testmdlcd" , "00");
  1616. }
  1617. else{
  1618. ds_hidden_spcacpt.setColumn(0,"testmdlcd" , "00");
  1619. ds_init_lb0106.filter("cd== '00' || etc01 =='"+ etc +"'");
  1620. }
  1621. }
  1622. function fSetTLrgCd2() {
  1623. var etc = ds_hidden_spcref.getColumn(0,"lrgexecdept");
  1624. //alert(etc);
  1625. if(etc == "00"){
  1626. ds_init_lb0106.filter("");
  1627. ds_hidden_spcref.setColumn(0,"execdept" , "00");
  1628. }
  1629. else{
  1630. ds_hidden_spcref.setColumn(0,"execdept" , "00");
  1631. ds_init_lb0106.filter("cd== '00' || etc01=='"+ etc +"'");
  1632. }
  1633. }
  1634. //특수검사 조회
  1635. function fGetSpclTestList() {
  1636. ds_data_getspcltestlist.clearData();
  1637. dsf_makeValue(ds_send,"acptsdd","string", utlf_getCurrentDate());
  1638. dsf_makeValue(ds_send,"acptedd","string", utlf_getCurrentDate());
  1639. dsf_makeValue(ds_send,"spcltestgrup","string", "00");
  1640. dsf_makeValue(ds_send,"seqsno", "string", "00000");
  1641. dsf_makeValue(ds_send,"seqeno", "string", "99999");
  1642. dsf_makeValue(ds_send,"userdeptflagcd", "string", ds_init_lb0000.getColumn(0,"nm"));
  1643. dsf_makeValue(ds_send,"refflag","string", "1");
  1644. dsf_makeValue(ds_send,"spcchoiyn","string", "1");
  1645. //model.makeValue("/root/send/bcno", model.getValue("/root/main/spclist/bcno"));
  1646. dsf_makeValue(ds_send,"bcno","string", ds_hidden_spcacpt.getColumn(0,"bcno"));
  1647. var oParam = {};
  1648. oParam.id = "TRLRP00701";
  1649. oParam.service = "refprintmngtapp.SpecialTestRefPrintMngt";
  1650. oParam.method = "reqGetSpclTestList";
  1651. oParam.inds = "cond=ds_send";
  1652. oParam.outds = "ds_data_getspcltestlist=getSpclTestList";
  1653. oParam.async = false;
  1654. //oParam.callback = "cf_TRLRP00701";
  1655. tranf_submit(oParam);
  1656. lf_convertXmlToDs(ds_data_getspcltestlist.getColumn(0,"reqcnts"));
  1657. }
  1658. //특수검사 의뢰서 출력
  1659. function fPrint(find){
  1660. dsf_createDs("ds_hidden_report");
  1661. //model.removeNodeset("/root/main/rslt");
  1662. //model.removeNodeset("/root/main/cf");
  1663. //골수 결과
  1664. if(ds_data_inptitem01.getColumn(find,"initial") == "Initial") {
  1665. ds_data_inptitem01.setColumn(find,"initial", "Initial");
  1666. } else if(ds_data_inptitem01.getColumn(find,"fu") == "F/U") {
  1667. ds_data_inptitem01.setColumn(find,"initial", "F/U");
  1668. } else if(ds_data_inptitem01.getColumn(find,"others") == "Others") {
  1669. ds_data_inptitem01.setColumn(find,"initial", "Others");
  1670. }
  1671. dsf_copyColInfo(ds_hidden_report,ds_data_getspcltestlist);
  1672. ds_hidden_report.addRow();
  1673. ds_hidden_report.copyRow(0,ds_data_getspcltestlist,find);
  1674. //dsf_copycopyNodeListType("/root/hidden/report", "/root/main/getspcltestlist["+ find +"]", "after");
  1675. dsf_makeValue(ds_send,"pid","string", ds_data_getspcltestlist.getColumn(find,"pid"));
  1676. dsf_makeValue(ds_send,"instcd","string", sysf_getUserInfo("dutplceinstcd"));
  1677. //model.makeValue("/root/send/instcd", "012");
  1678. var oParam = {};
  1679. oParam.id = "TRLRP00703";
  1680. oParam.service = "refprintmngtapp.SpecialTestRefPrintMngt";
  1681. oParam.method = "reqGetRslt";
  1682. oParam.inds = "cond=ds_send";
  1683. oParam.outds = "ds_data_rslt=getRslt ds_data_cf=getCFRslt";
  1684. oParam.async = false;
  1685. // oParam.callback = "cf_TRLRP00703";
  1686. tranf_submit(oParam);
  1687. //CBC 검사결과
  1688. dsf_createDs("ds_report_rbc");
  1689. ds_report_rbc.addColumn("tcls","string");
  1690. ds_report_rbc.addColumn("rslt","string");
  1691. ds_report_rbc.addColumn("tcls2","string");
  1692. ds_report_rbc.addColumn("rslt2","string");
  1693. var count = ds_data_rslt.rowcount - 1;
  1694. var tclslist = "";
  1695. var rsltlist = "";
  1696. var tclslist2 = "";
  1697. var rsltlist2 = "";
  1698. var tcls = "";
  1699. for(j = 0; j <= count; j++) {
  1700. tcls = ds_data_rslt.getColumn(j,"tclscd");
  1701. if(tcls.substr(3, 3) != "105") {
  1702. tclslist = tclslist + ds_data_rslt.getColumn(j,"tclsnm") + "\n";
  1703. rsltlist = rsltlist + ds_data_rslt.getColumn(j,"reptrslt") + "\n";
  1704. } else if(tcls.substr(3, 3) == "105") {
  1705. tclslist2 = tclslist2 + ds_data_rslt.getColumn(j,"tclsnm") + "\n";
  1706. rsltlist2 = rsltlist2 + ds_data_rslt.getColumn(j,"reptrslt") + "\n";
  1707. }
  1708. }
  1709. var nRow = ds_report_rbc.addRow();
  1710. ds_report_rbc.setColumn(nRow,"tcls", tclslist);
  1711. ds_report_rbc.setColumn(nRow,"rslt", rsltlist);
  1712. ds_report_rbc.setColumn(nRow,"tcls2", tclslist2);
  1713. ds_report_rbc.setColumn(nRow,"rslt2", rsltlist2);
  1714. ds_report_rbc.setColumn(nRow,"tm");
  1715. ds_report_rbc.setColumn(nRow,"tm", ds_data_rslt.getColumn(count,"lastreptdt"));
  1716. var count = ds_data_cf.rowcount - 1;
  1717. // for(j = 0; j <=count; j++) {
  1718. // model.makeNode("/root/hidden/report/getspcltestlist/cf["+ j +"]");
  1719. //
  1720. // copyNodeType("/root/hidden/report/getspcltestlist/cf["+ j +"]", "/root/main/cf["+ j +"]");
  1721. // }
  1722. dsf_makeValue(ds_send,"spccd","string", ds_data_getspcltestlist.getColumn(find,"spccd"));
  1723. dsf_makeValue(ds_send,"prcpgenrflag", "string", ds_data_getspcltestlist.getColumn(find,"prcpgenrflag"));
  1724. dsf_makeValue(ds_send,"bcno", "string", ds_data_getspcltestlist.getColumn(find,"bcno"));
  1725. var oParam = {};
  1726. oParam.id = "TRLRP00702";
  1727. oParam.service = "refprintmngtapp.SpecialTestRefPrintMngt";
  1728. oParam.method = "reqGetDetlTestList";
  1729. oParam.inds = "cond=ds_send";
  1730. oParam.outds = "ds_detltestlist=getDetlTestList";
  1731. oParam.async = false;
  1732. //oParam.callback = "cf_TRLRP00702";
  1733. tranf_submit(oParam);
  1734. dsf_makeValue(ds_hidden_report,"termengnm","string",ds_detltestlist.getColumn(0,"termengnm"));
  1735. var flag = ds_hidden_report.getColumn(0,"reqfrmcd");
  1736. }
  1737. // 조회일자 3일 이전으로 못가게 막기
  1738. function fSetRefFromdd(){
  1739. var todd = utlf_transNullToEmpty(ds_hidden_spcref.getColumn(0,"reftodd"));
  1740. var mDate = todd.toDate("YYYYMMDD").getAddDate(-3);
  1741. var fromdd = ds_hidden_spcref.getColumn(0,"reffromdd");
  1742. if( mDate.getDateFormat("YYYYMMDD") > fromdd){
  1743. sysf_messageBox("환자개별 조회 이외의 검색구간은 최대 3일까지","E008");
  1744. var mr = sysf_messageBox("최대 3일 조회","S001"); //메세지에서 선택한 값.
  1745. if(mr == "6") {
  1746. ds_hidden_spcref.setColumn(0,"reffromdd", mDate.getDateFormat("YYYYMMDD"));
  1747. ds_send.setColumn(0,"reffromdd", ds_hidden_spcref.getColumn(0,"reffromdd"));
  1748. return true;
  1749. } else if(mr == "2") {
  1750. return false;
  1751. }else {
  1752. return true;
  1753. }
  1754. }else if(todd < fromdd){
  1755. alert("기간설정이 잘못 되었습니다.");
  1756. return false;
  1757. }else{
  1758. return true;
  1759. }
  1760. }
  1761. // 검체목록출력
  1762. function fExePrint(){
  1763. //model.removeNodeset("/root/hidden/report");
  1764. dsf_createDs("ds_report_spclistref");
  1765. if(ds_grd_spcreflist.rowcount = 0){
  1766. sysf_messageBox("출력할", "E013");
  1767. return;
  1768. }
  1769. var prtrow = 0;
  1770. for(i=0; i< ds_grd_spcreflist.rowcount; i++){
  1771. if(ds_grd_spcreflist.getColumn(i,"chk")=="Y"){
  1772. dsf_copyColInfo(ds_report_spclistref,ds_grd_spclist);
  1773. prtrow = ds_report_spclistref.addRow();
  1774. ds_report_spclistref.copyRow(0,ds_grd_spclist,i);
  1775. ds_report_spclistref.setColumn(prtrow,"spcstat", group3.switch3.case2.grd_spcreflist.getCellText(i,12));
  1776. }
  1777. }
  1778. if(prtrow = 0){
  1779. sysf_messageBox("출력할", "E013");
  1780. return;
  1781. }
  1782. //exeReportPreview("RPLLJ00100", "XMLSTR");
  1783. var objDOM = rptf_createDOM(); // DOM 객체 설정
  1784. rptf_setNodeListToDOM(objDOM, "/root/hidden/report/spclistref", ds_report_spclistref); // 데이터셋 1
  1785. var objParam = new Object();
  1786. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  1787. rptf_exeReportPreview30(["RPLLJ00100"],[objParam]);
  1788. }
  1789. //상세조회 선택시 검체 목록 컬럼 Hidden 변경
  1790. function fSetSpcRefList(){
  1791. //상세조회
  1792. // if(chk_detlspcinfoyn.value == 1){
  1793. // grd_spcreflist.colHidden(grd_spcreflist.colRef("testcd")) = false;
  1794. // grd_spcreflist.colHidden(grd_spcreflist.colRef("tclsnm")) = false;
  1795. // grd_spcreflist.colHidden(grd_spcreflist.colRef("reptrslt")) = false;
  1796. //
  1797. // for(var Rrow = 1; Rrow < grd_spcreflist.rows ; Rrow++){
  1798. // if(model.getValue("/root/main/spclistref["+Rrow+"]/reptrslt") == "미등록"){
  1799. // grd_spcreflist.cellStyle("color", Rrow, 12, Rrow, 12) = "#EE0000";
  1800. // }else{
  1801. // grd_spcreflist.cellStyle("color", Rrow, 12, Rrow, 12) = "#000000";
  1802. // }
  1803. // }
  1804. //
  1805. //
  1806. // }else{
  1807. //
  1808. // grd_spcreflist.colHidden(grd_spcreflist.colRef("testcd")) = true;
  1809. // grd_spcreflist.colHidden(grd_spcreflist.colRef("tclsnm")) = true;
  1810. // grd_spcreflist.colHidden(grd_spcreflist.colRef("reptrslt")) = true;
  1811. // /* 이재오 추가 20120704 일 */
  1812. // if (rdo_acptdd.value == 3){
  1813. // grd_spcreflist.colHidden(grd_spcreflist.colRef("tsectcd")) = true;
  1814. // grd_spcreflist.colHidden(grd_spcreflist.colRef("workno")) = true;
  1815. // grd_spcreflist.colHidden(grd_spcreflist.colRef("bcno")) = true;
  1816. // grd_spcreflist.colHidden(grd_spcreflist.colRef("testcd")) = true;
  1817. // grd_spcreflist.colHidden(grd_spcreflist.colRef("tclsnm")) = true;
  1818. // grd_spcreflist.colHidden(grd_spcreflist.colRef("spcnm")) = true;
  1819. // grd_spcreflist.colHidden(grd_spcreflist.colRef("spcltestseq")) = true;
  1820. //
  1821. // }else{
  1822. // grd_spcreflist.colHidden(grd_spcreflist.colRef("tsectcd")) = false;
  1823. // grd_spcreflist.colHidden(grd_spcreflist.colRef("workno")) = false;
  1824. // grd_spcreflist.colHidden(grd_spcreflist.colRef("bcno")) = false;
  1825. // grd_spcreflist.colHidden(grd_spcreflist.colRef("testcd")) = false;
  1826. // grd_spcreflist.colHidden(grd_spcreflist.colRef("tclsnm")) = false;
  1827. // grd_spcreflist.colHidden(grd_spcreflist.colRef("spcnm")) = false;
  1828. // grd_spcreflist.colHidden(grd_spcreflist.colRef("spcltestseq")) = false;
  1829. // }
  1830. // /* 이재오 추가 20120704 일 */
  1831. // }
  1832. //
  1833. }
  1834. //페이지 버튼에따라 처리
  1835. function fSetPage(pVal){
  1836. //pVal = 1:맨처음, 2:이전, 3:다음, 4:맨끝 page로..
  1837. var vFPage = parseInt(ds_send.getColumn(0,"page"));
  1838. //model.setValue("/root/main/page/lastpage", 10); //test
  1839. var vLPage = parseInt(group3.switch3.case2.group_page.opt_last.value);
  1840. if(pVal == "1"){
  1841. if(vFPage != 1){
  1842. ds_send.setColumn(0,"page", 1);
  1843. }else{
  1844. return;
  1845. }
  1846. }else if(pVal == "2"){
  1847. if(vFPage != 1){
  1848. vFPage -= 1;
  1849. ds_send.setColumn(0,"page", vFPage);
  1850. }else{
  1851. return;
  1852. }
  1853. }else if(pVal == "3"){
  1854. if(vFPage < vLPage){
  1855. vFPage += 1;
  1856. ds_send.setColumn(0,"page", vFPage);
  1857. }else{
  1858. return;
  1859. }
  1860. }else if(pVal == "4"){
  1861. if(vLPage != vFPage){
  1862. ds_send.setColumn(0,"page", vLPage);
  1863. }else{
  1864. return;
  1865. }
  1866. }
  1867. fGetSpcListref("P");
  1868. }
  1869. function SMLLJ00110_oninit(obj:Form, e:InitEventInfo)
  1870. {
  1871. frmf_initForm(obj);
  1872. }
  1873. function SMLLJ00110_onload(obj:Form, e:LoadEventInfo)
  1874. {
  1875. // 그리드 전체 선택 기능
  1876. grdf_initGrid(group3.switch3.case1.grd_spclist);
  1877. // 검체접수 tab 선택
  1878. //model.toggle("case2");
  1879. group3.switch3.tabindex = 1;
  1880. // 스위치에 따라 버튼 보이기
  1881. fbuttonvisible("B");
  1882. // 초기정보 조회
  1883. ds_send.setColumn(0,"codeflag", "0102|0106|0104|0111|0000|"); // 0102= 중분류 // 0106=시행부서(검사계) // 0104 대분류 // 0111 계(시행) // 0000 userdeptflag
  1884. dsf_createDsRow("ds_temp_search"
  1885. , [{col: "codeflag", val: "0102|0106|0104|0111|0000|"}]);
  1886. //submit("TRLZZ00101");
  1887. var oParam = {};
  1888. oParam.id = "TRLZZ00101";
  1889. oParam.service = "diagtestapplib.DiagTestBaseInfoMngt";
  1890. oParam.method = "reqGetInitCodeInfo";
  1891. oParam.inds = "cond=ds_temp_search";
  1892. oParam.outds = "ds_init_lb0102=0102 "
  1893. +"ds_init_lb0106=0106 "
  1894. +"ds_init_lb0104=0104 "
  1895. +"ds_init_lb0111=0111 "
  1896. +"ds_init_lb0000=0000 ";
  1897. oParam.async = false;
  1898. tranf_submit(oParam);
  1899. // 노드 초기화
  1900. ds_grd_spclist.clearData();
  1901. ds_grd_detllist.clearData();
  1902. ds_grd_spcreflist.clearData();
  1903. fSetNCnt(); // 핵의학 화면 접수검체갯수 보이기
  1904. // 핵의학
  1905. if( (frmf_getMenuParam()=="N") || (ds_init_lb0000.getColumn(0,"nm")=="N") ){
  1906. ds_hidden_spcacpt.setColumn(0,"testmdlcd", "NR");
  1907. ds_hidden_spcref.setColumn(0,"execdept", "NR");
  1908. ds_init_lb0106.deleteRow(0);
  1909. //model.removenode("/root/init/LB0106[1]"); // 핵의학 -전체- 노드삭제
  1910. }
  1911. var today = utlf_getCurrentDate();
  1912. ds_hidden_spcref.setColumn(0,"reffromdd", today);
  1913. ds_hidden_spcref.setColumn(0,"reftodd", today);
  1914. ds_hidden_spcref.setColumn(0,"pidfromdd", today);
  1915. ds_hidden_spcref.setColumn(0,"pidtodd", today);
  1916. group3.switch3.case2.group5.ipt_text.setFocus();
  1917. ds_send.setColumn(0,"scrnid",frmf_getScreenID());
  1918. var oParam = {};
  1919. oParam.id = "TRLLC90101";
  1920. oParam.service = "diagtestapplib.LisCommon";
  1921. oParam.method = "reqGetSetUpInfo";
  1922. oParam.inds = "scrnid=ds_send";
  1923. oParam.outds = "ds_barcdprntsetup=getSetUpInfo";
  1924. oParam.async = false;
  1925. tranf_submit(oParam); // 20090617 SATO 관련 추가
  1926. lf_convertXmlToDs(ds_barcdprntsetup.getColumn(0,"prntsetupinfo"));
  1927. lzzfMakeBrcdPrntObjHanDo("CommAX");
  1928. appf_delPatientInfos(); //환자정보 전체 삭제
  1929. }
  1930. function group3_switch3_case1_group2_ipt_bcno_onkeydown(obj:Edit, e:KeyEventInfo)
  1931. {
  1932. if(e.keycode == 13)
  1933. {
  1934. ds_hidden_spcacpt.setColumn(0,"bcno", (obj.value).toUpperCase());
  1935. //fSetSpcAcpt();
  1936. fsetBCNOEnter();
  1937. if(utlf_isNull(ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1,"Msg"))){
  1938. fGetSpclTestList();
  1939. var count = ds_data_getspcltestlist.rowcount ;
  1940. var spc = ds_grd_spclist.rowcount;
  1941. if(count > 0 ) {
  1942. for(var jki = 0; jki < count; jki++) {
  1943. if(ds_grd_spclist.getColumn(spc-1,"bcno") == ds_data_getspcltestlist.getColumn(jki,"bcno")) {
  1944. //alert(getUserInfo("dutplceinstcd"));
  1945. var i = "";
  1946. var row = ds_grd_detllist.rowcount;
  1947. if(sysf_getUserInfo("dutplceinstcd") != "011") {
  1948. fPrint(jki);
  1949. }else if(sysf_getUserInfo("dutplceinstcd") == "011"){
  1950. for (i = 0; i < row-1; i++){
  1951. if(ds_grd_detllist.getColumn(i,"tclscd") == "LHR114"){
  1952. var bbb = "1";
  1953. break;
  1954. }
  1955. }
  1956. if(bbb != "1") {
  1957. fPrint(jki);
  1958. }
  1959. }
  1960. }
  1961. }
  1962. }
  1963. }
  1964. obj.setFocus(); //20090422 김성희 추가 : 세포유전 출력물 출력후 포커스 아웃 현상 발생하여 수정
  1965. }
  1966. }
  1967. function group3_switch3_case2_group5_ipt_text_onkeydown(obj:Edit, e:KeyEventInfo)
  1968. {
  1969. if(e.keycode == 13)
  1970. {
  1971. if ( obj.value.length > 11 ){
  1972. var a1 = (obj.value).toUpperCase();
  1973. var a2 = "20" + a1.substr(0,8) + "0" + a1.substr(8,4);
  1974. obj.value = a2 ;
  1975. }
  1976. if(!utlf_isNull(obj.value)) {
  1977. ds_hidden_spcref.setColumn(0,"refcnts", (obj.value).toUpperCase());
  1978. fGetSpcListref("K");
  1979. var afnodecount = ds_datagrid1.rowcount;
  1980. // alert(afnodecount);
  1981. // debugger;
  1982. if(afnodecount > 0 ) {
  1983. var prtrow = ds_datagrid1.addRow();
  1984. ds_datagrid1.copyRow(prtrow,ds_grd_spcreflist,0);
  1985. }
  1986. } else {
  1987. sysf_messageBox("검색어를", "C001");
  1988. }
  1989. }
  1990. }
  1991. function ds_grd_spclist_oncolumnchanged(obj:Dataset, e:DSColChangeEventInfo)
  1992. {
  1993. if(e.columnid == "chk")
  1994. {
  1995. obj.setColumn(e.row,e.columnid,(e.newvalue=="Y"||e.newvalue==1)?"true":"false");
  1996. }
  1997. }
  1998. function group4_group7_btn_spclist_onclick(obj:Button, e:ClickEventInfo)
  1999. {
  2000. fExePrint();
  2001. }
  2002. function group4_btn_prnt_onclick(obj:Button, e:ClickEventInfo)
  2003. {
  2004. fSetPrint();
  2005. }
  2006. function group3_switch3_case2_group5_btn_init_onclick(obj:Button, e:ClickEventInfo)
  2007. {
  2008. ds_grd_spcreflist.clearData();
  2009. ds_datagrid1.clearData();
  2010. }
  2011. function group3_switch3_case2_group5_cmb_refgbn_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  2012. {
  2013. var cmb_value = obj.value;
  2014. if(cmb_value == "1"){
  2015. group3.switch3.case2.group5.caption12.visible = true;
  2016. group3.switch3.case2.group5.caption4.visible = true;
  2017. group3.switch3.case2.group5.input1.visible = true;
  2018. group3.switch3.case2.group5.input2.visible = true;
  2019. group3.switch3.case2.group5.checkbox6.visible = true;
  2020. }else{
  2021. group3.switch3.case2.group5.caption12.visible = false;
  2022. group3.switch3.case2.group5.caption4.visible = false;
  2023. group3.switch3.case2.group5.input1.visible = false;
  2024. group3.switch3.case2.group5.input2.visible = false;
  2025. group3.switch3.case2.group5.checkbox6.visible = false;
  2026. }
  2027. }
  2028. function group3_switch3_case2_group5_btn_ref_onclick(obj:Button, e:ClickEventInfo)
  2029. {
  2030. fGetSpcListref();
  2031. }
  2032. function group3_switch3_case2_group5_button1_onclick(obj:Button, e:ClickEventInfo)
  2033. {
  2034. ds_datagrid1.deleteRow(ds_datagrid1.rowposition);
  2035. ds_grd_spcreflist.deleteRow(ds_grd_spcreflist.rowposition);
  2036. }
  2037. function group3_switch3_case2_btn_excel_onclick(obj:Button, e:ClickEventInfo)
  2038. {
  2039. grdf_exportExcel(group3.switch3.case2.datagrid1, "save", "", false, "", "user", false);
  2040. }
  2041. function group3_switch3_onchanged(obj:Tab, e:TabIndexChangeEventInfo)
  2042. {
  2043. if(e.postindex == 0)
  2044. {
  2045. fbuttonvisible("A");
  2046. }
  2047. else
  2048. {
  2049. fbuttonvisible("B");
  2050. }
  2051. }
  2052. function group3_switch3_case2_group_page_btn_np_onclick(obj:Button, e:ClickEventInfo)
  2053. {
  2054. fSetPage("3");
  2055. }
  2056. function group3_switch3_case2_group_page_ntn_nl_onclick(obj:Button, e:ClickEventInfo)
  2057. {
  2058. fSetPage("4");
  2059. }
  2060. function group3_switch3_case2_group_page_btn_pp_onclick(obj:Button, e:ClickEventInfo)
  2061. {
  2062. fSetPage("2");
  2063. }
  2064. function group3_switch3_case2_group_page_btn_pf_onclick(obj:Button, e:ClickEventInfo)
  2065. {
  2066. fSetPage("1");
  2067. }
  2068. function group3_switch3_case1_btn_urine_onclick(obj:Button, e:ClickEventInfo)
  2069. {
  2070. fSetUrine();
  2071. }
  2072. function group3_switch3_case1_group2_cmb_TLrgCd_onitemchanged(obj:Combo, e:ItemChangeEventInfo)
  2073. {
  2074. fSetTLrgCd();
  2075. }
  2076. function group3_switch3_case1_group2_chk_spcchoi_onchanged(obj:CheckBox, e:CheckBoxChangeEventInfo)
  2077. {
  2078. ds_grd_spclist.clearData();
  2079. ds_grd_detllist.clearData();
  2080. }
  2081. function group3_switch3_case1_grd_spclist_oncellclick(obj:Grid, e:GridClickEventInfo)
  2082. {
  2083. var col = e.col;
  2084. // 체크박스(1), 검체별특이사항(10) col 제외
  2085. if(col != 1){
  2086. // 검체상세목록 조회
  2087. var grow = "";
  2088. fGetSpcDetlList(grow);
  2089. }
  2090. }
  2091. function group3_switch3_case2_group5_btn_search_onclick(obj:Button, e:ClickEventInfo)
  2092. {
  2093. var obj = group3.switch3.case2.group5.ipt_text;
  2094. if(obj.length > 11 )
  2095. {
  2096. var a1 = (obj.value).toUpperCase();
  2097. var a2 = "20" + a1.substr(0,8) + "0" + a1.substr(8,4);
  2098. obj.value = a2 ;
  2099. }
  2100. if(!utlf_isNull(obj.value))
  2101. {
  2102. ds_hidden_spcref.setColumn(0,"refcnts", (obj.value).toUpperCase());
  2103. fGetSpcListref("K");
  2104. var afnodecount = ds_datagrid1.rowcount;
  2105. if(afnodecount > 0 )
  2106. {
  2107. var prtrow = ds_datagrid1.addRow();
  2108. ds_datagrid1.copyRow(prtrow,ds_grd_spcreflist,0);
  2109. }
  2110. }
  2111. else
  2112. {
  2113. sysf_messageBox("검색어를", "C001");
  2114. }
  2115. }
  2116. function group3_switch3_case1_group2_btn_search_onclick(obj:Button, e:ClickEventInfo)
  2117. {
  2118. var obj = group3.switch3.case1.group2.ipt_bcno;
  2119. ds_hidden_spcacpt.setColumn(0,"bcno", (obj.value).toUpperCase());
  2120. fsetBCNOEnter();
  2121. if(utlf_isNull(ds_grd_spclist.getColumn(ds_grd_spclist.rowcount-1,"Msg")))
  2122. {
  2123. fGetSpclTestList();
  2124. var count = ds_data_getspcltestlist.rowcount ;
  2125. var spc = ds_grd_spclist.rowcount;
  2126. if(count > 0 )
  2127. {
  2128. for(var jki = 0; jki < count; jki++)
  2129. {
  2130. if(ds_grd_spclist.getColumn(spc-1, "bcno") == ds_data_getspcltestlist.getColumn(jki,"bcno"))
  2131. {
  2132. var i = "";
  2133. var row = ds_grd_detllist.rowcount;
  2134. if(sysf_getUserInfo("dutplceinstcd") != "011")
  2135. {
  2136. fPrint(jki);
  2137. }
  2138. else if(sysf_getUserInfo("dutplceinstcd") == "011")
  2139. {
  2140. for (i = 0; i < row-1; i++)
  2141. {
  2142. if(ds_grd_detllist.getColumn(i,"tclscd") == "LHR114")
  2143. {
  2144. var bbb = "1";
  2145. break;
  2146. }
  2147. }
  2148. if(bbb != "1")
  2149. {
  2150. fPrint(jki);
  2151. }
  2152. }
  2153. }
  2154. }
  2155. }
  2156. }
  2157. }
  2158. ]]></Script>
  2159. </Form>
  2160. </FDL>