Exemplo de como criar árvore com elementos do banco
Este exemplo irá descrever como criar uma árvore com elementos do banco de dados.
Para este exemplo, foram criadas duas tabelas Estado contendo os campos: codigouf e Nome do Estado, e Cidade com os campos: Código e Nome da Cidade.
Utilizando o Assistente de criação de formulários, defina o nome para o formulário e defina Fonte de Dados Cidade:
O formulário criado conterá um fluxo. Para facilitar o entendimento, o fluxo ficará da seguinte forma:
Criando um Novo Fluxo, salve com o Destino Cliente. Defina o Parâmetro
de Entrada, clicando em :
Defina os Identificadores (pressione F11):
Coloque um para criação da árvore.
No Montador de Expressão, na aba Fluxos e Funções, localize a função Árvore
- Criar Árvore:
Coloque um para passar os estados.
Mas, antes de inserir o Sub-fluxo será criado um novo fluxo para guardar
os Estados. Clique em
, na aba
Formulário e crie o novo fluxo. Salve-o com o Destino Servidor. O fluxo
ficará da seguinte forma:
Defina os Identificadores (pressione F11):
Coloque um para criar uma lista de
Estados. No Montador de Expressão, na aba Fluxos e Funções, localize as
funções Se, É Nulo, Campo, Abrir Consulta e Tabela para lista:
Na SQL CONSULTA, clique em .
Abrirá a tela Assistente SQL e localize a tabela ESTADO. Selecione todos
os campos da tabela e confirme. Na função Campo, selecione o campo codigouf
da tabela Estado. A outra função Abrir Consulta possui a mesma seleção
feita na SQL CONSULTA anterior.
Clique em para informar o Parâmetro
de Retorno. No Montador de Expressão selecione o Identificador (Estado)
criado neste fluxo:
Voltando ao fluxo principal, coloque agora o para
passar os estados. Ao clique duplo em
abrirá a tela abaixo. Nessa tela, é necessário selecionar o fluxo criado
(Obter Estados) e o Identificador ao qual será atribuído o retorno do
subfluxo (Estado):
Coloque uma para comparar
a quantidade de estado se é menor ou igual a tabela da lista. No Montador
de Expressão, na aba Fluxos e Funções, localize as funções Menor ou Igual
e Tamanho da Lista:
Coloque um para guardar o código do
estado. No Montador de Expressão, na aba Fluxos e Funções, localize as
funções Para Inteiro, Obter Objeto da Lista, Quebrar Texto e Para Letras
Obter da Lista:
Coloque um para inserir o Estado na
árvore. No Montador de Expressão, na aba Fluxos e Funções, localize as
funções Árvore - Adicionar Filho, Árvore - Obter Raiz da Árvore, Para
Letras, Obter Objeto da Lista e Quebrar Texto:
Coloque outro para passar
as Cidades. Mas, antes de inserir o Sub-fluxo será criado um outro novo
fluxo para guardar as Cidades. Clique em
, na aba
Formulário e crie o fluxo. Salve-o com o Destino Servidor. O fluxo ficará
da seguinte forma:
Defina o Parâmetro de Entrada, clicando em :
Defina os Identificadores (pressione F11):
Coloque um para criar uma lista de
Cidades. No Montador de Expressão, na aba Fluxos e Funções, localize as
funções Se, Existem Registros, Abrir Consulta e Tabela para lista:
Na SQL CONSULTA, clique em .
Abrirá a tela Assistente SQL e localize a tabela CIDADE:
Clique em associar ao Critério criado:
Observação: A outra função Abrir Consulta possui a mesma seleção feita na SQL CONSULTA anterior.
Clique em para informar o Parâmetro
de Retorno. No Montador de Expressão selecione o Identificador (Cidade)
criado nesse fluxo:
Voltando ao fluxo principal, coloque agora o para
passar às Cidades. Ao clique duplo, em
abrirá a tela abaixo. Nessa tela, é necessário selecionar o fluxo criado
(Obter Cidade) e o Identificador o qual será atribuído o retorno do subfluxo
(Cidade):
Coloque uma para comparar
a quantidade de cidade se é menor ou igual a tabela da lista. No Montador
de Expressão, na aba Fluxos e Funções, localize as funções Menor ou Igual
e Tamanho da Lista:
Coloque um para inserir a Cidade na
árvore. No Montador de Expressão, na aba Fluxos e Funções, localize as
funções Árvore - Adicionar Filho, Para Letras e Obter Objeto da lista:
Coloque um para acrescentar mais 1
ao campo QtdCidade. No Montador de Expressão, na aba Fluxos e Funções,
localize a função Soma:
Coloque um para modificar a quantidade do campo QtdCidade. No Montador de Expressão, selecione o campo Letra na tela Propriedade e atribua o valor 1:
Associe este ao componente
com a saída NÃO.
Coloque um para acrescentar mais 1
ao campo QtdEstados. No Montador de Expressão, na aba Fluxos e Funções,
localize a função Soma:
Observe que no fluxo principal existe dois loops:
O Resultado no Webrun:
____________________________________________________________________________
Caso este tópico não tenha comentário satisfatório, envie e-mail para [email protected]