问候!
我花了一些时间研究如何从PHP Web应用程序与SAP进行通信,但文档不仅仅是备用的。我找到的方法是:
我无法找到的是:最简单的连接方式是什么?哪个版本的SAP支持SOAP?我错过了什么?
感谢您的帮助!
答案 0 :(得分:5)
如何连接到SAP取决于SAP的版本,SAP许可证以及您要连接的内容以及您尝试执行的操作。
如果您尝试访问SAP标准功能 - 即读取或更新SAP服务订单,标准BAPI应该允许您执行所需操作。 (请注意,BAPI只是一个带有标准API的RFC,供SAP客户使用)。
SAP有各种连接器,但对于较新版本的SAP(2004及更高版本),许多RFC功能模块都作为Web服务公开,这应该是您的理想选择。
您可能不得不要求ABAP开发人员(或者甚至是具有SAP经验的非开发人员)帮助您找到可用的RFC以及它们是否作为Web服务公开。 (如果不是ABAP开发人员应该能够将BAPI包装为具有简化接口的Web服务)。
如果您尝试执行SAP未提供先前功能的某些功能,或者可能访问自定义开发的对象,您肯定需要ABAP开发人员的帮助才能向您公开RFC。
根据您的系统设置,可能需要执行一些系统管理任务才能访问SAP系统。无论是通过RFC还是其他方式(要搜索的有用交易是SICF和SOAMANAGER)。 SAP Basis管理员可能还需要为您设置一些RFC连接。
如果您的公司使用SAP PI / XI或非SAP集成引擎,则可能更容易连接,但这种情况非常有限。
之前我曾使用IDOC进行单个邮件传输,但我不确定它对任何业务类型事务都比BAPI或Web服务有任何优势。尽管IDOC已存在一段时间,但如果存在标准的IDOC可能会非常稳定。
我不得不承认,我只是在连接到SAP时遇到了一些问题,但我希望这很有用。
答案 1 :(得分:1)
第三种选择是最简单的。
访问RFC(远程功能 调用),最好通过SOAP。