"找不到可用的报表应用程序服务器。" -错误

2020-09-05 03:55发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我正在使用.net sdk从Visual Studio 2005连接到Crystal报表服务器XI R2。

在将Crystal Report Server从XI R2升级到Crystal Report Server 2008之前,我能够从.net应用程序成功运行报表。

现在,当我尝试从.net应用程序运行报告时,它可以很好地连接到Enterprise并可以正常检索报告,但是在代码附近失败

reportClientDocument = reportAppFactory.OpenDocument(infoObject.ID,0);

是否有办法使它正常工作? 任何建议都将不胜感激。

我的代码如下:

SessionMgr sessionMgr =新的SessionMgr();

EnterpriseSession enterpriseSession;

ReportAppFactory reportAppFactory;

ReportClientDocument reportClientDocument = new ReportClientDocument();

EnterpriseService enterpriseService;

InfoStore infoStore;

InfoObjects infoObjects;

InfoObject infoObject;

尝试

{

//设置CR服务器的名称

字符串crServerName = ConfigurationManager.AppSettings.Get(" CRServerName");

//设置用户ID以登录到CR服务器

字符串crUserID = ConfigurationManager.AppSettings.Get(" CRUserID");

//设置密码以登录到CR服务器

字符串crPwd = ConfigurationManager.AppSettings.Get(" CRPwd");

//设置用户标识以登录数据库

字符串dbUserID = ConfigurationManager.AppSettings.Get(" DBUserID");

//设置密码以登录数据库

字符串dbPwd = ConfigurationManager.AppSettings.Get(" DBPwd");

//设置连接信息以登录数据库

字符串dbServerName = ConfigurationManager.AppSettings.Get(" DBServerName");

//通过Crystal企业登录凭据

enterpriseSession = sessionMgr.Logon(crUserID,crPwd,crServerName," secEnterprise");

enterpriseService = enterpriseSession.GetService(" InfoStore");

infoStore =新的InfoStore(enterpriseService);

//传递报告名称进行查询,并将其传递给reportClientDocument

infoObjects = infoStore.Query("从CI_INFOOBJECTS中选择SI_ID,其中SI_NAME ='" + reportName +"'And SI_INSTANCE = 0");

infoObject = infoObjects [1];

//连接到RAS(报表应用服务器)

EnterpriseService tempService = enterpriseSession.GetService(""," RASReportFactory");

reportAppFactory =(ReportAppFactory)tempService.Interface;

reportClientDocument = reportAppFactory.OpenDocument(infoObject.ID,0);

//传递datbase登录凭据

reportClientDocument.DatabaseController.LogonEx(dbServerName,"",dbUserID,dbPwd);

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我正在使用.net sdk从Visual Studio 2005连接到Crystal报表服务器XI R2。

在将Crystal Report Server从XI R2升级到Crystal Report Server 2008之前,我能够从.net应用程序成功运行报表。

现在,当我尝试从.net应用程序运行报告时,它可以很好地连接到Enterprise并可以正常检索报告,但是在代码附近失败

reportClientDocument = reportAppFactory.OpenDocument(infoObject.ID,0);

是否有办法使它正常工作? 任何建议都将不胜感激。

我的代码如下:

SessionMgr sessionMgr =新的SessionMgr();

EnterpriseSession enterpriseSession;

ReportAppFactory reportAppFactory;

ReportClientDocument reportClientDocument = new ReportClientDocument();

EnterpriseService enterpriseService;

InfoStore infoStore;

InfoObjects infoObjects;

InfoObject infoObject;

尝试

{

//设置CR服务器的名称

字符串crServerName = ConfigurationManager.AppSettings.Get(" CRServerName");

//设置用户ID以登录到CR服务器

字符串crUserID = ConfigurationManager.AppSettings.Get(" CRUserID");

//设置密码以登录到CR服务器

字符串crPwd = ConfigurationManager.AppSettings.Get(" CRPwd");

//设置用户标识以登录数据库

字符串dbUserID = ConfigurationManager.AppSettings.Get(" DBUserID");

//设置密码以登录数据库

字符串dbPwd = ConfigurationManager.AppSettings.Get(" DBPwd");

//设置连接信息以登录数据库

字符串dbServerName = ConfigurationManager.AppSettings.Get(" DBServerName");

//通过Crystal企业登录凭据

enterpriseSession = sessionMgr.Logon(crUserID,crPwd,crServerName," secEnterprise");

enterpriseService = enterpriseSession.GetService(" InfoStore");

infoStore =新的InfoStore(enterpriseService);

//传递报告名称进行查询,并将其传递给reportClientDocument

infoObjects = infoStore.Query("从CI_INFOOBJECTS中选择SI_ID,其中SI_NAME ='" + reportName +"'And SI_INSTANCE = 0");

infoObject = infoObjects [1];

//连接到RAS(报表应用服务器)

EnterpriseService tempService = enterpriseSession.GetService(""," RASReportFactory");

reportAppFactory =(ReportAppFactory)tempService.Interface;

reportClientDocument = reportAppFactory.OpenDocument(infoObject.ID,0);

//传递datbase登录凭据

reportClientDocument.DatabaseController.LogonEx(dbServerName,"",dbUserID,dbPwd);

付费偷看设置
发送
2条回答
半个程序猿
1楼 · 2020-09-05 04:12.采纳回答

因此无法连接。

您是否看到阻止与RAS服务器的连接的任何内容? 我假设您的应用程序与RAS服务器位于不同的计算机上。

防火墙配置是我首先要考虑的。 接下来是网络配置。

此致,

Ted Ueda

当学会了学习
2楼-- · 2020-09-05 04:06

在服务器名称用户安全设置中为您的报告编写者组提供查看访问权限 :CrystalReports2013ReportApplicationServer

一周热门 更多>