Árvore de páginas

01. INFORMAÇÕES GERAIS

Foi disponibilizado o cadastro de campos personalizados na interface “Configuração de Aplicações” do ERP TOTVS linha Datasul.

Campos personalizados permitem armazenar e visualizar informações que não estão disponíveis por padrão na interface de uma aplicação, tudo isso sem a necessidade de customização de interface.

Quando for necessário processar, calcular ou validar as informações de campos personalizados com uma regra especifica, deverá ser criado um programa customizado, seguindo o modelo padrão de customização de API ou BO progress.

Para facilitar a customização de regras para campos personalizados foi disponibilizado uma API que permite obter e atualizar de forma simples os valores desses campos.

API para campos personalizados

Programacdp/apiCustomFieldsValues.r

02. MÉTODO: get-custom-fields-values-v1

2.1. Objetivo

Permitir a pesquisa de valores de campos personalizados que foram informados na interface pelo usuário da aplicação.

2.2. Parâmetros de Entrada

CamposObrigatório/OpcionalDescrição
cod-aplicacaoObrigatórioCódigo único da aplicação. Veja no tópico aplicações disponíveis abaixo, os códigos de aplicações disponíveis atualmente.
cod-chaveOpcional


Pesquisa por chave do registro onde foi inserido o valor do campo personalizado.

Exemplo de uso: Se o campo personalizado foi adicionado a uma interface de cadastro de pedido, a chave será o número do pedido (chave primaria do pedido).
cod-campoOpcionalPesquisa por código interno do campo. Consulte o código do campo no cadastro de campos personalizados.
cod-valorOpcionalPesquisa por valor do informado pelo usuário no campo personalizado. Permite consulta por parte do valor.

2.3. Parâmetros de Saída

CamposObrigatório/OpcionalDescrição
ttCustomFieldsValuesObrigatório

Tabela temporária com dados do resultado da pesquisa de valores de campos personalizados.

Veja definição da tabela ttCustomFieldsValues no tópico definições de tabelas abaixo.
RowErrors

Obrigatório

Tabela temporária com mensagens de erros e alertas.

Veja definição da tabela RowErrors no tópico definições de tabelas abaixo.

03. MÉTODO: update-custom-fields-values-v1

3.1. Objetivo

Permitir a atualização de valores de campos personalizados que foram informados na interface pelo usuário da aplicação. Permite atualização em lote.

3.2. Parâmetros de Entrada

CamposObrigatório/OpcionalDescrição
cod-aplicacaoObrigatórioCódigo único da aplicação. Veja no tópico aplicações disponíveis abaixo, os códigos de aplicações disponíveis atualmente.
ttCustomFieldsValuesObrigatório

Tabela temporária com dados para serem atualizados. Permite atualização de vários registros por vez. Veja definição da tabela ttCustomFieldsValues no tópico definições de tabelas abaixo.

3.3. Parâmetros de Saída

CamposObrigatório/OpcionalDescrição
RowErrorsObrigatório

Tabela temporária com mensagens de erros e alertas. Veja definição da tabela RowErrors no tópico definições de tabelas abaixo.

04. DEFINIÇÕES DE TABELAS

4.1. Definição da tabela temporária ttCustomFieldsValues

ttCustomFieldsValues

DEFINE TEMP-TABLE ttCustomFieldsValues NO-UNDO LIKE config-aplic-custom-values

FIELD r-rowid AS ROWID.

4.2. Definição da tabela temporária RowErrors

RowErrors

DEFINE TEMP-TABLE RowErrors NO-UNDO

FIELD ErrorSequence AS INTEGER

FIELD ErrorNumber AS INTEGER

FIELD ErrorDescription AS CHARACTER

FIELD ErrorParameters AS CHARACTER

FIELD ErrorType AS CHARACTER

FIELD ErrorHelp AS CHARACTER

FIELD ErrorSubType AS CHARACTER.

05. APLICAÇÕES DISPONÍVEIS

AplicaçãoCódigo
APP Minhas VendasappMobileOrder

5.1. Pontos de customizações

Após a inclusão ou atualização do valor de um campo customizado padrão está disponível o seguinte ponto de customização.

Nome do ponto de customizaçãoParâmetro
afterStoreCustomFieldValuettCustomFieldsValues (dados do campo que está sendo criado ou atualizado)

06. EXEMPLO DE CUSTOMIZAÇÃO

Customização para alterar o valor do campo personalizado após ser incluído ou alterado:

1 – Procure no menu do ERP linha Datasul o programa “Configuração de Aplicações”, abra o programa, clique no ícone com três pontos da aplicação “App Minhas Vendas”, selecione a opção “Campos Personalizados” e adicione um novo campo com tipo de dado igual a “Texto”.

2 – Adicione o novo campo personalizado em uma interface do App Minhas Vendas. Para conhecer como configurar o layout da interface do App Minhas Vendas veja a documentação aqui https://tdn.totvs.com/x/2ul-I.

3 – Crie uma pasta com nome UPC no seu diretório de programas progress e a adicione no propath do seu ambiente.

4 – Dentro da pasta UPC crie um novo arquivo progress com o nome upc-CustomFieldsValues.p. Adicione o código abaixo no arquivo e compile.

A seguir a apresentação em PDF do código, e também as telas no auxilio.

Documento - apiCustomFieldsValues-upc.p.pdf

5 – Abra o programa men/men012aa.r e procure pelo cadastro do programa “apiCustomFieldsValues”, no campo “Programa UPC” adicione o novo programa “upc/upc-CustomFieldsValues.p”.

6 – Abra a aplicação app Minhas Vendas e visualize o campo personalizado, se a customização foi executada, após a atualização de dados do app, o valor do campo será “valor alterado”.

A partir deste exemplo é possível desenvolver regras customizadas que serão aplicadas nos valores dos campos personalizados.