Objetivo
Listar e detalhar as funções do internalId.
Objetivo
Listar e detalhar as funções utilizadas nos adapters para manipulação do InternalId. Para mais informações sobre o conceito de InternalId, consulte a documentação correspondente aqui.
register
Cadastra a estrutura de 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.
...
...
|
Informações |
---|
title | Uso da tabela no InternalId |
---|
| A informação da tabela interna é uma necessidade conceitual do InternalId, pois em alguns sistemas, pode ocorrer de um mesmo identificador de InternalId estar associado a mais de uma tabela. Por exemplo: O identificador "CustomerVendor" pode estar associado às tabelas "cliente" e "fornecedor". |
Parâmetros: Parâmetro | Tipo | Descrição |
---|
internalId | String | Código que identificará o InternalId. Utiliza-se o nome da mensagem para esse campo. Exemplo: "Invoice". | internalTable | String | Nome da tabela interna que possui os campos que serão utilizados para fazer a conversão de valores da InternalId. Exemplo: "nota-fiscal". | internalColumn | String | 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: Valor | Descrição |
---|
TRUE | Cadastrou corretamente o registro. | FALSE | Houve problemas durante o cadastro. |
|
Exemplo de utilização em Progress: Bloco de código |
---|
language | actionscript3 |
---|
theme | Emacs |
---|
|
|
...
...
| USING com.totvs.datasul.eai.internalid.*.
oMapper = InternalIdMapperProvider:getMapper().
IF oMapper:register(" |
|
...
CustomerVendor","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(" |
|
...
CustomerVendor","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
...
a estrutura do InternalId está cadastrada.
Expandir |
---|
|
Parâmetros: Parâmetro | Tipo | Descrição |
---|
internalId | String | Código do |
|
...
InternalId a ser consultado. Ex: "CustomerVendor". | internalTable | String | Nome da tabela que será pesquisada juntamente com o InternalId |
|
...
Retorno:
Valor | Descrição |
---|
TRUE | Existe internalId consultado | FALSE | Não existe o internalId consultado |
|
...
Exemplo de utilização em Progress: Bloco de código |
---|
language | actionscript3 |
---|
theme | Emacs |
---|
|
|
...
| USING com.totvs.datasul.eai.internalid.*.
oMapper = InternalIdMapperProvider:getMapper().
IF oMapper:existMapping(" |
|
...
CustomerVendor", "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(" |
|
...
CustomerVendor", "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.
Expandir |
---|
|
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âmetro | Tipo | Descrição |
---|
internalId | String | Código do InternalId dos valores a ser incluído. Ex: "CustomerVendor". | internalTable | String | Nome da tabela interna a qual está associado o InternalId. Ex: "clientes". | internalValue | String | Valores das colunas da tabela |
|
...
associada. Todas as colunas serão registradas nesse campo separadas pelo caractere “|” |
|
...
...
234”. | externalApplication | String | Código do aplicativo externo |
|
...
que identifica 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. | externalValue | String | Código dos valores do InternalId utilizado pelo aplicativo externo. |
|
...
Retorno: Valor | Descrição |
---|
TRUE | Cadastrou o registro com sucesso | FALSE | Problemas durante o cadastro do registro |
|
...
Exemplo de utilização em Progress: Bloco de código |
---|
language | actionscript3 |
---|
theme | Emacs |
---|
|
|
...
...
| USING com.totvs.datasul.eai.internalid.*.
oMapper = InternalIdMapperProvider:getMapper().
IF oMapper:setValue("CustomerVendor", " |
|
...
...
20", "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(" |
|
...
CustomerVendor", "clientes", "01| |
|
...
20", "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
...
nome do aplicativo externo.
Expandir |
---|
|
Parâmetros: Parâmetro | Tipo | Descrição |
---|
internalId | String |
|
...
Código do internalId. Ex: "CustomerVendor". | externalApplication |
|
...
| String | Código do aplicativo externo da mensagem. Ex: "DATASUL11". | externalValue | String | Valor do internalId do aplicativo externo |
|
...
Retorno: Valor | Descrição |
---|
Valor do InternalId do aplicativo interno | Retornará o valor do internalId do aplicativo interno |
|
...
nulo (?) | Caso não encontre o internalId |
|
...
Exemplo de utilização em Progress: Bloco de código |
---|
language | actionscript3 |
---|
theme | Emacs |
---|
|
|
...
...
...
| USING com.totvs.datasul.eai.internalid.*.
DEFINE VARIABLE valor AS CHARACTER NO-UNDO.
oMapper = InternalIdMapperProvider:getMapper().
valor = oMapper:getValue(" |
|
...
CustomerVendor", "clientes", "DATASUL_EAI","02|30|40|123456789").
MESSAGE "Valor retornado " + valor + " = 01| |
|
...
Exemplo de utilização em Java: |
...
...
| String valor = internalIdMapperImpl.getValue("CustomerVendor", " |
|
...
clientes", "DATASUL_EAI","02|30|40|123456789");
System.out.println("Valor retornado " + valor + " = 01| |
|
...
internalIdGetValue
Função responsável por extrair o valor de uma coluna de um campo interno do InternalId utilizando o nome
...
da coluna registrada.
Expandir |
---|
|
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âmetro | Tipo | Descrição |
---|
internalId | String | Código do internalId | internalValue | String | Valor dos campos do internalId do aplicativo interno que deseja extrair a informação. |
|
...
Informações |
---|
| Anteriormente, a tabela associada do InternalId era incorporada ao valor. Exemplo: “01|234@pedidos”. Com a inclusão de campo próprio para a tabela, esta forma perdeu utilidade, mas ainda é suportada. |
| internalTable | String | Valor da tabela utilizada pelo internalId. Caso o |
|
...
...
...
InternalValue, o valor passado como parâmetro para internalTable poderá ser |
|
...
...
Nome da coluna utilizada para extrair valor de internalValue. |
|
...
...
Valor | Descrição |
---|
columnValueString | Valor |
|
...
...
informada no parâmetro "column". | nulo ( ? ) | Quando |
|
...
não encontrar o valor correspondente aos parâmetros |
|
...
Exemplo de utilização em Progress: Bloco de código |
---|
language | actionscript3 |
---|
theme | Emacs |
---|
|
|
...
| USING com.totvs.datasul.eai.internalid.*.
DEFINE VARIABLE valor AS CHARACTER NO-UNDO.
oMapper = InternalIdMapperProvider:getMapper().
valor = oMapper:internalIdGetValue(" |
|
...
CustomerVendor","01|20@clientes",?,"cod_empresa").
MESSAGE "Valor retornado " + valor + " = '01'" VIEW-AS ALERT-BOX.
valor = oMapper:internalIdGetValue(" |
|
...
CustomerVendor","01|20","clientes","cod_cliente").
MESSAGE "Valor retornado " + valor + " = '20'" VIEW-AS ALERT-BOX. |
|
...
Exemplo de utilização em Java: |
...
| String valor = internalIdMapperImpl.internalIdGetValue(" |
|
...
CustomerVendor", "01|20@clientes", null, "cod_empresa");
System.out.println("Valor retornado " + valor + " = '01'");
valor = internalIdMapperImpl.internalIdGetValue(" |
|
...
CustomerVendor", "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.
Expandir |
---|
|
Parâmetros: Parâmetro | Tipo | Descrição |
---|
internalId | String | Código do internalId utilizado como filtro para exclusão. Ex: "CustomerVendor" | internalValue | CHAR (200) | Utilizará o código do valor interno como filtro para exclusão. Ex: "01|10". | externalApplication | CHAR (200) | Utilizará o código do aplicativo externo como filtro para exclusão. Ex: "P1299". |
|
...
...
...
...
excluirá todos os registros |
|
|
...
do “internalId” e “internalValue” informados. |
|
|
...
Retorno: Retorno | Valor |
---|
TRUE | Excluiu o(s) registro(s) com sucesso | FALSE | Houve problemas durante a exclusão do registro. |
|
...
Exemplo de utilização em Progress: |
...
theme | Emacs |
---|
language | actionscript3 |
---|
linenumbers | true |
---|
|
---|
language | actionscript3 |
---|
theme | Emacs |
---|
linenumbers | true |
---|
| USING com.totvs.datasul.eai.internalid.*.
oMapper = InternalIdMapperProvider:getMapper().
/* Exclusão de TODOS os registros do valor de internalId informado */
IF oMapper:deleteValue(" |
|
...
...
20") = 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.
/* Exclusão do valor de internalId de determinado aplicativo externo. */
IF oMapper:deleteValue(" |
|
...
...
...
P1299") = TRUE THEN DO:
MESSAGE "Exclusão do internalid com o valor: '01|20@clientes' para a aplicativo externo: ' |
|
...
P1299'." VIEW-AS ALERT-BOX.
END.
ELSE DO:
MESSAGE "Problemas com a exclusão." VIEW-AS ALERT-BOX.
END. |
|
...
Exemplo de utilização em Java: |
...
| // Exclusão de TODOS os registros do valor de internalId informado
if(internalIdMapperImpl.deleteValue(" |
|
...
CustomerVendor", "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.");
}
// Exclusão do valor de internalId de determinado aplicativo externo.
if(internalIdMapperImpl.deleteValue(" |
|
...
CustomerVendor", "01|20@clientes", " |
|
...
P1299")) {
System.out.println("Exclusão do internalid com o valor: '01|20@clientes' para a aplicativo externo: ' |
|
...
P1299'.");
} else {
System.out.println("Problemas com a exclusão.");
} |
|
deleteMapping (Progress) e delete (Java)
Função responsável por excluir
...
a estrutura do InternalId com os parâmetros selecionados.
Expandir |
---|
|
Parâmetros: Parâmetro | Tipo | Descrição |
---|
internalId | String | Código do internalId utilizado como filtro para exclusão. Ex: "CustomerVendor". | internalTable | String | Utilizará o código da tabela interna como filtro para |
|
...
exclusão. Ex: "clientes". |
Retorno: Retorno | Valor |
---|
TRUE | Excluiu o registro com sucesso | FALSE | Houve problemas |
|
...
durante a exclusão do registro |
Exemplo de utilização em Progress: Bloco de código |
---|
language | actionscript3 |
---|
theme | Emacs |
---|
linenumbers | true |
---|
| USING com.totvs.datasul.eai.internalid.*.
DEFINE VARIABLE valor AS CHARACTER NO-UNDO.
oMapper = InternalIdMapperProvider:getMapper().
|
|
Exemplo de utilização em Progress:
...
theme | Emacs |
---|
language | actionscript3 |
---|
linenumbers | true |
---|
IF oMapper:deleteMapping(" |
|
...
CustomerVendor","fornecedores") = TRUE THEN DO:
MESSAGE "Exclusão do internalid efetuada com sucesso" 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.delete(" |
|
...
CustomerVendor","fornecedores")) {
System.out.println("Exclusão do internalid efetuada com sucesso");
} else {
System.out.println("Problemas com a exclusão.");
} |
|