Saltar para o conteúdo principal
Versão: 20 R8 BETA

RELATE ONE SELECTION

RELATE ONE SELECTION ( tabelaN ; tabela1 )

ParâmetroTipoDescrição
tabelaNTableNome da tabela Muitos (onde inicia a relação)
tabela1TableNome da Tabela Um (onde termina a relação)

Descrição

O comando RELATE ONE SELECTION cria uma nova seleção de registros em tabela1 a partir da seleção de registros da tabelaN relacionada e carrega o primeiro registro da nova seleção como o registro atual.

Este comando só pode ser utilizado se há uma relação de tabelaN a tabela1. RELATE ONE SELECTION pode funcionar através de vários níveis de relações. Pode haver várias tabelas relacionadas entre a tabelaN e a tabela1.

As relações podem ser manuais ou automáticas. Quando existem relações automáticas, elas são sempre usadas primeiro por RELATE ONE SELECTION. Quando vários caminhos são possíveis da tabela inicial para a tabela de destino, o RELATE ONE SELECTION usa o caminho mais curto, usando as relações automáticas (se houver). Se houver caminhos existentes do mesmo tamanho e você quiser controlar o caminho usado, ou se quiser “forçar” o uso de relações manuais, será necessário usar o comando SET FIELD RELATION.

Exemplo

O seguinte exemplo procura os clientes cujas faturas vencem hoje.

Esta é uma maneira de criar uma seleção na tabela [Clientes], a partir de uma seleção de registros da tabela [Faturas]:

 CREATE EMPTY SET([Clientes];"Data de vencimento do pagamento")
 QUERY([Faturas];[Faturas]DataVenc=Current date)
 While(Not(End selection([Faturas])))
    RELATE ONE([Faturas]ClienteID)
    ADD TO SET([Clientes];"Data de vencimento do pagamento")
    NEXT RECORD([Faturas])
 End while

A seguinte técnica utiliza RELATE ONE SELECTION para obter o mesmo resultado:

 QUERY([Faturas];[Faturas]DataVence=Current date)
 RELATE ONE SELECTION([Faturas];[Clientes])

Observe: A partir da versão 11, este código pode ser inscrito desta maneira sem perder o rendimento:

 QUERY([Clientes];[Faturas]DataVence=Current date)

Ver também

Conjuntos
QUERY
RELATE MANY SELECTION
RELATE ONE

Propriedades

Número do comando349
Thread-seguro
Modificar o registro atual
Modificar a seleção atual