Objetivo


Listar e detalhar as funções do internalId.

register


Cadastra um InternalId que será utilizado pelos Adapters. Será cadastrado por ambos os aplicativos, porém, cada um com seus respectivos nomes de tabelas e valores que compõem o campo de chave primária.

Parâmetros:

ParâmetroTipoDescrição
internalIdStringCódigo que identificará o InternalId. Utiliza-se o nome da mensagem para esse campo.
internalTableStringNome da tabela interna que possui os campos que serão utilizados para fazer a conversão de valores da InternalId.
internalColumnString

Colunas da tabela utilizada para fazer a conversão de valores da InternalId. Todas as colunas serão registradas nesse campo separadas pelo caractere “|”.

Exemplo: “cod_empresa|nota_fiscal|serie_nota_ fiscal”.

 

Retorno:

ValorDescrição
TRUECadastrou corretamente o registro.
FALSEHouve problemas durante o cadastro.

 

Exemplo de utilização em Progress:

IF oMapper:register("CustomerVendorInternalId","clientes","cod_empresa|cod_cliente") = TRUE THEN DO:    
	MESSAGE "Cadastro efetuado com sucesso" VIEW-AS ALERT-BOX.
END.
ELSE DO:
    MESSAGE "Problemas durante o cadastro" VIEW-AS ALERT-BOX.
END.

 

Exemplo de utilização em Java:

if(!internalIdMapperImpl.register("CustomerVendorInternalId","clientes", "cod_empresa|cod_cliente")) {        
	System.out.println("Problemas durante o cadastro");
} else {
    System.out.println("Cadastro efetuado com sucesso;");
}

existMapping (Progress) ou exists (Java)


Verifica se o internalid está registrado.

Parâmetros:

ParâmetroTipoDescrição
internalIdStringCódigo do internalId a ser consultado
internalTableStringNome da tabela que será pesquisada juntamente com o InternalId.

 

Retorno:

ValorDescrição
TRUEExiste internalId consultado
FALSENão existe o internalId consultado

 

Exemplo de utilização em Progress:

IF oMapper:existMapping("CustomerVendorInternalId", "clientes") = TRUE THEN DO:    
	MESSAGE "Encontrou o registro" VIEW-AS ALERT-BOX.
END.
ELSE DO:
    MESSAGE "Não encontrou o registro" VIEW-AS ALERT-BOX.
END.

 

Exemplo de utilização em Java:

if(internalIdMapperImpl.exists("CustomerVendorInternalId", "clientes")) {        
	System.out.println("Encontrou o registro");
} else {
        System.out.println("Não encontrou o registro");
}

setValue


Função responsável por adicionar os valores relacionados ao InternalId do aplicativo interno e do aplicativo externo.

Utilizada pelo aplicativo destino da mensagem, ou seja, quando receber uma mensagem de Evento, o aplicativo verificará a necessidade da utilização do InternalId e, caso necessário, cadastrará um registro utilizando essa função.

Esta verificará se o argumento dos campos internos possui a mesma quantidade de campos do registro do InternalId (feito pela função register), garantindo a integridade dos campos do InternalId.

Parâmetros:

ParâmetroTipoDescrição
internalIdStringCódigo do InternalId dos valores a ser incluído.
internalValueStringValores das colunas da tabela utilizadas mais o nome da tabela. Todas as colunas serão registradas nesse campo separadas pelo caractere “|”. No final os valores das colunas serão separados da tabela pelo caractere “@”. Exemplo: “01|234@pedidos”.
externalApplicationStringCódigo do aplicativo externo para identificar de quem é o valor dos campos externos. O código do aplicativo externo vem da mensagem de origem (BussinessMessage ou ReturnMessage) e deve ser extraído pela função do Adapter.
externalValueStringCódigo dos valores do InternalId utilizado pelo aplicativo externo.

 

Retorno:

ValorDescrição
TRUECadastrou o registro com sucesso
FALSEProblemas durante o cadastro do registro

 

Exemplo de utilização em Progress:

IF oMapper:setValue("CustomerVendorInternalId", "01|20@clientes", "DATASUL_EAI","02|30|40|12345678") = TRUE THEN DO:    
	MESSAGE "Cadastro efetuado com sucesso" VIEW-AS ALERT-BOX.
END.
ELSE DO:
    MESSAGE "Problemas durante o cadastro" VIEW-AS ALERT-BOX.
END.

 

Exemplo de utilização em Java:

if (!internalIdMapperImpl.setValue("CustomerVendorInternalId", "01|20@clientes", "DATASUL_EAI","02|30|40|12345678")) {        
	System.out.println("Problemas durante o cadastro");
} else {
    System.out.println("Cadastro efetuado com sucesso");
}

getValue


Função responsável por resgatar o valor interno relacionado ao InternalId do aplicativo externo.

Passa-se o código do InternalId e o aplicativo externo para fazer o rastreamento do relacionamento da chave dos valores externos.

Parâmetros:

ParâmetroTipoDescrição
internalIdStringCódigo do internalId
aplicativo_externoStringCódigo do aplicativo externo da mensagem
externalValueStringValor do internalId do aplicativo externo.

 

Retorno:

ValorDescrição
Valor do InternalId do aplicativo internoRetornará o valor do internalId do aplicativo interno
nullCaso não encontre o internalId

 

Exemplo de utilização em Progress:

DEFINE VARIABLE valor AS CHARACTER NO-UNDO. 
 
valor = oMapper:getValue("CustomerVendorInternalId", "DATASUL_EAI","02|30|40|123456789").
MESSAGE "Valor retornado" + valor + "= 01|20@clientes" VIEW-AS ALERT-BOX.

 

Exemplo de utilização em Java:

String valor = internalIdMapperImpl.getValue("CustomerVendorInternalId", "DATASUL_EAI","02|30|40|123456789");
System.out.println("Valor retornado" + valor + "= 01|20@clientes");

internalIdGetValue


Função responsável por extrair o valor de uma coluna de um campo interno do InternalId utilizando o nome da coluna registrada.

Passa-se o código do InternalId e o aplicativo externo para fazer o rastreamento do relacionamento da chave dos valores externos.

Parâmetros:

ParâmetroTipoDescrição
internalIdStringCódigo do internalId
internalValueStringValor dos campos do internalId do aplicativo interno que deseja extrair a informação. Pode ser passado o nome da tabela no final, separado pelo caractere “@”. Exemplo: “01|234@pedidos”
internalTableStringValor da tabela utilizada pelo internalId. Caso o código da tabela for passado no campo “internalValue”, o valor passado como parâmetro para internalTable poderá ser “null”’
columnStringCódigo da coluna utilizada para extrair valor de internalValue.

 

Retorno:


Exemplo de utilização em Progress:

DEFINE VARIABLE valor AS CHARACTER NO-UNDO.
  
valor = oMapper:internalIdGetValue("CustomerVendorInternalId","01|20@clientes",?,"cod_empresa").
MESSAGE "Valor retornado" + valor + "= '01'" VIEW-AS ALERT-BOX.
  
valor = oMapper:internalIdGetValue("CustomerVendorInternalId","01|20","clientes","cod_cliente").
MESSAGE "Valor retornado" + valor + "= '20'" VIEW-AS ALERT-BOX.

 

Exemplo de utilização em Java:

String valor = internalIdMapperImpl.internalIdGetValue("CustomerVendorInternalId", "01|20@clientes", null, "cod_empresa");
System.out.println("Valor retornado" + valor + "= '01'");
                
valor  = internalIdMapperImpl.internalIdGetValue("CustomerVendorInternalId", "01|20", "clientes", "cod_cliente");
System.out.println("Valor retornado" + valor + "= '20'");

deleteValue


Função responsável por excluir o(s) registro(s) que contenha(m) os valores do InternalId com os parâmetros selecionados.

Parâmetros:

ParâmetroTipoDescrição
internalIdStringCódigo do internalId utilizado como filtro para exclusão.
internalValueCHAR (200)Utilizará o código do valor interno como filtro para exclusão.
externalApplicationCHAR (200)Utilizará o código do aplicativo externo como filtro para exclusão.

Existe uma função separada sem esse argumento: excluirá todos os registros pertencentes ao “internalId” e “internalValue”.

 

Retorno:

RetornoValor
TRUEExcluiu o(s) registro(s) com sucesso
FALSEHouve problemas durante a exclusão do registro.

 

Exemplo de utilização em Progress:

IF oMapper:deleteValue("_CustomerVendorInternalId_","01|20@clientes") = TRUE THEN DO:    
	MESSAGE "Exclusão do internalid com o valor: '01|20@clientes' para todos os Aplicativos externos." VIEW-AS ALERT-BOX.
END.
ELSE DO:
    MESSAGE "Problemas com a exclusão." VIEW-AS ALERT-BOX.
END.
  
IF oMapper:deleteValue("_CustomerVendorInternalId_","01|20@clientes","DATASUL_EAI") = TRUE THEN DO:
    MESSAGE "Exclusão do internalid com o valor: '01|20@clientes' para a aplicativo externo: 'LogixApp'." VIEW-AS ALERT-BOX.
END.
ELSE DO:
    MESSAGE "Problemas com a exclusão." VIEW-AS ALERT-BOX.
END.

 

Exemplo de utilização em Java:

if(internalIdMapperImpl.deleteValue("CustomerVendorInternalId", "01|20@clientes")) {
	System.out.println("Exclusão do internalid com o valor: '01|20@clientes' para todos os Aplicativos externos.");
} else {
    System.out.println("Problemas com a exclusão.");
}
                
if(internalIdMapperImpl.deleteValue("CustomerVendorInternalId", "01|20@clientes","LogixApp")) {
    System.out.println("Exclusão do internalid com o valor: '01|20@clientes' para a aplicativo externo: 'LogixApp'.");
} else {
    System.out.println("Problemas com a exclusão.");
}