SPMMP03200_알림메세지조회.xfdl 32 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.4">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPMMP03200" position="absolute 0 0 508 321" titletext="알림" class="frm_POP" oninit="SPMMP03200_oninit" onload="SPMMP03200_onload">
  5. <Layouts>
  6. <Layout>
  7. <Grid position="absolute 417 5 447 30" id="datagrid1" visible="false" binddataset="ds_datagrid1">
  8. <Formats>
  9. <Format id="default">
  10. <Columns>
  11. <Column size="130"/>
  12. <Column size="293"/>
  13. <Column size="56"/>
  14. </Columns>
  15. <Rows>
  16. <Row size="24" band="head"/>
  17. <Row size="24"/>
  18. </Rows>
  19. <Band id="head">
  20. <Cell text="항목명"/>
  21. <Cell col="1" text="내용"/>
  22. <Cell col="2" text="단위"/>
  23. </Band>
  24. <Band id="body">
  25. <Cell text="bind:itemnm"/>
  26. <Cell col="1" text="bind:itemdesc"/>
  27. <Cell col="2" text="bind:unit"/>
  28. </Band>
  29. </Format>
  30. </Formats>
  31. </Grid>
  32. <Static id="stt_titleText" text="모니터링 알림" class="sta_POP_title" position="absolute 12 8 474 28" style="align:left middle;"/>
  33. <Button id="btn_close" taborder="1" onclick="btn_close_onclick" class="btn_POP_cls" position="absolute 482 12 496 25"/>
  34. <Div id="div_mntr" taborder="3" position="absolute 10 38 500 285" visible="false">
  35. <Layouts>
  36. <Layout>
  37. <Radio position="absolute 82 224 242 244" id="rdo_swt" taborder="1" columncount="2" codecolumn="codecolumn" datacolumn="datacolumn" anchor="default">
  38. <Dataset id="innerdataset">
  39. <ColumnInfo>
  40. <Column id="codecolumn"/>
  41. <Column id="datacolumn"/>
  42. </ColumnInfo>
  43. <Rows>
  44. <Row>
  45. <Col id="codecolumn">Y</Col>
  46. <Col id="datacolumn">ON</Col>
  47. </Row>
  48. <Row>
  49. <Col id="codecolumn">N</Col>
  50. <Col id="datacolumn">OFF</Col>
  51. </Row>
  52. </Rows>
  53. </Dataset>
  54. </Radio>
  55. <Static text="ON/OFF" position="absolute 0 221 80 246" id="cap_swt" class="cell_1" anchor="default"/>
  56. <Static text="가이드라인" position="absolute 0 34 80 220" id="caption1" class="cell_1" anchor="default"/>
  57. <TextArea position="absolute 83 34 490 220" id="textarea1" anchor="default"/>
  58. <Static position="absolute 0 0 488 30" id="caption2" class="hand" anchor="default"/>
  59. <Shape position="absolute 0 30 490 31" linetype="vertical" id="line6" class="line_1" anchor="default"/>
  60. </Layout>
  61. </Layouts>
  62. </Div>
  63. <Div id="div_scrn" taborder="2" position="absolute 10 38 500 285">
  64. <Layouts>
  65. <Layout>
  66. <Static text="가이드라인" position="absolute 0 146 80 221" id="cap_cpgnm" class="cell_1" anchor="default"/>
  67. <TextArea position="absolute 83 146 490 221" id="txt_etc" anchor="default"/>
  68. <Static text="CPG 적용은 한 건만 가능함니다. 적용하시겠습니까?" position="absolute 200 224 486 244" align="align:right middle;" id="cap_qest" anchor="default" style="color:#ff0000ff;"/>
  69. <Static text="평가용 여부" position="absolute 0 103 80 145" id="caption3" class="cell_1" anchor="default"/>
  70. <Edit readonly="true" position="absolute 45 85 85 104" id="output1" visible="false" anchor="default"/>
  71. <Edit readonly="true" position="absolute 0 85 47 104" id="output2" anchor="default" visible="false"/>
  72. <TextArea position="absolute 125 105 490 142" id="textarea2" anchor="default"/>
  73. <Radio position="absolute 84 106 124 145" id="radio1" enable="false" taborder="1" columncount="1" codecolumn="codecolumn" datacolumn="datacolumn" anchor="default">
  74. <Dataset id="innerdataset">
  75. <ColumnInfo>
  76. <Column id="codecolumn"/>
  77. <Column id="datacolumn"/>
  78. </ColumnInfo>
  79. <Rows>
  80. <Row>
  81. <Col id="codecolumn">Y</Col>
  82. <Col id="datacolumn">Y</Col>
  83. </Row>
  84. <Row>
  85. <Col id="codecolumn">N</Col>
  86. <Col id="datacolumn">N</Col>
  87. </Row>
  88. </Rows>
  89. </Dataset>
  90. </Radio>
  91. <Grid position="absolute 0 5 490 100" id="grd_srcnlist" binddataset="ds_grd_alertlist" anchor="default">
  92. <Formats>
  93. <Format id="default">
  94. <Columns>
  95. <Column size="23"/>
  96. <Column size="193"/>
  97. <Column size="256"/>
  98. <Column size="0"/>
  99. <Column size="0"/>
  100. <Column size="0"/>
  101. <Column size="0"/>
  102. <Column size="0"/>
  103. <Column size="0"/>
  104. <Column size="0"/>
  105. <Column size="0"/>
  106. <Column size="0"/>
  107. <Column size="0"/>
  108. <Column size="0"/>
  109. <Column size="0"/>
  110. <Column size="0"/>
  111. <Column size="0"/>
  112. <Column size="0"/>
  113. <Column size="0"/>
  114. <Column size="0"/>
  115. <Column size="0"/>
  116. </Columns>
  117. <Rows>
  118. <Row size="24" band="head"/>
  119. <Row size="24"/>
  120. </Rows>
  121. <Band id="head">
  122. <Cell/>
  123. <Cell col="1" text="CPG명"/>
  124. <Cell col="2" text="대상자 조건"/>
  125. <Cell col="3" text="cpgno"/>
  126. <Cell col="4" text="cpghistseq"/>
  127. <Cell col="5" text="slipno"/>
  128. <Cell col="6" text="valusgeyn"/>
  129. <Cell col="7" text="valunm"/>
  130. <Cell col="8" text="guidedocucnts"/>
  131. <Cell col="9" text="hngnm"/>
  132. <Cell col="10" text="pid"/>
  133. <Cell col="11" text="cretno"/>
  134. <Cell col="12" text="orddd"/>
  135. <Cell col="13" text="ordtype"/>
  136. <Cell col="14" text="orddeptcd"/>
  137. <Cell col="15" text="cpgappno"/>
  138. <Cell col="16" text="alertstatcd"/>
  139. <Cell col="17" text="cpgmntrflag"/>
  140. <Cell col="18" text="attrflagcd"/>
  141. <Cell col="19" text="status"/>
  142. <Cell col="20" text="rsnsaveyn"/>
  143. </Band>
  144. <Band id="body">
  145. <Cell text="bind:alertoffyn" edittype="checkbox" displaytype="checkbox"/>
  146. <Cell col="1" text="bind:cpgnm"/>
  147. <Cell col="2" text="bind:slipnm"/>
  148. <Cell col="3" text="bind:cpgno"/>
  149. <Cell col="4" text="bind:cpghistseq"/>
  150. <Cell col="5" text="bind:slipno"/>
  151. <Cell col="6" text="bind:valusgeyn"/>
  152. <Cell col="7" text="bind:valunm"/>
  153. <Cell col="8"/>
  154. <Cell col="9" text="bind:hngnm"/>
  155. <Cell col="10" text="bind:pid"/>
  156. <Cell col="11" text="bind:cretno"/>
  157. <Cell col="12" text="bind:orddd"/>
  158. <Cell col="13" text="bind:ordtype"/>
  159. <Cell col="14" text="bind:orddeptcd"/>
  160. <Cell col="15" text="bind:cpgappno"/>
  161. <Cell col="16" text="bind:alertstatcd"/>
  162. <Cell col="17" text="bind:cpgmntrflag"/>
  163. <Cell col="18" text="bind:attrflagcd"/>
  164. <Cell col="19" text="bind:status"/>
  165. <Cell col="20" text="bind:rsnsaveyn"/>
  166. </Band>
  167. </Format>
  168. </Formats>
  169. </Grid>
  170. </Layout>
  171. </Layouts>
  172. </Div>
  173. <Button position="absolute 444 289 500 311" id="btn_cncl" class="btn4" text="닫기" onclick="btn_cncl_onclick"/>
  174. <Button position="absolute 374 289 442 311" id="btn_no" class="btn4" visible="false" text="아니오" onclick="btn_no_onclick"/>
  175. <Button position="absolute 316 289 372 311" id="btn_yes" class="btn4" text="예" visible="false" onclick="btn_yes_onclick"/>
  176. <Button position="absolute 386 289 442 311" id="btn_cnfm" class="btn4" text="확인" onclick="btn_cnfm_onclick"/>
  177. </Layout>
  178. </Layouts>
  179. <Objects>
  180. <Dataset id="ds_grd_alertlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false" onrowposchanged="ds_grd_alertlist_onrowposchanged">
  181. <ColumnInfo>
  182. <Column id="alertoffyn" type="STRING"/>
  183. <Column id="cpgnm" type="STRING"/>
  184. <Column id="slipnm" type="STRING"/>
  185. <Column id="cpgno" type="STRING"/>
  186. <Column id="cpghistseq" type="STRING"/>
  187. <Column id="slipno" type="STRING"/>
  188. <Column id="valusgeyn" type="STRING"/>
  189. <Column id="valunm" type="STRING"/>
  190. <Column id="hngnm" type="STRING"/>
  191. <Column id="pid" type="STRING"/>
  192. <Column id="cretno" type="STRING"/>
  193. <Column id="orddd" type="STRING"/>
  194. <Column id="ordtype" type="STRING"/>
  195. <Column id="orddeptcd" type="STRING"/>
  196. <Column id="cpgappno" type="STRING"/>
  197. <Column id="alertstatcd" type="STRING"/>
  198. <Column id="cpgmntrflag" type="STRING"/>
  199. <Column id="attrflagcd" type="STRING"/>
  200. <Column id="status" type="STRING"/>
  201. <Column id="rsnsaveyn" type="STRING"/>
  202. </ColumnInfo>
  203. </Dataset>
  204. <Dataset id="ds_datagrid1" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  205. <ColumnInfo>
  206. <Column id="itemnm" type="STRING"/>
  207. <Column id="itemdesc" type="STRING"/>
  208. <Column id="unit" type="STRING"/>
  209. </ColumnInfo>
  210. </Dataset>
  211. <Dataset id="ds_alertinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  212. <ColumnInfo>
  213. <Column id="pid" type="STRING" size="256"/>
  214. <Column id="cretno" type="STRING" size="256"/>
  215. <Column id="orddd" type="STRING" size="256"/>
  216. <Column id="ordtype" type="STRING" size="256"/>
  217. <Column id="slipno" type="STRING" size="256"/>
  218. <Column id="cpgappno" type="STRING" size="256"/>
  219. <Column id="alertstatcd" type="STRING" size="256"/>
  220. <Column id="cpgmntrflag" type="STRING" size="256"/>
  221. <Column id="slipnm" type="STRING" size="256"/>
  222. <Column id="guidedocucnts" type="STRING" size="256"/>
  223. <Column id="alertoffyn" type="STRING" size="256"/>
  224. <Column id="orddeptcd" type="STRING" size="256"/>
  225. <Column id="cpgno" type="STRING" size="256"/>
  226. <Column id="cpghistseq" type="STRING" size="256"/>
  227. <Column id="cpgnm" type="STRING" size="256"/>
  228. <Column id="valusgeyn" type="STRING" size="256"/>
  229. <Column id="valunm" type="STRING" size="256"/>
  230. <Column id="status" type="STRING" size="256"/>
  231. <Column id="attrflagcd" type="STRING" size="256"/>
  232. <Column id="hngnm" type="STRING" size="256"/>
  233. </ColumnInfo>
  234. <Rows>
  235. <Row/>
  236. </Rows>
  237. </Dataset>
  238. <Dataset id="ds_reqdata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  239. <Dataset id="ds_savedata" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  240. <Dataset id="ds_info" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  241. <Dataset id="ds_appinfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  242. <Dataset id="ds_cpexclusionlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  243. <ColumnInfo>
  244. <Column id="cpgno" type="STRING" size="256"/>
  245. <Column id="cpghistseq" type="STRING" size="256"/>
  246. <Column id="cpgnm" type="STRING" size="256"/>
  247. </ColumnInfo>
  248. </Dataset>
  249. <Dataset id="ds_temp_paminfo" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  250. <ColumnInfo>
  251. <Column id="pid" type="STRING" size="256"/>
  252. <Column id="cretno" type="STRING" size="256"/>
  253. <Column id="ioflag" type="STRING" size="256"/>
  254. <Column id="indd" type="STRING" size="256"/>
  255. <Column id="orddd" type="STRING" size="256"/>
  256. </ColumnInfo>
  257. </Dataset>
  258. </Objects>
  259. <Bind>
  260. <BindItem id="item0" compid="div_scrn.radio1" propid="value" datasetid="ds_alertinfo" columnid="valusgeyn"/>
  261. <BindItem id="item1" compid="div_scrn.textarea2" propid="value" datasetid="ds_alertinfo" columnid="valunm"/>
  262. <BindItem id="item2" compid="div_scrn.txt_etc" propid="value" datasetid="ds_alertinfo" columnid="guidedocucnts"/>
  263. <BindItem id="item3" compid="div_mntr.textarea1" propid="value" datasetid="ds_alertinfo" columnid="guidedocucnts"/>
  264. <BindItem id="item4" compid="div_mntr.rdo_swt" propid="value" datasetid="ds_alertinfo" columnid="alertoffyn"/>
  265. <BindItem id="item5" compid="div_mntr.caption2" propid="text" datasetid="ds_alertinfo" columnid="slipnm"/>
  266. <BindItem id="item6" compid="div_scrn.output1" propid="value" datasetid="ds_alertinfo" columnid="cpgnm"/>
  267. <BindItem id="item7" compid="div_scrn.output2" propid="value" datasetid="ds_alertinfo" columnid="slipnm"/>
  268. </Bind>
  269. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  270. * System Name :
  271. * Job Name :
  272. * Creator :
  273. * Make Date : 2014-09-19
  274. * Description :
  275. *---------------------------------------------------------------------------------------
  276. * Modify Date Modifier Modify Description
  277. *---------------------------------------------------------------------------------------
  278. * 2014-09-19 Live Converter TF->XP
  279. *
  280. *---------------------------------------------------------------------------------------
  281. ****************************************************************************************/
  282. include "com_commonxp::comm_main.xjs";
  283. var alertData = "";
  284. var hngnm = "";
  285. var pid = "";
  286. var cretno = ""
  287. var orddd = "";
  288. var ordtype = "";
  289. var orddeptcd = "";
  290. var alertstatcd = "";
  291. var cpgmntrflag = "";
  292. var slipnm = "";
  293. var guidedocucnts = "";
  294. var alertoffyn = "";
  295. var cpgappno = "";
  296. var slipno = "";
  297. var cpgno = "";
  298. var cpghistseq = "";
  299. var cpnm = "";
  300. var cpgnm = "";
  301. var valusgeyn = ""; //평가용CPG여부
  302. var valunm = "";
  303. var arErrorCode = new HashArray();
  304. function SPMMP03200_oninit(obj:Form, e:InitEventInfo)
  305. {
  306. frmf_initForm(obj);
  307. }
  308. function SPMMP03200_onload(obj:Form, e:LoadEventInfo)
  309. {
  310. var alertData = opener.frmf_getParameter("alertdata_SMMMP00800");
  311. if( !utlf_isNull(alertData) ){ //MGPS에서 호출 시 alertdata_SMMMP00800 존재함, 모니터링인 경우임.
  312. // pid ▦ cretno ▦ orddd ▦ ordtype ▦ slipno ▦ cpgappno ▦ alertstatcd ▦ cpgmntrflag ▦ slipnm ▦ guidedocucnts ▦ alertoffyn
  313. var sData = alertData.split("▦");
  314. pid = sData[0];
  315. cretno = sData[1];
  316. orddd = sData[2];
  317. ordtype = sData[3];
  318. slipno = sData[4];
  319. cpgappno = sData[5];
  320. alertstatcd = sData[6];
  321. cpgmntrflag = sData[7]; //"M"
  322. slipnm = sData[8];
  323. guidedocucnts = sData[9];
  324. alertoffyn = sData[10];
  325. ds_alertinfo.setColumn(0, "hngnm", hngnm);
  326. ds_alertinfo.setColumn(0, "pid", pid);
  327. ds_alertinfo.setColumn(0, "cretno", cretno);
  328. ds_alertinfo.setColumn(0, "orddd", orddd);
  329. ds_alertinfo.setColumn(0, "ordtype", ordtype);
  330. ds_alertinfo.setColumn(0, "orddeptcd", orddeptcd);
  331. ds_alertinfo.setColumn(0, "cpgappno", cpgappno);
  332. ds_alertinfo.setColumn(0, "alertstatcd", alertstatcd);
  333. ds_alertinfo.setColumn(0, "cpgmntrflag", cpgmntrflag);
  334. ds_alertinfo.setColumn(0, "alertoffyn", alertoffyn);
  335. ds_alertinfo.setColumn(0, "cpgno", cpgno);
  336. ds_alertinfo.setColumn(0, "cpghistseq", cpghistseq);
  337. ds_alertinfo.setColumn(0, "cpgnm", cpgnm);
  338. ds_alertinfo.setColumn(0, "slipno", slipno);
  339. ds_alertinfo.setColumn(0, "slipnm", slipnm);
  340. ds_alertinfo.setColumn(0, "valusgeyn", valusgeyn);
  341. ds_alertinfo.setColumn(0, "valunm", valunm);
  342. ds_alertinfo.setColumn(0, "guidedocucnts", guidedocucnts);
  343. }else{ //그렇지 않으면.. 진료대상자에서 호출한 것이고, 스크리닝인 경우임.
  344. hngnm = opener.frmf_getParameter("SMMMO041_hngnm");
  345. pid = opener.frmf_getParameter("SMMMO041_pid");
  346. cretno = opener.frmf_getParameter("SMMMO041_cretno");
  347. orddd = opener.frmf_getParameter("SMMMO041_orddd");
  348. ordtype = opener.frmf_getParameter("SMMMO041_ordtype");
  349. orddeptcd = opener.frmf_getParameter("SMMMO041_orddeptcd");
  350. cpgmntrflag = opener.frmf_getParameter("SMMMO041_cpgmntrflag"); // "S"
  351. if( utlf_isNull(cpgmntrflag) ) cpgmntrflag = "S";
  352. cpgappno = opener.frmf_getParameter("SMMMO041_cpgappno"); //진행중인 CP가 있다면 컬럼에 값이 존재함
  353. cpnm = opener.frmf_getParameter("SMMMO041_cpgnm"); //진행중인 CP가 있다면 컬럼에 값이 존재함
  354. alertstatcd = "E"; //모두 완료로 update하고, 선택한 하나만 alertOffYn이 N, 나머지는 Y
  355. alertoffyn = "Y";
  356. // var rowData = opener.frmf_getParameter("SMMMO041_slipnm").split("▩");
  357. // var colData = ""; //cpgno▦cpghistseq▦cpgnm▦slipno▦slipnm▦valusgeyn▦valunm▦guidedocucnts
  358. // if(rowData.length > 0){
  359. // for(var i=0; i<rowData.length; i++){
  360. // colData = rowData[i].split("▦");
  361. // cpgno = colData[0];
  362. // cpghistseq = colData[1];
  363. // cpgnm = colData[2];
  364. // slipno = colData[3];
  365. // slipnm = colData[4];
  366. // valusgeyn = colData[5];
  367. // valunm = colData[6];
  368. // guidedocucnts = colData[7];
  369. //
  370. // ds_grd_alertlist.addRow();
  371. // ds_grd_alertlist.setColumn(i, "hngnm", hngnm);
  372. // ds_grd_alertlist.setColumn(i, "pid", pid);
  373. // ds_grd_alertlist.setColumn(i, "cretno", cretno);
  374. // ds_grd_alertlist.setColumn(i, "orddd", orddd);
  375. // ds_grd_alertlist.setColumn(i, "ordtype", ordtype);
  376. // ds_grd_alertlist.setColumn(i, "orddeptcd", orddeptcd);
  377. // ds_grd_alertlist.setColumn(i, "cpgappno", "0");
  378. // ds_grd_alertlist.setColumn(i, "alertstatcd", alertstatcd);
  379. // ds_grd_alertlist.setColumn(i, "cpgmntrflag", cpgmntrflag);
  380. // ds_grd_alertlist.setColumn(i, "alertoffyn", alertoffyn);
  381. // ds_grd_alertlist.setColumn(i, "cpgno", cpgno);
  382. // ds_grd_alertlist.setColumn(i, "cpghistseq", cpghistseq);
  383. // ds_grd_alertlist.setColumn(i, "cpgnm", cpgnm);
  384. // ds_grd_alertlist.setColumn(i, "slipno", slipno);
  385. // ds_grd_alertlist.setColumn(i, "slipnm", slipnm);
  386. // ds_grd_alertlist.setColumn(i, "valusgeyn", valusgeyn);
  387. // ds_grd_alertlist.setColumn(i, "valunm", valunm);
  388. // ds_grd_alertlist.setColumn(i, "guidedocucnts", guidedocucnts);
  389. // ds_grd_alertlist.setColumn(i, "attrflagcd", "2"); //2: 스크리닝
  390. // ds_grd_alertlist.setColumn(i, "status", "U"); //저장 시, 서버단에서 U인 row를 저장함
  391. // ds_grd_alertlist.setColumn(i, "rsnsaveyn", "N"); //적용 아니요 할 때, 사유 저장여부를 하나하나 체크해서, 중복저장하지 않도록 하기 위함(화면단에서만 사용됨)
  392. // }
  393. // }
  394. }
  395. toggleDiv(cpgmntrflag);
  396. if( cpgmntrflag == "S" && ds_grd_alertlist.rowcount > 0 ){
  397. // grd_srcnlist.select(1, 1, 1, grd_srcnlist.cols) = true;
  398. // grd_srcnlist.isselected(1) = true;
  399. // grd_srcnlist.row = grd_srcnlist.selectedRow(0);
  400. ds_grd_alertlist.rowposition = 0;
  401. fSelScrnInfo();
  402. if( cpgappno != "" && cpgappno != "0" && cpnm != "" ){
  403. if( sysf_messageBox("[" + cpnm + "] CP를 진행중입니다.\nCPG를 적용하려면 CP를 Drop/취소해야합니다.\n\nCP를 Drop/", "Q007") == 6 ){ //취소 하시겠습니까?
  404. //drop 처리
  405. frmf_setParameter("SMMMO043_cpgappno", cpgappno); //drop 팝업에서 인식할 수 있는 param
  406. frmf_setParameter("SMMMO043_drop" , "N"); //drop 팝업에서 인식할 수 있는 param
  407. frmf_modal("SPMMP02300", "SPMMP02300", null, null, null, null, null, null, null, null, null, null, "M"); //Drop 팝업 호출
  408. cpgappno = "0";
  409. }else{
  410. //대상자탐색 OFF 처리
  411. var findRow = ds_grd_alertlist.findRow("alertoffyn", 'N');
  412. if( findRow > -1 ){
  413. ds_grd_alertlist.setColumn(findRow, "alertoffyn", "Y");
  414. }
  415. ds_reqdata.copyData(ds_grd_alertlist);
  416. var oParam = {};
  417. oParam.id = "TXMMP00810";
  418. oParam.service = "prcpmngtapp.CPPrcpMngt";
  419. oParam.method = "reqSetCpgAttrHistInfo";
  420. oParam.inds = "req=" + "ds_reqdata";
  421. oParam.async = false;
  422. tranf_submit(oParam);
  423. ds_reqdata.clear();
  424. opener.frmf_setParameter("SPMMP032_cpgappno", cpgappno);
  425. close();
  426. }
  427. }
  428. }
  429. }
  430. function toggleDiv(cpgmntrflag) {
  431. if(cpgmntrflag == "M") {
  432. stt_titleText.text = "환자상태 알림";
  433. /*
  434. cap_swt.visible = true;
  435. rdo_swt.visible = true;
  436. cap_qest.visible = true;
  437. */
  438. div_mntr.visible = true;
  439. div_scrn.visible = false;
  440. btn_no.visible = false;
  441. btn_yes.visible = false;
  442. btn_cnfm.visible = true; //확인
  443. btn_cncl.text = "닫기";
  444. } else {
  445. stt_titleText.text = "[" + hngnm + "] 환자는 아래 CPG 적용 대상자입니다."; //"CPG 적용 대상자 알림";
  446. /*
  447. cap_swt.visible = false;
  448. rdo_swt.visible = false;
  449. cap_qest.visible = true;
  450. */
  451. div_mntr.visible = false;
  452. div_scrn.visible = true;
  453. btn_no.visible = true; //아니오
  454. btn_yes.visible = true; //예
  455. btn_cnfm.visible = false;
  456. btn_cncl.text = "보류";
  457. }
  458. }
  459. function btn_close_onclick(obj:Button, e:ClickEventInfo)
  460. {
  461. this.close();
  462. }
  463. function btn_cnfm_onclick(obj:Button, e:ClickEventInfo)
  464. {
  465. ds_alertinfo.setColumn(0, "status", "U");
  466. ds_alertinfo.setColumn(0, "alertstatcd", "E");
  467. //if(cpgmntrflag == "M") //Monitoring: 모니터링 확인 정보를 오프너에 전달
  468. ds_alertinfo.setColumn(0, "attrflagcd", "1"); //1:모니터링, 2:스크리닝, 3:제한시간, 4:문진
  469. ds_reqdata.copyData(ds_alertinfo);
  470. var oParam = {};
  471. oParam.id = "TXMMP00810";
  472. oParam.service = "prcpmngtapp.CPPrcpMngt";
  473. oParam.method = "reqSetCpgAttrHistInfo";
  474. oParam.inds = "req=" + "ds_reqdata";
  475. oParam.async = false;
  476. oParam.callback = "cf_TXMMP00810_cnfm";
  477. tranf_submit(oParam);
  478. }
  479. function cf_TXMMP00810_cnfm(sSvcId, nErrorCode, sErrorMsg) {
  480. if(nErrorCode < 0) return;
  481. opener.frmf_setParameter("alertstatcd_TRMMP03200", "E");
  482. opener.frmf_setParameter("alertoffyn_TRMMP03200", ds_alertinfo.getColumn(0, "alertoffyn"));
  483. close();
  484. }
  485. function btn_cncl_onclick(obj:Button, e:ClickEventInfo)
  486. {
  487. this.close();
  488. }
  489. function btn_yes_onclick(obj:Button, e:ClickEventInfo)
  490. {
  491. if( ds_grd_alertlist.findRow("alertoffyn", 'N') < 0 ){
  492. sysf_messageBox("적용할 CPG를", "C003");
  493. return;
  494. }
  495. //if(cpgmntrflag == "S") //Screening: CPG를 적용한다.
  496. //model.setValue("/root/main/alertinfo/attrflagcd", "2"); //1:모니터링, 2:스크리닝, 3:제한시간, 4:문진
  497. //model.copyNode("/root/send/reqdata", "/root/main/alertinfo");
  498. ds_reqdata.copyData(ds_grd_alertlist);
  499. var oParam = {};
  500. oParam.id = "TXMMP00810";
  501. oParam.service = "prcpmngtapp.CPPrcpMngt";
  502. oParam.method = "reqSetCpgAttrHistInfo";
  503. oParam.inds = "req=" + "ds_reqdata";
  504. oParam.async = false;
  505. oParam.callback = "cf_TXMMP00810_yes";
  506. tranf_submit(oParam);
  507. }
  508. function cf_TXMMP00810_yes(sSvcId, nErrorCode, sErrorMsg) {
  509. if(nErrorCode < 0) return;
  510. //스크리닝 이력에 상태값 수정 후, M-GPS를 open할 수 있도록 미리 적용
  511. if( fAppCpg() == "" ){ //cpgappno return
  512. //실패 msg
  513. return;
  514. }
  515. //오프너(진료대상자)에 적용완료 parameter 전달
  516. opener.frmf_setParameter("SPMMP032_cpgappno", cpgappno);
  517. close();
  518. }
  519. function btn_no_onclick(obj:Button, e:ClickEventInfo)
  520. {
  521. var findRow = ds_grd_alertlist.findRow("alertoffyn", 'N');
  522. if( findRow > -1 ){
  523. ds_grd_alertlist.setColumn(findRow, "alertoffyn", "Y");
  524. }
  525. for( var i = 0; i < ds_grd_alertlist.rowcount; i++ ){
  526. if( ds_grd_alertlist.getColumn(i, "valusgeyn") == "Y" && ds_grd_alertlist.getColumn(i, "rsnsaveyn") == "N" ){ //평가용 CPG를 적용하지 않는 경우, 미적용 사유 입력 팝업을 호출 후 종료시킨다.
  527. ds_grd_alertlist.rowposition = i;
  528. frmf_setParameter("SMMMO034_cpgno", ds_grd_alertlist.getColumn(i, "cpgno"));
  529. frmf_setParameter("SMMMO034_cpghistseq", ds_grd_alertlist.getColumn(i, "cpghistseq"));
  530. frmf_setParameter("SMMMO034_pid", ds_grd_alertlist.getColumn(i, "pid"));
  531. frmf_setParameter("SMMMO034_cretno", ds_grd_alertlist.getColumn(i, "cretno"));
  532. frmf_setParameter("SMMMO034_orddd", ds_grd_alertlist.getColumn(i, "orddd"));
  533. frmf_setParameter("SMMMO034_ordtype", ds_grd_alertlist.getColumn(i, "ordtype"));
  534. //setParameter("SMMMO034_inqrflag", "R"); //미적용 사유 입력용 팝업
  535. frmf_setParameter("SMMMO024_cpgflagcd", "02"); //CPG용으로 화면 호출
  536. frmf_setParameter("SMMMO024_cpgnm", ds_grd_alertlist.getColumn(i, "cpgnm"));
  537. frmf_setParameter("SMMMO024_valunm", ds_grd_alertlist.getColumn(i, "valunm"));
  538. ds_cpexclusionlist.clearData();
  539. ds_cpexclusionlist.addRow();
  540. ds_cpexclusionlist.setColumn(0, "cpgno", ds_grd_alertlist.getColumn(i, "cpgno"));
  541. ds_cpexclusionlist.setColumn(0, "cpghistseq", ds_grd_alertlist.getColumn(i, "cpghistseq"));
  542. ds_cpexclusionlist.setColumn(0, "cpgnm", ds_grd_alertlist.getColumn(i, "cpgnm"));
  543. ds_temp_paminfo.clearData();
  544. ds_temp_paminfo.addRow();
  545. ds_temp_paminfo.setColumn(0, "pid", ds_grd_alertlist.getColumn(i, "pid"));
  546. ds_temp_paminfo.setColumn(0, "cretno", ds_grd_alertlist.getColumn(i, "cretno"));
  547. ds_temp_paminfo.setColumn(0, "ioflag", ds_grd_alertlist.getColumn(i, "ordtype"));
  548. ds_temp_paminfo.setColumn(0, "indd", ds_grd_alertlist.getColumn(i, "orddd"));
  549. ds_temp_paminfo.setColumn(0, "orddd", ds_grd_alertlist.getColumn(i, "orddd"));
  550. //modal("SPMMP03400");
  551. var mon = sysf_getCurrentMonitorNumber();
  552. var leftPos = this.position.left + this.position.width;
  553. var topPos = this.position.top;
  554. frmf_clearParameter("TRMMP03200_saversnyn");
  555. var objArg = new Object();
  556. objArg.ds_cpexclusionlist = ds_cpexclusionlist;
  557. frmf_modal("SPMMP02400", "SPMMP02400", objArg, false, mon, leftPos, topPos, null, null, null, null, null, "M"); //문진팝업 (CPG용으로 open)
  558. if( frmf_getParameter("TRMMP03200_saversnyn") != "Y" ){
  559. //messageBox ( "미적용 사유를" , "C001" ); //입력하십시오
  560. return;
  561. }
  562. }
  563. ds_grd_alertlist.setColumn(i, "rsnsaveyn", "Y");
  564. }
  565. //model.setValue("/root/main/alertinfo/status", "U");
  566. //model.setValue("/root/main/alertinfo/alertstatcd", "E");
  567. //model.setValue("/root/main/alertinfo/alertoffyn", "Y");
  568. //model.setValue("/root/main/alertinfo/attrflagcd", "2"); //1:모니터링, 2:스크리닝, 3:제한시간, 4:문진
  569. //model.copyNode("/root/send/reqdata", "/root/main/alertinfo");
  570. ds_reqdata.copyData(ds_grd_alertlist);
  571. var oParam = {};
  572. oParam.id = "TXMMP00810";
  573. oParam.service = "prcpmngtapp.CPPrcpMngt";
  574. oParam.method = "reqSetCpgAttrHistInfo";
  575. oParam.inds = "req=" + "ds_reqdata";
  576. oParam.async = false;
  577. oParam.callback = "cf_TXMMP00810_no";
  578. tranf_submit(oParam);
  579. }
  580. function cf_TXMMP00810_no(sSvcId, nErrorCode, sErrorMsg) {
  581. if(nErrorCode < 0) return;
  582. close();
  583. }
  584. function ds_grd_alertlist_onrowposchanged(obj:Dataset, e:DSRowPosChangeEventInfo)
  585. {
  586. }
  587. /**
  588. * @group :
  589. * @ver : 2009.05
  590. * @by : 전지은
  591. * @---------------------------------------------------
  592. * @type : function
  593. * @access : public
  594. * @desc : CPG를 적용한다 (CP검색창에서 CP적용하는것과 동일한 방법)
  595. * @param :
  596. * @return : cpgappno
  597. * @---------------------------------------------------
  598. */
  599. function fAppCpg(){
  600. cpgappno = 0;
  601. ds_savedata.setColumn(0, "cpgno", cpgno);
  602. ds_savedata.setColumn(0, "cpghistseq", cpghistseq);
  603. ds_savedata.setColumn(0, "indxno", "");
  604. ds_savedata.setColumn(0, "supindxno", "");
  605. ds_savedata.setColumn(0, "indxrefseq", "");
  606. ds_savedata.setColumn(0, "indxseq", "");
  607. ds_savedata.setColumn(0, "cpgnm", cpgnm);
  608. ds_savedata.setColumn(0, "cpgappno", "");
  609. ds_savedata.setColumn(0, "histseq", "");
  610. ds_savedata.setColumn(0, "appdd", "");
  611. ds_savedata.setColumn(0, "pid", pid);
  612. ds_savedata.setColumn(0, "cretno", cretno);
  613. ds_savedata.setColumn(0, "ioflag", ordtype);
  614. ds_savedata.setColumn(0, "orddd", orddd);
  615. ds_savedata.setColumn(0, "appstepstatflag", "i");
  616. ds_savedata.setColumn(0, "prcpgenrflag", "");
  617. ds_savedata.setColumn(0, "checkyn", "");
  618. ds_savedata.setColumn(0, "appstat", "00");
  619. ds_savedata.setColumn(0, "getformyn", "");
  620. ds_savedata.setColumn(0, "m", "i");
  621. ds_savedata.setColumn(0, "cpgflagcd", "02"); //CPG
  622. ds_savedata.setColumn(0, "prtlflagcd", "02" ); //프로토콜구분코드(02:CPG)
  623. ds_savedata.setColumn(0, "orddeptcd", orddeptcd);
  624. ds_savedata.setColumn(0, "appyn", "Y");
  625. ds_savedata.setColumn(0, "histjoinyn", "N");
  626. //CPG인 경우, 모니터링 데이터 함께 가져간다
  627. //if( cpgflagcd == "02" ) model.makeValue("/root/send/savedata/mntrlist", grd_monitoringlist.getUpdateDataAll("i"));
  628. var oParam = {};
  629. oParam.id = "TXMMP00802";
  630. oParam.service = "prcpmngtapp.CPPrcpMngt";
  631. oParam.method = "reqExeAppStepStat";
  632. oParam.inds = "req=" + "ds_savedata";
  633. oParam.outds = "ds_info=info" + " ds_appinfo=appinfo";
  634. oParam.async = false;
  635. oParam.callback = "cf_TXMMP00802";
  636. tranf_submit(oParam);
  637. if(arErrorCode.pop("TXMMP00802") > -1) {
  638. if(ds_appinfo.rowcount > 0) {
  639. cpgappno = ds_appinfo.getColumn(0, "cpgappno");
  640. ds_appinfo.clear();
  641. }
  642. }
  643. return cpgappno;
  644. }
  645. function cf_TXMMP00802(sSvcId, nErrorCode, sErrorMsg) {
  646. arErrorCode.push(sSvcId, nErrorCode);
  647. }
  648. /**
  649. * @group :
  650. * @ver : 2010.01
  651. * @by : 전지은
  652. * @---------------------------------------------------
  653. * @type : function
  654. * @access : public
  655. * @desc : M-GPS에서 로딩 후, 화면 close함.
  656. * @param :
  657. * @return :
  658. * @---------------------------------------------------
  659. */
  660. function fSelScrnInfo(){
  661. if( ds_grd_alertlist.rowposition >= 0 && ds_grd_alertlist.rowposition < ds_grd_alertlist.rowcount ){
  662. var i = ds_grd_alertlist.rowposition;
  663. var findRow = ds_grd_alertlist.findRow("alertoffyn", 'N');
  664. if( findRow > -1 ){
  665. ds_grd_alertlist.setColumn(findRow, "alertoffyn", "Y");
  666. }
  667. ds_grd_alertlist.setColumn(i, "alertoffyn", "N");
  668. ds_alertinfo.setColumn(0, "cpgno" , ds_grd_alertlist.getColumn(i, "cpgno"));
  669. ds_alertinfo.setColumn(0, "cpghistseq" , ds_grd_alertlist.getColumn(i, "cpghistseq"));
  670. ds_alertinfo.setColumn(0, "cpgnm" , ds_grd_alertlist.getColumn(i, "cpgnm"));
  671. ds_alertinfo.setColumn(0, "slipno" , ds_grd_alertlist.getColumn(i, "slipno"));
  672. ds_alertinfo.setColumn(0, "slipnm" , ds_grd_alertlist.getColumn(i, "slipnm"));
  673. ds_alertinfo.setColumn(0, "valusgeyn" , ds_grd_alertlist.getColumn(i, "valusgeyn"));
  674. ds_alertinfo.setColumn(0, "valunm" , ds_grd_alertlist.getColumn(i, "valunm"));
  675. ds_alertinfo.setColumn(0, "guidedocucnts", ds_grd_alertlist.getColumn(i, "guidedocucnts"));
  676. }
  677. }
  678. ]]></Script>
  679. </Form>
  680. </FDL>