Este es el sitio web histórico de la documentación de 4D. La documentación se está trasladando progresivamente a developer.4d.com

Inicio

 
4D v19.8
RELATE ONE SELECTION

RELATE ONE SELECTION 


 

RELATE ONE SELECTION ( tablaN ; tabla1 ) 
Parámetro Tipo   Descripción
tablaN  Tabla in Nombre de la tabla Muchos (donde inicia la relación)
tabla1  Tabla in Nombre de la tabla Uno (donde termina la relación)

El comando RELATE ONE SELECTION crea una nueva selección de registros en tabla1 a partir de la selección de registros de la tablaN relacionada y carga el primer registro de la nueva selección como el registro actual.

Este comando sólo puede utilizarse si hay una relación de Muchos a Uno. RELATE ONE SELECTION puede funcionar a través de varios niveles de relaciones. Puede haber varias tablas relacionadas entre la tabla Muchos y la tabla 1.

Las relaciones pueden ser manuales o automáticas. Cuando existen relaciones automáticas, siempre son utilizadas en primer lugar por RELATE ONE SELECTION. Cuando son posibles varios caminos desde la tabla de partida hasta la tabla de destino, RELATE ONE SELECTION toma el más corto, utilizando relaciones automáticas (si existen). Si existen rutas del mismo tamaño y se desea controlar la ruta utilizada, o si se desea «forzar» el uso de relaciones manuales, es necesario utilizar el comando SET FIELD RELATION.

Ejemplo  

El siguiente ejemplo busca los clientes cuyas facturas se vencen hoy. 

Esta es una manera de crear una selección en la tabla [Clientes], a partir de una selección de registros de la tabla [Facturas]:

 CREATE EMPTY SET([Clientes];"Fecha de vencimiento del pago")
 QUERY([Facturas];[Facturas]FechaVence=Current date)
 While(Not(End selection([Facturas])))
    RELATE ONE([Facturas]CustID)
    ADD TO SET([Clientes];"Fecha de vencimiento del pago")
    NEXT RECORD([Invoices])
 End while

La siguiente técnica utiliza RELATE ONE SELECTION para obtener el mismo resultado:

 QUERY([Facturas];[Facturas]FechaVence=Current date)
 RELATE ONE SELECTION([Facturas];[Clientes])

Note: a partir de la versión 11, este código puede escribirse de esta manera sin perdida de rendimiento:

 QUERY([Clientes];[Facturas]FechaVence=Current date)



Ver también 

Conjuntos
QUERY
RELATE MANY SELECTION
RELATE ONE

 
PROPIEDADES 

Producto: 4D
Tema: Relaciones
Número 349

El comando cambia el registro actualEl comando cambia la selección actualThis command can be run in preemptive processes

 
CONTENIDO DE LA PÁGINA 
 
HISTORIA 

Modificado: 4D v6

 
ARTICLE USAGE

Manual de lenguaje 4D ( 4D v19)
Manual de lenguaje 4D ( 4D v19.1)
Manual de lenguaje 4D ( 4D v19.4)
Manual de lenguaje 4D ( 4D v19.5)
Manual de lenguaje 4D ( 4D v19.6)
Manual de lenguaje 4D ( 4D v19.7)
Manual de lenguaje 4D ( 4D v19.8)