DBRSELECT( )
Devuelve el número del área de trabajo destino de una relación
Sintaxis
DBRSELECT(<nRelación>) –> nAreaTrabajo
Argumentos
<nRelación> es la posición de la relación deseada en la lista de relaciones del área de trabajo actual. Las relaciones se numeran de acuerdo al orden en el que se definieron con SET RELATION.
Devuelve
DBRSELECT() devuelve el número del área de trabajo de la relación especificada por <nRelación> como un valor numérico entero. Si no existe RELATION SET para <nRelación>, DBRSELECT() devuelve cero.
Descripción
DBRSELECT() es una función de base de datos utilizada en combinación con DBRELATION() para determinar el área de trabajo y expresión de enlazado de una relación existente creada con el mandato SET RELATION.
DBRSELECT() devuelve el área de trabajo definida por la cláusula INTO.
DBRELATION() devuelve la expresión de enlazado definida por la cláusula
Para determinar el alias de la relación en lugar del número de área de trabajo, utilice la expresión ALIAS(DBRSELECT(<nRelación>)).
Por defecto, DBRSELECT() actúa en el área de trabajo seleccionada actualmente. Actúa en un área de trabajo no seleccionada si la especifica como parte de una expresión con alias (consulte el ejemplo siguiente).
Ejemplos
¦ Este ejemplo abre tres ficheros de base de datos, se establecen dos relaciones desde el área de trabajo padre, después se muestra la expresión de enlace con la segunda área de trabajo hija así como el área de trabajo destino de la relación:
USE Facturas INDEX Facturas NEW
USE OrdenInverso INDEX OrdenInverso NEW
USE Cliente INDEX Cliente NEW
SET RELATION TO NumCliente INTO Cliente, ;
NumOrden INTO OrdenInverso
//
? DBRELATION(2), DBRSELECT(2) // Resultado:
// NumOrden 3
? ALIAS(DBRSELECT(2)) // Resultado:
// OrdenInverso
¦ Más tarde, puede consultar la misma información para un área de trabajo no seleccionada utilizando una expresión de alias:
USE Fichero NEW
? Cliente->(DBRELATION(2)) // Resultado: NumOrden
? Cliente->(DBRSELECT(2)) // Resultado: 3
Ficheros: La biblioteca asociada es DPXBASE.CH.