SMMRF04800.xjs 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <Script type="xscript4.0"><![CDATA[/*
  3. - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
  4. 서식 수가 매핑 관리 ( SMMRF04800_서식수가매핑관리.xrw )
  5. - ▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩▩
  6. */
  7. var g_grdEditrow = "";
  8. var gf_grdEditrow = "";
  9. /**
  10. * @desc : 줄 추가
  11. * @id :
  12. * @event : xforms-select
  13. * @return : void
  14. * @authur :
  15. */
  16. function fAddGridRow_back(pGrid)
  17. {
  18. var sGridID = document.controls(pGrid);
  19. var ref = sGridID.attribute("nodeset");
  20. g_grdEditrow = sGridID.rows;
  21. if(g_grdEditrow >= "2") {
  22. sGridID.addRow();
  23. //sGridID.isselected(g_grdEditrow) = true;
  24. g_grdEditrow = sGridID.rows;
  25. sGridID.topRow = g_grdEditrow;
  26. // 업무용도 세팅
  27. //var bizflag = model.getValue("/root/send/reqdata/bizflag");
  28. //model.setValue("/root/main/ocrmechlist/ocrmechlistinfo[" + (g_grdEditrow-2) + "]/bizflag", bizflag);
  29. var fstrgstdt = getCurrentDate();
  30. model.setValue("/root/main/ocrmechlist/ocrmechlistinfo[" + (g_grdEditrow-2) + "]/fstrgstdt", fstrgstdt);
  31. model.setValue("/root/main/ocrmechlist/ocrmechlistinfo[" + (g_grdEditrow-2) + "]/status", "1");
  32. // 수가구분
  33. //model.setValue("/root/main/ocrmechlist/ocrmechlistinfo[" + (g_grdEditrow-2) + "]/calcscorflag", "O");
  34. model.refresh();
  35. }
  36. }
  37. /**
  38. * @desc : 줄 삭제
  39. * @id :
  40. * @event : xforms-select
  41. * @return : void
  42. * @authur :
  43. */
  44. //function fDelGridRow(pGrid)
  45. function fDelGridRow_back()
  46. {
  47. //var sGridID = document.controls(pGrid);
  48. //var ref = sGridID.attribute("nodeset");
  49. //var iRow = sGridID.row;
  50. //if(iRow < 1) return;
  51. //var iStatus = sGridID.rowStatus(iRow);
  52. //for (var i = 1; i < sGridID.selectedRows; i++){
  53. //if(iStatus == 1 || iStatus == 3){
  54. //sGridID.deleteRow(iRow);
  55. //}else{
  56. //sGridID.rowStatus(iRow) = 4;
  57. //}
  58. var arrRows = new Array();
  59. for(var i = 0; i < grd_ocrmechlist.selectedRows; i++)
  60. {
  61. arrRows[i] = grd_ocrmechlist.selectedRow(i);
  62. }
  63. for(var j = arrRows.length - 1; j >= 0; j--)
  64. {
  65. //grd_ocrmechlist.deleteRow(arrRows[j]);
  66. alert(arrRows[j]);
  67. grd_ocrmechlist.rowStatus(arrRows[j]) = 4;
  68. model.setValue("/root/main/ocrmechlist/ocrmechlistinfo[" + j + "]/status", "4");
  69. alert(model.getValue("/root/main/ocrmechlist/ocrmechlistinfo[" + j + "]/status"));
  70. }
  71. //}
  72. g_grdEditrow = "";
  73. model.refresh();
  74. }
  75. function fAddRow(flag) {
  76. var iRow = 0;
  77. if(flag == "I") {
  78. iRow = ds_grd_ocrmechlist.addRow();
  79. ds_grd_ocrmechlist.setColumn(iRow, "fstrgstdt", new Date().toFormatString("%Y%m%d"));
  80. ds_grd_ocrmechlist.setColumn(iRow, "mainyn", "Y");
  81. ds_grd_ocrmechlist.setColumn(iRow, "condflag", "N");
  82. } else if(flag == "D") {
  83. iRow = ds_grd_ocrmechlist.addRow();
  84. }
  85. grdf_setStatus(switch1.case1.grd_ocrmechlist, "I", [iRow]);
  86. }
  87. function fDelRow(flag) {
  88. var iRow = ds_grd_ocrmechlist.rowposition;
  89. if(iRow < 0) return;
  90. if(flag == "I") {
  91. if(ds_grd_ocrmechlist.getRowType(iRow) == Dataset.ROWTYPE_INSERT){
  92. ds_grd_ocrmechlist.deleteRow(iRow);
  93. }else{
  94. grdf_setStatus(switch1.case1.grd_ocrmechlist, "D", [iRow]);
  95. }
  96. }
  97. }
  98. // 동의서 코드찾기 Popup
  99. function fCodePopUp(pFlag)
  100. {
  101. var CurrentRow = ds_grd_ocrmechlist.rowposition;
  102. var chk = ds_grd_ocrmechlist.getRowType(CurrentRow);
  103. //수정되기 전 데이터.
  104. var preFormcd = ds_grd_ocrmechlist.getColumn(CurrentRow, "formcd");
  105. var preCalcscorcd = ds_grd_ocrmechlist.getColumn(CurrentRow, "calcscorcd");
  106. ds_grd_ocrmechlist.addColumn("preformcd", "string");
  107. ds_grd_ocrmechlist.setColumn(CurrentRow, "preformcd", preFormcd);
  108. ds_grd_ocrmechlist.addColumn("precalcscorcd", "string");
  109. ds_grd_ocrmechlist.setColumn(CurrentRow, "precalcscorcd", preCalcscorcd);
  110. // 수가코드
  111. if((pFlag == "1" && chk == Dataset.ROWTYPE_INSERT) ||
  112. (pFlag == "1" && chk == Dataset.ROWTYPE_NORMAL) ||
  113. (pFlag == "1" && chk == Dataset.ROWTYPE_UPDATE)){
  114. dsf_deleteDs(ds_temp_mech);
  115. ds_temp_mech.clear();
  116. frmf_modal("SMPIC00200", "SMPIC00200", null, null, null, null, null, null, null, null, null, null, "M");
  117. var hngnm = ds_temp_mech.getColumn(0, "hngnm");
  118. var calcscorcd = ds_temp_mech.getColumn(0, "calcscorcd");
  119. var fromdd = ds_temp_mech.getColumn(0, "fromdd");
  120. var todd = ds_temp_mech.getColumn(0, "todd");
  121. //Popup에서 선택하지 않고 닫았을 경우 기존 데이터 보존.
  122. if(utlf_isNull(calcscorcd)) {
  123. return;
  124. }
  125. ds_grd_ocrmechlist.setColumn(CurrentRow,"hngnm", hngnm);
  126. ds_grd_ocrmechlist.setColumn(CurrentRow,"calcscorcd",calcscorcd);
  127. ds_grd_ocrmechlist.setColumn(CurrentRow,"fromdd",fromdd);
  128. ds_grd_ocrmechlist.setColumn(CurrentRow,"todd",todd);
  129. if(chk == Dataset.ROWTYPE_NORMAL)
  130. ds_grd_ocrmechlist.setRowType(CurrentRow, Dataset.ROWTYPE_UPDATE);
  131. // 서식코드
  132. }else if((pFlag == "2" && chk == Dataset.ROWTYPE_INSERT) ||
  133. (pFlag == "2" && chk == Dataset.ROWTYPE_NORMAL) ||
  134. (pFlag == "2" && chk == Dataset.ROWTYPE_UPDATE)){
  135. frmf_setParameter("srch_cond","OCR:Y");
  136. frmf_modal("SPMRF03600", "SPMRF03600", null, null, null, null, null, null, null, null, null, null, "M");
  137. var formnm = frmf_getParameter("formnm");
  138. var formcd = frmf_getParameter("formcd");
  139. //Popup에서 선택하지 않고 닫았을 경우 기존 데이터 보존.
  140. if(utlf_isNull(formcd)) {
  141. return;
  142. }
  143. ds_grd_ocrmechlist.setColumn(CurrentRow,"formnm",formnm);
  144. ds_grd_ocrmechlist.setColumn(CurrentRow,"formcd",formcd);
  145. if(chk == Dataset.ROWTYPE_NORMAL)
  146. ds_grd_ocrmechlist.setRowType(CurrentRow, Dataset.ROWTYPE_UPDATE);
  147. }
  148. }
  149. // 제증명 코드찾기 Popup
  150. function fPROFCodePopUp(pFlag)
  151. {
  152. var CurrentRow = ds_grd_mechlist.rowposition;
  153. var gridrowcnt = ds_grd_mechlist.rowcount;
  154. var chk = ds_grd_mechlist.getRowType(CurrentRow);
  155. //마지막 Row의 서식이름 가져오기 (마지막 Row가 Insert인지 Update인지 확인하기 위한 것)
  156. var endCell = ds_grd_mechlist.getColumn(gridrowcnt-1,"formnm");
  157. //수정되기 전 데이터
  158. var preFormcd = ds_grd_mechlist.getColumn(CurrentRow, "formcd");
  159. var preCalcscorcd = ds_grd_mechlist.getColumn(CurrentRow, "calcscorcd");
  160. ds_grd_mechlist.addColumn("preformcd", "string");
  161. ds_grd_mechlist.setColumn(CurrentRow, "preformcd", preFormcd);
  162. ds_grd_mechlist.addColumn("precalcscorcd", "string");
  163. ds_grd_mechlist.setColumn(CurrentRow, "precalcscorcd", preCalcscorcd);
  164. var hngnm = "";
  165. var calcscorcd = "";
  166. if( CurrentRow == (gridrowcnt-1) && utlf_isNull(endCell)){ // insert
  167. if((pFlag == "1" && chk == Dataset.ROWTYPE_INSERT) ||
  168. (pFlag == "1" && chk == Dataset.ROWTYPE_NORMAL) ||
  169. (pFlag == "1" && chk == Dataset.ROWTYPE_UPDATE)){ // 수가코드
  170. dsf_deleteDs(ds_temp_mech);
  171. ds_temp_mech.clear();
  172. frmf_modal("SMPIC00200", "SMPIC00200", null, null, null, null, null, null, null, null, null, null, "M");
  173. hngnm = ds_temp_mech.getColumn(0, "hngnm");
  174. calcscorcd = ds_temp_mech.getColumn(0, "calcscorcd");
  175. if(utlf_isNull(calcscorcd)) {
  176. return;
  177. } else {
  178. ds_grd_mechlist.setColumn(CurrentRow,"hngnm", hngnm);
  179. ds_grd_mechlist.setColumn(CurrentRow,"calcscorcd",calcscorcd);
  180. }
  181. } else if((pFlag == "2" && chk == Dataset.ROWTYPE_INSERT) ||
  182. (pFlag == "2" && chk == Dataset.ROWTYPE_NORMAL) ||
  183. (pFlag == "2" && chk == Dataset.ROWTYPE_UPDATE)){ // 서식명
  184. frmf_setParameter("srch_cond","OCR:Y");
  185. frmf_modal("SPMRF03600", "SPMRF03600", null, null, null, null, null, null, null, null, null, null, "M");
  186. formnm = frmf_getParameter("formnm");
  187. formcd = frmf_getParameter("formcd");
  188. if(utlf_isNull(formcd)) {
  189. return;
  190. } else {
  191. ds_grd_mechlist.setColumn(CurrentRow,"formnm",formnm);
  192. ds_grd_mechlist.setColumn(CurrentRow,"formcd",formcd);
  193. }
  194. }
  195. } else { // update
  196. // KNUH_20101019_박성호_start 수가 수정 가능하도록 수정
  197. if (pFlag == "1"){ // 수가코드
  198. dsf_deleteDs(ds_temp_mech);
  199. ds_temp_mech.clear();
  200. frmf_modal("SMPIC00200", "SMPIC00200", null, null, null, null, null, null, null, null, null, null, "M");
  201. hngnm = ds_temp_mech.getColumn(0, "hngnm");
  202. calcscorcd = ds_temp_mech.getColumn(0, "calcscorcd");
  203. if(utlf_isNull(calcscorcd)) {
  204. return;
  205. } else {
  206. ds_grd_mechlist.setColumn(CurrentRow,"hngnm", hngnm);
  207. ds_grd_mechlist.setColumn(CurrentRow,"calcscorcd",calcscorcd);
  208. }
  209. }else if(pFlag == "2"){ // 서식명
  210. frmf_setParameter("srch_cond","OCR:Y");
  211. frmf_modal("SPMRF03600", "SPMRF03600", null, null, null, null, null, null, null, null, null, null, "M");
  212. formnm = frmf_getParameter("formnm");
  213. formcd = frmf_getParameter("formcd");
  214. if(utlf_isNull(formcd)) {
  215. return;
  216. } else {
  217. ds_grd_mechlist.setColumn(CurrentRow,"formnm",formnm);
  218. ds_grd_mechlist.setColumn(CurrentRow,"formcd",formcd);
  219. }
  220. }
  221. if(chk == Dataset.ROWTYPE_NORMAL)
  222. ds_grd_mechlist.setRowType(CurrentRow, Dataset.ROWTYPE_UPDATE);
  223. }
  224. }
  225. function fSaveComn_back()
  226. {
  227. var ref = "/root/main/ocrmechlist/ocrmechlistinfo";
  228. var ref2 = "/root/send/savedata";
  229. var gridObj = grd_ocrmechlist;
  230. var savedata = "status▦calcscorcd▦formcd▦calcscorflag▦bizflag▦detcalcscorflag▩";
  231. var dataString = "";
  232. for ( var i = 1; i < gridObj.rows; i++){
  233. if (gridObj.rowStatus(i) != 0) {
  234. var instcd = model.getValue(ref + "[" + i + "]/instcd");
  235. var calcscorcd = model.getValue(ref + "[" + i + "]/calcscorcd");
  236. var formcd = model.getValue(ref + "[" + i + "]/formcd");
  237. var calcscorflag = model.getValue(ref + "[" + i + "]/calcscorflag");
  238. var bizflag = model.getValue(ref + "[" + i + "]/bizflag");
  239. var detcalcscorflag = model.getValue(ref + "[" + i + "]/detcalcscorflag");
  240. if ((!utlf_isNull(calcscorcd)) && (!utlf_isNull(formcd))){
  241. if (gridObj.rowStatus(i) == 1 || gridObj.rowStatus(i) == 3) {
  242. model.makeValue(ref2 + "[" + i + "]/status", "i");
  243. model.makeValue(ref2 + "[" + i + "]/instcd", instcd);
  244. model.makeValue(ref2 + "[" + i + "]/calcscorcd", calcscorcd);
  245. model.makeValue(ref2 + "[" + i + "]/formcd", formcd);
  246. model.makeValue(ref2 + "[" + i + "]/calcscorflag", calcscorflag);
  247. model.makeValue(ref2 + "[" + i + "]/bizflag", bizflag);
  248. model.makeValue(ref2 + "[" + i + "]/detcalcscorflag", detcalcscorflag);
  249. }
  250. if (gridObj.rowStatus(i) == 4) {
  251. model.makeValue(ref2 + "[" + i + "]/status", "d");
  252. model.makeValue(ref2 + "[" + i + "]/instcd", instcd);
  253. model.makeValue(ref2 + "[" + i + "]/calcscorcd", calcscorcd);
  254. model.makeValue(ref2 + "[" + i + "]/formcd", formcd);
  255. model.makeValue(ref2 + "[" + i + "]/calcscorflag", calcscorflag);
  256. model.makeValue(ref2 + "[" + i + "]/bizflag", bizflag);
  257. model.makeValue(ref2 + "[" + i + "]/detcalcscorflag", detcalcscorflag);
  258. }
  259. }
  260. }
  261. }
  262. if(utlf_isNull(calcscorcd)){
  263. messageBox("수가코드를 ", "C001");
  264. return;
  265. }
  266. if(utlf_isNull(formcd)){
  267. messageBox("서식코드를 ", "C001");
  268. return;
  269. }
  270. if (calcscorcd.length > 0){
  271. model.removenode("/root/send/savedata");
  272. model.makeValue("/root/send/savedata", savedata + dataString);
  273. model.refresh();
  274. submit("TXMRF04801");
  275. }
  276. }
  277. function fSaveComn()
  278. {
  279. var ref = "/root/main/ocrmechlist/ocrmechlistinfo";
  280. var gridObj = grd_ocrmechlist;
  281. var savedata = "status▦calcscorcd▦formcd▦calcscorflag▦bizflag▦detcalcscorflag▩";
  282. var dataString = "";
  283. for ( var i = 1; i < gridObj.rows; i++){
  284. //if (gridObj.rowStatus(i) != 0) {
  285. if (gridObj.rowStatus(i) != 0) {
  286. var instcd = model.getValue(ref + "[" + (i-1) + "]/instcd");
  287. var calcscorcd = model.getValue(ref + "[" + (i-1) + "]/calcscorcd");
  288. var formcd = model.getValue(ref + "[" + (i-1) + "]/formcd");
  289. var calcscorflag = model.getValue(ref + "[" + (i-1) + "]/calcscorflag");
  290. var bizflag = model.getValue(ref + "[" + (i-1) + "]/bizflag");
  291. var detcalcscorflag = model.getValue(ref + "[" + (i-1) + "]/detcalcscorflag");
  292. if ((!utlf_isNull(calcscorcd)) && (!utlf_isNull(formcd))){
  293. if (gridObj.rowStatus(i) == 1 || gridObj.rowStatus(i) == 3) {
  294. dataString = dataString + "i▦" + calcscorcd + "▦" + formcd + "▦" + calcscorflag + "▦" + bizflag + "▦" + detcalcscorflag + "▩";
  295. }
  296. if (gridObj.rowStatus(i) == 4) {
  297. dataString = dataString + "d▦" + calcscorcd + "▦" + formcd + "▦" + calcscorflag + "▦" + bizflag + "▦" + detcalcscorflag + "▩";
  298. }
  299. }
  300. }
  301. }
  302. if (calcscorcd.length > 0){
  303. model.removenode("/root/send/savedata");
  304. model.makeValue("/root/send/savedata", savedata + dataString);
  305. model.refresh();
  306. submit("TXMRF04801");
  307. }
  308. }
  309. function fOCRSave(){
  310. var RowCnt = ds_grd_ocrmechlist.rowcount;
  311. // KNUH_20101020_박성호_start 수가 수정 가능하도록 수정
  312. var savedata = "status▦calcscorcd▦formcd▦calcscorflag▦bizflag▦detcalcscorflag▦preformcd▦precalcscorcd▦mainyn▦condflag▩";
  313. var dataString = "";
  314. for ( i=0; i<RowCnt; i++) {
  315. var flag = ds_grd_ocrmechlist.getRowType(i);
  316. if(flag == Dataset.ROWTYPE_INSERT || flag == Dataset.ROWTYPE_DELETE || flag == Dataset.ROWTYPE_UPDATE) {
  317. var instcd = ds_grd_ocrmechlist.getColumn(i, "instcd");
  318. var calcscorcd = ds_grd_ocrmechlist.getColumn(i, "calcscorcd");
  319. var formcd = ds_grd_ocrmechlist.getColumn(i, "formcd");
  320. var calcscorflag = ds_grd_ocrmechlist.getColumn(i, "calcscorflag");
  321. var bizflag = ds_grd_ocrmechlist.getColumn(i, "bizflag");
  322. var detcalcscorflag = "";
  323. var preformcd = "";
  324. var precalcscorcd = "";
  325. // /*var detcalcscorflag = ds_grd_ocrmechlist.getColumn(i, "detcalcscorflag");*/
  326. // var detcalcscorflag = "";
  327. // var precalcscorcd = ds_grd_ocrmechlist.getColumn(i, "precalcscorcd");
  328. // var preformcd = ds_grd_ocrmechlist.getColumn(i, "preformcd");
  329. //
  330. // // KNUH_20101020_박성호_start 수가 수정 가능하도록 수정
  331. // var precalcscorcd = ds_grd_ocrmechlist.getColumn(i, "precalcscorcd");
  332. var mainyn = ds_grd_ocrmechlist.getColumn(i, "mainyn");
  333. var condflag = ds_grd_ocrmechlist.getColumn(i, "condflag");
  334. if ((!utlf_isNull(calcscorcd)) && (!utlf_isNull(formcd))){
  335. if (flag == Dataset.ROWTYPE_INSERT) {
  336. // KNUH_20101020_박성호_start 수가 수정 가능하도록 수정
  337. dataString = dataString + "i▦" + calcscorcd + "▦" + formcd + "▦" + calcscorflag + "▦" + bizflag + "▦" + detcalcscorflag + "▦" + preformcd + "▦" + precalcscorcd + "▦" + mainyn+ "▦" + condflag + "▩";
  338. }
  339. if (flag == Dataset.ROWTYPE_DELETE) {
  340. // KNUH_20101020_박성호_start 수가 수정 가능하도록 수정
  341. dataString = dataString + "d▦" + calcscorcd + "▦" + formcd + "▦" + calcscorflag + "▦" + bizflag + "▦" + detcalcscorflag + "▦" + preformcd + "▦" + precalcscorcd + "▦" + mainyn+ "▦" + condflag + "▩";
  342. }
  343. if (flag == Dataset.ROWTYPE_UPDATE) {
  344. // KNUH_20101020_박성호_start 수가 수정 가능하도록 수정
  345. dataString = dataString + "u▦" + calcscorcd + "▦" + formcd + "▦" + calcscorflag + "▦" + bizflag + "▦" + detcalcscorflag + "▦" + preformcd + "▦" + precalcscorcd + "▦" + mainyn+ "▦" + condflag + "▩";
  346. }
  347. }
  348. }
  349. }
  350. //sysf_trace("dataString:"+dataString);
  351. dsf_setCSVToDs("ds_savedata", savedata + dataString);
  352. var oParam = {};
  353. oParam.id = "TXMRF04801";
  354. oParam.service = "formmngtapp.CalcMechMngt";
  355. oParam.method = "reqInsCalcMechList";
  356. oParam.inds = "req=ds_savedata";
  357. oParam.outds = "ds_grd_ocrmechlist=ocrmechlistinfo ds_errinfo=errinfo";
  358. oParam.async = false;
  359. oParam.callback = "cf_TXMRF04801";
  360. tranf_submit(oParam);
  361. }
  362. function fSavePrnt()
  363. {
  364. var RowCnt = ds_grd_prntmechlist.rowcount;
  365. var savedata = "status▦prntcnt▦formcd▦formfromdt▦formtodt▦deptcd▩";
  366. var dataString = "";
  367. for ( var i = 0; i < RowCnt; i++){
  368. var flag = ds_grd_prntmechlist.getRowType(i);
  369. if(flag == Dataset.ROWTYPE_UPDATE){
  370. var instcd = ds_grd_prntmechlist.getColumn(i, "instcd");
  371. var formcd = ds_grd_prntmechlist.getColumn(i, "formcd");
  372. var formfromdt = ds_grd_prntmechlist.getColumn(i, "formfromdt");
  373. var formtodt = ds_grd_prntmechlist.getColumn(i, "formtodt");
  374. var deptcd = ds_grd_prntmechlist.getColumn(i, "deptcd");
  375. var prntcnt = ds_grd_prntmechlist.getColumn(i, "prntcnt");
  376. dataString = dataString + "u▦" + prntcnt + "▦" + formcd + "▦" + formfromdt + "▦" + formtodt + "▦" + deptcd + "▩";
  377. }
  378. }
  379. if (formcd.length > 0){
  380. dsf_setCSVToDs("ds_savedata", savedata + dataString);
  381. var oParam = {};
  382. oParam.id = "TXMRF04803";
  383. oParam.service = "formmngtapp.CalcMechMngt";
  384. oParam.method = "reqSetCalcMechList";
  385. oParam.inds = "req=ds_savedata";
  386. oParam.outds = "ds_grd_prntmechlist=prntmechlistinfo ds_errinfo=errinfo";
  387. oParam.async = false;
  388. oParam.callback = "cf_TXMRF04803";
  389. tranf_submit(oParam);
  390. }
  391. }
  392. // 진정동의서 팝업
  393. function fJinJeongPopUp(pFlag)
  394. {
  395. var CurrentRow = ds_grd_jinjeonglist.rowposition;
  396. var chk = ds_grd_jinjeonglist.getRowType(CurrentRow);
  397. //수정되기 전 데이터.
  398. var preFormcd = ds_grd_jinjeonglist.getColumn(CurrentRow, "formcd");
  399. var preCalcscorcd = ds_grd_jinjeonglist.getColumn(CurrentRow, "calcscorcd");
  400. ds_grd_jinjeonglist.addColumn("preformcd", "string");
  401. ds_grd_jinjeonglist.setColumn(CurrentRow, "preformcd", preFormcd);
  402. ds_grd_jinjeonglist.addColumn("precalcscorcd", "string");
  403. ds_grd_jinjeonglist.setColumn(CurrentRow, "precalcscorcd", preCalcscorcd);
  404. if((pFlag == "2" && chk == Dataset.ROWTYPE_INSERT) ||
  405. (pFlag == "2" && chk == Dataset.ROWTYPE_NORMAL) ||
  406. (pFlag == "2" && chk == Dataset.ROWTYPE_UPDATE)){
  407. frmf_setParameter("srch_cond", "JINJEONG:Y");
  408. frmf_modal("SPMRF03600", "SPMRF03600", null, null, null, null, null, null, null, null, null, null, "M");
  409. var formnm = frmf_getParameter("formnm");
  410. var formcd = frmf_getParameter("formcd");
  411. //Popup에서 선택하지 않고 닫았을 경우 기존 데이터 보존.
  412. if(utlf_isNull(formcd)) {
  413. return;
  414. }
  415. ds_grd_jinjeonglist.setColumn(CurrentRow,"formnm",formnm);
  416. ds_grd_jinjeonglist.setColumn(CurrentRow,"formcd",formcd);
  417. if(chk == Dataset.ROWTYPE_NORMAL)
  418. ds_grd_jinjeonglist.setRowType(CurrentRow, Dataset.ROWTYPE_UPDATE);
  419. }
  420. }
  421. //진정동의서 한줄 추가
  422. function fAddRow_JinJeong(flag) {
  423. var iRow = 0;
  424. if(flag == "I") {
  425. iRow = ds_grd_jinjeonglist.addRow();
  426. } else if(flag == "D") {
  427. iRow = ds_grd_jinjeonglist.addRow();
  428. }
  429. grdf_setStatus(switch1.case4.grd_jinjeonglist, "I", [iRow]);
  430. }
  431. //진정동의서 한줄 삭제
  432. function fDelRow_JinJeong(flag) {
  433. var iRow = ds_grd_jinjeonglist.rowposition;
  434. if(iRow < 0) return;
  435. if(flag == "I") {
  436. if(ds_grd_jinjeonglist.getRowType(iRow) == Dataset.ROWTYPE_INSERT){
  437. ds_grd_jinjeonglist.deleteRow(iRow);
  438. }else{
  439. grdf_setStatus(switch1.case4.grd_jinjeonglist, "D", [iRow]);
  440. }
  441. }
  442. }
  443. //진정동의서 저장
  444. function fJinJeongSave(){
  445. // var ref = "/root/main/jinjeonglist/jinjeonglistinfo";
  446. // var RowCnt = grd_jinjeonglist.rows;
  447. var RowCnt = ds_grd_jinjeonglist.rowcount;
  448. var savedata = "status▦formcd▦preformcd▩";
  449. var dataString = "";
  450. for ( i=0; i < RowCnt; i++) {
  451. var flag = ds_grd_jinjeonglist.getRowType(i);
  452. if(flag == Dataset.ROWTYPE_INSERT || flag == Dataset.ROWTYPE_DELETE || flag == Dataset.ROWTYPE_UPDATE) {
  453. var instcd = ds_grd_jinjeonglist.getColumn(i, "instcd");
  454. var formcd = ds_grd_jinjeonglist.getColumn(i, "formcd");
  455. var preformcd = ds_grd_jinjeonglist.getColumn(i, "preformcd");
  456. if (!utlf_isNull(formcd)){
  457. if (flag == Dataset.ROWTYPE_INSERT) {
  458. dataString = dataString + "i▦" + formcd + "▩";
  459. }
  460. if (flag == Dataset.ROWTYPE_DELETE) {
  461. dataString = dataString + "d▦" + formcd + "▩";
  462. }
  463. if (flag == Dataset.ROWTYPE_UPDATE) {
  464. dataString = dataString + "u▦" + formcd + "▦" + preformcd + "▩";
  465. }
  466. }
  467. }
  468. }
  469. dsf_setCSVToDs("ds_savedata", savedata + dataString);
  470. var oParam = {};
  471. oParam.id = "TXMRF04804";
  472. oParam.service = "formmngtapp.CalcMechMngt";
  473. oParam.method = "reqInsJinJeongList";
  474. oParam.inds = "req=ds_savedata";
  475. oParam.outds = "ds_grd_jinjeonglist=jinjeonglistinfo";
  476. oParam.async = false;
  477. oParam.callback = "cf_TXMRF04804";
  478. tranf_submit(oParam);
  479. }
  480. function fSavePROF()
  481. {
  482. var RowCnt = ds_grd_mechlist.rowcount;
  483. // KNUH_20101020_박성호_start 수가 수정 가능하도록 수정
  484. var savedata = "status▦calcscorcd▦formcd▦calcscorflag▦bizflag▦detcalcscorflag▦preformcd▦precalcscorcd▩";
  485. var dataString = "";
  486. for ( var i = 0; i < RowCnt; i++){
  487. var flag = ds_grd_mechlist.getRowType(i);
  488. if(flag == Dataset.ROWTYPE_INSERT || flag == Dataset.ROWTYPE_DELETE || flag == Dataset.ROWTYPE_UPDATE) {
  489. var instcd = ds_grd_mechlist.getColumn(i, "instcd");
  490. var calcscorcd = ds_grd_mechlist.getColumn(i, "calcscorcd");
  491. var formcd = ds_grd_mechlist.getColumn(i, "formcd");
  492. var calcscorflag = ds_grd_mechlist.getColumn(i, "calcscorflag");
  493. var bizflag = ds_grd_mechlist.getColumn(i, "bizflag");
  494. /*var detcalcscorflag = ds_grd_ocrmechlist.getColumn(i, "detcalcscorflag");*/
  495. var detcalcscorflag = "";
  496. var preformcd = ds_grd_mechlist.getColumn(i, "preformcd");
  497. // KNUH_20101020_박성호_start 수가 수정 가능하도록 수정
  498. var precalcscorcd = ds_grd_mechlist.getColumn(i, "precalcscorcd");
  499. if ((!utlf_isNull(calcscorcd)) && (!utlf_isNull(formcd))){
  500. if (flag == Dataset.ROWTYPE_INSERT) {
  501. dataString = dataString + "i▦" + calcscorcd + "▦" + formcd + "▦" + calcscorflag + "▦" + bizflag + "▦" + detcalcscorflag + "▩";
  502. }
  503. if (flag == Dataset.ROWTYPE_DELETE) {
  504. dataString = dataString + "d▦" + calcscorcd + "▦" + formcd + "▦" + calcscorflag + "▦" + bizflag + "▦" + detcalcscorflag + "▩";
  505. }
  506. if (flag == Dataset.ROWTYPE_UPDATE) {
  507. // KNUH_20101020_박성호_start 수가 수정 가능하도록 수정
  508. dataString = dataString + "u▦" + calcscorcd + "▦" + formcd + "▦" + calcscorflag + "▦" + bizflag + "▦" + detcalcscorflag + "▦" + preformcd + "▦" + precalcscorcd + "▩";
  509. }
  510. }
  511. }
  512. }
  513. if (calcscorcd.length > 0){
  514. dsf_setCSVToDs("ds_savedata", savedata + dataString);
  515. var oParam = {};
  516. oParam.id = "TXMRF04802";
  517. oParam.service = "formmngtapp.CalcMechMngt";
  518. oParam.method = "reqInsCalcPROFMechList";
  519. oParam.inds = "req=ds_savedata";
  520. oParam.outds = "ds_grd_mechlist=mechlistinfo";
  521. oParam.async = false;
  522. oParam.callback = "cf_TXMRF04802";
  523. tranf_submit(oParam);
  524. }
  525. }
  526. // 제증명 수가를 엑셀로 저장
  527. function excel_save(){
  528. if(ds_grd_mechlist.rowcount == 0){
  529. sysf_messageBox("엑셀로 저장할 데이터가", "I004");
  530. return;
  531. }
  532. grdf_exportExcel(switch1.case3.grd_mechlist, "", "제증명 수가", true);
  533. }
  534. function cf_TXMRF04801(sSvcId, nErrorCode, sErrorMsg) {
  535. if(nErrorCode < 0) return;
  536. }
  537. function cf_TXMRF04803(sSvcId, nErrorCode, sErrorMsg) {
  538. if(nErrorCode < 0){
  539. return;
  540. }else{
  541. var oParam = {};
  542. oParam.id = "TRMRF04803";
  543. oParam.service = "formmngtapp.CalcMechMngt";
  544. oParam.method = "reqGetPrntMechList";
  545. oParam.inds = "req=ds_send_reqdata";
  546. oParam.outds = "ds_grd_prntmechlist=prntmechlistinfo";
  547. oParam.async = false;
  548. oParam.callback = "cf_TRMRF04803";
  549. tranf_submit(oParam);
  550. }
  551. }
  552. function cf_TRMRF04803(sSvcId, nErrorCode, sErrorMsg)
  553. {
  554. if(nErrorCode < 0) return;
  555. }
  556. function cf_TXMRF04802(sSvcId, nErrorCode, sErrorMsg) {
  557. if(nErrorCode < 0) return;
  558. }
  559. function cf_TXMRF04804(sSvcId, nErrorCode, sErrorMsg) {
  560. if(nErrorCode < 0) return;
  561. }]]></Script>