Skip to Content
Author's profile photo Former Member

(BR) Utilizando DI API 9.0 em ambiente IIS

As etapas abaixo norteiam para a configuração correto da DI API v9.0 em ambiente:

  • Microsoft Windows 2012 Data Center
  • Microsoft SQL Server 2012
  • IIS 8
  • PHP 5.x
  • SAP 9.0

A instalação de Operação e Banco de Dados será separada, dando mais flexibilidade e segurança para a aplicação.

No ambiente 1 temos:

  1. Microsoft Windows 2012 Data Center
  2. IIS 8
  3. PHP 5.x (32 bits)
  4. DI API 9.0 (32 bits)

No ambiente 2 temos:

  1. Microsoft SQL Server 2012

Nota: Nesta configuração não configuraremos o LICENSE, ou seja, é necessário que os apontamentos estejam configurados corretamente.

AMBIENTE 1

  1. Instale o SO;
  2. Habilite o recurso IIS – padrão;
    1. Nas configurações do site, especifique um usuário com permissão para acesso a pasta de destino (wwwroot);
      1. caso esteja num domínio, utilize DOMÍNIO\Usuário e informe a senha;
  3. Faça o download (manual) da versão PHP 5.x;
    1. Ou instale o Microsoft Web Platform Installer e posteriormente instale (automaticamente) uma versão estável do PHP;
      1. caso opte pelo automático, o IIS habilitará todas as opções básicas;
      2. sugiro instalar o PHP Manager;
    2. Se manual – adicione o PHP ao IIS (Etapa 1: Instalar o IIS e o PHP);
    3. Na extensões do PHP, habilite a PHP_COM_DOTNET.dll;
    4. No php.ini descomente as linhas:
      1. allow_dcom = true, autoregister_casesensitive = false, autoregister_typelib = true e autoregister_verbose = true;
      2. Ative o enable_dl = on;
  4. Instale o Client B1DIAPI;
    1. Na pasta Conf edite o arquivo b1-local-machina.xml e defina o seu License na tag <value>localhost:port</value>;

AMBIENTE 2

  1. Instale ou restaure as base de dados padrão, juntamente com a SBO-COMMON e a SLDData (license).

O código abaixo é um exemplo de conexão com a DI API – sinta-se a vontade em alterá-lo:

<?php //Utilize a tag absoluta

$oComp = new COM(“SAPbobsCOM.Company”) or die(“No connection”);

$oComp->Server = “IP\\INSTANCIA”;

$oComp->LicenseServer = “IP:PORTA”;

$oComp->DbUserName = “usuário”; //Usuário do banco de dados

$oComp->DbPassword = “senha”; //Senha do banco de dados

$oComp->DBServerType = 7; //Tipo 7 indica o SGBD MSSQL 2012

$oComp->UseTrusted = false; //False = sem autenticação com Windows

$oComp->UserName = “usuário”; //Usuário do SAP

$oComp->Password = “senha”; //Senha do usuário do SAP

$oComp->CompanyDB = “Base”; //Seu banco de dados

//Testaremos sua conexão – se conectado

try {

    echo $oComp->Connect;

    echo “<br><br>”;

    $oComp->StartTransaction();

    echo $oComp->CompanyName . ‘<br \>’;

    $oComp->Disconnect;

//Senão, mensagem de erro

} catch (com_exception $expt) {

    echo $expt->getMessage();

    echo “<br><br>” . $oComp->GetLastErrorDescription;

}*/

?>

Salve esse arquivo como *.php dentro da pasta raiz do seu site.

Pronto!

Nota¹: Certifique-se que as configurações do banco de dados, tais como Instância, Firewall (porta), Namespace ou IP foram configurados corretamente, bem como, se o usuário informado para conexão com o banco de dados tem permissão master.

Nota²: Algumas informações do código acima não são necessárias para a DI API 9, uma vez, que o SLD possui todas – contudo, vamos preencher para garantir a conexão inicial.

Assigned Tags

      5 Comments
      You must be Logged on to comment or reply to a post.
      Author's profile photo Former Member
      Former Member

      Hi Lucio,

      This is nice you documented for everybody the result of your work, and I can only encourage this, but in English would have been great: my Portuguese understanding is so low 😉

      Anyway, good work and continue on it!

      Regards,

      Eric

      Author's profile photo Former Member
      Former Member
      Blog Post Author

      Hi Eric,

      I'll create content in EN.

      I'aam the R/3 environment (7 years), there are now four years in B1'm venturing.

      - We have some work (my) and team; we share with the community.

      Regards, Lucio

      Author's profile photo Former Member
      Former Member

      Hi Lucio,

      Issue with documenting is time... Else I personally would do a lot more.

      Regards,

      Eric

      Author's profile photo Former Member
      Former Member
      Blog Post Author

      Hii Eric,

      From now, so time appears'll post it here too. It knowledgebase.

      Regards, Lucio

      Author's profile photo Former Member
      Former Member

      Boa tarde, Lucio,

      Uma duvida sobre este post, quando você fala em SAP seria o B1?

      Sou desenvolvedor WEB e preciso integrar PHP com SAPB1, já li muito, mas na prática não encontrei nada que tenha obtido sucesso como teste, já trilhei varios caminhos

      Em que pode me orientar (um passo a passo)?

      Desde já grato pelo post, pois o mesmo esta bem claro...