【问题标题】:Connecting to SAP Business One Database using php使用 php 连接到 SAP Business One 数据库
【发布时间】:2017-07-12 01:55:37
【问题描述】:

我的任务是创建一个与 SAP Business One 安装交互的 PHP 网站。我需要做一些事情,例如:

• 从 SAP B1 中提取库存和客户数据 • 将客户和新订单数据推送到 SAP B1

PHP 网站将是自定义编写的。我见过一些与电子商务平台配合使用的集成工具,例如 Magento 和 WooCommerce,但对于这个项目,我将自己编写 PHP。

我没有任何使用 SAP Business One 的经验。

我希望 SAP Business One 有一个 API 或其他工具,可以让我轻松与其交互,并以安全的方式推送/拉取数据。提供 SAP B1 的公司说我可以使用“DI API Server”。

我显然需要熟悉所有这些,但我希望对 SAP B1 和 PHP 有一定了解的人可以给我一个快速概述或一些关于如何进行的建议。或者至少,保证所有这些都是可行的,编写我自己的 PHP 来与 SAP B1 交互并不是一个可怕的想法,等等。

谢谢!

【问题讨论】:

    标签: php database laravel server sap


    【解决方案1】:

    SAP Business One 具有可用于此目的的 DI API 或 DI 服务器。

    我建议您熟悉 SAP Business One SDK 帮助中心。 它非常有用,有大量示例,是一个很好的起点。

    它可能会或可能不会安装,请与提供 SAP Business One 的公司联系。如果未安装,请向他们索取 SAP Business One 下载文件,它应该位于 \Packages\ 目录中的某个位置。

    这是可行的,而不是一个可怕的想法。

    Screenshot of the SAP Business One SDK Help Center

    【讨论】:

      【解决方案2】:

      有多种方法可以从外部与 SAP B1 进行交互。我建议您从 DI API 开始。只需在您的 SAP 业务一个文件夹中搜索 dll Interop.SAPbobsCOM.dll。将其添加到您的项目中并开始使用它。使用 SAP Business one 的 SDK 帮助程序了解如何使用它。

      【讨论】:

        【解决方案3】:

        首先,我建议您使用 DI Server 而不是 DI API,因为它与 .NET 更兼容。它可能会为您提供任务支持,但在较长时间的运行中,使用 DI API 的 .NET 会好得多。 请参阅下文以连接 SAP。始终使用经理帐户,因为 SAP 允许使用经理帐户进行有限的多次登录。

        现在您必须为 PHP 激活 COM -> 启用扩展 php_com_dotnet.dll。

        在 php.ini 中你应该找到类似的内容:

        [PHP_COM_DOTNET]

        extension=php_com_dotnet.dll

        下面的代码将为您完成这项工作。

        echo "SBO PHP 测试
        ";

        $vCmp=new COM("SAPbobsCOM.company") or die ("No connection");

        $vCmp->server = "DFSI_DEV_2";

        $vCmp->CompanyDB = "SCMC_TEST";

        $vCmp->用户名 = "经理";

        $vCmp->密码 = "1234";

        //$vCmp->language = "ln_English";

        //$vCmp->UseTrusted = True;

        $lRetCode = $vCmp->连接;

        echo $vCmp->公司名称;

        回声'
        ';

        $vItem = $vCmp->GetBusinessObject(oItems);

        $RetVal = $vItem->GetByKey("A1010");

        echo '$vItem->Itemname';

        echo '

        准备好了';

        ?> 任务1 从 SAP B1 中提取库存和客户数据 普通的 SQL 会做这些事情。无需 SAP 登录。

        任务 2 将客户和新订单数据推送到 SAP B1

        这里是棘手的部分。 您可以直接通过 PHP 在 SAP b1 中创建销售订单,但我建议您构建服务器端队列管理器和中间件

        PHP 代码将订单存储在 DB [中间件]

        服务器端应用程序将在 DB 中查找新条目,并将使用 DI API 将条目发布到 SAP。成功进入后更新中间件

        我确实有类似的系统在运行,我们有大量现场用户使用门户网站创建销售订单。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2012-12-28
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-10-20
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多