如何解决异常:
CrystalDecisions.CrystalReports.Engine.InternalException:无法打开行集。
答案 0 :(得分:10)
只要报表查询失败,这就是Crystal Reports中的一般错误。可能有很多原因。如果您的报告针对特定数据库,然后更改了数据库而未更新报告,则可能会导致报告。它也可能是由查询本身中的某些内容失败引起的,例如,如果报表基于运行报表的数据库中不存在的存储过程。尝试验证报告的数据库。
答案 1 :(得分:1)
如上所述这是一般性错误,并且像所有这些错误一样,这是一个非常令人沮丧的错误。问题是VS 2003没有水晶报告的预览选项,因此很难找到问题的根源。因此,解决此问题的最佳方法是在vs 2005或更高版本中创建空白项目,导入水晶报告并运行预览。那么你会得到一个更具体的错误。
答案 2 :(得分:1)
我遇到了同样的问题,并收到了此错误消息:
在结果集中找不到一个或多个字段。使用“验证数据库”更新报告。 文件文件名中的错误 {9FEE6406-1613-409A-B9BD-C5FDA24E3DEE} .rpt:
找不到行集列。
我使用存储过程来收集报告的数据,果然我传递了SP的无效参数。如果使用SP填充报告数据,请仔细检查参数的类型和值。
祝你好运!答案 3 :(得分:1)
我在报告中也有同样的错误,有子报告。当我切换到每个子报告并使用数据库/表/视图再次验证时,问题得到解决。
答案 4 :(得分:0)
这是由于您的关系中存在一些差异造成的,例如相反的左连接或类似的东西。每次修改报表所需的表和视图列表时,CR也有创建“默认”链接的坏习惯。它有时甚至可以自动创建在关系屏幕中可能无法“一次”查看的递归链接。
如果你找不到导致问题的关系(有时不那么明显),你将不得不进行一些试验和试验。通过在报表中添加/删除表来测试错误。
答案 5 :(得分:0)
每次在水晶中添加新表时,它都会在已链接的表上添加自己的链接,有时甚至会链接同一个表中的2个字段。 确保您知道自己的链接,以便在添加表格后滚动所有表格以查看从同一个表格创建的链接
答案 6 :(得分:0)
我收到了:
CrystalDecisions.CrystalReports.Engine.InternalException未处理 消息=报告应用程序服务器失败
谷歌把我带到了这里。对于那些有类似问题的人。对于记录:我有一个带有图像的byte []数组,并从报告中删除了日志,并且错误已停止。我现在必须弄清楚我对徽标做错了什么。
答案 7 :(得分:0)
我遇到了这个问题 - 我们使用SQL登录来实现安全性(非集成/ DSN连接)
通过为我的存储过程授予用户执行权限,我修复了问题。
真的,真的不能因为异常掩饰而更多地讨厌Crystal - 让这对所有程序员来说都是一个教训;
Try
'your code here
Catch
Throw new exception("Hey, here's a really friendly but completely useless error message")
End Try
会给未来的开发者带来痛苦 - 不要这样做!
答案 8 :(得分:0)
验证数据库时,它可能会告诉您它是最新的,在这种情况下,您还有两个选项需要检查:
a)刷新报告(闪电形图标),如果您遇到字段问题(例如SQL字段),它会给您错误,然后显示该字段的编辑窗口。
b)直接在SQL上运行查询,如果查询本身有问题,您也会在Crystal中收到此消息,但SQL会告诉您到底出了什么问题。
答案 9 :(得分:0)
检查Changing Crystal Report Database logon information at runtime in VS2005寻求帮助。
重要的一行是:
table.Location = Database & ".dbo." & table.Name
答案 10 :(得分:0)
对我来说,当我记录并重新登录到报告连接到的SQL服务器时问题得到解决
答案 11 :(得分:0)
在您的商店程序中如果您正在使用
SET NOCOUNT ON;
然后删除此
--SET NOCOUNT ON;
现在验证您的报告数据库,构建&运行你的解决方案。