Agora que já conhecemos a lista de todos os cadastros metadados disponíveis no produto Logix, é preciso detalhar algumas características e dicas de uso em casa um dos cadastros para obter o melhor aproveitamento das funcionalidades disponíveis.
O nome físico da chave primária será PK_<nome da tabela>.
A ordem das colunas na chave primária será igual a ordem das colunas na tabela.
Para colunas do tipo DATETIME, atente para a definição do valor a ser informado para o TAMANHO e PRECISÃO da coluna, pois indica o formato. Uma coluna do tipo DATETIME é definida com um qualificador inicial e um qualificador final. Um qualificador é reconhecido como YEAR, MONTH, DAY, HOUR, MINUTE, SECOND ou FRACTION. Neste caso, no cadastro FRM1007, a informação que define o TAMANHO da coluna, será reconhecida como "Qualificador inicial" e a PRECISÃO será reconhecida como "Qualificador final" para colunas do tipo DATETIME. O valor do qualificador a ser informado no cadastro da coluna DATETIME será respeitando a legenda abaixo:
Exemplo: Para uma coluna DATETIME YEAR TO SECOND, deve-se cadastrar o TAMANHO como 1 (YEAR) e a PRECISÃO como 6 (SECOND) Para a coluna Versão pode-se tomar como referência a versão do produto Logix, pois os dados de versão consideram Versão, Release e Modificação, sendo todos valores numéricos. Para a coluna Módulo, escolha o módulo usando a lista disponível de módulos Logix a que a tabela está ligada. A coluna Componente permite definir qual componente gráfico será utilizado para representar uma determinada coluna.
Para colunas que possuem cadastro de Legenda, será utilizada a regra para criação de campos com legenda. Mais informações veja o item Cadastro de Legendas para Colunas de Tabelas (FRM1013). |
Os formulários de cadastro realizam consistências de integridade referencial de acordo com as referências de tabela cadastradas no metadado.
Pode ser definida uma ordem das colunas na chave estrangeira diferente da ordem das colunas na tabela no banco de dados.
É importante definir a ordem das colunas para referências físicas, pois alguns bancos de dados requerem que a ordem das colunas na chave estrangeira sejam a mesma ordem da pesquisa.
Campo | Obrigatório | Descrição |
---|---|---|
Valor | SIM | Valor do item da legenda ou valor para satisfazer a condição.
|
Tipo | SIM | Tipo da legenda (TEXTO, IMAGEM ou CHECKBOX). |
Descrição | SIM | Descrição para cada valor contido no domínio. |
Imagem | NÃO | Imagem a ser utilizada para representar cada valor contido no domínio (somente para componentes tipo GRID) |
Condição | NÃO | Operador, função ou macro (CHECKED ou UNCHECKED) para satisfazer o item da legenda. |
Ordem | SIM | Ordem dos itens da legenda |
A execução de um zoom a partir do acionamento de uma lupa que é exibida na lateral direita de um campo de um formulário em execução se assemelha a uma lista abaixo, podendo ser de seleção simples ou multi-seleção:
Informações referente a alguns campos do cadastro de colunas de formulário CRUD:
Campo | Descrição | |
---|---|---|
Formulário | Before Load | Função 4GL que será executada antes da abertura do programa, caso esta função retorne FALSE, a abertura do programa será cancelada. |
After Load | Função 4GL que será executada depois da abertura do programa, caso esta função retorne FALSE, a abertura do programa será cancelada. | |
Barra de Ferramentas | Nome da Barra de Ferramentas previamente cadastrada para o formulário no programa FRM1001. | |
Tabelas do | Alias | Alias da tabela que compõe o formulário (utilizado apenas quando a mesma tabela é cadastrada mais de uma vez no formulário). |
Modelo | Modelo da tabela no formulário. | |
Posição Record 4GL | Posição do parâmetro da RECORD ou do ARRAY de RECORD da tabela quando este for enviado para o metadado. | |
Cardinalidade | Cardinalidade da tabela em relação as outras tabelas informadas no formulá-rio. Quando for N..0, não será preciso incluir registro nesta tabela e quando for N..1, será necessário incluir pelo menos um registro. | |
Linhas visíveis | Quantidade de linhas que serão apresentadas no formulário para tabelas do tipo DETAIL e MASTER-DETAIL. | |
Before Row | Função 4GL que será executada antes de trocar de linha numa grid. | |
After Row | Função 4GL que será executada após trocar de linha numa grid. | |
Before Insert Row | Função 4GL que será executada antes de incluir uma linha na grid. | |
After Insert Row | Função 4GL que será executada após a inclusão de uma linha na grid. | |
Before Delete Row | Função 4GL que será executada antes de excluir uma linha da grid. | |
After Delete Row | Função 4GL que será executada após excluir uma linha da grid. | |
Pesquisa? | Indica se na tabela informada será feita consulta. | |
Modifica? | Indica se na tabela informada será feita alteração. | |
Exclui? | Indica se na tabela informada será feita exclusão. | |
Inclui? | Indica se na tabela informada será feita inclusão. | |
Componentes do Formulário | Campo Mestre | Indica se o componente será um campo mestre (apenas para tabelas do tipo MASTER-DETAIL). |
Filtro de pesquisa | Indica se será possível filtrar a pesquisa por pelo componente. | |
Listar | Indica se o componente será exibido na opção Listar do formulário de cadastro. | |
Exibe descrição | Indica se será exibida a descrição (label) do componente no formulário. | |
Quebra Linha | Indica se o componente quebra linha, ou seja, aparecerá ao lado do compo-nente anterior ou na ordem correta do grupo de componentes. | |
Máscara | Máscara do componente do componente (se for nulo, será usado a do cadastro de tabela). | |
Imagem (Grid) | Nome da imagem que será apresentada quando o componente for exibido em uma grid. | |
Texto (Grid) | Texto que será apresentado quando o componente for exibido em uma grid. | |
Propriedades | Propriedade do componente de edição. Para mais informações de como registrar informações neste campo acesse o tópico Propriedades em Características Gerais - Metadados Logix | |
Propriedades (Grid) | Propriedade da coluna da grid. | |
Relacionado | Indica se o componente tem relação de outro componente informado no formulário. | |
Tabela Relacionada | Tabela que será utilizada de relação. | |
Alias Relacionado | Alias da tabela que será utilizada como relação (se houver). | |
Coluna Relacionada | Coluna que será utilizada de relação. | |
Zoom | Nome do zoom do componente, previamente cadastrado no programa FRM1008. | |
Before Zoom | Função 4GL que será executada antes da abertura do zoom do componente. | |
After Zoom | Função 4GL que será executada após a abertura do zoom do componente. | |
Before Field | Função 4GL que será executada quando o componente ganhar foco. | |
Valid | Função 4GL responsável por validar o componente. Se o retorno da função for FALSE, o foco permanecerá no componente de edição. | |
After Field | Função 4GL que será executada quando o componente perder o foco. | |
Agrupamento de componentes | Tabela | Nome da tabela da coluna a partir de qual deve considerar um novo grupo de componentes. |
Alias | Nome do alias da tabela da coluna a partir de qual deve considerar um novo grupo de componentes. | |
Coluna | Nome da coluna a partir de qual deve considerar um novo grupo de componentes. | |
Tipo | Indica o tipo do grupo de componentes. Para mais informações de como registrar informação neste campo acesse o tópico Grupo de Componentes - Características Gerais - Metadados Logix | |
Título | Título que aparecerá no formulário caso o grupo de componentes for Painel com título ou folder. | |
Arranjo | Quantidade de colunas que terá o componente para a organização dos cam-pos e descrições. | |
Expansível | Indica se o grupo de componentes irá expandir de acordo com o tamanho da tela. |
Para evitar falhas de conversão de formatos de colunas do tipo DATETIME no formulário:
Para colunas que tiverem o Componente definido como AUTO, irá assumir o Componente definido no cadastro da Tabela (FRM1007) e caso este também não esteja informado irá assumir o padrão abaixo:
Para colunas que possuem cadastro de Legenda, será utilizada a regra para criação de campos com legenda. Mais informações veja o item Cadastro de Legendas para Colunas de Tabelas (FRM1013). Para exibir a descrição de campos de tabelas relacionadas, sem a necessidade de criar coluna virtual no formulário CRUD, o que obriga o desenvolvedor implementar no código fonte toda a carga de dados de colunas virtuais com este objetivo, é possível fazer o relacionamento no formulário de tabelas pela chave estrangeira desligando as operações de INSERT, DELETE e UPDATE e apenas será preciso setar a propriedade ENABLE_VALID_NOT_NULL da tabela relacionada para FALSE no evento AFTER_LOAD do formulário, para evitar mensagem de obrigatoriedade de valor para o campo de descrição destas tabelas relacionadas, nas operações de INSERT e UPDATE de registros do formulário. Exemplo: CALL _ADVPL_set_property(m_form_reference,"ENABLE_VALID_NOT_NULL",FALSE,"<nome_tabela_relacionada>") |
Formulário para cadastro de tabela no formato de campos lado a lado.
Formulário para cadastro de tabela no formato de um GRID.
Formulário para cadastro de uma mais tabelas onde uma parte dos campos fica disponível lado a lado (campos marcados como MESTRE) e outra parte de campos são disponibilizados em formato GRID.
É possível definir formulários tipo MESTRE-DETALHE da mesma tabela de duas formas:
Para especificar os campos MESTRE de uma tabela MESTRE-DETALHE deve-se sinalizar as colunas que serão MESTRE na aba 3-Componentes coluna "Campo Mestre"
Informações referente a alguns campos do cadastro de colunas de formulário de parâmetros:
Campo | Descrição |
---|---|
Mostra descrição | Indica se será exibida a descrição do componente no formulário. |
Quebra Linha | Indica se o componente quebra linha, ou seja, aparecerá ao lado do componente anterior ou na ordem correta do grupo de componentes. |
Multivalorado | Indica se o componente é multivalorado, ou seja, para o mesmo componente posso inserir vários registros. |
Associação | Nome da associação do multivalorado, todos os campos com o mesmo nome de associação estarão no mesmo multivalorado. |
Before Multivalorado | Função 4GL disparada antes da abertura da tela do multivalorado, caso esta função retorne FALSE, a abertura do multivalorado será cancelada. |
After Multivalorado | Função 4GL disparada após o fechamento da tela de multivalorado. |
Campo Avançado | Indica se o campo será visível na tela principal ou somente na tela secundária. |
Chave primária | Indica se será feita a consistência de chave primária para a coluna. |
Máscara | Máscara do componente do componente (se for nulo, será usado a do cadastro de tabela). |
Máscara (Grid) | Máscara do componente quando esta for apresentada em uma grid. |
Imagem (Grid) | Nome da imagem que será apresentada quando o componente for exibido em uma grid. |
Texto (Grid) | Texto que será apresentado quando o componente for exibido em uma grid. |
Propriedades | Propriedade do componente de edição. Para mais informações de como registrar informações neste campo acesse o tópico Propriedades em Características Gerais - Metadados Logix |
Propriedades (Grid) | Propriedade da coluna da grid. |
Cadastro de Colunas Virtuais de Formulário (FRM1009)
Cadastro de Legendas de Colunas Virtuais de Formulário (FRM1016)
O processo de cadastro de legenda para colunas virtuais de formulário segue o mesmo processo de cadastro de Legendas para Colunas de Tabelas (FRM1013), considerando apenas que neste caso são colunas virtuais de um formulário de cadastro (FRM1002) ou formulário de parâmetros (FRM1003) ou formulário de Zoom (FRM1008).
Para o campo Imagem, informe o nome de uma imagem (.png) que esteja disponível no Repositório de Objetos (Imagem precisa estar compilada no RPO).
O campo Condição define uma condição para apresentação da legenda. Este campo é muito usado para legenda de campo do tipo CHECKBOX e o valor informado é CHECKED ou UNCHECKED.
O campo Valor é o valor que será usado para atribuir para a coluna do formulário que é considerado para atribuir para o valor da variável associada ao componente do campo de tela.