将 Magento 与 SAP ECC 6.0 后端集成
我是一名刚毕业(即:缺乏经验)的开发人员,其任务是确定将 Magento 与基于 SAP 的后端集成的可行性。我们公司的开发人员没有任何使用 SAP 或 Magento 的经验,因此我希望 Stack Overflow 社区能够为我的研究指明正确的方向。我们是一家小公司(四名全职开发人员),这个项目的时间安排很紧,所以我试图收集尽可能多的信息。
客户拥有分层定价结构、税收计算逻辑、促销优惠和自动运费确定,所有这些都在 SAP ECC 6.0 系统中实施。他们希望将所有在线商店迁移到 Magento,同时继续利用 SAP 中的所有现有功能。这个想法是通过覆盖 Magento 中的某些模块来远程调用 SAP BAPI 来实现这一点。
我调查了 SAPRFC,它看起来很有前途,但就更新频率而言相对陈旧。是否有开发人员有使用 SAPRFC 与 SAP ECC 6.0(有或没有 Magento 集成)的经验?如果有,您的经历是什么?涉及的最大风险因素是什么?
任何评论、建议或资源链接将不胜感激。
I'm a freshly graduated (read: inexperienced) developer who's been tasked with determining the feasibility of integrating Magento with an SAP-based backend. No developer at our company has any experience working with either SAP or Magento, so I was hoping that the Stack Overflow community may be able to point me in the right direction with my research. We're a small company (four full-time developers) and the timeline on this project would be tight, so I'm trying to gather as much information as possible.
The client has a tiered pricing structure, tax calculation logic, promotional deals, and automatic freight determination all implemented in an SAP ECC 6.0 system. They would like to migrate all their online stores over to Magento while continuing to utilize all existing functionality in SAP. The idea is to accomplish this by overriding certain modules in Magento to place remote calls to SAP BAPIs.
I've investigated SAPRFC, which looks promising but relatively stale in terms of update frequency. Do any developers have experience using SAPRFC with SAP ECC 6.0 (with or without Magento integration)? If so, what were your experiences, and what were the biggest risk factors involved?
Any comments, suggestions, or links to resources would be greatly appreciated.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我不确定,但我认为 saprfc 项目(php)已经停止了开发。因此,我建议您使用 php 和 SAP 都支持的标准技术:SOAP Web 服务。
在 SAP 端,您可以为所有现有的 BAPI 和功能模块生成 Web 服务。只需启动事务 SE80 -->打开您的功能模块(它必须是 RFC 可调用的)-->右键单击它并选择创建 Web 服务。
SAP Developer Network 上的一些链接:
在ABAP中
一旦您有了 wsdl,您就可以使用 php 中的
SoapClient
来调用 SAP 后端。I am not sure but I thought the saprfc project (php) has stopped its development. I therefore recommend you using a standard technology which is supported by both php and SAP: SOAP Web Services.
On the SAP side you can generate Web Services for all the BAPIs and Function Modules that exist. Simply start the Transaction SE80 --> open your Function Module (it must be RFC callable) --> right click on it and choose create Web Service.
some links on the SAP Developer Network:
in ABAP
as soon as you have a wsdl you can use
SoapClient
in php to call your SAP backend.不要对 RFC 开发方面没有太多进展感到惊讶 - RFC 技术是稳定的(不是过时的:-)),因此库通常不需要改变很多。我个人并不了解 SAPRFC,但那是因为我不太喜欢 PHP。我不确定 Java 是否会是一个选项...
恕我直言,使用 RFC 是一个好主意,因为它是一种经过验证且快速的技术,并且 BAPIS 已被记录和支持。请注意,无论您选择哪种技术,您都需要具有高级 FI 和 SD 知识(一般知识和客户特定知识)的人员,否则您甚至无法正确填写输入参数。而且您需要访问“实时”和定制的系统 - 模拟一个您没有任何经验的系统几乎是不可能的。
我首先会寻找该领域的 BAPI - 我既不喜欢金融也不喜欢 SD,所以我无法帮助您。如果您知道存在哪些 BAPI,您可能会更好地了解什么是可能的,什么是不可能的。紧密耦合(在事务过程中多次调用 SAP 系统)通常更难实现,因为 BAPI 通常是事务性的 - 一次调用创建销售订单,一次调用提交,仅此而已。如果您找不到 Magento 和 SAP 系统之间紧密耦合的方法,也许您可以定期从 SAP 数据生成 Magento 配置和目录数据(就个人而言,我会编写一个 ABAP 程序来导出数据 - 主要是因为性能并且因为 SAP 有一个优秀的调度系统)并且只将订单传回(我有理由确信有一个 BAPI 可以做到这一点)。
Don't be too surprised that there is not much movement when it comes to RFC development - the RFC technology is sta b le (not stale :-)) so that the libraries usually don't need to change much. I don't know SAPRFC personally, but that's rather because I'm not much into PHP. I'm not sure whether Java would be an option...
IMHO, using RFC is an excellent idea because it's a proven and fast technology and the BAPIS are documented and supported. Note that no matter which technology you choose, you'll need someone with advanced FI and SD knowledge (both general and customer-specifics) because otherwise you won't even be able to fill the input parameters correctly. And you'll need access to a 'live' and customized system - it's next to impossible to mock up a system you don't have any experience with.
I'd begin by looking for BAPIs in that area - I'm neither into financials nor SD, so I can't help you there. If you know which BAPIs are present, you might get a better idea of what is or is not possible. A tight coupling (with the SAP system being called multiple times during the course of the transaction) is usually harder to achieve because BAPIs are usually transactional - one call to create the sales order, one call to commit, that's it. If you don't find a way for a tight coupling between Magento and the SAP system, maybe you could generate the Magento config and catalog data from the SAP data periodically (personally, I'd write an ABAP program to export the data - mainly because of the performance and because SAP has an excellent scheduling system) and only transfer the orders back (I'm reasonably sure there's a BAPI for that).