点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
VisualStudio 2016,HelloWorld应用程序。 使用CrystalReport Engine v13。
报告模板文件。 在CR Designer中,根据报告中的表定义,进入Database/ShowSQLStatement,在其中显示大量SQL查询。 一切正确。
在运行时,我的应用程序从文件中加载模板,然后(出于测试目的)执行SetDataSource(new DataSet());
显示的报告仍根据"嵌入式" SQL查询显示结果。 似乎没有办法更改/重置查询。
帮助!
谢谢
迈克尔
查看此链接是否对您有用
https://apps.support.sap.com/ sap/support/knowledge/public/zh/2281780
神秘地讲,如果我们使用SqlDataAdapter初始化数据集,则该代码类型有效。
........
var dbDataAdapter = newSqlDataAdapter(queryString,dbConnection);
dbDataAdapter.Fill(dataSet," LOGDATA");
reportDocument.SetDataSource(dataSet);
-------------
以前,我们按如下方式初始化DataSet:
dbTable.Load(dbCommand.ExecuteReader());
dataSet.Tables.Add(dbTable);
------------
在两种情况下,数据集的内容都是相同的。 为什么一种方法有效而另一种无效? 有"适当的"方法吗?
嗨,迈克尔,
我将VS的Tag更改为CR。
使用数据集的原因 不同的驱动程序,并不总是支持完整的SQL。 使用MS to SQL适配器会使用完整的SQL。
Don
Hi Don
当报表基于单个表时,SqlDataAdapter方法可以工作,但仍在处理更复杂的多表报表时遇到困难。
描述问题:
一个报告合并了来自T1 T2和T3 3个表的列。 表关系由模板硬编码。
在运行时,我们希望通过SQL查询初始化报表,该查询实际上与"嵌入式"查询相同,但在WHERE令牌中具有额外的参数。
尽管从许多人那里获得了大量信息,它们提供了关于相同或相关问题的提示和技巧,但我们无法了解如何将SqlDataAdapter用于这种情况。 尝试了几件事,但还是没有运气。
我们非常感谢您的帮助。
谢谢
M
工作流程为:
打开报告:
登录到数据库服务器或等效服务器以获取SQL,原因是CR DB连接且SQL生成器是动态的,因此SQL将根据数据库源进行调整。
获取SQL,从报表中转换/复制SQL
与数据库服务器建立连接,并使用报表中的SQL查询数据集。
将报告的位置设置为数据集。
KBA 2281780的示例应用程序可以为您完成所有这些操作,并在调试模式下运行并一步步执行,以便您查看发生的情况。
https://launchpad.support.sap.com/#/notes/2281780
Don
Hi Don
由于我们没有S-UserID,因此无法阅读知识库文章。
[在这里向澳大利亚的本地人讲话,但是由于我们不是SAP用户,所以他们不能向我发出S-UserID。 巨大的录像带。]
有什么机会可以帮助您访问知识库信息? 我可以采取任何缓解疼痛的措施吗?
赞赏
M
这就是为什么我包括KBA编号,搜索该编号然后它就会出现的原因。
一周热门 更多>