我正在尝试在 SSRS 报告的占位符表达式中添加两个报告字段:
= SUM(Fields!TOTPRICE.Value) + SUM(Fields!TAX.Value)
但是当我运行报告时,占位符值出现错误。
这是我如何为报告创建数据源
enter code here <DataSources>
<DataSource Name="DummyDataSource">
<ConnectionProperties>
<DataProvider>SQL</DataProvider>
<ConnectString />
</ConnectionProperties>
<rd:DataSourceID>ef567ff-88fd-ef88f8f2b6b4</rd:DataSourceID>
</DataSource>
以下是我如何为报告创建数据集:
`enter code here` <DataSets>
<DataSet Name="CStore_POReport">
<Fields>
<Field Name="IDOBJECTNAME">
<DataField>IDOBJECTNAME</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="CDEACCOU">
<DataField>CDEACCOU</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="NMEREQUE">
<DataField>NMEREQUE</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="FLDTXTCONTACTPHONE">
<DataField>FLDTXTCONTACTPHONE</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="NMECOMPANY">
<DataField>NMECOMPANY</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="FLDTXTPOBOX">
<DataField>FLDTXTPOBOX</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="NMESTREET">
<DataField>NMESTREET</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="NMECITY">
<DataField>NMECITY</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="NMESTATE">
<DataField>NMESTATE</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="FLDTXTZIP">
<DataField>FLDTXTZIP</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="NUMQTYORDER">
<DataField>NUMQTYORDER</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="DSCITEM">
<DataField>DSCITEM</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="CURUNITDOLLARS">
<DataField>CURUNITDOLLARS</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="TXTUNITOFMEASURE">
<DataField>TXTUNITOFMEASURE</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="TOTPRICE">
<DataField>TOTPRICE</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="NUMTAXT">
<DataField>NUMTAXT</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="TXTCOMMENTS">
<DataField>TXTCOMMENTS</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="TAGTAX">
<DataField>TAGTAX</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="NUMREQ">
<DataField>NUMREQ</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="DTECREATED">
<DataField>DTECREATED</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="TAX">
<DataField>TAX</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="CRNCYID">
<DataField>CRNCYID</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="CRNCY_SYMB_TXT">
<DataField>CRNCY_SYMB_TXT</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="ITEM_CLS_CD">
<DataField>ITEM_CLS_CD</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
<Field Name="ITEM_CD">
<DataField>ITEM_CD</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
</Fields>
<Query>
<DataSourceName>DummyDataSource</DataSourceName>
<CommandText />
<rd:UseGenericDesigner>true</rd:UseGenericDesigner>
</Query>
<rd:DataSetInfo>
<rd:DataSetName>CStore</rd:DataSetName>
<rd:TableName>POReport</rd:TableName>
</rd:DataSetInfo>
</DataSet>
最佳答案
试试这个。
= CStr(SUM(CInt(Fields!TOTPRICE.Value)) + SUM(CInt(Fields!TAX.Value)))
好的,我认为你的问题是由于你的两个字段的类型都是字符串,所以在你可以执行添加操作之前,你需要将它们转换为整数
您需要将结果转换为字符串,以便在占位符中显示它
我已经为你创建了一个例子,首先是查询
接下来是处于编辑模式的报告
你有没有看到我在第一列中显示了 TOPPRICE,在第二列中显示了 TAX,并且我为第三列写了一个表达式
= CStr(CInt(Fields!TOTPRICE.Value) + CInt(SUM(Fields!TAX.Value)))
这是结果
关于c# - 在 SSRS 报告表达式中添加两个字段值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12671620/