SPMRI06100_정정신청.xfdl 70 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPMRI06100" position="absolute 0 0 650 320" oninit="SPMRI06100_oninit" onload="SPMRI06100_onload" class="frm_POP">
  5. <Layouts>
  6. <Layout>
  7. <Static id="stx_2" position="absolute 12 144 638 310" text="&lt;fc v='blue'&gt;▶ &lt;u v='true'&gt;환자 요청&lt;/u&gt;으로 인해 정정할 경우 : &quot;정정 신청&quot; 절차가 진행됩니다.&lt;/fc&gt;&#13;&#10; &lt;fs =v='8'&gt;(현재 수정한 내용이 있더라도 저장되지 않으며, &lt;fc v='red'&gt;정정 신청 &lt;u v='true'&gt;승인 이후 다시 작성&lt;/u&gt; 하셔야 합니다.&lt;/fc&gt;)&lt;/fs&gt;&#13;&#10;&#13;&#10;&lt;fc v='red'&gt;▶ 의무기록 정정에 의해 발생하는 문제에 대한 법률적 책임은 정정한 의사 본인에게&#13;&#10; 있으므로 의무기록 정정 시 충분히 검토 후 위·변조 관리에 각별히 주의하시기 바랍니다.&#13;&#10; (위반 시, 3년 이하의 징역 또는 3천만원 이하의 벌금 및 면허 자격정지 등 처분)&lt;/fc&gt;&#13;&#10;&#13;&#10;※ 문의 : 의무기록팀 [본원 : 6033, 5232~6 ,칠곡 : 2402 ~2406]" style="padding:0 0 0 10;font:Dotum,10,bold;" class="sta_DG_box" anchor="bottom" textInfo_app="▶ 정정 사유 및 내용을 구체적으로 기술하시기 바랍니다. (오류기록 작성 경위 등 포함)&#13;&#10;&#13;&#10;▶ 아래 기준에 해당될 경우 의무기록 정정 신청이 반려될 수 있습니다.&#13;&#10; 정정 사유 부정확, 정정 내용 부적절, 위원회 심의 필요, 환자용 정정신청서 미제출 등&#13;&#10;&#13;&#10;&lt;fc v='red'&gt;▶ 의무기록 정정에 의해 발생하는 문제에 대한 법률적 책임은 정정한 의사 본인에게&#13;&#10; 있으므로 의무기록 정정 시 충분히 검토 후 위·변조 관리에 각별히 주의하시기 바랍니다.&#13;&#10; (위반 시, 3년 이하의 징역 또는 3천만원 이하의 벌금 및 면허 자격정지 등 처분)&lt;/fc&gt;&#13;&#10;&#13;&#10;&lt;fc v='blue'&gt;▶ 정정 승인 이후 [진료_공통 ☞ 진료현황판 ☞ 의무기록승인완료]를 통해 정정 할 수 있습니다.&lt;/fc&gt;&#13;&#10;&#13;&#10;※ 문의 : 의무기록팀 [본원 : 6033, 5232~6 ,칠곡 : 2402 ~2406]" textInfo_resn="&lt;fc v='blue'&gt;▶ &lt;u v='true'&gt;환자 요청&lt;/u&gt;으로 인해 정정할 경우 : &quot;정정 신청&quot; 절차가 진행됩니다.&lt;/fc&gt;&#13;&#10; &lt;fs =v='8'&gt;(현재 수정한 내용이 있더라도 저장되지 않으며, &lt;fc v='red'&gt;정정 신청 &lt;u v='true'&gt;승인 이후 다시 작성&lt;/u&gt; 하셔야 합니다.&lt;/fc&gt;)&lt;/fs&gt;&#13;&#10;&#13;&#10;&lt;fc v='red'&gt;▶ 의무기록 정정에 의해 발생하는 문제에 대한 법률적 책임은 정정한 의사 본인에게&#13;&#10; 있으므로 의무기록 정정 시 충분히 검토 후 위·변조 관리에 각별히 주의하시기 바랍니다.&#13;&#10; (위반 시, 3년 이하의 징역 또는 3천만원 이하의 벌금 및 면허 자격정지 등 처분)&lt;/fc&gt;&#13;&#10;&#13;&#10;※ 문의 : 의무기록팀 [본원 : 6033, 5232~6 ,칠곡 : 2402 ~2406]" posInfo_app="absolute 12 112 638 278" usedecorate="true"/>
  8. <Button position="absolute 589 9 641 29" id="btn_cancel" class="btn4" text="취소" onclick="btn_cancel_onclick"/>
  9. <Button position="absolute 534 9 586 29" id="btn_confirm" class="btn4" text="저장" onclick="btn_confirm_onclick"/>
  10. <Static id="stt_titleText" text="팝업타이틀" class="sta_POP_title" position="absolute 12 8 161 28"/>
  11. <Button id="btn_close" taborder="5" class="btn_POP_cls" position="absolute 572 10 590 26" onclick="btn_close_onclick" visible="false"/>
  12. <Static id="Static05" text="H10" onclick="Static76_onclick" class="sta_guide" visible="false" position="absolute 600 0 640 10"/>
  13. <Static id="Static04" text="W&#13;&#10;10" onclick="Static76_onclick" class="sta_guide" visible="false" position="absolute 640 0 650 36"/>
  14. <Static id="Static76" text="H10" onclick="Static76_onclick" class="sta_guide" visible="false" position="absolute 2 36 648 46"/>
  15. <Static id="Static01" text="W&#13;&#10;10" onclick="Static76_onclick" class="sta_guide" visible="false" position="absolute 638 46 648 192"/>
  16. <Static id="Static00" text="W&#13;&#10;10" onclick="Static76_onclick" class="sta_guide" visible="false" position="absolute 2 46 12 192"/>
  17. <Static id="stx_1" position="absolute 652 45 1212 100" style="color:red;align:center middle;font:Dotum,11,bold;" text="해당환자는 사본발급 이력이 없습니다." class="sta_DG_box" visible="false"/>
  18. <Button id="btn_chrt" taborder="6" text="사본발급이력확인" position="absolute 1085 105 1212 125" class="btn4" onclick="btn_chrt_onclick" enable="false" visible="false"/>
  19. <Static id="caption00" text="정정사유" class="cell_1" position="absolute 12 46 92 141" anchor="top right"/>
  20. <Radio id="rdo_appresn" taborder="7" columncount="1" rowcount="5" innerdataset="@ds_M0804" codecolumn="cdid" datacolumn="cdnm" position="absolute 97 47 485 136" anchor="top right" onitemchanged="rdo_appresn_onitemchanged"/>
  21. <Edit id="ipt_appresnetc" taborder="8" autoselect="true" position="absolute 177 120 422 139" anchor="top right" enable="false" posInfo_app="absolute 177 120 422 139"/>
  22. <Static id="cap_appdetail" text="정정항목&#13;&#10;및 내용" class="cell_1" position="absolute 12 144 92 227" anchor="top right" visible="false"/>
  23. <TextArea id="txt_appdetail" taborder="9" position="absolute 95 145 638 223" anchor="top right" class="input_essential" visible="false" autoselect="true"/>
  24. <Static id="Static02" text="H10" onclick="Static76_onclick" class="sta_guide" visible="false" position="absolute 2 310 648 320"/>
  25. <Button id="btn_ocrprnt" taborder="10" text="정정신청서(환자용) 출력" position="absolute 366 9 517 29" class="btn5" visible="false" onclick="btn_ocrprnt_onclick"/>
  26. <Grid id="grd_mdfrecdetail" taborder="11" binddataset="ds_data_mdfrecdetail" autoenter="select" useinputpanel="false" cellsizingtype="col" autofittype="col" position="absolute 95 144 638 227" visible="false">
  27. <Formats>
  28. <Format id="default">
  29. <Columns>
  30. <Column size="25"/>
  31. <Column size="0"/>
  32. <Column size="0"/>
  33. <Column size="0"/>
  34. <Column size="120"/>
  35. <Column size="0"/>
  36. <Column size="370"/>
  37. <Column size="0"/>
  38. <Column size="0"/>
  39. <Column size="0"/>
  40. <Column size="0"/>
  41. </Columns>
  42. <Rows>
  43. <Row size="20" band="head"/>
  44. <Row size="20"/>
  45. </Rows>
  46. <Band id="head">
  47. <Cell/>
  48. <Cell col="1" displaytype="normal" text="instcd"/>
  49. <Cell col="2" displaytype="normal" text="appno"/>
  50. <Cell col="3" displaytype="normal" text="seqno"/>
  51. <Cell col="4" displaytype="normal" text="정정항목"/>
  52. <Cell col="5" displaytype="normal" text="itemnm"/>
  53. <Cell col="6" displaytype="normal" text="정정내용"/>
  54. <Cell col="7" displaytype="normal" text="fstrgstrid"/>
  55. <Cell col="8" displaytype="normal" text="fstrgstdt"/>
  56. <Cell col="9" displaytype="normal" text="lastupdtrid"/>
  57. <Cell col="10" displaytype="normal" text="lastupdtdt"/>
  58. </Band>
  59. <Band id="body">
  60. <Cell celltype="head"/>
  61. <Cell col="1" displaytype="normal" text="bind:instcd"/>
  62. <Cell col="2" displaytype="normal" text="bind:appno"/>
  63. <Cell col="3" displaytype="normal" text="bind:seqno"/>
  64. <Cell col="4" displaytype="combo" edittype="combo" text="bind:itemcd" combodataset="ds_init_unprepitem" combocodecol="unprepitemcd" combodatacol="unprepitemnm"/>
  65. <Cell col="5" displaytype="normal" text="bind:itemnm"/>
  66. <Cell col="6" displaytype="text" edittype="text" text="bind:itemdetail"/>
  67. <Cell col="7" displaytype="normal" text="bind:fstrgstrid"/>
  68. <Cell col="8" displaytype="normal" text="bind:fstrgstdt"/>
  69. <Cell col="9" displaytype="normal" text="bind:lastupdtrid"/>
  70. <Cell col="10" displaytype="normal" text="bind:lastupdtdt"/>
  71. </Band>
  72. </Format>
  73. </Formats>
  74. </Grid>
  75. <Button id="btn_addrow" taborder="12" text="행추가" onclick="btn_addrow_onclick" class="btn2" position="absolute 508 146 563 163" anchor="top right" acptstatus="A" compare="" addInfo="" visible="false"/>
  76. <Button id="btn_delrow" taborder="13" text="행삭제" onclick="btn_delrow_onclick" class="btn2" position="absolute 564 146 619 163" anchor="top right" acptstatus="A" compare="" addInfo="" visible="false"/>
  77. </Layout>
  78. </Layouts>
  79. <Objects>
  80. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  81. <ColumnInfo>
  82. <Column id="status" type="STRING" size="256" sumtext="상태"/>
  83. <Column id="instcd" type="STRING" size="256" sumtext="기관코드"/>
  84. <Column id="formrecseq" type="BIGDECIMAL" size="256" sumtext="서식기록순번"/>
  85. <Column id="pid" type="STRING" size="256" sumtext="등록번호"/>
  86. <Column id="orddd" type="STRING" size="256" sumtext="진료일자"/>
  87. <Column id="cretno" type="INT" size="256" sumtext="생성번호"/>
  88. <Column id="chosflag" type="STRING" size="256" sumtext="내원구분"/>
  89. <Column id="orddeptcd" type="STRING" size="256" sumtext="진료과"/>
  90. <Column id="orddrid" type="STRING" size="256" sumtext="진료의id"/>
  91. <Column id="formrecdeptcd" type="STRING" size="256" sumtext="서식기록부서코드"/>
  92. <Column id="formrecuserid" type="STRING" size="256" sumtext="서식기록사용자id"/>
  93. <Column id="lastrechistseq" type="BIGDECIMAL" size="256" sumtext="최종기록이력순번"/>
  94. <Column id="delyn" type="STRING" size="256" sumtext="삭제여부"/>
  95. <Column id="valiyn" type="STRING" size="256" sumtext="유효여부"/>
  96. <Column id="formcd" type="STRING" size="256" sumtext="서식코드"/>
  97. <Column id="srcformcd" type="STRING" size="256" sumtext="참조서식코드"/>
  98. <Column id="formfromdt" type="STRING" size="256" sumtext="서식시작일자"/>
  99. <Column id="formdegnseq" type="BIGDECIMAL" size="256" sumtext="서식디자인순번"/>
  100. <Column id="fstrgstrid" type="STRING" size="256" sumtext="최초등록자id"/>
  101. <Column id="fstrgstdt" type="STRING" size="256" sumtext="최초등록일시"/>
  102. <Column id="lastupdtrid" type="STRING" size="256" sumtext="최종등록자id"/>
  103. <Column id="lastupdtdt" type="STRING" size="256" sumtext="최종등록일시"/>
  104. <Column id="rechistseq" type="BIGDECIMAL" size="256" sumtext="기록이력순번"/>
  105. <Column id="formrecdd" type="STRING" size="256" sumtext="서식기록일자"/>
  106. <Column id="formrechm" type="STRING" size="256" sumtext="서식기록시분"/>
  107. <Column id="formrecextnnm" type="STRING" size="256" sumtext="서식부제목"/>
  108. <Column id="espiseq" type="BIGDECIMAL" size="256" sumtext="전자서명순번"/>
  109. <Column id="certcnts" type="STRING" size="256" sumtext="인증기록base64"/>
  110. <Column id="bfcertcnts" type="STRING" size="256" sumtext="인증전기록"/>
  111. <Column id="espiyn" type="STRING" size="256" sumtext="인증저장여부"/>
  112. <Column id="cosignyn" type="STRING" size="256" sumtext="코사인여부"/>
  113. <Column id="extnflag" type="STRING" size="256" sumtext="구분"/>
  114. <Column id="oprsrvno" type="STRING" size="256" sumtext="수술예약번호"/>
  115. <Column id="dralertcnts" type="STRING" size="256" sumtext="반려사유"/>
  116. <Column id="cosign" type="STRING" size="256" sumtext="코사인진행여부(코사인된기록인지여부)"/>
  117. </ColumnInfo>
  118. <Rows>
  119. <Row/>
  120. </Rows>
  121. </Dataset>
  122. <Dataset id="ds_rsltmsg" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  123. <ColumnInfo>
  124. <Column id="msg" type="STRING" size="256" sumtext="메세지"/>
  125. <Column id="formrecseq" type="BIGDECIMAL" size="256" sumtext="서식기록순번"/>
  126. <Column id="rechistseq" type="BIGDECIMAL" size="256" sumtext="기록이력순번"/>
  127. <Column id="espiseq" type="BIGDECIMAL" size="256" sumtext="전자서명순번"/>
  128. <Column id="cosign" type="STRING" size="256" sumtext="코사인진행여부(코사인된기록인지여부)"/>
  129. <Column id="cnclyn" type="STRING" size="256" sumtext="취소(반려여부)"/>
  130. </ColumnInfo>
  131. </Dataset>
  132. <Dataset id="ds_main_accresn" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  133. <ColumnInfo>
  134. <Column id="instcd" type="STRING" size="256"/>
  135. <Column id="appdd" type="STRING" size="256"/>
  136. <Column id="acptstatus" type="STRING" size="256"/>
  137. <Column id="formcd" type="STRING" size="256"/>
  138. <Column id="formrecseq" type="STRING" size="256"/>
  139. <Column id="appfalg" type="STRING" size="256"/>
  140. <Column id="pid" type="STRING" size="256"/>
  141. <Column id="orddd" type="STRING" size="256"/>
  142. <Column id="cretno" type="STRING" size="256"/>
  143. <Column id="ordtype" type="STRING" size="256"/>
  144. <Column id="appdeptcd" type="STRING" size="256"/>
  145. <Column id="appdrid" type="STRING" size="256"/>
  146. <Column id="apptype" type="STRING" size="256"/>
  147. <Column id="apptypeetc" type="STRING" size="256"/>
  148. <Column id="appdetail" type="STRING" size="256"/>
  149. </ColumnInfo>
  150. <Rows>
  151. <Row/>
  152. </Rows>
  153. </Dataset>
  154. <Dataset id="ds_data_chartinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  155. <Dataset id="ds_data_formmast" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  156. <Dataset id="ds_data_formrec" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  157. <Dataset id="ds_rtn" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  158. <ColumnInfo>
  159. <Column id="activeyn" type="STRING" size="256"/>
  160. </ColumnInfo>
  161. <Rows>
  162. <Row>
  163. <Col id="activeyn">N</Col>
  164. </Row>
  165. </Rows>
  166. </Dataset>
  167. <Dataset id="ds_temp_pathistlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  168. <ColumnInfo>
  169. <Column id="rowcnt" type="STRING" size="256" sumtext="행번호"/>
  170. <Column id="pid" type="STRING" size="256" sumtext="등록번호"/>
  171. <Column id="hngnm" type="STRING" size="256" sumtext="환자명"/>
  172. <Column id="orddd" type="STRING" size="256" sumtext="진료일자"/>
  173. <Column id="cretno" type="STRING" size="256" sumtext="생성번호"/>
  174. <Column id="orddeptcd" type="STRING" size="256" sumtext="진료과코드"/>
  175. <Column id="orddeptnm" type="STRING" size="256" sumtext="진료과명"/>
  176. <Column id="orddrid" type="STRING" size="256" sumtext="진료의ID"/>
  177. <Column id="orddrnm" type="STRING" size="256" sumtext="진료의명"/>
  178. <Column id="ordtype" type="STRING" size="256" sumtext="내원구분"/>
  179. <Column id="dschdd" type="STRING" size="256" sumtext="퇴원일자"/>
  180. <Column id="chosinfo" type="STRING" size="256" sumtext="내원정보"/>
  181. </ColumnInfo>
  182. </Dataset>
  183. <Dataset id="ds_temp_unprepdrlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  184. <ColumnInfo>
  185. <Column id="checkflag" type="STRING" size="256" sumtext="check구분"/>
  186. <Column id="orddeptnm" type="STRING" size="256" sumtext="등록번호"/>
  187. <Column id="deptabbrnm" type="STRING" size="256" sumtext="부서약어명"/>
  188. <Column id="orddeptcd" type="STRING" size="256" sumtext="진료과코드"/>
  189. <Column id="orddrid" type="STRING" size="256" sumtext="진료의ID"/>
  190. <Column id="orddrnm" type="STRING" size="256" sumtext="진료의명"/>
  191. <Column id="jobposcd" type="STRING" size="256" sumtext="직종코드"/>
  192. <Column id="jobposnm" type="STRING" size="256" sumtext="직종명"/>
  193. <Column id="drstate" type="STRING" size="256" sumtext="진료상태"/>
  194. </ColumnInfo>
  195. </Dataset>
  196. <Dataset id="ds_data_unprepinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  197. <ColumnInfo>
  198. <Column id="status" type="STRING" size="256" sumtext="처리구분"/>
  199. <Column id="indschflag" type="STRING" size="256" sumtext="입퇴원구분"/>
  200. <Column id="pid" type="STRING" size="256" sumtext="등록번호"/>
  201. <Column id="cretno" type="STRING" size="256" sumtext="생성번호"/>
  202. <Column id="hngnm" type="STRING" size="256" sumtext="환자명"/>
  203. <Column id="formrecseq" type="STRING" size="256" sumtext="서식기록번호"/>
  204. <Column id="dschdeptcd" type="STRING" size="256" sumtext="퇴원과코드"/>
  205. <Column id="dschdeptnm" type="STRING" size="256" sumtext="퇴원과명"/>
  206. <Column id="unprepno" type="STRING" size="256" sumtext="미비번호"/>
  207. <Column id="dschdd" type="STRING" size="256" sumtext="퇴원일자"/>
  208. <Column id="indd" type="STRING" size="256" sumtext="입원일자"/>
  209. <Column id="orgunprepstat" type="STRING" size="256" sumtext="원미비상태"/>
  210. <Column id="unprepstat" type="STRING" size="256" sumtext="미비상태"/>
  211. <Column id="doctkindflag" type="STRING" size="256" sumtext="의사직종구분"/>
  212. <Column id="orgdoctkindflag" type="STRING" size="256" sumtext="원의사직종구분"/>
  213. <Column id="drstate" type="STRING" size="256" sumtext="의사상태(파견, 종료)"/>
  214. <Column id="unprepdrnm" type="STRING" size="256" sumtext="미비의사명"/>
  215. <Column id="orgunprepdrnm" type="STRING" size="256" sumtext="원미비의사명"/>
  216. <Column id="unprepdeptnm" type="STRING" size="256" sumtext="미비부서명"/>
  217. <Column id="orgunprepdeptnm" type="STRING" size="256" sumtext="원미비부서명"/>
  218. <Column id="orddeptcd" type="STRING" size="256" sumtext="미비과코드"/>
  219. <Column id="orgorddeptcd" type="STRING" size="256" sumtext="원미비과코드"/>
  220. <Column id="detldeptcd" type="STRING" size="256" sumtext="미비분과코드"/>
  221. <Column id="orgdetldeptcd" type="STRING" size="256" sumtext="원미비분과코드"/>
  222. <Column id="unprepdrid" type="STRING" size="256" sumtext="미비의사ID"/>
  223. <Column id="orgunprepdrid" type="STRING" size="256" sumtext="원미비의사ID"/>
  224. <Column id="formcd" type="STRING" size="256" sumtext="서식코드"/>
  225. <Column id="formnm" type="STRING" size="256" sumtext="서식명"/>
  226. <Column id="oprsrvno" type="STRING" size="256" sumtext="수술예약번호"/>
  227. <Column id="unprepitemnm" type="STRING" size="256" sumtext="미비항목명"/>
  228. <Column id="formrecdd" type="STRING" size="256" sumtext="서식일자"/>
  229. <Column id="unprepitemcd" type="STRING" size="256" sumtext="미비항목코드"/>
  230. <Column id="medirecalertcnts" type="STRING" size="256" sumtext="의무기록알림내용"/>
  231. <Column id="drcnfmdt" type="STRING" size="256" sumtext="의사확인일시"/>
  232. <Column id="drcnfmrid" type="STRING" size="256" sumtext="의사확인ID"/>
  233. <Column id="dralertcnts" type="STRING" size="256" sumtext="의사알림내용"/>
  234. <Column id="fstrgstrnm" type="STRING" size="256" sumtext="최초등록자"/>
  235. <Column id="fstrgstdt" type="STRING" size="256" sumtext="최초등록일시"/>
  236. <Column id="lastupdtrnm" type="STRING" size="256" sumtext="최종수정자"/>
  237. <Column id="lastupdtdt" type="STRING" size="256" sumtext="최종수정일시"/>
  238. <Column id="mprocessyn" type="STRING" size="256" sumtext="정정프로세스 여부"/>
  239. </ColumnInfo>
  240. </Dataset>
  241. <Dataset id="ds_M0802" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  242. <ColumnInfo>
  243. <Column id="cdid" type="STRING" size="256"/>
  244. <Column id="cdnm" type="STRING" size="256"/>
  245. </ColumnInfo>
  246. <Rows/>
  247. </Dataset>
  248. <Dataset id="ds_M0803" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  249. <ColumnInfo>
  250. <Column id="cdid" type="STRING" size="256"/>
  251. <Column id="cdnm" type="STRING" size="256"/>
  252. </ColumnInfo>
  253. <Rows>
  254. <!--
  255. <Row>
  256. <Col id="hardcd">R1</Col>
  257. <Col id="hardcdnm">기록 보완</Col>
  258. </Row>
  259. <Row>
  260. <Col id="hardcd">R2</Col>
  261. <Col id="hardcdnm">기록 삭제</Col>
  262. </Row>
  263. <Row>
  264. <Col id="hardcd">R3</Col>
  265. <Col id="hardcdnm">적정성 평가</Col>
  266. </Row>
  267. <Row>
  268. <Col id="hardcd">R4</Col>
  269. <Col id="hardcdnm">이의 신청</Col>
  270. </Row>
  271. <Row>
  272. <Col id="hardcd">R5</Col>
  273. <Col id="hardcdnm">환자 요청</Col>
  274. </Row>
  275. <Row>
  276. <Col id="hardcd">R6</Col>
  277. <Col id="hardcdnm">기타</Col>
  278. </Row>
  279. -->
  280. </Rows>
  281. </Dataset>
  282. <Dataset id="ds_M0804" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  283. <ColumnInfo>
  284. <Column id="cdid" type="STRING" size="256"/>
  285. <Column id="cdnm" type="STRING" size="256"/>
  286. </ColumnInfo>
  287. <Rows>
  288. <!--
  289. <Row>
  290. <Col id="hardcd">R1</Col>
  291. <Col id="hardcdnm">기록 보완</Col>
  292. </Row>
  293. <Row>
  294. <Col id="hardcd">R2</Col>
  295. <Col id="hardcdnm">기록 삭제</Col>
  296. </Row>
  297. <Row>
  298. <Col id="hardcd">R3</Col>
  299. <Col id="hardcdnm">적정성 평가</Col>
  300. </Row>
  301. <Row>
  302. <Col id="hardcd">R4</Col>
  303. <Col id="hardcdnm">이의 신청</Col>
  304. </Row>
  305. <Row>
  306. <Col id="hardcd">R6</Col>
  307. <Col id="hardcdnm">기타</Col>
  308. </Row>
  309. -->
  310. </Rows>
  311. </Dataset>
  312. <Dataset id="ds_M0807" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  313. <ColumnInfo>
  314. <Column id="cdid" type="STRING" size="256"/>
  315. <Column id="cdnm" type="STRING" size="256"/>
  316. </ColumnInfo>
  317. <Rows/>
  318. </Dataset>
  319. <Dataset id="ds_data_mdfrecinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  320. <ColumnInfo>
  321. <Column id="instcd" type="STRING" size="256"/>
  322. <Column id="appdd" type="STRING" size="256"/>
  323. <Column id="appno" type="STRING" size="256"/>
  324. <Column id="acptstatus" type="STRING" size="256"/>
  325. <Column id="formcd" type="STRING" size="256"/>
  326. <Column id="formnm" type="STRING" size="256"/>
  327. <Column id="formrecseq" type="STRING" size="256"/>
  328. <Column id="oprsrvno" type="STRING" size="256"/>
  329. <Column id="ocrtag" type="STRING" size="256"/>
  330. <Column id="appflag" type="STRING" size="256"/>
  331. <Column id="pid" type="STRING" size="256"/>
  332. <Column id="orddd" type="STRING" size="256"/>
  333. <Column id="cretno" type="STRING" size="256"/>
  334. <Column id="ordtype" type="STRING" size="256"/>
  335. <Column id="appdeptcd" type="STRING" size="256"/>
  336. <Column id="appdrid" type="STRING" size="256"/>
  337. <Column id="appdrnm" type="STRING" size="256"/>
  338. <Column id="jobkindnm" type="STRING" size="256"/>
  339. <Column id="jobkindcd" type="STRING" size="256"/>
  340. <Column id="doctkindflag" type="STRING" size="256"/>
  341. <Column id="apptype" type="STRING" size="256"/>
  342. <Column id="appresn" type="STRING" size="256"/>
  343. <Column id="appresnetc" type="STRING" size="256"/>
  344. <Column id="appdetail" type="STRING" size="256"/>
  345. <Column id="appcncldt" type="STRING" size="256"/>
  346. <Column id="appcnclresn" type="STRING" size="256"/>
  347. <Column id="appmedispclid" type="STRING" size="256"/>
  348. <Column id="appmedispclnm" type="STRING" size="256"/>
  349. <Column id="medispclid" type="STRING" size="256"/>
  350. <Column id="medispclnm" type="STRING" size="256"/>
  351. <Column id="acptmedispclid" type="STRING" size="256"/>
  352. <Column id="acptmedispclnm" type="STRING" size="256"/>
  353. <Column id="acptmedispcldt" type="STRING" size="256"/>
  354. <Column id="acptcnclmedispclid" type="STRING" size="256"/>
  355. <Column id="acptcnclmedispclnm" type="STRING" size="256"/>
  356. <Column id="acptcnclmedispcldt" type="STRING" size="256"/>
  357. <Column id="acptcnclmedispclresn" type="STRING" size="256"/>
  358. <Column id="acptid" type="STRING" size="256"/>
  359. <Column id="acptnm" type="STRING" size="256"/>
  360. <Column id="acptdt" type="STRING" size="256"/>
  361. <Column id="acptcnclid" type="STRING" size="256"/>
  362. <Column id="acptcnclnm" type="STRING" size="256"/>
  363. <Column id="acptcncldt" type="STRING" size="256"/>
  364. <Column id="acptcnclresn" type="STRING" size="256"/>
  365. <Column id="fstrgstrid" type="STRING" size="256"/>
  366. <Column id="fstrgstdt" type="STRING" size="256"/>
  367. <Column id="lastupdtrid" type="STRING" size="256"/>
  368. <Column id="lastupdtdt" type="STRING" size="256"/>
  369. <Column id="disppatinfo" type="STRING" size="256"/>
  370. <Column id="hngnm" type="STRING" size="256"/>
  371. <Column id="brthdd" type="STRING" size="256"/>
  372. <Column id="sa" type="STRING" size="256"/>
  373. <Column id="comntype" type="STRING" size="256"/>
  374. <Column id="comnresn" type="STRING" size="256"/>
  375. <Column id="status" type="STRING" size="256"/>
  376. <Column id="saveyn" type="STRING" size="256"/>
  377. <Column id="srcformcd" type="STRING" size="256"/>
  378. </ColumnInfo>
  379. <Rows>
  380. <Row>
  381. <Col id="status">I</Col>
  382. <Col id="saveyn">N</Col>
  383. </Row>
  384. </Rows>
  385. </Dataset>
  386. <Dataset id="ds_temp_mdfrecinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  387. <ColumnInfo>
  388. <Column id="instcd" type="STRING" size="256"/>
  389. <Column id="appdd" type="STRING" size="256"/>
  390. <Column id="appno" type="STRING" size="256"/>
  391. <Column id="histno" type="STRING" size="256"/>
  392. <Column id="acptstatus" type="STRING" size="256"/>
  393. <Column id="formcd" type="STRING" size="256"/>
  394. <Column id="formnm" type="STRING" size="256"/>
  395. <Column id="formrecseq" type="STRING" size="256"/>
  396. <Column id="oprsrvno" type="STRING" size="256"/>
  397. <Column id="ocrtag" type="STRING" size="256"/>
  398. <Column id="appflag" type="STRING" size="256"/>
  399. <Column id="pid" type="STRING" size="256"/>
  400. <Column id="orddd" type="STRING" size="256"/>
  401. <Column id="cretno" type="STRING" size="256"/>
  402. <Column id="ordtype" type="STRING" size="256"/>
  403. <Column id="appdeptcd" type="STRING" size="256"/>
  404. <Column id="appdrid" type="STRING" size="256"/>
  405. <Column id="appdrnm" type="STRING" size="256"/>
  406. <Column id="jobkindnm" type="STRING" size="256"/>
  407. <Column id="jobkindcd" type="STRING" size="256"/>
  408. <Column id="doctkindflag" type="STRING" size="256"/>
  409. <Column id="apptype" type="STRING" size="256"/>
  410. <Column id="appresn" type="STRING" size="256"/>
  411. <Column id="appresnetc" type="STRING" size="256"/>
  412. <Column id="appdetail" type="STRING" size="256"/>
  413. <Column id="appcncldt" type="STRING" size="256"/>
  414. <Column id="appcnclresn" type="STRING" size="256"/>
  415. <Column id="medispclid" type="STRING" size="256"/>
  416. <Column id="medispclnm" type="STRING" size="256"/>
  417. <Column id="acptmedispclid" type="STRING" size="256"/>
  418. <Column id="acptmedispclnm" type="STRING" size="256"/>
  419. <Column id="acptmedispcldt" type="STRING" size="256"/>
  420. <Column id="acptcnclmedispclid" type="STRING" size="256"/>
  421. <Column id="acptcnclmedispclnm" type="STRING" size="256"/>
  422. <Column id="acptcnclmedispcldt" type="STRING" size="256"/>
  423. <Column id="acptcnclmedispclresn" type="STRING" size="256"/>
  424. <Column id="acptid" type="STRING" size="256"/>
  425. <Column id="acptnm" type="STRING" size="256"/>
  426. <Column id="acptdt" type="STRING" size="256"/>
  427. <Column id="acptcnclid" type="STRING" size="256"/>
  428. <Column id="acptcnclnm" type="STRING" size="256"/>
  429. <Column id="acptcncldt" type="STRING" size="256"/>
  430. <Column id="acptcnclresn" type="STRING" size="256"/>
  431. <Column id="fstrgstrid" type="STRING" size="256"/>
  432. <Column id="fstrgstdt" type="STRING" size="256"/>
  433. <Column id="lastupdtrid" type="STRING" size="256"/>
  434. <Column id="lastupdtdt" type="STRING" size="256"/>
  435. <Column id="disppatinfo" type="STRING" size="256"/>
  436. <Column id="hngnm" type="STRING" size="256"/>
  437. <Column id="brthdd" type="STRING" size="256"/>
  438. <Column id="sa" type="STRING" size="256"/>
  439. <Column id="comntype" type="STRING" size="256"/>
  440. <Column id="comnresn" type="STRING" size="256"/>
  441. <Column id="status" type="STRING" size="256"/>
  442. <Column id="saveyn" type="STRING" size="256"/>
  443. <Column id="srcformcd" type="STRING" size="256"/>
  444. </ColumnInfo>
  445. </Dataset>
  446. <Dataset id="ds_data_mdfrecdetail" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  447. <ColumnInfo>
  448. <Column id="instcd" type="STRING" size="256"/>
  449. <Column id="appno" type="STRING" size="256"/>
  450. <Column id="seqno" type="STRING" size="256"/>
  451. <Column id="itemcd" type="STRING" size="256"/>
  452. <Column id="itemnm" type="STRING" size="256"/>
  453. <Column id="itemdetail" type="STRING" size="256"/>
  454. <Column id="fstrgstrid" type="STRING" size="256"/>
  455. <Column id="fstrgstdt" type="STRING" size="256"/>
  456. <Column id="lastupdtrid" type="STRING" size="256"/>
  457. <Column id="lastupdtdt" type="STRING" size="256"/>
  458. </ColumnInfo>
  459. </Dataset>
  460. <Dataset id="ds_temp_mdfrecdetail" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  461. <ColumnInfo>
  462. <Column id="instcd" type="STRING" size="256"/>
  463. <Column id="appno" type="STRING" size="256"/>
  464. <Column id="seqno" type="STRING" size="256"/>
  465. <Column id="itemcd" type="STRING" size="256"/>
  466. <Column id="itemnm" type="STRING" size="256"/>
  467. <Column id="itemdetail" type="STRING" size="256"/>
  468. <Column id="fstrgstrid" type="STRING" size="256"/>
  469. <Column id="fstrgstdt" type="STRING" size="256"/>
  470. <Column id="lastupdtrid" type="STRING" size="256"/>
  471. <Column id="lastupdtdt" type="STRING" size="256"/>
  472. </ColumnInfo>
  473. </Dataset>
  474. <Dataset id="ds_hidden_ocrprint_calcscor" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  475. <ColumnInfo>
  476. <Column id="pid" type="STRING" size="256"/>
  477. <Column id="cretno" type="STRING" size="256"/>
  478. <Column id="orddd" type="STRING" size="256"/>
  479. <Column id="ordtype" type="STRING" size="256"/>
  480. <Column id="calcscorcd" type="STRING" size="256"/>
  481. <Column id="disflag" type="STRING" size="256"/>
  482. <Column id="prcpyn" type="STRING" size="256"/>
  483. <Column id="orddeptcd" type="STRING" size="256"/>
  484. <Column id="payflagcd" type="STRING" size="256"/>
  485. </ColumnInfo>
  486. <Rows>
  487. <Row>
  488. <Col id="disflag">calcscor</Col>
  489. </Row>
  490. </Rows>
  491. </Dataset>
  492. <Dataset id="ds_init_unprepitem" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  493. <ColumnInfo>
  494. <Column id="unprepitemcd" type="STRING" size="256"/>
  495. <Column id="unprepitemnm" type="STRING" size="256"/>
  496. </ColumnInfo>
  497. <Rows>
  498. <!--
  499. <Row>
  500. <Col id="hardcd">C1</Col>
  501. <Col id="hardcdnm">정정사유 부정확</Col>
  502. </Row>
  503. <Row>
  504. <Col id="hardcd">C2</Col>
  505. <Col id="hardcdnm">정정내용 부적절</Col>
  506. </Row>
  507. <Row>
  508. <Col id="hardcd">C3</Col>
  509. <Col id="hardcdnm">환자용 신청서 미제출</Col>
  510. </Row>
  511. <Row>
  512. <Col id="hardcd">C4</Col>
  513. <Col id="hardcdnm">위원회 심의 필요</Col>
  514. </Row>
  515. <Row>
  516. <Col id="hardcd">C5</Col>
  517. <Col id="hardcdnm">기타</Col>
  518. </Row>
  519. -->
  520. </Rows>
  521. </Dataset>
  522. </Objects>
  523. <Bind>
  524. <BindItem id="item49" compid="rdo_appresn" propid="value" datasetid="ds_data_mdfrecinfo" columnid="appresn"/>
  525. <BindItem id="item14" compid="ipt_appresnetc" propid="value" datasetid="ds_data_mdfrecinfo" columnid="appresnetc"/>
  526. <BindItem id="item50" compid="txt_appdetail" propid="value" datasetid="ds_data_mdfrecinfo" columnid="appdetail"/>
  527. </Bind>
  528. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  529. * System Name :
  530. * Job Name :
  531. * Creator :
  532. * Make Date : 2014-09-17
  533. * Description :
  534. *---------------------------------------------------------------------------------------
  535. * Modify Date Modifier Modify Description
  536. *---------------------------------------------------------------------------------------
  537. * 2014-09-17 Live Converter TF->XP
  538. *
  539. *---------------------------------------------------------------------------------------
  540. ****************************************************************************************/
  541. //=======================================================================================
  542. // Lib Include
  543. //---------------------------------------------------------------------------------------
  544. include "com_commonxp::comm_main.xjs";
  545. include "emr_prcpmngtxp::MMO001.xjs";
  546. include "pam_pamcomnxp::PAM.xjs"; //fPerPrintOCR
  547. //=======================================================================================
  548. // Global Form Variable
  549. //---------------------------------------------------------------------------------------
  550. var lgv_activeyn = "Y";
  551. var lgv_titletext = "정정사유";
  552. var lgv_old_detail = "";
  553. var lgv_rsnToapp = "N";
  554. //=======================================================================================
  555. // Function
  556. //---------------------------------------------------------------------------------------
  557. /****************************************************************************************
  558. * Argument : N/A
  559. * Description : 확인
  560. ****************************************************************************************/
  561. function fConfirm()
  562. {
  563. var sRsnCd = ds_data_mdfrecinfo.getColumn(0,"appresn");
  564. if (utlf_isNull(sRsnCd)){
  565. sysf_messageBox("정정사유가", "I004");
  566. rdo_appresn.setFocus();
  567. return;
  568. }else if (sRsnCd == "R5"){
  569. var sEtc = utlf_transNullToEmpty(ds_data_mdfrecinfo.getColumn(0,"appresnetc"));
  570. var tmpEtc = sEtc.replace(/\s/g, "");
  571. if (utlf_isNull(tmpEtc)) //기타사유 입력여부 검사
  572. {
  573. sysf_messageBox("정정사유를", "C001");
  574. ds_data_mdfrecinfo.setColumn(0,"appresnetc", tmpEtc);
  575. ipt_appresnetc.setFocus();
  576. return;
  577. }else{
  578. if (sEtc.length < 6){
  579. sysf_messageBox("한글5자, 영문10자 이상 기록", "I008");
  580. ipt_appresnetc.setFocus();
  581. return;
  582. }
  583. }
  584. }
  585. /*
  586. if( lgv_activeyn == "M" ){
  587. var sEtc = utlf_transNullToEmpty(ds_data_mdfrecinfo.getColumn(0,"appdetail"));
  588. var tmpEtc = sEtc.replace(/\s/g, "");
  589. if (utlf_isNull(tmpEtc)) //기타사유 입력여부 검사
  590. {
  591. sysf_messageBox("정정내용을", "C001");
  592. ds_data_mdfrecinfo.setColumn(0,"appdetail", tmpEtc);
  593. txt_appdetail.setFocus();
  594. return;
  595. }else{
  596. if (sEtc.length < 6){
  597. sysf_messageBox("한글5자, 영문10자 이상 기록", "I008");
  598. txt_appdetail.setFocus();
  599. return;
  600. }
  601. }
  602. }
  603. */
  604. if( lgv_activeyn == "M" ){
  605. // 정정항목 및 내용 데이터 취합
  606. var nRowCnt = ds_data_mdfrecdetail.rowcount;
  607. if( nRowCnt > 0 ){
  608. for(var i=nRowCnt-1; i>=0; i--){
  609. var nItemcd = ds_data_mdfrecdetail.getColumn(i, "itemcd");
  610. var nItemnm = ds_data_mdfrecdetail.getColumn(i, "itemnm");
  611. var nItemdetail = ds_data_mdfrecdetail.getColumn(i, "itemdetail");
  612. var nRowType = ds_data_mdfrecdetail.getRowType(i);
  613. if( nItemcd == "-" && !utlf_isNull(nItemdetail)){
  614. sysf_messageBox((i+1) + "행 정정항목을 선택", "I008"); //하십시오.
  615. return false;
  616. }
  617. if( nItemcd != "-" && utlf_isNull(nItemdetail)){
  618. sysf_messageBox((i+1) + "행 정정내용을 입력", "I008");
  619. return false;
  620. }
  621. // 불필요행 삭제
  622. if( nItemcd == "-" && utlf_isNull(nItemdetail)){
  623. if( nRowType == 2 ){
  624. ds_data_mdfrecdetail.deleteRow(i);
  625. }else{
  626. grdf_setStatus(grd_mdfrecdetail, "D", [i]);
  627. }
  628. }
  629. if( nItemcd != "-" && utlf_isNull(nItemnm)){
  630. var tmpItemnm = ds_init_unprepitem.lookup("unprepitemcd", nItemcd, "unprepitemnm");
  631. if( !utlf_isNull(tmpItemnm) ){
  632. ds_data_mdfrecdetail.setColumn(i, "itemnm", tmpItemnm);
  633. }
  634. }
  635. }// for
  636. }
  637. var iCnt = grdf_getUpdateRows("grd_mdfrecdetail", "insert");
  638. var uCnt = grdf_getUpdateRows("grd_mdfrecdetail", "update");
  639. var dCnt = grdf_getUpdateRows("grd_mdfrecdetail", "delete");
  640. var tCnt = (iCnt.length+uCnt.length);
  641. if( (ds_data_mdfrecdetail.rowcount - dCnt) == 0 && tCnt == 0){
  642. sysf_messageBox("정정항목 및 내용은 하나이상 입력", "I008");
  643. return false;
  644. }
  645. dsf_createDs("ds_data_TXMRI06001");
  646. var oParam = {};
  647. oParam.id = "TXMRI06100";
  648. oParam.service = "recmngtapp.MdfRecMngt";
  649. oParam.method = "reqExeSaveMdfRecInfo";
  650. oParam.inds = "req=ds_data_mdfrecinfo detail=ds_data_mdfrecdetail:U";
  651. oParam.outds = "ds_data_TXMRI06001=mdfreclist";
  652. oParam.async = false;
  653. oParam.callback = "cf_TXMRI06100";
  654. tranf_submit(oParam);
  655. }else{
  656. // R4 : 환자요청
  657. if (sRsnCd == "R4"){
  658. if( lgv_rsnToapp == "Y" ){
  659. sysf_messageBox("정정 신청 처리되었습니다.\n\n정정 승인 이후 [진료_공통 ☞ 진료현황판 ☞ 의무기록승인완료]를 통해 정정 할 수 있습니다. (※문의: 의무기록팀)", "I");
  660. return false;
  661. }
  662. if( lf_ChkMdfRecCnt() == false ){
  663. return false;
  664. }
  665. var rtn = sysf_messageBox("정정 신청 절차를 진행하시겠습니까?\n(단, 현재 수정한 내용이 있더라도 저장되지 않으며 승인 후 재작성 하여야 합니다)", "Q");
  666. if( rtn == 6 ){
  667. var objArg = new Object();
  668. objArg.arg_ds_data_formmast = ds_data_formmast;
  669. objArg.arg_ds_data_formrec = ds_data_formrec;
  670. objArg.arg_nRsncd = sRsnCd;
  671. objArg.arg_nFlag = arg_nFlag;
  672. objArg.arg_pid = arg_pid;
  673. objArg.arg_activeyn = "M";
  674. var rtnDs = frmf_modal("SPMRI06100_1", "SPMRI06100", objArg, null, null, null, null, null, null, null, null, null, "P");
  675. if( rtnDs.arg_nSaveyn == "Y" ){
  676. lgv_rsnToapp = "Y";
  677. }
  678. }
  679. return false;
  680. }
  681. // Staff Sign 된 기록 미비 데이터 생성
  682. // 기록 [삭제] 시 미비 생성
  683. var sCosign = ds_data_formrec.getColumn(0, "cosign");
  684. var nApptype = ds_data_mdfrecinfo.getColumn(0, "apptype");
  685. if( sCosign == "Y" || nApptype == "D"){
  686. var nFlag = sCosign == "Y" ? "Y" : "D";
  687. lf_SetUnPrepInfo(nFlag);
  688. if( ds_data_unprepinfo.rowcount > 0 ){
  689. var sRsnNm = ds_M0804.lookup("cdid", sRsnCd, "cdnm");
  690. var sRsnEtc = utlf_transNullToEmpty(ds_data_mdfrecinfo.getColumn(0,"appresnetc"));
  691. if (!utlf_isNull(sRsnEtc))
  692. {
  693. sRsnNm += " -Comments : " + sRsnEtc;
  694. }
  695. ds_data_unprepinfo.setColumn(0, "dralertcnts", sRsnNm);
  696. }
  697. }
  698. var objArg = new Object();
  699. objArg.arg_ds_data_mdfrecinfo = this.removeChild("ds_data_mdfrecinfo");
  700. objArg.arg_ds_data_mdfrecdetail = this.removeChild("ds_data_mdfrecdetail");
  701. objArg.arg_ds_data_unprepinfo = this.removeChild("ds_data_unprepinfo");
  702. objArg.arg_nSaveyn = "Y";
  703. this.close(objArg);
  704. }
  705. }
  706. function cf_TXMRI06100(sSvcId, nErrorCode, sErrorMsg) {
  707. if(nErrorCode < 0) return;
  708. /*
  709. if( ds_data_formrec.getColumn(0, "cosign") == "Y" ){
  710. dsf_setDefaultVal(ds_data_formrec, "cosignyn:N");
  711. ds_data_formrec.setColumn(0,"status", "D");
  712. ds_data_formrec.setColumn(0,"cosign", "Y");
  713. ds_data_formrec.addColumn("dralertcnts", "string");
  714. ds_data_formrec.setColumn(0,"dralertcnts", "기타 -Comments : 정정신청");
  715. var oParam = {};
  716. oParam.id = "TXMMR01302";
  717. oParam.service = "medirecapp.ComnMediRec";
  718. oParam.method = "reqExeFormRecCoSign";
  719. oParam.inds = "formrec=ds_data_formrec";
  720. oParam.outds = "ds_rsltmsg=rsltmsg";
  721. oParam.async = false;
  722. //oParam.callback = "cf_TXMMR01302";
  723. tranf_submit(oParam);
  724. }
  725. */
  726. sysf_messageBox("정정 신청 처리되었습니다.\n\n정정 승인 이후 [진료_공통 ☞ 진료현황판 ☞ 의무기록승인완료]를 통해 정정 할 수 있습니다. (※문의: 의무기록팀)", "I");
  727. var objArg = new Object();
  728. objArg.arg_ds_data_mdfrecinfo = this.removeChild("ds_data_mdfrecinfo");
  729. objArg.arg_ds_data_mdfrecdetail = this.removeChild("ds_data_mdfrecdetail");
  730. objArg.arg_ds_data_unprepinfo = this.removeChild("ds_data_unprepinfo");
  731. objArg.arg_nSaveyn = "Y";
  732. this.close(objArg);
  733. // ds_data_mdfrecinfo.setColumn(0, "saveyn", "Y");
  734. // var rtnDs = this.removeChild("ds_data_mdfrecinfo");
  735. // this.close(rtnDs);
  736. }
  737. /****************************************************************************************
  738. * Argument : N/A
  739. * Description : 취소
  740. ****************************************************************************************/
  741. function fCancel()
  742. {
  743. // ds_data_mdfrecinfo.setColumn(0, "saveyn", "N");
  744. // var rtnDs = this.removeChild("ds_data_mdfrecinfo");
  745. // this.close(rtnDs);
  746. var objArg = new Object();
  747. objArg.arg_ds_data_mdfrecinfo = this.removeChild("ds_data_mdfrecinfo");
  748. objArg.arg_ds_data_unprepinfo = this.removeChild("ds_data_unprepinfo");
  749. objArg.arg_nSaveyn = "N";
  750. this.close(objArg);
  751. }
  752. /****************************************************************************************
  753. * Argument : N/A
  754. * Description : 담당교수 ID 조회, last Ordtype 조회
  755. ****************************************************************************************/
  756. function lf_srchMedispclid(srchFlag){
  757. if( utlf_isNull(srchFlag ) ){
  758. srchFlag = "medispclid";
  759. }
  760. var nPid = ds_data_mdfrecinfo.getColumn(0, "pid");
  761. var nOrddd = ds_data_mdfrecinfo.getColumn(0, "orddd");
  762. var nCretno = ds_data_mdfrecinfo.getColumn(0, "cretno");
  763. var nOrdtype = "";
  764. if( srchFlag == "medispclid" ){
  765. //nOrdtype = ds_data_mdfrecinfo.getColumn(0, "ordtype");
  766. }
  767. var nInstcd = sysf_getUserInfo("dutplceinstcd");
  768. dsf_createDsRow("ds_cond_TRMRI06100", [{col:"pid", type:"string", size:256, val:nPid}
  769. , {col:"orddd", type:"string", size:256, val:nOrddd}
  770. , {col:"cretno", type:"bigdecimal", size:256, val:nCretno}
  771. , {col:"ordtype", type:"string", size:256, val:nOrdtype}
  772. , {col:"instcd", type:"string", size:256, val:nInstcd}
  773. ]);
  774. dsf_createDs("ds_data_TRMRI06100");
  775. var oParam = {};
  776. oParam.id = "TRMRI06100";
  777. oParam.service = "recmngtapp.MdfRecMngt";
  778. oParam.method = "reqGetMedispclid";
  779. oParam.inds = "req=ds_cond_TRMRI06100";
  780. oParam.outds = "ds_data_TRMRI06100=medispcl";
  781. oParam.async = false;
  782. oParam.progress = false;
  783. tranf_submit(oParam);
  784. if( ds_data_TRMRI06100.rowcount > 0 ){
  785. return utlf_transNullToEmpty(ds_data_TRMRI06100.getColumn(0, srchFlag));
  786. }
  787. return "";
  788. }
  789. function lf_ChkMdfRecCnt(){
  790. var status = ds_data_formrec.getColumn(0, "status");
  791. var formcd = ds_data_formrec.getColumn(0, "formcd")
  792. var formrecseq = ds_data_formrec.getColumn(0, "formrecseq");
  793. var pid = ds_data_formrec.getColumn(0, "pid");
  794. var orddd = ds_data_formrec.getColumn(0, "orddd");
  795. var cretno = ds_data_formrec.getColumn(0, "cretno");
  796. var ordtype = ds_data_formrec.getColumn(0, "chosioflag");
  797. if( utlf_isNull(ordtype) ){
  798. ordtype = ds_data_formrec.getColumn(0, "chosflag");
  799. }
  800. if( !utlf_isNull(formrecseq) && formrecseq != "0" ){
  801. dsf_createDsRow("ds_cond_TRMRI06002", [{col:"formcd", type:"STRING", size:"256", val:formcd}
  802. , {col:"formrecseq", type:"STRING", size:"256", val:formrecseq}
  803. , {col:"appdd", type:"STRING", size:"256", val:utlf_getCurrentDate()}
  804. , {col:"pid", type:"STRING", size:"256", val:pid}
  805. , {col:"orddd", type:"STRING", size:"256", val:orddd}
  806. , {col:"cretno", type:"STRING", size:"256", val:cretno}
  807. , {col:"ordtype", type:"STRING", size:"256", val:ordtype}
  808. , {col:"appdeptcd", type:"STRING", size:"256", val:sysf_getUserInfo("dutplcecd")}
  809. , {col:"appdrid", type:"STRING", size:"256", val:sysf_getUserInfo("userid")}
  810. ]);
  811. dsf_createDs("ds_data_TRMRI06002");
  812. var oParam = {};
  813. oParam.id = "TRMRI06002";
  814. oParam.service = "recmngtapp.MdfRecMngt";
  815. oParam.method = "reqGetMdfRecCnt";
  816. oParam.inds = "req=ds_cond_TRMRI06002";
  817. oParam.outds = "ds_data_TRMRI06002=mdfreccnt";
  818. oParam.async = false;
  819. tranf_submit(oParam);
  820. if( ds_data_TRMRI06002.getColumn(0, "cnt") > 0 ){
  821. var rtn = sysf_messageBox("신청한 이력이 존재합니다.\n상세 신청내용 확인", "S001");
  822. if( rtn == 6 ){
  823. frmf_setParameter("SPMRI06000_param_gubun", "appDup");
  824. frmf_modal("SPMRI06000", "SPMRI06000", null, null, null, null, null, null, null, null, null, null, "M");
  825. frmf_clearParameter("SPMRI06000_param_gubun");
  826. }
  827. return false;
  828. }
  829. }
  830. return true;
  831. }
  832. //=======================================================================================
  833. // Event
  834. //---------------------------------------------------------------------------------------
  835. /****************************************************************************************
  836. * Components : Form
  837. * Components ID : SPMRI06100
  838. * Event : oninit
  839. * Argument : 01.obj : Object Event has occurred
  840. * : 02.e : Event Object
  841. * Description : 화면 초기화
  842. ****************************************************************************************/
  843. function SPMRI06100_oninit(obj:Form, e:InitEventInfo)
  844. {
  845. frmf_initForm(obj);
  846. }
  847. /****************************************************************************************
  848. * Components : Form
  849. * Components ID : SPMRI06100
  850. * Event : onload
  851. * Argument : 01.obj : Object Event has occurred
  852. * : 02.e : Event Object
  853. * Description : 화면 초기화
  854. ****************************************************************************************/
  855. function SPMRI06100_onload(obj:Form, e:LoadEventInfo)
  856. {
  857. // 서식로더에서 호출
  858. try{
  859. ds_data_formmast.copyData(arg_ds_data_formmast);
  860. ds_data_formrec.copyData(arg_ds_data_formrec);
  861. ds_data_chartinfo.copyData(arg_ds_data_chartinfo);
  862. }catch(e){
  863. //sysf_catchTrace(e);
  864. }
  865. // 정정기록관리 화면에서 호출
  866. try{
  867. ds_temp_mdfrecinfo.copyData(arg_ds_data_mdfrecinfo);
  868. ds_temp_mdfrecdetail.copyData(arg_ds_data_mdfrecdetail);
  869. }catch(e){
  870. //sysf_catchTrace(e);
  871. }
  872. /*
  873. {dsNm: "ds_M0800", cdGrpId: "M0800"} // 승인상태코드
  874. , {dsNm: "ds_M0801", cdGrpId: "M0801"} // 정정구분(대분류)
  875. , {dsNm: "ds_M0802", cdGrpId: "M0802"} // 정정구분(소분류)
  876. , {dsNm: "ds_M0805", cdGrpId: "M0805"} // 정정반려사유
  877. */
  878. var arrParam = [ {dsNm: "ds_M0803", cdGrpId: "M0803"} // 정정사유(신청)
  879. , {dsNm: "ds_M0804", cdGrpId: "M0804"} // 정정사유(사유)
  880. , {dsNm: "ds_M0807", cdGrpId: "M0807"} // 정정신청서(환자용)
  881. ]
  882. appf_getCodeListSubmit(arrParam);
  883. lgv_activeyn = arg_activeyn;
  884. if( lgv_activeyn == "M" ){
  885. lgv_titletext = "정정신청";
  886. parent.position.height = parent.position.height + grd_mdfrecdetail.position.height + 5;
  887. cap_appdetail.visible = true;
  888. //txt_appdetail.visible = true;
  889. grd_mdfrecdetail.visible = true;
  890. btn_addrow.visible = true;
  891. btn_delrow.visible = true;
  892. btn_ocrprnt.visible = true;
  893. rdo_appresn.innerdataset = "ds_M0803";
  894. ipt_appresnetc.position = ipt_appresnetc.posInfo_app;
  895. stx_2.text = stx_2.textInfo_app;
  896. try{
  897. if( !utlf_isNull(arg_nRsncd) || arg_nRsncd == "R5" ){
  898. ds_data_mdfrecinfo.setColumn(0, "appresn", arg_nRsncd);
  899. }
  900. }catch(e){}
  901. }
  902. this.titletext = lgv_titletext;
  903. frmf_initTitle(obj);
  904. if( ds_data_chartinfo.rowcount > 0 && ds_data_chartinfo.getColumn(0, "issyn") == "Y" ){
  905. stx_1.text = "해당환자는 사본발급 이력을 가지고 있사오니 정정에 유의하시기 바랍니다.";
  906. btn_chrt.enable = true;
  907. }
  908. var sPid = ds_data_formrec.getColumn(0, "pid");
  909. var sOrddd = ds_data_formrec.getColumn(0, "orddd");
  910. var sCretno = ds_data_formrec.getColumn(0, "cretno");
  911. var sIoflag = ds_data_formrec.getColumn(0, "chosflag");
  912. var sFormrecseq = ds_data_formrec.getColumn(0, "formrecseq");
  913. var nJobposcd = sysf_getUserInfo("jobposcd"); // 1799(인턴) 1800(레지) 1782(교수)
  914. var nLastOrdtype = "";
  915. if( ds_temp_mdfrecinfo.rowcount > 0 ){ // 정정기록관리 - 재신청
  916. ds_data_mdfrecinfo.setColumn(0, "formcd", ds_temp_mdfrecinfo.getColumn(0, "formcd"));
  917. ds_data_mdfrecinfo.setColumn(0, "formrecseq", utlf_transNullToEmpty(ds_temp_mdfrecinfo.getColumn(0, "formrecseq")));
  918. ds_data_mdfrecinfo.setColumn(0, "oprsrvno", utlf_transNullToEmpty(ds_temp_mdfrecinfo.getColumn(0, "oprsrvno")));
  919. ds_data_mdfrecinfo.setColumn(0, "pid", ds_temp_mdfrecinfo.getColumn(0, "pid"));
  920. ds_data_mdfrecinfo.setColumn(0, "orddd", ds_temp_mdfrecinfo.getColumn(0, "orddd"));
  921. ds_data_mdfrecinfo.setColumn(0, "cretno", ds_temp_mdfrecinfo.getColumn(0, "cretno"));
  922. ds_data_mdfrecinfo.setColumn(0, "ordtype", ds_temp_mdfrecinfo.getColumn(0, "ordtype"));
  923. ds_data_mdfrecinfo.setColumn(0, "apptype", ds_temp_mdfrecinfo.getColumn(0, "apptype"));
  924. ds_data_mdfrecinfo.setColumn(0, "appresn", ds_temp_mdfrecinfo.getColumn(0, "appresn"));
  925. ds_data_mdfrecinfo.setColumn(0, "appresnetc", utlf_transNullToEmpty(ds_temp_mdfrecinfo.getColumn(0, "appresnetc")));
  926. ds_data_mdfrecinfo.setColumn(0, "appdetail", utlf_transNullToEmpty(ds_temp_mdfrecinfo.getColumn(0, "appdetail")));
  927. // 재신청일 경우 기존 신청정보로 설정
  928. ds_data_mdfrecinfo.setColumn(0, "appmedispclid", utlf_transNullToEmpty(ds_temp_mdfrecinfo.getColumn(0, "appmedispclid")));
  929. ds_data_mdfrecinfo.setColumn(0, "appno", ""); // 재신청일경우 초기화
  930. ds_data_mdfrecinfo.setColumn(0, "srcformcd", utlf_transNullToEmpty(ds_temp_mdfrecinfo.getColumn(0, "srcformcd")));
  931. nLastOrdtype = lf_srchMedispclid("ordtype");
  932. }else{ // 서식저장 시 - 정정정보 설정
  933. ds_data_mdfrecinfo.setColumn(0, "formcd", ds_data_formrec.getColumn(0, "formcd"));
  934. ds_data_mdfrecinfo.setColumn(0, "formrecseq", utlf_transNullToEmpty(ds_data_formrec.getColumn(0, "formrecseq")));
  935. ds_data_mdfrecinfo.setColumn(0, "oprsrvno", utlf_transNullToEmpty(ds_data_formrec.getColumn(0, "oprsrvno")));
  936. ds_data_mdfrecinfo.setColumn(0, "pid", ds_data_formrec.getColumn(0, "pid"));
  937. ds_data_mdfrecinfo.setColumn(0, "orddd", ds_data_formrec.getColumn(0, "orddd"));
  938. ds_data_mdfrecinfo.setColumn(0, "cretno", ds_data_formrec.getColumn(0, "cretno"));
  939. ds_data_mdfrecinfo.setColumn(0, "ordtype", ds_data_formrec.getColumn(0, "chosflag"));
  940. // 담당교수 설정
  941. var nAppmedispclid = lf_srchMedispclid("medispclid");
  942. nLastOrdtype = lf_srchMedispclid("ordtype");
  943. // nAppTyep 정정구분 추가(통계용) ===== Add 추가, Del 삭제, Resn 정정
  944. var nApptype = "A" // 추가
  945. if( arg_nFlag == "D" ){
  946. nApptype = "D"; // 삭제
  947. }else if( !utlf_isNull(sFormrecseq) && sFormrecseq != "0" ){
  948. nApptype = "R"; // 정정
  949. }
  950. if( (nLastOrdtype == "O" || nLastOrdtype == "E" ) && !utlf_isNull(nJobposcd) && ( nJobposcd == "1799" || nJobposcd == "1800") ){
  951. nAppmedispclid = "";
  952. }
  953. ds_data_mdfrecinfo.setColumn(0, "apptype", nApptype);
  954. ds_data_mdfrecinfo.setColumn(0, "appmedispclid", nAppmedispclid);
  955. ds_data_mdfrecinfo.setColumn(0, "srcformcd", ds_data_formrec.getColumn(0, "srcformcd"));
  956. }
  957. // Staff 이 신청할 경우, 신청과 동시에 "주치교수 승인" 상태
  958. // 정정신청, 사유 - 수진내역 외래(O), 응급(E) - 신청의 전공의 --> 담당교수 정보입력, 담당교수 승인정보 저장 안함
  959. var nAcptstatus = "E"; // 완료
  960. if( lgv_activeyn == "M" ){
  961. if( !utlf_isNull(nJobposcd) && nJobposcd != "1799" && nJobposcd != "1800" ){
  962. nAcptstatus = "D"; // 주치교수승인
  963. }else if( (nLastOrdtype == "O" || nLastOrdtype == "E" ) && !utlf_isNull(nJobposcd) && ( nJobposcd == "1799" || nJobposcd == "1800") ){
  964. nAcptstatus = "D"; // 주치교수승인
  965. }else{
  966. nAcptstatus = "A"; // 승인대기
  967. }
  968. }
  969. // 정정항목 및 내용 조회
  970. if( lgv_activeyn == "M" ){
  971. var nAppno = utlf_transNullToEmpty(ds_data_mdfrecinfo.getColumn(0, "appno"));
  972. var nSrcformcd = utlf_transNullToEmpty(ds_data_mdfrecinfo.getColumn(0, "srcformcd"));
  973. dsf_createDsRow("ds_cond_TRMRI06003", [ {col:"instcd", type:"STRING", size:256, val:sysf_getUserInfo("dutplceinstcd")}
  974. , {col:"appno", type:"STRING", size:256, val:nAppno}
  975. , {col:"srcformcd", type:"STRING", size:256, val:nSrcformcd}
  976. ]);
  977. var oParam = {};
  978. oParam.id = "TRMRI06003";
  979. oParam.service = "recmngtapp.MdfRecMngt";
  980. oParam.method = "reqGetMdfRecDetail";
  981. oParam.inds = "req=ds_cond_TRMRI06003";
  982. oParam.outds = "ds_data_mdfrecdetail=mdfrecdetail ds_init_unprepitem=unprepitem";
  983. oParam.async = true;
  984. oParam.callback = "cf_TRMRI06003"
  985. tranf_submit(oParam);
  986. }
  987. ds_data_mdfrecinfo.setColumn(0, "appdd", utlf_getCurrentDate());
  988. ds_data_mdfrecinfo.setColumn(0, "acptstatus", nAcptstatus);
  989. ds_data_mdfrecinfo.setColumn(0, "appflag", lgv_activeyn == "M" ? "A" : "R");
  990. ds_data_mdfrecinfo.setColumn(0, "appdeptcd", sysf_getUserInfo("dutplcecd"));
  991. ds_data_mdfrecinfo.setColumn(0, "appdrid", sysf_getUserInfo("userid"));
  992. }
  993. function cf_TRMRI03102(sSvcId, nErrorCode, sErrorMsg) {
  994. if(nErrorCode < 0) return;
  995. }
  996. function cf_TRMRI06003(sSvcId, nErrorCode, sErrorMsg) {
  997. arErrorCode.push(sSvcId, nErrorCode);
  998. dsf_addDsItem(ds_init_unprepitem, "unprepitemcd", "unprepitemnm", "선택", "-", "above");
  999. lgv_old_detail = ds_data_mdfrecdetail.saveXML();
  1000. if( ds_data_mdfrecdetail.rowcount < 3 ){
  1001. for(var i = ds_data_mdfrecdetail.rowcount; i<3; i++ ){
  1002. btn_addrow.click();
  1003. }
  1004. }
  1005. }
  1006. /****************************************************************************************
  1007. * Components : Button
  1008. * Components ID : btn_close
  1009. * Event : onclick
  1010. * Argument : 01.obj : Object Event has occurred
  1011. * : 02.e : Event Object
  1012. * Description : 닫기
  1013. ****************************************************************************************/
  1014. function btn_close_onclick(obj:Button, e:ClickEventInfo)
  1015. {
  1016. fCancel();
  1017. }
  1018. /****************************************************************************************
  1019. * Components : Button
  1020. * Components ID : btn_cancel
  1021. * Event : onclick
  1022. * Argument : 01.obj : Object Event has occurred
  1023. * : 02.e : Event Object
  1024. * Description : 취소
  1025. ****************************************************************************************/
  1026. function btn_cancel_onclick(obj:Button, e:ClickEventInfo)
  1027. {
  1028. fCancel();
  1029. }
  1030. /****************************************************************************************
  1031. * Components : Button
  1032. * Components ID : btn_confirm
  1033. * Event : onclick
  1034. * Argument : 01.obj : Object Event has occurred
  1035. * : 02.e : Event Object
  1036. * Description : 확인
  1037. ****************************************************************************************/
  1038. function btn_confirm_onclick(obj:Button, e:ClickEventInfo)
  1039. {
  1040. fConfirm();
  1041. }
  1042. /****************************************************************************************
  1043. * Components : Button
  1044. * Components ID : btn_chrt
  1045. * Event : onclick
  1046. * Argument : 01.obj : Object Event has occurred
  1047. * : 02.e : Event Object
  1048. * Description : 통합기록
  1049. ****************************************************************************************/
  1050. function btn_chrt_onclick(obj:Button, e:ClickEventInfo)
  1051. {
  1052. frmf_setParameter("SMMRC03000_pid", arg_pid);
  1053. frmf_open("SMMRC03000", "SMMRC03000", null, null, null, null, null, null, null, null, null, null, "M");
  1054. }
  1055. /****************************************************************************************
  1056. * Components : Radio
  1057. * Components ID : rdo_appresn
  1058. * Event : onitemchanged
  1059. * Argument : 01.obj : Object Event has occurred
  1060. * : 02.e : Event Object
  1061. * Description : 항목 선택
  1062. ****************************************************************************************/
  1063. function rdo_appresn_onitemchanged(obj:Radio, e:ItemChangeEventInfo)
  1064. {
  1065. /*
  1066. if( e.postvalue == "R2" && arg_nFlag != "D"){
  1067. if( lgv_activeyn == "M" )
  1068. sysf_messageBox("사본발급 이력 있는 경우 [" + e.posttext + "] 선택 불가능합니다.", "E");
  1069. else
  1070. sysf_messageBox("인증저장시 [" + e.posttext + "] 선택 불가능합니다.", "E");
  1071. rdo_appresn.value = "";
  1072. return
  1073. }
  1074. */
  1075. if( e.postvalue == "R5" ){
  1076. ipt_appresnetc.enable = true;
  1077. ipt_appresnetc.setFocus();
  1078. }else{
  1079. ipt_appresnetc.value = "";
  1080. ipt_appresnetc.enable = false;
  1081. }
  1082. }
  1083. function btn_ocrprnt_onclick(obj:Button, e:ClickEventInfo)
  1084. {
  1085. lf_CheckPrintOCR();
  1086. }
  1087. /*************************************************************************************************************
  1088. * Argument : N/A
  1089. * Description : 정정신청서(환자용) 출력
  1090. ************************************************************************************************************/
  1091. function lf_CheckPrintOCR(){
  1092. var nPid = ds_data_formrec.getColumn(0, "pid");
  1093. var nOrddd = ds_data_formrec.getColumn(0, "orddd");
  1094. var nCretno = ds_data_formrec.getColumn(0, "cretno");
  1095. var nIoflag = ds_data_formrec.getColumn(0, "chosflag");
  1096. if( ds_temp_mdfrecinfo.rowcount > 0 ){
  1097. nPid = ds_temp_mdfrecinfo.getColumn(0, "pid");
  1098. nOrddd = ds_temp_mdfrecinfo.getColumn(0, "orddd");
  1099. nCretno = ds_temp_mdfrecinfo.getColumn(0, "cretno");
  1100. nIoflag = ds_temp_mdfrecinfo.getColumn(0, "ordtype");
  1101. }
  1102. var nInstcd = sysf_getUserInfo("dutplceinstcd");
  1103. var nFormcd = ds_M0807.lookupAs("cdid", nInstcd, "cdnm");
  1104. if( utlf_isNull(nFormcd) ){
  1105. sysf_messageBox("정정신청서(환자용) OCR 코드가 정상적이지 않습니다.", "E");
  1106. return;
  1107. }
  1108. frmf_setParameter ("formcd", nFormcd );
  1109. frmf_setParameter ("pid", nPid);
  1110. frmf_setParameter ("orddd", nOrddd );
  1111. frmf_setParameter ("cretno", nCretno);
  1112. frmf_setParameter ("ordtype", nIoflag );
  1113. var rtnObj = frmf_modal("SSMRF03700", "SSMRF03700", null, null, null, null, null, null, null, null, null, null, "M");
  1114. if( !utlf_isNull(rtnObj) && !utlf_isNull(rtnObj.ocr_tag) ){
  1115. var sOcrTagVal = rtnObj.ocr_tag.replace("▦", "|");
  1116. ds_data_mdfrecinfo.setColumn(0, "ocrtag", sOcrTagVal);
  1117. }
  1118. /*
  1119. // Step1. 기준일자 : 2016501(반납확인일 기준)
  1120. dsf_createDsRow("ds_cond_TRMMR02921", [{col:"pid", type:"STRING", size:256, val:nPid}
  1121. , {col:"formcd", type:"STRING", size:256, val:nFormcd}]);
  1122. dsf_createDs("ds_data_TRMMR02921", [{col:"perprintyn", type:"STRING", size:256}]);
  1123. var oParam = {};
  1124. oParam.id = "TRMMR02921";
  1125. oParam.service = "medirecapp.ExtnMediRec";
  1126. oParam.method = "reqGetPerPrintYn";
  1127. oParam.inds = "req=ds_cond_TRMMR02921";
  1128. oParam.outds = "ds_data_TRMMR02921=item";
  1129. oParam.async = false;
  1130. //oParam.callback = "cf_TRMMR02921";
  1131. tranf_submit(oParam);
  1132. var sPerprintyn = ds_data_TRMMR02921.getColumn(0, "perprintyn");
  1133. if( sPerprintyn == "N" ){
  1134. /*
  1135. // 코드조회
  1136. var arrParam = [{dsNm: "ds_init_PAM_PK018list", cdGrpId: "PK018"}]
  1137. pamfGetCodeList(arrParam, "false");
  1138. // Step2. 개인정보동의서 출력
  1139. var sOcrType = "O";
  1140. var sClientIp = objExtCommon.getIPAddress();
  1141. if (ds_init_PAM_PK018list.getColumn(ds_init_PAM_PK018list.findRow("cdid", sClientIp), "cdnm") == "Y"){
  1142. sOcrType = "S";
  1143. }
  1144. */
  1145. /*
  1146. var sOcrType = "O";
  1147. //개인정보이용동의서 출력
  1148. //fPerPrintOCR(nFormcd, nPid, nOrddd, nCretno, nIoflag, sOcrType);
  1149. frmf_setParameter ("formcd", nFormcd );
  1150. frmf_setParameter ("pid", nPid);
  1151. frmf_setParameter ("orddd", nOrddd );
  1152. frmf_setParameter ("cretno", nCretno);
  1153. frmf_setParameter ("ordtype", nIoflag );
  1154. var rtnObj = frmf_modal("SSMRF03700", "SSMRF03700", null, null, null, null, null, null, null, null, null, null, "M");
  1155. if( !utlf_isNull(rtnObj) && !utlf_isNull(rtnObj.ocr_tag) ){
  1156. var sOcrTagVal = rtnObj.ocr_tag.replace("▦", "|");
  1157. ds_data_mdfrecinfo.setColumn(0, "ocrtag", sOcrTagVal);
  1158. }
  1159. }
  1160. dsf_deleteDs("ds_cond_TRMMR02921");
  1161. dsf_deleteDs("ds_data_TRMMR02921");
  1162. */
  1163. }
  1164. function lf_SetUnPrepInfo(nFlag){
  1165. // Step 1 대상환자의 진료정보를 조회한다.
  1166. var sPid = ds_data_formrec.getColumn(0, "pid");
  1167. var sOrddd = ds_data_formrec.getColumn(0, "orddd");
  1168. var sCretno = ds_data_formrec.getColumn(0, "cretno");
  1169. var sIoflag = ds_data_formrec.getColumn(0, "chosioflag");
  1170. if( utlf_isNull(sIoflag) ){
  1171. sIoflag = ds_data_formrec.getColumn(0, "chosflag");
  1172. }
  1173. if(sIoflag == "D"){
  1174. sIoflag = "I";
  1175. }
  1176. var nSrcFormcd = ds_data_formrec.getColumn(0, "srcformcd");
  1177. if( nFlag == "D" ){
  1178. if( lf_ContainsHardCD(6155, nSrcFormcd) == false || (sIoflag != "I" && sIoflag != "E")){
  1179. ds_data_unprepinfo.clearData();
  1180. return false;
  1181. }
  1182. }
  1183. dsf_createDsRow("ds_cond_reqdata", [{col:"pid", type:"STRING", size:256, val:sPid}
  1184. , {col:"ioflag", type:"STRING", size:256, val:sIoflag}
  1185. , {col:"dschflag", type:"STRING", size:256, val:"A"}]);
  1186. ds_temp_pathistlist.clearData();
  1187. var oParam = {};
  1188. oParam.id = "TRMRI02605";
  1189. oParam.service = "unprepmngtapp.ChrtUnprepMngt";
  1190. oParam.method = "reqGetUnPrepPatChosInfo";
  1191. oParam.inds = "req=ds_cond_reqdata";
  1192. oParam.outds = "ds_temp_pathistlist=pathistlist";
  1193. oParam.async = false;
  1194. //oParam.callback = "cf_TRMRI02605";
  1195. tranf_submit(oParam);
  1196. var nFindRow = ds_temp_pathistlist.findRowExpr("pid == '"+ sPid +"' && orddd == '"+ sOrddd +"' && cretno == '"+ sCretno +"'");
  1197. if( nFindRow > -1 ){
  1198. var sDschdd = ds_temp_pathistlist.getColumn(nFindRow, "dschdd");
  1199. if(sDschdd == "재원중"){
  1200. sDchdd = utlf_getCurrentDate();
  1201. }
  1202. dsf_createDsRow("ds_cond_reqdata", [
  1203. {col:"srchflag", type:"STRING", size:256, val:"id"}
  1204. , {col:"unprepdeptcd", type:"STRING", size:256, val:sysf_getUserInfo("dutplcecd")}
  1205. , {col:"unprepdr", type:"STRING", size:256, val:sysf_getUserInfo("userid")}
  1206. , {col:"stnddd", type:"STRING", size:256, val:utlf_getCurrentDate()}
  1207. , {col:"deptengabbr", type:"STRING", size:256, val:""}
  1208. , {col:"grupflag", type:"STRING", size:256, val:""}
  1209. ]);
  1210. var oParam = {};
  1211. oParam.id = "TRMRI02604";
  1212. oParam.service = "unprepmngtapp.ChrtUnprepMngt";
  1213. oParam.method = "reqGetUnPrepDrList";
  1214. oParam.inds = "req=ds_cond_reqdata";
  1215. oParam.outds = "ds_temp_unprepdrlist=unprepdrlist";
  1216. oParam.async = false;
  1217. //oParam.callback = "cf_TRMRI02604";
  1218. tranf_submit(oParam);
  1219. if( ds_temp_unprepdrlist.rowcount == 0 ){
  1220. sysf_messageBox("[미비기록 생성정보] 진료의 정보가 올바르지 않습니다.", "E");
  1221. ds_data_unprepinfo.clearData();
  1222. return false;
  1223. }
  1224. var pid = ds_temp_pathistlist.getColumn(nFindRow, "pid");
  1225. var hngnm = ds_temp_pathistlist.getColumn(nFindRow, "hngnm");
  1226. var orddd = ds_temp_pathistlist.getColumn(nFindRow, "orddd");
  1227. var cretno = ds_temp_pathistlist.getColumn(nFindRow, "cretno");
  1228. var dschdd = ds_temp_pathistlist.getColumn(nFindRow, "dschdd");
  1229. var dschdeptcd = "-";
  1230. var dschdeptnm = "-";
  1231. var orddeptcd = "-";
  1232. var orddeptnm = "-";
  1233. var formrecdeptcd = "";
  1234. var formrecseq = ds_data_formrec.getColumn(0, "formrecseq");
  1235. var formcd = ds_data_formrec.getColumn(0, "formcd");
  1236. var formnm = ds_data_formrec.getColumn(0, "formnm");
  1237. var formrecdd = ds_data_formrec.getColumn(0, "formrecdd");
  1238. var oprsrvno = ds_data_formrec.getColumn(0, "oprsrvno");
  1239. if( utlf_isNull(formrecseq) || formrecseq == 0){
  1240. formrecseq = -1;
  1241. }
  1242. orddeptcd = ds_temp_unprepdrlist.getColumn(0, "orddeptcd");
  1243. orddeptnm = ds_temp_unprepdrlist.getColumn(0, "orddeptnm");
  1244. dschdeptcd = ds_temp_pathistlist.getColumn(nFindRow, "orddeptcd");
  1245. dschdeptnm = ds_temp_pathistlist.getColumn(nFindRow, "orddeptnm");
  1246. formrecdeptcd = dschdeptcd;
  1247. var orddrid = ds_temp_unprepdrlist.getColumn(0, "orddrid");
  1248. var orddrnm = ds_temp_unprepdrlist.getColumn(0, "orddrnm");
  1249. var jobposnm= ds_temp_unprepdrlist.getColumn(0, "jobposnm");
  1250. var nApptype = ds_data_mdfrecinfo.getColumn(0, "apptype");
  1251. var sUnprepitemnm = "기록반려(StaffSign)";
  1252. var nUnprepitemcd = "000002000";
  1253. if( nApptype == "D" ){
  1254. sUnprepitemnm = "기록정정(의사)";
  1255. nUnprepitemcd = "000001000";
  1256. }
  1257. dsf_createDsRow("ds_data_unprepinfo", [
  1258. {col:"status" , type:"STRING", size:256, val:"i"}
  1259. , {col:"indschflag" , type:"STRING", size:256, val:"D"}
  1260. , {col:"pid" , type:"STRING", size:256, val:pid}
  1261. , {col:"cretno" , type:"STRING", size:256, val:cretno}
  1262. , {col:"hngnm" , type:"STRING", size:256, val:hngnm}
  1263. , {col:"formrecseq" , type:"STRING", size:256, val:formrecseq}
  1264. , {col:"dschdeptcd" , type:"STRING", size:256, val:dschdeptcd}
  1265. , {col:"dschdeptnm" , type:"STRING", size:256, val:dschdeptnm}
  1266. , {col:"unprepno" , type:"STRING", size:256, val:"1"}
  1267. , {col:"dschdd" , type:"STRING", size:256, val:dschdd}
  1268. , {col:"indd" , type:"STRING", size:256, val:orddd}
  1269. , {col:"orgunprepstat" , type:"STRING", size:256, val:""}
  1270. , {col:"unprepstat" , type:"STRING", size:256, val:2} // 의사확인
  1271. , {col:"doctkindflag" , type:"STRING", size:256, val:jobposnm}
  1272. , {col:"orgdoctkindflag" , type:"STRING", size:256, val:""}
  1273. , {col:"drstate" , type:"STRING", size:256, val:""}
  1274. , {col:"unprepdrnm" , type:"STRING", size:256, val:orddrnm}
  1275. , {col:"orgunprepdrnm" , type:"STRING", size:256, val:""}
  1276. , {col:"unprepdeptnm" , type:"STRING", size:256, val:""}
  1277. , {col:"orgunprepdeptnm" , type:"STRING", size:256, val:""}
  1278. , {col:"orddeptcd" , type:"STRING", size:256, val:orddeptcd}
  1279. , {col:"orgorddeptcd" , type:"STRING", size:256, val:""}
  1280. , {col:"detldeptcd" , type:"STRING", size:256, val:""}
  1281. , {col:"orgdetldeptcd" , type:"STRING", size:256, val:""}
  1282. , {col:"unprepdrid" , type:"STRING", size:256, val:orddrid}
  1283. , {col:"orgunprepdrid" , type:"STRING", size:256, val:""}
  1284. , {col:"formcd" , type:"STRING", size:256, val:formcd}
  1285. , {col:"formnm" , type:"STRING", size:256, val:formnm}
  1286. , {col:"oprsrvno" , type:"STRING", size:256, val:oprsrvno}
  1287. , {col:"unprepitemnm" , type:"STRING", size:256, val:sUnprepitemnm}
  1288. , {col:"formrecdd" , type:"STRING", size:256, val:formrecdd}
  1289. , {col:"unprepitemcd" , type:"STRING", size:256, val:nUnprepitemcd}
  1290. , {col:"medirecalertcnts" , type:"STRING", size:256, val:""}
  1291. , {col:"drcnfmdt" , type:"STRING", size:256, val:""}
  1292. , {col:"drcnfmrid" , type:"STRING", size:256, val:""}
  1293. , {col:"dralertcnts" , type:"STRING", size:256, val:""}
  1294. , {col:"fstrgstrnm" , type:"STRING", size:256, val:""}
  1295. , {col:"fstrgstdt" , type:"STRING", size:256, val:""}
  1296. , {col:"lastupdtrnm" , type:"STRING", size:256, val:""}
  1297. , {col:"lastupdtdt" , type:"STRING", size:256, val:""}
  1298. , {col:"mprocessyn" , type:"STRING", size:256, val:"Y"}]);
  1299. }else{
  1300. sysf_messageBox("환자의 진료정보가 정상적이지 않습니다.", "E");
  1301. return false;
  1302. }
  1303. return true
  1304. }
  1305. function btn_addrow_onclick(obj:Button, e:ClickEventInfo)
  1306. {
  1307. var nRow = ds_data_mdfrecdetail.addRow();
  1308. ds_data_mdfrecdetail.setColumn(nRow, "itemcd", "-");
  1309. }
  1310. function btn_delrow_onclick(obj:Button, e:ClickEventInfo)
  1311. {
  1312. var nRow = ds_data_mdfrecdetail.rowposition;
  1313. if( nRow < 0 ){
  1314. sysf_messageBox("삭제할 행을 선택하세요.", "I");
  1315. return;
  1316. }
  1317. var nRowType = ds_data_mdfrecdetail.getRowType(nRow);
  1318. if( nRowType == 2 ){
  1319. ds_data_mdfrecdetail.deleteRow(nRow);
  1320. }else{
  1321. grdf_setStatus(grd_mdfrecdetail, "D", [nRow]);
  1322. }
  1323. }]]></Script>
  1324. </Form>
  1325. </FDL>