2

我们是一家实施了 SAP 的 SME。我们正在尝试使用 SAP 中的事务数据为我们的货运部门构建另一个 PHP 系统,用于图形报告等。这是因为我们没有内部的 ABAP 开发专业知识,并且任何 SAP 修改都是昂贵的。

目前,我已经成功实现了我们的目标,即对我们的 Quality DB2 服务器进行只读访问,并且任何写入都转到另一个 DB2 服务器。我们发现 SELECT 语句上的 CPU 使用率是可以接受的,并且用户仅被授予对特定表/视图的访问权限。

SAP's Quality DB2 -> PHP -> Different DB2 client

想知道以同样的方式从生产环境中读取是否安全?通过 RFC 连接器再次实现所有这些似乎非常痛苦。主从配置是我们的一个选项,但同样需要外部咨询。

编辑

忘了提一下,我们的 SAP 人员甚至不想再构建 6 个月的报告——他们想保持系统完好无损。这就是为什么我们在顶部使用 PHP 构建它的原因。

4

1 回答 1

3

如果您没有 ABAP 专业知识,请掌握它 -这并不难,而且您将获得很多“理所当然”(如“平台提供”)的东西,否则您将不得不手动实现 -比如用户认证和权限管理以及软件物流(将东西从开发转移到生产存储库)。有关简短(尽管有偏见)的介绍,请参阅这些 文章。如果您仍然需要外部 PHP 应用程序,那很好 - 但您确实应该首先尝试 ABAP。对于 Web 应用程序,您可能需要查看Web Dynpro ABAP使用带有BusinessGraphics元素的 IGS 内置图表引擎,您 将免费获得大量最自定义的图表类型。你也可以集成使用 Adob​​e Livecycle Designer 创建的 PDF 表单。

其次,虽然“任何 SAP 修改都很昂贵”可能是一个好方法,但您所建议的并不是修改。那是附加开发,它既不昂贵也不比任何其他编程语言和/或环境更复杂。如果你不能或不想完全使用现有的基础设施来实现你自己的应用程序,至少使用一个像样的接口——Web 服务、RFC 等等。从 ABAP 的角度来看,RFC 始终是最简单的选择,但您也可以使用 SOAP 或 REST,尽管您必须手动实现后者。这也不是那么难。

永远不要直接访问 SAP 数据库。只是不要。您必须自己实现所有约束,例如客户端依赖关系或检查有效日期和取消标志 - 这几乎不比编写一个体面的接口简单,并且每次结构更改时都容易中断。如果在某些时候你需要阅读一些更复杂的内容,比如长文本,那你就完蛋了。更不用说大多数内部或外部审计员(如果这恰好是您的公司和/或法律要求的问题)不喜欢直接数据库访问像这个一样重要的系统,这又会导致很多麻烦你真的不想惹的人。这不值得。

于 2012-06-21T07:18:36.380 回答