SPMMO04100_협진회의록.xfdl 53 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPMMO04100" position="absolute 0 0 762 656" titletext="협진회의록" oninit="SPMMO04100_oninit" onload="SPMMO04100_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static text="협진회의록" position="absolute 4 5 93 25" id="caption1" class="tit_2"/>
  8. <Static text="상정과" position="absolute 0 51 70 74" id="caption2" class="cell_1"/>
  9. <Static text="진단명" position="absolute 0 76 70 99" id="caption12" class="cell_1"/>
  10. <Static text="회의일시" position="absolute 273 172 343 196" id="caption5" class="cell_1"/>
  11. <Static text="등록번호" position="absolute 0 25 70 49" id="caption9" class="cell_1"/>
  12. <Static text="진료의" position="absolute 213 51 283 74" id="caption13" class="cell_1"/>
  13. <Combo position="absolute 72 52 210 72" id="cmb_cnstorddeptcd" enable="false" innerdataset="@ds_orddept" datacolumn="depthngnm" codecolumn="deptcd"/>
  14. <Static text="회의장소" position="absolute 522 172 592 196" id="caption3" class="cell_1"/>
  15. <Static text="환자명" position="absolute 213 25 283 49" id="caption4" class="cell_1"/>
  16. <Static text="성별/나이" position="absolute 401 25 471 49" id="caption6" class="cell_1"/>
  17. <Button position="absolute 502 175 518 191" id="button1" class="icon_clock" text="" onclick="button1_onclick"/>
  18. <Static text="ECOG" position="absolute 0 101 70 124" id="caption7" class="cell_1"/>
  19. <Static text="흡연력" position="absolute 0 126 70 169" id="caption8" class="cell_1"/>
  20. <TextArea position="absolute 72 205 762 432" id="ipt_confcnts"/>
  21. <Static text="회의제목" position="absolute 0 172 70 196" id="caption11" class="cell_1"/>
  22. <Button position="absolute 648 633 704 653" id="btn_save" class="btn4" text="저장" onclick="btn_save_onclick"/>
  23. <Button position="absolute 706 633 762 653" id="btn_close" class="btn4" text="종료" onclick="btn_close_onclick"/>
  24. <Edit position="absolute 285 27 399 47" id="ipt_hngnm" enable="false" autoselect="true"/>
  25. <MaskEdit position="absolute 440 174 498 194" id="ipt_conftm" taborder="1" mask="##:##" style="align:left middle;" type="string" displaynulltext=" " autoselect="true"/>
  26. <Calendar position="absolute 345 174 438 194" align="align:center middle;" id="ipt_confdd" taborder="1" mask="yyyy-mm-dd" dateformat="yyyy-MM-dd" value="null" autoselect="true"/>
  27. <Edit position="absolute 594 174 762 194" id="ipt_confplce" taborder="1" autoselect="true"/>
  28. <Edit position="absolute 72 174 269 194" id="ipt_titl" taborder="1" autoselect="true"/>
  29. <Edit position="absolute 72 76 155 96" id="ipt_diagcd" onkeydown="ipt_diagcd_onkeydown" autoselect="true"/>
  30. <Edit position="absolute 157 76 395 96" id="ipt_diagnm" onkeydown="ipt_diagnm_onkeydown" autoselect="true"/>
  31. <Edit position="absolute 72 26 210 46" id="ipt_pid" enable="false" taborder="1" autoselect="true"/>
  32. <Edit position="absolute 473 27 543 47" id="ipt_sa" enable="false" autoselect="true"/>
  33. <Static text="상정이유" position="absolute 0 606 70 630" id="caption14" class="cell_1"/>
  34. <Static text="회&#13;&#10;&#13;&#10;의&#13;&#10;&#13;&#10;내&#13;&#10;&#13;&#10;용" position="absolute 0 205 70 432" align="align:center middle;" id="caption15" class="cell_1" style="align:center middle;" onclick="caption15_onclick"/>
  35. <Edit position="absolute 72 607 762 627" id="input1" taborder="1"/>
  36. <Static text="병실" position="absolute 545 25 615 49" id="caption16" class="cell_1"/>
  37. <Edit position="absolute 617 27 695 47" id="input3" enable="false" autoselect="true"/>
  38. <Static text="병기" position="absolute 401 101 471 125" id="caption17" class="cell_1"/>
  39. <Edit position="absolute 473 101 517 121" id="input4" enable="false" imemode="alpha" autoselect="true" maxlength="2"/>
  40. <Static text="작성자" position="absolute 0 632 70 656" id="caption18" class="cell_1"/>
  41. <Edit position="absolute 540 101 572 121" id="input5" enable="false" autoselect="true" maxlength="3"/>
  42. <Edit position="absolute 594 101 626 121" id="input7" enable="false" autoselect="true" maxlength="3"/>
  43. <Edit position="absolute 648 101 680 121" id="input8" enable="false" autoselect="true" maxlength="3"/>
  44. <Button position="absolute 100 0 142 20" id="btn_prev" class="btn2" text="이전" onclick="btn_prev_onclick"/>
  45. <Button position="absolute 144 0 186 20" id="btn_next" class="btn2" text="이후" onclick="btn_next_onclick"/>
  46. <Button position="absolute 198 0 240 20" id="btn_last" class="btn2" text="최근" onclick="btn_last_onclick"/>
  47. <Static text="결&#13;&#10;&#13;&#10;과" position="absolute 0 434 70 604" align="align:center middle;" id="caption19" class="cell_1" style="align:center middle;" onclick="caption19_onclick"/>
  48. <TextArea position="absolute 72 434 762 605" id="ipt_rsltcnts"/>
  49. <Radio position="absolute 75 101 290 121" id="radio1" columncount="5" codecolumn="codecolumn" datacolumn="datacolumn" style="textpadding:0 0 0 5;">
  50. <Dataset id="innerdataset">
  51. <ColumnInfo>
  52. <Column id="codecolumn"/>
  53. <Column id="datacolumn"/>
  54. </ColumnInfo>
  55. <Rows>
  56. <Row>
  57. <Col id="codecolumn">0</Col>
  58. <Col id="datacolumn">0</Col>
  59. </Row>
  60. <Row>
  61. <Col id="codecolumn">1</Col>
  62. <Col id="datacolumn">1</Col>
  63. </Row>
  64. <Row>
  65. <Col id="codecolumn">2</Col>
  66. <Col id="datacolumn">2</Col>
  67. </Row>
  68. <Row>
  69. <Col id="codecolumn">3</Col>
  70. <Col id="datacolumn">3</Col>
  71. </Row>
  72. <Row>
  73. <Col id="codecolumn">4</Col>
  74. <Col id="datacolumn">4</Col>
  75. </Row>
  76. </Rows>
  77. </Dataset>
  78. </Radio>
  79. <Static text="T:" position="absolute 522 101 542 121" align="align:center middle;" id="caption20"/>
  80. <Static text="N:" position="absolute 575 101 596 121" align="align:center middle;" id="caption21"/>
  81. <Static text="M:" position="absolute 629 101 654 121" align="align:center middle;" id="caption22"/>
  82. <Radio position="absolute 75 126 280 167" id="radio2" columncount="2" rowcount="2" codecolumn="codecolumn" datacolumn="datacolumn" onitemchanged="radio2_onitemchanged" style="textpadding:0 0 0 5;itempadding:0 0 2 0;padding:1 0 0 0;">
  83. <Dataset id="innerdataset">
  84. <ColumnInfo>
  85. <Column id="codecolumn"/>
  86. <Column id="datacolumn"/>
  87. </ColumnInfo>
  88. <Rows>
  89. <Row>
  90. <Col id="codecolumn">3</Col>
  91. <Col id="datacolumn">Never-smoker</Col>
  92. </Row>
  93. <Row>
  94. <Col id="codecolumn">1</Col>
  95. <Col id="datacolumn">Ex-smoker</Col>
  96. </Row>
  97. <Row>
  98. <Col id="codecolumn">2</Col>
  99. <Col id="datacolumn">Current</Col>
  100. </Row>
  101. </Rows>
  102. </Dataset>
  103. </Radio>
  104. <Shape position="absolute 0 46 762 52" linetype="horizontal" id="line19" class="line_2"/>
  105. <Shape position="absolute 0 71 762 77" linetype="horizontal" id="line3" class="line_2"/>
  106. <Shape position="absolute 0 96 762 102" linetype="horizontal" id="line4" class="line_2"/>
  107. <Shape position="absolute 0 166 762 172" linetype="horizontal" id="line5" class="line_2"/>
  108. <Div position="absolute 260 126 762 146" id="group1">
  109. <Layouts>
  110. <Layout>
  111. <MaskEdit position="absolute 83 0 118 20" id="ipt_smokstrtyear" enable="false" mask="####" onkeyup="group1_ipt_smokstrtyear_onkeyup" anchor="default" autoselect="true"/>
  112. <MaskEdit position="absolute 198 0 233 20" id="ipt_smokendyear" enable="false" mask="####" onkeyup="group1_ipt_smokendyear_onkeyup" anchor="default" autoselect="true"/>
  113. <Static text="pack year)" position="absolute 441 0 502 20" id="caption10" anchor="default"/>
  114. <Static text="(흡연시작년도:" position="absolute 1 0 83 20" id="caption23" anchor="default"/>
  115. <Static text=",흡연중단년도:" position="absolute 119 0 200 20" id="caption24" anchor="default"/>
  116. <Static text=",흡연량: 하루" position="absolute 234 0 307 20" id="caption25" anchor="default"/>
  117. <MaskEdit position="absolute 403 0 441 20" id="ipt_smokhist1" enable="false" mask="#" anchor="default" autoselect="true"/>
  118. <Static text="값X" position="absolute 334 0 355 20" id="caption26" anchor="default"/>
  119. <Static text="년=" position="absolute 384 0 403 20" id="caption27" anchor="default"/>
  120. <Edit position="absolute 308 0 333 20" id="ipt_smokday1" enable="false" onkeyup="group1_ipt_smokday1_onkeyup" anchor="default" autoselect="true"/>
  121. <Edit position="absolute 358 0 383 20" id="ipt_smokyear1" enable="false" anchor="default" autoselect="true"/>
  122. </Layout>
  123. </Layouts>
  124. </Div>
  125. <Div position="absolute 155 147 450 167" id="group2">
  126. <Layouts>
  127. <Layout>
  128. <Edit position="absolute 75 0 100 20" id="ipt_smokday2" enable="false" onkeyup="group2_ipt_smokday2_onkeyup" autoselect="true"/>
  129. <Static text="값 X" position="absolute 100 0 125 20" id="caption30"/>
  130. <Static text="년=" position="absolute 155 0 175 20" id="caption31"/>
  131. <Edit position="absolute 130 0 155 20" id="ipt_smokyear2" enable="false" autoselect="true"/>
  132. <MaskEdit position="absolute 180 0 218 20" id="ipt_smokhist2" enable="false" mask="#" autoselect="true"/>
  133. <Static text="pack year)" position="absolute 220 0 292 20" id="caption28"/>
  134. <Static text="(흡연량: 하루" position="absolute 0 0 74 20" id="caption29"/>
  135. </Layout>
  136. </Layouts>
  137. </Div>
  138. <Shape position="absolute 0 121 762 127" linetype="horizontal" id="line6" class="line_2"/>
  139. <Button position="absolute 698 101 762 121" id="button2" class="btn2" text="STAGE" onclick="button2_onclick"/>
  140. <Static text="부진단" position="absolute 401 76 471 100" id="caption33" class="cell_1"/>
  141. <Edit position="absolute 473 76 762 96" id="input2" autoselect="true"/>
  142. <Static id="output2" position="absolute 285 52 399 72"/>
  143. <Static id="output1" position="absolute 72 633 168 653"/>
  144. </Layout>
  145. </Layouts>
  146. <Objects>
  147. <Dataset id="ds_orddept" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  148. <ColumnInfo>
  149. <Column id="depthngnm" type="STRING"/>
  150. <Column id="deptcd" type="STRING"/>
  151. </ColumnInfo>
  152. </Dataset>
  153. <Dataset id="ds_cnstconf" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false" onvaluechanged="ds_cnstconf_onvaluechanged">
  154. <ColumnInfo>
  155. <Column id="screenflag" type="STRING" size="256"/>
  156. <Column id="status" type="STRING" size="256"/>
  157. <Column id="genrdd" type="STRING" size="256"/>
  158. <Column id="genrno" type="STRING" size="256"/>
  159. <Column id="confrecno" type="STRING" size="256"/>
  160. <Column id="confdd" type="STRING" size="256"/>
  161. <Column id="conftm" type="STRING" size="256"/>
  162. <Column id="diagcd" type="STRING" size="256"/>
  163. <Column id="diagnm" type="STRING" size="256"/>
  164. <Column id="smokhist" type="STRING" size="256"/>
  165. <Column id="ecogscale" type="STRING" size="256"/>
  166. <Column id="conftitl" type="STRING" size="256"/>
  167. <Column id="confplce" type="STRING" size="256"/>
  168. <Column id="confcnts" type="STRING" size="256"/>
  169. <Column id="pid" type="STRING" size="256"/>
  170. <Column id="hngnm" type="STRING" size="256"/>
  171. <Column id="sa" type="STRING" size="256"/>
  172. <Column id="orddeptcd" type="STRING" size="256"/>
  173. <Column id="orddrid" type="STRING" size="256"/>
  174. <Column id="orgdiagcd" type="STRING" size="256"/>
  175. <Column id="roomcd" type="STRING" size="256"/>
  176. <Column id="rsltcnts" type="STRING" size="256"/>
  177. <Column id="asumresn" type="STRING" size="256"/>
  178. <Column id="writnm" type="STRING" size="256"/>
  179. <Column id="rgstrid" type="STRING" size="256"/>
  180. <Column id="stagecd" type="STRING" size="256"/>
  181. <Column id="tnmcd1" type="STRING" size="256"/>
  182. <Column id="tnmcd2" type="STRING" size="256"/>
  183. <Column id="tnmcd3" type="STRING" size="256"/>
  184. <Column id="writid" type="STRING" size="256"/>
  185. <Column id="maxconfrecno" type="STRING" size="256"/>
  186. <Column id="smokstrtyear" type="STRING" size="256"/>
  187. <Column id="smokendyear" type="STRING" size="256"/>
  188. <Column id="smokday" type="STRING" size="256"/>
  189. <Column id="smokyear" type="STRING" size="256"/>
  190. <Column id="smokyn" type="STRING" size="256"/>
  191. <Column id="smokhist1" type="STRING" size="256"/>
  192. <Column id="smokday1" type="STRING" size="256"/>
  193. <Column id="smokyear1" type="STRING" size="256"/>
  194. <Column id="smokhist2" type="STRING" size="256"/>
  195. <Column id="smokday2" type="STRING" size="256"/>
  196. <Column id="smokyear2" type="STRING" size="256"/>
  197. <Column id="conf" type="STRING" size="256"/>
  198. <Column id="rslt" type="STRING" size="256"/>
  199. <Column id="subdiagnm" type="STRING" size="256"/>
  200. <Column id="orddrnm" type="STRING" size="256"/>
  201. <Column id="confdt" type="STRING" size="256"/>
  202. </ColumnInfo>
  203. <Rows>
  204. <Row>
  205. <Col id="confplce">협진회의실</Col>
  206. <Col id="smokyn">3</Col>
  207. <Col id="conf">Y</Col>
  208. <Col id="rslt">Y</Col>
  209. </Row>
  210. </Rows>
  211. </Dataset>
  212. <Dataset id="ds_reqTRMMO04110" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  213. <ColumnInfo>
  214. <Column id="genrdd" type="STRING" size="256" sumtext="발생일자"/>
  215. <Column id="genrno" type="STRING" size="256" sumtext="발생번호"/>
  216. <Column id="pid" type="STRING" size="256" sumtext="등록번호"/>
  217. <Column id="confdt" type="STRING" size="256" sumtext="회의일시"/>
  218. <Column id="confrecno" type="INT" size="256" sumtext="회의기록번호"/>
  219. <Column id="state" type="STRING" size="256" sumtext="이전/이후구분"/>
  220. </ColumnInfo>
  221. </Dataset>
  222. <Dataset id="ds_cnstconfinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  223. <ColumnInfo>
  224. <Column id="status" type="STRING" size="256" sumtext="처리구분"/>
  225. <Column id="genrdd" type="STRING" size="256" sumtext="발생일자"/>
  226. <Column id="genrno" type="STRING" size="256" sumtext="발생번호"/>
  227. <Column id="confrecno" type="INT" size="256" sumtext="회의기록번호"/>
  228. <Column id="confdd" type="STRING" size="256" sumtext="회의일자"/>
  229. <Column id="conftm" type="STRING" size="256" sumtext="회의시간"/>
  230. <Column id="diagcd" type="STRING" size="256" sumtext="진단코드"/>
  231. <Column id="diagnm" type="STRING" size="256" sumtext="진단명"/>
  232. <Column id="smokhist" type="STRING" size="256" sumtext="흡연력"/>
  233. <Column id="ecogscale" type="STRING" size="256" sumtext="ECOGSCALE"/>
  234. <Column id="conftitl" type="STRING" size="256" sumtext="회의제목"/>
  235. <Column id="confplce" type="STRING" size="256" sumtext="회의장소"/>
  236. <Column id="confcnts" type="STRING" size="256" sumtext="회의내용"/>
  237. <Column id="pid" type="STRING" size="256" sumtext="등록번호"/>
  238. <Column id="hngnm" type="STRING" size="256" sumtext="환자명"/>
  239. <Column id="sa" type="STRING" size="256" sumtext="성별"/>
  240. <Column id="roomcd" type="STRING" size="256" sumtext="병실코드"/>
  241. <Column id="orddeptnm" type="STRING" size="256" sumtext="진료과"/>
  242. <Column id="orddeptcd" type="STRING" size="256" sumtext="진료과코드"/>
  243. <Column id="orddrnm" type="STRING" size="256" sumtext="진료의"/>
  244. <Column id="orddrid" type="STRING" size="256" sumtext="진료의ID"/>
  245. <Column id="orgdiagcd" type="STRING" size="256" sumtext="원진단코드"/>
  246. <Column id="stage" type="STRING" size="256" sumtext="STAGE"/>
  247. <Column id="stagecd" type="STRING" size="256" sumtext="STAGE코드"/>
  248. <Column id="tnmcd1" type="STRING" size="256" sumtext="TNM코드1"/>
  249. <Column id="tnmcd2" type="STRING" size="256" sumtext="TNM코드1"/>
  250. <Column id="tnmcd3" type="STRING" size="256" sumtext="TNM코드1"/>
  251. <Column id="asumresn" type="STRING" size="256" sumtext="상정이유"/>
  252. <Column id="rsltcnts" type="STRING" size="256" sumtext="결과"/>
  253. <Column id="writid" type="STRING" size="256" sumtext="작성자ID"/>
  254. <Column id="writnm" type="STRING" size="256" sumtext="작성자명"/>
  255. <Column id="smokcnts" type="STRING" size="256" sumtext="흡연정보"/>
  256. <Column id="smokday" type="STRING" size="256" sumtext="하루흡연량"/>
  257. <Column id="smokyear" type="STRING" size="256" sumtext="흡연지속년수"/>
  258. <Column id="smokyn" type="STRING" size="256" sumtext="흡연여부"/>
  259. <Column id="smokstrtyear" type="STRING" size="256" sumtext="흡연시작년도"/>
  260. <Column id="smokendyear" type="STRING" size="256" sumtext="흡연중단연도"/>
  261. <Column id="subdiagnm" type="STRING" size="256" sumtext="부진단명"/>
  262. </ColumnInfo>
  263. </Dataset>
  264. <Dataset id="ds_reqTRMMO00114" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  265. <ColumnInfo>
  266. <Column id="pid" type="STRING" size="256" sumtext="등록번호"/>
  267. <Column id="orddeptcd" type="STRING" size="256" sumtext="진료과코드"/>
  268. <Column id="orddd" type="STRING" size="256" sumtext="진료일자"/>
  269. <Column id="ioflag" type="STRING" size="256" sumtext="외래입원구분"/>
  270. <Column id="diagkindcdflag" type="STRING" size="256" sumtext="진단종류코드"/>
  271. </ColumnInfo>
  272. </Dataset>
  273. <Dataset id="ds_diagcdlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  274. <ColumnInfo>
  275. <Column id="status" type="STRING" size="256" sumtext="처리구분"/>
  276. <Column id="diagdd" type="STRING" size="256" sumtext="진단일자"/>
  277. <Column id="diagno" type="STRING" size="256" sumtext="진단번호"/>
  278. <Column id="diaghistno" type="STRING" size="256" sumtext="진단이력번호"/>
  279. <Column id="diagtypecd" type="STRING" size="256" sumtext="진단형태코드(입원의뢰진단:R)"/>
  280. <Column id="pid" type="STRING" size="256" sumtext="등록번호"/>
  281. <Column id="orddd" type="STRING" size="256" sumtext="진료일자"/>
  282. <Column id="cretno" type="STRING" size="256" sumtext="생성번호"/>
  283. <Column id="orddeptcd" type="STRING" size="256" sumtext="진료과코드"/>
  284. <Column id="orddrid" type="STRING" size="256" sumtext="진료의사"/>
  285. <Column id="diagcd" type="STRING" size="256" sumtext="진단코드"/>
  286. <Column id="icd10cd" type="STRING" size="256" sumtext="ICD10코드"/>
  287. <Column id="diagengnm" type="STRING" size="256" sumtext="진단영문명"/>
  288. <Column id="diaghngnm" type="STRING" size="256" sumtext="진단한글명"/>
  289. </ColumnInfo>
  290. </Dataset>
  291. <Dataset id="ds_opcdlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  292. <ColumnInfo>
  293. <Column id="status" type="STRING" size="256" sumtext="처리구분"/>
  294. <Column id="diagdd" type="STRING" size="256" sumtext="진단일자"/>
  295. <Column id="diagno" type="STRING" size="256" sumtext="진단번호"/>
  296. <Column id="diaghistno" type="STRING" size="256" sumtext="진단이력번호"/>
  297. <Column id="diagtypecd" type="STRING" size="256" sumtext="진단형태코드(수술:O)"/>
  298. <Column id="pid" type="STRING" size="256" sumtext="등록번호"/>
  299. <Column id="orddd" type="STRING" size="256" sumtext="진료일자"/>
  300. <Column id="cretno" type="STRING" size="256" sumtext="생성번호"/>
  301. <Column id="orddeptcd" type="STRING" size="256" sumtext="진료과코드"/>
  302. <Column id="orddrid" type="STRING" size="256" sumtext="진료의사"/>
  303. <Column id="diagcd" type="STRING" size="256" sumtext="진단코드"/>
  304. <Column id="icd9cd" type="STRING" size="256" sumtext="ICD9코드"/>
  305. <Column id="opengnm" type="STRING" size="256" sumtext="수술영문명"/>
  306. <Column id="ophngnm" type="STRING" size="256" sumtext="수술한글명"/>
  307. </ColumnInfo>
  308. </Dataset>
  309. <Dataset id="ds_reqdata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  310. <ColumnInfo>
  311. <Column id="pid" type="STRING" size="256" sumtext="등록번호"/>
  312. </ColumnInfo>
  313. <Rows>
  314. <Row/>
  315. </Rows>
  316. </Dataset>
  317. <Dataset id="ds_cnststageinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  318. <ColumnInfo>
  319. <Column id="pid" type="STRING" size="256" sumtext="등록번호"/>
  320. <Column id="hngnm" type="STRING" size="256" sumtext="환자명"/>
  321. <Column id="sa" type="STRING" size="256" sumtext="성별"/>
  322. <Column id="orddeptcd" type="STRING" size="256" sumtext="진료과코드"/>
  323. <Column id="roomcd" type="STRING" size="256" sumtext="병실코드"/>
  324. <Column id="orddrid" type="STRING" size="256" sumtext="진료의ID"/>
  325. <Column id="orddrnm" type="STRING" size="256" sumtext="진료의"/>
  326. <Column id="stagecd" type="STRING" size="256" sumtext="STAGE코드"/>
  327. <Column id="tnmcd1" type="STRING" size="256" sumtext="TNM코드1"/>
  328. <Column id="tnmcd2" type="STRING" size="256" sumtext="TNM코드1"/>
  329. <Column id="tnmcd3" type="STRING" size="256" sumtext="TNM코드1"/>
  330. </ColumnInfo>
  331. </Dataset>
  332. <Dataset id="ds_savedata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  333. <ColumnInfo>
  334. <Column id="status" type="STRING" size="256" sumtext="처리구분"/>
  335. <Column id="genrdd" type="STRING" size="256" sumtext="발생일자"/>
  336. <Column id="genrno" type="INT" size="256" sumtext="발생번호"/>
  337. <Column id="confrecno" type="INT" size="256" sumtext="회의록번호"/>
  338. <Column id="confdd" type="STRING" size="256" sumtext="회의일자"/>
  339. <Column id="conftm" type="STRING" size="256" sumtext="회의시간"/>
  340. <Column id="diagcd" type="STRING" size="256" sumtext="진단코드"/>
  341. <Column id="smokhist" type="STRING" size="256" sumtext="흡연력"/>
  342. <Column id="ecogscale" type="STRING" size="256" sumtext="ECOGSCALE"/>
  343. <Column id="conftitl" type="STRING" size="256" sumtext="회의제목"/>
  344. <Column id="confplce" type="STRING" size="256" sumtext="회의장소"/>
  345. <Column id="confcnts" type="STRING" size="256" sumtext="회의내용"/>
  346. <!--
  347. <Column id="stagecd" type="STRING" size="256" sumtext="STAGE코드"/>
  348. <Column id="tnmcd1" type="STRING" size="256" sumtext="TNM코드1"/>
  349. <Column id="tnmcd2" type="STRING" size="256" sumtext="TNM코드2"/>
  350. <Column id="tnmcd3" type="STRING" size="256" sumtext="TNM코드3"/>
  351. -->
  352. <Column id="writid" type="STRING" size="256" sumtext="작성자ID"/>
  353. <Column id="asumresn" type="STRING" size="256" sumtext="상정이유"/>
  354. <Column id="rsltcnts" type="STRING" size="256" sumtext="결과"/>
  355. <Column id="orgdiagcd" type="STRING" size="256" sumtext="원진단코드"/>
  356. <Column id="smokday" type="STRING" size="256" sumtext="하루흡연량"/>
  357. <Column id="smokyear" type="STRING" size="256" sumtext="흡연지속년수"/>
  358. <Column id="smokyn" type="STRING" size="256" sumtext="흡연여부"/>
  359. <Column id="smokstrtyear" type="STRING" size="256" sumtext="흡연시작년도"/>
  360. <Column id="smokendyear" type="STRING" size="256" sumtext="흡연중단연도"/>
  361. <Column id="subdiagnm" type="STRING" size="256" sumtext="부진단명"/>
  362. </ColumnInfo>
  363. </Dataset>
  364. </Objects>
  365. <Bind>
  366. <BindItem id="item0" compid="ipt_pid" propid="value" datasetid="ds_cnstconf" columnid="pid"/>
  367. <BindItem id="item1" compid="ipt_hngnm" propid="value" datasetid="ds_cnstconf" columnid="hngnm"/>
  368. <BindItem id="item2" compid="ipt_sa" propid="value" datasetid="ds_cnstconf" columnid="sa"/>
  369. <BindItem id="item3" compid="input3" propid="value" datasetid="ds_cnstconf" columnid="roomcd"/>
  370. <BindItem id="item4" compid="cmb_cnstorddeptcd" propid="value" datasetid="ds_cnstconf" columnid="orddeptcd"/>
  371. <BindItem id="item5" compid="output2" propid="text" datasetid="ds_cnstconf" columnid="orddrnm"/>
  372. <BindItem id="item6" compid="ipt_diagcd" propid="value" datasetid="ds_cnstconf" columnid="diagcd"/>
  373. <BindItem id="item7" compid="ipt_diagnm" propid="value" datasetid="ds_cnstconf" columnid="diagnm"/>
  374. <BindItem id="item8" compid="input2" propid="value" datasetid="ds_cnstconf" columnid="subdiagnm"/>
  375. <BindItem id="item9" compid="radio1" propid="value" datasetid="ds_cnstconf" columnid="ecogscale"/>
  376. <BindItem id="item10" compid="input4" propid="value" datasetid="ds_cnstconf" columnid="stagecd"/>
  377. <BindItem id="item11" compid="input5" propid="value" datasetid="ds_cnstconf" columnid="tnmcd1"/>
  378. <BindItem id="item12" compid="input7" propid="value" datasetid="ds_cnstconf" columnid="tnmcd2"/>
  379. <BindItem id="item13" compid="input8" propid="value" datasetid="ds_cnstconf" columnid="tnmcd3"/>
  380. <BindItem id="item14" compid="radio2" propid="value" datasetid="ds_cnstconf" columnid="smokyn"/>
  381. <BindItem id="item15" compid="group1.ipt_smokstrtyear" propid="value" datasetid="ds_cnstconf" columnid="smokstrtyear"/>
  382. <BindItem id="item16" compid="group1.ipt_smokendyear" propid="value" datasetid="ds_cnstconf" columnid="smokendyear"/>
  383. <BindItem id="item17" compid="group1.ipt_smokday1" propid="value" datasetid="ds_cnstconf" columnid="smokday1"/>
  384. <BindItem id="item18" compid="group1.ipt_smokyear1" propid="value" datasetid="ds_cnstconf" columnid="smokyear1"/>
  385. <BindItem id="item19" compid="group1.ipt_smokhist1" propid="value" datasetid="ds_cnstconf" columnid="smokhist1"/>
  386. <BindItem id="item20" compid="group2.ipt_smokday2" propid="value" datasetid="ds_cnstconf" columnid="smokday2"/>
  387. <BindItem id="item21" compid="group2.ipt_smokyear2" propid="value" datasetid="ds_cnstconf" columnid="smokyear2"/>
  388. <BindItem id="item22" compid="group2.ipt_smokhist2" propid="value" datasetid="ds_cnstconf" columnid="smokhist2"/>
  389. <BindItem id="item23" compid="ipt_titl" propid="value" datasetid="ds_cnstconf" columnid="conftitl"/>
  390. <BindItem id="item24" compid="ipt_confdd" propid="value" datasetid="ds_cnstconf" columnid="confdd"/>
  391. <BindItem id="item25" compid="ipt_conftm" propid="value" datasetid="ds_cnstconf" columnid="conftm"/>
  392. <BindItem id="item26" compid="ipt_confplce" propid="value" datasetid="ds_cnstconf" columnid="confplce"/>
  393. <BindItem id="item27" compid="ipt_confcnts" propid="value" datasetid="ds_cnstconf" columnid="confcnts"/>
  394. <BindItem id="item28" compid="ipt_rsltcnts" propid="value" datasetid="ds_cnstconf" columnid="rsltcnts"/>
  395. <BindItem id="item29" compid="input1" propid="value" datasetid="ds_cnstconf" columnid="asumresn"/>
  396. </Bind>
  397. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  398. * System Name :
  399. * Job Name :
  400. * Creator :
  401. * Make Date : 2014-08-29
  402. * Description :
  403. *---------------------------------------------------------------------------------------
  404. * Modify Date Modifier Modify Description
  405. *---------------------------------------------------------------------------------------
  406. * 2014-08-29 Live Converter TF->XP
  407. *
  408. *---------------------------------------------------------------------------------------
  409. ****************************************************************************************/
  410. include "com_commonxp::comm_main.xjs";
  411. include "emr_prcpmngtxp::MMO001.xjs";
  412. function SPMMO04100_oninit(obj:Form, e:InitEventInfo)
  413. {
  414. frmf_initForm(obj);
  415. }
  416. function SPMMO04100_onload(obj:Form, e:LoadEventInfo)
  417. {
  418. var scrng_flag = opener.frmf_getParameter("SPMMO04100_scrngflag");
  419. if (scrng_flag == "P") {
  420. fGetLastCnstConfRecInfo();
  421. } else {
  422. btn_prev.visible = false;
  423. btn_next.visible = false;
  424. btn_last.visible = false;
  425. fInitialize_SPMMO04100();
  426. }
  427. }
  428. function btn_prev_onclick(obj:Button, e:ClickEventInfo)
  429. {
  430. var pid = ds_cnstconf.getColumn(0, "pid");
  431. var confdd = ds_cnstconf.getColumn(0, "confdd");
  432. var conftm = ds_cnstconf.getColumn(0, "conftm");
  433. var confdt = confdd + conftm;
  434. fReqCnstConfRecInfo(pid, confdt, "P");
  435. }
  436. function btn_next_onclick(obj:Button, e:ClickEventInfo)
  437. {
  438. var pid = ds_cnstconf.getColumn(0, "pid");
  439. var confdd = ds_cnstconf.getColumn(0, "confdd");
  440. var conftm = ds_cnstconf.getColumn(0, "conftm");
  441. var confdt = confdd + conftm;
  442. fReqCnstConfRecInfo(pid, confdt, "N");
  443. }
  444. function btn_last_onclick(obj:Button, e:ClickEventInfo)
  445. {
  446. fGetLastCnstConfRecInfo();
  447. }
  448. function ipt_diagcd_onkeydown(obj:Edit, e:KeyEventInfo)
  449. {
  450. if(e.keycode == 13)
  451. fReqGetDiagTermASCode(obj.text);
  452. }
  453. function ipt_diagnm_onkeydown(obj:Edit, e:KeyEventInfo)
  454. {
  455. if(e.keycode == 13)
  456. fReqGetDiagTermAsNm(obj.text);
  457. }
  458. function button2_onclick(obj:Button, e:ClickEventInfo)
  459. {
  460. frmf_modal("SPMMO08400", "SPMMO08400", null, null, null, null, null, null, null, null, null, null, "M");
  461. fGetLastStageInfo();
  462. }
  463. function ds_cnstconf_onvaluechanged(obj:Dataset, e:DSColChangeEventInfo)
  464. {
  465. if(e.columnid == "smokday1" || e.columnid == "smokyear1") {
  466. calculateBind(obj, "smokhist1", "smokday1", "smokyear1", "*");
  467. } else if(e.columnid == "smokday2" || e.columnid == "smokyear2") {
  468. calculateBind(obj, "smokhist2", "smokday2", "smokyear2", "*");
  469. } else if(e.columnid == "smokendyear" || e.columnid == "smokstrtyear") {
  470. calculateBind(obj, "smokyear1", "smokendyear", "smokstrtyear", "-");
  471. }
  472. }
  473. function calculateBind(oDataset:Dataset, sDstColumn, sColumn1, sColumn2, sOperator) {
  474. var column1 = oDataset.getColumn(0, sColumn1);
  475. var column2 = oDataset.getColumn(0, sColumn2);
  476. var dstColumn = eval("(utlf_isNull(column1) || utlf_isNull(column2)) ? '' : parseInt(column1) " + sOperator + " parseInt(column2)");
  477. oDataset.setColumn(0, sDstColumn, dstColumn);
  478. }
  479. function radio2_onitemchanged(obj:Radio, e:ItemChangeEventInfo)
  480. {
  481. var smokyn = obj.value;
  482. if (smokyn == "3") {
  483. group1.ipt_smokstrtyear.enable = false;
  484. group1.ipt_smokendyear.enable = false;
  485. group1.ipt_smokday1.enable = false;
  486. group1.ipt_smokyear1.enable = false;
  487. group2.ipt_smokday2.enable = false;
  488. group2.ipt_smokyear2.enable = false;
  489. ds_cnstconf.setColumn(0, "smokstrtyear" , "");
  490. ds_cnstconf.setColumn(0, "smokendyear" , "");
  491. ds_cnstconf.setColumn(0, "smokday1" , "");
  492. ds_cnstconf.setColumn(0, "smokday2" , "");
  493. ds_cnstconf.setColumn(0, "smokyear2" , "");
  494. } else if (smokyn == "1"){
  495. group1.ipt_smokstrtyear.enable = true;
  496. group1.ipt_smokendyear.enable = true;
  497. group1.ipt_smokday1.enable = true;
  498. group1.ipt_smokyear1.enable = true;
  499. group2.ipt_smokday2.enable = false;
  500. group2.ipt_smokyear2.enable = false;
  501. ds_cnstconf.setColumn(0, "smokstrtyear" , "");
  502. ds_cnstconf.setColumn(0, "smokendyear" , "");
  503. ds_cnstconf.setColumn(0, "smokhist1" , "");
  504. ds_cnstconf.setColumn(0, "smokday1" , "");
  505. ds_cnstconf.setColumn(0, "smokyear1" , "");
  506. ds_cnstconf.setColumn(0, "smokday2" , "");
  507. ds_cnstconf.setColumn(0, "smokyear2" , "");
  508. group1.ipt_smokstrtyear.setFocus();
  509. } else if (smokyn == "2"){
  510. group1.ipt_smokstrtyear.enable = false;
  511. group1.ipt_smokendyear.enable = false;
  512. group1.ipt_smokday1.enable = false;
  513. group1.ipt_smokyear1.enable = false;
  514. group2.ipt_smokday2.enable = true;
  515. group2.ipt_smokyear2.enable = true;
  516. ds_cnstconf.setColumn(0, "smokstrtyear" , "");
  517. ds_cnstconf.setColumn(0, "smokendyear" , "");
  518. ds_cnstconf.setColumn(0, "smokday1" , "");
  519. ds_cnstconf.setColumn(0, "smokhist2" , "");
  520. ds_cnstconf.setColumn(0, "smokday2" , "");
  521. ds_cnstconf.setColumn(0, "smokyear2" , "");
  522. group2.ipt_smokday2.setFocus();
  523. }
  524. }
  525. function group1_ipt_smokstrtyear_onkeyup(obj:MaskEdit, e:KeyEventInfo)
  526. {
  527. if(e.keycode == 13){
  528. group1.ipt_smokendyear.setFocus();
  529. }
  530. }
  531. function group1_ipt_smokendyear_onkeyup(obj:MaskEdit, e:KeyEventInfo)
  532. {
  533. if(e.keycode == 13){
  534. group1.ipt_smokday1.setFocus();
  535. }
  536. }
  537. function group1_ipt_smokday1_onkeyup(obj:Edit, e:KeyEventInfo)
  538. {
  539. if(e.keycode == 13){
  540. group1.ipt_smokyear1.setFocus();
  541. }
  542. }
  543. function group2_ipt_smokday2_onkeyup(obj:Edit, e:KeyEventInfo)
  544. {
  545. if(e.keycode == 13){
  546. group1.ipt_smokyear2.setFocus();
  547. }
  548. }
  549. function button1_onclick(obj:Button, e:ClickEventInfo)
  550. {
  551. ds_cnstconf.setColumn(0, "confdd", utlf_getCurrentDate());
  552. ds_cnstconf.setColumn(0, "conftm", utlf_getCurrentTime().substr(0, 4));
  553. }
  554. function caption15_onclick(obj:Static, e:ClickEventInfo)
  555. {
  556. var conf = ds_cnstconf.getColumn(0, "conf");
  557. if (conf == "Y") {
  558. ipt_confcnts.position.top = 206;
  559. ipt_confcnts.position.height = 399;
  560. ipt_rsltcnts.position.top = 435;
  561. ipt_rsltcnts.position.height = 171;
  562. ipt_rsltcnts.visible = false;
  563. ipt_confcnts.visible = true;
  564. caption15.style.backgroundColor = "#99ccff";
  565. caption19.style.backgroundColor = "#e0f1f6ff";
  566. ds_cnstconf.setColumn(0, "conf", "N");
  567. ds_cnstconf.setColumn(0, "rslt", "Y");
  568. } else {
  569. ipt_confcnts.position.top = 206;
  570. ipt_confcnts.position.height = 227;
  571. ipt_rsltcnts.position.top = 435;
  572. ipt_rsltcnts.position.height = 171;
  573. ipt_rsltcnts.visible = true;
  574. ipt_confcnts.visible = true;
  575. caption15.style.backgroundColor = "#e0f1f6ff";
  576. caption19.style.backgroundColor = "#e0f1f6ff";
  577. ds_cnstconf.setColumn(0, "conf", "Y");
  578. ds_cnstconf.setColumn(0, "rslt", "Y");
  579. }
  580. }
  581. function caption19_onclick(obj:Static, e:ClickEventInfo)
  582. {
  583. var rslt = ds_cnstconf.getColumn(0, "rslt");
  584. if (rslt == "Y") {
  585. ipt_rsltcnts.position.top = 206;
  586. ipt_rsltcnts.position.height = 399;
  587. ipt_confcnts.position.top = 206;
  588. ipt_confcnts.position.height = 227;
  589. ipt_confcnts.visible = false;
  590. ipt_rsltcnts.visible = true;
  591. caption19.style.backgroundColor = "#99ccff";
  592. caption15.style.backgroundColor = "#e0f1f6ff";
  593. ds_cnstconf.setColumn(0, "conf", "Y");
  594. ds_cnstconf.setColumn(0, "rslt", "N");
  595. } else {
  596. ipt_rsltcnts.position.top = 435;
  597. ipt_rsltcnts.position.height = 171;
  598. ipt_confcnts.position.top = 206;
  599. ipt_confcnts.position.height = 227;
  600. ipt_confcnts.visible = true;
  601. ipt_rsltcnts.visible = true;
  602. caption19.style.backgroundColor = "#e0f1f6ff";
  603. caption15.style.backgroundColor = "#e0f1f6ff";
  604. ds_cnstconf.setColumn(0, "conf", "Y");
  605. ds_cnstconf.setColumn(0, "rslt", "Y");
  606. }
  607. }
  608. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  609. {
  610. fReqExeSaveCnstConfRecInfo();
  611. }
  612. function btn_close_onclick(obj:Button, e:ClickEventInfo)
  613. {
  614. close();
  615. }
  616. /**
  617. * @desc : 화면 초기화
  618. * @
  619. * @param :
  620. * @return :
  621. * @author : 오지훈
  622. * @---------------------------------------------------
  623. */
  624. function fInitialize_SPMMO04100(){
  625. appf_getCodeList([{dsNm: "ds_M0445", cdGrpId: "M0445"}], true);
  626. lf_mmbfGetDeptCodeComboList(ds_orddept, "A"); //부서코드 콤보
  627. var status = opener.frmf_getParameter("SPMMO04100_status");
  628. var patinfo = opener.frmf_getParameter("SPMMO04100_patinfo");
  629. var confinfo = opener.frmf_getParameter("SPMMO04100_confinfo");
  630. var ioflag = opener.frmf_getParameter("SPMMO04100_ioflag");
  631. //SPMMO04100_patinfo
  632. //pid 등록번호
  633. //hngnm 환자명
  634. //sa 성별
  635. //orddeptcd 진료과코드
  636. //orddrid 진료의ID
  637. //orddd 진료일, 입원일(orddd, indd)
  638. //roomcd 병실
  639. var patinfoarr = patinfo.split("▦");
  640. //SPMMO04100_confinfo
  641. //genrdd 발생일자
  642. //genrno 발생번호
  643. //confrecno 회의록번호
  644. var confinfoarr = confinfo.split("▦");
  645. ds_cnstconf.setColumn(0, "pid" , patinfoarr[0]);
  646. ds_cnstconf.setColumn(0, "hngnm" , patinfoarr[1]);
  647. ds_cnstconf.setColumn(0, "sa" , patinfoarr[2]);
  648. ds_cnstconf.setColumn(0, "roomcd" , patinfoarr[6]);
  649. ds_cnstconf.setColumn(0, "conftitl" , patinfoarr[7]);
  650. ds_cnstconf.setColumn(0, "orddeptcd", patinfoarr[3]);
  651. // mmbfGetUserComboList("/root/send/reqdata" , "/root/init/userlist", patinfoarr[3], "0330"); //사용자콤보 조회
  652. ds_cnstconf.setColumn(0, "orddrnm" , patinfoarr[4]);
  653. ds_cnstconf.setColumn(0, "genrdd" , confinfoarr[0]);
  654. ds_cnstconf.setColumn(0, "genrno" , confinfoarr[1]);
  655. ds_cnstconf.setColumn(0, "confrecno", confinfoarr[2]);
  656. ds_cnstconf.setColumn(0, "confdt" , confinfoarr[3]);
  657. if(status == "i"){ //신규등록
  658. ds_cnstconf.setColumn(0, "confdd", utlf_getCurrentDate());
  659. ds_cnstconf.setColumn(0, "conftm", utlf_getCurrentTime().substr(0, 4));
  660. ds_cnstconf.setColumn(0, "writnm", sysf_getUserInfo("usernm")); //작성자 설정
  661. ds_cnstconf.setColumn(0, "writid", sysf_getUserInfo("userid"));
  662. //환자의 전진단검사,
  663. //등록번호와 진료과, 외래입원구분을 기준으로 환자의 진단을 조회한다.
  664. //환자진단정보 tbl 저장된 가장 최근 진단을 조회
  665. //alert(patinfoarr[5]);
  666. if (ioflag != "") {
  667. fReqGetPatRectDiag(patinfoarr[0], patinfoarr[3], ioflag, patinfoarr[5]);
  668. fGetLastStageInfo() // Stage 설정
  669. }
  670. }else if(status == "u"){ //수정
  671. fReqCnstConfRecInfo(confinfoarr[0], confinfoarr[1], confinfoarr[2], confinfoarr[3], confinfoarr[4], confinfoarr[5]);
  672. }
  673. ds_cnstconf.setColumn(0, "status", status);
  674. ds_cnstconf.addColumn("conf", "string");
  675. ds_cnstconf.setColumn(0, "conf", "Y");
  676. ds_cnstconf.addColumn("rslt", "string");
  677. ds_cnstconf.setColumn(0, "rslt", "Y");
  678. }
  679. /**
  680. * @desc : 협진 회의록 저장
  681. * @
  682. * @param :
  683. * @return :
  684. * @author : 오지훈
  685. * @---------------------------------------------------
  686. */
  687. function fReqExeSaveCnstConfRecInfo(){
  688. //inputEnterKey("button2", "DOMActivate"); // 흡연량을 계산하는 로직 추가 : 2008.11.14 김영학
  689. var status = ds_cnstconf.getColumn(0, "status");
  690. if(status == "u"){
  691. ds_cnstconfinfo.setColumn(0, "status", "u"); //변경된 사항 여부에 관계없이 status값이 달라, 동일하게 맞춰줌
  692. if(lf_compareNodeVal(ds_cnstconf, ds_cnstconfinfo)==false){ //기존 회의록 수정의 경우, 변경된 사항이 없는 경우
  693. sysf_messageBox("변경된 사항이", "I004");
  694. return;
  695. }
  696. }
  697. // 흡연력에 따른 흡연량의 값을 따로가기 위해서 인스턴스를 따로 배정하였으나 저장은 같은 컬럼에 되도록 인스턴스 수정 : 2008.11.14 김영학
  698. var smokyn = ds_cnstconf.getColumn(0, "smokyn");
  699. if (smokyn == "1") {
  700. var smokday = ds_cnstconf.getColumn(0, "smokday1");
  701. var smokyear = ds_cnstconf.getColumn(0, "smokyear1");
  702. var smokhist = ds_cnstconf.getColumn(0, "smokhist1");
  703. } else if (smokyn== "2") {
  704. var smokday = ds_cnstconf.getColumn(0, "smokday2");
  705. var smokyear = ds_cnstconf.getColumn(0, "smokyear2");
  706. var smokhist = ds_cnstconf.getColumn(0, "smokhist2");
  707. }
  708. ds_cnstconf.setColumn(0, "smokday", smokday);
  709. ds_cnstconf.setColumn(0, "smokyear", smokyear);
  710. ds_cnstconf.setColumn(0, "smokhist", smokhist);
  711. // 흡연력에 따른 흡연량의 값을 따로가기 위해서 인스턴스를 따로 배정하였으나 저장은 같은 컬럼에 되도록 인스턴스 수정
  712. var conftitl = ds_cnstconf.getColumn(0, "conftitl");
  713. var confplce = ds_cnstconf.getColumn(0, "confplce");
  714. var smokhist = ds_cnstconf.getColumn(0, "smokyn");
  715. var orgdiagcd = ds_cnstconf.getColumn(0, "orgdiagcd");
  716. var ecogscale = ds_cnstconf.getColumn(0, "ecogscale");
  717. if(conftitl.length < 1){
  718. sysf_messageBox("회의 제목을", "C001");
  719. ipt_titl.setFocus();
  720. return;
  721. }
  722. if(confplce.length < 1){
  723. sysf_messageBox("회의 장소를", "C001");
  724. ipt_confplce.setFocus();
  725. return;
  726. }
  727. /* ECOG , 병기, 흡연력은 필수 아님. Check 안해도 저장되어야 함 : 2009. 02. 06 김영학 (변경요청번호 : 894)
  728. if(smokyn.length < 1){
  729. messageBox("흡연력을", "C001");
  730. return;
  731. }
  732. */
  733. if(orgdiagcd.length < 1){
  734. sysf_messageBox("진단을", "C001");
  735. ipt_diagnm.setFocus();
  736. return;
  737. }
  738. /* ECOG , 병기, 흡연력은 필수 아님. Check 안해도 저장되어야 함 : 2009. 02. 06 김영학 (변경요청번호 : 894)
  739. if(ecogscale < 1){
  740. messageBox("ECOG를", "C001");
  741. return;
  742. }
  743. */
  744. ds_savedata.copyData(ds_cnstconf);
  745. var oParam = {};
  746. oParam.id = "TXMMO04110";
  747. oParam.service = "prcpmngtapp.ConcPatMngt";
  748. oParam.method = "reqExeSaveCnstConfRecInfo";
  749. oParam.inds = "req=" + "ds_savedata";
  750. oParam.outds = "ds_cnstconfinfo=cnstconfinfo";
  751. oParam.async = false;
  752. oParam.callback = "cf_TXMMO04110";
  753. tranf_submit(oParam);
  754. }
  755. function cf_TXMMO04110(sSvcId, nErrorCode, sErrorMsg) {
  756. if(nErrorCode < 0) return;
  757. ds_cnstconfinfo.addColumn("status", "string");
  758. var status = ds_cnstconf.getColumn(0, "status");
  759. if(status == "i"){
  760. sysf_messageBox("회의록 저장이", "I001");
  761. }else{
  762. sysf_messageBox("회의록 수정이", "I001");
  763. }
  764. close();
  765. }
  766. /**
  767. * @desc : 협진 회의록 조회
  768. * @
  769. * @param :
  770. * @return :
  771. * @author : 오지훈
  772. * @---------------------------------------------------
  773. */
  774. function fReqCnstConfRecInfo(genrdd , genrno, confrecno, confdt, pid, state){
  775. ds_reqTRMMO04110.clearData();
  776. ds_reqTRMMO04110.addRow();
  777. ds_reqTRMMO04110.setColumn(0, "genrdd" , genrdd);
  778. ds_reqTRMMO04110.setColumn(0, "genrno" , genrno);
  779. ds_reqTRMMO04110.setColumn(0, "confrecno", confrecno);
  780. ds_reqTRMMO04110.setColumn(0, "confdt" , confdt);
  781. ds_reqTRMMO04110.setColumn(0, "state" , state);
  782. ds_reqTRMMO04110.setColumn(0, "pid" , ds_cnstconf.getColumn(0, "pid"));
  783. var oParam = {};
  784. oParam.id = "TRMMO04110";
  785. oParam.service = "prcpmngtapp.ConcPatMngt";
  786. oParam.method = "reqGetCnstConfRecInfo";
  787. oParam.inds = "req=" + "ds_reqTRMMO04110";
  788. oParam.outds = "ds_cnstconfinfo=cnstconfinfo";
  789. oParam.async = false;
  790. oParam.callback = "cf_TRMMO04110";
  791. tranf_submit(oParam);
  792. }
  793. function cf_TRMMO04110(sSvcId, nErrorCode, sErrorMsg) {
  794. if(nErrorCode < 0) return;
  795. ds_cnstconfinfo.addColumn("status", "string");
  796. ds_cnstconfinfo.addColumn("smokday1", "string");
  797. ds_cnstconfinfo.addColumn("smokyear1", "string");
  798. ds_cnstconfinfo.addColumn("smokhist1", "string");
  799. ds_cnstconfinfo.addColumn("smokday2", "string");
  800. ds_cnstconfinfo.addColumn("smokyear2", "string");
  801. ds_cnstconfinfo.addColumn("smokhist2", "string");
  802. // smokyn(흡연력)의 경우에 따라 흡연량의 값을 셋팅해주는 로직 추가 : 2008.11.14 김영학
  803. var smokyn = ds_cnstconfinfo.getColumn(0, "smokyn");
  804. if (smokyn =="1") {
  805. ds_cnstconfinfo.setColumn(0, "smokday1", ds_cnstconfinfo.getColumn(0, "smokday"));
  806. ds_cnstconfinfo.setColumn(0, "smokyear1", ds_cnstconfinfo.getColumn(0, "smokyear"));
  807. ds_cnstconfinfo.setColumn(0, "smokhist1", ds_cnstconfinfo.getColumn(0, "smokhist"));
  808. } else if (smokyn =="2") {
  809. ds_cnstconfinfo.setColumn(0, "smokday2", ds_cnstconfinfo.getColumn(0, "smokday"));
  810. ds_cnstconfinfo.setColumn(0, "smokyear2", ds_cnstconfinfo.getColumn(0, "smokyear"));
  811. ds_cnstconfinfo.setColumn(0, "smokhist2", ds_cnstconfinfo.getColumn(0, "smokhist"));
  812. }
  813. //smokyn(흡연력)의 경우에 따라 흡연량의 값을 셋팅해주는 로직 추가 : 2008.11.14 김영학
  814. if(ds_cnstconfinfo.rowcount > 0){
  815. ds_cnstconf.copyData(ds_cnstconfinfo);
  816. }
  817. }
  818. /**
  819. * @desc : 진단용어 코드 조회
  820. * @ : 진단용어 코드로 검색
  821. * @param :
  822. * @return :
  823. * @author : 오지훈
  824. * @---------------------------------------------------
  825. */
  826. function fReqGetDiagTermASCode(diagcd){
  827. if(diagcd.length < 2){
  828. sysf_messageBox("검색어를 두 글자 이상", "C001");
  829. return;
  830. }
  831. frmf_setParameter("SPMMO00800_cond1", 1);
  832. frmf_setParameter("SPMMO00800_cond2", 4);
  833. frmf_setParameter("SPMMO00800_cond3", "E");
  834. frmf_setParameter("SPMMO00800_cond4", utlf_getCurrentDate());
  835. frmf_setParameter("SPMMO00800_cond5", diagcd);
  836. frmf_modal("SPMMO00800", "SPMMO00800", null, null, null, null, null, null, null, null, null, null, "M");
  837. var useyn = frmf_getParameter("SPMMO00800_rtn_useyn");
  838. if(useyn == "Y"){
  839. var rtnparam = frmf_getParameter("SPMMO00800_rtn");
  840. rtnparam = rtnparam.split("▩");
  841. var diaginfo = rtnparam[1];
  842. diaginfo = diaginfo.split("▦");
  843. ds_cnstconf.setColumn(0, "diagcd" , diaginfo[1]);
  844. ds_cnstconf.setColumn(0, "orgdiagcd", diaginfo[9]);
  845. ds_cnstconf.setColumn(0, "diagnm" , diaginfo[2]);
  846. }
  847. }
  848. /**
  849. * @desc : 진단용어 코드 조회
  850. * @ : 진단명으로 검색
  851. * @param :
  852. * @return :
  853. * @author : 오지훈
  854. * @---------------------------------------------------
  855. */
  856. function fReqGetDiagTermAsNm(diagnm){
  857. if(diagnm.length < 2){
  858. sysf_messageBox("검색어를 두 글자 이상", "C001");
  859. return;
  860. }
  861. frmf_setParameter("SPMMO00800_cond1", 2);
  862. frmf_setParameter("SPMMO00800_cond2", 4);
  863. frmf_setParameter("SPMMO00800_cond3", utlf_isHangul(diagnm));
  864. frmf_setParameter("SPMMO00800_cond4", utlf_getCurrentDate());
  865. frmf_setParameter("SPMMO00800_cond5", diagnm);
  866. frmf_modal("SPMMO00800", "SPMMO00800", null, null, null, null, null, null, null, null, null, null, "M");
  867. var useyn = frmf_getParameter("SPMMO00800_rtn_useyn");
  868. if(useyn == "Y"){
  869. var rtnparam = frmf_getParameter("SPMMO00800_rtn");
  870. rtnparam = rtnparam.split("▩");
  871. var diaginfo = rtnparam[1];
  872. diaginfo = diaginfo.split("▦");
  873. ds_cnstconf.setColumn(0, "diagcd" , diaginfo[1]);
  874. ds_cnstconf.setColumn(0, "orgdiagcd", diaginfo[9]);
  875. ds_cnstconf.setColumn(0, "diagnm" , diaginfo[2]);
  876. }
  877. }
  878. /**
  879. * @desc : 환자의 최근진단 검색
  880. * : 환자진단정보의 가장 최근 진단 검색
  881. * : 기준일은 현재로 설정
  882. * @param :
  883. * @return :
  884. * @author : 오지훈
  885. * @---------------------------------------------------
  886. */
  887. function fReqGetPatRectDiag(pid, orddeptcd, ioflag, orddd){
  888. ds_reqTRMMO00114.clearData();
  889. ds_reqTRMMO00114.addRow();
  890. ds_reqTRMMO00114.setColumn(0, "pid" , pid);
  891. ds_reqTRMMO00114.setColumn(0, "orddeptcd" , orddeptcd);
  892. ds_reqTRMMO00114.setColumn(0, "orddd" , orddd);
  893. ds_reqTRMMO00114.setColumn(0, "ioflag" , ioflag);
  894. ds_reqTRMMO00114.setColumn(0, "diagkindcdflag", "M"); //주진단만 처리
  895. var oParam = {};
  896. oParam.id = "TRMMO00114";
  897. oParam.service = "prcpmngtapp.PatDiagMngt";
  898. oParam.method = "reqGetPatCurrentDiag";
  899. oParam.inds = "req=" + "ds_reqTRMMO00114";
  900. oParam.outds = "ds_diagcdlist=diagcdlist" + " ds_opcdlist=opcdlist";
  901. oParam.async = false;
  902. oParam.callback = "cf_TRMMO00114";
  903. tranf_submit(oParam);
  904. }
  905. function cf_TRMMO00114(sSvcId, nErrorCode, sErrorMsg) {
  906. if(nErrorCode < 0) return;
  907. if(ds_diagcdlist.rowcount > 0){
  908. var diagcd = ds_diagcdlist.getColumn(0, "icd10cd");
  909. var orgdiagcd = ds_diagcdlist.getColumn(0, "diagcd");
  910. var diagnm = ds_diagcdlist.getColumn(0, "diagengnm");
  911. ds_cnstconf.setColumn(0, "diagcd" , diagcd);
  912. ds_cnstconf.setColumn(0, "orgdiagcd", orgdiagcd);
  913. ds_cnstconf.setColumn(0, "diagnm" , diagnm);
  914. }
  915. }
  916. /**
  917. * @desc : 최근 버튼 클릭시 이후 협진회의록을 보여줌
  918. * @
  919. * @param :
  920. * @return :
  921. * @author : 김영학
  922. * @---------------------------------------------------
  923. */
  924. function fGetLastCnstConfRecInfo() {
  925. btn_prev.visible = true;
  926. btn_next.visible = true;
  927. btn_save.enable = false;
  928. ipt_pid.enable = false;
  929. ipt_hngnm.enable = false;
  930. ipt_sa.enable = false;
  931. input3.enable = false;
  932. cmb_cnstorddeptcd.enable = false;
  933. //cmb_cnstorddrid.enable = false;
  934. ipt_diagcd.enable = false;
  935. ipt_diagnm.enable = false;
  936. input4.enable = false;
  937. input5.enable = false;
  938. input7.enable = false;
  939. input8.enable = false;
  940. radio1.enable = false;
  941. radio2.enable = false;
  942. ipt_titl.enable = false;
  943. ipt_confdd.enable = false;
  944. ipt_conftm.enable = false;
  945. ipt_confplce.enable = false;
  946. input1.enable = false;
  947. output1.enable = false;
  948. group1.enable = false;
  949. group2.enable = false;
  950. ipt_confcnts.readonly = true;
  951. ipt_rsltcnts.readonly = true;
  952. var pid = opener.frmf_getParameter("SPMMO04100_pid");
  953. ds_reqdata.setColumn(0, "pid", pid);
  954. var oParam = {};
  955. oParam.id = "TRMMO04112";
  956. oParam.service = "prcpmngtapp.ConcPatMngt";
  957. oParam.method = "reqGetCnstStageInfo";
  958. oParam.inds = "req=" + "ds_reqdata";
  959. oParam.outds = "ds_cnststageinfo=cnststageinfo";
  960. oParam.async = false;
  961. tranf_submit(oParam);
  962. ds_cnstconf.copyData(ds_cnstconfinfo);
  963. ds_cnstconfinfo.clearData();
  964. var smokyn = ds_cnstconf.getColumn(0, "smokyn");
  965. if (smokyn =="1") {
  966. ds_cnstconf.addColumn("smokday1", "string");
  967. ds_cnstconf.setColumn(0, "smokday1", ds_cnstconf.getColumn(0, "smokday"));
  968. ds_cnstconf.addColumn("smokyear1", "string");
  969. ds_cnstconf.setColumn(0, "smokyear1", ds_cnstconf.getColumn(0, "smokyear"));
  970. ds_cnstconf.addColumn("smokhist1", "string");
  971. ds_cnstconf.setColumn(0, "smokhist1", ds_cnstconf.getColumn(0, "smokhist"));
  972. } else if (smokyn =="2") {
  973. ds_cnstconf.addColumn("smokday2", "string");
  974. ds_cnstconf.setColumn(0, "smokday2", ds_cnstconf.getColumn(0, "smokday"));
  975. ds_cnstconf.addColumn("smokyear2", "string");
  976. ds_cnstconf.setColumn(0, "smokyear2", ds_cnstconf.getColumn(0, "smokyear"));
  977. ds_cnstconf.addColumn("smokhist2", "string");
  978. ds_cnstconf.setColumn(0, "smokhist2", ds_cnstconf.getColumn(0, "smokhist"));
  979. }
  980. }
  981. /**
  982. * @desc : 최근 Stage를 조회하여 값을 보여줌
  983. * @
  984. * @param :
  985. * @return :
  986. * @author : 김영학
  987. * @---------------------------------------------------
  988. */
  989. function fGetLastStageInfo() {
  990. ds_reqdata.setColumn(0, "pid", ds_cnstconf.getColumn(0, "pid"));
  991. var oParam = {};
  992. oParam.id = "TRMMO04113";
  993. oParam.service = "prcpmngtapp.ConcPatMngt";
  994. oParam.method = "reqGetCnstStageInfo";
  995. oParam.inds = "req=" + "ds_reqdata";
  996. oParam.outds = "ds_cnststageinfo=cnststageinfo";
  997. oParam.async = false;
  998. oParam.callback = "cf_TRMMO04113";
  999. tranf_submit(oParam);
  1000. }
  1001. function cf_TRMMO04113(sSvcId, nErrorCode, sErrorMsg) {
  1002. if(nErrorCode < 0) return;
  1003. if(ds_cnststageinfo.rowcount > 0){
  1004. /*
  1005. var pid = model.getValue(sSTAGECDLIST_PATH + "/pid");
  1006. var hngnm = model.getValue(sSTAGECDLIST_PATH + "/hngnm");
  1007. var sa = model.getValue(sSTAGECDLIST_PATH + "/sa");
  1008. var roomcd = model.getValue(sSTAGECDLIST_PATH + "/roomcd");
  1009. var orddrid = model.getValue(sSTAGECDLIST_PATH + "/orddrid");
  1010. var orddrnm = model.getValue(sSTAGECDLIST_PATH + "/orddrnm");
  1011. */
  1012. var stagecd = ds_cnststageinfo.getColumn(0, "stagecd");
  1013. var tnmcd1 = ds_cnststageinfo.getColumn(0, "tnmcd1");
  1014. var tnmcd2 = ds_cnststageinfo.getColumn(0, "tnmcd2");
  1015. var tnmcd3 = ds_cnststageinfo.getColumn(0, "tnmcd3");
  1016. /*
  1017. model.setValue(sCNSTCONF_PATH + "/pid" , pid);
  1018. model.setValue(sCNSTCONF_PATH + "/hngnm" , hngnm);
  1019. model.setValue(sCNSTCONF_PATH + "/sa" , sa);
  1020. model.setValue(sCNSTCONF_PATH + "/roomcd" , roomcd);
  1021. model.setValue(sCNSTCONF_PATH + "/orddrid" , orddrid);
  1022. model.setValue(sCNSTCONF_PATH + "/orddrnm" , orddrnm);
  1023. */
  1024. ds_cnstconf.setColumn(0, "stagecd" , stagecd);
  1025. ds_cnstconf.setColumn(0, "tnmcd1" , tnmcd1);
  1026. ds_cnstconf.setColumn(0, "tnmcd2" , tnmcd2);
  1027. ds_cnstconf.setColumn(0, "tnmcd3" , tnmcd3);
  1028. }
  1029. }
  1030. ]]></Script>
  1031. </Form>
  1032. </FDL>