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.
Expandir |
---|
|
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 |
---|
linenumbers | true |
---|
| 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: Bloco de código |
---|
language | java |
---|
theme | Emacs |
---|
linenumbers | true |
---|
| 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. Ex: "clientes". |
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 |
---|
linenumbers | true |
---|
| 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: Bloco de código |
---|
language | java |
---|
theme | Emacs |
---|
linenumbers | true |
---|
| 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 “|”. Exemplo: “01|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 |
---|
linenumbers | true |
---|
| USING com.totvs.datasul.eai.internalid.*.
oMapper = InternalIdMapperProvider:getMapper().
IF oMapper:setValue("CustomerVendor", "clientes", "01|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: Bloco de código |
---|
language | java |
---|
theme | Emacs |
---|
linenumbers | true |
---|
| 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. Ex: "01|123456". |
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 |
---|
linenumbers | true |
---|
| 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|20" VIEW-AS ALERT-BOX. |
Exemplo de utilização em Java: Bloco de código |
---|
language | java |
---|
theme | Emacs |
---|
linenumbers | true |
---|
| String valor = internalIdMapperImpl.getValue("CustomerVendor", "clientes", "DATASUL_EAI","02|30|40|123456789");
System.out.println("Valor retornado " + valor + " = 01|20"); |
|
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 nome da tabela seja passado no campo InternalValue, o valor passado como parâmetro para internalTable poderá ser nulo ( ? ). | column | String | Nome da coluna utilizada para extrair valor de internalValue. |
Retorno: Valor | Descrição |
---|
columnValueString | Valor correspondente a coluna informada no parâmetro "column". | nulo ( ? ) | Quando não encontrar o valor correspondente aos parâmetros fornecidos. |
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().
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: Bloco de código |
---|
language | java |
---|
theme | Emacs |
---|
linenumbers | true |
---|
| 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". Informações |
---|
| A versão da função sem este argumento 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: Bloco de código |
---|
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("CustomerVendor","01|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("CustomerVendor","01|20","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: Bloco de código |
---|
language | java |
---|
theme | Emacs |
---|
linenumbers | true |
---|
| // 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().
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: Bloco de código |
---|
language | java |
---|
theme | Emacs |
---|
linenumbers | true |
---|
| if(internalIdMapperImpl.delete("CustomerVendor","fornecedores")) {
System.out.println("Exclusão do internalid efetuada com sucesso");
} else {
System.out.println("Problemas com a exclusão.");
} |
|