在Crystal Reports中更新DataSet

时间:2012-05-18 15:58:17

标签: c# .net crystal-reports dataset

我几乎没有使用数据集和Crystal Reports的经验,所以如果答案非常明显,请不要打击我,我无法在线找到答案。

我有一个C#Winforms应用程序,其中包含一个从DataSet获取数据的Crystal Report。我从应用程序内部动态填充DataSet。

过去,如果我向DataSet添加了另一列,我可以右键单击Crystal Report中的DataSet,然后单击“Verify Database”以使报告中的新列可用。

现在,如果我这样做,会弹出以下窗口:

enter image description here

Class Name组合框中没有可用的项目,如果我选中该复选框,则会出现另一个也是空的组合框。

请注意我从程序内部填充DataSet,因此没有连接。

如何更新Crystal Reports中的DataSet,以便新列可用?

谢谢。

P.S。:我尝试了以下解决方案,但它不起作用:Update DataSet Schema On Crystal Reports for VS2008因为我看到了与上面相同的窗口。

此外,这是我看到的,可能有用:

enter image description here

Edit1:字段显示在数据源中,但不显示在字段资源管理器中。

我已经有一些与新添加的列具有相同名称的公式字段,但删除它们也无济于事。

2 个答案:

答案 0 :(得分:2)

我终于设法自己解决了。我做了三件事,我不太确定哪一个做了这个伎俩,因为我似乎无法重新设计问题。

  1. 我重命名了与我添加的DataTable列同名的公式字段。
  2. 我点击了“...”框并重新选择了同一个文件。
  3. 我在“班级名称”文本框中添加了内部连接ID {294de39c-3e3c-4748-9138-53d4be2a74a6}。
  4. 前两个可能没有帮助,因为他们之前没有工作。当我添加字符串时它确实起作用,这可能是解决方案,但这也不是第一次。

    希望我浪费的时间会节省一些人的时间。

答案 1 :(得分:0)

这是我的解决方案。以下是步骤:

  1. 创建新数据集并从SQL Server ObjectExplorer
  2. 拖动表
  3. 右键单击“数据库字段”
  4. 选择数据源位置
  5. 单击在步骤1中创建的新DataSet上的表
  6. 点击更新
  7. 希望它可以提供帮助