SPASI06000_검체시험의뢰서B.xfdl 66 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPASI06000_검체시험의뢰서B" classname="SPASIO6000_검체시험의뢰서B" inheritanceid="" position="absolute 0 0 750 322" titletext="검체시험의뢰서" oninit="SPASI06000_oninit" onload="SPASI06000_onload" name="SPASIO6000_검체시험의뢰서B">
  5. <Layouts>
  6. <Layout>
  7. <Static id="Static00" text="검체시험의뢰서(메르스)" class="tit_1" position="absolute 0 0 170 25"/>
  8. <Div id="grp_main" taborder="1" position="absolute 0 29 750 322">
  9. <Layouts>
  10. <Layout width="750" height="296">
  11. <Static id="caption06" text="인적사항" class="tit_2" position="absolute 0 -1 90 21" anchor="default"/>
  12. <Static id="caption31" text="성명" class="cell_1" position="absolute 0 20 100 43" anchor="default"/>
  13. <Static id="caption32" text="주민등록번호" class="cell_1" position="absolute 0 46 100 69" anchor="default"/>
  14. <Edit id="opt_zipcd1" taborder="22" readonly="false" position="absolute 102 72 150 95" anchor="default" enable="false" tabstop="false"/>
  15. <Edit id="opt_cntcaddr1" taborder="23" readonly="false" position="absolute 102 97 750 120" anchor="default" enable="false" tabstop="false"/>
  16. <Edit id="opt_zipcd2" taborder="24" readonly="false" position="absolute 173 72 221 95" anchor="default" enable="false" tabstop="false"/>
  17. <Static id="caption36" text="성별" class="cell_1" position="absolute 214 20 282 43" anchor="default"/>
  18. <Edit id="opt_patnm" taborder="25" readonly="false" position="absolute 102 20 212 43" anchor="default" enable="false" tabstop="false"/>
  19. <Edit id="opt_rgstno" taborder="26" readonly="false" position="absolute 102 46 182 69" anchor="default" enable="false" tabstop="false"/>
  20. <Edit id="opt_rgstno2" taborder="27" readonly="false" position="absolute 202 46 282 69" anchor="default" enable="false" tabstop="false"/>
  21. <Static id="caption39" text="-" class="search_no_b" position="absolute 186 46 198 69" anchor="default" style="align:center middle;"/>
  22. <Static id="caption40" text="-" class="search_no_b" position="absolute 155 72 167 95" anchor="default" style="align:center middle;"/>
  23. <Static id="caption48" text="주소 및 전화번호" class="cell_1" position="absolute 0 72 100 120" anchor="default"/>
  24. <Shape id="line19" class="line_1" position="absolute 0 16 750 22" anchor="default"/>
  25. <Shape id="line20" class="line_2" position="absolute 0 42 750 48" anchor="default"/>
  26. <Shape id="line21" class="line_3" position="absolute 0 119 750 125" anchor="default"/>
  27. <Shape id="line23" class="line_2" position="absolute 0 68 750 74" anchor="default"/>
  28. <Shape id="line24" linetype="vertical" class="line_2" position="absolute 100 94 750 95" anchor="default"/>
  29. <Static id="caption08" text="연령" class="cell_1" position="absolute 413 20 478 43" anchor="default"/>
  30. <Static id="caption4" text="직업" class="cell_1" position="absolute 568 20 633 43" anchor="default"/>
  31. <Static id="caption5" text="보호자성명( 만 19세 미만인 경우)" class="cell_1" position="absolute 284 46 478 69" anchor="default"/>
  32. <Edit id="ipt_procernm" taborder="1" class="ipt__default" position="absolute 480 46 635 69" anchor="default" autoselect="true"/>
  33. <Static id="caption7" text="전화번호" class="cell_1" position="absolute 285 72 350 95" anchor="default"/>
  34. <Radio id="rdo_sexflag" taborder="29" columncount="2" rowcount="0" codecolumn="codecolumn" datacolumn="datacolumn" enable="false" position="absolute 286 22 401 42" anchor="default" tabstop="false">
  35. <Dataset id="innerdataset">
  36. <ColumnInfo>
  37. <Column id="codecolumn"/>
  38. <Column id="datacolumn"/>
  39. </ColumnInfo>
  40. <Rows>
  41. <Row>
  42. <Col id="codecolumn">M</Col>
  43. <Col id="datacolumn">남</Col>
  44. </Row>
  45. <Row>
  46. <Col id="codecolumn">F</Col>
  47. <Col id="datacolumn">여</Col>
  48. </Row>
  49. </Rows>
  50. </Dataset>
  51. </Radio>
  52. <Edit id="ipt_age" taborder="30" class="ipt__default" enable="false" position="absolute 480 20 566 43" anchor="default" tabstop="false"/>
  53. <Edit id="out_tel" taborder="31" readonly="false" position="absolute 352 72 478 95" anchor="default" enable="false" tabstop="false"/>
  54. <CheckBox id="chk_residncflag" taborder="32" text="거주지불명" position="absolute 480 73 570 93" anchor="default" truevalue="1" falsevalue="0" tabstop="false"/>
  55. <CheckBox id="chk_idflag" taborder="33" text="신원미상" position="absolute 570 73 656 93" anchor="default" truevalue="1" falsevalue="0" tabstop="false"/>
  56. <Combo id="cmb_jobcd" taborder="0" innerdataset="ds_M0149" codecolumn="cdid" datacolumn="cdnm" class="cmb__default" position="absolute 635 20 750 43" anchor="default"/>
  57. <Shape id="line00" class="line_1" position="absolute 0 15 750 21" anchor="default"/>
  58. <Static id="caption00" text="발병일" class="cell_1" position="absolute 0 171 85 194" style="padding:0 0 0 0;align:center middle;" anchor="default"/>
  59. <Static id="caption04" text="검체명" class="cell_1" position="absolute 379 171 464 194" style="padding:0 0 0 0;align:center middle;" anchor="default"/>
  60. <Button id="btn_init" taborder="35" text="초기화" onclick="btn_init_onclick" onlbuttonup="btn_init_onlbuttonup" class="btn4" position="absolute 682 273 750 293" anchor="default" tabstop="false"/>
  61. <Button id="btn_cncl" taborder="36" text="삭제" onclick="btn_cncl_onclick" onlbuttonup="btn_cncl_onlbuttonup" class="btn4" position="absolute 625 273 681 293" anchor="default" tabstop="false"/>
  62. <Button id="btn_save" taborder="37" text="저장" onclick="btn_save_onclick" onlbuttonup="btn_save_onlbuttonup" class="btn4" position="absolute 568 273 624 293" anchor="default" tabstop="false"/>
  63. <Edit id="opt_specimen" taborder="6" position="absolute 466 171 750 194" style="align:left middle;" anchor="default" autoselect="true"/>
  64. <Calendar id="Calendar_collect" taborder="5" position="absolute 277 171 377 194" anchor="default" autoselect="true"/>
  65. <Calendar id="Calendar_occur" taborder="4" position="absolute 87 171 188 194" anchor="default" autoselect="true"/>
  66. <Static id="caption01" text="검체채취일" class="cell_1" position="absolute 190 171 275 194" style="padding:0 0 0 0;align:center middle;" anchor="default"/>
  67. <Static id="caption30" text="작성사항" class="tit_2" position="absolute 1 125 84 147" anchor="default"/>
  68. <Shape id="line01" class="line_1" position="absolute 0 141 750 147" anchor="default"/>
  69. <Static id="caption02" text="분류" class="cell_1" position="absolute 0 146 85 169" style="padding:0 0 0 0;align:center middle;" anchor="default"/>
  70. <CheckBox id="CheckBox_Type_Diagnosis" taborder="43" text="기존 확진환자" position="absolute 87 147 187 167" anchor="default" tabstop="false"/>
  71. <CheckBox id="CheckBox_Type_Contact" taborder="44" text="접촉자" position="absolute 190 147 252 167" anchor="default" tabstop="false"/>
  72. <CheckBox id="CheckBox_Type_Etc" taborder="45" text="기타" position="absolute 251 147 297 167" anchor="default" onclick="grp_main_CheckBox_Type_Etc_onclick" tabstop="false"/>
  73. <Edit id="Editbox_Type_Etc" taborder="2" position="absolute 298 146 377 169" style="align:left middle;" anchor="default" autoselect="true"/>
  74. <Static id="caption03" text="여행력" class="cell_1" position="absolute 379 146 464 169" style="padding:0 0 0 0;align:center middle;" anchor="default"/>
  75. <Edit id="Editbox_Travel" taborder="3" position="absolute 466 146 571 169" style="align:left middle;" anchor="default" autoselect="true"/>
  76. <Static id="caption09" text="주요증상" class="cell_1" position="absolute 0 196 85 219" style="padding:0 0 0 0;align:center middle;" anchor="default"/>
  77. <CheckBox id="CheckBox_Symptom_Heat" taborder="48" text="발열" position="absolute 87 196 133 216" anchor="default" onclick="grp_main_CheckBox_Symptom_Heat_onclick" tabstop="false"/>
  78. <CheckBox id="CheckBox_Symptom_Cough" taborder="49" text="기침" position="absolute 181 196 231 216" anchor="default" tabstop="false"/>
  79. <CheckBox id="CheckBox_Symptom_Breathing" taborder="50" text="호흡곤란" position="absolute 232 196 305 216" anchor="default" tabstop="false"/>
  80. <Edit id="EditBox_Symptom_Heat" taborder="7" position="absolute 132 196 164 219" style="align:center middle;" anchor="default"/>
  81. <Static id="Static00" text="℃" position="absolute 165 197 182 217" style="margin:0 0 0 0;" anchor="default"/>
  82. <CheckBox id="CheckBox_Symptom_Diarrhea" taborder="52" text="설사" position="absolute 378 196 427 216" anchor="default" tabstop="false"/>
  83. <CheckBox id="CheckBox_Symptom_Respiratoryfailure" taborder="53" text="호흡부전" position="absolute 303 196 371 216" anchor="default" tabstop="false"/>
  84. <CheckBox id="CheckBox_Symptom_Etc" taborder="54" text="기타" position="absolute 427 196 476 216" anchor="default" onclick="grp_main_CheckBox_Symptom_Etc_onclick" tabstop="false"/>
  85. <Edit id="EditBox_Symptom_Etc" taborder="8" position="absolute 475 196 750 219" style="align:left middle;" anchor="default" autoselect="true"/>
  86. <Static id="caption10" text="접&#13;&#10;촉&#13;&#10;자" class="cell_1" position="absolute 0 221 30 268" style="margin:0 0 0 0;padding:0 0 0 0;align:center middle;" anchor="default"/>
  87. <Static id="caption11" text="발병이전" class="cell_1" position="absolute 31 221 85 244" style="padding:0 0 0 0;align:center middle;" anchor="default"/>
  88. <Edit id="EditBox_Contact_Etc" taborder="9" position="absolute 492 221 750 244" style="align:left middle;" anchor="default" autoselect="true"/>
  89. <CheckBox id="CheckBox_Contact_Approach" taborder="57" text="확진환자 근접접촉" position="absolute 87 222 210 242" anchor="default" tabstop="false"/>
  90. <Edit id="EditBox_Contact_After" taborder="10" position="absolute 87 245 610 268" style="align:left middle;" anchor="default" autoselect="true"/>
  91. <Static id="Static01" text="※ 발병이후 격리전 접촉자" position="absolute 611 247 745 267" style="margin:0 0 0 0;align:right bottom;font:arial,8;" anchor="default"/>
  92. <Static id="Static02" text="※ 발병 14일 이전 국내외 여행지역" position="absolute 572 147 747 167" style="margin:0 0 0 0;align:left bottom;font:arial,8;" anchor="default"/>
  93. <CheckBox id="CheckBox_Contact_Etc" taborder="60" text="기타 접촉력" position="absolute 405 222 488 242" anchor="default" onclick="grp_main_CheckBox_Contact_Etc_onclick" tabstop="false"/>
  94. <Shape id="line02" class="line_3" position="absolute 0 267 750 273" anchor="default"/>
  95. <Static id="caption12" text="발병이후" class="cell_1" position="absolute 31 245 85 268" style="padding:0 0 0 0;align:center middle;" anchor="default"/>
  96. <CheckBox id="CheckBox_Contact_Hospital" taborder="61" tabstop="false" text="확진환자와 같은 병원 이용" position="absolute 222 222 396 242" anchor="default"/>
  97. </Layout>
  98. </Layouts>
  99. </Div>
  100. <Shape id="line02" class="line_1" position="absolute 0 171 750 177"/>
  101. <Shape id="line03" class="line_1" position="absolute 0 170 750 176"/>
  102. </Layout>
  103. </Layouts>
  104. <Objects>
  105. <Dataset id="ds_main_reptdtinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  106. <Dataset id="ds_M0149" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  107. <ColumnInfo>
  108. <Column id="cdid" type="STRING" size="256"/>
  109. <Column id="cdnm" type="STRING" size="256"/>
  110. </ColumnInfo>
  111. </Dataset>
  112. <Dataset id="ds_main_lglydisinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  113. <ColumnInfo>
  114. <Column id="state" type="STRING" size="256"/>
  115. <Column id="reptdt" type="STRING" size="256"/>
  116. <Column id="reptflag" type="STRING" size="256"/>
  117. <Column id="psnflag" type="STRING" size="256"/>
  118. <Column id="patnm" type="STRING" size="256"/>
  119. <Column id="sexflag" type="STRING" size="256"/>
  120. <Column id="age" type="STRING" size="256"/>
  121. <Column id="job" type="STRING" size="256"/>
  122. <Column id="jobcd" type="STRING" size="256"/>
  123. <Column id="rgstno" type="STRING" size="256"/>
  124. <Column id="rgstno2" type="STRING" size="256"/>
  125. <Column id="procernm" type="STRING" size="256"/>
  126. <Column id="zipcd1" type="STRING" size="256"/>
  127. <Column id="zipcd2" type="STRING" size="256"/>
  128. <Column id="cntcaddr1" type="STRING" size="256"/>
  129. <Column id="cntcaddr2" type="STRING" size="256"/>
  130. <Column id="tel" type="STRING" size="256"/>
  131. <Column id="residncflag" type="STRING" size="256"/>
  132. <Column id="idflag" type="STRING" size="256"/>
  133. <Column id="wrtedt" type="STRING" size="256"/>
  134. <Column id="seqno" type="STRING" size="256"/>
  135. <Column id="pid" type="STRING" size="256"/>
  136. <Column id="lglydiscd" type="STRING" size="256"/>
  137. <Column id="grup4lglydisnewsymp" type="STRING" size="256"/>
  138. <Column id="apntlglydisnm" type="STRING" size="256"/>
  139. <Column id="attackdd" type="STRING" size="256"/>
  140. <Column id="diagdd" type="STRING" size="256"/>
  141. <Column id="dethyn" type="STRING" size="256"/>
  142. <Column id="dethresn" type="STRING" size="256"/>
  143. <Column id="patflag" type="STRING" size="256"/>
  144. <Column id="cnfmsnwtestrslt" type="STRING" size="256"/>
  145. <Column id="estminfcpath" type="STRING" size="256"/>
  146. <Column id="estminfcarea" type="STRING" size="256"/>
  147. <Column id="estminfcareanaticd" type="STRING" size="256"/>
  148. <Column id="stayfromdd" type="STRING" size="256"/>
  149. <Column id="staytodd" type="STRING" size="256"/>
  150. <Column id="chgrept" type="STRING" size="256"/>
  151. <Column id="chgzipcd1" type="STRING" size="256"/>
  152. <Column id="chgzipcd2" type="STRING" size="256"/>
  153. <Column id="chgzipcdseq" type="STRING" size="256"/>
  154. <Column id="chgreptaddr" type="STRING" size="256"/>
  155. <Column id="chgreptaddrdtl" type="STRING" size="256"/>
  156. <Column id="updtreptcnts" type="STRING" size="256"/>
  157. <Column id="indd" type="STRING" size="256"/>
  158. <Column id="cretno" type="STRING" size="256"/>
  159. <Column id="cnclyn" type="STRING" size="256"/>
  160. <Column id="orddeptcd" type="STRING" size="256"/>
  161. <Column id="diagcd" type="STRING" size="256"/>
  162. <Column id="lasthistyn" type="STRING" size="256"/>
  163. <Column id="prcporddeptcd" type="STRING" size="256"/>
  164. <Column id="prcporddd" type="STRING" size="256"/>
  165. <Column id="hngnm" type="STRING" size="256"/>
  166. <Column id="wardnm" type="STRING" size="256"/>
  167. <Column id="wardcd" type="STRING" size="256"/>
  168. <Column id="clispeaoccurdate" type="STRING" size="256"/>
  169. <Column id="clispeagatherdate" type="STRING" size="256"/>
  170. <Column id="clispeaname" type="STRING" size="256"/>
  171. <Column id="clispebtype" type="STRING" size="256"/>
  172. <Column id="clispebtypeetc" type="STRING" size="256"/>
  173. <Column id="clispebtravel" type="STRING" size="256"/>
  174. <Column id="clispebsymptom" type="STRING" size="256"/>
  175. <Column id="clispebsymptometc" type="STRING" size="256"/>
  176. <Column id="clispebcontact" type="STRING" size="256"/>
  177. <Column id="clispebcontactetc" type="STRING" size="256"/>
  178. <Column id="clispebcontactafter" type="STRING" size="256"/>
  179. </ColumnInfo>
  180. <Rows>
  181. <Row>
  182. <Col id="state"/>
  183. <Col id="reptflag"/>
  184. <Col id="psnflag"/>
  185. <Col id="patnm"/>
  186. <Col id="sexflag"/>
  187. <Col id="age"/>
  188. <Col id="job"/>
  189. <Col id="jobcd"/>
  190. <Col id="rgstno"/>
  191. <Col id="rgstno2"/>
  192. <Col id="procernm"/>
  193. <Col id="zipcd1"/>
  194. <Col id="zipcd2"/>
  195. <Col id="cntcaddr1"/>
  196. <Col id="cntcaddr2"/>
  197. <Col id="tel"/>
  198. <Col id="residncflag"/>
  199. <Col id="idflag"/>
  200. <Col id="wrtedt"/>
  201. <Col id="seqno"/>
  202. <Col id="pid"/>
  203. <Col id="lglydiscd"/>
  204. <Col id="grup4lglydisnewsymp"/>
  205. <Col id="apntlglydisnm"/>
  206. <Col id="attackdd"/>
  207. <Col id="diagdd"/>
  208. <Col id="dethyn"/>
  209. <Col id="dethresn"/>
  210. <Col id="patflag"/>
  211. <Col id="cnfmsnwtestrslt"/>
  212. <Col id="estminfcpath"/>
  213. <Col id="estminfcarea"/>
  214. <Col id="estminfcareanaticd"/>
  215. <Col id="stayfromdd"/>
  216. <Col id="staytodd"/>
  217. <Col id="chgrept"/>
  218. <Col id="chgzipcd1"/>
  219. <Col id="chgzipcd2"/>
  220. <Col id="chgzipcdseq"/>
  221. <Col id="chgreptaddr"/>
  222. <Col id="chgreptaddrdtl"/>
  223. <Col id="updtreptcnts"/>
  224. <Col id="indd"/>
  225. <Col id="cretno"/>
  226. <Col id="cnclyn"/>
  227. <Col id="orddeptcd"/>
  228. <Col id="diagcd"/>
  229. <Col id="lasthistyn">Y</Col>
  230. <Col id="prcporddeptcd"/>
  231. <Col id="prcporddd"/>
  232. </Row>
  233. </Rows>
  234. </Dataset>
  235. <Dataset id="ds_main_paminfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  236. <Dataset id="ds_send_reqdata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="false" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  237. <Dataset id="ds_main_getlglydiscdinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  238. <Dataset id="ds_main_getlglydisinfo" firefirstcount="0" firenextcount="0" useclientlayout="true" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  239. <ColumnInfo>
  240. <Column id="state" type="STRING" size="256"/>
  241. <Column id="reptdt" type="STRING" size="256"/>
  242. <Column id="reptflag" type="STRING" size="256"/>
  243. <Column id="psnflag" type="STRING" size="256"/>
  244. <Column id="patnm" type="STRING" size="256"/>
  245. <Column id="sexflag" type="STRING" size="256"/>
  246. <Column id="age" type="STRING" size="256"/>
  247. <Column id="job" type="STRING" size="256"/>
  248. <Column id="jobcd" type="STRING" size="256"/>
  249. <Column id="rgstno" type="STRING" size="256"/>
  250. <Column id="rgstno2" type="STRING" size="256"/>
  251. <Column id="procernm" type="STRING" size="256"/>
  252. <Column id="zipcd1" type="STRING" size="256"/>
  253. <Column id="zipcd2" type="STRING" size="256"/>
  254. <Column id="cntcaddr1" type="STRING" size="256"/>
  255. <Column id="cntcaddr2" type="STRING" size="256"/>
  256. <Column id="tel" type="STRING" size="256"/>
  257. <Column id="residncflag" type="STRING" size="256"/>
  258. <Column id="idflag" type="STRING" size="256"/>
  259. <Column id="wrtedt" type="STRING" size="256"/>
  260. <Column id="seqno" type="STRING" size="256"/>
  261. <Column id="pid" type="STRING" size="256"/>
  262. <Column id="lglydiscd" type="STRING" size="256"/>
  263. <Column id="grup4lglydisnewsymp" type="STRING" size="256"/>
  264. <Column id="apntlglydisnm" type="STRING" size="256"/>
  265. <Column id="attackdd" type="STRING" size="256"/>
  266. <Column id="diagdd" type="STRING" size="256"/>
  267. <Column id="dethyn" type="STRING" size="256"/>
  268. <Column id="dethresn" type="STRING" size="256"/>
  269. <Column id="patflag" type="STRING" size="256"/>
  270. <Column id="cnfmsnwtestrslt" type="STRING" size="256"/>
  271. <Column id="estminfcpath" type="STRING" size="256"/>
  272. <Column id="estminfcarea" type="STRING" size="256"/>
  273. <Column id="estminfcareanaticd" type="STRING" size="256"/>
  274. <Column id="stayfromdd" type="STRING" size="256"/>
  275. <Column id="staytodd" type="STRING" size="256"/>
  276. <Column id="chgrept" type="STRING" size="256"/>
  277. <Column id="chgzipcd1" type="STRING" size="256"/>
  278. <Column id="chgzipcd2" type="STRING" size="256"/>
  279. <Column id="chgzipcdseq" type="STRING" size="256"/>
  280. <Column id="chgreptaddr" type="STRING" size="256"/>
  281. <Column id="chgreptaddrdtl" type="STRING" size="256"/>
  282. <Column id="updtreptcnts" type="STRING" size="256"/>
  283. <Column id="indd" type="STRING" size="256"/>
  284. <Column id="cretno" type="STRING" size="256"/>
  285. <Column id="cnclyn" type="STRING" size="256"/>
  286. <Column id="orddeptcd" type="STRING" size="256"/>
  287. <Column id="diagcd" type="STRING" size="256"/>
  288. <Column id="lasthistyn" type="STRING" size="256"/>
  289. <Column id="prcporddeptcd" type="STRING" size="256"/>
  290. <Column id="prcporddd" type="STRING" size="256"/>
  291. <Column id="hngnm" type="STRING" size="256"/>
  292. <Column id="wardnm" type="STRING" size="256"/>
  293. <Column id="wardcd" type="STRING" size="256"/>
  294. <Column id="clispeaoccurdate" type="STRING" size="256"/>
  295. <Column id="clispeagatherdate" type="STRING" size="256"/>
  296. <Column id="clispeaname" type="STRING" size="256"/>
  297. <Column id="clispebtype" type="STRING" size="256"/>
  298. <Column id="clispebtypeetc" type="STRING" size="256"/>
  299. <Column id="clispebtravel" type="STRING" size="256"/>
  300. <Column id="clispebsymptom" type="STRING" size="256"/>
  301. <Column id="clispebsymptometc" type="STRING" size="256"/>
  302. <Column id="clispebcontact" type="STRING" size="256"/>
  303. <Column id="clispebcontactetc" type="STRING" size="256"/>
  304. <Column id="clispebcontactafter" type="STRING" size="256"/>
  305. <Column id="hospnm" type="STRING" size="256"/>
  306. <Column id="orddr" type="STRING" size="256"/>
  307. <Column id="licnsno" type="STRING" size="256"/>
  308. <Column id="hosaddr1" type="STRING" size="256"/>
  309. <Column id="hosaddr2" type="STRING" size="256"/>
  310. <Column id="etcdeptnm" type="STRING" size="256"/>
  311. <Column id="lglydisnm" type="STRING" size="256"/>
  312. <Column id="jobnm" type="STRING" size="256"/>
  313. <Column id="mpphontel" type="STRING" size="256"/>
  314. <Column id="clamprsdnm" type="STRING" size="256"/>
  315. <Column id="reprtel1" type="STRING" size="256"/>
  316. <Column id="reprfaxno" type="STRING" size="256"/>
  317. <Column id="deptnm" type="STRING" size="256"/>
  318. </ColumnInfo>
  319. <Rows>
  320. <Row>
  321. <Col id="state"/>
  322. <Col id="reptflag"/>
  323. <Col id="psnflag"/>
  324. <Col id="patnm"/>
  325. <Col id="sexflag"/>
  326. <Col id="age"/>
  327. <Col id="job"/>
  328. <Col id="jobcd"/>
  329. <Col id="rgstno"/>
  330. <Col id="rgstno2"/>
  331. <Col id="procernm"/>
  332. <Col id="zipcd1"/>
  333. <Col id="zipcd2"/>
  334. <Col id="cntcaddr1"/>
  335. <Col id="cntcaddr2"/>
  336. <Col id="tel"/>
  337. <Col id="residncflag"/>
  338. <Col id="idflag"/>
  339. <Col id="wrtedt"/>
  340. <Col id="seqno"/>
  341. <Col id="pid"/>
  342. <Col id="lglydiscd"/>
  343. <Col id="grup4lglydisnewsymp"/>
  344. <Col id="apntlglydisnm"/>
  345. <Col id="attackdd"/>
  346. <Col id="diagdd"/>
  347. <Col id="dethyn"/>
  348. <Col id="dethresn"/>
  349. <Col id="patflag"/>
  350. <Col id="cnfmsnwtestrslt"/>
  351. <Col id="estminfcpath"/>
  352. <Col id="estminfcarea"/>
  353. <Col id="estminfcareanaticd"/>
  354. <Col id="stayfromdd"/>
  355. <Col id="staytodd"/>
  356. <Col id="chgrept"/>
  357. <Col id="chgzipcd1"/>
  358. <Col id="chgzipcd2"/>
  359. <Col id="chgzipcdseq"/>
  360. <Col id="chgreptaddr"/>
  361. <Col id="chgreptaddrdtl"/>
  362. <Col id="updtreptcnts"/>
  363. <Col id="indd"/>
  364. <Col id="cretno"/>
  365. <Col id="cnclyn"/>
  366. <Col id="orddeptcd"/>
  367. <Col id="diagcd"/>
  368. <Col id="lasthistyn">Y</Col>
  369. <Col id="prcporddeptcd"/>
  370. <Col id="prcporddd"/>
  371. </Row>
  372. </Rows>
  373. </Dataset>
  374. <Dataset id="ds_P0353" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  375. <ColumnInfo>
  376. <Column id="cdid" type="STRING" size="256"/>
  377. <Column id="cdnm" type="STRING" size="256"/>
  378. </ColumnInfo>
  379. </Dataset>
  380. <Dataset id="ds_A0372" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  381. <ColumnInfo>
  382. <Column id="cdid" type="STRING" size="256"/>
  383. <Column id="cdnm" type="STRING" size="256"/>
  384. </ColumnInfo>
  385. </Dataset>
  386. <Dataset id="ds_main_print" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="false" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  387. </Objects>
  388. <Bind>
  389. <BindItem id="item0" compid="grp_main.opt_patnm" propid="value" datasetid="ds_main_lglydisinfo" columnid="patnm"/>
  390. <BindItem id="item1" compid="grp_main.rdo_sexflag" propid="value" datasetid="ds_main_lglydisinfo" columnid="sexflag"/>
  391. <BindItem id="item2" compid="grp_main.ipt_age" propid="value" datasetid="ds_main_lglydisinfo" columnid="age"/>
  392. <BindItem id="item3" compid="grp_main.cmb_jobcd" propid="value" datasetid="ds_main_lglydisinfo" columnid="jobcd"/>
  393. <BindItem id="item4" compid="grp_main.opt_rgstno" propid="value" datasetid="ds_main_lglydisinfo" columnid="rgstno"/>
  394. <BindItem id="item5" compid="grp_main.opt_rgstno2" propid="value" datasetid="ds_main_lglydisinfo" columnid="rgstno2"/>
  395. <BindItem id="item6" compid="grp_main.ipt_procernm" propid="value" datasetid="ds_main_lglydisinfo" columnid="procernm"/>
  396. <BindItem id="item7" compid="grp_main.opt_zipcd1" propid="value" datasetid="ds_main_lglydisinfo" columnid="zipcd1"/>
  397. <BindItem id="item8" compid="grp_main.opt_zipcd2" propid="value" datasetid="ds_main_lglydisinfo" columnid="zipcd2"/>
  398. <BindItem id="item9" compid="grp_main.out_tel" propid="value" datasetid="ds_main_lglydisinfo" columnid="tel"/>
  399. <BindItem id="item10" compid="grp_main.chk_residncflag" propid="value" datasetid="ds_main_lglydisinfo" columnid="residncflag"/>
  400. <BindItem id="item11" compid="grp_main.chk_idflag" propid="value" datasetid="ds_main_lglydisinfo" columnid="idflag"/>
  401. <BindItem id="item12" compid="grp_main.opt_cntcaddr1" propid="value" datasetid="ds_main_lglydisinfo" columnid="cntcaddr1"/>
  402. <BindItem id="item13" compid="grp_main.Editbox_Type_Etc" propid="value" datasetid="ds_main_lglydisinfo" columnid="clispebtypeetc"/>
  403. <BindItem id="item14" compid="grp_main.Editbox_Travel" propid="value" datasetid="ds_main_lglydisinfo" columnid="clispebtravel"/>
  404. <BindItem id="item15" compid="grp_main.Calendar_occur" propid="value" datasetid="ds_main_lglydisinfo" columnid="attackdd"/>
  405. <BindItem id="item16" compid="grp_main.Calendar_collect" propid="value" datasetid="ds_main_lglydisinfo" columnid="clispeagatherdate"/>
  406. <BindItem id="item17" compid="grp_main.opt_specimen" propid="value" datasetid="ds_main_lglydisinfo" columnid="clispeaname"/>
  407. <BindItem id="item18" compid="grp_main.EditBox_Symptom_Etc" propid="value" datasetid="ds_main_lglydisinfo" columnid="clispebsymptometc"/>
  408. <BindItem id="item19" compid="grp_main.EditBox_Contact_Etc" propid="value" datasetid="ds_main_lglydisinfo" columnid="clispebcontactetc"/>
  409. <BindItem id="item20" compid="grp_main.EditBox_Contact_After" propid="value" datasetid="ds_main_lglydisinfo" columnid="clispebcontactafter"/>
  410. </Bind>
  411. <Script type="xscript4.0"><![CDATA[include "com_commonxp::comm_main.xjs";
  412. var arErrorCode = new HashArray();
  413. function SPASI06000_oninit(obj:Form, e:InitEventInfo)
  414. {
  415. frmf_initForm(obj);
  416. }
  417. /******************************************************************
  418. * Argument :
  419. * Description : 화면초기화
  420. ******************************************************************/
  421. function fInit(){
  422. ds_main_lglydisinfo.setColumn(0, "state", "");//처리구분
  423. ds_main_lglydisinfo.setColumn(0, "wrtedt", "");//작성일자
  424. ds_main_lglydisinfo.setColumn(0, "seqno", "");//seq 번호
  425. ds_main_lglydisinfo.setColumn(0, "lglydiscd", "");//전염병코드
  426. ds_main_lglydisinfo.setColumn(0, "attackdd", "");//attackdd
  427. ds_main_lglydisinfo.setColumn(0, "diagdd", "");//진단일
  428. ds_main_lglydisinfo.setColumn(0, "chgzipcd1", "");//우편번호1
  429. ds_main_lglydisinfo.setColumn(0, "chgzipcd2", "");//우편번호2
  430. ds_main_lglydisinfo.setColumn(0, "chgreptaddr", "");//주소변경
  431. ds_main_lglydisinfo.setColumn(0, "hngnm","");
  432. ds_main_lglydisinfo.setColumn(0, "wardnm","");
  433. ds_main_lglydisinfo.setColumn(0, "wardcd","");
  434. }
  435. function SPASI06000_onload(obj:Form, e:LoadEventInfo)
  436. {
  437. fn_fInitialize();
  438. ds_main_lglydisinfo.setColumn(0, "reptflag", "14"); //신고서구분 ( 14 : 검체시험의뢰서 B)
  439. var strYearCal = "";
  440. var pamInfoCvs = sysf_getGlobalVariable("paminfo"); //상단정보가 있을 경우는 검색
  441. trace("fInit 1");
  442. //20161227 이돈희 수정 : EMR의 범정감염병신고대상자조회에서 환자를 우클릭
  443. //신고서 팝업시 환자명이 상단의 환자명을 가지고 오는 것 수정
  444. //법정감염병 신고대상자조회 화면에서 팝업되는 경우
  445. if(opener.frmf_getScreenID() == "SMASI01300")
  446. {
  447. trace("fInit 3");
  448. ds_main_lglydisinfo.setColumn(0, "pid", opener.frmf_getParameter("pid"));
  449. ds_main_lglydisinfo.setColumn(0, "indd", opener.frmf_getParameter("indd"));
  450. ds_main_lglydisinfo.setColumn(0, "psnflag", opener.frmf_getParameter("psnflag"));
  451. ds_main_lglydisinfo.setColumn(0, "wrtedt", opener.frmf_getParameter("wrtedt"));
  452. ds_main_lglydisinfo.setColumn(0, "cretno", opener.frmf_getParameter("cretno"));
  453. }
  454. else
  455. {
  456. if( !utlf_isNull(pamInfoCvs))
  457. { //상단정보
  458. trace("fInit 2");
  459. ds_main_paminfo.clearData();
  460. dsf_setCSVToDs("ds_main_paminfo", pamInfoCvs);
  461. ds_main_lglydisinfo.setColumn(0, "psnflag", ds_main_paminfo.getColumn(0, "ioflag"));
  462. ds_main_lglydisinfo.setColumn(0, "pid", ds_main_paminfo.getColumn(0, "pid"));
  463. ds_main_lglydisinfo.setColumn(0, "cretno", ds_main_paminfo.getColumn(0, "cretno"));
  464. //indd, orddd : 진료일자
  465. //ioflag : 환자구분
  466. if( ds_main_paminfo.getColumn(0, "ioflag") == "O" )
  467. {
  468. ds_main_lglydisinfo.setColumn(0, "indd", ds_main_paminfo.getColumn(0, "orddd"));
  469. }
  470. else
  471. {
  472. ds_main_lglydisinfo.setColumn(0, "indd", ds_main_paminfo.getColumn(0, "indd"));
  473. }
  474. }
  475. }
  476. if( !utlf_isNull(ds_main_lglydisinfo.getColumn(0, "pid")) )
  477. {
  478. trace("fInit 4");
  479. //var result = 1;
  480. ds_send_reqdata.copyData(ds_main_lglydisinfo);
  481. ds_send_reqdata.setColumn(0, "prcporddeptcd", ds_send_reqdata.getColumn(0, "orddeptcd"));
  482. ds_send_reqdata.setColumn(0, "prcporddd", ds_send_reqdata.getColumn(0, "indd"));
  483. //신고를 위한 환자정보 조회
  484. dsf_setTypeFormat(ds_send_reqdata, "seqno:INT");
  485. var oParam = {};
  486. oParam.id = "SPASI06001";
  487. oParam.service = "infcmngtapp.LglyDisMngt";
  488. oParam.method = "reqGetLglyDisPatInfo";
  489. oParam.inds = "req=ds_send_reqdata";
  490. oParam.outds = "ds_main_getlglydisinfo=info";
  491. oParam.async = false;
  492. oParam.callback = "cf_SPASI06001";
  493. tranf_submit(oParam);
  494. if( arErrorCode.pop("SPASI06001") > -1 )
  495. {
  496. trace("fInit 5");
  497. //20170118 엄영만 선생님 요청 : 범정감염병 신고대상자조회 화면을 제외하고는 추가 입력 하여야함
  498. //작성일자와 검체시험의뢰서 내용 공백처리
  499. if(opener.frmf_getScreenID() != "SMASI01300")
  500. {
  501. ds_main_getlglydisinfo.setColumn(0,"wrtedt", "");
  502. ds_main_getlglydisinfo.setColumn(0, "lglydiscd", "")
  503. ds_main_getlglydisinfo.setColumn(0,"clispeaoccurdate", "");
  504. ds_main_getlglydisinfo.setColumn(0,"clispeagatherdate", "");
  505. ds_main_getlglydisinfo.setColumn(0,"clispeaname", "");
  506. // ds_main_getlglydisinfo.setColumn(0,"clispeagathercount", "");
  507. // ds_main_getlglydisinfo.setColumn(0,"clispeaopinion", "");
  508. ds_main_getlglydisinfo.setColumn(0,"clispebtype", "");
  509. ds_main_getlglydisinfo.setColumn(0,"clispebtypeetc", "");
  510. ds_main_getlglydisinfo.setColumn(0,"clispebtravel", "");
  511. ds_main_getlglydisinfo.setColumn(0,"clispebsymptom", "");
  512. ds_main_getlglydisinfo.setColumn(0,"clispebsymptometc", "");
  513. ds_main_getlglydisinfo.setColumn(0,"clispebcontact", "");
  514. ds_main_getlglydisinfo.setColumn(0,"clispebcontactetc", "");
  515. ds_main_getlglydisinfo.setColumn(0,"clispebcontactafter", "");
  516. // ds_main_getlglydisinfo.setColumn(0,"clispecpregnancy", "");
  517. // ds_main_getlglydisinfo.setColumn(0,"clispecpregnancyweek", "");
  518. // ds_main_getlglydisinfo.setColumn(0,"clispectravelperiodstart", "");
  519. // ds_main_getlglydisinfo.setColumn(0,"clispectravelperiodend", "");
  520. // ds_main_getlglydisinfo.setColumn(0,"clispecvaccine", "");
  521. }
  522. if( utlf_isNull(ds_main_getlglydisinfo.getColumn(0, "pid")) )
  523. {
  524. trace("fInit 6");
  525. // 외래->입원, 입원->외래로 저장한 case를 조회하기 위해.
  526. ds_send_reqdata.setColumn(0, "indd", ds_main_getlglydisinfo.getColumn(0, "attackdd"));
  527. var oParam = {};
  528. oParam.id = "SPASI06002";
  529. oParam.service = "infcmngtapp.LglyDisMngt";
  530. oParam.method = "reqGetLglyDisPatInfo";
  531. oParam.inds = "req=ds_send_reqdata";
  532. oParam.outds = "ds_main_getlglydisinfo=info";
  533. oParam.async = false;
  534. //oParam.callback = "cf_SPASI05002";
  535. tranf_submit(oParam);
  536. }
  537. ds_main_lglydisinfo.copyData(ds_main_getlglydisinfo);
  538. //DB에서 불러오는 과정에서 Wrtdet가 초기화 되므로 다시 설정
  539. //ds_main_lglydisinfo.setColumn(0, "wrtedt", opener.frmf_getParameter("wrtedt"));
  540. var getState = opener.frmf_getParameter("state");
  541. //설명 : opener.frmf_getParameter("PrcpLglyDis") //처방에서 호출했는가 여부
  542. if( frmf_isPopup() && (getState == 'U' || getState == 'S' || !utlf_isNull(opener.frmf_getParameter("PrcpLglyDis"))) )
  543. {
  544. trace("fInit 7");
  545. ds_main_lglydisinfo.setColumn(0, "state", opener.frmf_getParameter("state"));
  546. //20170407 이돈희 추가 : 기존에는 시퀀스가 다 1이였는데, 시퀀스 추가
  547. if(!utlf_isNull(ds_main_lglydisinfo.getColumn(0, "reptflag")))
  548. {
  549. ds_main_lglydisinfo.setColumn(0, "seqno", ds_main_lglydisinfo.rowcount+1);//seq 번호
  550. }
  551. else
  552. {
  553. ds_main_lglydisinfo.setColumn(0, "seqno", "1");//seq 번호
  554. }
  555. ds_main_reptdtinfo.addColumn("reptdt", "string", 256);
  556. ds_main_reptdtinfo.addColumn("reptyn", "string", 256);
  557. ds_main_reptdtinfo.addColumn("chgyn", "string", 256);
  558. ds_main_reptdtinfo.addColumn("prt_reptdt", "string", 256);
  559. var iRow = ds_main_reptdtinfo.addRow();
  560. ds_main_reptdtinfo.setColumn(iRow, "reptdt", opener.frmf_getParameter("reptdt"));
  561. ds_main_reptdtinfo.setColumn(iRow, "reptyn", opener.frmf_getParameter("reptyn"));
  562. ds_main_reptdtinfo.setColumn(iRow, "chgyn", opener.frmf_getParameter("chgyn"));
  563. ds_main_reptdtinfo.setColumn(iRow, "prt_reptdt", opener.frmf_getParameter("prt_reptdt"));
  564. /*
  565. var disnm = utlf_transNullToEmpty(ds_main_lglydisinfo.getColumn(0, "lglydiscd"));
  566. var a = disnm.substring(0,1);
  567. var b = disnm.substring(1,3);
  568. var objNm = "chx_grup"+a+"bac"+b;
  569. var c = this.components["grp_main"][objNm];
  570. if( !utlf_isNull(c) )
  571. {
  572. trace("fInit 8");
  573. c.style.color = "#0000ff";
  574. c.style.font = "Dotum,8,bold";
  575. }
  576. */
  577. }
  578. //설명 : opener.frmf_getParameter("PrcpLglyDis") //처방에서 호출했는가 여부
  579. else if( frmf_isPopup() && (getState != "U" || utlf_isNull(opener.frmf_getParameter("PrcpLglyDis"))) )
  580. {
  581. trace("fInit 9");
  582. ds_main_lglydisinfo.setColumn(0, "state", opener.frmf_getParameter("state") );
  583. /*
  584. ds_send_reqdata.addColumn("pid", "string", 256);
  585. ds_send_reqdata.addColumn("reptflag", "string", 256);
  586. var iRow = ds_send_reqdata.addRow();
  587. ds_send_reqdata.setColumn(iRow, "pid", ds_main_lglydisinfo.getColumn(0, "pid"));
  588. ds_send_reqdata.setColumn(iRow, "reptflag", ds_main_lglydisinfo.getColumn(0, "reptflag"));
  589. //법정전염법정보신고일자를 조회
  590. var oParam = {};
  591. oParam.id = "SPASI06003";
  592. oParam.service = "infcmngtapp.LglyDisMngt";
  593. oParam.method = "reqGetReptdtInfo";
  594. oParam.inds = "req=ds_send_reqdata";
  595. oParam.outds = "ds_main_reptdtinfo=reptdtinfo";
  596. oParam.async = false;
  597. oParam.callback = "cf_SPASI06003";
  598. tranf_submit(oParam);
  599. //reptyn : 재신고 가능여부 Y
  600. if( !utlf_isNull(ds_main_reptdtinfo.getColumn(0, "reptyn")) )
  601. {
  602. trace("fInit 11");
  603. //100616 이미 신고내용이 존재할 경우(기간 고려X - 기간 : Y, N)
  604. var disnm = ds_main_lglydisinfo.getColumn(0, "lglydiscd");
  605. var lglydisnm = null;
  606. if( disnm == "499" || disnm == "999" ){
  607. trace("fInit 11-1");
  608. switch(disnm){
  609. case '499': lglydisnm = ds_main_lglydisinfo.getColumn(0, "grup4lglydisnewsymp"); break;
  610. case '999': lglydisnm = ds_main_lglydisinfo.getColumn(0, "apntlglydisnm"); break;
  611. }
  612. }else{
  613. trace("fInit 11-2");
  614. var a = disnm.substring(0,1);
  615. var b = disnm.substring(1,3);
  616. var objNm = "chx_grup"+a+"bac"+b;
  617. var disCtrl = this.components["grp_main"][objNm];
  618. if( !utlf_isNull(disCtrl) ) {
  619. trace("fInit 11-2-1");
  620. lglydisnm = disCtrl.datacolumn;
  621. }
  622. }
  623. //진료화면에서 추가 시 초기화로 저장
  624. // result = messageBox(strRegtdt.substring(0,4)+"년 "+strRegtdt.substring(4,6)+"월 "+strRegtdt.substring(6,8)+"일 "
  625. // + lglydisnm +"(으)로 전염병이 신고되어 있어 신규 입력이 아니면 자료가 중복됩니다. \n 그래도", "Q003");
  626. result=6;
  627. //20161227 이돈희 주석처리 : 왜 초기화하는지 확인 필요
  628. //fInit();
  629. }
  630. else
  631. {
  632. trace("fInit 12");
  633. //신고 내용이 없다면
  634. result=6;
  635. }
  636. */
  637. }
  638. /*
  639. if( !utlf_isNull(opener.frmf_getParameter("PrcpLglyDis")) )
  640. { //처방에서 호출했는가 여부
  641. trace("fInit 13");
  642. //result=6;
  643. //처방화면에서 무조건 insert
  644. fInit();
  645. ds_send_reqlglydiscd.addColumn("prcpicd10cd", "string", 256);
  646. ds_send_reqlglydiscd.addColumn("reptflag", "string", 256);
  647. var iRow = ds_send_reqlglydiscd.addRow();
  648. ds_send_reqlglydiscd.setColumn(iRow, "prcpicd10cd", opener.frmf_getParameter("PrcpLglyDisCd"));
  649. ds_send_reqlglydiscd.setColumn(iRow, "reptflag", "01");
  650. //상병 체크를 위한 submit
  651. //lglydiscd 진단코드
  652. //lglydisnm 진단명
  653. var oParam = {};
  654. oParam.id = "SPASI06004";
  655. oParam.service = "infcmngtapp.LglyDisMngt";
  656. oParam.method = "reqGetLglyDisCdInfo";
  657. oParam.inds = "req=ds_send_reqlglydiscd";
  658. oParam.outds = "ds_main_getlglydiscdinfo=info";
  659. oParam.async = false;
  660. tranf_submit(oParam);
  661. //상병에 파란색 볼드체 표시
  662. var lglydiscd = ds_main_getlglydiscdinfo.getColumn(0, "lglydiscd");
  663. ds_main_lglydisinfo.setColumn(0, "lglydiscd", lglydiscd);
  664. if( lglydiscd == "416" ){ //J09조류인플루엔자의 경우
  665. trace("fInit 14");
  666. ds_main_lglydisinfo.setColumn(0, "lglydiscd", "499");
  667. grp_main.chx_newbac.style.color = "#0000ff";
  668. grp_main.chx_newbac.style.font = "Dotum,8,bold";
  669. }
  670. else if( lglydiscd == "999" )
  671. {
  672. trace("fInit 15");
  673. grp_main.chx_apntlglydis.style.color = "#0000ff";
  674. grp_main.chx_apntlglydis.style.font = "Dotum,8,bold";
  675. }
  676. else
  677. {
  678. trace("fInit 16");
  679. var disnm = ds_main_lglydisinfo.getColumn(0, "lglydiscd");
  680. var a = disnm.substring(0,1);
  681. var b = disnm.substring(1,3);
  682. var objNm = "chx_grup"+a+"bac"+b;
  683. var c = this.components["grp_main"][objNm];
  684. if( !utlf_isNull(c) ) {
  685. c.style.color = "#0000ff";
  686. c.style.font = "Dotum,8,bold";
  687. }
  688. }
  689. }
  690. else
  691. { //처방호출이 아닌경우
  692. trace("fInit 17");
  693. if( !utlf_isNull(ds_main_lglydisinfo.getColumn(0, "pid")) )
  694. {
  695. trace("fInit 18");
  696. fChkCnclYN(); //삭제된 신고건인지 체크
  697. }
  698. }
  699. */
  700. }
  701. }
  702. else
  703. {
  704. trace("fInit 19");
  705. btn_cncl.enable = false;
  706. btn_save.enable = false;
  707. btn_init.enable = false;
  708. }
  709. //화면 오픈시 진단일 오늘날짜로 셋팅
  710. ds_main_lglydisinfo.setColumn(0, "diagdd", utlf_getCurrentDate());
  711. //20170407 감염관리팀 김성진 선생님 요청으로 발병일 및 검체채취일을 기본 오늘 날짜로 셋팅
  712. ds_main_lglydisinfo.setColumn(0, "attackdd", utlf_getCurrentDate());
  713. ds_main_lglydisinfo.setColumn(0, "clispeagatherdate", utlf_getCurrentDate());
  714. fn_getCheckBoxType();
  715. fn_getCheckBoxSymptom();
  716. fn_getCheckBoxContact();
  717. }
  718. function fn_fInitialize(){
  719. appf_getCodeList( [{dsNm: "ds_M0149", cdGrpId: "M0149"} //직업
  720. , {dsNm: "ds_P0353", cdGrpId: "P0353"} //국적명
  721. , {dsNm: "ds_A0372", cdGrpId: "A0372"}], true ); //변경신고
  722. }
  723. function cf_SPASI06001(sSvcId, nErrorCode, sErrorMsg)
  724. {
  725. arErrorCode.push(sSvcId, nErrorCode);
  726. }
  727. function cf_SPASI06003(sSvcId, nErrorCode, sErrorMsg)
  728. {
  729. arErrorCode.push(sSvcId, nErrorCode);
  730. }
  731. function cf_SPASI06005(sSvcId, nErrorCode, sErrorMsg)
  732. {
  733. arErrorCode.push(sSvcId, nErrorCode);
  734. }
  735. function cf_SPASI06006(sSvcId, nErrorCode, sErrorMsg)
  736. {
  737. arErrorCode.push(sSvcId, nErrorCode);
  738. }
  739. /******************************************************************
  740. * Argument :
  741. * Description : 삭제된건은 조회만 가능
  742. ******************************************************************/
  743. function fChkCnclYN(){
  744. //cnclyn : 제외대상여부 Y : 제외
  745. if( ds_main_lglydisinfo.getColumn(0, "cnclyn") == "Y" ){
  746. if( opener.frmf_getParameter("state") == "S" ){
  747. sysf_messageBox("삭제된 신고서", "I009");
  748. btn_cncl.visible = false;
  749. } else {
  750. fInit();
  751. }
  752. }
  753. }
  754. function grp_main_CheckBox_Type_Etc_onclick(obj:CheckBox, e:ClickEventInfo)
  755. {
  756. fn_Check_CheckBox_Type_Etc();
  757. }
  758. function grp_main_CheckBox_Symptom_Etc_onclick(obj:CheckBox, e:ClickEventInfo)
  759. {
  760. if(grp_main.CheckBox_Symptom_Etc.value == true )
  761. {
  762. grp_main.EditBox_Symptom_Etc.enable = true;
  763. }
  764. else
  765. {
  766. grp_main.EditBox_Symptom_Etc.enable = false;
  767. grp_main.EditBox_Symptom_Etc.value = "";
  768. }
  769. }
  770. function grp_main_CheckBox_Contact_Etc_onclick(obj:CheckBox, e:ClickEventInfo)
  771. {
  772. fn_Check_CheckBox_Contact_Etc();
  773. }
  774. function grp_main_CheckBox_Symptom_Heat_onclick(obj:CheckBox, e:ClickEventInfo)
  775. {
  776. if(grp_main.CheckBox_Symptom_Heat.value == true)
  777. {
  778. grp_main.EditBox_Symptom_Heat.enable = true;
  779. }
  780. else
  781. {
  782. grp_main.EditBox_Symptom_Heat.enable = false;
  783. grp_main.EditBox_Symptom_Heat.value = "";
  784. }
  785. }
  786. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  787. {
  788. fn_setCheckBoxType();
  789. fn_setCheckBoxSymptom();
  790. fn_setCheckBoxContact();
  791. ds_main_lglydisinfo.setColumn(0,"reptflag", "14");
  792. //20161227 이돈희 수정 : lglydiscd을 임의로 셋팅하면 안되므로 주석처리
  793. //20161230 이돈희 수정 : 김동규선생님 => 저장시 법정감염병코드 입력 필요
  794. ds_main_lglydisinfo.setColumn(0,"lglydiscd", "505");//lglydiscd가 Not Null이여서 전염병코드 임의 입력
  795. //20161230 이돈희 수정 : orddeptcd 진료과 입력 필요
  796. ds_main_lglydisinfo.setColumn(0, "orddeptcd", ds_main_paminfo.getColumn(0, "orddeptcd"));
  797. if(utlf_isNull(ds_main_lglydisinfo.getColumn(0,"wrtedt")))
  798. {
  799. ds_main_lglydisinfo.setColumn(0,"state", "I");
  800. ds_main_lglydisinfo.setColumn(0,"wrtedt", utlf_getCurrentDate() +""+ utlf_getCurrentTime());
  801. }
  802. else
  803. {
  804. ds_main_lglydisinfo.setColumn(0,"state", "U");
  805. }
  806. //20161229 이돈희 수정 : 발병일로 clispeaoccurdate을 추가하였는데 기존에 사용하는 attackdd가 있으므로
  807. //attackdd를 사용하되 문서 출력시에는 clispeaoccurdate을 사용하므로 복사
  808. var vaAttackdd = ds_main_lglydisinfo.getColumn(0,"attackdd");
  809. ds_main_lglydisinfo.setColumn(0,"clispeaoccurdate",vaAttackdd);
  810. ds_send_reqdata.copyData(ds_main_lglydisinfo);
  811. var curstate = ds_main_lglydisinfo.getColumn(0,"state");
  812. var oParam = {};
  813. oParam.id = "SPASI06005";
  814. oParam.service = "infcmngtapp.LglyDisMngt";
  815. oParam.method = "reqSetClinicalSpecimen";
  816. oParam.inds = "req=ds_send_reqdata";
  817. oParam.outds = "ds_main_getlglydisinfo=item";
  818. oParam.async = false;
  819. oParam.callback = "cf_SPASI06005";
  820. tranf_submit(oParam);
  821. if(arErrorCode.pop("SPASI06005") > -1)
  822. {
  823. //ds_infcsmmrsltreptlist.copyData(ds_getlglydisinfo);
  824. if(curstate == "I")
  825. {
  826. sysf_messageBox("저장되었습니다","I");
  827. }
  828. else if(curstate == "U")
  829. {
  830. sysf_messageBox("수정되었습니다.","I");
  831. }
  832. //요구사항에 저장시 프린터 기능이 있음
  833. //20170109 이윤주선생님 요청으로 저장시 프린터 기능 보류
  834. //20170119 감염관리과 요청 : 첫 저장일때 자동 출력 할 것
  835. if(curstate == "I")
  836. {
  837. fPrint();
  838. }
  839. if(opener.frmf_getScreenID() == "SMASI01300")
  840. {
  841. opener.grp_sea.btn_search.click();
  842. }
  843. //20170123 이돈희 추석처리 : 프린트 후 창 닫힘 처리는 콜백에 추가해야함
  844. //this.close();
  845. //20170123 이돈희 추가 : update 시에 창 닫힘 추가
  846. if (curstate == "U")
  847. {
  848. this.close();
  849. }
  850. }
  851. }
  852. function fPrint()
  853. {
  854. //20170102 이돈희 추가 : 법정감염병 새로 추가하는 경우 병원 주소, 전화번호등 못가져오는 경우 있음
  855. //=> 초기 화면 로딩시 법정감염병이력에 없으므로 아무 정보가 없으므로 못가져옴
  856. //=> 출력시 한번 더 검색하여 이미 법정감염병 이력이 저장되었으므로 정보 가져올수 있음
  857. ds_send_reqdata.copyData(ds_main_lglydisinfo);
  858. ds_send_reqdata.deleteColumn("wrtedt");
  859. //법정전염병신고를 위한 환자정보 조회
  860. var oParam = {};
  861. oParam.id = "SPASI06007";
  862. oParam.service = "infcmngtapp.LglyDisMngt";
  863. oParam.method = "reqGetLglyDisPatInfo";
  864. oParam.inds = "req=ds_send_reqdata";
  865. oParam.outds = "ds_main_getlglydisinfo=info";
  866. oParam.async = false;
  867. oParam.callback = "cf_SPASI06007";
  868. tranf_submit(oParam);
  869. if( arErrorCode.pop("SPASI06007") > -1 )
  870. {
  871. try
  872. {
  873. //CopyRow할 때 컬럼이 없는 경우 데이터 복사가 안되는 현상으로
  874. //Column 복사를 위해 CopyData 후 Deleteall을 해줌
  875. ds_main_print.copyData(ds_main_getlglydisinfo);
  876. ds_main_print.deleteAll();
  877. //Row 추가 후 ds_main_getlglydisinfo의 첫번째 Row 복사
  878. var nRow = ds_main_print.addRow();
  879. var vaSucc = ds_main_print.copyRow(nRow,ds_main_getlglydisinfo,0);
  880. //trace("11111");
  881. var objDOM = rptf_createDOM();
  882. fClinicalSpecimenBAdditionalData(1);
  883. rptf_setNodeListToDOM(objDOM, "/root/temp/lglydisrepttrgtmaninfo/lglydisrepttrgtmanlist", ds_main_print); // 데이터셋 1
  884. var objParam = new Object();
  885. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  886. //var option = "open=1;save=1;directprint=0;print=1;zoom=0;";
  887. var option = "open=1;save=1;directprint=1;print=1;zoom=0;callback=cbf_rpt_onFinishPrintXML;printdialog=0";
  888. rptf_exeReportPreview30(["RPASI06000"],[objParam], option);
  889. }
  890. catch(E)
  891. {
  892. sysf_messageBox("출력 시 오류가 발생했습니다! 재출력 하시기 바랍니다.", "E000");
  893. close();
  894. }
  895. }
  896. }
  897. function cbf_rpt_onFinishPrintXML()
  898. {
  899. close();
  900. }
  901. function fClinicalSpecimenBAdditionalData(vaData)
  902. {
  903. //20161229 이돈희 수정 : 기존에 있는 Rexpert 컬럼 명칭 맞추기 위하여 수정
  904. ds_main_print.addColumn("name", "string", 256);
  905. var vaName = ds_main_print.getColumn(0,"patnm");
  906. ds_main_print.setColumn(0,"name", vaName);
  907. ds_main_print.addColumn("sex", "string", 1);
  908. var vaSex = ds_main_print.getColumn(0,"sexflag");
  909. ds_main_print.setColumn(0,"sex", vaSex);
  910. var vaJob = ds_main_print.getColumn(0,"jobnm");
  911. ds_main_print.setColumn(0,"jobcd", vaJob);
  912. ds_main_print.addColumn("rrgstno1", "string", 6);
  913. var vaRgstno1 = ds_main_print.getColumn(0,"rgstno");
  914. ds_main_print.setColumn(0,"rrgstno1", vaRgstno1);
  915. ds_main_print.addColumn("detladdr", "string", 6);
  916. var vaDetladdr = ds_main_print.getColumn(0,"cntcaddr1");
  917. ds_main_print.setColumn(0,"detladdr", vaDetladdr);
  918. ds_main_print.addColumn("address", "string", 256);
  919. ds_main_print.addColumn("telnumber", "string", 256);
  920. ds_main_print.addColumn("currentyear", "string", 10);
  921. ds_main_print.addColumn("currentmonth", "string", 10);
  922. ds_main_print.addColumn("currentday", "string", 10);
  923. ds_main_print.addColumn("currenttime", "string", 10);
  924. //20170302 이돈희 추가 : 검체인수인계일 addition2 컬럼에 추가
  925. ds_main_print.addColumn("addition2", "string", 256);
  926. //20170302 이돈희 추가 : 진료과 addition3 컬럼에 추가
  927. ds_main_print.addColumn("addition3", "string", 256);
  928. for( var iIndex = 0; iIndex < vaData; iIndex++ )
  929. {
  930. //주소 구성
  931. var vaAddress = "";
  932. vaAddress = ds_main_print.getColumn(iIndex,"hosaddr1")+" ";
  933. vaAddress = vaAddress + ds_main_print.getColumn(iIndex,"hosaddr2")+" ";
  934. vaAddress = vaAddress + ds_main_print.getColumn(iIndex,"hospnm")+" ";
  935. vaAddress = vaAddress + ds_main_print.getColumn(iIndex,"etcdeptnm");
  936. ds_main_print.setColumn(iIndex, "address", vaAddress);
  937. //전화번호 및 팩스번호 구성
  938. var vaTelnumber = "";
  939. vaTelnumber = "(전화번호 : ";
  940. vaTelnumber = vaTelnumber + ds_main_print.getColumn(iIndex,"reprtel1");
  941. vaTelnumber = vaTelnumber + "), (Fax 번호 : ";
  942. vaTelnumber = vaTelnumber + ds_main_print.getColumn(iIndex,"reprfaxno");
  943. vaTelnumber = vaTelnumber + ")";
  944. ds_main_print.setColumn(iIndex, "telnumber", vaTelnumber);
  945. //오늘 날짜 구성
  946. var vaCurrentyear = utlf_getYear();
  947. var vaCurrentmonth = utlf_getMonth();
  948. var vaCurrentday = utlf_getDate();
  949. var vaCurrentTime = ""
  950. var sDate = utlf_getNewDate();
  951. vaCurrentTime = (( sDate.getHours() > 9 ) ? sDate.getHours() : "0" + sDate.getHours());
  952. ds_main_print.setColumn(iIndex, "currentyear", vaCurrentyear);
  953. ds_main_print.setColumn(iIndex, "currentmonth", vaCurrentmonth);
  954. ds_main_print.setColumn(iIndex, "currentday", vaCurrentday);
  955. ds_main_print.setColumn(iIndex, "currenttime", vaCurrentTime);
  956. //20170302 이돈희 추가 : 검체인수인계일 addition2 컬럼에 추가
  957. var vaInsertDay = ds_main_lglydisinfo.getColumn(iIndex, "wrtedt");
  958. var vaYear = utlf_mid(vaInsertDay,0,4);
  959. var vaMonth = utlf_mid(vaInsertDay,5,2);
  960. var vaDay = utlf_mid(vaInsertDay,7,2);
  961. var vaHour = utlf_mid(vaInsertDay,9,2)
  962. var vaPrintDate = " "+vaYear +" 년 " + vaMonth + " 월 " + vaDay + " 월 " + vaHour + " 시";
  963. ds_main_print.setColumn(iIndex, "addition2", vaPrintDate);
  964. //20170302 이돈희 추가 : 진료과 addition3 컬럼에 추가
  965. ds_main_print.setColumn(iIndex, "addition3", ds_main_lglydisinfo.getColumn(0, "deptnm"));
  966. }
  967. //환자/접촉자 정보 분류 체크박스 구성
  968. fn_getCheckBoxTypeForPrint(vaData);
  969. //접촉자
  970. fn_getCheckBoxContactForPrint(vaData);
  971. //주요증상 구성
  972. fn_getCheckBoxBSymptomForPrint(vaData);
  973. }
  974. function fn_getCheckBoxTypeForPrint(vaData)
  975. {
  976. ds_main_print.addColumn("clispebtype1", "string", 1);
  977. ds_main_print.addColumn("clispebtype2", "string", 1);
  978. ds_main_print.addColumn("clispebtype3", "string", 1);
  979. for( var jIndex = 0; jIndex < vaData; jIndex++ )
  980. {
  981. ds_main_print.setColumn(jIndex , "clispebtype1", "0");
  982. ds_main_print.setColumn(jIndex , "clispebtype2", "0");
  983. ds_main_print.setColumn(jIndex , "clispebtype3", "0");
  984. var value = ds_main_print.getColumn(jIndex,"clispebtype");
  985. if(!utlf_isNull(value))
  986. {
  987. var iExLoc = 0;
  988. var tempValue = "";
  989. for(var iIndex = 0; iIndex < value.length ; iIndex++)
  990. {
  991. if(value.charAt(iIndex)== ",")
  992. {
  993. tempValue = value.substring(iExLoc, iIndex);
  994. iExLoc = iIndex+1;
  995. if(tempValue == "1")
  996. {
  997. ds_main_print.setColumn(jIndex, "clispebtype1", "1");
  998. }
  999. if(tempValue == "2")
  1000. {
  1001. ds_main_print.setColumn(jIndex, "clispebtype2", "1");
  1002. }
  1003. if(tempValue == "3")
  1004. {
  1005. ds_main_print.setColumn(jIndex, "clispebtype3", "1");
  1006. }
  1007. }
  1008. }
  1009. }
  1010. }
  1011. }
  1012. function fn_getCheckBoxBSymptomForPrint(vaData)
  1013. {
  1014. ds_main_print.addColumn("clispebsymptom1", "string", 1);
  1015. ds_main_print.addColumn("clispebsymptom1temp", "string", 10);
  1016. ds_main_print.addColumn("clispebsymptom2", "string", 1);
  1017. ds_main_print.addColumn("clispebsymptom3", "string", 1);
  1018. ds_main_print.addColumn("clispebsymptom4", "string", 1);
  1019. ds_main_print.addColumn("clispebsymptom5", "string", 1);
  1020. ds_main_print.addColumn("clispebsymptom6", "string", 1);
  1021. for( var jIndex = 0; jIndex < vaData; jIndex++ )
  1022. {
  1023. var value = ds_main_print.getColumn(jIndex,"clispebsymptom");
  1024. ds_main_print.setColumn(jIndex, "clispebsymptom1", "0");
  1025. ds_main_print.setColumn(jIndex, "clispebsymptom1temp", "");
  1026. ds_main_print.setColumn(jIndex, "clispebsymptom2", "0");
  1027. ds_main_print.setColumn(jIndex, "clispebsymptom3", "0");
  1028. ds_main_print.setColumn(jIndex, "clispebsymptom4", "0");
  1029. ds_main_print.setColumn(jIndex, "clispebsymptom5", "0");
  1030. ds_main_print.setColumn(jIndex, "clispebsymptom6", "0");
  1031. if(!utlf_isNull(value))
  1032. {
  1033. var iExLoc = 0;
  1034. var tempValue = "";
  1035. for(var iIndex = 0; iIndex < value.length ; iIndex++)
  1036. {
  1037. if(value.charAt(iIndex)== ",")
  1038. {
  1039. tempValue = value.substring(iExLoc, iIndex);
  1040. iExLoc = iIndex+1;
  1041. if(tempValue == "1")
  1042. {
  1043. ds_main_print.setColumn(jIndex, "clispebsymptom1", "1");
  1044. //발열이 체크된 경우 온도값 입력 처리
  1045. var heatIndex = value.indexOf(",",iExLoc);
  1046. var heatValue = value.substring(iExLoc, heatIndex);
  1047. ds_main_print.setColumn(jIndex, "clispebsymptom1temp", heatValue);
  1048. iIndex = heatIndex - 1;
  1049. }
  1050. if(tempValue == "2")
  1051. {
  1052. ds_main_print.setColumn(jIndex, "clispebsymptom2", "1");
  1053. }
  1054. if(tempValue == "3")
  1055. {
  1056. ds_main_print.setColumn(jIndex, "clispebsymptom3", "1");
  1057. }
  1058. if(tempValue == "4")
  1059. {
  1060. ds_main_print.setColumn(jIndex, "clispebsymptom4", "1");
  1061. }
  1062. if(tempValue == "5")
  1063. {
  1064. ds_main_print.setColumn(jIndex, "clispebsymptom5", "1");
  1065. }
  1066. if(tempValue == "6")
  1067. {
  1068. ds_main_print.setColumn(jIndex, "clispebsymptom6", "1");
  1069. }
  1070. }
  1071. }
  1072. }
  1073. }
  1074. }
  1075. function fn_getCheckBoxContactForPrint(vaData)
  1076. {
  1077. ds_main_print.addColumn("clispebcontact1", "string", 1);
  1078. ds_main_print.addColumn("clispebcontact2", "string", 1);
  1079. ds_main_print.addColumn("clispebcontact3", "string", 1);
  1080. for( var jIndex = 0; jIndex < vaData; jIndex++ )
  1081. {
  1082. ds_main_print.setColumn(jIndex, "clispebcontact1", "0");
  1083. ds_main_print.setColumn(jIndex, "clispebcontact2", "0");
  1084. ds_main_print.setColumn(jIndex, "clispebcontact3", "0");
  1085. var value = ds_main_print.getColumn(jIndex,"clispebcontact");
  1086. if(!utlf_isNull(value))
  1087. {
  1088. var iExLoc = 0;
  1089. var tempValue = "";
  1090. for(var iIndex = 0; iIndex < value.length ; iIndex++)
  1091. {
  1092. if(value.charAt(iIndex)== ",")
  1093. {
  1094. tempValue = value.substring(iExLoc, iIndex);
  1095. iExLoc = iIndex+1;
  1096. if(tempValue == "1")
  1097. {
  1098. ds_main_print.setColumn(jIndex, "clispebcontact1", "1");
  1099. }
  1100. if(tempValue == "2")
  1101. {
  1102. ds_main_print.setColumn(jIndex, "clispebcontact2", "1");
  1103. }
  1104. if(tempValue == "3")
  1105. {
  1106. ds_main_print.setColumn(jIndex, "clispebcontact3", "1");
  1107. }
  1108. }
  1109. }
  1110. }
  1111. }
  1112. }
  1113. function fn_setCheckBoxType()
  1114. {
  1115. //분류 항목을 DB에 작성하도록 데이터 수정
  1116. var tmp = "";
  1117. if(grp_main.CheckBox_Type_Diagnosis.value == true)
  1118. {
  1119. tmp = "1,";
  1120. }
  1121. if(grp_main.CheckBox_Type_Contact.value == true)
  1122. {
  1123. tmp = tmp + "2,";
  1124. }
  1125. if(grp_main.CheckBox_Type_Etc.value == true)
  1126. {
  1127. tmp = tmp + "3,";
  1128. }
  1129. ds_main_lglydisinfo.setColumn(0, "clispebtype", tmp);
  1130. }
  1131. function fn_setCheckBoxSymptom()
  1132. {
  1133. //증상 항목을 DB에 작성하도록 데이터 수정
  1134. var tmp = "";
  1135. if(grp_main.CheckBox_Symptom_Heat.value == true)
  1136. {
  1137. tmp = "1,";
  1138. tmp = tmp + grp_main.EditBox_Symptom_Heat.value + ",";
  1139. }
  1140. if(grp_main.CheckBox_Symptom_Cough.value == true)
  1141. {
  1142. tmp = tmp + "2,";
  1143. }
  1144. if(grp_main.CheckBox_Symptom_Breathing.value == true)
  1145. {
  1146. tmp = tmp + "3,";
  1147. }
  1148. if(grp_main.CheckBox_Symptom_Respiratoryfailure.value == true)
  1149. {
  1150. tmp = tmp + "4,";
  1151. }
  1152. if(grp_main.CheckBox_Symptom_Diarrhea.value == true)
  1153. {
  1154. tmp = tmp + "5,";
  1155. }
  1156. if(grp_main.CheckBox_Symptom_Etc.value == true)
  1157. {
  1158. tmp = tmp + "6,";
  1159. }
  1160. ds_main_lglydisinfo.setColumn(0, "clispebsymptom", tmp);
  1161. }
  1162. function fn_setCheckBoxContact()
  1163. {
  1164. //접촉자 항목을 DB에 작성하도록 데이터 수정
  1165. var tmp = "";
  1166. if(grp_main.CheckBox_Contact_Approach.value == true)
  1167. {
  1168. tmp = "1,";
  1169. }
  1170. if(grp_main.CheckBox_Contact_Hospital.value == true)
  1171. {
  1172. tmp = tmp + "2,";
  1173. }
  1174. if(grp_main.CheckBox_Contact_Etc.value == true)
  1175. {
  1176. tmp = tmp + "3,";
  1177. }
  1178. ds_main_lglydisinfo.setColumn(0, "clispebcontact", tmp);
  1179. }
  1180. function fn_getCheckBoxType()
  1181. {
  1182. //DB에서 읽어온 분류값을 전시가능하도록 데이터 수정
  1183. grp_main.CheckBox_Type_Diagnosis.value = "false";
  1184. grp_main.CheckBox_Type_Contact.value = "false";
  1185. grp_main.CheckBox_Type_Etc.value = "false";
  1186. var value = ds_main_lglydisinfo.getColumn(0,"clispebtype");
  1187. if(!utlf_isNull(value))
  1188. {
  1189. var iExLoc = 0;
  1190. var tempValue = "";
  1191. for(var iIndex = 0; iIndex < value.length ; iIndex++)
  1192. {
  1193. if(value.charAt(iIndex)== ",")
  1194. {
  1195. tempValue = value.substring(iExLoc, iIndex);
  1196. iExLoc = iIndex+1;
  1197. if(tempValue == "1")
  1198. {
  1199. grp_main.CheckBox_Type_Diagnosis.value = "true";
  1200. }
  1201. if(tempValue == "2")
  1202. {
  1203. grp_main.CheckBox_Type_Contact.value = "true";
  1204. }
  1205. if(tempValue == "3")
  1206. {
  1207. grp_main.CheckBox_Type_Etc.value = "true";
  1208. }
  1209. }
  1210. }
  1211. }
  1212. fn_Check_CheckBox_Type_Etc();
  1213. }
  1214. function fn_getCheckBoxSymptom()
  1215. {
  1216. //DB에서 읽어온 증상값을 전시가능하도록 데이터 수정
  1217. grp_main.CheckBox_Symptom_Heat.value = "false";
  1218. grp_main.CheckBox_Symptom_Cough.value = "false";
  1219. grp_main.CheckBox_Symptom_Breathing.value = "false";
  1220. grp_main.CheckBox_Symptom_Respiratoryfailure.value = "false";
  1221. grp_main.CheckBox_Symptom_Diarrhea.value = "false";
  1222. grp_main.CheckBox_Symptom_Etc.value = "false";
  1223. var value = ds_main_lglydisinfo.getColumn(0,"clispebsymptom");
  1224. if(!utlf_isNull(value))
  1225. {
  1226. var iExLoc = 0;
  1227. var tempValue = "";
  1228. for(var iIndex = 0; iIndex < value.length ; iIndex++)
  1229. {
  1230. if(value.charAt(iIndex)== ",")
  1231. {
  1232. tempValue = value.substring(iExLoc, iIndex);
  1233. iExLoc = iIndex+1;
  1234. if(tempValue == "1")
  1235. {
  1236. grp_main.CheckBox_Symptom_Heat.value = "true";
  1237. //발열이 체크된 경우 온도값 입력 처리
  1238. var heatIndex = value.indexOf(",",iExLoc);
  1239. var heatValue = value.substring(iExLoc, heatIndex);
  1240. grp_main.EditBox_Symptom_Heat.value = heatValue;
  1241. iIndex = heatIndex - 1;
  1242. }
  1243. if(tempValue == "2")
  1244. {
  1245. grp_main.CheckBox_Symptom_Cough.value = "true";
  1246. }
  1247. if(tempValue == "3")
  1248. {
  1249. grp_main.CheckBox_Symptom_Breathing.value = "true";
  1250. }
  1251. if(tempValue == "4")
  1252. {
  1253. grp_main.CheckBox_Symptom_Respiratoryfailure.value = "true";
  1254. }
  1255. if(tempValue == "5")
  1256. {
  1257. grp_main.CheckBox_Symptom_Diarrhea.value = "true";
  1258. }
  1259. if(tempValue == "6")
  1260. {
  1261. grp_main.CheckBox_Symptom_Etc.value = "true";
  1262. }
  1263. }
  1264. }
  1265. }
  1266. fn_Check_CheckBox_Symptom_Etc();
  1267. }
  1268. function fn_getCheckBoxContact()
  1269. {
  1270. //DB에서 읽어온 분류값을 전시가능하도록 데이터 수정
  1271. grp_main.CheckBox_Contact_Approach.value = "false";
  1272. grp_main.CheckBox_Contact_Hospital.value = "false";
  1273. grp_main.CheckBox_Contact_Etc.value = "false";
  1274. var value = ds_main_lglydisinfo.getColumn(0,"clispebcontact");
  1275. if(!utlf_isNull(value))
  1276. {
  1277. var iExLoc = 0;
  1278. var tempValue = "";
  1279. for(var iIndex = 0; iIndex < value.length ; iIndex++)
  1280. {
  1281. if(value.charAt(iIndex)== ",")
  1282. {
  1283. tempValue = value.substring(iExLoc, iIndex);
  1284. iExLoc = iIndex+1;
  1285. if(tempValue == "1")
  1286. {
  1287. grp_main.CheckBox_Contact_Approach.value = "true";
  1288. }
  1289. if(tempValue == "2")
  1290. {
  1291. grp_main.CheckBox_Contact_Hospital.value = "true";
  1292. }
  1293. if(tempValue == "3")
  1294. {
  1295. grp_main.CheckBox_Contact_Etc.value = "true";
  1296. }
  1297. }
  1298. }
  1299. }
  1300. fn_Check_CheckBox_Contact_Etc();
  1301. }
  1302. function fn_Check_CheckBox_Type_Etc()
  1303. {
  1304. //CheckBox_Type_Etc 체크 유무에 따라 기타 에디트박스 활성화 유무 결정
  1305. if(grp_main.CheckBox_Type_Etc.value == true )
  1306. {
  1307. grp_main.Editbox_Type_Etc.enable = true;
  1308. }
  1309. else
  1310. {
  1311. grp_main.Editbox_Type_Etc.enable = false;
  1312. grp_main.Editbox_Type_Etc.value = "";
  1313. }
  1314. }
  1315. function fn_Check_CheckBox_Symptom_Etc()
  1316. {
  1317. //CheckBox_Symptom_Etc 및 발열 체크 유무에 따라 에디트박스 활성화 유무 결정
  1318. if(grp_main.CheckBox_Symptom_Etc.value == true )
  1319. {
  1320. grp_main.EditBox_Symptom_Etc.enable = true;
  1321. }
  1322. else
  1323. {
  1324. grp_main.EditBox_Symptom_Etc.enable = false;
  1325. grp_main.EditBox_Symptom_Etc.value = "";
  1326. }
  1327. if(grp_main.CheckBox_Symptom_Heat.value == true)
  1328. {
  1329. grp_main.EditBox_Symptom_Heat.enable = true;
  1330. }
  1331. else
  1332. {
  1333. grp_main.EditBox_Symptom_Heat.enable = false;
  1334. grp_main.EditBox_Symptom_Heat.value = "";
  1335. }
  1336. }
  1337. function fn_Check_CheckBox_Contact_Etc()
  1338. {
  1339. //CheckBox_Contact_Etc 체크 유무에 따라 기타 에디트박스 활성화 유무 결정
  1340. if(grp_main.CheckBox_Contact_Etc.value == true )
  1341. {
  1342. grp_main.EditBox_Contact_Etc.enable = true;
  1343. }
  1344. else
  1345. {
  1346. grp_main.EditBox_Contact_Etc.enable = false;
  1347. grp_main.EditBox_Contact_Etc.value = "";
  1348. }
  1349. }
  1350. function btn_cncl_onclick(obj:Button, e:ClickEventInfo)
  1351. {
  1352. var bProgress = true;
  1353. var reptdt = ds_main_lglydisinfo.getColumn( 0,"reptdt" );
  1354. if( utlf_isNull(ds_main_lglydisinfo.getColumn(0, "reptdt")) || reptdt.substring(0, 8) != "99991231" )
  1355. {
  1356. sysf_messageBox( "이미 신고된 건은 삭제" ,"E001" );
  1357. bProgress = false;
  1358. }
  1359. if( utlf_isNull(ds_main_lglydisinfo.getColumn(0, "wrtedt")) )
  1360. {
  1361. sysf_messageBox( "저장되지 않은 건은 삭제" ,"E001" );
  1362. bProgress = false;
  1363. }
  1364. if(bProgress == true)
  1365. {
  1366. var result = sysf_messageBox("", "Q001");
  1367. ds_send_reqdata.copyData(ds_main_lglydisinfo);
  1368. ds_send_reqdata.setColumn(0, "prcporddeptcd", ds_send_reqdata.getColumn(0, "orddeptcd"));
  1369. ds_send_reqdata.setColumn(0, "prcporddd", ds_send_reqdata.getColumn(0, "indd"));
  1370. if( result == "7" )
  1371. {
  1372. sysf_messageBox( "삭제가 취소되었습니다", "I" );
  1373. }
  1374. else if( result == "6" )
  1375. {
  1376. ds_main_lglydisinfo.setColumn(0,"reptflag", "14");
  1377. ds_main_lglydisinfo.setColumn(0,"lglydiscd", "505");//lglydiscd가 Not Null이여서 전염병코드 임의 입력
  1378. ds_main_lglydisinfo.setColumn(0,"state", "D");
  1379. var oParam = {};
  1380. oParam.id = "SPASI06006";
  1381. oParam.service = "infcmngtapp.LglyDisMngt";
  1382. oParam.method = "reqSetClinicalSpecimen";
  1383. oParam.inds = "req=ds_main_lglydisinfo";
  1384. oParam.outds = "ds_main_getlglydisinfo=info";
  1385. oParam.async = false;
  1386. oParam.callback = "cf_SPASI06006";
  1387. tranf_submit(oParam);
  1388. if( arErrorCode.pop("SPASI06006") > -1 )
  1389. {
  1390. sysf_messageBox( "삭제" ,"I001" );
  1391. opener.grp_sea.btn_search.click();
  1392. this.close();
  1393. }
  1394. }
  1395. ds_main_lglydisinfo.copyData(ds_main_getlglydisinfo);
  1396. //DB에서 불러오는 과정에서 Wrtdet가 초기화 되므로 다시 설정
  1397. //ds_main_lglydisinfo.setColumn(0, "wrtedt", opener.frmf_getParameter("wrtedt"));
  1398. }
  1399. }
  1400. function btn_init_onclick(obj:Button, e:ClickEventInfo)
  1401. {
  1402. grp_main.CheckBox_Type_Diagnosis.value = "false";
  1403. grp_main.CheckBox_Type_Contact.value = "false";
  1404. grp_main.CheckBox_Type_Etc.value = "false";
  1405. grp_main.Editbox_Type_Etc.value = "";
  1406. grp_main.Editbox_Travel.value = "";
  1407. grp_main.opt_specimen.value = "";
  1408. grp_main.Calendar_collect.value = "";
  1409. grp_main.Calendar_occur.value = "";
  1410. grp_main.CheckBox_Symptom_Heat.value = "false";
  1411. grp_main.EditBox_Symptom_Heat.value = "";
  1412. grp_main.CheckBox_Symptom_Cough.value = "false";
  1413. grp_main.CheckBox_Symptom_Breathing.value = "false";
  1414. grp_main.CheckBox_Symptom_Respiratoryfailure.value = "false";
  1415. grp_main.CheckBox_Symptom_Diarrhea.value = "false";
  1416. grp_main.CheckBox_Symptom_Etc.value = "false";
  1417. grp_main.EditBox_Symptom_Etc.value = "";
  1418. grp_main.CheckBox_Contact_Approach.value = "false";
  1419. grp_main.CheckBox_Contact_Hospital.value = "false";
  1420. grp_main.CheckBox_Contact_Etc.value = "false";
  1421. grp_main.EditBox_Contact_Etc.value = "";
  1422. grp_main.EditBox_Contact_After.value = "";
  1423. }
  1424. function cf_SPASI06007(sSvcId, nErrorCode, sErrorMsg)
  1425. {
  1426. arErrorCode.push(sSvcId, nErrorCode);
  1427. }
  1428. ]]></Script>
  1429. </Form>
  1430. </FDL>