4D v16.3

DISPLAY SELECTION

Página Inicial

 
4D v16.3
DISPLAY SELECTION

DISPLAY SELECTION 


 

DISPLAY SELECTION ( {tabela}{; modoSelecao}{; entraLista}{; *}{; *} ) 
Parâmetro Tipo   Descrição
tabela  Tabela in Tabela a exibir, ou tabela padrão, se omitido
modoSelecao  Inteiro longo in Modo de Seleção
entraLista  Booleano in Autorizar Entrada na lista de opção
in Utilizar o formulário de saída em caso de seleção de somente um registro e ocultar as barras de deslocamento no formulário de entrada
in Mostrar as barras de deslocamento no formulário de entrada (anular o segundo efeito do primeiro parâmetro *)

DISPLAY SELECTION mostra a seleção de tabela, utilizando o formulário de saída. Os registros se mostram em uma lista pela qual pode ser deslocada similar ao do modo Desenho. Se o usuário fizer duplo clique em um registro, por padrão é mostrado o registro no formulário de entrada atual. A lista é mostrada na janela do primeiro plano.

Para mostrar uma seleção e poder igualmente modificar um registro no formulário de entrada atual depois de fazer duplo clique nele (como é feito na janela do ambiente Desenho), utilize OBJECT SET ENTERABLE ao invés de DISPLAY SELECTION.

A informação a continuação aplica a ambos comandos, exceto pela informação sobre a modificação de registros.

Depois de executar DISPLAY SELECTION, não há registro atual. Utilize um comando tal como FIRST RECORD ou LAST RECORD para selecionar um.

O parâmetro modoSelecao é utilizado para definir as possibilidades de seleção de registros na lista utilizando o mouse. Neste parâmetro pode passar uma das seguintes constantes do tema “Parâmetro de formulário”:

Constante Tipo Valor
Multiple selection Inteiro longo 2
No selection Inteiro longo 0
Single selection Inteiro longo 1


Se não passa o parâmetro modoSelecao, por padrão é utilizado o modo “Seleção múltipla”.

O parâmetro entradaLista lhe permite autorizar o modo “Entrada em lista” na lista mostrada. Este modo permite ao usuário selecionar e modificar diretamente os valores dos registros no formulário de saída. Passe True para ativar este modo ou False para desativá-lo. Por padrão, se não passar o parâmetro entradaLista, o modo “Entrada em lista” é desativado.

Lembre que com o comando DISPLAY SELECTION, este parâmetro apenas permite a seleção dos valores na lista e não sua modificação. De fato, o comando DISPLAY SELECTION carrega os registros da seleção atual em modo apenas leitura. Só o comando MODIFY SELECTION permite efetivamente a entrada de valores.

Nota: O comando OBJECT SET ENTERABLE permite ativar ou desativar facilmente o modo Entrada em lista.

Algumas regras relacionadas com o parâmetro opcional *:

- Se a seleção contiver apenas um registro e o primeiro parâmetro opcional * não for utilizado, o registro será mostrado no formulário de entrada ao invés do formulário de saída.
- Se o primeiro parâmetro opcional * for especificado, o registro único será mostrado no formulário de saída.
- Se o primeiro parâmetro opcional * for especificado e o usuário mostrar o registro no formulário de entrada fazendo duplo clique sobre ele,  as barras de rolagem do formulário serão ocultadas. Para anular este efeito, passe o segundo parâmetro opcional *.

Pode colocar botões personalizados na área de cabeçalho ou de rodapé do formulário de saída para terminar a execução do comando DISPLAY SELECTION. Pode utilizar os botões automáticos Aceitar ou Cancelar para sair, ou utilizar um método de objeto que chame aos comandos ACCEPT ou CANCEL. Quando um formulário de saída chamado pelo comando DISPLAY SELECTION não tem botões, apenas a tecla Escape (Windows) ou Esc (Mac OS) permitem sair da lista.

Durante e depois da execução de DISPLAY SELECTION, os registros que o usuário selecionar serão conservados em um conjunto chamado UserSet. UserSet está disponível através de DISPLAY SELECTION aos métodos de objeto dos botões, aos métodos chamados pelos comandos de menu, assim como para o método de projeto que chamou DISPLAY SELECTION.

O exemplo a seguir seleciona todos os registros na tabela [Pessoas]. O comando DISPLAY SELECTION mostra os registros e permite ao usuário selecionar os registros a imprimir. Finalmente, seleciona os registros com USE SET, e os imprime com PRINT SELECTION:

 ALL RECORDS([Pessoas]` Seleção de todos os registros
 DISPLAY SELECTION([Pessoas];*) ` Visualização dos registros
 USE SET("UserSet") ` Utilizar apenas os registros selecionados pelo usuário
 PRINT SELECTION([Pessoas]` Imprimir os registros que o usuário selecionou

Ver o exemplo #6 do comando Form event. Este exemplo mostra todos os testes que pode necessitar para monitorar completamente os eventos que ocorrem durante a execução do comando DISPLAY SELECTION.

Para reproduzir as funcionalidades oferecidas pelo menu Registros do ambiente Desenho quando utiliza DISPLAY SELECTION ou MODIFY SELECTION em modo Aplicação, aja da seguinte maneira:

a. No ambiente Desenho, crie uma barra de menus com os comandos de menu que desejar, por exemplo, Mostrar todos, Procurar e Ordenar.

b. Associe esta barra de menus (utilizando o menu “Barra de menus associada” na caixa de diálogo de propriedades do formulário) com o formulário de saída utilizado com os comandos DISPLAY SELECTION ou MODIFY SELECTION.

c. Associe os seguintes métodos de projeto aos seus comandos de menu:

  ` M_SHOW_ALL (associado ao comando de menu Mostrar todos)
 $vpCurTabela:=Current form table
 ALL RECORDS($vpCurTabela->)
  ` M_QUERY (associado ao comando de menu Buscar)
 $vpCurTabla:=Current form table
 QUERY($vpCurTable->)
  ` M_ORDER_BY (associado ao comando de menu Ordenar)
 $vpCurTabla:=Current form table
 ORDER BY($vpCurTabela->)

Também pode utilizar outros comandos, tais como PRINT SELECTION, QR REPORT, etc. para oferecer todas as opções de menu padrão que desejar cada vez que visualize ou modifique uma seleção no modo Aplicação. Graças ao comando Current form table , estes métodos são genéricos, e a barra de menus as quais são compatíveis podem ser  associadas a todo formulário de saída de qualquer tabela.



Ver também 

Conjuntos
Form event
MODIFY SELECTION

 
PROPRIEDADES 

Produto: 4D
Tema: Seleção
Número 59

Este comando não pode ser utilizado com 4D Server

 
HISTÓRIA 

Modificado: 4D 2004

 
ARTICLE USAGE

Manual de linguagem 4D ( 4D v16)
Manual de linguagem 4D ( 4D v16.1)
Manual de linguagem 4D ( 4D v16.2)
Manual de linguagem 4D ( 4D v16.3)