public frenchNumberToString ( double iNumber ) : String | ||
iNumber | double | |
return | String |
public String frenchNumberToString(double iNumber)
{
double iMillion = 0;
double iThousand = 0;
String rtn = "";
iNumber = Math.Round(iNumber, 2);
if (iNumber >= 1000000)
{
iMillion = pGetValue(iNumber, 1000000);
if (iNumber >= 2000000)
{
rtn = pFrenchGetNumber(iMillion, true) + " Millions ";
}
else
{
rtn = pFrenchGetNumber(iMillion, true) + " Million ";
}
iNumber = iNumber - (iMillion * 1000000);
}
if (iNumber >= 1000)
{
iThousand = pGetValue(iNumber, 1000);
if (iThousand == 1)
{
rtn = " Mil ";
}
else
{
rtn = rtn + pFrenchGetNumber(iThousand, false) + " Mil ";
}
iNumber = iNumber - (iThousand * 1000);
}
rtn = rtn + pFrenchGetNumber(Math.Truncate(iNumber), false);
rtn = rtn + pFrenchGetDecimal(iNumber);
return rtn.Substring(0, 1).ToUpper() + rtn.Substring(2).ToLower();
}
private void evalNumberToString(cReportFormulaInt fint) { if (fint.getVariables().item(C_NUMBERTOSTRING) == null) { fint.getVariables().add(null, C_NUMBERTOSTRING); } cReportVariable w_item = fint.getVariables().item(C_NUMBERTOSTRING); // the NumberToString funciton is for numbres // double iNumber = 0; int iLenguage = 0; iNumber = pGetNumber(m_report.getValue(fint.getParameters().item(0).getValue(), true)); iLenguage = cUtil.valAsInt(fint.getParameters().item(1).getValue()); cNumberToString ntos = new cNumberToString(); switch (iLenguage) { case C_SPANISH: w_item.setValue(ntos.spanishNumberToString(iNumber)); break; case C_ENGLISH: w_item.setValue(ntos.englishNumberToString(iNumber)); break; case C_FRENCH: w_item.setValue(ntos.frenchNumberToString(iNumber)); break; } }