为了对来自数据源的数据进行进一步处理,或者根据字段数据对报表元素的格式进行特殊的设置,可以在设计区域的上方,点击【脚本】选项卡,进入脚本编辑窗口,编写自定义的脚本函数。
脚本函数使用Visual Basic .NET编程语言,下面是一个自定义脚本函数的例子:
1.在脚本选项卡中输入正确的函数
该函数用于实现将数字转换为中文大写功能,供参考。
Function ConvertToRMB(ByVal inputString As String) As String Dim numList As String = "零壹贰叁肆伍陆柒捌玖" Dim rmbList As String = "分角元拾佰仟万拾佰仟亿拾佰仟万" Dim number As Double = 0 Dim tempOutString As String = "" number = Double.Parse(inputString) Dim tempNumberString As String = Convert.ToInt64(number * 100).ToString() Dim tempNmberLength As Integer = tempNumberString.Length Dim i As Integer = 0 While i < tempNmberLength Dim oneNumber As Integer = Int32.Parse(tempNumberString.Substring(i, 1)) Dim oneNumberChar As String = numList.Substring(oneNumber, 1) Dim oneNumberUnit As String = rmbList.Substring(tempNmberLength - i - 1, 1) If Not (oneNumberChar = "零") Then tempOutString += oneNumberChar + oneNumberUnit Else If oneNumberUnit = "亿" OrElse oneNumberUnit = "万" OrElse oneNumberUnit = "元" OrElse oneNumberUnit = "零" Then While tempOutString.EndsWith("零") tempOutString = tempOutString.Substring(0, tempOutString.Length - 1) End While End If If oneNumberUnit = "亿" OrElse (oneNumberUnit = "万" AndAlso Not tempOutString.EndsWith("亿")) OrElse oneNumberUnit = "元" Then tempOutString += oneNumberUnit Else If Not tempOutString Is Nothing Then Dim tempEnd As Boolean = tempOutString.EndsWith("亿") Dim zeroEnd As Boolean = tempOutString.EndsWith("零") If tempOutString.Length > 1 Then Dim zeroStart As Boolean = tempOutString.Substring(tempOutString.Length - 2, 2).StartsWith("零") If Not zeroEnd AndAlso (zeroStart OrElse Not tempEnd) Then tempOutString += oneNumberChar End If Else If Not zeroEnd AndAlso Not tempEnd Then tempOutString += oneNumberChar End If End If End If End If End If i += 1 End While If Not tempOutString Is Nothing Then While tempOutString.EndsWith("零") tempOutString = tempOutString.Substring(0, tempOutString.Length - 1) End While While tempOutString.EndsWith("元") tempOutString = tempOutString + "整" End While Return tempOutString Else Return "" End If End Function
2.在单元格(文本框)中引用函数,设置单元格 Value 属性(注意:凡是支持【表达式】的属性均可调用脚本函数)
调用形式是:Code.函数名(参数列表) ,
= Code.ConvertToRMB(Fields!Bonus.Value)
3. 预览
相关资源:
注意
如需寻求在线帮助,请访问 ActiveReports 求助中心
如需了解更多ActiveReports产品特性,请访问 ActiveReports 官方网站
ActiveReports 官方技术交流群:109783140
下载产品体验产品功能:http://www.gcpowertools.com.cn/products/download.aspx?pid=16