导出为PDF时货币消失

问题描述

当我将报告导出为pdf时,货币消失了。

enter image description here

代码如下:

                                <TextRun>
                                  <Value>=Fields!dTransactionAmount.Value</Value>
                                  <Style>
                                    <FontFamily>Tahoma</FontFamily>
                                    <FontSize>9pt</FontSize>
                                    <Format>=Code.getChargeCurrency()</Format>
                                  </Style>
                                </TextRun>
                              </TextRuns> 

Public Shared Function getChargeCurrency() As string
    if NOT chargeNum = invoiceNumber then
        currency ="'$'#,0.00;('$'#,0.00)"
    else 
        currency="#,0.00;(#,0.00)"
        
    end if
    
    chargeNum = invoiceNumber
    Return currency
    End Function ``` 

解决方法

除了回答外,还没有答案。

如果您通过URL直接渲染为PDF,那么它可以工作吗?使用类似

的网址进行测试
http://myReportServer/ReportServer?/myReportName&rs:Format=PDF  

如果这行得通,那么我怀疑在渲染到屏幕时会设置该变量,因此当您渲染到PDF时,chargenum已经是=发票编号。

对于您的情况,我还不太了解,最好的解决方案是什么,但是您可以尝试将Globals.RenderFormat值存储在变量中,并在检查其他两个变量时检查是否未更改变量已更改。

类似...

if chargeNum <> invoiceNumber AND lastRenderFormat <> currentRenderFormat then
    currency ="'$'#,0.00;('$'#,0.00)"
else 
    currency="#,0.00;(#,0.00)"
    
end if

chargeNum = invoiceNumber
lastRenderFormat = currentRenderFormat

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...