在jdbc接收器适配器中以参数作为表类型来调用存储过程的映射结构

2020-09-26 11:04发布

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

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


大家好,

我们有SOAP到JDBC Syncronous接口的要求。 在接收方PI中,必须调用具有输出参数作为表类型的存储过程(OUT pram3 SAP.VIEW_TABLE)过程代码

--------------------------

PROCEDURE XYZ_prc"(IN parm1 NVARCHAR(100),IN parm2 NVARCHAR(100),OUT pram3 SAP.VIEW_TABLE,OUT param4 NVARCHAR(100),OUT param5 NVARCHAR(100))

--------------------------------------------

As支持以下SQL数据类型作为输入和输出参数的类型,我们如何在PI中实现这一点

--------------------------------------------------- -------------------------------------------------- ---------------------- INTEGER,BIT,TINYINT,SMALLINT,BIGINT,FLOAT,REAL,DOUBLE,NUMERIC,DECIMAL,CHAR,VARCHAR,STRING,LONGVARCHAR, DATE,TIME,TIMESTAMP,BINARY,VARBINARY,LONGVARBINARY,BLOB(输入和输出),CLOB(输入和输出),CURSOR(输出;仅与Oracle JDBC驱动程序有关)

--------------------------------------------------- -------------------------

我在消息映射中将varchar/string分配为" pram3"类型,测试了场景并最终出现以下错误,因为SAP.VIEW_TABLE是过程中的自定义类型,并且在映射中分配了其他类型

9/24/2017 10:57:45.071 PMErrorException被适配器框架捕获:在sax解析器中处理请求错误:对表/存储proc执行语句时出错。 " XYZ_prc"(结构声明):com.sap.db.jdbc.exceptions.JDBCDriverException:SAP DBTech JDBC:[1281]:调用中参数的数量或类型错误:参数过多:行1列72(在pos 71)

请让我知道有什么方法可以从接收方jdbc适配器调用上述存储过程。

谢谢。

此致

Ramesh M

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

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


大家好,

我们有SOAP到JDBC Syncronous接口的要求。 在接收方PI中,必须调用具有输出参数作为表类型的存储过程(OUT pram3 SAP.VIEW_TABLE)过程代码

--------------------------

PROCEDURE XYZ_prc"(IN parm1 NVARCHAR(100),IN parm2 NVARCHAR(100),OUT pram3 SAP.VIEW_TABLE,OUT param4 NVARCHAR(100),OUT param5 NVARCHAR(100))

--------------------------------------------

As支持以下SQL数据类型作为输入和输出参数的类型,我们如何在PI中实现这一点

--------------------------------------------------- -------------------------------------------------- ---------------------- INTEGER,BIT,TINYINT,SMALLINT,BIGINT,FLOAT,REAL,DOUBLE,NUMERIC,DECIMAL,CHAR,VARCHAR,STRING,LONGVARCHAR, DATE,TIME,TIMESTAMP,BINARY,VARBINARY,LONGVARBINARY,BLOB(输入和输出),CLOB(输入和输出),CURSOR(输出;仅与Oracle JDBC驱动程序有关)

--------------------------------------------------- -------------------------

我在消息映射中将varchar/string分配为" pram3"类型,测试了场景并最终出现以下错误,因为SAP.VIEW_TABLE是过程中的自定义类型,并且在映射中分配了其他类型

9/24/2017 10:57:45.071 PMErrorException被适配器框架捕获:在sax解析器中处理请求错误:对表/存储proc执行语句时出错。 " XYZ_prc"(结构声明):com.sap.db.jdbc.exceptions.JDBCDriverException:SAP DBTech JDBC:[1281]:调用中参数的数量或类型错误:参数过多:行1列72(在pos 71)

请让我知道有什么方法可以从接收方jdbc适配器调用上述存储过程。

谢谢。

此致

Ramesh M

付费偷看设置
发送
2条回答
大简至美
1楼-- · 2020-09-26 11:40

你好Ramesh!

您的数据库提供者是什么?存储过程将完全执行哪些操作?

关于,Evgeniy。

lukcy2020
2楼-- · 2020-09-26 11:36

嗨,拉梅什!

获得我所知道的表类型结果的唯一方法是使用返回表数据的表类型存储过程。

致谢,叶夫根尼。

一周热门 更多>