【问题标题】:Crystal Reports displays #### in numeric fields after upgrade升级后 Crystal Reports 在数字字段中显示 ####
【发布时间】:2013-09-23 11:01:03
【问题描述】:

我升级了一个包含 Crystal Report 文件的 Visual Studio 解决方案。自升级以来,当字段太窄而无法显示其值时,报告会显示交叉影线(也称为数字符号:#####)。它以前没有这样做。有什么简单的解决办法吗?

我有 9 个报告,虽然我对它们都进行了测试,并且修复了看起来太窄的字段宽度,但当我使用不同的数据集时,我总是会发现字段太窄而无法显示的新情况价值。

我发现大多数时候,只有几个像素丢失。在旧报告中,我什至可以看到一些数字在边缘被剪掉了一点,但这并不妨碍读取这些值。新版本的 Crystal Reports 将这些值替换为 #####。

我想我有两个解决方案:将所有字段放大几个像素或减小字体大小。我不确定是否有办法在全球范围内执行此操作,或者我是否必须为每个字段手动执行此操作。

有没有一种简单的方法来告诉 Crytsal Reports,在这样的字段中,我希望能够使用 Courier New 10 点显示 5 位数字?

我使用 Visual Studio 2012、.Net 4.5 和 SAP Crystal Reports,Microsoft Visual Studio SP5 的开发人员版本。旧报表是从水晶报表嵌入 VS 的时候开始的。

【问题讨论】:

  • 您从哪个版本升级到哪个版本?
  • @Telexx 我不知道报告是用哪个版本的 CR 创建的。如果我在 VS2010 中打开其中一个,它只会告诉我该报告是在 2002 年 5 月创建的,并且最后一次修改是在 2005 年 4 月。我们将报告升级到 VS2012 的最新版本的 CR,在这里可以找到:@987654321 @
  • 如果 CR 没有这样做,可能会导致一些非常大的问题显示不正确的数字。只需在画布上选择所有受影响的字段,然后一次性增加它们的大小。
  • 可以将公式附加到字体和字体大小。我现在没有安装 VS,但是在 Crystal 设计器中,您可以转到字段属性、字体选项卡,然后单击大小或字体旁边的 X-2
  • @Ryan 我明白了,你建议的是我在 VS2012 升级报告后所做的。然后,我在客户的计算机上安装了该软件,然后砰!还有###遍地。他们今天必须显示的数据与我的测试数据不同。

标签: visual-studio-2012 crystal-reports field-with-errors


【解决方案1】:

如果您无法对字段进行格式化以容纳数据库中的最大值,那么您没有太多好的选项,除非您转向不可打印的格式。这两件事可能对您有用:

  1. 启用这些字段的剪辑,使它们不再显示“###”。您可以通过右键单击有此问题的数字字段,选择“格式字段”,然后转到“数字”选项卡,然后单击“自定义”来执行此操作。应该有一个显示“允许字段剪切”的复选框。在我看来,这是非常危险的,因为值可能与其真实数值不同。

  2. 当值大于画布上的字段大小时,将字段设置为增长。这将在页面(我不相信有一种方法可以水平执行此操作) 时将字段扩展到页面下方。您可以通过右键单击字段来访问此选项,选择“格式化字段”,然后转到“通用”选项卡并选择“可以增长”。请注意,这不适用于数字字段,因此您必须先将其转换为字符串。

编辑:现在我想起来了, 有一种方法可以水平扩展字段,但实现起来稍微困难一些,并且需要通过公式计算和传递所需的宽度。您可以通过右键单击这些字段,选择“大小和位置”并单击“宽度”旁边的公式按钮来访问此公式。

【讨论】:

    【解决方案2】:

    每当我在向字段显示数据时遇到#### 问题时,我只是简单地增加该水晶报告字段的宽度

    【讨论】:

    • 上面的帖子应该是评论。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多