当RecordSelectionFormula使用?Date参数时,Crystal不会将WHERE传递给SQL。

2020-08-14 21:22发布

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

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


我有一个使用C#的程序已经使用了20年。 现在,一个客户问一个新的报表,我需要在该报表中添加一个DATE参数。 我意识到这是我第一次必须传递DATE参数。

记录选择公式为:{ORDR.CreateDate}> = {?date}

当我从Crystal运行报表时,报表将在5秒钟内运行。

当我从c#应用程序运行它并将日期传递给参数{?date}时,它花费了10分钟,好像日期不希望传递给SQL WHERE。 似乎传递给SQL的查询没有WHERE。 SQL返回1,000,000行而不是100行!
然后Crystal过滤行。 我相信这是正在发生的事情。

我相信我在C#中没有正确的代码来初始化日期参数。
设置日期参数的正确代码是什么?

当参数是字符串时,使用Report.SetParameterValue(i,ParameterValue); 效果很好,并且WHERE条件已传递给SQL。 但是,当Cyrstal参数是DateTime时,它确实可以工作……但是永远需要运行查询。

谢谢

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

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


我有一个使用C#的程序已经使用了20年。 现在,一个客户问一个新的报表,我需要在该报表中添加一个DATE参数。 我意识到这是我第一次必须传递DATE参数。

记录选择公式为:{ORDR.CreateDate}> = {?date}

当我从Crystal运行报表时,报表将在5秒钟内运行。

当我从c#应用程序运行它并将日期传递给参数{?date}时,它花费了10分钟,好像日期不希望传递给SQL WHERE。 似乎传递给SQL的查询没有WHERE。 SQL返回1,000,000行而不是100行!
然后Crystal过滤行。 我相信这是正在发生的事情。

我相信我在C#中没有正确的代码来初始化日期参数。
设置日期参数的正确代码是什么?

当参数是字符串时,使用Report.SetParameterValue(i,ParameterValue); 效果很好,并且WHERE条件已传递给SQL。 但是,当Cyrstal参数是DateTime时,它确实可以工作……但是永远需要运行查询。

谢谢

付费偷看设置
发送
2条回答
风早神人
1楼-- · 2020-08-14 21:46

MS-SQL 2016

SAP德到
2楼-- · 2020-08-14 21:57

您要连接到哪种类型的数据库?

一周热门 更多>