将多个参数传递给子报告
问题描述:
我有问题,
我编写了一份子报告.一切都好.现在,我想以字显示金额的总计.在普通报表中,我编写了一个函数,并将字符串参数传递给report.
现在如何将参数传递给子报告子报告..plz帮助我..
I have a problem,
I developed a sub report. everything is fine. now i want to display totals of amount in words. In normal report i wrote a function and pass a string parameter to report.
now how to pass parameter to sub report sub reports.. plz help me..
答
如果我理解您想将数字表示为101, 01到一百零零一?
如果是这样,这取决于语言.您可以使用Google获得许多英语实现.
这是一个示例:
If I understood you want to express the numerical value in words, as 101,01 to one hundred and one point zero one?
If so, this is language dependent. You can Google for many English implementations.
Here is one example:
public static string NumberToWords(int number)
{
if (number == 0)
return "zero";
if (number < 0)
return "minus " + NumberToWords(Math.Abs(number));
string words = "";
if ((number / 1000000) > 0)
{
words += NumberToWords(number / 1000000) + " million ";
number %= 1000000;
}
if ((number / 1000) > 0)
{
words += NumberToWords(number / 1000) + " thousand ";
number %= 1000;
}
if ((number / 100) > 0)
{
words += NumberToWords(number / 100) + " hundred ";
number %= 100;
}
if (number > 0)
{
if (words != "")
words += "and ";
var unitsMap = new[] { "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten", "eleven", "twelve", "thirteen", "fourteen", "fifteen", "sixteen", "seventeen", "eighteen", "nineteen" };
var tensMap = new[] { "zero", "ten", "twenty", "thirty", "forty", "fifty", "sixty", "seventy", "eighty", "ninety" };
if (number < 20)
words += unitsMap[number];
else
{
words += tensMap[number / 10];
if ((number % 10) > 0)
words += "-" + unitsMap[number % 10];
}
}
return words;
}
干杯!
Cheers!