SPMMO11500_중증환자등록신청서.xfdl 43 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPMMO11500" position="absolute 0 0 357 450" titletext="중증진료등록신청서" onload="SPMMO11500_onload">
  5. <Layouts>
  6. <Layout>
  7. <Div position="absolute 84 19 224 118" id="group1" enable="false">
  8. <Layouts>
  9. <Layout>
  10. <Edit position="absolute 5 4 135 23" id="ipt_pid" enable="true" anchor="default" readonly="false"/>
  11. <Combo position="absolute 5 54 135 73" id="combo1" enable="false" innerdataset="@ds_orddept" datacolumn="depthngnm" codecolumn="deptcd" anchor="default" readonly="false"/>
  12. <Edit position="absolute 5 79 135 98" id="iopt_diaghngnm" enable="false" anchor="default" readonly="false"/>
  13. <Edit position="absolute 5 29 135 48" id="ipt_hngnm" enable="false" anchor="default" readonly="false"/>
  14. </Layout>
  15. </Layouts>
  16. </Div>
  17. <Shape position="absolute 0 16 353 22" linetype="horizontal" id="line1" class="line_1" style="strokepen:3 solid #9ebed4ff;"/>
  18. <Static text="중증진료 등록 신청서" position="absolute 0 0 152 16" align="align:center middle;" id="caption14" class="tit_2"/>
  19. <Static text="등록번호" position="absolute 1 21 86 44" align="align:center middle;" id="caption26" class="cell_1" style="padding:0 0 0 5;"/>
  20. <Static text="진료과" position="absolute 1 71 86 94" align="align:center middle;" id="caption1" class="cell_1" style="padding:0 0 0 5;"/>
  21. <Static text="진단" position="absolute 1 96 86 119" align="align:center middle;" id="caption2" class="cell_1" style="padding:0 0 0 5;"/>
  22. <Static text="암진단확인일" position="absolute 1 145 86 168" align="align:center middle;" id="caption3" class="cell_1" style="padding:0 0 0 5;"/>
  23. <Static text="최종 진단 방법 (※ 중복 체크 가능)" position="absolute 0 199 236 215" align="align:center middle;" id="caption4" class="tit_2"/>
  24. <Shape position="absolute 0 215 353 221" linetype="horizontal" id="line2" class="line_1" style="strokepen:3 solid #9ebed4ff;"/>
  25. <Static text="① 검사" position="absolute 4 227 54 242" id="caption6"/>
  26. <Static text="②" position="absolute 4 270 19 285" id="caption7"/>
  27. <Static text="③" position="absolute 4 292 19 307" id="caption8"/>
  28. <Static text="④" position="absolute 4 314 19 329" id="caption9"/>
  29. <Static text="⑤" position="absolute 4 336 19 351" id="caption10"/>
  30. <Static text="⑥" position="absolute 4 361 19 376" id="caption11"/>
  31. <Static text="⑦" position="absolute 4 385 19 400" id="caption12"/>
  32. <Button position="absolute 235 428 291 450" id="btn_save" class="btn4" text="저장" onclick="btn_save_onclick"/>
  33. <Button position="absolute 295 428 351 450" id="btn_exit" class="btn4" text="종료" onclick="btn_exit_onclick"/>
  34. <Static text="환자명" position="absolute 1 46 86 69" align="align:center middle;" id="caption13" class="cell_1" style="padding:0 0 0 5;"/>
  35. <CheckBox position="absolute 60 224 120 239" id="bool_sono" text="SONO" onclick="bool_sono_onclick"/>
  36. <CheckBox position="absolute 135 224 179 239" id="bool_ct" text="CT" onclick="bool_ct_onclick"/>
  37. <CheckBox position="absolute 210 224 254 239" id="bool_mri" text="MRI" onclick="bool_mri_onclick"/>
  38. <CheckBox position="absolute 60 245 104 260" id="bool_etc" text="기타" onclick="bool_etc_onclick"/>
  39. <CheckBox position="absolute 25 313 229 328" id="bool_item4" text="세포학적 또는 혈액학적 검사" onclick="bool_item4_onclick"/>
  40. <CheckBox position="absolute 25 291 229 306" id="bool_item3" text="특수 생화학적 또는 면역학적 검사" onclick="bool_item3_onclick"/>
  41. <CheckBox position="absolute 25 269 229 284" id="bool_item2" text="조직검사 없는 진단적 수술" onclick="bool_item2_onclick"/>
  42. <CheckBox position="absolute 25 335 229 350" id="bool_item5" text="전이부위의 조직학적 검사" onclick="bool_item5_onclick"/>
  43. <CheckBox position="absolute 25 360 229 375" id="bool_item6" text="원발부위의 조직학적 생검" onclick="bool_item6_onclick"/>
  44. <CheckBox position="absolute 25 384 75 399" id="bool_item7" text="기타" onclick="bool_item7_onclick"/>
  45. <Edit position="absolute 109 243 350 262" id="ipt_etc1" enable="false" onkillfocus="ipt_etc1_onkillfocus"/>
  46. <Edit position="absolute 75 382 350 401" id="ipt_etc2" enable="false" onkillfocus="ipt_etc2_onkillfocus"/>
  47. <CheckBox position="absolute 239 150 344 165" id="bool_anohosprgstflag" visible="false" text="타병원등록여부"/>
  48. <Static position="absolute 225 22 353 67" align="align:center middle;" id="cap_insukindnm" class="cell_1" style="padding:0 0 0 0;align:center middle;font:Dotum,11,bold;"/>
  49. <Calendar position="absolute 90 147 220 166" id="ipt_diagcnfmdate" class="input_s_essential" mask="yyyy-mm-dd"/>
  50. <Button position="absolute 175 428 231 450" id="btn_del" class="btn4" text="삭제" onclick="btn_del_onclick"/>
  51. <Button position="absolute 115 428 171 450" id="btn_upt" class="btn4" text="수정" onclick="btn_upt_onclick"/>
  52. <Static text="외래/입원구분" position="absolute 0 170 86 193" align="align:center middle;" id="caption5" class="cell_1" style="padding:0 0 0 5;"/>
  53. <Combo position="absolute 90 172 220 191" id="combo2" codecolumn="codecolumn" datacolumn="datacolumn">
  54. <Dataset id="innerdataset">
  55. <ColumnInfo>
  56. <Column id="codecolumn"/>
  57. <Column id="datacolumn"/>
  58. </ColumnInfo>
  59. <Rows>
  60. <Row>
  61. <Col id="codecolumn">O</Col>
  62. <Col id="datacolumn">외래</Col>
  63. </Row>
  64. <Row>
  65. <Col id="codecolumn">I</Col>
  66. <Col id="datacolumn">입원</Col>
  67. </Row>
  68. </Rows>
  69. </Dataset>
  70. </Combo>
  71. <Button position="absolute 5 428 85 450" id="button1" class="btn4" text="예외환자" onclick="button1_onclick"/>
  72. <Static id="caption00" text="등록구분" class="cell_1" position="absolute 1 121 86 144" style="padding:0 0 0 5;"/>
  73. <Radio id="rdo_reggubun" taborder="1" columncount="-1" rowcount="-1" codecolumn="codecolumn" datacolumn="datacolumn" onitemchanged="Div00_rdo_patflag_onitemchanged" position="absolute 88 117 354 147" style="textpadding:1 5 0 4;padding:1 0 0 0;">
  74. <Dataset id="innerdataset">
  75. <ColumnInfo>
  76. <Column id="codecolumn" size="256"/>
  77. <Column id="datacolumn" size="256"/>
  78. </ColumnInfo>
  79. <Rows>
  80. <Row>
  81. <Col id="codecolumn">1</Col>
  82. <Col id="datacolumn">신규</Col>
  83. </Row>
  84. <Row>
  85. <Col id="codecolumn">2</Col>
  86. <Col id="datacolumn">재등록</Col>
  87. </Row>
  88. <Row>
  89. <Col id="codecolumn">3</Col>
  90. <Col id="datacolumn">중복암</Col>
  91. </Row>
  92. <Row>
  93. <Col id="codecolumn">4</Col>
  94. <Col id="datacolumn">중복암재등록</Col>
  95. </Row>
  96. </Rows>
  97. </Dataset>
  98. </Radio>
  99. <Button id="Button03" taborder="2" class="icon_search2" position="absolute 216 99 244 119" onclick="Button03_onclick"/>
  100. <Static id="caption18" text="( 최소 : 한글 5자, 영어 10자, 최대 : 한글 40자, 영어 80자 )" position="absolute 37 408 355 423" style="font:Dotum,9,underline;"/>
  101. </Layout>
  102. </Layouts>
  103. <Objects>
  104. <Dataset id="ds_serdiagappinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  105. <ColumnInfo>
  106. <Column id="status" type="STRING" size="256"/>
  107. <Column id="genrdd" type="STRING" size="256"/>
  108. <Column id="genrno" type="STRING" size="256"/>
  109. <Column id="histno" type="STRING" size="256"/>
  110. <Column id="instcd" type="STRING" size="256"/>
  111. <Column id="histcd" type="STRING" size="256"/>
  112. <Column id="pid" type="STRING" size="256"/>
  113. <Column id="anohosprgstflag" type="STRING" size="256"/>
  114. <Column id="genrflagcd" type="STRING" size="256"/>
  115. <Column id="insukind" type="STRING" size="256"/>
  116. <Column id="cncrdiagcnfmdd" type="STRING" size="256"/>
  117. <Column id="orddeptcd" type="STRING" size="256"/>
  118. <Column id="orddrid" type="STRING" size="256"/>
  119. <Column id="serdiagno" type="STRING" size="256"/>
  120. <Column id="serdiagfromdd" type="STRING" size="256"/>
  121. <Column id="serdiagtodd" type="STRING" size="256"/>
  122. <Column id="genrorddd" type="STRING" size="256"/>
  123. <Column id="genrcretno" type="STRING" size="256"/>
  124. <Column id="maindiagcd" type="STRING" size="256"/>
  125. <Column id="ediflag" type="STRING" size="256"/>
  126. <Column id="editretdd" type="STRING" size="256"/>
  127. <Column id="editrettm" type="STRING" size="256"/>
  128. <Column id="pathngnm" type="STRING" size="256"/>
  129. <Column id="ioflag" type="STRING" size="256"/>
  130. <Column id="reggubun" type="STRING" size="256"/>
  131. </ColumnInfo>
  132. <Rows>
  133. <Row/>
  134. </Rows>
  135. </Dataset>
  136. <Dataset id="ds_items" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  137. <ColumnInfo>
  138. <Column id="item1" type="STRING" size="256"/>
  139. <Column id="item2" type="STRING" size="256"/>
  140. <Column id="item3" type="STRING" size="256"/>
  141. <Column id="item4" type="STRING" size="256"/>
  142. <Column id="item5" type="STRING" size="256"/>
  143. <Column id="item6" type="STRING" size="256"/>
  144. <Column id="item7" type="STRING" size="256"/>
  145. <Column id="item8" type="STRING" size="256"/>
  146. <Column id="item9" type="STRING" size="256"/>
  147. <Column id="item10" type="STRING" size="256"/>
  148. <Column id="item11" type="STRING" size="256"/>
  149. <Column id="item12" type="STRING" size="256"/>
  150. <Column id="item13" type="STRING" size="256"/>
  151. <Column id="genrdd" type="STRING" size="256"/>
  152. <Column id="genrno" type="STRING" size="256"/>
  153. <Column id="histno" type="STRING" size="256"/>
  154. <Column id="chkflag" type="STRING" size="256"/>
  155. <Column id="cdid" type="STRING" size="256"/>
  156. <Column id="cdnm" type="STRING" size="256"/>
  157. <Column id="diagetccnts" type="STRING" size="256"/>
  158. <Column id="diagmthdcd" type="STRING" size="256"/>
  159. </ColumnInfo>
  160. <Rows>
  161. <Row/>
  162. </Rows>
  163. </Dataset>
  164. <Dataset id="ds_orddept" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  165. <ColumnInfo>
  166. <Column id="deptcd" type="STRING" size="256"/>
  167. <Column id="depthngnm" type="STRING" size="256"/>
  168. </ColumnInfo>
  169. </Dataset>
  170. <Dataset id="ds_rslt_serdiagno" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  171. <Dataset id="ds_serdiagitem" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  172. <ColumnInfo>
  173. <Column id="diagmthdcd" type="STRING" size="256"/>
  174. <Column id="diagetccnts" type="STRING" size="256"/>
  175. </ColumnInfo>
  176. <Rows>
  177. <Row>
  178. <Col id="diagmthdcd"/>
  179. <Col id="diagetccnts"/>
  180. </Row>
  181. </Rows>
  182. </Dataset>
  183. <Dataset id="ds_serdiagappdetl" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  184. <ColumnInfo>
  185. <Column id="diagmthdcd" type="STRING" size="256"/>
  186. <Column id="diagetccnts" type="STRING" size="256"/>
  187. </ColumnInfo>
  188. </Dataset>
  189. <Dataset id="ds_rslt_serdiagappinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  190. <Dataset id="ds_hardcdno_5400" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  191. <Dataset id="ds_save_serdiagappinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  192. <Dataset id="ds_rslt_serdiagyn" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  193. <Dataset id="ds_save_serdiagappdetl" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  194. <Dataset id="ds_reqdata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  195. <Dataset id="ds_serdiagpatinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  196. <Dataset id="ds_main_cond" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  197. <ColumnInfo>
  198. <Column id="genrdd" type="STRING" size="256"/>
  199. <Column id="genrno" type="STRING" size="256"/>
  200. <Column id="histno" type="STRING" size="256"/>
  201. <Column id="pid" type="STRING" size="256"/>
  202. <Column id="genrflagcd" type="STRING" size="256"/>
  203. <Column id="genrorddd" type="STRING" size="256"/>
  204. <Column id="genrcretno" type="STRING" size="256"/>
  205. </ColumnInfo>
  206. <Rows>
  207. <Row/>
  208. </Rows>
  209. </Dataset>
  210. </Objects>
  211. <Bind>
  212. <BindItem id="item0" compid="group1.ipt_pid" propid="value" datasetid="ds_serdiagappinfo" columnid="pid"/>
  213. <BindItem id="item1" compid="group1.ipt_hngnm" propid="value" datasetid="ds_serdiagappinfo" columnid="pathngnm"/>
  214. <BindItem id="item2" compid="group1.combo1" propid="value" datasetid="ds_serdiagappinfo" columnid="orddeptcd"/>
  215. <BindItem id="item3" compid="group1.iopt_diaghngnm" propid="value" datasetid="ds_serdiagappinfo" columnid="maindiagcd"/>
  216. <BindItem id="item4" compid="ipt_diagcnfmdate" propid="value" datasetid="ds_serdiagappinfo" columnid="cncrdiagcnfmdd"/>
  217. <BindItem id="item5" compid="combo2" propid="value" datasetid="ds_serdiagappinfo" columnid="genrflagcd"/>
  218. <BindItem id="item6" compid="bool_anohosprgstflag" propid="value" datasetid="ds_items" columnid="item1"/>
  219. <BindItem id="item7" compid="bool_sono" propid="value" datasetid="ds_items" columnid="item2"/>
  220. <BindItem id="item8" compid="bool_ct" propid="value" datasetid="ds_items" columnid="item3"/>
  221. <BindItem id="item9" compid="bool_mri" propid="value" datasetid="ds_items" columnid="item4"/>
  222. <BindItem id="item10" compid="bool_etc" propid="value" datasetid="ds_items" columnid="item5"/>
  223. <BindItem id="item11" compid="bool_item2" propid="value" datasetid="ds_items" columnid="item6"/>
  224. <BindItem id="item12" compid="bool_item3" propid="value" datasetid="ds_items" columnid="item7"/>
  225. <BindItem id="item13" compid="bool_item4" propid="value" datasetid="ds_items" columnid="item8"/>
  226. <BindItem id="item14" compid="bool_item5" propid="value" datasetid="ds_items" columnid="item9"/>
  227. <BindItem id="item15" compid="bool_item6" propid="value" datasetid="ds_items" columnid="item10"/>
  228. <BindItem id="item16" compid="bool_item7" propid="value" datasetid="ds_items" columnid="item11"/>
  229. <BindItem id="item18" compid="ipt_etc2" propid="value" datasetid="ds_items" columnid="item13"/>
  230. <BindItem id="item17" compid="ipt_etc1" propid="value" datasetid="ds_items" columnid="item12"/>
  231. <BindItem id="item19" compid="rdo_reggubun" propid="value" datasetid="ds_serdiagappinfo" columnid="reggubun"/>
  232. </Bind>
  233. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  234. * System Name :
  235. * Job Name :
  236. * Creator :
  237. * Make Date : 2014-11-18
  238. * Description :
  239. *---------------------------------------------------------------------------------------
  240. * Modify Date Modifier Modify Description
  241. *---------------------------------------------------------------------------------------
  242. * 2014-11-18 Live Converter TF->XP
  243. *
  244. *---------------------------------------------------------------------------------------
  245. ****************************************************************************************/
  246. //=======================================================================================
  247. // Lib Include
  248. //---------------------------------------------------------------------------------------
  249. include "com_commonxp::comm_main.xjs";
  250. include "emr_medirecxp::MMRCommon.xjs";
  251. include "emr_prcpmngtxp::MMOCommon.xjs";
  252. var arErrorCode = new HashArray();
  253. //=======================================================================================
  254. // Event
  255. //---------------------------------------------------------------------------------------
  256. /****************************************************************************************
  257. * Components : Form
  258. * Components ID : SPMMO11500
  259. * Event : onload
  260. * Argument : 01.obj : Object Event has occurred
  261. * : 02.e : Event Object
  262. * Description : 화면오픈시 폼load이후 실행
  263. ****************************************************************************************/
  264. function SPMMO11500_onload(obj:Form, e:LoadEventInfo)
  265. {
  266. frmf_initForm(obj); // 폼 초기화
  267. lf_mmbfGetDeptCodeComboList(ds_orddept, "A");
  268. var sGenrDd = opener.frmf_getParameter("SPMMO11500_genrdd");
  269. var sGenrNo = opener.frmf_getParameter("SPMMO11500_genrno");
  270. var sHistNo = opener.frmf_getParameter("SPMMO11500_histno");
  271. var sPid = appf_getPatientInfo("pid");
  272. if(utlf_isNull(sGenrDd) && utlf_isNull(sPid)){
  273. btn_save.visible = false; //저장
  274. btn_del.visible = false; //삭제
  275. btn_upt.visible = false; //수정
  276. sysf_messageBox("환자정보를 확인", "E001");
  277. return;
  278. }
  279. var sIoFlag = appf_getPatientInfoDetail("ioflag");
  280. var sCretNo = appf_getPatientInfoDetail("cretno");
  281. var sOrdDd = "";
  282. if (sIoFlag == "O" || sIoFlag == "S") {
  283. sIoFlag = "O";
  284. sOrdDd = appf_getPatientInfoDetail("orddd");
  285. } else {
  286. sIoFlag = "I";
  287. sOrdDd = appf_getPatientInfoDetail("indd");
  288. }
  289. ds_main_cond.setColumn(0,"genrdd", sGenrDd);
  290. ds_main_cond.setColumn(0,"genrno", sGenrNo);
  291. ds_main_cond.setColumn(0,"histno", sHistNo);
  292. ds_main_cond.setColumn(0,"pid", sPid);
  293. ds_main_cond.setColumn(0,"genrflagcd", sIoFlag);
  294. ds_main_cond.setColumn(0,"genrorddd", sOrdDd);
  295. ds_main_cond.setColumn(0,"genrcretno", sCretNo);
  296. var oParam = {};
  297. oParam.id = "TRMMO11507";
  298. oParam.service = "prcpmngtapp.EtcPrcpMngt";
  299. oParam.method = "reqGetSerDiagRegInfo1";
  300. oParam.inds = "req=ds_main_cond";
  301. oParam.outds = "ds_serdiagappinfo=serdiagappinfo";
  302. oParam.async = false;
  303. tranf_submit(oParam);
  304. cap_insukindnm.text = ds_serdiagappinfo.getColumn(0,"insukindnm");
  305. if(!utlf_isNull(ds_serdiagappinfo.getColumn(0,"genrno"))){ // 기존에 작성 되고 특례번호가 발행되지 않은경우
  306. sysf_messageBox("중증등록신청서가 이미 존재합니다.", "I999");
  307. lf_bComponents(false);
  308. var oParam = {};
  309. oParam.id = "TRMMO11503";
  310. oParam.service = "prcpmngtapp.EtcPrcpMngt";
  311. oParam.method = "reqGetSerDiagDetlList";
  312. oParam.inds = "req=ds_serdiagappinfo";
  313. oParam.outds = "ds_items=items";
  314. oParam.async = false;
  315. oParam.callback = "cf_TRMMO11503";
  316. tranf_submit(oParam);
  317. lf_bComponents(true);
  318. var chk;
  319. for( i = 1 ; i <= 13 ; i++) {
  320. chk = ds_items.getColumn(0,"item"+i);
  321. if(chk == true) {
  322. if (i > 10) {
  323. ds_serdiagitem.setColumn(0,"diagmthdcd",i-1);
  324. } else {
  325. ds_serdiagitem.setColumn(0,"diagmthdcd","0"+(i-1));
  326. }
  327. if (i == 5) {
  328. ipt_etc1.enable = true;
  329. ds_serdiagitem.setColumn(0,"diagetccnts",ipt_etc1.value);
  330. } else if ( i == 11) {
  331. ipt_etc2.enable = true;
  332. ds_serdiagitem.setColumn(0,"diagetccnts",ipt_etc2.value);
  333. } else {
  334. ds_serdiagitem.setColumn(0,"diagetccnts","");
  335. }
  336. dsf_copyDs(ds_serdiagappdetl,ds_serdiagitem,"after");
  337. }
  338. }
  339. Button03.visible = false; //진단검색
  340. btn_save.visible = false; //저장
  341. btn_del.visible = true; //삭제
  342. btn_upt.visible = true; //수정
  343. } else { // 신규작성
  344. ds_serdiagappinfo.setColumn(0,"status","I");
  345. lf_getHardCDList("N", 5400, null, ds_hardcdno_5400);
  346. if (ds_serdiagappinfo.getColumn(0,"anohosprgstflag") == "Y") {
  347. bool_anohosprgstflag.value = true;
  348. }
  349. btn_del.visible = false; //삭제
  350. btn_upt.visible = false; //수정
  351. }
  352. }
  353. /****************************************************************************************
  354. * Components : CheckBox
  355. * Components ID : bool_sono
  356. * Event : onchanged
  357. * Argument : 01.obj : Object Event has occurred
  358. * : 02.e : Event Object
  359. * Description : 검사 항목 SONO 체크
  360. ****************************************************************************************/
  361. function bool_sono_onclick(obj:CheckBox, e:ClickEventInfo)
  362. {
  363. fSetSerDiagItem(bool_sono.value,"01", "");
  364. }
  365. /****************************************************************************************
  366. * Components : CheckBox
  367. * Components ID : bool_ct
  368. * Event : onchanged
  369. * Argument : 01.obj : Object Event has occurred
  370. * : 02.e : Event Object
  371. * Description : 검사 항목 CT 체크
  372. ****************************************************************************************/
  373. function bool_ct_onclick(obj:CheckBox, e:ClickEventInfo)
  374. {
  375. fSetSerDiagItem(bool_ct.value,"02", "");
  376. }
  377. /****************************************************************************************
  378. * Components : CheckBox
  379. * Components ID : bool_mri
  380. * Event : onchanged
  381. * Argument : 01.obj : Object Event has occurred
  382. * : 02.e : Event Object
  383. * Description : 검사 항목 MRI 체크
  384. ****************************************************************************************/
  385. function bool_mri_onclick(obj:CheckBox, e:ClickEventInfo)
  386. {
  387. fSetSerDiagItem(bool_mri.value,"03", "");
  388. }
  389. /****************************************************************************************
  390. * Components : CheckBox
  391. * Components ID : bool_etc
  392. * Event : onchanged
  393. * Argument : 01.obj : Object Event has occurred
  394. * : 02.e : Event Object
  395. * Description : 검사 항목 기타 체크
  396. ****************************************************************************************/
  397. function bool_etc_onclick(obj:CheckBox, e:ClickEventInfo)
  398. {
  399. if(obj.value == true) {
  400. ipt_etc1.enable = true;
  401. if(utlf_isNull(ipt_etc1.value)) {
  402. sysf_messageBox("기타항목을 선택하였으므로 해당 내용을","C001");
  403. return;
  404. }
  405. } else {
  406. // model.removenode("/root/main/serdiagappdetl/row[diagmthdcd='"+ "04" +"']");
  407. ds_serdiagappdetl.deleteRow(ds_serdiagappdetl.findRow("diagmthdcd","04"));
  408. ds_items.setColumn(0,"item12","");
  409. ipt_etc1.enable = false;
  410. }
  411. }
  412. /****************************************************************************************
  413. * Components : CheckBox
  414. * Components ID : bool_item2
  415. * Event : onchanged
  416. * Argument : 01.obj : Object Event has occurred
  417. * : 02.e : Event Object
  418. * Description : 2번항목 체크
  419. ****************************************************************************************/
  420. function bool_item2_onclick(obj:CheckBox, e:ClickEventInfo)
  421. {
  422. fSetSerDiagItem(bool_item2.value, "05", "");
  423. }
  424. /****************************************************************************************
  425. * Components : CheckBox
  426. * Components ID : bool_item3
  427. * Event : onchanged
  428. * Argument : 01.obj : Object Event has occurred
  429. * : 02.e : Event Object
  430. * Description : 3번항목 체크
  431. ****************************************************************************************/
  432. function bool_item3_onclick(obj:CheckBox, e:ClickEventInfo)
  433. {
  434. fSetSerDiagItem(bool_item3.value, "06", "");
  435. }
  436. /****************************************************************************************
  437. * Components : CheckBox
  438. * Components ID : bool_item4
  439. * Event : onchanged
  440. * Argument : 01.obj : Object Event has occurred
  441. * : 02.e : Event Object
  442. * Description : 4번항목 체크
  443. ****************************************************************************************/
  444. function bool_item4_onclick(obj:CheckBox, e:ClickEventInfo)
  445. {
  446. fSetSerDiagItem(bool_item4.value, "07", "");
  447. }
  448. /****************************************************************************************
  449. * Components : CheckBox
  450. * Components ID : bool_item5
  451. * Event : onchanged
  452. * Argument : 01.obj : Object Event has occurred
  453. * : 02.e : Event Object
  454. * Description : 5번항목 체크
  455. ****************************************************************************************/
  456. function bool_item5_onclick(obj:CheckBox, e:ClickEventInfo)
  457. {
  458. fSetSerDiagItem(bool_item5.value, "08", "");
  459. }
  460. /****************************************************************************************
  461. * Components : CheckBox
  462. * Components ID : bool_item6
  463. * Event : onchanged
  464. * Argument : 01.obj : Object Event has occurred
  465. * : 02.e : Event Object
  466. * Description : 6번항목 체크
  467. ****************************************************************************************/
  468. function bool_item6_onclick(obj:CheckBox, e:ClickEventInfo)
  469. {
  470. fSetSerDiagItem(bool_item6.value, "09", "");
  471. }
  472. /****************************************************************************************
  473. * Components : CheckBox
  474. * Components ID : bool_item7
  475. * Event : onchanged
  476. * Argument : 01.obj : Object Event has occurred
  477. * : 02.e : Event Object
  478. * Description : 7번항목 체크
  479. ****************************************************************************************/
  480. function bool_item7_onclick(obj:CheckBox, e:ClickEventInfo)
  481. {
  482. if(obj.value == true) {
  483. ipt_etc2.enable = true;
  484. if(utlf_isNull(ipt_etc2.value)) {
  485. sysf_messageBox("기타항목을 선택하였으므로 해당 내용을","C001");
  486. return;
  487. }
  488. } else {
  489. // model.removenode("/root/main/serdiagappdetl/row[diagmthdcd='"+ "10" +"']");
  490. ds_serdiagappdetl.deleteRow(ds_serdiagappdetl.findRow("diagmthdcd","10"));
  491. ds_items.setColumn(0,"item13","");
  492. ipt_etc2.enable = false;
  493. }
  494. }
  495. /****************************************************************************************
  496. * Components : Button
  497. * Components ID : button1
  498. * Event : onclick
  499. * Argument : 01.obj : Object Event has occurred
  500. * : 02.e : Event Object
  501. * Description : 예외환자 버튼 클릭
  502. ****************************************************************************************/
  503. function button1_onclick(obj:Button, e:ClickEventInfo)
  504. {
  505. // modal("SPMMO09500");
  506. frmf_modal("SPMMO09500", "SPMMO09500", "", "", "", "", "", "", "", "", "", "", "M");
  507. }
  508. /****************************************************************************************
  509. * Components : Button
  510. * Components ID : btn_upt
  511. * Event : onclick
  512. * Argument : 01.obj : Object Event has occurred
  513. * : 02.e : Event Object
  514. * Description : 수정 버튼 클릭
  515. ****************************************************************************************/
  516. function btn_upt_onclick(obj:Button, e:ClickEventInfo)
  517. {
  518. if(ds_serdiagappdetl.rowcount == 1) {
  519. sysf_messageBox("최종진단방법은 1개 이상", "C002");
  520. return;
  521. }
  522. // copyNodeListType("/root/send/savedata", "/root/main/serdiagappinfo", "replace");
  523. // copyNodeListType("/root/send/savedata", "/root/main/serdiagappdetl", "after");
  524. dsf_copyDs(ds_save_serdiagappinfo,ds_serdiagappinfo,"replace");
  525. dsf_copyDs(ds_save_serdiagappdetl,ds_serdiagappdetl,"after");
  526. if((ds_serdiagappinfo.getColumn(0,"orddeptcd") == sysf_getUserInfo("dutplcecd")) && (sysf_getUserInfo("jobkindcd") == "0330") && (sysf_getUserInfo("jobposcd") != "1799")){ // 0330 : 의사, 1799 : 인턴
  527. // submit("TRMMO11502");
  528. var oParam = {};
  529. oParam.id = "TRMMO11502";
  530. oParam.service = "prcpmngtapp.EtcPrcpMngt";
  531. oParam.method = "reqGetSerdiagDelYN";
  532. oParam.inds = "serdiagappinfo=ds_serdiagappinfo";
  533. oParam.outds = "ds_rslt_serdiagyn=serdiagyn";
  534. oParam.async = false;
  535. oParam.callback = "";
  536. tranf_submit(oParam);
  537. if((ds_rslt_serdiagyn.getColumn(0,"histcd") == "O") && (ds_rslt_serdiagyn.getColumn(0,"prntyn") == "N") && (ds_rslt_serdiagyn.getColumn(0,"serdiagno") == "-")){
  538. var oParam = {};
  539. oParam.id = "TXMMO11503";
  540. oParam.service = "prcpmngtapp.EtcPrcpMngt";
  541. oParam.method = "reqExeSerdiagUpdate";
  542. oParam.inds = "serdiagappinfo=ds_save_serdiagappinfo serdiagappdetl=ds_save_serdiagappdetl";
  543. oParam.outds = "";
  544. oParam.async = false;
  545. oParam.callback = "cf_TXMMO11503";
  546. tranf_submit(oParam);
  547. if(arErrorCode.pop("TXMMO11503") >= 0){
  548. sysf_messageBox("해당환자의 중증등록신청서가 수정","I001");
  549. btn_del.visible = false;
  550. btn_upt.visible = false;
  551. } else {
  552. sysf_messageBox("해당환자의 중증등록신청서 수정을 ","E009");
  553. }
  554. } else {
  555. sysf_messageBox("해당환자의 중증등록신청서를 수정 ","E001");
  556. return;
  557. }
  558. } else {
  559. sysf_messageBox("수정할 수 있는 ","E002");
  560. btn_save.visible = false; //저장
  561. btn_del.visible = false; //삭제
  562. btn_upt.visible = false; //수정
  563. return;
  564. }
  565. }
  566. /****************************************************************************************
  567. * Components : Button
  568. * Components ID : btn_del
  569. * Event : onclick
  570. * Argument : 01.obj : Object Event has occurred
  571. * : 02.e : Event Object
  572. * Description : 삭제 버튼 클릭
  573. ****************************************************************************************/
  574. function btn_del_onclick(obj:Button, e:ClickEventInfo)
  575. {
  576. if((ds_serdiagappinfo.getColumn(0,"orddeptcd") == sysf_getUserInfo("dutplcecd")) && (sysf_getUserInfo("jobkindcd") == "0330") && (sysf_getUserInfo("jobposcd") != "1799")){ // 0330 : 의사
  577. // submit("TRMMO11502");
  578. var oParam = {};
  579. oParam.id = "TRMMO11502";
  580. oParam.service = "prcpmngtapp.EtcPrcpMngt";
  581. oParam.method = "reqGetSerdiagDelYN";
  582. oParam.inds = "serdiagappinfo=ds_serdiagappinfo";
  583. oParam.outds = "ds_rslt_serdiagyn=serdiagyn";
  584. oParam.async = false;
  585. oParam.callback = "";
  586. tranf_submit(oParam);
  587. if((ds_rslt_serdiagyn.getColumn(0,"histcd") == "O") && (ds_rslt_serdiagyn.getColumn(0,"prntyn") == "N") && (ds_rslt_serdiagyn.getColumn(0,"serdiagno") == "-")){
  588. var oParam = {};
  589. oParam.id = "TXMMO11502";
  590. oParam.service = "prcpmngtapp.EtcPrcpMngt";
  591. oParam.method = "reqExeSerdiagDelUpdate";
  592. oParam.inds = "serdiagappinfo=ds_serdiagappinfo";
  593. oParam.outds = "";
  594. oParam.async = false;
  595. oParam.callback = "cf_TXMMO11502";
  596. tranf_submit(oParam);
  597. if(arErrorCode.pop("TXMMO11502") >= 0){
  598. sysf_messageBox("해당환자의 중증등록신청서가 삭제","I001");
  599. btn_del.visible = false;
  600. } else {
  601. sysf_messageBox("해당환자의 중증등록신청서 삭제를 ","E009");
  602. }
  603. }else{
  604. sysf_messageBox("해당환자의 중증등록신청서를 삭제 ","E001");
  605. return;
  606. }
  607. }else{
  608. sysf_messageBox("삭제할 수 있는 ","E002");
  609. btn_save.visible = false; //저장
  610. btn_del.visible = false; //삭제
  611. btn_upt.visible = false; //수정
  612. return;
  613. }
  614. }
  615. /****************************************************************************************
  616. * Components : Button
  617. * Components ID : btn_save
  618. * Event : onclick
  619. * Argument : 01.obj : Object Event has occurred
  620. * : 02.e : Event Object
  621. * Description : 저장 버튼 클릭
  622. ****************************************************************************************/
  623. function btn_save_onclick(obj:Button, e:ClickEventInfo)
  624. {
  625. var cncrdiagcnfmdd = ds_serdiagappinfo.getColumn(0,"cncrdiagcnfmdd");
  626. var reggubun = ds_serdiagappinfo.getColumn(0,"reggubun");
  627. if(!utlf_isValidDateTime(cncrdiagcnfmdd, "YYYYMMDD")) {
  628. sysf_messageBox("암진단 확인일은", "I003");
  629. return;
  630. }
  631. // 허만호, 2015.07.28, 소스 현행화 s
  632. if(cncrdiagcnfmdd > utlf_getCurrentDate() ) {
  633. sysf_messageBox("암진단 확인일을 미래일자로 입력 할 수 없습니다.", "I999");
  634. return;
  635. }
  636. if(reggubun == "3") { // 중복암은 진단일이 당일이면 확인 메세지 팝업
  637. if(cncrdiagcnfmdd == utlf_getCurrentDate() ) {
  638. if( "7" != sysf_messageBox("중복암의 암진단 확인일이 오늘로 입력 되었습니다. 수정하시겠습니까?", "Q999")) {
  639. return;
  640. }
  641. }
  642. } else {// 중복암은 한달이전 진단일도 선택 가능 하도록 처리 2017.07.10 엄영만
  643. if(cncrdiagcnfmdd < ((utlf_getCurrentDate().toDate()).getAddDate(-1,"M")).getDateFormat() ) {
  644. sysf_messageBox("암진단 확인일을 최근 1달이내의 날짜로 입력 하셔야 합니다.", "I999");
  645. return;
  646. }
  647. }
  648. // 허만호, 2015.07.28, 소스 현행화 e
  649. if(ds_serdiagappdetl.rowcount == 0) {
  650. sysf_messageBox("최종진단방법은 1개 이상", "C002");
  651. return;
  652. }
  653. if (bool_etc.value == true) {
  654. var yy1 = utlf_transNullToEmpty(ipt_etc1.value);
  655. //20190121 이돈희 : 양쪽에 공백 제거
  656. yy1 = yy1.trimLeft();
  657. yy1 = yy1.trimRight();
  658. trace(yy1);
  659. var xx1 = 0;
  660. for(i = 0 ; i < yy1.length ; i++) {
  661. (yy1.charCodeAt(i) > 255) ? xx1 += 2 : xx1 += 1;
  662. }
  663. if(utlf_isNull(ipt_etc1.value)) {
  664. sysf_messageBox("1번 기타항목을 선택하였으므로 해당 내용을","C001");
  665. return;
  666. } else if (xx1 < 5 || xx1 > 40) {
  667. sysf_messageBox("1번 기타항목의 내용은 최소 : 한글 3자, 영어 5자 최대 : 한글 20자, 영어 40자 까지 입니다.","I");
  668. return;
  669. }
  670. ds_serdiagappdetl.setColumn(ds_serdiagappdetl.findRow("diagmthdcd","04"),"diagetccnts",ipt_etc1.value);
  671. }
  672. if(bool_item7.value == true) {
  673. var yy2 = utlf_transNullToEmpty(ipt_etc2.value);
  674. //20190121 이돈희 : 양쪽에 공백 제거
  675. yy2 = yy2.trimLeft();
  676. yy2 = yy2.trimRight();
  677. trace(yy2);
  678. var xx2 = 0;
  679. for(i = 0 ; i < yy2.length ; i++) {
  680. (yy2.charCodeAt(i) > 255) ? xx2 += 2 : xx2 += 1;
  681. }
  682. if(utlf_isNull(ipt_etc2.value)) {
  683. sysf_messageBox("7번 기타항목을 선택하였으므로 해당 내용을","C001");
  684. return;
  685. } else if(xx2 < 10 || xx2 > 80) {
  686. sysf_messageBox("7번 기타항목의 내용은 최소 : 한글 5자, 영어 10자 최대 : 한글 40자, 영어 80자 까지 입니다.","I");
  687. return;
  688. }
  689. ds_serdiagappdetl.setColumn(ds_serdiagappdetl.findRow("diagmthdcd","10"), "diagetccnts",ipt_etc2.value);
  690. }
  691. if(bool_anohosprgstflag.value == true) {
  692. ds_serdiagappinfo.setColumn(0,"anohosprgstflag","Y");
  693. } else {
  694. ds_serdiagappinfo.setColumn(0,"anohosprgstflag","N");
  695. }
  696. // copyNodeListType("/root/send/savedata", "/root/main/serdiagappinfo", "replace");
  697. // copyNodeListType("/root/send/savedata", "/root/main/serdiagappdetl", "after");
  698. dsf_copyDs(ds_save_serdiagappinfo,ds_serdiagappinfo,"replace");
  699. dsf_copyDs(ds_save_serdiagappdetl,ds_serdiagappdetl,"after");
  700. var oParam = {};
  701. oParam.id = "TXMMO11501";
  702. oParam.service = "prcpmngtapp.EtcPrcpMngt";
  703. oParam.method = "reqExeSaveSerDiagApp1";
  704. oParam.inds = "serdiagappinfo=ds_save_serdiagappinfo serdiagappdetl=ds_save_serdiagappdetl";
  705. oParam.outds = "";
  706. oParam.async = false;
  707. oParam.callback = "cf_TXMMO11501";
  708. var bRtn = tranf_submit(oParam);
  709. if(bRtn) {
  710. if (arErrorCode.pop("TXMMO11501") > -1) {
  711. var sAutpPrtYn = lf_getHardCDList("Y", 272, 3, null);
  712. if (sAutpPrtYn == "Y") {
  713. ds_reqdata.clearData();
  714. dsf_makeValue(ds_reqdata,"pid","string",ds_serdiagappinfo.getColumn(0,"pid"));
  715. var genrflagcd = ds_serdiagappinfo.getColumn(0,"genrflagcd");
  716. if (genrflagcd == "O" || genrflagcd == "S") {
  717. genrflagcd = "O";
  718. } else {
  719. genrflagcd = "I";
  720. }
  721. dsf_makeValue(ds_reqdata,"genrflagcd","string",genrflagcd);
  722. var oParam = {};
  723. oParam.id = "TRMMO11506";
  724. oParam.service = "prcpmngtapp.EtcPrcpMngt";
  725. oParam.method = "reqGetSerDiagPatInfoDetail";
  726. oParam.inds = "req=ds_reqdata";
  727. oParam.outds = "ds_serdiagpatinfo=serdiagpatinfo";
  728. oParam.async = false;
  729. oParam.callback = "cf_TRMMO11506";
  730. tranf_submit(oParam);
  731. if(arErrorCode.pop("TRMMO11506") >= 0){
  732. var insukind = ds_serdiagpatinfo.getColumn(0,"insukind"); //model.getValue("/root/serdiagpatinfo/serdiagpatinfo/insukind");
  733. var rebNm = "";
  734. if (insukind == "11") {
  735. // exeReportPreview("RPMMO11501", "XMLSTR", "/root/serdiagpatinfo/serdiagpatinfo", "", "true", "", "", "", "", "true", "", "", "", "", "", "", "", "", "", "", "");
  736. rebNm = "RPMMO11501";
  737. } else {
  738. // exeReportPreview("RPMMO11502", "XMLSTR", "/root/serdiagpatinfo/serdiagpatinfo", "", "true", "", "", "", "", "true", "", "", "", "", "", "", "", "", "", "", "");
  739. rebNm = "RPMMO11502";
  740. }
  741. var objDOM = rptf_createDOM(); // DOM 객체 설정
  742. rptf_setNodeListToDOM(objDOM, "/root/serdiagpatinfo/serdiagpatinfo", ds_serdiagpatinfo); // 데이터셋 1
  743. var objParam = new Object();
  744. objParam.xml_data_XML1 = objDOM.documentElement.source; // 최상의노드 XML 스트링 추출
  745. var option = "open=1;save=1;directprint=0;print=1;zoom=0;";
  746. rptf_exeReportPreview30([rebNm],[objParam], option); //미리보기만 가능
  747. }
  748. }
  749. if(frmf_checkOpener()) {
  750. opener.frmf_setParameter("SPMMO11500_save", "Y"); // 처방 저장시 작성 여부를 체크 하기 위해 추가. 2012.02.28 엄영만
  751. }
  752. //2013/12/02
  753. this.close();
  754. } else {
  755. sysf_messageBox("저장", "E009");
  756. }
  757. }
  758. }
  759. /****************************************************************************************
  760. * Components : Button
  761. * Components ID : btn_exit
  762. * Event : onclick
  763. * Argument : 01.obj : Object Event has occurred
  764. * : 02.e : Event Object
  765. * Description : 종료 버튼 클릭
  766. ****************************************************************************************/
  767. function btn_exit_onclick(obj:Button, e:ClickEventInfo)
  768. {
  769. this.close();
  770. }
  771. //=======================================================================================
  772. // Function
  773. //---------------------------------------------------------------------------------------
  774. /****************************************************************************************
  775. * Function : cf_TXMMO11503
  776. * Description : TXMMO11503 콜백함수
  777. * Argument :
  778. * :
  779. * return type :
  780. * Creator :
  781. ****************************************************************************************/
  782. function cf_TXMMO11503(sSvcId, nErrorCode, sErrorMsg) {
  783. arErrorCode.push(sSvcId, nErrorCode);
  784. }
  785. /****************************************************************************************
  786. * Function : cf_TXMMO11502
  787. * Description : TXMMO11502 콜백함수
  788. * Argument :
  789. * :
  790. * return type :
  791. * Creator :
  792. ****************************************************************************************/
  793. function cf_TXMMO11502(sSvcId, nErrorCode, sErrorMsg) {
  794. arErrorCode.push(sSvcId, nErrorCode);
  795. }
  796. /****************************************************************************************
  797. * Function : cf_TXMMO11501
  798. * Description : TXMMO11501 콜백함수
  799. * Argument :
  800. * :
  801. * return type :
  802. * Creator :
  803. ****************************************************************************************/
  804. function cf_TXMMO11501(sSvcId, nErrorCode, sErrorMsg) {
  805. arErrorCode.push(sSvcId, nErrorCode);
  806. }
  807. /****************************************************************************************
  808. * Function : cf_TRMMO11506
  809. * Description : TRMMO11506 콜백함수
  810. * Argument :
  811. * :
  812. * return type :
  813. * Creator :
  814. ****************************************************************************************/
  815. function cf_TRMMO11506(sSvcId, nErrorCode, sErrorMsg) {
  816. arErrorCode.push(sSvcId, nErrorCode);
  817. }
  818. /****************************************************************************************
  819. * Function : fSetSerDiagItem
  820. * Description : 최종진단방법 항목 변경
  821. * Argument :
  822. * :
  823. * return type :
  824. * Creator :
  825. ****************************************************************************************/
  826. function fSetSerDiagItem(boolvalue, itemcd, itemcnts) {
  827. if (boolvalue == true) {
  828. ds_serdiagappdetl.deleteRow(ds_serdiagappdetl.findRow("diagmthdcd",itemcd));
  829. ds_serdiagitem.setColumn(0,"diagmthdcd",itemcd);
  830. ds_serdiagitem.setColumn(0,"diagetccnts",itemcnts);
  831. ds_serdiagappdetl.appendData(ds_serdiagitem);
  832. } else {
  833. ds_serdiagappdetl.deleteRow(ds_serdiagappdetl.findRow("diagmthdcd",itemcd));
  834. }
  835. }
  836. /****************************************************************************************
  837. * Function : cf_TRMMO11503
  838. * Description : TRMMO11503 콜백함수
  839. * Argument :
  840. * :
  841. * return type :
  842. * Creator :
  843. ****************************************************************************************/
  844. function cf_TRMMO11503(sSvcId, nErrorCode, sErrorMsg) {
  845. if(nErrorCode < 0) return;
  846. dsf_setDefaultVal(ds_items,"item1:,item2:,item3:,item4:,item5,item6:,item7:,item8:,item9:,item10:,item11:,item12:,item13:");
  847. }
  848. function lf_bComponents(flag){
  849. bool_etc.enableevent = flag;
  850. bool_item7.enableevent = flag;
  851. }
  852. function Button03_onclick(obj:Button, e:ClickEventInfo)
  853. {
  854. lf_prcpModal ("SPMMO03100", 5, 40);
  855. if ( frmf_getParameter( "SPMMO03100_rtn_useyn" ) == "Y" ) {
  856. var sDiagInfo = frmf_getParameter("SPMMO03100_rtn");
  857. var nDiagRow = sDiagInfo.split ( "▩" ).length;
  858. for ( var i = 0; i < nDiagRow - 1; i++ ) {
  859. var sDiagCd = lf_getArrayData ( sDiagInfo, i, 9, "▩", "▦" );
  860. ds_serdiagappinfo.setColumn(0,"maindiagcd", sDiagCd); //진단코드
  861. break;
  862. }
  863. frmf_setParameter( "SPMMO03100_rtn_useyn", "" );
  864. }
  865. }
  866. function ipt_etc1_onkillfocus(obj:Edit, e:KillFocusEventInfo)
  867. {
  868. obj.updateToDataset();
  869. if(!utlf_isNull(ds_items.getColumn(0,"item12"))) {
  870. fSetSerDiagItem(bool_etc.value, "04", ipt_etc1.value);
  871. }
  872. }
  873. function ipt_etc2_onkillfocus(obj:Edit, e:KillFocusEventInfo)
  874. {
  875. obj.updateToDataset();
  876. if(!utlf_isNull(ds_items.getColumn(0,"item13"))) {
  877. fSetSerDiagItem(bool_item7.value, "10", ipt_etc2.value);
  878. }
  879. }
  880. ]]></Script>
  881. </Form>
  882. </FDL>