存储过程不显示Crystal报表中的字段

时间:2012-04-26 00:23:22

标签: stored-procedures crystal-reports sql-server-2008-r2

使用:     VS2010中的CR,SQL Server 2008R2

我有一个在SQL Server中运行时返回结果的SP,但是当我将它添加到CR时,它不会显示Field Explorer中的任何字段。但是,如果我尝试任何其他SP,它工作正常我可以看到它的字段。 我正在执行的步骤:

  1. 打开现有CR
  2. 右CLick数据库字段 - >数据库专家 - >  删除旧的SP - >添加新SP
  3. 弹出一个输入值的窗口,我将all设置为NULL并单击OOK
  4. 新SP出现在数据库专家右侧
  5. 我可以在Field Explorer中的Database Fields部分看到新的SP。
  6. 然而旁边没有PLUS + Sign。这意味着它不会显示其字段。
  7. 事实上,新SP和旧版本都具有相同数量的字段。只是一些sql发生了变化。

    对此感到很生气......请帮助。

    由于

3 个答案:

答案 0 :(得分:4)

如何在更改存储过程后更新Crystal Report中的存储过程 在数据库中。

将参数添加到数据库中的存储过程时,也可以使用此过程。

  1. 确保您的SP不会通过SP内的其他SP返回数据集。

    离。这不起作用: @sql ='select * from sometable' EXEC(@sql)

    如果是这种情况,请在SP的末尾临时添加一个select语句

    @sql ='从table1'选择column1,column2'   EXEC(@sql)

    从table1

  2. 中选择column1,column2
  3. 在Crystal Report,Fields Explorer中,右键单击SP并设置DataSource位置。 填写数据库的连接详细信息。

    • 选择您现有的SP和 从新数据库连接SP,然后单击“更新”按钮。
  4. 在CR菜单中,数据库 - >验证数据库

  5. 验证数据库后,从步骤1中删除临时选择语句。

答案 1 :(得分:0)

我是通过不接受左侧子报表链接中的默认选择水晶制作得到的。我不得不把它改成我自己的,不要使用默认值。

那很有用。 感谢

答案 2 :(得分:0)

我遇到了同样的问题,几乎花了1天时间寻找水晶报告的不同方面,然后我发现了

  1. 存储过程中存在问题,我纠正了静态字段编辑器不可见的情况。
  2. 然后我发现Crystal Reports安装版本已损坏,因此再次将其重新安装即可。