我有一个遗留系统,其中设置了CMS服务器以从同一个数据库生成所有Crystal Reports。用户将在前端应用程序中输入所需的参数,然后将其传递给CMS以在CrystalReportViewer.jsp页面中生成报告。 CMC控制台和InfoView中显示的报告标题如下:
PersonnelDetailsA
PersonnelDetailsB
PersonnelDetailsC
在最近更新了应用程序后(根本没有触及Crystal Report功能),用户报告说他们无法生成PersonnelDetailsB
的报告(A和C都正常工作)。他们得到的错误消息是
Report source could not be retrieved from the state object
在我们的开发设置上进行了一些谷歌搜索和反复试验后,我发现错误是由于CMS无法找到所请求的报告造成的,所以我的直接,实际上唯一的假设是报告名称为my传递给CMS的应用程序是错误的(我设法重现错误的唯一方法)。所以我去了生产InfoView验证它。
原来我错了。所有报告名称都是正确的。
据我所知,在生产中设置CMS没有任何改变。在我们的应用程序更新之前,报告工作正常,我已经确认我们的应用程序中没有对Crystal Report功能进行任何更改。事实上,所有报告都在我们的开发设置中完美运行。然而,当我们部署到生产时,显然出现了问题。所有3个报告都在同一个文件夹中,即使提供了正确的报告名称,也无法找到其中一个报告。
我在这里缺少什么?除了无法找到相关报告之外,还有哪种方法会导致CMS抛出该特定错误?