SPPMI03200_입원약정서관리.xfdl 52 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPPMI03200" position="absolute 0 0 1180 845" titletext="입원약정서관리" oninit="SPPMI03200_oninit" onload="SPPMI03200_onload">
  5. <Layouts>
  6. <Layout>
  7. <Shape position="absolute 790 650 1180 810" id="roundrect2" type="roundrectangle"/>
  8. <Static text="입원약정서 상세정보" position="absolute 1 658 172 675" id="caption1" class="tit_2"/>
  9. <Static text="입원약정서 관리" position="absolute 0 0 160 25" id="caption2" class="tit_1"/>
  10. <Edit position="absolute 86 679 173 698" align="align:center middle;" id="ipt_pid" enable="false" taborder="16" onkeyup="ipt_pid_onkeyup"/>
  11. <Static text="환자번호" position="absolute 0 679 85 699" id="caption3" class="cell_1"/>
  12. <Button position="absolute 179 681 195 697" id="btn_ptbspid" class="icon_search" enable="false" visible="false" text="" onclick="btn_ptbspid_onclick"/>
  13. <Shape position="absolute 0 674 781 680" linetype="horizontal" id="line1" class="line_1" style="strokepen:3 solid #33bbbbff;"/>
  14. <Static text="성명" position="absolute 201 679 285 699" id="caption4" class="cell_1"/>
  15. <Static text="생년월일" position="absolute 576 679 652 699" id="caption5" class="cell_1"/>
  16. <Static text="주소" position="absolute 201 700 285 720" id="caption6" class="cell_1"/>
  17. <Static text="나이/성별" position="absolute 388 679 472 699" id="caption7" class="cell_1"/>
  18. <Static text="주민번호" position="absolute 0 700 85 720" id="caption8" class="cell_1"/>
  19. <Shape position="absolute 0 64 1180 70" linetype="horizontal" id="line3" class="line_1" style="strokepen:3 solid #33bbbbff;"/>
  20. <Edit position="absolute 286 679 386 698" align="align:center middle;" id="opt_hngnm" enable="false"/>
  21. <Edit position="absolute 473 679 520 698" align="align:center middle;" id="opt_age" enable="false"/>
  22. <Combo position="absolute 519 679 573 698" align="align:center middle;" id="cmb_sex" enable="false" codecolumn="codecolumn" datacolumn="datacolumn">
  23. <Dataset id="innerdataset">
  24. <ColumnInfo>
  25. <Column id="codecolumn"/>
  26. <Column id="datacolumn"/>
  27. </ColumnInfo>
  28. <Rows>
  29. <Row>
  30. <Col id="codecolumn">M</Col>
  31. <Col id="datacolumn">남</Col>
  32. </Row>
  33. <Row>
  34. <Col id="codecolumn">F</Col>
  35. <Col id="datacolumn">여</Col>
  36. </Row>
  37. </Rows>
  38. </Dataset>
  39. </Combo>
  40. <MaskEdit position="absolute 653 679 780 698" align="align:center middle;" id="opt_brthdd" enable="false" mask="yyyy-mm-dd"/>
  41. <Edit position="absolute 286 700 780 719" align="align:left middle;" id="opt_address" enable="false"/>
  42. <MaskEdit position="absolute 86 700 198 719" align="align:center middle;" id="opt_rrgstno" enable="false" mask="999999-9999999"/>
  43. <Calendar position="absolute 286 721 386 740" id="ipt_fromdd" enable="true" taborder="6" dateformat="yyyy-MM-dd"/>
  44. <Calendar position="absolute 473 721 573 740" id="ipt_todd" enable="true" taborder="7" dateformat="yyyy-MM-dd" value="null"/>
  45. <Combo position="absolute 86 721 143 740" align="align:center middle;" id="cmb_type" enable="true" taborder="17" codecolumn="codecolumn" datacolumn="datacolumn">
  46. <Dataset id="innerdataset">
  47. <ColumnInfo>
  48. <Column id="codecolumn"/>
  49. <Column id="datacolumn"/>
  50. </ColumnInfo>
  51. <Rows>
  52. <Row>
  53. <Col id="codecolumn">S</Col>
  54. <Col id="datacolumn">전자</Col>
  55. </Row>
  56. <Row>
  57. <Col id="codecolumn">O</Col>
  58. <Col id="datacolumn">OCR</Col>
  59. </Row>
  60. </Rows>
  61. </Dataset>
  62. </Combo>
  63. <TextArea position="absolute 86 742 780 810" align="align:left middle;" id="ta_rmk" taborder="8"/>
  64. <Static text="서식/구분 (*)" position="absolute 0 721 85 741" id="caption11" class="cell_1"/>
  65. <Static text="시작일자 (*)" position="absolute 201 721 285 741" id="caption12" class="cell_1"/>
  66. <Static text="종료일자 (*)" position="absolute 388 721 472 741" id="caption13" class="cell_1"/>
  67. <Static text="비고" position="absolute 0 742 85 810" id="caption14" class="cell_1"/>
  68. <Grid position="absolute 0 68 1180 645" id="grd_agmt" visible="true" binddataset="ds_main_agmtlist" oncelldblclick="grd_agmt_oncelldblclick">
  69. <Formats>
  70. <Format id="default">
  71. <Columns>
  72. <Column size="0" band="left"/>
  73. <Column size="25" band="left"/>
  74. <Column size="70"/>
  75. <Column size="66"/>
  76. <Column size="32"/>
  77. <Column size="32"/>
  78. <Column size="75"/>
  79. <Column size="39"/>
  80. <Column size="40"/>
  81. <Column size="100"/>
  82. <Column size="31"/>
  83. <Column size="30"/>
  84. <Column size="84"/>
  85. <Column size="0"/>
  86. <Column size="84"/>
  87. <Column size="84"/>
  88. <Column size="30"/>
  89. <Column size="30"/>
  90. <Column size="100"/>
  91. <Column size="0"/>
  92. <Column size="100"/>
  93. <Column size="0"/>
  94. <Column size="0"/>
  95. <Column size="0"/>
  96. <Column size="200"/>
  97. <Column size="80"/>
  98. <Column size="130"/>
  99. <Column size="80"/>
  100. <Column size="130"/>
  101. <Column size="0"/>
  102. <Column size="0"/>
  103. <Column size="0"/>
  104. <Column size="0"/>
  105. <Column size="0"/>
  106. <Column size="0"/>
  107. </Columns>
  108. <Rows>
  109. <Row size="24" band="head"/>
  110. <Row size="24"/>
  111. </Rows>
  112. <Band id="head">
  113. <Cell text="isntcd"/>
  114. <Cell col="1"/>
  115. <Cell col="2" text="차트번호"/>
  116. <Cell col="3" text="성명"/>
  117. <Cell col="4" text="나이"/>
  118. <Cell col="5" text="성별"/>
  119. <Cell col="6" text="생년월일"/>
  120. <Cell col="7" text="서식"/>
  121. <Cell col="8" text="구분"/>
  122. <Cell col="9" text="ocrtagno"/>
  123. <Cell col="10" text="연동"/>
  124. <Cell col="11" text="스캔"/>
  125. <Cell col="12" text="시작일자"/>
  126. <Cell col="13" text="seqno"/>
  127. <Cell col="14" text="종료일자"/>
  128. <Cell col="15" text="해당입원일자"/>
  129. <Cell col="16" colspan="2" text="입원구분" taborder="undefined"/>
  130. <Cell col="18" text="진료과"/>
  131. <Cell col="19" text="orddeptcd"/>
  132. <Cell col="20" text="전문의"/>
  133. <Cell col="21" text="medispclcd"/>
  134. <Cell col="22" text="주민번호"/>
  135. <Cell col="23" text="주소"/>
  136. <Cell col="24" text="비고"/>
  137. <Cell col="25" text="최초등록자"/>
  138. <Cell col="26" text="최초등록일시"/>
  139. <Cell col="27" text="최종수정자"/>
  140. <Cell col="28" text="최종수정일시"/>
  141. <Cell col="29" text="cretno"/>
  142. <Cell col="30" text="roomnm"/>
  143. <Cell col="31" text="insukind"/>
  144. <Cell col="32" text="hometel"/>
  145. <Cell col="33" text="mpphontel"/>
  146. <Cell col="34" text="hospnm"/>
  147. </Band>
  148. <Band id="body">
  149. <Cell text="bind:instcd"/>
  150. <Cell col="1" celltype="head" expr="expr:currow + 1"/>
  151. <Cell col="2" text="bind:pid"/>
  152. <Cell col="3" text="bind:hngnm"/>
  153. <Cell col="4" text="bind:age"/>
  154. <Cell col="5" displaytype="combo" edittype="combo" text="bind:sex" combodataset="ds_combo_sex" combocodecol="value" combodatacol="label" enable="false"/>
  155. <Cell col="6" displaytype="date" text="bind:brthdd" mask="yyyy-MM-dd" calendardisplaynulltype="none"/>
  156. <Cell col="7" displaytype="combo" edittype="combo" text="bind:ocrtype" combodataset="ds_combo_ocrtype" combocodecol="value" combodatacol="label" enable="false"/>
  157. <Cell col="8" displaytype="combo" edittype="combo" text="bind:agmttype" combodataset="ds_combo_agmttype" combocodecol="value" combodatacol="label" enable="false"/>
  158. <Cell col="9" style="align:left;padding:0 0 0 5;" text="bind:ocrtagno"/>
  159. <Cell col="10" text="bind:emrif"/>
  160. <Cell col="11" text="bind:scanyn"/>
  161. <Cell col="12" displaytype="date" text="bind:fromdd" mask="yyyy-MM-dd" calendardisplaynulltype="none"/>
  162. <Cell col="13" text="bind:seqno"/>
  163. <Cell col="14" displaytype="date" text="bind:todd" mask="yyyy-MM-dd" calendardisplaynulltype="none"/>
  164. <Cell col="15" displaytype="date" text="bind:indd" mask="yyyy-MM-dd" calendardisplaynulltype="none"/>
  165. <Cell col="16" text="bind:ordtype"/>
  166. <Cell col="17" text="bind:orgordtype"/>
  167. <Cell col="18" style="align:left;padding:0 0 0 5;" text="bind:orddeptnm"/>
  168. <Cell col="19" text="bind:orddeptcd"/>
  169. <Cell col="20" style="align:left;padding:0 0 0 5;" text="bind:medispclnm"/>
  170. <Cell col="21" text="bind:medispclid"/>
  171. <Cell col="22" text="bind:rrgstno" mask="999999-9999999"/>
  172. <Cell col="23" text="bind:address"/>
  173. <Cell col="24" style="align:left;padding:0 0 0 5;" text="bind:rmk"/>
  174. <Cell col="25" text="bind:fstrgstrnm"/>
  175. <Cell col="26" displaytype="expr:utlf_isNull(fstrgstdt) ? 'none' : 'normal'" text="bind:fstrgstdt" mask="@@@@-@@-@@ @@:@@:@@"/>
  176. <Cell col="27" text="bind:lastupdtrnm"/>
  177. <Cell col="28" displaytype="expr:utlf_isNull(lastupdtdt) ? 'none' : 'normal'" text="bind:lastupdtdt" mask="@@@@-@@-@@ @@:@@:@@"/>
  178. <Cell col="29" text="bind:cretno"/>
  179. <Cell col="30" text="bind:roomnm"/>
  180. <Cell col="31" text="bind:insukind"/>
  181. <Cell col="32" text="bind:hometel"/>
  182. <Cell col="33" text="bind:mpphontel"/>
  183. <Cell col="34" text="bind:hospnm"/>
  184. </Band>
  185. </Format>
  186. </Formats>
  187. </Grid>
  188. <Button position="absolute 1110 816 1178 838" id="btn_init" class="btn4" taborder="15" text="초기화" onclick="btn_init_onclick"/>
  189. <Button position="absolute 738 655 780 674" id="btn_delete" class="btn5" taborder="11" text="삭제" onclick="btn_delete_onclick"/>
  190. <Edit position="absolute 653 721 780 740" align="align:center middle;" id="input4" enable="false"/>
  191. <Static text="OCRNO" position="absolute 576 721 652 741" id="caption10" class="cell_1"/>
  192. <Button position="absolute 1 817 129 839" id="button1" class="btn3" taborder="12" text="약정서 신규출력" onclick="button1_onclick"/>
  193. <Button position="absolute 692 655 734 674" id="btn_insert" class="btn5" taborder="10" text="저장" onclick="btn_insert_onclick"/>
  194. <Button position="absolute 133 817 237 839" id="button3" class="btn3" taborder="14" text="약정서재출력" onclick="button3_onclick"/>
  195. <Button position="absolute 521 655 612 674" align="align:center middle;" id="button4" class="btn5" taborder="9" text="의무기록연동" onclick="button4_onclick"/>
  196. <Edit position="absolute 395 655 517 674" id="ipt_ocrtagnoif" taborder="2" style="align:center middle;"/>
  197. <Static text="* 의무기록연동용 :" position="absolute 289 655 393 675" align="align:right middle;" id="caption18"/>
  198. <Static text="가. 외래에서 출력된 OCR약정서의 경우, 반납 이전에 반드시 &#13;&#10; 의무기록연동을 실시하시기 바랍니다. (원무출력 시 자동연동)&#13;&#10;&#13;&#10;나. 약정서의 삭제는 의무기록 연동 이전에만 가능하며,&#13;&#10; 의무기록 연동 이후는 의무기록실과의 업무협조를 통하여 해당&#13;&#10; 의무기록(약정서)을 삭제하시기 바랍니다.&#13;&#10;&#13;&#10;다. 약정서의 재출력은 의무기록 연동 이전에만 가능하며, &#13;&#10; 의무기록 연동 이후는 OCR반납화면에서 재출력하시기 바랍니다." position="absolute 801 676 1179 809" id="caption21"/>
  199. <Static text="[ 참 고 사 항 ]" position="absolute 937 660 1033 678" align="align:center middle;" id="caption22" style="font:Dotum,10,bold;"/>
  200. <Button position="absolute 241 817 345 839" id="button5" class="btn3" taborder="14" text="OCR미리보기" onclick="button5_onclick"/>
  201. <Combo position="absolute 142 721 198 740" align="align:center middle;" id="combo1" enable="true" taborder="17" codecolumn="codecolumn" datacolumn="datacolumn">
  202. <Dataset id="innerdataset">
  203. <ColumnInfo>
  204. <Column id="codecolumn"/>
  205. <Column id="datacolumn"/>
  206. </ColumnInfo>
  207. <Rows>
  208. <Row>
  209. <Col id="codecolumn">1</Col>
  210. <Col id="datacolumn">일반</Col>
  211. </Row>
  212. <Row>
  213. <Col id="codecolumn">2</Col>
  214. <Col id="datacolumn">기간</Col>
  215. </Row>
  216. </Rows>
  217. </Dataset>
  218. </Combo>
  219. <Div id="grp_srch" taborder="18" position="absolute 0 25 1180 60" class="div_SA">
  220. <Layouts>
  221. <Layout width="1180" height="35">
  222. <Static id="caption9" text="차트번호" class="search_name" position="absolute 22 9 94 26" anchor="default"/>
  223. <Edit id="ipt_pid2" taborder="1" position="absolute 95 8 160 27" anchor="default" onkeyup="grp_srch_ipt_pid2_onkeyup"/>
  224. <Static id="caption15" text="OCRTAGNO" class="search_name" position="absolute 182 9 275 26" anchor="default"/>
  225. <Edit id="input1" taborder="2" position="absolute 280 8 402 27" anchor="default" onkeyup="grp_srch_input1_onkeyup"/>
  226. <Static id="caption16" text="적용기간" class="search_name" position="absolute 421 9 493 26" anchor="default"/>
  227. <Calendar id="input2" taborder="3" position="absolute 499 8 589 27" anchor="default" dateformat="yyyy-MM-dd" autoselect="true" autoskip="true"/>
  228. <Calendar id="input3" taborder="4" position="absolute 605 8 695 27" anchor="default" dateformat="yyyy-MM-dd" value="null" autoselect="true" autoskip="true"/>
  229. <Static id="caption17" text="~" position="absolute 592 8 602 28" anchor="default"/>
  230. <Static id="caption19" text="구분" class="search_name" position="absolute 721 9 768 26" anchor="default"/>
  231. <Radio id="radio1" taborder="5" columncount="-1" rowcount="-1" codecolumn="codecolumn" datacolumn="datacolumn" position="absolute 767 8 902 28" anchor="default" style="textpadding:0 3 0 3;">
  232. <Dataset id="innerdataset">
  233. <ColumnInfo>
  234. <Column id="codecolumn"/>
  235. <Column id="datacolumn"/>
  236. </ColumnInfo>
  237. <Rows>
  238. <Row>
  239. <Col id="codecolumn">0</Col>
  240. <Col id="datacolumn">전체</Col>
  241. </Row>
  242. <Row>
  243. <Col id="codecolumn">1</Col>
  244. <Col id="datacolumn">일반</Col>
  245. </Row>
  246. <Row>
  247. <Col id="codecolumn">2</Col>
  248. <Col id="datacolumn">기간</Col>
  249. </Row>
  250. </Rows>
  251. </Dataset>
  252. </Radio>
  253. <Static id="caption20" text="입원일자" class="search_name" position="absolute 926 9 998 26" anchor="default"/>
  254. <Calendar id="input5" taborder="6" position="absolute 1001 8 1091 27" anchor="default" dateformat="yyyy-MM-dd" value="null" autoskip="true" autoselect="true"/>
  255. <Button id="btn_search" taborder="7" text="조회" class="btn1" position="absolute 1115 7 1171 29" anchor="default" onclick="grp_srch_btn_search_onclick"/>
  256. </Layout>
  257. </Layouts>
  258. </Div>
  259. </Layout>
  260. </Layouts>
  261. <Objects>
  262. <Dataset id="ds_send_cond" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  263. <ColumnInfo>
  264. <Column id="pid" type="STRING" size="256"/>
  265. <Column id="ocrtagno" type="STRING" size="256"/>
  266. <Column id="fromdd" type="STRING" size="256"/>
  267. <Column id="todd" type="STRING" size="256"/>
  268. <Column id="agmttype" type="STRING" size="256"/>
  269. <Column id="indd" type="STRING" size="256"/>
  270. </ColumnInfo>
  271. <Rows>
  272. <Row>
  273. <Col id="pid"/>
  274. <Col id="ocrtagno"/>
  275. <Col id="fromdd"/>
  276. <Col id="todd"/>
  277. <Col id="agmttype">0</Col>
  278. <Col id="indd"/>
  279. </Row>
  280. </Rows>
  281. </Dataset>
  282. <Dataset id="ds_send_agmtdesc" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  283. <ColumnInfo>
  284. <Column id="pid" type="STRING" size="256"/>
  285. <Column id="hngnm" type="STRING" size="256"/>
  286. <Column id="age" type="STRING" size="256"/>
  287. <Column id="sex" type="STRING" size="256"/>
  288. <Column id="brthdd" type="STRING" size="256"/>
  289. <Column id="rrgstno" type="STRING" size="256"/>
  290. <Column id="address" type="STRING" size="256"/>
  291. <Column id="agmttype" type="STRING" size="256"/>
  292. <Column id="fromdd" type="STRING" size="256"/>
  293. <Column id="todd" type="STRING" size="256"/>
  294. <Column id="rmk" type="STRING" size="256"/>
  295. <Column id="ocrtagno" type="STRING" size="256"/>
  296. <Column id="orgfromdd" type="STRING" size="256"/>
  297. <Column id="indd" type="STRING" size="256"/>
  298. <Column id="ocrtype" type="STRING" size="256"/>
  299. </ColumnInfo>
  300. <Rows>
  301. <Row>
  302. <Col id="pid"/>
  303. <Col id="hngnm"/>
  304. <Col id="age"/>
  305. <Col id="sex"/>
  306. <Col id="brthdd"/>
  307. <Col id="rrgstno"/>
  308. <Col id="address"/>
  309. <Col id="agmttype">1</Col>
  310. <Col id="fromdd"/>
  311. <Col id="todd"/>
  312. <Col id="rmk"/>
  313. <Col id="ocrtagno"/>
  314. <Col id="orgfromdd"/>
  315. <Col id="indd"/>
  316. <Col id="ocrtype">S</Col>
  317. <Col id="agmttype">1</Col>
  318. </Row>
  319. </Rows>
  320. </Dataset>
  321. <Dataset id="ds_send_iemr" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  322. <Dataset id="ds_main_agmtlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  323. <Dataset id="ds_main_printinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  324. <ColumnInfo>
  325. <Column id="seq" type="STRING" size="256"/>
  326. <Column id="pid" type="STRING" size="256"/>
  327. <Column id="hngnm" type="STRING" size="256"/>
  328. <Column id="rrgstno1" type="STRING" size="256"/>
  329. <Column id="rrgstno2" type="STRING" size="256"/>
  330. <Column id="address" type="STRING" size="256"/>
  331. <Column id="hometelno" type="STRING" size="256"/>
  332. <Column id="mpphontel" type="STRING" size="256"/>
  333. <Column id="hospnm" type="STRING" size="256"/>
  334. <Column id="ordcentnm" type="STRING" size="256"/>
  335. <Column id="orddeptnm" type="STRING" size="256"/>
  336. <Column id="roomnm" type="STRING" size="256"/>
  337. <Column id="roomcnt" type="STRING" size="256"/>
  338. <Column id="insukind" type="STRING" size="256"/>
  339. <Column id="curdate" type="STRING" size="256"/>
  340. <Column id="curtm" type="STRING" size="256"/>
  341. <Column id="usernm" type="STRING" size="256"/>
  342. <Column id="instcd" type="STRING" size="256"/>
  343. <Column id="orddd" type="STRING" size="256"/>
  344. </ColumnInfo>
  345. <Rows>
  346. <Row>
  347. <Col id="seq"/>
  348. <Col id="pid"/>
  349. <Col id="hngnm"/>
  350. <Col id="rrgstno1"/>
  351. <Col id="rrgstno2"/>
  352. <Col id="address"/>
  353. <Col id="hometelno"/>
  354. <Col id="mpphontel"/>
  355. <Col id="hospnm"/>
  356. <Col id="ordcentnm"/>
  357. <Col id="orddeptnm"/>
  358. <Col id="roomnm"/>
  359. <Col id="roomcnt"/>
  360. <Col id="insukind"/>
  361. <Col id="curdate"/>
  362. <Col id="curtm"/>
  363. <Col id="usernm"/>
  364. <Col id="instcd"/>
  365. <Col id="orddd"/>
  366. </Row>
  367. </Rows>
  368. </Dataset>
  369. <Dataset id="ds_main_ininfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  370. <ColumnInfo>
  371. <Column id="pid" type="STRING" size="256"/>
  372. <Column id="indd" type="STRING" size="256"/>
  373. <Column id="agmttype" type="STRING" size="256"/>
  374. <Column id="autoyn" type="STRING" size="256"/>
  375. <Column id="orddeptcd" type="STRING" size="256"/>
  376. <Column id="orddrid" type="STRING" size="256"/>
  377. <Column id="cretno" type="STRING" size="256"/>
  378. <Column id="ordtype" type="STRING" size="256"/>
  379. <Column id="orddeptnm" type="STRING" size="256"/>
  380. <Column id="roomcd" type="STRING" size="256"/>
  381. <Column id="bedcnt" type="STRING" size="256"/>
  382. <Column id="insukind" type="STRING" size="256"/>
  383. <Column id="fromdd" type="STRING" size="256"/>
  384. <Column id="todd" type="STRING" size="256"/>
  385. <Column id="officetelno" type="STRING" size="256"/>
  386. <Column id="aprv1" type="STRING" size="256"/>
  387. <Column id="aprv2" type="STRING" size="256"/>
  388. <Column id="aprv3" type="STRING" size="256"/>
  389. </ColumnInfo>
  390. <Rows>
  391. <Row>
  392. <Col id="pid"/>
  393. <Col id="indd"/>
  394. <Col id="agmttype"/>
  395. <Col id="autoyn"/>
  396. <Col id="orddeptcd"/>
  397. <Col id="orddrid"/>
  398. <Col id="cretno"/>
  399. <Col id="ordtype"/>
  400. <Col id="orddeptnm"/>
  401. <Col id="roomcd"/>
  402. <Col id="bedcnt"/>
  403. <Col id="insukind"/>
  404. <Col id="fromdd"/>
  405. <Col id="todd"/>
  406. <Col id="officetelno"/>
  407. <Col id="aprv1"/>
  408. <Col id="aprv2"/>
  409. <Col id="aprv3"/>
  410. </Row>
  411. </Rows>
  412. </Dataset>
  413. <Dataset id="ds_main_agmtcount" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  414. <Dataset id="ds_main_inptinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  415. <Dataset id="ds_init_PK048" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  416. <Dataset id="ds_init_PK066" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  417. <Dataset id="ds_init" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  418. <ColumnInfo>
  419. <Column id="hardcd" type="STRING" size="256"/>
  420. </ColumnInfo>
  421. <Rows>
  422. <Row/>
  423. </Rows>
  424. </Dataset>
  425. <Dataset id="ds_hidden" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  426. <Dataset id="ds_tmp" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  427. <Dataset id="ds_main_ocrinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  428. <Dataset id="ds_combo_sex" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  429. <ColumnInfo>
  430. <Column id="label" type="STRING" size="256"/>
  431. <Column id="value" type="STRING" size="256"/>
  432. </ColumnInfo>
  433. <Rows>
  434. <Row>
  435. <Col id="label">남</Col>
  436. <Col id="value">M</Col>
  437. </Row>
  438. <Row>
  439. <Col id="label">여</Col>
  440. <Col id="value">F</Col>
  441. </Row>
  442. </Rows>
  443. </Dataset>
  444. <Dataset id="ds_combo_ocrtype" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  445. <ColumnInfo>
  446. <Column id="label" type="STRING" size="256"/>
  447. <Column id="value" type="STRING" size="256"/>
  448. </ColumnInfo>
  449. <Rows>
  450. <Row>
  451. <Col id="label">OCR</Col>
  452. <Col id="value">O</Col>
  453. </Row>
  454. <Row>
  455. <Col id="label">전자</Col>
  456. <Col id="value">S</Col>
  457. </Row>
  458. </Rows>
  459. </Dataset>
  460. <Dataset id="ds_combo_agmttype" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  461. <ColumnInfo>
  462. <Column id="label" type="STRING" size="256"/>
  463. <Column id="value" type="STRING" size="256"/>
  464. </ColumnInfo>
  465. <Rows>
  466. <Row>
  467. <Col id="label">일반</Col>
  468. <Col id="value">1</Col>
  469. </Row>
  470. <Row>
  471. <Col id="label">기간</Col>
  472. <Col id="value">2</Col>
  473. </Row>
  474. </Rows>
  475. </Dataset>
  476. <Dataset id="ds_init_prncd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  477. <Dataset id="ds_send_data9" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  478. </Objects>
  479. <Bind>
  480. <BindItem id="item0" compid="grp_srch.ipt_pid2" propid="value" datasetid="ds_send_cond" columnid="pid"/>
  481. <BindItem id="item1" compid="grp_srch.input1" propid="value" datasetid="ds_send_cond" columnid="ocrtagno"/>
  482. <BindItem id="item2" compid="grp_srch.input2" propid="value" datasetid="ds_send_cond" columnid="fromdd"/>
  483. <BindItem id="item3" compid="grp_srch.input3" propid="value" datasetid="ds_send_cond" columnid="todd"/>
  484. <BindItem id="item4" compid="grp_srch.radio1" propid="value" datasetid="ds_send_cond" columnid="agmttype"/>
  485. <BindItem id="item5" compid="grp_srch.input5" propid="value" datasetid="ds_send_cond" columnid="indd"/>
  486. <BindItem id="item6" compid="ipt_ocrtagnoif" propid="value" datasetid="ds_send_cond" columnid="ocrtagno"/>
  487. <BindItem id="item7" compid="ipt_pid" propid="value" datasetid="ds_send_agmtdesc" columnid="pid"/>
  488. <BindItem id="item8" compid="opt_hngnm" propid="value" datasetid="ds_send_agmtdesc" columnid="hngnm"/>
  489. <BindItem id="item9" compid="opt_age" propid="value" datasetid="ds_send_agmtdesc" columnid="age"/>
  490. <BindItem id="item10" compid="cmb_sex" propid="value" datasetid="ds_send_agmtdesc" columnid="sex"/>
  491. <BindItem id="item11" compid="opt_brthdd" propid="value" datasetid="ds_send_agmtdesc" columnid="brthdd"/>
  492. <BindItem id="item12" compid="opt_rrgstno" propid="value" datasetid="ds_send_agmtdesc" columnid="rrgstno"/>
  493. <BindItem id="item13" compid="opt_address" propid="value" datasetid="ds_send_agmtdesc" columnid="address"/>
  494. <BindItem id="item14" compid="cmb_type" propid="value" datasetid="ds_send_agmtdesc" columnid="ocrtype"/>
  495. <BindItem id="item15" compid="combo1" propid="value" datasetid="ds_send_agmtdesc" columnid="agmttype"/>
  496. <BindItem id="item16" compid="ipt_fromdd" propid="value" datasetid="ds_send_agmtdesc" columnid="fromdd"/>
  497. <BindItem id="item17" compid="ipt_todd" propid="value" datasetid="ds_send_agmtdesc" columnid="todd"/>
  498. <BindItem id="item18" compid="input4" propid="value" datasetid="ds_send_agmtdesc" columnid="ocrtagno"/>
  499. <BindItem id="item19" compid="ta_rmk" propid="value" datasetid="ds_send_agmtdesc" columnid="rmk"/>
  500. </Bind>
  501. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  502. * System Name :
  503. * Job Name :
  504. * Creator :
  505. * Make Date : 2015-09-08
  506. * Description :
  507. *---------------------------------------------------------------------------------------
  508. * Modify Date Modifier Modify Description
  509. *---------------------------------------------------------------------------------------
  510. * 2015-09-08 Live Converter TF->XP
  511. *
  512. *---------------------------------------------------------------------------------------
  513. ****************************************************************************************/
  514. //=======================================================================================
  515. // Lib Include
  516. //---------------------------------------------------------------------------------------
  517. include "com_commonxp::comm_main.xjs"
  518. include "pam_ipatmngtxp::SPPMI03200.xjs"
  519. include "pam_pamcomnxp::PAM001.xjs"
  520. include "emr_prcpmngtxp::SMMMO00100.xjs"
  521. include "emr_prcpmngtxp::MMO001.xjs"
  522. //=======================================================================================
  523. // Global Form Variable
  524. //---------------------------------------------------------------------------------------
  525. var arErrorCode = new HashArray();
  526. //=======================================================================================
  527. // Event
  528. //---------------------------------------------------------------------------------------
  529. /****************************************************************************************
  530. * Components : Form
  531. * Components ID : SPPMI03200
  532. * Event : oninit
  533. * Argument : 01.obj : Object Event has occurred
  534. * : 02.e : Event Object
  535. * Description : 화면 처음 초기화시 폼초기화
  536. ****************************************************************************************/
  537. function SPPMI03200_oninit(obj:Form, e:InitEventInfo)
  538. {
  539. frmf_initForm(obj);
  540. }
  541. /****************************************************************************************
  542. * Components : Form
  543. * Components ID : SPPMI03200
  544. * Event : onload
  545. * Argument : 01.obj : Object Event has occurred
  546. * : 02.e : Event Object
  547. * Description : 화면 처음 초기화시 폼초기화
  548. ****************************************************************************************/
  549. function SPPMI03200_onload(obj:Form, e:LoadEventInfo)
  550. {
  551. var oOpener = frmf_getoOpener();
  552. ds_main_ininfo.setColumn(0,"pid", oOpener.frmf_getParameter("SPPMI03200_PARM_PID"));
  553. ds_main_ininfo.setColumn(0,"indd", oOpener.frmf_getParameter("SPPMI03200_PARM_ORDDD"));
  554. ds_main_ininfo.setColumn(0,"agmttype", oOpener.frmf_getParameter("SPPMI03200_PARM_AGMTTYPE"));
  555. ds_main_ininfo.setColumn(0,"orddeptcd", oOpener.frmf_getParameter("SPPMI03200_PARM_ORDDEPTCD"));
  556. ds_main_ininfo.setColumn(0,"orddrid", oOpener.frmf_getParameter("SPPMI03200_PARM_ORDDRID"));
  557. ds_main_ininfo.setColumn(0,"cretno", oOpener.frmf_getParameter("SPPMI03200_PARM_CRETNO"));
  558. ds_main_ininfo.setColumn(0,"ordtype", oOpener.frmf_getParameter("SPPMI03200_PARM_ORDTYPE"));
  559. //if(this.getOwnerFrame().form.name != "SPMMO00100_입원의뢰서" && this.getOwnerFrame().form.name != "SPPMI02200") { //_입원의뢰서???????? name == ID ??????
  560. // 입원 / 응급등록시 호출된 경우
  561. //}
  562. // model.refreshpart("/root/main/ininfo");
  563. // OCR연동을 위한 서식코드 취득
  564. // reqHardCodeInfo("/root/send/reqdata", "/root/init/prncd", "5604");
  565. lf_reqHardCodeInfo(ds_init_prncd,5604);
  566. // 2009.04.02 - 출력물 자동 출력여부를 위해서 원무공통코드조회
  567. pamfGetCodeList([{dsNm: "ds_init_PK048", cdGrpId: "PK048"},{dsNm: "ds_init_PK066", cdGrpId: "PK066"}]);
  568. // 차트번호가 전달된 경에는 자동검색 실시
  569. if (!utlf_isNull(ds_main_ininfo.getColumn(0,"pid"))) {
  570. // 차트번호 설정
  571. ds_send_cond.setColumn(0,"pid",ds_main_ininfo.getColumn(0,"pid"));
  572. // 검색 실시
  573. fSearch();
  574. }
  575. if(ds_send_agmtdesc.rowcount == 0){
  576. idx = ds_send_agmtdesc.addRow();
  577. }
  578. ds_send_agmtdesc.setColumn(0,"ocrtype" ,"S"); // O:OCR, S:전자서명
  579. ds_send_agmtdesc.setColumn(0,"agmttype" ,"1");
  580. ds_send_agmtdesc.setColumn(0,"fromdd" ,utlf_getCurrentDate());
  581. var todd = utlf_getNewDate();
  582. todd = todd.getAddDate(364, "D");
  583. todd = utlf_getDateTime(todd, "D");
  584. ds_send_agmtdesc.setColumn(0,"todd" ,todd);
  585. }
  586. /****************************************************************************************
  587. * Components : Button
  588. * Components ID : grp_srch.btn_search
  589. * Event : onclick
  590. * Argument : 01.obj : Object Event has occurred
  591. * : 02.e : Event Object
  592. * Description : 상단 조회버튼 클릭하여 조회실행
  593. ****************************************************************************************/
  594. function grp_srch_btn_search_onclick(obj:Button, e:ClickEventInfo)
  595. {
  596. // 검색 필수조건 확인
  597. if (utlf_isNull(ds_send_cond.getColumn(0,"pid")) && utlf_isNull(ds_send_cond.getColumn(0,"ocrtagno"))
  598. && (utlf_isNull(ds_send_cond.getColumn(0,"fromdd")) || utlf_isNull(ds_send_cond.getColumn(0,"todd"))))
  599. {
  600. sysf_messageBox("차트번호 또는 OCRTAGNO가 없는 경우에는 적용기간을 입력하시기 바랍니다.", "E000");
  601. return;
  602. }
  603. // 적용기간 제한 설정
  604. if (utlf_getDateInterval(ds_send_cond.getColumn(0,"fromdd"), ds_send_cond.getColumn(0,"todd")) > 10) {
  605. sysf_messageBox("시스템부하방지를 위하여 검색기간은 최대 10일 이내로 설정 해주십시요. ", "C000");
  606. return;
  607. }
  608. fSearch();
  609. }
  610. /****************************************************************************************
  611. * Components : Edit
  612. * Components ID : grp_srch.ipt_pid2
  613. * Event : onkeyup
  614. * Argument : 01.obj : Object Event has occurred
  615. * : 02.e : Event Object
  616. * Description : 차트번호 입력후 엔터키로 조회
  617. ****************************************************************************************/
  618. function grp_srch_ipt_pid2_onkeyup(obj:Edit, e:KeyEventInfo)
  619. {
  620. if (e.keycode == 13) {
  621. //setInputNodeCurText();
  622. frmf_setInputNodeCurPid(obj);
  623. fSearch();
  624. }
  625. }
  626. /****************************************************************************************
  627. * Components : Edit
  628. * Components ID : grp_srch.input1
  629. * Event : onkeyup
  630. * Argument : 01.obj : Object Event has occurred
  631. * : 02.e : Event Object
  632. * Description : 차트번호 입력후 엔터키로 조회
  633. ****************************************************************************************/
  634. function grp_srch_input1_onkeyup(obj:Edit, e:KeyEventInfo)
  635. {
  636. // 바코드 리더기
  637. fSetBcode();
  638. }
  639. /****************************************************************************************
  640. * Components : Grid
  641. * Components ID : grd_agmt
  642. * Event : oncelldblclick
  643. * Argument : 01.obj : Object Event has occurred
  644. * : 02.e : Event Object
  645. * Description : 입원약정서 항목 더블클릭으로 선택하여 아래 상세란에 세팅
  646. ****************************************************************************************/
  647. function grd_agmt_oncelldblclick(obj:Grid, e:GridClickEventInfo)
  648. {
  649. if(ds_send_agmtdesc.rowcount == 0 ) ds_send_agmtdesc.addRow();
  650. dsf_makeValue(ds_send_agmtdesc, "emrif", "string", '');
  651. dsf_makeValue(ds_send_agmtdesc, "scanyn", "string", '');
  652. ds_send_agmtdesc.copyRow(0,ds_main_agmtlist,e.row);
  653. dsf_makeValue(ds_send_agmtdesc,"orgfromdd","string",ds_send_agmtdesc.getColumn(0,"fromdd"));
  654. // 의무기록 연동 이후에는 시작일자 및 종료일자 수정 불가능하도록 제어
  655. if (ds_send_agmtdesc.getColumn(0,"emrif") == "Y") {
  656. ipt_fromdd.enable = false;
  657. ipt_todd.enable = false;
  658. } else {
  659. ipt_fromdd.enable = true;
  660. ipt_todd.enable = true;
  661. }
  662. // 서식/구분은 수정 불가
  663. cmb_type.enable = false;
  664. combo1.enable = false;
  665. }
  666. /****************************************************************************************
  667. * Components : Button
  668. * Components ID : button4
  669. * Event : onclick
  670. * Argument : 01.obj : Object Event has occurred
  671. * : 02.e : Event Object
  672. * Description : 의무기록연동 저장
  673. ****************************************************************************************/
  674. function button4_onclick(obj:Button, e:ClickEventInfo)
  675. {
  676. fOCRSave();
  677. }
  678. /****************************************************************************************
  679. * Components : Button
  680. * Components ID : btn_insert
  681. * Event : onclick
  682. * Argument : 01.obj : Object Event has occurred
  683. * : 02.e : Event Object
  684. * Description : 약정서 상세정보 저장
  685. ****************************************************************************************/
  686. function btn_insert_onclick(obj:Button, e:ClickEventInfo)
  687. {
  688. if (utlf_isNull(ds_send_agmtdesc.getColumn(0,"pid"))) {
  689. sysf_messageBox("대상 약정서가 선택되지 않았습니다. ", "C000");
  690. return;
  691. }
  692. // 수정은 OCR 서식만 가능(전자서명 불가)
  693. if (ds_send_agmtdesc.getColumn(0,"ocrtype") != "O") {
  694. sysf_messageBox("전사서명서식은 수정 불가능합니다.");
  695. return;
  696. }
  697. if (utlf_isNull(ds_send_agmtdesc.getColumn(0,"fromdd"))) {
  698. sysf_messageBox("시작일자는 필수입니다. ", "C000");
  699. return;
  700. }
  701. if (sysf_messageBox("등록하시겠습니까?", "Q000") == "6") {
  702. dsf_makeValue(ds_send_agmtdesc,"updateflag" ,"string","U");
  703. dsf_makeValue(ds_send_agmtdesc,"formcd" ,"string",fGetFromCd(ds_send_agmtdesc.getColumn(0,"agmttype")));
  704. var oParam = {};
  705. oParam.id = "TXPMI03202";
  706. oParam.service = "ipatmngtapp.InRgst";
  707. oParam.method = "reqSetInAgmt";
  708. oParam.inds = "req=ds_send_agmtdesc";
  709. oParam.outds = "ds_main_agmtlist=resultlist ds_main_ocrinfo=ocrinfo";
  710. oParam.async = false;
  711. oParam.callback = "cf_TXPMI03202";
  712. tranf_submit(oParam);
  713. if (arErrorCode.pop("TXPMI03202") > -1) {
  714. // 성공시 리스트 재조회
  715. var oParam = {};
  716. oParam.id = "TXPMI03203";
  717. oParam.service = "ipatmngtapp.InRgst";
  718. oParam.method = "reqSetInAgmtPrint";
  719. oParam.inds = "req=ds_send_printcond";
  720. oParam.outds = "ds_main_printinfo=resultlist";
  721. oParam.async = false;
  722. //oParam.callback = "cf_TXPMI03203";
  723. tranf_submit(oParam);
  724. }
  725. }
  726. }
  727. function cf_TXPMI03202(sSvcId, nErrorCode, sErrorMsg) {
  728. arErrorCode.push(sSvcId, nErrorCode);
  729. }
  730. /****************************************************************************************
  731. * Components : Button
  732. * Components ID : btn_delete
  733. * Event : onclick
  734. * Argument : 01.obj : Object Event has occurred
  735. * : 02.e : Event Object
  736. * Description : 약정서 상세정보 삭제
  737. ****************************************************************************************/
  738. function btn_delete_onclick(obj:Button, e:ClickEventInfo)
  739. {
  740. // OCR서식의 경우에만 기존로직 설정
  741. if (ds_send_agmtdesc.getColumn(0,"ocrtype") == "O" && ds_send_agmtdesc.getColumn(0,"emrif") == "Y") {
  742. sysf_messageBox("이미 연동이 완료된 데이터입니다. ", "C000");
  743. return;
  744. }
  745. if (sysf_messageBox("삭제하시겠습니까?", "Q000") == "6") {
  746. dsf_makeValue(ds_send_agmtdesc,"updateflag","string","D");
  747. var oParam = {};
  748. oParam.id = "TXPMI03202";
  749. oParam.service = "ipatmngtapp.InRgst";
  750. oParam.method = "reqSetInAgmt";
  751. oParam.inds = "req=ds_send_agmtdesc";
  752. oParam.outds = "ds_main_agmtlist=resultlist ds_main_ocrinfo=ocrinfo";
  753. oParam.async = false;
  754. oParam.callback = "cf_TXPMI03202";
  755. tranf_submit(oParam);
  756. if (arErrorCode.pop("TXPMI03202") > -1) {
  757. // 성공시 리스트 재조회
  758. fSearch();
  759. }
  760. }
  761. }
  762. /****************************************************************************************
  763. * Components : Edit
  764. * Components ID : ipt_pid
  765. * Event : onkeyup
  766. * Argument : 01.obj : Object Event has occurred
  767. * : 02.e : Event Object
  768. * Description : 상세정보 환자번호 입력후 엔터하여 환자정보 검색
  769. ****************************************************************************************/
  770. function ipt_pid_onkeyup(obj:Edit, e:KeyEventInfo)
  771. {
  772. if (e.keycode == 13) {
  773. //setInputNodeCurText();
  774. frmf_setInputNodeCurPid(ipt_pid);
  775. var ev = new ClickEventInfo;
  776. frmf_inputEnterKey("btn_ptbspid", "onclick", ev );
  777. }
  778. }
  779. /****************************************************************************************
  780. * Components : Button
  781. * Components ID : btn_ptbspid
  782. * Event : onclick
  783. * Argument : 01.obj : Object Event has occurred
  784. * : 02.e : Event Object
  785. * Description : 환자정보 검색
  786. ****************************************************************************************/
  787. function btn_ptbspid_onclick(obj:Button, e:ClickEventInfo)
  788. {
  789. var ptbs_pid = ds_send_agmtdesc.getColumn(0,"pid");
  790. if (utlf_isNull(ptbs_pid.getTrim())) {
  791. ds_send_data9.clearData();
  792. } else {
  793. dsf_makeValue(ds_send_data9,"pid" ,"string",ptbs_pid);
  794. dsf_makeValue(ds_send_data9,"srchcond" ,"string","1");
  795. }
  796. dsf_makeValue(ds_send_data9,"autoflag" ,"string","Y");
  797. dsf_makeValue(ds_send_data9,"checkfnexam" ,"string","1");
  798. var objArg = new Object();
  799. objArg.arg_ds_send = ds_send_data9;
  800. frmf_modal("SPPMC02500", "SPPMC02500", objArg, null, 1, 150, 150, null, null, null, null, null, "M");
  801. ds_send_data9.clearData();
  802. // 팝업 정상종료 체크
  803. //if (model.getValue("/root/main/popupendflag") == 'ok') {
  804. if(frmf_getParameter("SPPMC02500_popupendflag") == "ok") {
  805. // 환자기본정보 입력
  806. ds_send_agmtdesc.setColumn(0,"pid", ds_patinfolist.getColumn(0,"pid"));
  807. ds_send_agmtdesc.setColumn(0,"hngnm", ds_patinfolist.getColumn(0,"hngnm"));
  808. ds_send_agmtdesc.setColumn(0,"age", ds_patinfolist.getColumn(0,"age"));
  809. ds_send_agmtdesc.setColumn(0,"sex", ds_patinfolist.getColumn(0,"sex"));
  810. ds_send_agmtdesc.setColumn(0,"brthdd", ds_patinfolist.getColumn(0,"brthdd"));
  811. ds_send_agmtdesc.setColumn(0,"rrgstno", ds_patinfolist.getColumn(0,"rrgstno1") + ds_patinfolist.getColumn(0,"rrgstno2"));
  812. ds_send_agmtdesc.setColumn(0,"address", ds_patinfolist.getColumn(0,"addr") + ds_patinfolist.getColumn(0,"detladdr"));
  813. }
  814. }
  815. /****************************************************************************************
  816. * Components : Button
  817. * Components ID : button1
  818. * Event : onclick
  819. * Argument : 01.obj : Object Event has occurred
  820. * : 02.e : Event Object
  821. * Description : 약정서 신규출력
  822. ****************************************************************************************/
  823. function button1_onclick(obj:Button, e:ClickEventInfo)
  824. {
  825. if (utlf_isNull(ds_send_agmtdesc.getColumn(0,"ocrtype")) || utlf_isNull(ds_send_agmtdesc.getColumn(0,"agmttype"))) {
  826. sysf_messageBox("서식 및 구분이 선택되지 않았습니다. ", "C000");
  827. return;
  828. }
  829. if (utlf_isNull(ds_main_ininfo.getColumn(0,"pid"))) {
  830. sysf_messageBox("환자정보가 없습니다", "C000");
  831. return;
  832. }
  833. if (ds_send_cond.getColumn(0,"pid") != ds_main_ininfo.getColumn(0,"pid")) {
  834. sysf_messageBox("입원등록화면의 환자와 다른 환자가 현재 조회되었습니다.\r\n입원약정서 화면을 닫고 새로 진행해주시기 바랍니다.", "C000");
  835. return;
  836. }
  837. if (ds_send_agmtdesc.getColumn(0,"agmttype") == "2"
  838. && (utlf_isNull(ds_send_agmtdesc.getColumn(0,"fromdd")) || utlf_isNull(ds_send_agmtdesc.getColumn(0,"todd"))))
  839. {
  840. sysf_messageBox("기간약정서의 경우 시작일자 / 종료일자를 입력해야합니다.", "C000");
  841. return;
  842. }
  843. // OCR 서식
  844. if (ds_send_agmtdesc.getColumn(0,"ocrtype") == "O") {
  845. // 일반약정서
  846. if (ds_send_agmtdesc.getColumn(0,"agmttype") == "1") {
  847. // 약정서 출력
  848. fPrintAgmt( ds_main_ininfo.getColumn(0,"pid"),
  849. ds_main_ininfo.getColumn(0,"indd"),
  850. ds_main_ininfo.getColumn(0,"orddeptcd"),
  851. ds_main_ininfo.getColumn(0,"orddrid"),
  852. '1',
  853. 'N',
  854. '',
  855. '',
  856. '',
  857. '',
  858. ds_main_ininfo.getColumn(0,"cretno"));
  859. // 기간약정서
  860. } else {
  861. // 기존의 출력데이터 존재유무확인
  862. var retMsg = fReqGetInAgmtCount(ds_main_ininfo.getColumn(0,"pid"),
  863. ds_main_ininfo.getColumn(0,"indd"),
  864. "2");
  865. if (retMsg == true) {
  866. sysf_messageBox("이미 기간약정서가 존재합니다. 재출력은 OCR반납화면을 이용하시기 바랍니다.", "C000");
  867. return;
  868. } else {
  869. // 신규출력
  870. fPrintAgmt( ds_main_ininfo.getColumn(0,"pid"),
  871. ds_main_ininfo.getColumn(0,"indd"),
  872. ds_main_ininfo.getColumn(0,"orddeptcd"),
  873. ds_main_ininfo.getColumn(0,"orddrid"),
  874. '2',
  875. 'N',
  876. '',
  877. '',
  878. '',
  879. ds_send_agmtdesc.getColumn(0,"todd"),
  880. ds_main_ininfo.getColumn(0,"cretno")
  881. );
  882. }
  883. }
  884. // 전자동의서
  885. } else {
  886. // 전자동의서의 경우 입원이력 체크(반드시 있어야함)
  887. if (utlf_isNull(ds_main_ininfo.getColumn(0,"cretno"))) {
  888. sysf_messageBox("전자동의서의 경우 입원등록 이후에 진행하시기 바랍니다. ", "C000");
  889. return;
  890. }
  891. // 입원정보 조회
  892. var oParam = {};
  893. oParam.id = "TRPMI03206";
  894. oParam.service = "ipatmngtapp.InRgst";
  895. oParam.method = "reqGetInptInfo";
  896. oParam.inds = "req=ds_main_ininfo";
  897. oParam.outds = "ds_main_inptinfo=inptinfo";
  898. oParam.async = false;
  899. //oParam.callback = "cf_TRPMI03206";
  900. tranf_submit(oParam);
  901. // 입원정보 설정
  902. ds_main_ininfo.setColumn(0,"orddeptnm", ds_main_inptinfo.getColumn(0,"orddeptnm"));
  903. ds_main_ininfo.setColumn(0,"roomcd", ds_main_inptinfo.getColumn(0,"roomcd"));
  904. ds_main_ininfo.setColumn(0,"bedcnt", ds_main_inptinfo.getColumn(0,"bedcnt"));
  905. ds_main_ininfo.setColumn(0,"insukind", ds_main_inptinfo.getColumn(0,"insukind"));
  906. // 전자동의서 파라미터 설정
  907. frmf_setParameter("SSMRC03160_param_patid", ds_main_ininfo.getColumn(0,"pid"));
  908. frmf_setParameter("SSMRC03160_param_indate", ds_main_ininfo.getColumn(0,"indd"));
  909. frmf_setParameter("SSMRC03160_param_cretno", ds_main_ininfo.getColumn(0,"cretno"));
  910. frmf_setParameter("SSMRC03160_param_instcd", sysf_getUserInfo("dutplceinstcd"));
  911. frmf_setParameter("SSMRC03160_param_cuser", sysf_getUserInfo("userid"));
  912. frmf_setParameter("SSMRC03160_param_class", ds_main_ininfo.getColumn(0,"ordtype"));
  913. frmf_setParameter("SSMRC03160_param_cpensize", "1"); // 환자측 펜굵기 강제지정
  914. frmf_setParameter("SSMRC03160_param_sendmsg", "1"); // 환자측 필압설정 강제지정
  915. // 구분에 따라 서식코드 / 기간 설정
  916. if (ds_send_agmtdesc.getColumn(0,"agmttype") == "1") {
  917. frmf_setParameter("SSMRC03160_param_docucd","1300013648"); // 1300013648 일반약정서
  918. ds_main_ininfo.setColumn(0,"fromdd", ds_send_agmtdesc.getColumn(0,"fromdd"));
  919. ds_main_ininfo.setColumn(0,"todd", ds_send_agmtdesc.getColumn(0,"fromdd"));
  920. ds_main_ininfo.setColumn(0,"agmttype", "1");
  921. frmf_setParameter("SSMRC03160_param_flag", "A"); // S : 선택진료신청서, A : 입원약정서, T : 기간약정서
  922. } else {
  923. frmf_setParameter("SSMRC03160_param_docucd","1300013649"); // 1300013649 기간약정서
  924. ds_main_ininfo.setColumn(0,"fromdd", ds_send_agmtdesc.getColumn(0,"fromdd"));
  925. ds_main_ininfo.setColumn(0,"todd", ds_send_agmtdesc.getColumn(0,"todd"));
  926. ds_main_ininfo.setColumn(0,"agmttype", "2");
  927. frmf_setParameter("SSMRC03160_param_flag", "T"); // S : 선택진료신청서, A : 입원약정서, T : 기간약정서
  928. }
  929. // 담당자 연락처 설정
  930. if (sysf_getUserInfo("dutplceinstcd") == "031") {
  931. ds_main_ininfo.setColumn(0,"officetelno", "053-200-5061");
  932. } else {
  933. ds_main_ininfo.setColumn(0,"officetelno", "053-200-2073");
  934. }
  935. // 결재정보 설정
  936. ds_main_ininfo.setColumn(0,"aprv1", sysf_getUserInfo("usernm"));
  937. ds_main_ininfo.setColumn(0,"aprv2", ds_init_PK066.lookup("detl","원무 마감 팀장","cdnm"));
  938. ds_main_ininfo.setColumn(0,"aprv3", ds_init_PK048.lookup("detl","원무 마감 부서장","cdnm"));
  939. // 전자동의서 팝업 호출
  940. frmf_modal("SSMRC03160", "SSMRC03160", null, null, null, null, null, null, null, null, null, null, "M");
  941. }
  942. }
  943. /****************************************************************************************
  944. * Components : Button
  945. * Components ID : button3
  946. * Event : onclick
  947. * Argument : 01.obj : Object Event has occurred
  948. * : 02.e : Event Object
  949. * Description : 약정서 재출력
  950. ****************************************************************************************/
  951. function button3_onclick(obj:Button, e:ClickEventInfo)
  952. {
  953. fRePrintOcr();
  954. }
  955. /****************************************************************************************
  956. * Components : Button
  957. * Components ID : button5
  958. * Event : onclick
  959. * Argument : 01.obj : Object Event has occurred
  960. * : 02.e : Event Object
  961. * Description : OCR미리보기
  962. ****************************************************************************************/
  963. function button5_onclick(obj:Button, e:ClickEventInfo)
  964. {
  965. if (utlf_isNull(ds_send_agmtdesc.getColumn(0,"ocrtagno")) || ds_send_agmtdesc.getColumn(0,"scanyn") != "Y") {
  966. sysf_messageBox("약정서가 선택되지 않았거나 스캔되지 않았습니다.\r\n데이터를 확인하시기 바랍니다.", "C000");
  967. return;
  968. }
  969. ds_send_iemr.clear();
  970. dsf_makeValue(ds_send_iemr,"pid" ,"string",ds_send_agmtdesc.getColumn(0,"pid"));
  971. dsf_makeValue(ds_send_iemr,"ocrcode","string",ds_send_agmtdesc.getColumn(0,"ocrtagno"));
  972. // if((window.children.item("imgemrviewer") == null)){
  973. // window.load("../../../emr/imgemrweb/xrw/SSMRC03130.xrw", "modeless", "imgemrviewer", "", "/root/send/iemr", "/root/hidden/temp");
  974. // window.children.item("imgemrviewer").document.title = "Image EMR Viewer";
  975. // }else{
  976. // messageBox("약정서 뷰어 호출에 실패하였습니다.", "C000");
  977. // }
  978. if(!utlf_isNull(ds_send_iemr.getColumn(0, "pid")) && !utlf_isNull(ds_send_iemr.getColumn(0, "ocrcode")))
  979. {
  980. var objArg = new Object();
  981. objArg.arg_ds_hidden_temp = ds_send_iemr;
  982. frmf_open("SSMRC03130", "SSMRC03130", objArg, null, null, null, null, null, null, null, null, null, "M");
  983. } else {
  984. sysf_messageBox("약정서 뷰어 호출에 실패하였습니다.", "C000");
  985. }
  986. }
  987. /****************************************************************************************
  988. * Components : Button
  989. * Components ID : btn_init
  990. * Event : onclick
  991. * Argument : 01.obj : Object Event has occurred
  992. * : 02.e : Event Object
  993. * Description : 초기화
  994. ****************************************************************************************/
  995. function btn_init_onclick(obj:Button, e:ClickEventInfo)
  996. {
  997. fInit();
  998. }
  999. ]]></Script>
  1000. </Form>
  1001. </FDL>