@WhereClause日期时间范围参数

2020-08-18 11:34发布

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

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


如何编写@WhereClause

在存储过程中用作日期时间范围参数?

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

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


如何编写@WhereClause

在存储过程中用作日期时间范围参数?

付费偷看设置
发送
5条回答
骆驼绵羊
1楼-- · 2020-08-18 11:50

您不能使用Crystal的"范围"参数传递给存储过程。 相反,您需要分别传递开始日期时间和结束日期时间参数。

-Dell

N-Moskvin
2楼-- · 2020-08-18 11:48

嗨,克里斯汀,

这是一种解决方法 需要使用子报表。 如果原始报告已包含子报告,则此方法将无效。

1。 首先创建空白报告

2。 在此报告中添加日期范围提示

3。 将原始报告作为子报告插入,然后将其放置在"报告"标题上。 确保用作源的SP具有"开始和结束日期"参数。

4。 禁止显示主报表中除报表标题之外的所有部分

5。 使用以下代码创建@startdate公式:

Minimum({?DateRangeParameter})

6。 使用以下代码创建@enddate公式:

Maximum({?DateRangeParameter})

7。 右键单击子报表>更改子报表链接>将@startdate公式移至右侧窗格>取消选中"根据字段选择子报表中的数据"; 从"选择要使用的参数字段"的下拉列表中,选择"开始日期"参数。

注意:如果看不到"开始日期"参数,则表明"日期范围"参数和SP参数的数据类型 不匹配。

8。 重复"结束日期"参数

-阿比拉什

Alawn_Xu
3楼-- · 2020-08-18 11:46

我不明白您的指示。

当我创建空白报告时:

1。 我使用创建的存储过程。 它有一个@startdate和@enddate。 而where语句看起来像:Where dEventTime> = @startdate和dEventTime <= @enddate。

2。 我创建了新参数:@Whereclause

3。 我将原始报告作为子报告插入空白报告中,并放置在页眉中

4。 禁止显示除标题部分之外的所有部分

5。 我试图创建一个startdate公式并收到错误消息:该字段无法汇总。

我想念什么?

Tong__Ming
4楼-- · 2020-08-18 12:04

嗨克里斯汀,

"空白"报告不需要连接到任何数据源。

在此空白报告中, 转到"字段资源管理器"并创建一个类型为" date"的参数,并将" allow range values"选项设置为True。

然后按照我之前的文章中的步骤3到8进行操作。

-Abhilash

zhangjiyang1323
5楼-- · 2020-08-18 12:05

谢谢Abhilash。 水晶报表现在可以正常工作了。 运行报表时,我获取了参数datetime以及参数startdate和enddate。

我还有其他问题。 我将新报告添加到了Interaction Adminstrator。 在"参数"选项卡>" SQL表列"下,我输入了DateTime。 在"表"选项卡中,我从原始报告中输入了存储过程,当我尝试在IC Business Manager中运行该报告时,我收到一条错误消息,即找不到"消息=表'sprpt_NWEIVRAuditTest; 1"。 文件a45aa806-d2e8-4e8f-b6e9-a7aa4cce97f3 {5F7FBBD7-2BD0-47EF-8C55-E703C97EFCEB} .rpt中的错误:找不到该表。

我在做什么错?

一周热门 更多>