SPMMO16101_최대용량최대기간저함량처방사유입력(경북대).xfdl 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <FDL version="1.5">
  3. <TypeDefinition url="..\..\..\default_typedef.xml"/>
  4. <Form id="SPMMO16101" position="absolute 0 0 843 541" titletext="처방사유 입력" oninit="SPMMO16101_oninit" onload="SPMMO16101_onload">
  5. <Layouts>
  6. <Layout>
  7. <Static text="처방사유 입력" position="absolute 0 0 307 22" id="caption1" class="tit_2"/>
  8. <Static text="아래의 처방은 사유를 선택 또는 입력 하셔야 발행이 가능 합니다. 처방을 선택하면 구분에 맞는 사유가 조회 됩니다." position="absolute 130 0 843 20" id="caption4"/>
  9. <Static id="caption2" text="* 약물정보관련 문의(TEL." visible="false" position="absolute 0 520 265 540" style="color:#ff0000ff;"/>
  10. <Grid id="errlist1" taborder="1" binddataset="ds_result_prcperrlist" useinputpanel="false" position="absolute 0 21 843 291" autofittype="col" oncellclick="errlist1_oncellclick" onmousemove="errlist1_onmousemove">
  11. <Formats>
  12. <Format id="default">
  13. <Columns>
  14. <Column size="0"/>
  15. <Column size="94"/>
  16. <Column size="80"/>
  17. <Column size="160"/>
  18. <Column size="220"/>
  19. <Column size="246"/>
  20. </Columns>
  21. <Rows>
  22. <Row size="24" band="head"/>
  23. <Row size="24"/>
  24. </Rows>
  25. <Band id="head">
  26. <Cell/>
  27. <Cell col="1" text="구분"/>
  28. <Cell col="2" text="처방코드"/>
  29. <Cell col="3" text="처방명"/>
  30. <Cell col="4" text="오류내용"/>
  31. <Cell col="5" text="처방사유"/>
  32. </Band>
  33. <Band id="body">
  34. <Cell text="bind:flag"/>
  35. <Cell col="1" displaytype="combo" edittype="combo" text="bind:exmkndcd"/>
  36. <Cell col="2" text="bind:prcpcd" combodataset="ds_combo_exmkndcd" combocodecol="value" combodatacol="label"/>
  37. <Cell col="3" text="bind:prcpnm"/>
  38. <Cell col="4" text="bind:prcperr" tooltiptype="mouse,mouseleave"/>
  39. <Cell col="5" text="bind:resncnt"/>
  40. </Band>
  41. </Format>
  42. </Formats>
  43. </Grid>
  44. <Static id="caption6" text="사유선택" class="tit_2" position="absolute 0 302 176 322"/>
  45. <Grid id="grd_resnlist" taborder="2" binddataset="ds_hardcd" useinputpanel="false" position="absolute 0 324 843 510" autofittype="col" oncelldblclick="grd_resnlist_oncelldblclick">
  46. <Formats>
  47. <Format id="default">
  48. <Columns>
  49. <Column size="80"/>
  50. <Column size="751"/>
  51. </Columns>
  52. <Rows>
  53. <Row size="24" band="head"/>
  54. <Row size="24"/>
  55. </Rows>
  56. <Band id="head">
  57. <Cell text="코드"/>
  58. <Cell col="1" text="상세사유"/>
  59. </Band>
  60. <Band id="body">
  61. <Cell text="bind:hardcd"/>
  62. <Cell col="1" displaytype="text" edittype="text" text="bind:hardcdnm"/>
  63. </Band>
  64. </Format>
  65. </Formats>
  66. </Grid>
  67. <Button id="button2" taborder="3" text="사유적용" class="btn2" position="absolute 779 302 843 321" onclick="button2_onclick"/>
  68. <CheckBox id="bool_cond1" taborder="4" position="absolute 700 302 720 322"/>
  69. <Static id="caption3" text="일괄적용" position="absolute 720 302 780 322"/>
  70. <Button id="button1" taborder="5" text="계속저장" class="btn4" position="absolute 679 520 759 540" onclick="button1_onclick"/>
  71. <Button id="btn_cncl" taborder="6" text="처방취소" class="btn4" position="absolute 763 520 843 540" onclick="btn_cncl_onclick"/>
  72. <Static id="cpt_tooltip" text="처방전간 오류일시 오류내용 위에 마우스 커서를 두면 상대약품정보가 나옵니다!" visible="false" position="absolute 85 302 543 322" style="color:#ff0000ff;"/>
  73. </Layout>
  74. </Layouts>
  75. <Objects>
  76. <Dataset id="ds_result_prcperrlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  77. <ColumnInfo>
  78. <Column id="prcpcd" type="STRING" size="256"/>
  79. <Column id="prcpnm" type="STRING" size="256"/>
  80. <Column id="delflag" type="STRING" size="256"/>
  81. <Column id="flag" type="STRING" size="256"/>
  82. <Column id="errrow" type="STRING" size="256"/>
  83. <Column id="dcprcppkspec" type="STRING" size="256"/>
  84. <Column id="resncnt" type="STRING" size="256"/>
  85. <Column id="exmkndcd" type="STRING" size="256"/>
  86. </ColumnInfo>
  87. </Dataset>
  88. <Dataset id="ds_send" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false">
  89. <ColumnInfo>
  90. <Column id="hardcd" type="STRING" size="256"/>
  91. </ColumnInfo>
  92. <Rows>
  93. <Row/>
  94. </Rows>
  95. </Dataset>
  96. <Dataset id="ds_hardcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" reversesubsum="false" oncolumnchanged="ds_hardcd_oncolumnchanged">
  97. <ColumnInfo>
  98. <Column id="status" type="STRING" size="256"/>
  99. <Column id="hardcd" type="STRING" size="256"/>
  100. <Column id="hardcdnm" type="STRING" size="256"/>
  101. <Column id="resncmt" type="STRING" size="256"/>
  102. </ColumnInfo>
  103. </Dataset>
  104. <Dataset id="ds_err2_prcperrlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  105. <Dataset id="ds_err1_prcperrlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  106. <Dataset id="ds_err3_prcperrlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  107. <Dataset id="ds_err4_prcperrlist" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false"/>
  108. <Dataset id="ds_comresn" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  109. <ColumnInfo>
  110. <Column id="resncd" type="STRING" size="256"/>
  111. <Column id="resncnt" type="STRING" size="256"/>
  112. <Column id="resncdnm" type="STRING" size="256"/>
  113. </ColumnInfo>
  114. </Dataset>
  115. <Dataset id="ds_init" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  116. <ColumnInfo>
  117. <Column id="cond1" type="STRING" size="256"/>
  118. </ColumnInfo>
  119. <Rows>
  120. <Row>
  121. <Col id="cond1">Y</Col>
  122. </Row>
  123. </Rows>
  124. </Dataset>
  125. <Dataset id="ds_combo_exmkndcd" firefirstcount="0" firenextcount="0" useclientlayout="false" updatecontrol="true" enableevent="true" loadkeymode="keep" loadfiltermode="keep" reversesubsum="false">
  126. <ColumnInfo>
  127. <Column id="label" type="STRING" size="256"/>
  128. <Column id="value" type="STRING" size="256"/>
  129. </ColumnInfo>
  130. <Rows>
  131. <Row>
  132. <Col id="label">사유</Col>
  133. </Row>
  134. <Row>
  135. <Col id="label">처방전내병용금기</Col>
  136. <Col id="value">00</Col>
  137. </Row>
  138. <Row>
  139. <Col id="label">처방전내연령금기</Col>
  140. <Col id="value">01</Col>
  141. </Row>
  142. <Row>
  143. <Col id="label">처방전내안전성</Col>
  144. <Col id="value">02</Col>
  145. </Row>
  146. <Row>
  147. <Col id="label">처방전내최대용량</Col>
  148. <Col id="value">03</Col>
  149. </Row>
  150. <Row>
  151. <Col id="label">처방전내최대기간</Col>
  152. <Col id="value">04</Col>
  153. </Row>
  154. <Row>
  155. <Col id="label">처방전내저함량</Col>
  156. <Col id="value">05</Col>
  157. </Row>
  158. <Row>
  159. <Col id="label">처방전내임부금기</Col>
  160. <Col id="value">06</Col>
  161. </Row>
  162. <Row>
  163. <Col id="label">처방전간 병용금기</Col>
  164. <Col id="value">07</Col>
  165. </Row>
  166. <Row>
  167. <Col id="label">처방전간 성분별 중복처방</Col>
  168. <Col id="value">08</Col>
  169. </Row>
  170. <Row>
  171. <Col id="label">처방전내 치료중복</Col>
  172. <Col id="value">20</Col>
  173. </Row>
  174. <Row>
  175. <Col id="label">처방전간 치료중복</Col>
  176. <Col id="value">40</Col>
  177. </Row>
  178. <Row>
  179. <Col id="label">처방전내 2주 병용금기</Col>
  180. <Col id="value">21</Col>
  181. </Row>
  182. <Row>
  183. <Col id="label">처방전간 2주 병용금기</Col>
  184. <Col id="value">41</Col>
  185. </Row>
  186. <Row>
  187. <Col id="label">처방전내 1성분병용기간금기</Col>
  188. <Col id="value">22</Col>
  189. </Row>
  190. <Row>
  191. <Col id="label">처방전간 효능군중복</Col>
  192. <Col id="value">40</Col>
  193. </Row>
  194. <Row>
  195. <Col id="label">처방전간 1성분병용기간금기</Col>
  196. <Col id="value">42</Col>
  197. </Row>
  198. <Row>
  199. <Col id="label">처방전내 병용연령성별제한</Col>
  200. <Col id="value">23</Col>
  201. </Row>
  202. <Row>
  203. <Col id="label">처방전간 병용연령성별제한</Col>
  204. <Col id="value">43</Col>
  205. </Row>
  206. </Rows>
  207. </Dataset>
  208. </Objects>
  209. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  210. * System Name :
  211. * Job Name :
  212. * Creator :
  213. * Make Date : 2015-02-16
  214. * Description :
  215. *---------------------------------------------------------------------------------------
  216. * Modify Date Modifier Modify Description
  217. *---------------------------------------------------------------------------------------
  218. * 2015-02-16 Live Converter TF->XP
  219. *
  220. *---------------------------------------------------------------------------------------
  221. ****************************************************************************************/
  222. include "com_commonxp::comm_main.xjs";
  223. var cRow = "";
  224. function SPMMO16101_oninit(obj:Form, e:InitEventInfo)
  225. {
  226. frmf_initForm(obj); // 초기화
  227. ds_result_prcperrlist.copyData(arg_ds_result_prcperrlist);
  228. caption2.text = caption2.text + opener.ds_initsrch_callnoinfo.lookup("trgtcd", "pharmacy", "trgtcdnm");
  229. }
  230. function SPMMO16101_onload(obj:Form, e:LoadEventInfo)
  231. {
  232. var flag = "";
  233. var exmkndcd = "";
  234. var currow = 0;
  235. var cnt1 = 0;
  236. var cnt2 = 0;
  237. var cnt3 = 0;
  238. var listcnt = ds_err4_prcperrlist.rowcount;
  239. ds_err4_prcperrlist.addColumn("resncnt", "string");
  240. ds_err4_prcperrlist.addColumn("resncntcd", "string");
  241. dsf_copyColInfo(ds_err4_prcperrlist, ds_result_prcperrlist);
  242. for ( var i=0; i < ds_result_prcperrlist.rowcount; i++ ) {
  243. currow = i + 1;
  244. flag = ds_result_prcperrlist.getColumn(i, "flag");
  245. if ( flag == "5" || flag == "6" || flag == "7" || flag == "51" || flag == "52") {
  246. var row = ds_err4_prcperrlist.addRow();
  247. ds_err4_prcperrlist.copyRow(row, ds_result_prcperrlist, i);
  248. cnt2++;
  249. listcnt++;
  250. }
  251. if ( flag == "4") {
  252. exmkndcd = ds_result_prcperrlist.getColumn(currow, "exmkndcd");
  253. if (exmkndcd == "08" || exmkndcd == "40") { // 처방전간 병용금기, 처방전간 효능군 중복
  254. var row = ds_err4_prcperrlist.addRow();
  255. ds_err4_prcperrlist.copyRow(row, ds_result_prcperrlist, i);
  256. ds_err4_prcperrlist.setColumn(listcnt, "resncntcd", "X");
  257. ds_err4_prcperrlist.setColumn(listcnt, "resncnt", "정보제공(사유입력 불필요)");
  258. cnt2++;
  259. listcnt++;
  260. }
  261. }
  262. }
  263. var srchLength1 = ds_err2_prcperrlist.rowcount;
  264. var srcNodeListMainLength = opener.ds_main_prcplist.rowcount;
  265. var chkNewPrcp = 0;
  266. if ( srchLength1 > 0 ) {
  267. for ( var i = 0; i < srchLength1; i++ ) {
  268. var prcpcd = ds_err4_prcperrlist.getColumn(i, "prcpcd");
  269. chkNewPrcp = 0;
  270. for ( var j=0; j < srcNodeListMainLength; j++ ) {
  271. if ( prcpcd == opener.ds_main_prcplist.getColumn (i, "prcpcd") ) {
  272. chkNewPrcp++;
  273. break;
  274. }
  275. }
  276. if ( chkNewPrcp == 0 ) {
  277. ds_err4_prcperrlist.setColumn(i, "errrow", "X");
  278. }
  279. }
  280. }
  281. //CP 미래처방 저장 시, 취소 불가능하도록 처리
  282. var mainObj = frmf_getMainViewer();
  283. var curCpObj = mainObj.frmf_findPopup("SMMMP00800"); //활성화된 CP Main 화면 object loading
  284. var cpSaveFlag = opener.frmf_getParameter("SMMMP00800_cpsaveflag");
  285. if( curCpObj != null && cpSaveFlag == "T" ){
  286. btn_cncl.enable = false;
  287. }
  288. //var dp_cnt = getNodesetCount("/root/result/prcperrlist[dphospdrnm !='']");
  289. var temp_cnt = ds_result_prcperrlist.rowcount;
  290. var dp_cnt = 0;
  291. for( var i = 0; i < temp_cnt; i++ ) {
  292. if( ds_result_prcperrlist.getColumn(i, "dphospdrnm") != '' ) {
  293. dp_cnt++;
  294. }
  295. }
  296. if(dp_cnt > 0) {cpt_tooltip.visible = true;}
  297. }
  298. function fSelectResn(idx) {
  299. var currow = ds_result_prcperrlist.rowposition;
  300. for ( var i = 0; i < grd_resnlist.rowcount; i++ ) {
  301. if ( i != currow ) {
  302. ds_hardcd.setColumn(i, "status", "N" );
  303. } else {
  304. ds_hardcd.setColumn(i, "status", "Y" );
  305. }
  306. }
  307. var resncnts = "instcd|pid|orddd|cretno|ordtype|orddeptcd|prcpdd|prcpno|prcphistno|resnflag|resncd|resncnts^" ;
  308. var pid = opener.ds_paminfo.getColumn(0, "pid");
  309. var prcpgenrflag = opener.ds_paminfo.getColumn(0, "prcpgenrflag");
  310. var orddd = "";
  311. if ( prcpgenrflag == "O" ) {
  312. orddd = opener.ds_paminfo.getColumn(0, "orddd");
  313. } else {
  314. orddd = opener.ds_paminfo.getColumn(0, "indd");
  315. }
  316. var cretno = opener.ds_paminfo.getColumn(0, "cretno");
  317. var orddeptcd = opener.ds_paminfo.getColumn(0, "orddeptcd");
  318. var chkresncnts = "-";
  319. var chkresnflag = "";
  320. var flag = ds_err4_prcperrlist.getColumn(idx, "flag");
  321. if( flag == "5") { //최대용량
  322. chkresnflag = "K";
  323. }else if(flag == "6"){ //최대기간
  324. chkresnflag = "L";
  325. }else if(flag == "7"){ //저함량
  326. chkresnflag = "H";
  327. }
  328. var chkresncd = ds_err4_prcperrlist.getColumn(idx, "resncntcd");
  329. var chkresncnt = ds_err4_prcperrlist.getColumn(idx, "resncnt");
  330. var instcd = sysf_getUserInfo("dutplceinstcd") ;
  331. resncnts = resncnts + instcd + "|" + pid + "|" + orddd + "|" + cretno + "|" + prcpgenrflag + "|" + orddeptcd + "|-|0|0|"+chkresnflag+"|" + chkresncd + "|" + chkresncnt + "^" ;
  332. ds_comresn.setColumn(0, "resncd", chkresncd);
  333. ds_comresn.setColumn(0, "resncnt", resncnts);
  334. ds_comresn.setColumn(0, "resncdnm", chkresncnt);
  335. }
  336. function fClick_resnlist() {
  337. if(utlf_isNull(cRow)){
  338. sysf_messageBox ( "선택 된 사유가 없습니다.\n\n처방을 클릭 하면 아래에 사유 항목이 조회 됩니다." , "I" );
  339. return;
  340. }
  341. var resncntcd = ds_hardcd.getColumn(ds_hardcd.rowposition, "hardcd");
  342. var resncntnm = ds_hardcd.getColumn(ds_hardcd.rowposition, "hardcdnm");
  343. var resnrow = ds_hardcd.rowposition;
  344. if(resncntcd == "E") {
  345. ds_err4_prcperrlist.getColumn(cRow, "resncntcd", resncntcd);
  346. errlist1.setCellPos( errlist1.getBindCellIndex("body", "resncnt") );
  347. errlist1.setCellProperty('body', errlist1.getBindCellIndex("body", "resncnt"), 'edittype', 'text');
  348. //errlist1.colDisabled(errlist1.colRef("resncnt")) = false;
  349. } else {
  350. if(ds_init.getColumn(0, "cond1") == "Y") { // 일괄 적용이면
  351. var checkLength = ds_err4_prcperrlist.rowcount;
  352. var selectFlag = ds_err4_prcperrlist.getColumn(cRow, "flag"); // 처방사유구분
  353. var selectKind = ds_err4_prcperrlist.getColumn(cRow, "exmkndcd"); //체크항목구분
  354. var checkFlag = "";
  355. var checkKind = "";
  356. for ( var i= 0; i<checkLength; i++ ) {
  357. checkFlag = ds_err4_prcperrlist.getColumn(i, "flag");
  358. checkKind = ds_err4_prcperrlist.getColumn(i, "exmkndcd");
  359. if (checkFlag == "4") { // 정보제공 사유 입력 불필요
  360. continue;
  361. } else if(checkFlag == "5") {
  362. if(selectFlag == checkFlag && selectKind == checkKind) {
  363. ds_err4_prcperrlist.setColumn(i, "resncntcd", resncntcd);
  364. ds_err4_prcperrlist.setColumn(i, "resncnt", resncntnm);
  365. fSelectResn(resnrow);
  366. }
  367. } else {
  368. if(selectFlag == checkFlag) {
  369. ds_err4_prcperrlist.setColumn(i, "resncntcd", resncntcd);
  370. ds_err4_prcperrlist.setColumn(i, "resncnt", resncntnm);
  371. fSelectResn(resnrow);
  372. }
  373. }
  374. }
  375. } else {
  376. ds_err4_prcperrlist.setColumn(cRow, "resncntcd", resncntcd);
  377. ds_err4_prcperrlist.setColumn(cRow, "resncnt", resncntnm);
  378. fSelectResn(resnrow);
  379. }
  380. }
  381. }
  382. function errlist1_oncellclick(obj:Grid, e:GridClickEventInfo)
  383. {
  384. if (e.row > -1) {
  385. cRow = ds_err1_prcperrlist.rowposition;
  386. var flag = ds_err4_prcperrlist.getColumn(ds_err1_prcperrlist.rowposition, "flag");
  387. if( flag == "5") {
  388. var exmkndcd = ds_err4_prcperrlist.getColumn(ds_err1_prcperrlist.rowposition, "exmkndcd");
  389. if (exmkndcd == "00" ) {
  390. ds_send.setColumn(0,"hardcd", "411"); //처방전간 DUR 병용금기 사유항목
  391. } else if (exmkndcd == "01" ) {
  392. ds_send.setColumn(0,"hardcd", "412"); //처방전간 DUR 연령금기 사유항목
  393. } else if (exmkndcd == "05" ) {
  394. ds_send.setColumn(0,"hardcd", "413"); //처방전간 DUR 저함량 사유항목
  395. } else if (exmkndcd == "06" ) {
  396. ds_send.setColumn(0,"hardcd", "414"); //처방전간 DUR 임부금기 사유항목
  397. } else {
  398. ds_send.setColumn(0,"hardcd", "405"); // 처방전간 DUR 기본 사유항목
  399. }
  400. }else if(flag == "6"){
  401. ds_send.setColumn(0,"hardcd", "405"); //최대기간 사유항목
  402. }else if(flag == "7"){
  403. ds_send.setColumn(0,"hardcd", "405"); //저함량 사유항목
  404. }else if(flag == "51"){
  405. ds_send.setColumn(0,"hardcd", "406"); //처방전간 병용금기 사유항목
  406. }else if(flag == "52"){
  407. ds_send.setColumn(0,"hardcd", "407"); //처방전간 중복성분 사유항목
  408. } else {
  409. return;
  410. }
  411. var oParam = {};
  412. oParam.id = "TRMMB16401";
  413. oParam.service = "prcpbaseapp.EnvInfoMngt";
  414. oParam.method = "reqGetHardCodeCD";
  415. oParam.inds = "req=ds_send"
  416. oParam.outds = "ds_hardcd=hardcd";
  417. oParam.async = false;
  418. tranf_submit(oParam);
  419. }
  420. function grd_resnlist_oncelldblclick(obj:Grid, e:GridClickEventInfo)
  421. {
  422. if (e.row > -1 ) {
  423. fClick_resnlist();
  424. }
  425. }
  426. function button2_onclick(obj:Button, e:ClickEventInfo)
  427. {
  428. if(cRow != -1 && grd_resnlist.row != -1) {
  429. fClick_resnlist();
  430. }else{
  431. sysf_messageBox ( "선택된 사유가 없습니다." , "I" );
  432. }
  433. }
  434. function button1_onclick(obj:Button, e:ClickEventInfo)
  435. {
  436. var srchLength1 = ds_err4_prcperrlist.rowcount;
  437. var delcnt = 0;
  438. var resncnt = 0;
  439. if ( srchLength1 > 0 ) {
  440. for ( var i = 0; i < srchLength1; i++ ) {
  441. if ( ds_err4_prcperrlist.getColumn(i, "delflag") == "Y" ) {
  442. delcnt++;
  443. }
  444. if ( ds_err4_prcperrlist.getColumn(i, "delflag") != "Y" && ds_err4_prcperrlist.getColumn(i, "resncnt") == "" ) {
  445. resncnt++;
  446. }
  447. if ( ds_err4_prcperrlist.getColumn(i, "delflag") != "Y" && ds_err4_prcperrlist.getColumn(i, "resncnt") == "-" ) {
  448. resncnt++;
  449. }
  450. if ( ds_err4_prcperrlist.getColumn(i, "delflag") != "Y" && ds_err4_prcperrlist.getColumn(i, "resncnt") == "(이곳에 사유입력을 하세요)" ) {
  451. resncnt++;
  452. }
  453. }
  454. if ( srchLength1 != delcnt && resncnt > 0) {
  455. sysf_messageBox ( "처방사유를", "C001" );
  456. return;
  457. }
  458. }
  459. var srcNodeListMainLength = opener.ds_main_prcplist.rowcount;
  460. var prcpcd = "";
  461. for (var i = 0; i < srcNodeListMainLength; i++) {
  462. prcpcd = opener.ds_main_prcplist.getColumn(i, "prcpcd");
  463. for (var j = 0; j < srchLength1; j++) {
  464. if ( prcpcd == ds_err4_prcperrlist.getColumn(j, "prcpcd")) {
  465. if ( ds_err4_prcperrlist.getColumn(j, "delflag") == "Y" ) {
  466. opener.ds_main_prcplist.setColumn(i, "tempcol6", "D");
  467. delcnt++;
  468. } else {
  469. fSelectResn(j);
  470. opener.ds_main_prcplist(i, "tempcol19", ds_comresn.getColumn(0, "resncnt"));
  471. opener.ds_result_savedrprcplist(i, "tempcol19", ds_comresn.getColumn(0, "resncnt"));
  472. }
  473. }
  474. }
  475. }
  476. //심평원 DUR 적용 20120101 오류팝업 사유를 심평원 DUR파라미터인 결과전문에 셋팅
  477. var rsrt_cnt = opener.ds_result_kdurchkrslt.rowcount;
  478. var err_cnt = ds_err4_prcperrlist.rowcount;
  479. if (rsrt_cnt > 0 && err_cnt > 0) {
  480. for (var a = 0; a < rsrt_cnt; a++) {
  481. var rslt_prcpcd = opener.ds_result_kdurchkrslt.getColumn(a, "rslt_prcpcd");
  482. var rslt_exm_knd_cd = opener.ds_result_kdurchkrslt.getColumn(a, "rslt_exm_knd_cd");
  483. for (var b = 0; b < err_cnt; b++) {
  484. var err_prcpcd = ds_err4_prcperrlist.getColumn(b, "prcpcd");
  485. var err_exmkndcd = ds_err4_prcperrlist.getColumn(b, "exmkndcd");
  486. if(rslt_prcpcd == err_prcpcd && rslt_exm_knd_cd == err_exmkndcd) {
  487. opener.ds_result_kdurchkrslt.setColumn(a, "rslt_rs_cd", ds_err4_prcperrlist.getColumn(b, "resncntcd"));
  488. opener.ds_result_kdurchkrslt.setColumn(a, "rslt_rs_txt", ds_err4_prcperrlist.getColumn(b, "resncnt"));
  489. }
  490. }
  491. }
  492. }
  493. if ( delcnt > 0 ) {
  494. opener.fDeleteRow ( "noselect" );
  495. opener.frmf_setParameter ( "SPMMO16101_rtn2", "D" );
  496. }
  497. opener.frmf_setParameter ( "SPMMO16101_rtn1", "Y" );
  498. close();
  499. }
  500. function btn_cncl_onclick(obj:Button, e:ClickEventInfo)
  501. {
  502. opener.frmf_setParameter("SPMMO16101_rtn1", "N");
  503. close();
  504. }
  505. function errlist1_onmousemove(obj:Grid, e:GridMouseEventInfo)
  506. {
  507. var temp_cnt = ds_result_prcperrlist.rowcount;
  508. var dp_cnt = 0;
  509. for( var i = 0; i < temp_cnt; i++ ) {
  510. if( ds_result_prcperrlist.getColumn(i, "dphospdrnm") != '' ) {
  511. dp_cnt++;
  512. }
  513. }
  514. if(dp_cnt > 0){
  515. if (e.col == 4) {
  516. var tip_dphospnm = ds_result_prcperrlist.getColumn(e.row, "dphospnm");
  517. var tip_dphosptel = ds_result_prcperrlist.getColumn(e.row, "dphosptel");
  518. var tip_dphospdrnm = ds_result_prcperrlist.getColumn(e.row, "dphospdrnm");
  519. var tip_dpprmcnm = ds_result_prcperrlist.getColumn(e.row, "dpprmcnm");
  520. var tip_dpprmctel = ds_result_prcperrlist.getColumn(e.row, "dpprmctel");
  521. var tip_dpprmcpnm = ds_result_prcperrlist.getColumn(e.row, "dpprmcpnm");
  522. var tip_dphospdd = ds_result_prcperrlist.getColumn(e.row, "dphospdd");
  523. var tip_dphospprcpnm = ds_result_prcperrlist.getColumn(e.row, "dphospprcpnm");
  524. var tip_dphospqty = ds_result_prcperrlist.getColumn(e.row, "dphospqty");
  525. errlist1.tooltiptext = "■ 다른 처방전 정보 ■\n"
  526. + tip_dphospnm + " " + tip_dphosptel + " " + tip_dphospdrnm + '\n'
  527. + tip_dpprmcnm + " " + tip_dpprmctel + " " + tip_dpprmcpnm + '\n'
  528. + tip_dphospdd + " " + tip_dphospprcpnm + " " + tip_dphospqty;
  529. }
  530. }
  531. }]]></Script>
  532. </Form>
  533. </FDL>