crystal reports asp.net我必须使用setdatabaselogon吗



我有一个使用xsd文件设计的水晶报告(使用ado.net连接的数据集)。Crystal版本14.2.5.2618和使用vs 2017…部署到.net 4.7.2框架网站。我有一个服务(WCF)返回一个有效且已填充的数据集。当我将报告部署到web服务器时,报告会提示数据库登录,尽管它在开发中很好。这是为了保护无辜者而更改名称的代码。

m_myRPT.Load(Server.MapPath("~/Reports/my.rpt"))
m_myRPT.PrintOptions.PaperOrientation = PaperOrientation.Portrait
m_myRPT.SetDataSource(m_DS.Tables("dtData")) 'returned from WCF and is fine
CRV_reportviewer.ReportSource = m_MyRPT
CRV_reportviewer.DataBind()

正如我所说,这在开发中效果良好。所有数据都会正确返回,数据集也会检出。我的问题是:

1) 我必须使用SetDatabaseLogon吗(WCF服务提供数据…报表不应该访问数据库,我也不希望它访问)

2) 我可以设置它,使数据集表足以容纳报告数据吗。。。

3) 具有一个充满数据的有效表的数据集难道不应该足以让报表显示吗。。。所以基本上
4)如何摆脱提示(最好是报告没有访问数据库的权限)?

这些问题的任何答案都将是伟大的。。。我不介意更改报告,这样它就不会提示数据,而不必在网页上的任何地方对数据库访问凭据进行硬编码。。。WCF服务提供数据。。。n层应用程序。。。我知道这是四个问题合一,但如果有人愿意回答,我真正需要的是第四个问题

这些年来,我多次使用Crystal,但不记得必须让它访问数据库。。。

提前向您致以最良好的问候和感谢;

1,您必须确保,DataTable的名称在CrystalReport中是相同的,如果是,请执行下一步

2、只为报表设置DataSource是不够的,必须将数据传递给报表:

ds.WriteXml(XmlDataPath)

将数据集保存为xml,现在可以将生成的xml添加到Crystal Report中,因此打开Crystal Report,转到数据库>数据库专家>创建新连接>ADO。NET(xml)并选择生成xml 的路径

我也面临同样的问题,这些步骤帮助了我

相关内容

  • 没有找到相关文章

最新更新