Conceito
Desde o pacote LOGIX 12.1.26 está liberada funcionalidade de customização de formulários CRUD metadado, ou seja, formulários de cadastro.
A customização de formulários consiste em permitir que o cliente possa alterar formulários de cadastro padrões da TOTVS e realizar algumas ações como:
- Acrescentar novos campos customizados
- Permite que novos campos sejam relacionados com tabelas do formulário padrão;
- Permite que novos campos sejam incluídos ou não na listagem de relatório padrão do formulário, quando o relatório previsto no formulário for no modelo automático gerado pelo metadado;
- Permite adicionar novos componentes tela, usando para isso o desenvolvimento em FreeForm;
- Ocultar campos que não são utilizados;
- Adcicionar alguns eventos complementares em campos ou em operações do menu do formulário;
- Acrescentar novas operações customizadas no menu do formulário;
- Modificar comportamentos de zoom, habilitar e desabilitar informações;
- Implementar restrições adicionais de acesso;
Atualmente os seguintes cadastros do metadado permitem customização de formulários padrões TOTVS:
- FRM1001 (Barra de Ferramentas)
- FRM1002 (Formulários CRUD)
- FRM1009 (Colunas Virtuais) Apenas de formulários CRUD
- FRM1016 (Legendas de Colunas Virtuais) Apenas de formulários CRUD
Todos os eventos customizados fazem referências a funções desenvolvidas em um outro arquivo de extensão 4GL, que conterá a lista de funções que são respectivamente os eventos customizados registrados no formulário.
Para a customização metadado existe um padrão de desenvolvimento adotado pela Totvs e sugere-se manter o mesmo padrão para as customizações, apenas com algumas pequenas mudanças em algumas nomenclaturas de campos e funções, a fim de evitar transtornos com possíveis duplicididades de funções.
Aqui nesta seção serão apresentados o passo a passo para customizar um formulário padrão TOTVS, algumas dicas e padrões sugeridos para o desenvolvimento de customizações metadado.
Passo a passo
O passo a passo para uma customização não requer muito esforço, mas requer bastante atenção, pois deve-se ter em mente que não se trata de um desenvolvimento de um formulário completo, mas apenas de um complemento a um formulário padrão da TOTVS já existente que não pode comprometer negativamente o funcionamento do formulário padrão.
Quais informações do formulário padrão consigo acessar?
É possível acessar a todas informações dos campos e da maioria dos componentes de tela do formulário padrão com base no código de referência do formulário, tabela e/ou coluna desejados.
Quais informações tenho permissão para customizar?
- Informação de resumo do fomulário
- Complementar os eventos de carga de formulário (before/after load)
- Excluir ou incluir informações do agrupamento de componentes na aba 4-Agrupamento (Tomar cuidado com essa alteração para não impactar no comportamento do formulário padrão)
TABELAS
- Incluir novas tabelas
- Complementar eventos de consulta, inclusão e exclusão de registro de tabela (before/after row, before/after insert, before/after delete)
COLUNAS
- Incluir novos campos
- Alterar o comportamento de alguns campos padrões, como label, visualização, edição, filtro de pesquisa, ordem no formulário, ocultar/exibir label.
- Alterar layout e ordem de exibição dos campos (Tomar cuidado com essa alteração para não impactar no comportamento do formulário padrão)
- Interferir sobre a abertura de zoom de campo, permitindo abrir outro zoom, substituindo a abertura do zoom padrão definido.
- Alterar máscara de edição de campos
- Alterar o valor padrão de campos
- Complementer os eventos de campos (valid, before/after field)
BARRA DE FERRAMENTAS
- Incluir novas operações na barra de ferramentas
- Complementar alguns eventos de operações da barra de ferramentas
- Alterar tecla de atalho e mensagens de confirmação e cancelamento de operações da Barra de Ferramentas
- Ocultar ou tornar visível alguma operação da barra de ferramentas
- Ativar/desativar a AUTO OPERAÇÃO de uma operação da barra de ferramentas
- Alterar a imagem de um botão da barra de ferramentas
Quais informações NÃO tenho permissão para customizar?
TABELAS
- Eliminar tabelas padrões ou alterar as operações assinaladas para as tabelas do formulário.
- Alterar posição do RECORD 4GL de tabela
- Alterar CARDINALIDADE de tabela
- Alterar número de linhas visíveis de tabela
- Alterar modelo de tabela
COLUNAS
- Adulterar informação de MESTRE/DETALHE de colunas padrões.
- Eliminar campos padrões
- Alterar conteúdo da coluna PROPRIEDADES e PROPRIEDADES (GRID)
- Não permite informar ou alterar o nome de zoom de coluna padrão.
- Alterar informações de relacionamento entre colunas padrões
BARRA DE FERRAMENTAS
- Alterar nome da toolbar
- Alterar ou excluir algum evento padrão do formulário registrado em qualquer ponto (formulário, tabela ou coluna)
- Excluir qualquer operação da barra de ferramentas que seja do formulário padrão
- Alterar o nome de uma operação da barra de ferramentas
Quando os eventos complementares de usuário são acionados?
Evento | Acionado ANTES do evento padrão | Acionado APÓS o evento padrão |
---|
BEFORE LOAD |
| X |
AFTER LOAD |
| X |
BEFORE ZOOM | X |
|
AFTER_ZOOM |
| X |
BEFORE FIELD |
| X |
VALID FIELD |
| X |
AFTER FIELD |
| X |
BEFORE INSERT ROW |
| X |
AFTER INSERT ROW |
| X |
BEFORE ROW |
| X |
AFTER ROW |
| X |
BEFORE DELETE ROW |
| X |
AFTER DELETE ROW |
| X |
BEFORE INPUT OPERATION |
| X |
CANCEL INPUT OPERATION |
| X |
BEFORE CONFIRM OPERATION |
| X |
CONFIRM OPERATION |
| X |
AFTER CONFIRM OPERATION |
| X |
Exemplo de Customização
Anexo está o arquivo log02700_custom.zip que contém arquivo fonte .4gl de customização do formulário padrão log02700 do Logix. A customização consiste na gravação e consulta de dados em uma nova tabela, com 2 novos campos adicionados a tela do formulário padrão.
