在ABAP中重用Gateway DPC_EXT类报告/通过ABAP模拟对网关的调用

2020-09-18 14:37发布

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

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


大家好,

我在考虑是否可以通过ABAP模拟在同一系统上开发的网关服务的调用。

一个小场景

我创建了一个OData服务来创建和更新材料:它接收JSON,检索模型材料并将其复制以创建新材料。

这是完美的工作,但是,当然,它是一个接一个地工作。


对于即将上线的golive项目,我们必须创建约1000种材料,并且可能有些棘手,所以我正在开发经典的ABAP报告,该报告读取XLSX文件并完成工作

问题/问题

是的,我可以复制和粘贴我的OData服务的相同方法,但是在两个不同的位置保持更新相同的代码将是一团糟。
我可以将原始代码分离出来,放入另一个地方 类,然后在服务和报告中调用该类。

但是我想知道是否有可能调用我已经实现的服务,只是参数io_data_provider似乎有点棘手。

有人尝试过吗?

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

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


大家好,

我在考虑是否可以通过ABAP模拟在同一系统上开发的网关服务的调用。

一个小场景

我创建了一个OData服务来创建和更新材料:它接收JSON,检索模型材料并将其复制以创建新材料。

这是完美的工作,但是,当然,它是一个接一个地工作。


对于即将上线的golive项目,我们必须创建约1000种材料,并且可能有些棘手,所以我正在开发经典的ABAP报告,该报告读取XLSX文件并完成工作

问题/问题

是的,我可以复制和粘贴我的OData服务的相同方法,但是在两个不同的位置保持更新相同的代码将是一团糟。
我可以将原始代码分离出来,放入另一个地方 类,然后在服务和报告中调用该类。

但是我想知道是否有可能调用我已经实现的服务,只是参数io_data_provider似乎有点棘手。

有人尝试过吗?

付费偷看设置
发送
4条回答
wang628962
1楼 · 2020-09-18 15:29.采纳回答

Uwe Fetzer 是完全正确的。 请查看 https://grahamrobbo.github.io/building_gateway_services /并提供有关此主题的示例代码和演示 。 但是实际上有一种方法可以在ABAP系统中调用OData服务:使用eCATT OData助手自动进行OData服务测试

绿领巾童鞋
2楼-- · 2020-09-18 15:34

我找不到我两年前使用的博客/维基,但也许它们只是博客,而不像 this 其中的逻辑(即使 仅用于读取操作)直接放在_DPC_EXT类中。

我会尽力再次找到它,但是更改笔记本电脑对我没有帮助

ZJXianG
3楼-- · 2020-09-18 15:19

您永远不要在dpc_ext类中包含业务逻辑,请始终调用外部方法。 如果将逻辑重构(外包)到一个独立的类中,则可以为当前问题提供解决方案,并为将来提供更简洁的代码。 双赢。

暮风yp
4楼-- · 2020-09-18 15:22

感谢 Uwe Fetzer 格雷戈·沃尔夫(Gregor Wolf)为您提供提示。
我同意,外包代码是最好的选择,但我年轻又愚蠢,错误。 当我写Ocode的时候还不是OData的专家,所以我有点混乱。

我可以在这里责怪一些维基,这些例子展示了如何将编码放在_dpc_ext类中,但是我很可能会误解了整个例子,因为它们都引用了标准BAPI:)

再次,非常感谢您的提示:)

一周热门 更多>