1.reportmoneyconvert.js
1 functionFormatmoney (mnum)2 {3 varMnum =parsefloat (mnum);4 varStroutput= "", strtemp= "", strintemp= ";5 varUnitarray =NewArray ("Round trillion", "Qian Bai", "0 one and three Woolu qi Ba Jiu");6 varMnumarray = Mnum.tostring (). Split ('. '));7 varIntegralnum = mnumarray[0];8 varIntegrallen =integralnum.length;9 varDecimalnum = (mnum.tostring (). IndexOf ('. ') >=0)? Mnumarray[1].substr (0, 2): ' 0 ';Ten varDecimallen =decimalnum.length; One varINTs = parseint (INTEGRALLEN/4); A varInty = integrallen%4; - if(Ints>3 | | (ints==3 && inty>0))return"Out of Range"; - if(inty>0) the { -ints++; -Integralnum = "0000". substr (Inty) +Integralnum; -Integrallen =integralnum.length; + } - vari = 0; + while(i<Integrallen) A { at varStrouttemp = ""; -strtemp = Integralnum.substr (i, 4); -i + = 4; - for(varj=0; j<4; J + +) - { -Strintemp = parseint (Strtemp.substr (J, 1)); inStrouttemp + = Unitarray[2].substr (strintemp, 1); - if(strintemp>0 && j<3) strouttemp + = Unitarray[1].substr (j, 1); to } +Strouttemp = Strouttemp.replace (/0 +$/, "" "); -ints--; the if(strouttemp!= "") Strouttemp + = Unitarray[0].substr (INTs, 1); * if(Strtemp.substr (3,1) = = ' 0 ') strouttemp + = "0"; $Stroutput + =strouttemp;Panax Notoginseng } -Stroutput = Stroutput.replace (/0 +/g, "0"). Replace (/^ 0/, ""). Replace (/0 $/, ""); the if(stroutput== "Round") Stroutput = ""; + if(decimallen==2) A { theStroutput + = (Decimalnum.charat (0)! = ' 0 ')? Unitarray[2].substr (parseint (Decimalnum.charat (0)), 1) + "angle": "0"; + if(stroutput== "0") Stroutput = ""; -Stroutput + = Unitarray[2].substr (parseint (Decimalnum.charat (1)), 1) + "min"; $ } $ Else - { - if(decimalnum!= ' 0 ') Stroutput + = Unitarray[2].substr (parseint (Decimalnum), 1) + "Corner"; the if(stroutput!= "") stroutput + = "whole"; - }Wuyi if(stroutput== "") Stroutput = ""; the returnStroutput; -}
2. Reference JS in the report
3. Use
Birt Amount Capitalization conversion