2013-04-10 47 views
5

我工作的微软的Visual Studio空格2003抑制列,并删除水晶报表

我在寻找一种方式来抑制列,如果它是空的,取代由其他留下的空白列。

我到处搜寻,但我不能找到一种兼容的方式对2003年版

确实存在一个简单的方法? 我感谢任何帮助。

回答

5

Crystal Reports没有自动(或简单)的方式来动态移动列。

您可能会考虑多个标题和详细信息部分,它们可以近似于此 - 只需使用NULL值来抑制包含字段的部分即可。

+0

我确实相信..谢谢 – Nejthe 2013-04-10 13:13:20

1

右键单击报表对象并选择格式字段。在格式屏幕 - >数字选项卡上单击自定义按钮。在Custom Style(自定义样式)屏幕 - > Number(数字)选项卡上,选中“Suppress If Zero”(禁止如果为零)框

但我不认为它可以在版本存在2003

1

右键单击格式对象上现场点击下一页转到Common选项卡 - >在那里你会看到抑制复选框(检查复选框)旁边有公式编辑器图标点击下一个写公式

if isnull({FieldName}) then 
true 
else 
false 
+0

它是有道理的,但它并没有为我工作..但无论如何谢谢 – Nejthe 2013-04-10 12:27:51

+1

这个解决方案将工作,只需在公式isnull({FieldName}),并删除抑制检查复选框。 – 2013-04-10 12:32:30

+0

我做了一点修改,它的工作。如果(Vel({FieldName})= 0),则...(其余)( )。 但我仍然需要知道,如果我可以填补下一栏的空间,因为我不想保留字段空白.. – Nejthe 2013-04-10 12:38:46

1

为了什么是值得的,我有一个完全分开的原因这个问题。 我在报告中有多个组,其中一个是文档日期。右键单击组并选择组选项,选中“保持组合”选项。这意味着当有多个日期时,它们将移动到第二页,并在页面1上留下大的空白区域。

白色空间取决于查询返回的结果集;有时会出现,有时不会,这取决于同一日期有多少条记录。 花了两个小时试图弄清楚。

该部门的专家“一起保持”未经检查,我甚至没有意识到有一个“Keep Group Together”选项,直到我偶然发现它为止。

0

我发现在抑制列名的困难,如果它的字段值是在水晶报表空在Visual Studio 2008中我写的代码({tableName.FiledName})="".

这是非常简单的。只需右键单击列名称,选择格式对象,然后打开一个窗口。在常用选项卡中,选中压制复选框。点击抑制旁边的x-2图标复选框,然后打开格式公式编辑器,编写代码({tableName.FiledName})="",然后保存并退出。如果出错,编辑器将弹出错误消息。你会注意到列名将被调暗或禁用。