SMMNP01500.xjs 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Script type="xscript4.0"><![CDATA[/***************************************************************************************
  3. * System Name : KNUH2.0
  4. * Job Name : EMR
  5. * Creator :
  6. * Make Date : 2014-09-04
  7. * Description :
  8. *---------------------------------------------------------------------------------------
  9. * Modify Date Modifier Modify Description
  10. *---------------------------------------------------------------------------------------
  11. * 2014-09-04 Live Converter TF->XP
  12. *
  13. *---------------------------------------------------------------------------------------
  14. ****************************************************************************************/
  15. // var xPathData = "/root/main/MnpmcartData/MnpmcartList" ; //
  16. // var xPathInput = "/root/init/WorkData/InputData" ; //
  17. //
  18. // var tColWidth = "74,90,70,80,121,55,291,30,73,0,0,0,0,0,0,0,0,0,0#" // 집도
  19. // + "74,90,70,80,121,55,179,33,70,0,0,0,0,0,0,0,0,0,0" ; // 마취
  20. //
  21. // var tWidth = tColWidth.split("#");
  22. //=======================================================================================
  23. // Function
  24. //---------------------------------------------------------------------------------------
  25. /****************************************************************************************
  26. * Function : fFormInit
  27. * Description : 화면 초기화 실행
  28. * Argument :
  29. * return type :
  30. * Creator :
  31. ****************************************************************************************/
  32. function fFormInit() {
  33. // model.removeNodeset("/root/main/icd10indx/icd10indxcdlist");
  34. ds_main_diagcdlist.clearData();
  35. ds_main_copydiagcdlist.clearData();
  36. //화면 open시, ICD9색인탭이 기본
  37. /*btn_icd10.selected = true;*/
  38. /*model.toggle("icd9");*/
  39. fReqGetIndxList();
  40. ds_send.clear();
  41. dsf_makeValue(ds_send,"flag" ,"string","X");
  42. dsf_makeValue(ds_send,"searchitem" ,"string","XX");
  43. dsf_makeValue(ds_send,"deptflag" ,"string","011");
  44. var oParam = {};
  45. oParam.id = "TRMNP01512";
  46. oParam.service = "opanstapp.OpAnstPatMngt";
  47. oParam.method = "reqGetPerfDeptList";
  48. oParam.inds = "req=ds_send";
  49. oParam.outds = "ds_init_deptlist=deptlist";
  50. oParam.async = false;
  51. oParam.callback = "cf_TRMNP01512";
  52. tranf_submit(oParam);
  53. dsf_addDsItem( ds_init_orddept, "deptcd", "depthngnm", "전체", "", "above");
  54. dsf_addDsItem( ds_init_orddept2, "deptcd", "depthngnm", "전체", "", "above");
  55. cmb_orddept.index = 0;
  56. cmb_orddept2.index = 0;
  57. // addComboItem("cmb_orddept2" , "전 체", "", "above" );
  58. // removeComboItem("cmb_orddept2" , "전 체", "", "above" );
  59. // grdf_setGridSort(grd_cartlist);
  60. // grd_cartlist.fixedcellcheckbox(0,1) = true;
  61. var arrParam = [{dsNm: "ds_init_M0016", cdGrpId: "M0016"}
  62. ,{dsNm: "ds_init_M0357", cdGrpId: "M0357"}
  63. ,{dsNm: "ds_init_M0017", cdGrpId: "M0017"}
  64. ,{dsNm: "ds_init_M0341", cdGrpId: "M0341"}
  65. ]
  66. appf_getCodeList(arrParam);
  67. // model.makeNode("/root/hidden/updatelist");
  68. // 요청번호: 845
  69. // 요청사항: 845기본요청사항에 추가적으로 로그인한 집도과, 집도의 정보 연동
  70. // 수정일: 2010.05.25
  71. // 수정자: 김광성. kskim
  72. var jobkindcd = sysf_getUserInfo("jobkindcd");
  73. var jobcd = jobkindcd.substr(0,2);
  74. if( !utlf_isNull(jobkindcd) && jobcd == "03"){ // 집도과, 집도의, 수술명이 사용유무 정보가 Y인 것 조회
  75. ds_init_cond.setColumn(0,"rgstdeptcd" ,sysf_getUserInfo("dutplcecd")); // 집도과 정보 셋팅
  76. var ev = new ItemChangeEventInfo;
  77. frmf_inputEnterKey("cmb_orddept", "onitemchanged", ev );
  78. ds_init_cond.setColumn(0,"rgstperf" ,sysf_getUserInfo("userid")); // 집도의 정보 셋팅
  79. ds_init_cond.setColumn(0,"useflag" ,"Y"); // 수술명 사용이 Y인 것만 조회
  80. var ev = new ItemChangeEventInfo;
  81. frmf_inputEnterKey("cmb_perf", "onitemchanged", ev );
  82. grd_cartlist.setFocus();
  83. //sysf_trace(sysf_getUserInfo("dutplcecd")+" / "+sysf_getUserInfo("userid"));
  84. }
  85. }
  86. /****************************************************************************************
  87. * Function : cf_TRMNP01512
  88. * Description : TRMNP01512 콜백함수
  89. * Argument :
  90. * return type :
  91. * Creator :
  92. ****************************************************************************************/
  93. function cf_TRMNP01512(sSvcId, nErrorCode, sErrorMsg) {
  94. if(nErrorCode < 0) return;
  95. dsf_copyDs(ds_init_orddept, ds_init_deptlist, "replace");
  96. dsf_copyDs(ds_init_orddept2, ds_init_deptlist, "replace");
  97. }
  98. /****************************************************************************************
  99. * Function : fReqGetIndxList
  100. * Description : ICD9 INDEX 조회
  101. * Argument :
  102. * :
  103. * return type :
  104. * Creator :
  105. ****************************************************************************************/
  106. function fReqGetIndxList(){
  107. ds_send_reqdata.clear();
  108. dsf_makeValue(ds_send_reqdata,"indxflag","string","9");
  109. var oParam = {};
  110. oParam.id = "TRMNP01502";
  111. oParam.service = "opanstapp.OpAnstStocMngt";
  112. oParam.method = "reqGetIndxList";
  113. oParam.inds = "reqdata=ds_send_reqdata";
  114. oParam.outds = "ds_main_indxcdlist=indxcdlist";
  115. oParam.async = false;
  116. oParam.callback = "cf_TRMNP01502";
  117. tranf_submit(oParam);
  118. }
  119. /****************************************************************************************
  120. * Function : cf_TRMNP01502
  121. * Description : TRMNP01502 콜백함수
  122. * Argument :
  123. * :
  124. * return type :
  125. * Creator :
  126. ****************************************************************************************/
  127. function cf_TRMNP01502(sSvcId, nErrorCode, sErrorMsg) {
  128. if(nErrorCode < 0) return;
  129. ds_main_indxcdlist.updateColID("hngnm","indxhngnm");
  130. ds_main_indxcdlist.updateColID("engnm","indxengnm");
  131. }
  132. /****************************************************************************************
  133. * Function : fReqGetICD9CDList
  134. * Description : ICD9 용어 조회
  135. * Argument :
  136. * return type :
  137. * Creator :
  138. ****************************************************************************************/
  139. function fReqGetICD9CDList(pFlag){
  140. var indxcd, refopnm, refcond, condflag;
  141. if( ds_main_indxcdlist.rowposition > -1 ) {
  142. // var item = grp_grid.switch1.icd9.trv_icd9indxcdlist.item(grp_grid.switch1.icd9.trv_icd9indxcdlist.selectedIndex);
  143. var level = ds_main_indxcdlist.getColumn(ds_main_indxcdlist.rowposition,"levl");
  144. if(level == "1"){ //상위index를 클릭한 경우, 조회하지 않는다.
  145. return;
  146. }
  147. // indxcd = grp_grid.switch1.icd9.trv_icd9indxcdlist.value;
  148. indxcd = ds_main_indxcdlist.getColumn(ds_main_indxcdlist.rowposition,"indxcd");
  149. }
  150. if( pFlag == "2" ) {//Tree 조회시
  151. //트리 선택시 검색어 및 전체 검색 초기화
  152. ds_init_cond.setColumn(0,"refopnm", "");
  153. ds_init_cond.setColumn(0,"refcond", "");
  154. } else if ( pFlag == "1" ) {//검색조건 조회시 전체 검색
  155. ds_init_cond.setColumn(0,"refcond", "ALL");
  156. }
  157. refopnm = ds_init_cond.getColumn(0,"refopnm");
  158. refcond = ds_init_cond.getColumn(0,"refcond");
  159. condflag = utlf_isHangul(refopnm);
  160. if( utlf_isNull(indxcd) ) { indxcd = "0"; } //인덱스 코드가 없으면 0으로 셋팅 맵핑시 인덱스 코드가 없으면 값이 안넘어감.
  161. if( indxcd == "0" && utlf_isNull(refopnm) ) {
  162. sysf_messageBox("수술명 검색 조건을 입력하지 ", "E007");
  163. return;
  164. }
  165. ds_send_reqdata.clear
  166. dsf_makeValue(ds_send_reqdata,"icd9indxcd" ,"string", indxcd);
  167. dsf_makeValue(ds_send_reqdata,"refopnm" ,"string", refopnm);
  168. dsf_makeValue(ds_send_reqdata,"refcond" ,"string", refcond);
  169. dsf_makeValue(ds_send_reqdata,"condflag" ,"string", condflag);
  170. var oParam = {};
  171. oParam.id = "TRMNP01511";
  172. oParam.service = "opanstapp.OpAnstStocMngt";
  173. oParam.method = "reqGetICD9CdList";
  174. oParam.inds = "reqdata=ds_send_reqdata";
  175. oParam.outds = "ds_main_diagcdlist=diagcdlist";
  176. oParam.async = false;
  177. oParam.callback = "cf_TRMNP01511";
  178. tranf_submit(oParam);
  179. }
  180. /****************************************************************************************
  181. * Function : fReqGetICD9CDList
  182. * Description : ICD9 용어 조회
  183. * Argument :
  184. * return type :
  185. * Creator :
  186. ****************************************************************************************/
  187. function cf_TRMNP01511(sSvcId, nErrorCode, sErrorMsg) {
  188. if(nErrorCode < 0) return;
  189. ds_main_diagcdlist.updateColID("opusetm","usehours");
  190. ds_main_diagcdlist.updateColID("opusetm","usemins");
  191. dsf_setDefaultVal(ds_main_diagcdlist,"usehours:00,usemins:00,opposturecd:00,opdirecflag:-,anstmthdcd:00,opcntmdg:0");
  192. }
  193. /****************************************************************************************
  194. * Function : fDrCombo
  195. * Description : 집도의(마취의) 콤보아이템 가져오기
  196. * Argument :
  197. * return type :
  198. * Creator :
  199. ****************************************************************************************/
  200. function fDrCombo(pCls, pDept) {
  201. ds_send_reqdata.clear();
  202. dsf_makeValue(ds_send_reqdata,"orddept","string",pDept);
  203. var oParam = {};
  204. oParam.id = "TRMNP00103";
  205. oParam.service = "opanstapp.OpAnstPatMngt";
  206. oParam.method = "reqGetDrInfo";
  207. oParam.inds = "reqdata=ds_send_reqdata";
  208. oParam.outds = "ds_init_drlist=drlist";
  209. oParam.async = false;
  210. oParam.callback = "";
  211. tranf_submit(oParam);
  212. if (pCls ==1) {//수술명 등록용 집도의 리스트
  213. ds_init_drid.clear();
  214. dsf_copyDs(ds_init_drid, ds_init_drlist, "replace");
  215. dsf_addDsItem( ds_init_drid, "drid", "drnm", "전체", "", "above");
  216. }
  217. if (pCls ==2) {//수술명 복사용 집도의 리스트
  218. ds_init_drid2.clear();
  219. dsf_copyDs(ds_init_drid2, ds_init_drlist, "replace");
  220. dsf_addDsItem( ds_init_drid2, "drid", "drnm", "전체", "", "above");
  221. }
  222. }
  223. /****************************************************************************************
  224. * Function : fSearchCartList
  225. * Description : Case Cart MASTER 정보 가져오기
  226. * Argument :
  227. * :
  228. * return type :
  229. * Creator :
  230. ****************************************************************************************/
  231. function fSearchCartList() {
  232. ds_send_reqdata.clear();
  233. if(utlf_isNull(ds_init_cond.getColumn(0,"rgstdeptcd"))) {
  234. sysf_messageBox("집도과를 선택하지 ", "E007");
  235. cmb_orddept.setFocus();
  236. return;
  237. }
  238. dsf_makeValue(ds_send_reqdata,"perfdeptcd" ,"string",ds_init_cond.getColumn(0,"rgstdeptcd"));
  239. dsf_makeValue(ds_send_reqdata,"perfdrid" ,"string",ds_init_cond.getColumn(0,"rgstperf"));
  240. dsf_makeValue(ds_send_reqdata,"useflag" ,"string",ds_init_cond.getColumn(0,"useflag"));
  241. dsf_makeValue(ds_send_reqdata,"cartgubn" ,"string","O");
  242. var oParam = {};
  243. oParam.id = "TRMNP01513";
  244. oParam.service = "opanstapp.OpAnstStocMngt";
  245. oParam.method = "reqGetOpNmList";
  246. oParam.inds = "reqdata=ds_send_reqdata";
  247. oParam.outds = "ds_main_diagcdlist=diagcdlist";
  248. oParam.async = false;
  249. oParam.callback = "cf_TRMNP01513";
  250. tranf_submit(oParam);
  251. }
  252. function cf_TRMNP01513(sSvcId, nErrorCode, sErrorMsg) {
  253. if(nErrorCode < 0) return;
  254. dsf_setDefaultVal(ds_main_diagcdlist,"uptstat:-");
  255. }
  256. /****************************************************************************************
  257. * Function : fOpNmSave
  258. * Description : Case Cart MASTER 자료저장하기
  259. * Argument :
  260. * :
  261. * return type :
  262. * Creator :
  263. ****************************************************************************************/
  264. function fOpNmSave(pFlag){
  265. var ccrtno, opcd, useflag, statflag;
  266. var cnt = 0;
  267. var opsavelist = "m▦opcd▦orddeptcd▦perfid▦cartgubn▦useflag▦deptinit▦ccrtno▦opusetm▦opposturecd▦opdirecflag▦anstmthdcd▦opcntmdg"; // 수술체위, 수술창상, 마취방법, 수술위치, 소요시간 정보 추가 2010.05.24 kskim
  268. var perfdeptcd = ds_init_cond.getColumn(0,"rgstdeptcd");
  269. var perfdrid = ds_init_cond.getColumn(0,"rgstperf");
  270. var deptinit = ds_init_orddept.getColumn(ds_init_orddept.findRow("deptcd",perfdeptcd), "deptengabbr");
  271. // sysf_trace("deptinit : "+deptinit);
  272. if( utlf_isNull(perfdeptcd) ) {
  273. sysf_messageBox("집도과를 선택하지 ", "E007");
  274. cmb_orddept.setFocus();
  275. return;
  276. }
  277. if( utlf_isNull(perfdrid) ) {
  278. sysf_messageBox("집도의를 선택하지 ", "E007");
  279. cmb_perf.setFocus();
  280. return;
  281. }
  282. for(var iRow = 0; iRow < ds_main_diagcdlist.rowcount; iRow++ ) {
  283. if( ds_main_diagcdlist.getColumn(iRow, "chkflag") == "true") {
  284. ccrtno = ds_main_diagcdlist.getColumn(iRow, "ccrtno");
  285. opcd = ds_main_diagcdlist.getColumn(iRow, "opcd");
  286. useflag = ds_main_diagcdlist.getColumn(iRow, "useflag");
  287. usehours = ds_main_diagcdlist.getColumn(iRow, "usehours"); // 소요시간(시)
  288. usemins = ds_main_diagcdlist.getColumn(iRow, "usemins"); // 소요시간(분)
  289. opposturecd = ds_main_diagcdlist.getColumn(iRow, "opposturecd");// 수술체위
  290. opdirecflag = ds_main_diagcdlist.getColumn(iRow, "opdirecflag");//수술위치
  291. anstmthdcd = ds_main_diagcdlist.getColumn(iRow, "anstmthdcd"); //마취방법
  292. opcntmdg = ds_main_diagcdlist.getColumn(iRow, "opcntmdg"); //수술창상
  293. opusetm = usehours.concat(usemins);
  294. uptstat = ds_main_diagcdlist.getColumn(iRow, "uptstat"); //update상태 정보
  295. if( pFlag != "D" ) {
  296. if( useflag == "Y" && uptstat != "U") {
  297. sysf_messageBox("이미 사용중인 수술명", "E008");
  298. return;
  299. }
  300. }else {
  301. if( useflag == "N" ) {
  302. sysf_messageBox("이미 미사용 수술명", "E008");
  303. return;
  304. }
  305. }
  306. if( utlf_isNull(ccrtno) ) {//등록된 카트가 아니면 신규등록, 등록된 카트이면서 미사용중이면 수정
  307. statflag = "I";
  308. useflag = "Y"
  309. }else {
  310. statflag = "U";
  311. useflag = "Y"
  312. }
  313. if( pFlag == "D" ) {//삭제이면
  314. statflag = "D";
  315. useflag = "N"
  316. }
  317. cnt++;
  318. // 소요시간, 수술체위, 수술위치, 마취방법, 수술창상 추가 . kskim. 2010.05.24
  319. opsavelist = opsavelist + "▩" +
  320. statflag + "▦" +
  321. opcd + "▦" +
  322. perfdeptcd + "▦" +
  323. perfdrid + "▦" +
  324. "O" + "▦" +
  325. useflag + "▦" +
  326. deptinit + "▦" +
  327. ccrtno + "▦" +
  328. opusetm + "▦" +
  329. opposturecd + "▦" +
  330. opdirecflag + "▦" +
  331. anstmthdcd + "▦" +
  332. opcntmdg;
  333. }
  334. }
  335. if( cnt > 0 ) {
  336. ds_send_reqdata.clear();
  337. dsf_makeValue(ds_send_reqdata,"perfdeptcd" ,"string", perfdeptcd);
  338. dsf_makeValue(ds_send_reqdata,"perfdrid" ,"string", perfdrid);
  339. dsf_makeValue(ds_send_reqdata,"useflag" ,"string", ds_init_cond.getColumn(0,"useflag"));
  340. dsf_makeValue(ds_send_reqdata,"cartgubn" ,"string", "O");
  341. ds_send_savedata.clear();
  342. dsf_setCSVToDs("ds_send_savedata",opsavelist);
  343. var oParam = {};
  344. oParam.id = "TXMNP01503";
  345. oParam.service = "opanstapp.OpAnstStocMngt";
  346. oParam.method = "reqInsOpNmList";
  347. oParam.inds = "reqdata=ds_send_reqdata savedata=ds_send_savedata";
  348. oParam.outds = "ds_main_diagcdlist=diagcdlist";
  349. oParam.async = false;
  350. oParam.callback = "cf_TXMNP01503";
  351. tranf_submit(oParam);
  352. }else {
  353. sysf_messageBox("선택하신 수술명이 ", "E007");
  354. return;
  355. }
  356. }
  357. function cf_TXMNP01503(sSvcId, nErrorCode, sErrorMsg) {
  358. if(nErrorCode < 0) return;
  359. dsf_setDefaultVal(ds_main_diagcdlist,"uptstat:-");
  360. }
  361. /****************************************************************************************
  362. * Function : fCheckUseHours
  363. * Description : 수술소요 시간(hour)입력 정보 체크 및 수정
  364. * Argument : grdFlag : 그리드 구분(original/copy)
  365. * : selRow : 선택한 row
  366. * return type :
  367. * Creator :
  368. ****************************************************************************************/
  369. function fCheckUseHours(grdFlag, selRow){
  370. var hours;
  371. if(grdFlag == "original") hours = ds_main_diagcdlist.getColumn(selRow,"usehours");
  372. if(grdFlag == "copy") hours = ds_main_copydiagcdlist.getColumn(selRow,"usehours");
  373. var addZeroHours = "0";
  374. if(utlf_isNull(hours) ){
  375. return addZeroHours.concat("0");
  376. }
  377. else if(hours.length < 2){
  378. return addZeroHours.concat(hours);
  379. }
  380. else{
  381. return hours;
  382. }
  383. }
  384. /****************************************************************************************
  385. * Function : fClear
  386. * Description : 수술명 복사 초기화
  387. * Argument :
  388. * return type :
  389. * Creator :
  390. ****************************************************************************************/
  391. function fClear() {
  392. ds_main_copydiagcdlist.clearData(); //수술명복사 그리드 초기화
  393. ds_init_drid2.clearData(); //집도의 콤보리스트 초기화
  394. ds_init_cond.setColumn(0,"copdeptcd", ""); //수술명복사 집도과 초기화
  395. ds_init_cond.setColumn(0,"copperf" , ""); //수술명복사 집도의 초기화
  396. ds_init_cond.setColumn(0,"copgubn" , ""); //수술명복사 조건 초기화
  397. }
  398. /****************************************************************************************
  399. * Function : fOpCopy
  400. * Description : 수술명 복사
  401. * Argument :
  402. * return type :
  403. * Creator :
  404. ****************************************************************************************/
  405. function fOpCopy(){
  406. var copylist = "ccrtno▦opcd▦copyflag▦perfdeptcd▦perfid▦opusetm▦opposturecd▦opdirecflag▦anstmthdcd▦opcntmdg"; // 수술체위, 수술창상, 수술위치, 마취방법, 소요시간 추가 2010.05.24 kskim
  407. var perfdeptcd = ds_init_cond.getColumn(0,"copdeptcd");
  408. var perfid = ds_init_cond.getColumn(0,"copperf");
  409. var copyflag = ds_init_cond.getColumn(0,"copgubn");
  410. if( utlf_isNull(perfdeptcd) ) {
  411. sysf_messageBox("복사할 집도과를 ", "C002");
  412. cmb_orddept2.setFocus();
  413. return;
  414. }else if( utlf_isNull(perfid) ) {
  415. sysf_messageBox("복사할 집도의를 ", "C002");
  416. cmb_perf2.setFocus();
  417. return;
  418. }else if( utlf_isNull(copyflag) ) {
  419. sysf_messageBox("복사 조건을 ", "C002");
  420. rd_copyflag.setFocus();
  421. return;
  422. }
  423. var cnt = 0;
  424. for( var i = 0; i < ds_main_copydiagcdlist.rowcount; i++ ) {
  425. var chk = ds_main_copydiagcdlist.getColumn(i,"chkflag");
  426. var opcd = ds_main_copydiagcdlist.getColumn(i,"opcd");
  427. var ccrtno = ds_main_copydiagcdlist.getColumn(i,"ccrtno");
  428. var opposturecd = ds_main_copydiagcdlist.getColumn(i,"opposturecd"); // 수숭체위
  429. var opdirecflag = ds_main_copydiagcdlist.getColumn(i,"opdirecflag"); // 수술위치
  430. var anstmthdcd = ds_main_copydiagcdlist.getColumn(i,"anstmthdcd"); // 마취방법
  431. var opcntmdg = ds_main_copydiagcdlist.getColumn(i,"opcntmdg"); // 수술창상
  432. var usehours = ds_main_copydiagcdlist.getColumn(i,"usehours"); // 소요시간(시)
  433. var usemins = ds_main_copydiagcdlist.getColumn(i,"usemins"); // 소요시간(분)
  434. var opusetm = usehours.concat(usemins);
  435. // 소요시간, 수술체위, 수술위치, 마취방법, 수술창상 추가 . kskim. 2010.05.24
  436. if( chk == "true" ) {
  437. copylist = copylist + "▩" +
  438. ccrtno + "▦" +
  439. opcd + "▦" +
  440. copyflag + "▦" +
  441. perfdeptcd + "▦" +
  442. perfid + "▦" +
  443. opusetm + "▦" +
  444. opposturecd + "▦" +
  445. opdirecflag + "▦" +
  446. anstmthdcd + "▦" +
  447. opcntmdg;
  448. cnt++;
  449. }
  450. }
  451. if( cnt > 0 ) {
  452. ds_send_copylist.clear();
  453. dsf_setCSVToDs("ds_send_copylist",copylist);
  454. var oParam = {};
  455. oParam.id = "TXMNP01502";
  456. oParam.service = "opanstapp.OpAnstCCrtGoodMngt";
  457. oParam.method = "reqInsCopyCartList";
  458. oParam.inds = "copylist=ds_send_copylist";
  459. oParam.outds = "";
  460. oParam.async = false;
  461. oParam.callback = "";
  462. tranf_submit(oParam);
  463. fClear();//수술명 복사 초기화
  464. }else {
  465. sysf_messageBox("선택하신 수술명이 ", "I004");
  466. }
  467. }
  468. /****************************************************************************************
  469. * Function : fSelectOpNm
  470. * Description : 수술명 복사
  471. * Argument :
  472. * return type :
  473. * Creator :
  474. ****************************************************************************************/
  475. function fSelectOpNm(){
  476. var cnt = 0;
  477. ds_main_copydiagcdlist.clearData(); //수술명복사 그리드 초기화
  478. for( var iRow = 0; iRow < ds_main_diagcdlist.rowcount; iRow++ ) {
  479. if( ds_main_diagcdlist.getColumn(iRow,"chkflag") == "true" ) {
  480. if( !utlf_isNull(ds_main_diagcdlist.getColumn(iRow,"ccrtno")) ) {
  481. if( ds_main_diagcdlist.getColumn(iRow,"useflag") == "N" ) {
  482. sysf_messageBox("미 사용중인 수술명은 선택 ", "E001");
  483. ds_main_copydiagcdlist.clearData(); //수술명복사 그리드 초기화
  484. return;
  485. }
  486. ds_main_copydiagcdlist.copyRow(ds_main_copydiagcdlist.addRow(),ds_main_diagcdlist,iRow);
  487. cnt++;
  488. }else {
  489. sysf_messageBox("미 등록된 수술명은 선택 ", "E001");
  490. ds_main_copydiagcdlist.clearData(); //수술명복사 그리드 초기화
  491. return;
  492. }
  493. }
  494. }
  495. if( cnt < 1 ) {
  496. sysf_messageBox("선택하신 수술명이 ", "I004");
  497. return;
  498. }
  499. }]]></Script>