Mostrando postagens com marcador inscrição estadual. Mostrar todas as postagens
Mostrando postagens com marcador inscrição estadual. Mostrar todas as postagens

domingo, 27 de maio de 2012

Usando SAP OLE para validar inscrição estadual

A validação de inscrição estadual é um problema, ja que a formula varia de estado para estado, mas felizmente o Sintegra disponibiliza uma dll para fazer essa validação.
Dessa forma você pode criar um executável que utiliza essa dll e chamá-lo a partir do ABAP ou utilizar o ABAP OLE Automation Controller.
Nesse post vou mostrar como registrar uma dll, configurá-la no SAP e chamá-la a partir do código ABAP.
A dll do Sintegra não tem uma camada OLE, então não pode ser chamada diretamente pelo ABAP.
Para solucionar isso eu criei uma segunda dll com OLE em VB6 que chamava a dll do Sintegra. No link abaixo você pode obter essa dll e o código fonte da mesma em vb6.
http://www.4shared.com/rar/k71qc_ZA/Sintegra-VB6.html

Com a dll do Sintegra e a dll OLE criada no VB em mãos, basta fazer o seguinte:

Copiar as dlls para a pasta C:\Windows\System32 (SysWOW64 em sistemas 64 bits) do servidor SAP.



Registrar a dll criada no VB6 utilizando o comando regsvr32 SapIntegra.dll (substituir pelo nome da sua dll). Atenção para sistemas como o windows 7 e server 2008 é necessário executar o console com privilégios de Administrador.

Apos o registro é necessário obter as informações da dll, para isso você pode utilizar o programa RegDllVew.


Com as informações da dll em mãos basta acessar a transação SOLE no SAP e criar um nova entrada conforme abaixo.


Agora que está tudo configurado basta utilizar as classes OLE para fazer a validação. Abaixo você pode ver um exemplo de utilizaçao da dll.