首页 > 代码库 > Birt金额大小写转换
Birt金额大小写转换
1.reportMoneyConvert.js
1 function formatMoney(mnum) 2 { 3 var mnum = parseFloat(mnum); 4 var strOutput="",strTemp="",strInTemp=‘‘; 5 var unitArray = new Array("圆万亿","仟佰拾","零壹贰叁肆伍陆柒捌玖"); 6 var mnumArray = mnum.toString().split(‘.‘); 7 var integralnum = mnumArray[0]; 8 var integrallen = integralnum.length; 9 var decimalnum = (mnum.toString().indexOf(‘.‘)>=0) ? mnumArray[1].substr(0, 2) : ‘0‘;10 var decimallen = decimalnum.length;11 var ints = parseInt(integrallen/4);12 var inty = integrallen%4;13 if (ints>3 || (ints==3 && inty>0)) return "超出范围";14 if (inty>0)15 {16 ints++;17 integralnum = "0000".substr(inty)+integralnum;18 integrallen = integralnum.length;19 }20 var i = 0;21 while (i<integrallen)22 {23 var strOutTemp = "";24 strTemp = integralnum.substr(i, 4);25 i += 4;26 for (var j=0; j<4; j++)27 {28 strInTemp = parseInt(strTemp.substr(j, 1));29 strOutTemp += unitArray[2].substr(strInTemp, 1);30 if (strInTemp>0 && j<3) strOutTemp += unitArray[1].substr(j, 1);31 }32 strOutTemp = strOutTemp.replace(/零+$/, "");33 ints--;34 if (strOutTemp!="") strOutTemp += unitArray[0].substr(ints, 1);35 if (strTemp.substr(3,1)==‘0‘) strOutTemp += "零";36 strOutput += strOutTemp;37 }38 strOutput = strOutput.replace(/零+/g, "零").replace(/^零/, "").replace(/零$/, "");39 if (strOutput=="圆") strOutput = "";40 if (decimallen==2)41 {42 strOutput += (decimalnum.charAt(0)!=‘0‘) ? unitArray[2].substr(parseInt(decimalnum.charAt(0)), 1)+"角" : "零";43 if (strOutput=="零") strOutput = "";44 strOutput += unitArray[2].substr(parseInt(decimalnum.charAt(1)), 1)+"分";45 }46 else47 {48 if (decimalnum!=‘0‘) strOutput += unitArray[2].substr(parseInt(decimalnum), 1)+"角";49 if (strOutput!="") strOutput += "整";50 }51 if (strOutput=="") strOutput = "";52 return strOutput;53 }
2.报表中引用JS
3.运用
Birt金额大小写转换
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。