/*************************************************************************************************************** * * ramfLineSetting rexport ¿¡¼­ ¼¿ÀÇ ¹ØÁÙ ±ß´Â Çʵ带 °è»êÇÑ´Ù. * * ramfSheetColor À繫Á¦Ç¥¿¡¼­ ´ëºÐ·ù °ü Ç× ¸ñ ¼¼¸ñ¿¡ µû¶ó ±×¸®µå¿¡ »öÀ» ³Ö¾îÁØ´Ù. * * ramfFnworkFormula ¿ø õ¿ø ¹é¸¸¿ø ´ÜÀ§¸¦ ¹Ý¿Ã¸²ÇÏ¿© °è»êÇÑ´Ù. * ***************************************************************************************************************/ /************************************* * lowhightacnt ¸ñ´ÜÀ§/¼¼¸ñ´ÜÀ§(lowacnt/highacnt) * gridnode ±×¸®µåÀÇ ³ëµå¼Â * calline °è»ê °á°ú°¡ ÀԷµǴ Ä÷³ *************************************/ function ramfLineSetting(lowhightacnt, gridnode, calline) { if(model.getValue(lowhightacnt) == "0") { var lineflag = "0"; } else { var lineflag = "1"; } var preacntflag = "N";//ù ÇàÀº ºñ±³ ÇÏÁö ¾ÊÀ½ for( i = 1 ; i <= instance1.selectNodes(gridnode).length ; i++ ) { if(preacntflag == lineflag && model.getValue(gridnode + "[" + i + "]/acntclsflag") == lineflag) { model.setValue(gridnode + "[" + i + "]/" + calline, "no_upline") } var preacntflag = model.getValue(gridnode + "[" + i + "]/acntclsflag") } } /************************************* * grid ±×¸®µå ID * lowhightacnt ¸ñ´ÜÀ§/¼¼¸ñ´ÜÀ§(lowacnt/highacnt) * printcolRef °¡¿îµ¥ Á¤·ÄÇÒ ´ëºÐ·ùÀÇ Ä÷³ *************************************/ function ramfSheetColor(grid, lowhightacnt, printcolRef) { for(i = grid.fixedRows ; i < grid.rows ; i++) { if(grid.valueMatrix(i, grid.colRef("acntclsflag")) == '5') { grid.rowStyle(i, "data", "background-color") = "#ffff99" grid.rowStyle(i, "data", "font-weight") = "bold" grid.cellStyle("text-align", i, grid.colRef(printcolRef)) = "center" } else if(grid.valueMatrix(i, grid.colRef("acntclsflag")) == '4') { grid.rowStyle(i, "data", "background-color") = "#99ccff" grid.rowStyle(i, "data", "font-weight") = "bold" } else if(grid.valueMatrix(i, grid.colRef("acntclsflag")) == '3') { grid.rowStyle(i, "data", "background-color") = "#66ffff" } else if(grid.valueMatrix(i, grid.colRef("acntclsflag")) == '2') { grid.rowStyle(i, "data", "background-color") = "#ccffff" } else if(grid.valueMatrix(i, grid.colRef("acntclsflag")) == '1') { grid.rowStyle(i, "data", "background-color") = "#ffffee" } else if(grid.valueMatrix(i, grid.colRef("acntclsflag")) == '0') { grid.rowStyle(i, "data", "background-color") = "#ffffff" } } } /************************************* * grid ±×¸®µå ID * acntcolumn °èÁ¤ Ä÷³¸í * calculationcolumn °è»ê½Ä Ä÷³¸í * sourcecolumn °è»ê¿¡ »ç¿ëµÇ´Â ÀÎÀÚÀÇ Ä÷³¸í * returncolumn °è»ê °á°ú°¡ ÀԷµǴ Ä÷³¸í *************************************/ function ramfFnworkFormula(grid, acntcolumn, calculationcolumn, sourcecolumn, returncolumn) { var instancerows = instance1.selectNodes(grid.nodeset).length; var instancefirstrow = 1; var seq = 0; var acntmappingrownum = new Array(); var arrvalue = new Array(); var calarr = sourcecolumn.split(","); var calarrlength = calarr.length; var returnarr = returncolumn.split(","); var returnarrlength = returnarr.length; var insertionValue = 0; if(calarrlength != returnarrlength) { messageBox("°è»ê½Ä ÇÊµå ¾Ö·¯", "E008"); return; } calarrvalue = new Array(instancerows); for(var i = instancefirstrow ; i <= instancerows ; i++) { calarrvalue[i] = new Array(calarrlength); for(j = 0 ; j <= calarrlength - 1 ; j++) { if(model.getValue(grid.nodeset + "[" + i + "]/" + calarr[j]) == "") { insertionValue = 0; } else { insertionValue = parseInt(model.getValue(grid.nodeset + "[" + i + "]/" + calarr[j])); } calarrvalue[i][j] = insertionValue; } acntmappingrownum[i] = model.getValue(grid.nodeset + "[" + i + "]/" + acntcolumn); } for(var m = instancefirstrow ; m <= instancerows ; m++) { if(model.getValue(grid.nodeset + "[" + m + "]/" + calculationcolumn) != "" && model.getValue(grid.nodeset + "[" + m + "]/" + calculationcolumn) != null) { var temparr = model.getValue(grid.nodeset + "[" + m + "]/" + calculationcolumn) arr = temparr.split("-"); var firstminusflag = 0; if(arr[0] == '') { firstminusflag = 1; } arrrows = arr.length; var plusarr = new Array(); var minusarr = new Array(); var minusarrseq = 0; var plusarrseq = 0; for(var i = firstminusflag ; i <= arrrows-1 ; i++) { temparr = arr[i].split('+'); if(firstminusflag == 0 && i == 0) { plusarr[plusarrseq] = temparr[i]; plusarrseq++; } else { minusarr[minusarrseq] = temparr[0]; minusarrseq++; } for(var j = 1 ; j <= temparr.length - 1 ; j++) { plusarr[plusarrseq] = temparr[j]; plusarrseq++; } } var resultarr = new Array(); for(k = 0 ; k <= calarrlength - 1 ; k++) { resultarr[k] = 0; } for(var i = instancefirstrow ; i <= instancerows ; i++) { for(var j = 0 ; j <= plusarr.length - 1 ; j++) { if(plusarr[j] == acntmappingrownum[i]) { for(var k = 0 ; k <= calarrlength - 1 ; k++) { resultarr[k] = resultarr[k] + calarrvalue[i][k]; } } } for(var j = 0 ; j <= minusarr.length - 1 ; j++) { if(plusarr[j] == acntmappingrownum[i]) { for(var k = 0 ; k <= calarrlength - 1 ; k++) { resultarr[k] = resultarr[k] - calarrvalue[i][k]; } } } } for(k = 0 ; k <= calarrlength - 1 ; k++) { model.setValue(grid.nodeset + "[" + m + "]/" + returnarr[k], Math.round(resultarr[k]/model.getValue("/root/send/moneyunit"))); } } } model.refresh(); } /************************************* * tempsheetlist ³ëµå¼Â * seqcolumn ¼ø¹ø Ä÷³¸í * calculationcolumn °è»ê½Ä Ä÷³¸í * sourcecolumn °è»ê¿¡ »ç¿ëµÇ´Â ÀÎÀÚÀÇ Ä÷³¸í * returncolumn °è»ê °á°ú°¡ ÀԷµǴ Ä÷³ * optcolumn ¿É¼Ç Ä÷³¸í * maxcalseq ¿É¼Ê °ª ÆÄ¶ó¹ÌÅÍ *************************************/ function ramfCashFlowFormula(valuenode, seqcolumn, calculationcolumn, sourcecolumn, returncolumn, optcolumn, maxcalseq, calbase) { var instancerows = instance1.selectNodes(valuenode).length; var instancefirstrow = 1; var seq = 0; var seqmappingrownum = new Array(); var arrvalue = new Array(); var optarr = optcolumn.split(','); var optarrlength = optarr.length; var calarr = sourcecolumn.split(','); var calarrlength = calarr.length; var returnarr = returncolumn.split(','); var returnarrlength = returnarr.length; var insertionValue = 0; if(calarrlength != returnarrlength) { messageBox("°è»ê½Ä ÇÊµå ¾Ö·¯", "E008"); //return; } calarrvalue = new Array(instancerows); for(var i = instancefirstrow ; i <= instancerows ; i++) { calarrvalue[i] = new Array(calarrlength); for(j = 0 ; j <= calarrlength - 1 ; j++) { if(model.getValue(valuenode + "[" + i + "]/" + calarr[j]) == "") { insertionValue = 0; } else { insertionValue = parseInt(model.getValue(valuenode + "[" + i + "]/" + calarr[j])); } calarrvalue[i][j] = insertionValue; } seqmappingrownum[i] = model.getValue(valuenode + "[" + i + "]/" + seqcolumn); } for(var m = instancefirstrow ; m <= instancerows ; m++) { if(model.getValue(valuenode + "[" + m + "]/" + calculationcolumn) != "" && model.getValue(valuenode + "[" + m + "]/" + calculationcolumn) != null && maxcalseq == model.getValue(valuenode + "[" + m + "]/" + optarr[1])) { var minusstr = ""; var plusstr = ""; var temparr = model.getValue(valuenode + "[" + m + "]/" + calculationcolumn) arr = temparr.split("-"); for( i = 0 ; i < arr.length ; i++ ) { if( i == 0 ) { var firstarr = arr[i].split("+"); if(firstarr.length > 0) { for( k = 0 ; k < firstarr.length ; k++) { plusstr = plusstr + firstarr[k] + "|"; } } } else { var unitarr = arr[i].split("+"); minusstr = minusstr + unitarr[0] + "|"; if(unitarr.length > 1) { for(k = 1 ; k < unitarr.length ; k++) { plusstr = plusstr + unitarr[k] + "|"; } } } } var plusarr = plusstr.split("|"); var minusarr = minusstr.split("|"); var resultarr = new Array(); for(k = 0 ; k < calarrlength ; k++) { resultarr[k] = 0; } for(var i = instancefirstrow ; i <= instancerows ; i++) { for(var j = 0 ; j < plusarr.length - 1 ; j++) { if(plusarr[j] == seqmappingrownum[i]) { for(var k = 0 ; k < calarrlength ; k++) { resultarr[k] = resultarr[k] + calarrvalue[i][k]; } } } for(var j = 0 ; j < minusarr.length - 1 ; j++) { if(minusarr[j] == seqmappingrownum[i]) { for(var k = 0 ; k < calarrlength ; k++) { resultarr[k] = resultarr[k] - calarrvalue[i][k]; } } } } for(k = 0 ; k < calarrlength ; k++) { if((calbase == "N" || calbase != "" && model.getValue(valuenode + "[" + m + "]/prntnm4") == calbase)) { model.setValue(valuenode + "[" + m + "]/" + returnarr[k], resultarr[k]); } //alert(model.getValue(valuenode + "[" + m + "]/seq" ) + " " + returnarr[k] + " " + resultarr[k]); } } } } /************************************* * valnode ³ëµå¼Â * valcol (º¹»çÁÍ)±âÁذª * comparedcol ºñ±³µÉ Ä÷³ * Avalset ºñ±³A colset * Asetcol º¹»çA colset * Bvalset ºñ±³B colset * Bsetcol º¹»çA colset *************************************/ function ramfFnworksheetAlign(valnode, valcol, comparedcol, Avalset, Asetcol, Bvalset, Bsetcol, Cvalset, Csetcol, Dvalset, Dsetcol) { var arrvalcol = valcol.split(","); var arrAvalset = Avalset.split(","); var arrAsetcol = Asetcol.split(","); var arrBvalset = Bvalset.split(","); var arrBsetcol = Bsetcol.split(","); /* var arrCvalset = Cvalset.split(","); var arrCsetcol = Csetcol.split(","); var arrDvalset = Dvalset.split(","); var arrDsetcol = Dsetcol.split(","); */ for(var i = 1 ; i <= model.instance1.selectNodes(valnode).length ; i++) { for(j = 0 ; j < arrAvalset.length ; j++) { if(model.getValue(valnode + "[" + i + "]/" + comparedcol) == arrAvalset[j]) { for(m = 0 ; m < valcol.length ; m++) { if(model.getValue(valnode + "[" + i + "]/" + arrvalcol[m]) != "") { model.setValue(valnode + "[" + i + "]/" + arrAsetcol[m], model.getValue(valnode + "[" + i + "]/" + arrvalcol[m])); } } } break; } for(j = 0 ; j < arrBvalset.length ; j++) { if(model.getValue(valnode + "[" + i + "]/" + comparedcol) == arrBvalset[j]) { for(m = 0 ; m < valcol.length ; m++) { if(model.getValue(valnode + "[" + i + "]/" + arrvalcol[m]) != "") { model.setValue(valnode + "[" + i + "]/" + arrBsetcol[m], model.getValue(valnode + "[" + i + "]/" + arrvalcol[m])); } } break; } } } }