MMR07202.xjs 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Script type="xscript4.0"><![CDATA[/**
  3. * MMR07201.js
  4. * SMMMR07201_전과기록JCI.xrw
  5. */
  6. /**
  7. * @desc : [item코드목록]
  8. * "0000960003" //진단명
  9. * "0000931001" //주호소 또는 입원사유
  10. * "0000062001" //경과 및 특이소견
  11. * "0000500001" //수술 및 시술
  12. * "0001113001" //투약내역
  13. * "0000792001" //전과사유
  14. * "0022830001" //전과시 환자상태
  15. * [버튼목록]
  16. * "btn_medprcp_0001113001"//투약처방조회
  17. */
  18. var gItemCds = new Array(
  19. "0000960003" //진단명
  20. , "0000931001" //주호소 또는 입원사유
  21. , "0000062001" //경과 및 특이소견
  22. , "0000500001" //수술 및 시술
  23. , "0001113001" //투약내역
  24. , "0000792001" //전과사유
  25. , "0022830001" //전과시 환자상태
  26. , "0022826001" //Care Plan
  27. );
  28. var gItemCdsTextArea = new Array(
  29. "0000960003" //진단명
  30. , "0000931001" //주호소 또는 입원사유
  31. , "0000062001" //경과 및 특이소견
  32. , "0000500001" //수술 및 시술
  33. , "0001113001" //투약내역
  34. , "0000792001" //전과사유
  35. , "0022830001" //전과시 환자상태
  36. , "0022826001" //Care Plan
  37. );
  38. /**
  39. * @desc : 확장버튼(이미지,가계도,추가기록)을 기록여부에 따라 표시를 위한 버튼목록
  40. * @id :
  41. * @authur : 안치원
  42. * @history : 2009.09.09 신규 안치원 ACW_090909A
  43. var gExtnBtnIds = new Array(
  44. "btn_imge_0008224001" //S&O 이미지버튼
  45. , "btn_fmy_0008224001" //S&O 가계도버튼
  46. , "btn_etcrec_0008224001" //S&O 추가기록버튼
  47. , "btn_diag_0001129001" //A 진단버튼
  48. , "btn_imge_0001129001" //A 이미지버튼
  49. , "btn_etcrec_0001129001" //A 추가기록버튼
  50. , "btn_prcp_0000080001" //P 처방버튼
  51. , "btn_imge_0000080001" //P 이미지버튼
  52. , "btn_etcrec_0000080001" //P 추가기록버튼
  53. );
  54. */
  55. var gExtnBtnIds = new Array(
  56. "btn_medprcp_0001113001"//투약처방조회
  57. );
  58. /****************************************************************************************
  59. * Function : fLoadData
  60. * Description : 기록데이터 조회
  61. * retrun type :
  62. ****************************************************************************************/
  63. function fLoadData()
  64. {
  65. lf_setRecData(gItemCds);
  66. /*
  67. InitPgmFormData();
  68. InitUnitFormData(gItemCds);
  69. */
  70. }
  71. function fChkPreSave(signedYn)
  72. {
  73. //care plan
  74. var nRow = ds_data_formdegn.findRow("degnitemcd", "0022826001");
  75. var itemNm = ds_data_formdegn.getColumn(nRow, "itemnm");
  76. var rtnVal = grup_base.ivw_0022826001.fChkGrdPreSave(itemNm,true);
  77. if(rtnVal == false){
  78. return rtnVal;
  79. }
  80. }
  81. /**
  82. * @desc : 서식 데이터 Clear
  83. * @id :
  84. * @event : xforms-ready
  85. * @return : void
  86. * @authur : 박종훈
  87. */
  88. function fClearComnFormData()
  89. {
  90. if (gMaxSectionID != "")
  91. {
  92. var MaxObj = document.controls("lbl_" + gMaxSectionID);
  93. MaxObj.dispatch("onclick");
  94. }
  95. ClearComnFormData(gItemCds);
  96. clearData();
  97. //초기화 후 기본내용 조회
  98. fExtnInitFormRec();
  99. //포커스 처리
  100. SetDefFocusMTX(gItemCds);
  101. }
  102. /**
  103. * @desc : 기록 인스턴스 연결
  104. * @id :
  105. * @event : xforms-ready
  106. * @return : void
  107. * @authur : 박종훈
  108. */
  109. function fSetRecItemValue(reciteminfo)
  110. {
  111. return SetCommMediFormValue(gItemCds, reciteminfo);
  112. }
  113. /****************************************************************************************
  114. * Function : fExtnInitFormRec
  115. * Description : 확장서식 기록 초기 설정
  116. * retrun type :
  117. ****************************************************************************************/
  118. function fExtnInitFormRec()
  119. {
  120. if (parent.fGetFormRec("status") == "C")
  121. {
  122. }
  123. }
  124. /****************************************************************************************
  125. * Function : fSetSizeFormDiag
  126. * Description : 서식 진단명 사이즈 조절
  127. * retrun type :
  128. ****************************************************************************************/
  129. function fSetSizeFormDiag()
  130. {
  131. grup_base.ivw_0000960003.fInitPage(false, parseInt(grup_base.ivw_0000960003.position.height), parseInt(grup_base.ivw_0000960003.position.width));
  132. }
  133. var gLoadFormCnts = 0;
  134. /****************************************************************************************
  135. * Function : fFormReady()
  136. * Description : 화면 로딩후 초기화 작업 수행
  137. * retrun type :
  138. ****************************************************************************************/
  139. function fFormReady()
  140. {
  141. this.ComnFormObj = this.grup_base;
  142. dsf_createDsRow("ds_temp_mainrecitem",
  143. [{col:"formxrw", val:""}]);
  144. // 공통서식의 초기 recitem 정보. 기록 데이터 조합시 사용
  145. ds_temp_mainrecitem.assign(ds_data_recitem);
  146. //섹션사이즈초기화
  147. lf_setSectionSize(gItemCds, "grup_base.tar_0000960003", "grup_base.tar_0022826001"); //683
  148. //기본 첫번째 부분서식을 로딩해서 보여준다.
  149. //dispOnLoadComplete(COMN_FORM);//COMN_FORM : 1
  150. // lf_checkUnitForm(gItemCds); // 부분서식 로딩
  151. lf_AllLoadUnitFormExpand(gItemCds); // 전체 로딩
  152. lf_setRecData(gItemCds);
  153. }
  154. /****************************************************************************************
  155. * Function : fLoadUnitForm()
  156. * Description : 부분서식 로딩
  157. * retrun type :
  158. ****************************************************************************************/
  159. function fLoadUnitForm()
  160. {
  161. initSection(gItemCds);
  162. }
  163. /****************************************************************************************
  164. * Function : fOnLoadComplete()
  165. * Description : 부분서식 로딩후 후처리
  166. * retrun type :
  167. ****************************************************************************************/
  168. function fOnLoadComplete()
  169. {
  170. var curLoadFormCd = frmf_getParameter("loadformcd");
  171. frmf_setParameter("loadformcd", "");
  172. var nFindRow = ds_data_unitformmast.findRowExpr("formcd=='" + curLoadFormCd + "' && loaded != 'true'");
  173. var fstLevlItemCd = ds_data_unitformmast.getColumn(nFindRow, "orgsupdegnitemcd");
  174. var ivwObj = ComnFormObj.components["ivw_" + fstLevlItemCd];
  175. var unitformload = ds_data_unitformmast.getColumn(nFindRow, "loaded");
  176. if(!utlf_isNull(ivwObj) && unitformload != "true")
  177. {
  178. //setFstLevlItemCd(ivwObj, curLoadFormCd);
  179. var nRow = ds_data_unitformmast.findRow("formcd", curLoadFormCd);
  180. ds_data_unitformmast.setColumn(nRow, "loaded", "true");
  181. }
  182. //진단명 부분서식 로딩후 처리
  183. if(fstLevlItemCd == '0000960003')
  184. {
  185. fSetSizeFormDiag();
  186. }
  187. gLoadFormCnts++;
  188. utlf_addLog("@@@@@ gItemCds.length : " + gItemCds.length + " gLoadFormCnts : " + gLoadFormCnts );
  189. if(gItemCds.length == gLoadFormCnts)
  190. {
  191. fExtnInitFormRec();
  192. dispOnLoadComplete(UNIT_FORM);
  193. }
  194. }
  195. /****************************************************************************************
  196. * Function : fGetDefData()
  197. * Description : 동일 서식이 떠있을 경우 내부 인스턴스 로딩 후 디폴트 조회내용 조회
  198. * retrun type :
  199. ****************************************************************************************/
  200. function fGetDefData()
  201. {
  202. dispOnLoadComplete(UNIT_FORM);
  203. }
  204. /****************************************************************************************
  205. * Function : fSetSizeFormCC
  206. * Description : 전과시 환자상태 화면 로딩 후 사이즈 조절
  207. * retrun type :
  208. ****************************************************************************************/
  209. function fSetSizeFormCC(gItemCd_MMR07201)
  210. {
  211. //Care Plan 화면 로딩
  212. if(gItemCd_MMR07201 == "0022830001")
  213. grup_base.ivw_0022830001.fInitPage(false, parseInt(grup_base.ivw_0022830001.position.height), parseInt(grup_base.ivw_0022830001.position.width));
  214. }
  215. /****************************************************************************************
  216. * Function : initFormAtLast_MMR01100I
  217. * Description : MMR01100.js에서 서식load를 완료한 후에 호출한다.
  218. * retrun type :
  219. ****************************************************************************************/
  220. function initFormAtLast_MMR01100I() {
  221. var srcformcd = parent.fGetFormMast("srcformcd");
  222. utlf_addLog("srcformcd ::::" + srcformcd + " status:::"+parent.fGetFormRec("status"));
  223. if (srcformcd == "0000001595"){//전입기록의 기본서식코드 : 0000001595
  224. //신규서식로딩의 경우만 전출기록 -> 전입기록 연동
  225. if (parent.fGetFormRec("status") == "C"){
  226. ds_send_extninfo.clearData();
  227. var nRow = ds_send_extninfo.addRow();
  228. ds_send_extninfo.setColumn(nRow, "infoflag", "recdata");
  229. ds_send_extninfo.setColumn(nRow, "recdataflag", "transferIn");
  230. ds_send_extninfo.setColumn(nRow, "pid", parent.fGetFormRec("pid"));
  231. ds_send_extninfo.setColumn(nRow, "orddd", parent.fGetFormRec("orddd"));
  232. ds_send_extninfo.setColumn(nRow, "cretno", parent.fGetFormRec("cretno"));
  233. ds_send_extninfo.setColumn(nRow, "fromsrcformcd", "0000001596"); //전출기록의 기본서식코드
  234. ds_send_extninfo.setColumn(nRow, "toformcd", parent.fGetFormMast("formcd"));
  235. //2010.01.14 dhkim - srcformcd 파라미터 누락되어 추가
  236. ds_send_extninfo.setColumn(nRow, "srcformcd", srcformcd);//전입기록
  237. //2010.03.08 dhkim formrecdd추가
  238. ds_send_extninfo.setColumn(nRow, "formrecdd", parent.fGetFormRec("formrecdd"));
  239. dsf_setDefaultVal(ds_send_extninfo, "dschdd:99991231");
  240. var oParam = {};
  241. oParam.id = "TRMMR01302";
  242. oParam.service = "medirecapp.RecIf";
  243. oParam.method = "reqGetFormRecExtnInfo";
  244. oParam.inds = "req=ds_send_extninfo";
  245. oParam.outds = "ds_main_extninfo_resultinfo=resultinfo ds_main_extninfo_staffauthinfo=staffauthinfo ds_main_extninfo_oprinfo=oprinfo "
  246. + "ds_main_extninfo_oplistinfo=oplistinfo ds_main_extninfo_recitem=recitem ds_main_extninfo_drlistinfo=drlistinfo "
  247. + "ds_data_diagcdlist=diagcdlist ds_main_extninfo_selectoplist=selectoplist ds_main_extninfo_dscinoutinfo=dscinoutinfo "
  248. + "ds_main_extninfo_rectextinfo=rectextinfo ds_main_extninfo_anstdrlistinfo=anstdrlistinfo ds_main_extninfo_oproomlistinfo=oproomlistinfo "
  249. + "ds_main_extninfo_recseqinfo=recseqinfo ds_main_extninfo_etcinfo=etcinfo";
  250. oParam.async = false;
  251. oParam.callback = "cf_TRMMR01302";
  252. tranf_submit(oParam);
  253. if(arErrorCode.pop("TRMMR01302") > -1)
  254. {
  255. /*
  256. copyNodeset(gPageInfo.recItemRef2, "/root/main/extninfo/recitem", "replace", model, model);
  257. fLoadData();
  258. */
  259. fSetCopyRecData();
  260. }
  261. }
  262. //전입기록시 투약처방버튼 hidden
  263. grup_base.btn_medprcp_0001113001.visible = false;
  264. } else if (srcformcd == "0000001596"){//전출기록의 기본서식코드 : 0000001596
  265. //전출기록시 투약처방버튼 visible
  266. grup_base.btn_medprcp_0001113001.visible = true;
  267. //2010.01.12 안치원 - 입원초진의 주호소 -> 전출기록의 주호소
  268. if (parent.fGetFormRec("status") == "C"){
  269. ds_send_extninfo.clearData();
  270. var nRow = ds_send_extninfo.addRow();
  271. ds_send_extninfo.setColumn(nRow, "infoflag", "rectext");
  272. ds_send_extninfo.setColumn(nRow, "pid", parent.fGetFormRec("pid"));
  273. ds_send_extninfo.setColumn(nRow, "orddd", parent.fGetFormRec("orddd"));
  274. ds_send_extninfo.setColumn(nRow, "cretno", parent.fGetFormRec("cretno"));
  275. ds_send_extninfo.setColumn(nRow, "srcformcd", "0000000003"); //입원초진기록의 기본서식코드(입원초진의 주호소를 default 연동위해)
  276. ds_send_extninfo.setColumn(nRow, "fstlevlitembasecds", "0000931");
  277. dsf_setDefaultVal(ds_send_extninfo, "dschdd:99991231");
  278. var oParam = {};
  279. oParam.id = "TRMMR01302";
  280. oParam.service = "medirecapp.RecIf";
  281. oParam.method = "reqGetFormRecExtnInfo";
  282. oParam.inds = "req=ds_send_extninfo";
  283. oParam.outds = "ds_main_extninfo_resultinfo=resultinfo ds_main_extninfo_staffauthinfo=staffauthinfo ds_main_extninfo_oprinfo=oprinfo "
  284. + "ds_main_extninfo_oplistinfo=oplistinfo ds_main_extninfo_recitem=recitem ds_main_extninfo_drlistinfo=drlistinfo "
  285. + "ds_data_diagcdlist=diagcdlist ds_main_extninfo_selectoplist=selectoplist ds_main_extninfo_dscinoutinfo=dscinoutinfo "
  286. + "ds_main_extninfo_rectextinfo=rectextinfo ds_main_extninfo_anstdrlistinfo=anstdrlistinfo ds_main_extninfo_oproomlistinfo=oproomlistinfo "
  287. + "ds_main_extninfo_recseqinfo=recseqinfo ds_main_extninfo_etcinfo=etcinfo";
  288. oParam.async = false;
  289. oParam.callback = "cf_TRMMR01302";
  290. tranf_submit(oParam);
  291. if(arErrorCode.pop("TRMMR01302") > -1)
  292. {
  293. /*
  294. var itemVal = new ITEMVAL();
  295. itemVal.reccnts = ds_main_extninfo_rectextinfo.lookup("fstlevlitembasecd", "0000931", "viewcnts");
  296. setFormItemValue("0000931", itemVal,false);
  297. */
  298. var nFindRow = ds_main_extninfo_rectextinfo.findRow("fstlevlitembasecd", "0000931");
  299. var reccnts = ds_main_extninfo_rectextinfo.getColumn(nFindRow, "viewcnts");
  300. if( !utlf_isNull(reccnts) ){
  301. nFindRow = ds_data_recitem.findRow("degnitemlevlcd", "0000931");
  302. ds_data_recitem.setColumn(nFindRow, "reccnts", reccnts);
  303. var fstlevlitemcd = ds_data_recitem.getColumn(nFindRow, "fstlevlitemcd");
  304. var tarObj = ComnFormObj.components["tar_" + fstlevlitemcd];
  305. if(tarObj != null)
  306. tarObj.value = reccnts;
  307. }
  308. }
  309. //투약처방내역이 없을때 default로 투약처방내역 연동
  310. var degnitemlevlcd = "0001113";
  311. var itemCd = "0001113001";
  312. var nFindRow = ds_data_recitem.findRow("fstlevlitemcd", itemCd);
  313. var prcpList = ds_data_recitem.getColumn(nFindRow, "reccnts");
  314. if(utlf_isNull(prcpList)){
  315. GetPatDrugPrcpList_MMR07201(itemCd);//투약처방조회
  316. }
  317. }
  318. }
  319. }
  320. /****************************************************************************************
  321. * Function : fSetCopyRecData
  322. * Description : BriefOpNote 정보 연계
  323. * retrun type :
  324. ****************************************************************************************/
  325. function fSetCopyRecData()
  326. {
  327. utlf_addLog(" fGetFormRec(status) : " + fGetFormRec("status") + "\n\n" + ds_main_extninfo_recitem.saveXML() );
  328. if(fGetFormRec("status") == "C")
  329. {
  330. var fstlevlitemcd = "";
  331. var degnitemcd = "";
  332. var reccnts = "";
  333. var sRow = "";
  334. // 1계층 MTX값 세팅, 조회해온 기록값 rowcount 만큼 루프
  335. for(var i = 0; i < ds_main_extninfo_recitem.rowcount; i++)
  336. {
  337. fstlevlitemcd = ds_main_extninfo_recitem.getColumn(i, "fstlevlitemcd");
  338. degnitemcd = ds_main_extninfo_recitem.getColumn(i, "degnitemcd");
  339. reccnts = ds_main_extninfo_recitem.getColumn(i, "reccnts");
  340. // 최상위 아이템이고 1계층 MTX 값이 있으면 세팅
  341. // 부분서식은 각자 onload 시 기록데이터 세팅
  342. if( (fstlevlitemcd == degnitemcd) && !utlf_isNull(reccnts))
  343. {
  344. sRow = ds_data_recitem.findRowExpr("fstlevlitemcd == '"+ fstlevlitemcd +"' && degnitemcd == '"+ degnitemcd +"' && degnitemkind == 'MTX'");
  345. ds_data_recitem.setColumn(sRow, "reccnts", reccnts);
  346. var tarObj = ComnFormObj.components["tar_" + fstlevlitemcd];
  347. if(tarObj != null)
  348. tarObj.value = reccnts;
  349. }
  350. }
  351. }
  352. }
  353. function cf_TRMMR01302(sSvcId, nErrorCode, sErrorMsg) {
  354. arErrorCode.push(sSvcId, nErrorCode);
  355. if(nErrorCode < 0) return;
  356. dsf_setDefaultVal(ds_main_extninfo_recitem, "recitemno:'',degnitemno:'',supdegnitemno:''");
  357. dsf_setTypeFormat(ds_main_extninfo_recitem, "recitemno:INT^degnitemno:INT^supdegnitemno:INT");
  358. }
  359. /****************************************************************************************
  360. * Function : getSubmitID_MMR01300I
  361. * Description : MMR01300.js에서 submit직전에 submitID를 설정하기 위해서 호출한다.
  362. * retrun type :
  363. ****************************************************************************************/
  364. function getSubmitID_MMR01300I() {
  365. //2010.02.23 dhkim - 통합기록조회용 JCI구분자추가(fSetXsltFlag없애고 getSubmitID_MMR01300I로 이동)
  366. parent.fSetFormRec("xsltflag", "JCI2");
  367. return TX_SUBMIT_EXTN_FORM;
  368. }
  369. /****************************************************************************************
  370. * Function : GetPatDrugPrcpList_MMR07201
  371. * Description : 전출기록의 투약처방조회
  372. * retrun type :
  373. ****************************************************************************************/
  374. function GetPatDrugPrcpList_MMR07201(itemCd)
  375. {
  376. var prcpdd = "";
  377. var bfflag = "bfprcp";
  378. var flag = "";
  379. var todd = "";
  380. var pid = parent.ds_data_formrec.getColumn(0, "pid");
  381. var orddd = parent.ds_data_formrec.getColumn(0, "orddd");
  382. var cretno = parent.ds_data_formrec.getColumn(0, "cretno");
  383. var orddrid = parent.ds_data_formrec.getColumn(0, "orddrid");
  384. var orddeptcd = parent.ds_data_formrec.getColumn(0, "orddeptcd");
  385. var prcpgenrflag = parent.ds_data_formrec.getColumn(0, "chosflag");
  386. if (prcpgenrflag == "I" || prcpgenrflag == "E" || prcpgenrflag == "D")
  387. {
  388. prcpdd = parent.ds_data_formrec.getColumn(0, "formrecdd");//전출일 전날
  389. }
  390. else
  391. {
  392. prcpdd = orddd;
  393. }
  394. //JCI요청사항 (2010.03.04 dhkim ) - 조회할 처방일자는 전출일 전날
  395. prcpdd = prcpdd.toDate('YYYYMMDD').getAddDate(-1, "D").getDateFormat('YYYYMMDD');//하루전
  396. //처방정보 가져오기(퇴원처방 prcpkindcd = 60)
  397. var drugprcpCnt = 0;
  398. var expr = "(prcpkindcd == '10' && prcphistcd != 'C' && prcphistcd != 'L' && prcphistcd != 'E') && (prcpclscd == 'A2' || prcpclscd == 'A4' || prcpclscd == 'A6') && (rgstdeptcd == '"+sysf_getUserInfo("dutplcecd")+"')";
  399. //if(fBfPrcpSrchCom(pid, orddd, prcpdd, bfflag, flag, orddrid, todd, prcpgenrflag, orddeptcd, cretno, "TRMMO00100", true))
  400. if(lf_bfPrcpSrchCom(pid, orddd, prcpdd, bfflag, flag, orddrid, todd, prcpgenrflag, orddeptcd, cretno, "TRMMO00100", "", "", ""))
  401. {
  402. //투약
  403. //JCI요청사항 (2010.03.04 dhkim )
  404. //- 전출과의 약/주사에 한해 전일 정규처방
  405. //- 전일 기준설정 : 전출기록 미작성시, 해당환자의 전출처방(=전과신청) 차단 요청되어있음.
  406. //- 전출기록작성시점 전일 처방을 대상으로 연동처리
  407. utlf_addLog("dutplcecd:" + sysf_getUserInfo("dutplcecd"));
  408. //var nodelistDrugPrcpinfo = model.instances(0).selectNodes("/root/prcpsrch/prcplist[(prcpkindcd = '10' and prcphistcd != 'C' and prcphistcd != 'L' and prcphistcd != 'E') and (prcpclscd = 'A2' or prcpclscd = 'A4' or prcpclscd = 'A6') and (rgstdeptcd = '"+getUserInfo("dutplcecd")+"')]");
  409. drugprcpCnt = ds_prcpsrch_prcplist.getCaseCount(expr);
  410. }
  411. var prcpkind = ""; //처방종류
  412. var orgprcpnm = ""; //처방명
  413. var drugmthdspccdnm = ""; //용법
  414. var prcpdelivefact = ""; //전달사항
  415. var prcplist = "";
  416. var prcphistcd = ""; //임시,인증구분
  417. var prcpclscd = "";
  418. var tmpdrugmthdspccdnm = "";
  419. if(drugprcpCnt >= 1){
  420. ds_prcpsrch_prcplist.filter(expr);
  421. for(var i = 0; i < drugprcpCnt; i++)
  422. {
  423. tmpdrugmthdspccdnm = ds_prcpsrch_prcplist.getColumn(i, "drugmthdspccdnm");
  424. prcpkind = ds_prcpsrch_prcplist.getColumn(i, "tempcol13");
  425. orgprcpnm = ds_prcpsrch_prcplist.getColumn(i, "tempcol6");
  426. drugmthdspccdnm = ds_prcpsrch_prcplist.getColumn(i, "tempcol7");
  427. prcpclscd = ds_prcpsrch_prcplist.getColumn(i, "prcpclscd");
  428. drugmthdspccdnm = drugmthdspccdnm.replace(tmpdrugmthdspccdnm, "");
  429. drugmthdspccdnm = drugmthdspccdnm.replace("[급]", "");
  430. drugmthdspccdnm = drugmthdspccdnm.replace("[일]", "");
  431. drugmthdspccdnm = drugmthdspccdnm.replace("[본]", "");
  432. drugmthdspccdnm = drugmthdspccdnm.replace("(집)", "");
  433. drugmthdspccdnm = drugmthdspccdnm.replace("[home]", "");
  434. drugmthdspccdnm = drugmthdspccdnm.replace("[임상]", "");
  435. drugmthdspccdnm = drugmthdspccdnm.replace("[prn]", "");
  436. prcpdelivefact = ds_prcpsrch_prcplist.getColumn(i, "prcpdelivefact");
  437. prcphistcd = ds_prcpsrch_prcplist.getColumn(i, "prcphistcd");
  438. if(prcphistcd == "T")
  439. {
  440. if (prcpclscd == "A2" || prcpclscd == "A4" || prcpclscd == "A6")
  441. {
  442. prcplist += "[임] " + orgprcpnm + " " + drugmthdspccdnm + "\n"
  443. }
  444. else
  445. {
  446. prcplist += "[임] " + orgprcpnm + "\n"
  447. }
  448. }
  449. else
  450. {
  451. if (prcpclscd == "A2" || prcpclscd == "A4" || prcpclscd == "A6")
  452. {
  453. prcplist += orgprcpnm + " " + drugmthdspccdnm + "\n"
  454. }
  455. else
  456. {
  457. prcplist += orgprcpnm + "\n"
  458. }
  459. }
  460. }
  461. }
  462. var nFindRow = ds_data_recitem.findRow("fstlevlitemcd", itemCd);
  463. var prerec = ds_data_recitem.getColumn(nFindRow, "reccnts");
  464. if (!utlf_isNull(prerec))
  465. {
  466. prerec = prerec + "\n" + prcplist + "\n";
  467. }
  468. else
  469. {
  470. prerec = prcplist + "\n"
  471. }
  472. if(!utlf_isNull(prerec))
  473. {
  474. var objTextArea = ComnFormObj.components["tar_" + itemCd];
  475. var objDivArea = ComnFormObj.components["ivw_" + itemCd];
  476. if(nFindRow == -1)
  477. {
  478. var nTmpPrntRow = ivw_base.ds_temp_mainrecitem.findRowExpr("fstlevlitemcd == '" + itemCd + "' && degnitemlevlno == '1' && degnitemkind == 'MTX'");
  479. if(nTmpPrntRow != -1)
  480. {
  481. nFindRow = ds_data_recitem.addRow();
  482. ds_data_recitem.copyRow(ds_data_recitem.rowcount - 1, ivw_base.ds_temp_mainrecitem, nTmpPrntRow);
  483. }
  484. }
  485. ds_data_recitem.setColumn(nFindRow, "reccnts", prerec);
  486. objTextArea.value = prerec;
  487. }
  488. //model.setValue(pageInfo.recItemRef + "[fstlevlitemcd='" + itemCd + "']/reccnts", prerec);
  489. }]]></Script>