B1if-具有存储过程的水晶报表

2020-08-16 11:54发布

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

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


嗨,

我有一个调用水晶报表原子,该原子调用带有参数的存储过程的模板。

存储过程参数名称为@DocEntry

Crystal报表的参数名称为DocKey @

在b1if转换原子中传递参数的正确方法是什么?

现在我有:

<参数>

<参数v1 =" 20597" v2 ="" name =" DocKey @" type =" double"/>

<参数v1 =" 20597" v2 ="" name =" @ DocKey @" type =" double" parameterInDB =" true"/>

并且我收到以下异常:

com.crystaldecisions.sdk.occa.report.lib.ReportSDKException:索引:0,大小:0 ----错误代码:-2147467259错误代码名称:失败

我也尝试过:

<参数>

<参数v1 =" 20597" v2 ="" name =" DocKey @" type =" double"/>

<参数v1 =" 20597" v2 ="" name =" @ DocEntry" type =" double" parameterInDB =" true"/>

并收到以下异常:

com.crystaldecisions.sdk.occa.report.lib.ReportSDKParameterFieldException:旧参数字段和新参数字段的ParameterType属性必须相同。-错误代码:-2147213303错误代码名称:invalidParameterField

如何正确输入参数?

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

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


嗨,

我有一个调用水晶报表原子,该原子调用带有参数的存储过程的模板。

存储过程参数名称为@DocEntry

Crystal报表的参数名称为DocKey @

在b1if转换原子中传递参数的正确方法是什么?

现在我有:

<参数>

<参数v1 =" 20597" v2 ="" name =" DocKey @" type =" double"/>

<参数v1 =" 20597" v2 ="" name =" @ DocKey @" type =" double" parameterInDB =" true"/>

并且我收到以下异常:

com.crystaldecisions.sdk.occa.report.lib.ReportSDKException:索引:0,大小:0 ----错误代码:-2147467259错误代码名称:失败

我也尝试过:

<参数>

<参数v1 =" 20597" v2 ="" name =" DocKey @" type =" double"/>

<参数v1 =" 20597" v2 ="" name =" @ DocEntry" type =" double" parameterInDB =" true"/>

并收到以下异常:

com.crystaldecisions.sdk.occa.report.lib.ReportSDKParameterFieldException:旧参数字段和新参数字段的ParameterType属性必须相同。-错误代码:-2147213303错误代码名称:invalidParameterField

如何正确输入参数?

付费偷看设置
发送
8条回答
愤怒的猪头君
1楼-- · 2020-08-16 12:28

你好Youngjoon,

您已解决此问题? 我在9.3 PL8中有同样的例外:

com.crystaldecisions.sdk.occa.report.lib.ReportSDKException:索引:0,大小:0 ----错误代码:-2147467259错误代码名称:失败

谢谢。

Yassine

SKY徐
2楼-- · 2020-08-16 12:24

嗨@ youngjoon.kim,

几年前,我们遇到了同样的问题。 显然,不可能在布局/报表中使用带有入站参数的存储proc作为数据源–当它在BO客户端(=> CR的Windows运行时)中工作时,在B1if(=> CR的Java运行时)中不工作 )。

我们多年的解决方法是用B1if中使用的报告中的用户定义视图替换SP。 由于问题仍然存在,我们也于2019年将此临时解决方法迁移到了HANA。

请注意,以下脚本在某种程度上未获得SAP的认可,并且可能无法正确涵盖标准布局的所有方面! (此外,替换报告SP时需要花些时间。)

创建视图" COMPANY"。" DLNLineTypeLayout"(" DocEntry",
 " LineNum",
 " LineNum2",
 " LineSeq2",
 " LineType",
 " LineText",
 " TotalLevel",
 "小计",
 " TotalFrgn",
 " TotalSumSy",
 " GTotal",
 " GTotalFC",
 " GTotalSC",
 " VatSum",
 " VatSumFrgn",
 " VatSumSy")选择
 sub。" DocEntry",
 ROW_NUMBER()OVER(PARTITION BY子项。" DocEntry"
 ORDER BY子项" VisOrder",
 sub。" VisOrder_")-1 AS" LineNum",
 ROW_NUMBER()OVER(PARTITION BY子项。" DocEntry"
 ORDER BY子项" VisOrder",
 sub。" VisOrder_")-1 AS" LineNum2",
 sub。" LineSeq" AS" LineSeq2",
 sub。" LineType" AS" LineType",
 sub。" LineText" AS" LineText",
 -1 AS" TotalLevel",
 0 AS"小计",
 0 AS" TotalFrgn",
 0 AS" TotalSumSy",
 0 AS" GTotal",
 0 AS" GTotalFC",
 0 AS" GTotalSC",
 0 AS" VatSum",
 0 AS" VatSumFrgn",
 0 AS" VatSumSy"
 从(选择
 DLN1。" DocEntry",
 DLN1。" VisOrder" AS" VisOrder_",
 " VisOrder",
 -1 AS" LineSeq",
 DLN1。" LineType",
 " AS" LineText"
 从COMPANY.DLN1
 联合所有选择
 DLN10。" DocEntry",
 -1
 DLN10。" AftLineNum" + 1
 DLN10。" LineSeq",
 DLN10。" LineType",
 DLN10。" LineText"
 从COMPANY.DLN10)子,仅读
  

一周热门 更多>