繁体   English   中英

Crystal Reports(预览)和Crystal Reports Viewer(导出)之间的舍入不一致

[英]Inconsistent rounding between Crystal Reports (preview) and Crystal Reports Viewer (export)

我有一个报告,显示不同项目的不同费率。 这些项目之一是“里程”,其费率为分数美分( 0.565 )。

我们要为这些比率显示完整的0.565 ,并以两位小数显示所有其他比率。

为方便起见,我在“ Format Field > Number > Customize使用了一个DecimalsRounding的公式,基本上看起来像这样:

if({RATE_TYPE}='MILEAGE')then 3 else 2

在Crystal Reports中,这似乎工作正常。 对于里程,将显示3个小数位,并且四舍五入到3个小数位。

在Crystal Reports Viewer(及其后续导出)中,它显示3个小数位, 四舍五入到2个小数位。

我正在使用Crystal Reports 2008(12.3.0.601)和Crystal Reports Viewer:

<system.web>
  <sectionGroup name="businessObjects">
    <sectionGroup name="crystalReports">
      <section name="rptBuildProvider" type="CrystalDecisions.Shared.RptBuildProviderHandler, CrystalDecisions.Shared, Version=12.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304, Custom=null"/>
    </sectionGroup>
  </sectionGroup>
  ...
  <compilation debug="true" defaultLanguage="c#">
    <assemblies>
      ...
      <add assembly="CrystalDecisions.Web, Version=12.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
      <add assembly="CrystalDecisions.Enterprise.InfoStore, Version=12.0.1100.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
      <add assembly="CrystalDecisions.ReportSource, Version=12.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
      <add assembly="CrystalDecisions.CrystalReports.Engine, Version=12.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
      <add assembly="CrystalDecisions.ReportAppServer.ClientDoc, Version=12.0.1100.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
      <add assembly="CrystalDecisions.Shared, Version=12.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
      <add assembly="CrystalDecisions.Enterprise.Framework, Version=12.0.1100.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
      ...
    </assemblies>
    <buildProviders>
      <add extension=".rpt" type="CrystalDecisions.Web.Compilation.RptBuildProvider, CrystalDecisions.Web, Version=12.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
    </buildProviders>
  </compilation>
  ...
  <httpHandlers>
    ...
    <add verb="GET" path="CrystalImageHandler.aspx" type="CrystalDecisions.Web.CrystalImageHandler, CrystalDecisions.Web, Version=12.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304"/>
    ...
  </httpHandlers>
  ...
</system.web>
<system.webServer>
  ...
  <handlers>
    ...
    <add name="CrystalImageHandler.aspx_GET" verb="GET" path="CrystalImageHandler.aspx" type="CrystalDecisions.Web.CrystalImageHandler, CrystalDecisions.Web, Version=12.0.2000.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" preCondition="integratedMode"/>
    ...
  </handlers>
  ...
</system.webServer>

(对不起代码墙)

有人遇到过吗? 有已知的解决方法吗?

您将需要为小数位设置默认值,并四舍五入到您想要达到的最大数量。 因此,在您的情况下为3。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM