Formulário

Por ser a principal porta para a manipulação dos dados das entidades de um banco de dados, é o objeto no qual é disponibilizada uma Barra de ferramentas, componentes (em abas) e ações (independentes das abas do formulário) que, após serem configuradas, são disparadas no momento: da execução de transações (inserção, alteração, exclusão e seleção);da abertura ou fechamento do formulário; e do pressionamento de tecla, estando o formulário com o foco. Todos os Componentes que podem ser utilizados nos formulários são disponibilizados na aba Formulário da Paleta Objetos, sendo necessário que um formulário seja aberto para que apareçam. Para visualizar um exemplo de criação de formulário acesse o tópico Criando um Formulário.

Abas do Formulário

Todo novo formulário é criado com duas abas, a aba Cadastro e a aba Localizar. Ao clicar com o botão direito do mouse sobre a área, pode-se:

Cabe lembrar:

A aba Cadastro é a aba utilizada para a disposição dos componentes que serão ou não associados aos campos da fonte de dados do formulário. Sua área é composta por pequenos pontos separados um do outro por um espaçamento (vertical e horizontal) de oito pixels, os quais podem ser observados para efeito de posicionamento dos componentes.

A aba Localizar (no Maker) é composta por duas colunas:

 Abaixo consta uma imagem que demonstra a aba Localizar de um formulário.

image1146.jpg

Os componentes pertencentes a aba Localizar são:

image1145.jpg

A tabulação da aba Localizar ocorre entre os campos do filtro e o tipo de filtro. Dentro da aba Localizar, caso o usuário queira ir para o registro da aba Cadastro, é só pressionar a tecla Page Down em qualquer campo do filtro e, em seguida, selecione o registro e pressione a tecla Enter.

Observações:

  1. Caso o formulário esteja com a propriedade Entrar como pesquisa marcada como Sim, o botão Ultimo Registro da aba de Navegação do formulário desaparecerá.

  2. Caso a quantidade de abas ultrapasse o tamanho do formulário, para visualizá-las no Webrun é necessário aumentar a largura do formulário.

  3. A pesquisa da aba localizar é realizada na consulta que está vinculada nas definições do formulário. Com isso, caso o desenvolvedor tenha modificado a consulta do formulário, ele terá que criar sua própria aba localizar.

  4. Não é possível filtrar um campo que possua conteúdo do tipo lógico através da aba localizar, para isso será necessário criar um case dentro da consulta SQL.

  5. As pesquisas realizadas na aba localizar são feitas utilizando a cláusula where do banco, logo se a mesma contiver caracteres especiais eles serão tratados no SQL do banco de dados utilizado.

  6. Ao associar o evento À aba localizar, esta não carregará os dados padrão, pois o mesmo será sobrescrito pelo evento associado

Exemplo: Ao utilizar o "_"(underline) em uma pesquisa, a consulta retornará todos os registro pois, o "_"(underline) representa qualquer caracter.

Nota: Caso queira realizar uma busca onde o caracter pesquisado seja por exemplo o (_) usa-se o caracter de escape \.

Por exemplo:
 

select* from fr_acao where aco_nome like '%\_%';

ou

select* from fr_acao where aco_nome like '%\%%';

Dessa forma, o banco tratará o caracter especial como se fosse qualquer outro.

Preservando valores dos registros na aba consulta: não permitir scripts:

Por padrão, a grade na aba consulta permitirá scripts e tags HTML (mas o texto da tag aparece). Para desabilitar, use a propriedade avançada DesabilitarScriptAbaLocalizar para não escapar valores dos registros na aba de consulta.

Barra de Ferramentas da Grade de Listagens

image915.jpg

Observação
: Esta importação é somente para dados do tipo texto (String) e data. Não é possível a importação de dados a serem inseridos em campos de outros tipos que não seja string ou data.

Componentes

Na paleta, temos os componentes que poderão ser utilizados no formulário. Estes componentes aparecem quando entramos no modo de edição de formulário. Cada componente possui propriedades específicas.

O Maker utiliza alguns componentes já conhecidos em ambientes de desenvolvimento, tais como: Lista, Caixa de Texto, Texto, Texto Longo, Botão, Grade, Lista Dinâmica, Opções, Imagem, Moldura, SubFormulário, Check.

O Maker possibilita a construção de sistemas apenas arrastando componentes e arrumando-os nos formulários.

Para mudar a posição do componente em relação ao limite esquerdo e superior do formulário, deve-se proceder da seguinte forma:

  1. Abra o formulário que deseja editar;

  2. Clique com o botão direito do mouse no campo do tipo Caixa de Texto;

  3. Selecione em Propriedades a opção PosiçãoX para 25;

  4. Selecione em Propriedades a opção PosiçãoY para 98;

  5. Utilize controles de alinhamento para agilizar a organização dos componentes

À medida que se edita a propriedade, a nova configuração é aplicada automaticamente.

A atualização do formulário ocorrerá no navegador, Modo Projeto do sistema em uso no Webrun.

Todo Componente. possui Eventos. Esses eventos podem estar habilitados ou não: "Ao Clicar", "Ao Entrar", "Ao Sair", "Ao Modificar" são eventos disponíveis para cada componente. A ação que ocorrerá quando determinado evento for acionado depende do fluxo associado.

Menu pop-up ativado da Área do Formulário

Este menu permite acessar uma série de recursos, a partir do clique direito do mouse na área do formulário:

image747.jpg

Clicando com o botão direito do mouse na aba do Formulário, aparecem as opções abaixo:

Procedimento para visualizar a alteração de tamanho do formulário

Para visualizar a alteração de tamanho de um formulário, é necessário recarregar o formulário e o menu do sistema. Para isso, siga os procedimentos abaixo:

  1. Abra o formulário com o tamanho alterado.

  2. Utilize a combinação de teclas Ctrl + F5 para atualiza-lo (Limpar Cache).

  3. Feche o Formulário.

  4. Recarregue o Menu do sistema.

  5. Abra o formulário novamente (Através do menu).

Comportamento do Formulário

O formulário possui alguns comportamentos específicos, são eles:

Observações:

  1. Não pode ser utilizado "union" no sql vinculado ao formulário. Pode ser contornado criando uma view.

  2. A tecla F9 permite pré-visualizar o formulário. Caso sejam pressionadas as teclas Ctrl + F9 no Maker, abrirá o projeto no Webrun;

  3. Quando o Assistente for aberto com um clique com o botão direito do mouse na área das abas do formulário, não serão consideradas as configurações preexistentes, ou seja, serão selecionados todos os campos da tabela para que possam ser aplicados no formulário.

  4. Ao ser utilizado um campo obrigatório e o mesmo não possuir nenhuma descrição, será exibida a seguinte mensagem:"Existem campos obrigatórios não preenchidos!".

Propriedades

Ao selecionar a opção Não, a aba localizar do formulário será oculta. Por padrão, esta propriedade vem configurada como Sim.

Ao selecionar a opção Não, as abas existentes no formulário serão ocultas e apenas os componentes existentes na primeira aba serão exibidos.  Por padrão, esta propriedade vem configurada como Sim.

Ao selecionar a opção Web, o formulário aparecerá com a barra de menu e ferramentas padrão do browser. Ao selecionar Desktop, o formulário será exibido sem o menu do browser.

Ao selecionar a opção Sim, o formulário aparecerá com uma barra de rolagem horizontal/vertical, caso tenham sido colocados componentes em uma área do formulário que exceda os seus limites (largura e altura, no Maker) quando apresentado no Webrun.

Observações:

  1. O usuário deverá recarregar o sistema para que as alterações tenham efeito.
  1. Ao definir esta propriedadade como Sim no formulário, a barra de rolagem irá aparecer independente do tamanho do formulário e de seus componentes, pois todo formulário no webrun é aberto através da função javacript "window.open", que por padrão, utiliza o parâmetro "scrollbar", habilitando assim todas as barras de rolagem.

Ao selecionar a opção Sim, o botão Maximizar, na barra de títulos, do formulário estará habilitado. Por padrão, esta propriedade vem configurada como Não.

O campo da fonte de dados informado nesta propriedade armazena o identificador da transação mais antiga dentre as que estão ativas na edição de um registro. Havendo uma transação mais recente apontando para o mesmo registro (para o qual a transação mais antiga aponta), esta será confirmada ou desconsiderada a depender do tipo da transação. Quando um novo formulário é criado pelo "Assistente de Criação de Novo Formulário" ou pelo "Assistente de Criação de Múltiplos Formulários", o Maker reconhece o identificador da fonte de dados automaticamente, vinculando-o a esta propriedade. Se o projeto tiver sido criado no banco de dados:

Observação: Para os demais bancos de dados, verifique na documentação do fornecedor correspondente, qual tipo de dados é compatível.

Ao selecionar a opção Não, o formulário será aberto na posição que foi salvo pela última vez no Maker. Ao selecionar a opção Sim, o formulário será aberto centralizado de acordo com a tela do usuário. Por padrão, esta propriedade vem configurada como Sim.

Ao selecionar a opção Sim, o formulário será aberto em modo de pesquisa, ou seja, a Aba Localizar é aberta inicialmente e os registros não são exibidos. Deve-se observar que o botão exibirtodosregistros.png (Exibir todos os registros) não terá sua função disponível neste estado (já que os registros não foram carregados).

O custo de exibir dados de tabelas com muitos registros no ambiente Web é superior para sistemas desktop. Amortizar o impacto desse custo requer algumas estratégias que podem ser implementadas no Maker. Como por exemplo: ao acessar um formulário de pesquisa, o Maker solicita ao usuário que filtre os dados. Dessa forma a eficiência do seu sistema é assegurada, evitando assim que formulários que contenham muitos registros apresentem lentidão na carga do mesmo.

Observe que a barra de navegação do último registro está inativo. Essa funcionalidade é uma estratégia para evitar com que os registros sejam carregados na tela.

Por padrão, esta propriedade vem configurada como Não.

Ao selecionar a opção Sim, o formulário será objeto com janela exclusiva, ou seja, o formulário recebe o foco de objeto principal, impedindo a manipulação de outro formulário. Por padrão, esta propriedade vem configurada como Não.

Esta funcionalidade não está disponível para os browsers:

Ao ser criado uma regra na camada servidor que em algum momento possua um processamento que solicite a abertura de um formulário modal, os processamentos que estiverem após esta solicitação, continuarão a sua execução, independente da abertura do mesmo.