2017-06-19 81 views
1

我正在尝试将SAP DI API用于SAP B1和PHP。类未注册COM DI API PHP

我使用的COM对象是这样的:

<?php 
try 
{ 
    $CompDI = new COM("SAPbobsCOM.Company"); 
    $CompDI->server = "193.0.0.241\SAP"; 
    $CompDI->CompanyDB = "Company_Test"; 
    $CompDI->username = "username"; 
    $CompDI->password = "password"; 
    $ReturnCode = $CompDI->Connect; 
    echo $CompDI->CompanyName; 
} 
catch(Exception $e){ 
    echo $e->getMessage(); 
} 
?> 

但我得到这个错误:

无法建立COM对象`SAPbobsCOM.Company':类没有注册

如果我改变“公司”的拼写,我得到这个错误:

无法建立COM对象`SAPbobsCOM.Company':不正确的语法

所以我认为它找到的类,但不能加载它,我有没有想过,问题的来源.. 。

提前谢谢!

+0

你运行在该DI API COM类注册正确的系统这个应用程序? OR正确安装SAP B1 [32/64位]客户端 – Hybridzz

+0

是安装DI API,SAP B1也是 –

+0

好的,如果您的应用程序是32位,您需要确保您的Web应用程序池允许32位应用程序。我的意思是在IIS中,我没有配置这个错误。 – Hybridzz

回答

0

我在以下情况下看到了这些错误,请检查其中的哪一个可以帮助您。没有安装

  1. DI API和SAP B1客户
  2. 应用是32位,但安装了DI API /客户端是64位或反之亦然
  3. 是32位和Web应用程序池没有与32位应用程序启用位应用程序

enter image description here