image148.png   Lista Dinâmica

A Lista Dinâmica é um componente que permite que o usuário possa visualizar uma lista de dados proveniente de uma determinada tabela, que não é a tabela principal do formulário atual. Quando a informação é selecionada desta lista, o dado é gravado em um campo correspondente da tabela principal.

Podemos configurar a Lista Dinâmica para consultas e informações de tabelas existentes no sistema. Para isso, utilizamos as propriedades Campo, Descrição, SQL, Campo-Chave, Campo Lista e as demais propriedades, se assim por necessário.

Observações:

  1. É comum utilizar a propriedade Formulário para indicar a origem da lista e a propriedades Subformulário, definindo SIM, para permitir a chamada da origem pelo clique no botão image127.gif (Exibir formulário de origem);

  2. O componente lista dinâmica possibilita a utilização de chave composta. Saiba como!

  3. O componente suporta Common Table Expression (CTE (recurso do MSSQL)) apenas para listagem de dados, não sendo possível realizar pesquisa nos registros. Caso deseje utilizar o filtro de pesquisa é necessário criar uma VIEW com o CTE e associar o SELECT desta VIEW ao componente.

  4. O componente suporta FUNCTIONS do banco de dados apenas para listagem de dados. Para demais funcionalidades, é necessário que seja criado uma VIEW no banco de dados e posteriormente, associar o SELECT desta view no componente.

A propriedade Campo definirá onde a informação selecionada será guardada. Colocamos o nome de um campo que esteja presente na consulta do SQL criada na tela principal.

A propriedade Descrição definirá o rótulo do campo no formulário.

A propriedade SQL determinará a consulta que proporcionará os dados para o campo. Nesta propriedade, abre-se uma janela para construirmos o código em SQL que será necessário para alimentar a lista apresentada na Lista Dinâmica. Esse SQL é particular desse componente, ou seja, só ocorrerá quando ele for solicitado.

A propriedade Campo Lista exibirá o conteúdo para o campo do formulário, e a propriedade Campo Chave refere-se ao campo que será o relacionamento lógico entre a tabela principal do formulário e a consulta para o campo.

image53.jpg

O componente Lista Dinâmica possui algumas funcionalidades que são nativas em modo de execução.

  1. Insira o componente Lista Dinâmica no formulário;

  2. Com o duplo clique sobre a componente, abrirá a tela Assistente de Criação de Novo Formulário (nesta tela devem ser feitas as configurações necessárias para a criação do formulário);

  3. Salve o novo formulário criado, fechando-o em seguida.

Observação: Concluídos esses passos, as propriedades "Descrição", "SQL", "Campo Chave", "Campo Lista" e "Formulário" serão preenchidas automaticamente.

Todos os componentes possuem Propriedades e Eventos. Para conhecê-los clique aqui.

Observações:

  1. Ao vincular dados ao componente Lista Dinâmica, os campos "Campo Chave" ou "Campo Lista" deverão ser marcados, pois caso a aba de navegação do formulário esteja hablitada um erro será apresentado.

  2. Definindo a lista dinâmica como Apenas Leitura pelo Modo Gerente (Webrun), o acesso ao formulário do componente sempre estará habilitado (para Inclusão, Alteração ou Exclusão).

  3. Uma vez utilizada uma concatenação (propriedade SQL) para o Campo Lista (propriedade) do componente Lista Dinâmica, não é possível utilizar o filtro de pesquisa disponibilizado pelo próprio componente (em um formulário no Webrun). Para funcionar corretamente, será necessário a definição de um alias para a concatenação e utilizar esse alias na propriedade Campo Lista.

  4. Tecla [Enter] - Aplica o filtro informado na lista dinâmica.

Propriedades

Configurada a propriedade SQL, são disponibilizados para seleção todos os campos da fonte de dados que está vinculada ao formulário. O valor contido nesta propriedade (Campo-Chave) é o valor que será gravado no campo (propriedade ”Campo”), quando o usuário selecionar uma das opções do componente no formulário (no Webrun).

Executada a propriedade SQL, são disponibilizados para seleção todos os campos da fonte de dados que está vinculada ao formulário. O valor contido nessa propriedade (CampoChave) é o valor que será visualizado pelo usuário para seleção. Nota: A busca é realizada pelo campo Lista, desta forma, para que funcione corretamente é necessário que o tipo de dados seja "Letras". Caso exista a necessidade de utilizar outro tipo de dados (ex. inteiro), realize o cast na consulta SQL conforme sintaxe do banco de dados utilizado no projeto.

Selecionando a opção Combo, o componente aparece em forma de caixa de seleção; selecionando a opção Edit, o componente aparece em forma de caixa de texto e; selecionando a opção Memo, o componente aparece em forma de caixa de texto multi-linha.

Aplicada ao componente Lista Dinâmica - lista as conexões adicionais que foram configuradas no projeto. Assim que for selecionada uma conexão adicional, a árvore de entidades (tabelas e visões) que aparece na janela Assistente SQL da propriedade SQL mostra todas as entidades relativas à conexão escolhida.

Observação: Quando uma entidade (tabela) de uma conexão adicional for utilizada como Fonte de Dados pelo Formulário, será possível executar as mesmas ações das que são possíveis para a um formulário vinculado a uma fonte de dados oriunda da conexão principal.

Aplicada ao componente Lista Dinâmica - utilizada para definir o valor do campo.

Aplicada aos componentes Grade e Lista Dinâmica - a valor-padrão desta propriedade é 0 (zero) e, se for mantido esse valor, o componente mostrará os 100 (cem) primeiros valores contidos no campo selecionado (propriedade CampoLista do menu suspenso).


Aplicada aos componentes Grade e Lista Dinâmica - selecionando a opção Sim, será possível abrir o formulário (propriedade Formulário) pelos componentes:


Aplicado aos componentes Lista Dinâmica e Árvore - este item é pré-requisito para o perfeito funcionamento das propriedades de que tratam as propriedades Campo-Chave e Campo-Lista. Clicando sobre o botão reticencias.png nesta opção, aparece a tela Assistente SQL para que o usuário possa criar a fonte de dados que comporá o componente.

Eventos

possibilita a modificação do tipo de busca inicial do componente Lista Dinâmica. Pode ,inclusive, ser definido de forma geral. Tipos de Filtro (Igual, Contendo, Iniciando com, Terminando com):


  • Ao Preencher Lista
  • Aplicado ao componente Lista Dinâmica - esta ação deve ser utilizada em conjunto com o método Executar Regra de negócio (tela Ações - usada para associar ações e fluxos aos componentes ou objeto formulário. Acionada pelo botão reticencias.png presente no campo dos Eventos). Na propriedade Nome do método citado, deve ser selecionado um fluxo de ações que retorne uma lista com as opções que poderão ser selecionadas pelo usuário no componente. Após ter sido feita essa configuração, a configuração desenvolvida para as propriedades do componente SQL, CampoChave e CampoLista deverão ser desfeitas.

    O Webrun envia 3 parâmetros de entrada no fluxo "Ao Preenche Lista", são eles:

    1 - Constante de controle interno de valor 3;

    2 - Valor que o usuário digitou no filtro da Lista Dinâmica;

    3 - Tipo de filtro selecionado:

    1=Igual

    2=Contendo

    3=Iniciando com

    4=Terminando com.

    O filtro deve ser feito internamente no fluxograma e retornar um objeto mapa de acordo com a regra de negocio do fluxo.

    Propriedades e Eventos Comuns aos Objetos:

    ____________________________________________________________________________

    image776.jpg

    Caso este tópico não tenha comentário satisfatório, envie e-mail para documentacao@softwell.com.br