我的项目中有50多个报告,因此我无法选择将货币符号传递给每个报告,因此我正在探索一种替代方法,我已经将文化符号设置为所需的符号,但是我无法将我的水晶报表设置为接受该符号。
为便于您更好地理解,我在数据库中有一个接受货币符号的字段,并且我已将当前的文化货币符号设置为该值,但是我不知道如何设置所有水晶报表以将该值作为默认货币符号,由于我是Crystal Report的新手,所以我也想要求详细解决此问题的步骤。
对于替代方案,我在枚举,db,文化中具有货币符号,因此解决此问题的任何简短方法都值得赞赏,因为我无需将值分别传递给水晶报表,通过任何一个公式传递它们可能都相当可观,但我希望将字段设置为货币类型,然后让框架为我处理其余部分。
答案 0 :(得分:0)
我已经在参数公式字段中添加了值,并通过发送值将其带入报告中
Imports CrystalDecisions.CrystalReports.Engine
Imports CrystalDecisions.Shared
Imports CrystalDecisions.ReportSource
Imports TimexSageEvoReportsWriter.clsEvoRequired
Private Const crParameterCurrency As String = "CurrencyCode"
Dim CrystlRpt As New ReportDocument
Dim myParameterFields As ParameterFields
CrystlRpt.FileName = reportPath
myParameterFields = CrystlRpt.ParameterFields
myParameterFields.Item(0).CurrentValues.Clear()
Dim currentParameterValues As ParameterValues = New ParameterValues()
Dim thisParameterField As ParameterField = myParameterFields(crParameterCurrency)
If thisParameterField.PromptingType = DiscreteOrRangeKind.DiscreteValue Then
Dim myParameterDiscreteValue As ParameterDiscreteValue = New ParameterDiscreteValue()
myParameterDiscreteValue.Value = myArrayList(0)(0).ToString()
currentParameterValues.Add(myParameterDiscreteValue)
End If
crViewer.ViewerCore.ReportSource = CrystlRpt
只有我需要获取一个公式,才能使其显示在字段的货币符号中,因为现在,我将货币代码放在金额字段附近,使其看起来像已格式化的金额,并使该符号在Crystal中为空白手动。