Páginas filhas
  • Funções e classes utilizáveis no EAI Protheus

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.


Abaixo as principais funções do EAI Protheus

Âncora
_Toc403759553
_Toc403759553
Static Function IntegDef

Veja os tópicos IntegDef em rotinas MVC Protheus e IntegDef em rotinas Não-MVC Protheus.

Âncora
_Toc403759554
_Toc403759554
FWIntegDef


Função de geração de mensagem Única de forma manual, acionando a IntegDef do programa indicado.
FWIntegDef( cSourceCode, cTypeMessage, cType, cXml, cFunName, lOnlyReturn, cVersion )
Parâmetros:

Nome Tipo Descrição Default Obrigatório Referência
cSourceCode Caracter Nome do fonte onde se encontra a rotina static IntegDef GetRotInteg()    
cTypeMessage Caracter Tipo da Mensagem (BusinessMessage, BusinessMessage, Etc. ) '20'(EAI_MESSAGE_BUSINESS)    
cType Caracter Envio ou Recepcao '1' (TRANS_SEND)    
cXml Caracter XML a ser tratado quando Recepção      
cFunName Caracter Força o GetRotInteg(), indicando para o EAI qual é a rotina que possui o adapter GetRotInteg()    
lOnlyReturn Lógico Quando for um Envio: .T. Define que sera gerado apenas o retorno da INTEGDEF e nao sera fetio o Envio .F.    
cVersion Caracter Versão da mensagem Única 1.000    

Âncora
_Toc403759555
_Toc403759555
FWEAIBusEvent


Cria bloco de XML referente a Business Event da Business Message da Mensagem Única
FWEAIBusEvent( cEntity, nOperation, aKeys )
Parâmetros:

Nome Tipo Descrição Default Obrigatório Referência
cEntity Caracter Entidade da mensagem (nome da mensagem única)      
nOperation Numérico Operação: 3 ou 4 = upsert / 5 = delete 2    
aKeys Array Vetor bidimensional com campos no formato {Campo, Conteúdo} 

 

{ }

 

    

 

Exemplo:
cXMLRet := FWEAIBusEvent( "ITEM", 5, { { "Code", SB1->B1_COD } } )
Retorno:
XML a ser utilizado:
<BusinessEvent>
<Entity>ITEM</Entity>
<Event>delete</Event>
<Identification>
<key name="code">0000000001</key>
</Identification>
</BusinessEvent>

Âncora
_Toc403759556
_Toc403759556
FWEAIBusRequest


Cria bloco de XML referente à Business Request da Business Message da Mensagem Única
FWEAIBusRequest( cRequest )

Parâmetros:

Nome Tipo Descrição Default Obrigatório Referência
cRequest Caracter Nome da requisição (nome da mensagem)      

 

Exemplo:
cXMLRet := FWEAIBusRequest( "AccountBalance" )

Retorno:
XML a ser utilizado :
<BusinessRequest>
<Operation>AccountBalance </Operation>
</BusinessRequest>

Âncora
_Toc403759557
_Toc403759557
FWEAILOfMessages

Função para geração de múltiplas mensagens de retorno na Response Message da mensagem única
FWEAILOfMessages( aMessages )
Parâmetros:

Nome Tipo Descrição Default Obrigatório Referência
aMessages Array 

Vetor bidimensional com os dados para a criação da mensagem no formato:

[1] Caracter - Mensagem

[2] Numérico - Tipo da mensagem: 1=error ou 2=warning

[3] Caracter - Codigo de Erro da mensagem conforme a mensagem

    X  

Exemplo:
aMessages := {}
aAdd( aMessages, { 'Estado nao existe' , 1, '001' } )
aAdd( aMessages, { 'CNPJ invalido' , 1, 'A10' } )
aAdd( aMessages, { 'Nao informado tipo', 2, '500' } )
cRet := FWEAILOfMessages( aMessages )
// cRet será
//<Message type="error" code="001">Estado nao existe</Message>
//<Message type="error" code="A10">CNPJ invalido</Message>
//<Message type="warning" code="500">Nao informado tipo</Message>

Âncora
_Toc403759558
_Toc403759558
FWEAIEMPFIL


Verifica o de/para de empresa filial no Protheus para o CompanyId e BranchId das Mensagem Única no recebimento
FWEAIEMPFIL( cCompanyID, cBranchId, cProduct )

Parâmetros:

Nome Tipo Descrição Default Obrigatório Referência
cCompanyID Caracter Codigo da companhia (CompanyID) recebido no XML da mensagem    X  
cBranchId Caracter Codigo da unidade (BranchID) recebido no XML da mensagem   X  
cProduct Caracter Codigo do produto (Product) recebido no XML da mensagem   X  


Retorno:
Vetor com { Empresa, Filial }

Âncora
_Toc403759559
_Toc403759559
CFGA070Int


Obtém um código interno da tabela de/para através de um código externo
CFGA070Int( cRefer, cAlias, cField, cValExt,cTable )
Parâmetros:

Nome Tipo Descrição Default Obrigatório Referência
cRefer Caracter Referencia. Normalmente a "marca" da mensagem: PROTHEUS / LOGIX / RM / DATASUL, etc.    X  
cAlias Caracter Alias do de/para (SA1, SA2, etc.)   X  
cField Caracter É o campo de referencia do De/para (A1_COD, B1_COD, etc. )   X  
cValExt Caracter Código externo para busca do código interno   X  
cTable Caracter Nome físico da tabela de dados ao qual o de-para se refere. Não é necessário que seja passado RetSqlName(cAlias)    


Retorno:
Código Externo

Âncora
_Toc403759560
_Toc403759560
CFGA070Ext


Obtém um código externo da tabela de/para através de um código interno
CFGA070Int( cRefer, cAlias, cField, cValInt,cTable)
Parâmetros:

Nome Tipo Descrição Default Obrigatório Referência
cRefer Caracter Referencia. Normalmente a "marca" da mensagem: PROTHEUS / LOGIX / RM / DATASUL, etc.    X  
cAlias Caracter Alias do de/para (SA1, SA2, etc.)   X  
cField Caracter É o campo de referencia do De/para (A1_COD, B1_COD, etc. )   X  
cValInt Caracter Código externo para busca do código interno   X  
cTable Caracter Nome físico da tabela de dados ao qual o de-para se refere. Não é necessário que seja passado RetSqlName(cAlias)    


Retorno:
Código Externo

Âncora
_Toc403759561
_Toc403759561
CFGA070Mnt


Faz a Inclusão /Alteração / Exclusão dos dados na tabela de/para
CFGA070Mnt( cRefer, cAlias, cField, cValExt, cValInt, lDelete, nOrdem,cTable )

Parâmetros:

Nome Tipo Descrição Default Obrigatório Referência
cRefer Caracter Referencia. Normalmente a "marca" da mensagem: PROTHEUS / LOGIX / RM / DATASUL, etc.      
cAlias Caracter Alias do de/para (SA1, SA2, etc.)   X  
cField Caracter É o campo de referencia do De/para (A1_COD, B1_COD, etc. )   X  
cValExt Caracter Código externo para gravacao      
cValInt Caracter Código interno para gravação   X  
lDelete Lógico Indica a deleção do registro .F.    
nOrdem Numérico Ordem para busca Se DELETE, assume 3, senão assume 1    
cTable Caracter Nome físico da tabela de dados ao qual o de-para se refere. Não é necessário que seja passado RetSqlName(cAlias)    

 

Âncora
_Toc403759561
_Toc403759561
SetRotInteg


Ajusta a rotina de integração no EAI (o GetRotInteg()), quando a rotina chamada não é a rotina de contexto da integração. Ao utilizar esta rotina, após a chamada da integração é aconselhável utilizá-la para voltar o GetRotInteg() ao estado original.
SetRotInteg( cFunction )

Parâmetros:

Nome Tipo Descrição Default Obrigatório Referência
cFunction Caracter Rotina que se deseja iniciar a integração    X  

Exemplo

SetRotInteg('CTBA030')

 

 

Âncora
_Toc403759561
_Toc403759561
GetRotInteg


Devolve a rotina de contexto de integração na Mensagem Única
GetRotInteg( )

Exemplo

cRotina:=GetRotInteg()

 

Âncora
_Toc403759561
_Toc403759561
_NoTags()


Ajusta a rotina de integração no EAI (o GetRotInteg()), quando a rotina chamada não é a rotina de contexto da integração. Ao utilizar esta rotina, após a chamada da integração é aconselhável utilizá-la para voltar o GetRotInteg() ao estado original.
SetRotInteg( cFunction )

Parâmetros:

Nome Tipo Descrição Default Obrigatório Referência
cFunction Caracter Rotina que se deseja iniciar a integração    X  

Exemplo

SetRotInteg('CTBA030')

Status do documentoConcluído
Data18/11/2014
Versão1.0
Versão anterior1.0
Autores

Jandir Deodato De Souza Silva

Índice resumido
Índice
maxLevel1
indent10px
Índice
Índice
outlinetrue
indent10px