4D v16.3

GOTO SELECTED RECORD

Página Inicial

 
4D v16.3
GOTO SELECTED RECORD

GOTO SELECTED RECORD 


 

GOTO SELECTED RECORD ( {tabela ;} posicao ) 
Parâmetro Tipo   Descrição
tabela  Tabela in Tabela na qual ir ao registro selecionado ou Tabela por padrão, se omitida
posicao  Inteiro longo in Posição do registro na seleção

GOTO SELECTED RECORD move o registro especificado na seleção atual de tabela o registro atual. A seleção atual de tabela não muda. O parâmetro registro não é o mesmo do número retornado por Record number; Este parâmetro representa a posição do registro na seleção atual. A posição do registro depende da maneira na qual a seleção tenha sido criada e ordenada.

GOTO SELECTED RECORD não faz nada se:

  • não há registros na seleção atual
  • registro não está na seleção atual,
  • registro já é o registro atual.
Se passa 0 em registro, não haverá registro atual em tabela. Este mecanismo permite desmarcar todos os registros em uma lista, especialmente no caso dos subformulários incluídos, quando o modo de seleção é “único”.

Exemplo  

O seguinte exemplo carrega dados do campo [Pessoas]Sobrenome no array atNomes. Um array de inteiros longos, chamado NumReg, se preenche com os números que representarão aos registros selecionados. Depois os dois arrays são ordenados:

 Tab/] ` Criar aqui a seleção da tabela [Pessoas]
 &NBSP` ...
 &NBSP` Obter os nomes
 SELECTION TO ARRAY([Pessoas]Sobrenome;atNomes)
 &NBSP` Criar um array para os números de registros selecionados
 $vlNbRegistros:=Size of array(atNomes)
  ARRAY LONGINT(NumReg;$vlNbRegistros)For($vlRegistro ;1;$vlNbRegistros)NumReg{$vlRegistro }:=$vlRegistro
  End for
  ` Ordenar os dois arrays em ordem alfabética
  SORT ARRAY(atNomes;NumReg;>)


Se o array atNomes for mostrado em uma área de rolagem, o usuário faz clique em um dos elementos. Como a ordenação dos dois arrays está sincronizada, todo elemento de numReg proporciona o número do registro selecionado para o registro cujo nome for guardado no elemento correspondente em atNomes.

O seguinte método de objeto para  atNomes seleciona o registro correto na seleção de [Pessoas], de acordo ao nome elegido na área de rolagem:
 Case of
        :(Form event=On Clicked)
        If(atNomes#0)
        GOTO SELECTED RECORD(NumReg{atNomes})
        End if
        End case



Ver também 

Selected record number

 
PROPRIEDADES 

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

O comando altera o registro atualThis command can be run in preemptive processes

 
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)