Propiedad Relation.Table (DAO)
Se aplica a: Access 2013, Office 2013
Indica el nombre de la tabla principal de un objeto Relation. El resultado debe ser el mismo que el valor de la propiedad Name de un objeto TableDef o QueryDef (únicamente áreas de trabajo de Microsoft Access).
Sintaxis
expresión . Mesa
Expresión Variable que representa un objeto Relation .
Comentarios
El valor de la propiedad Table es de lectura y escritura para un objeto Relation nuevo que no se haya anexado todavía a una colección, y de sólo lectura para un objeto Relation existente en una colección Relations.
Use la propiedad Table con la propiedad ForeignTable para definir un objeto Relation, que representa la relación entre campos de dos tablas o consultas. Establezca la propiedad Table en el valor de la propiedad Name del objeto TableDef o QueryDef principal, y establezca la propiedad ForeignTable en el valor de la propiedad Name del objeto TableDef o QueryDef externo (al que se hacer referencia). La propiedad Attributes determina el tipo de relación entre los dos objetos.
Por ejemplo, si tuviera una lista de códigos de piezas válidas (en un campo denominado PartNo) almacenada en una tabla ValidParts, podría establecer una relación de uno a varios con una tabla OrderItem de modo que si se introdujera un código de pieza en la tabla OrderItem, tendría que estar ya en la tabla ValidParts. Si el código de pieza no existiese en la tabla ValidParts y no hubiera establecido la propiedad Attributes del objeto Relation en dbRelationDontEnforce, se produciría un error capturable.
En este caso, la tabla ValidParts es la tabla principal, por lo que la propiedad Table del objeto Relation se establecería en ValidParts y la propiedad ForeignTable del objeto Relation se establecería en OrderItem. Las propiedades Name y ForeignName del objeto Field de la colección Fields del objeto Relation se establecerían en PartNo.
Ejemplo
En este ejemplo se muestra cómo las propiedades Table, ForeignTable y ForeignName definen los términos de un objeto Relation entre dos tablas.
Sub ForeignNameX()
Dim dbsNorthwind As Database
Dim relLoop As Relation
Set dbsNorthwind = OpenDatabase("Northwind.mdb")
Debug.Print "Relation"
Debug.Print " Table - Field"
Debug.Print " Primary (One) ";
Debug.Print ".Table - .Fields(0).Name"
Debug.Print " Foreign (Many) ";
Debug.Print ".ForeignTable - .Fields(0).ForeignName"
' Enumerate the Relations collection of the Northwind
' database to report on the property values of
' the Relation objects and their Field objects.
For Each relLoop In dbsNorthwind.Relations
With relLoop
Debug.Print
Debug.Print .Name & " Relation"
Debug.Print " Table - Field"
Debug.Print " Primary (One) ";
Debug.Print .Table & " - " & .Fields(0).Name
Debug.Print " Foreign (Many) ";
Debug.Print .ForeignTable & " - " & _
.Fields(0).ForeignName
End With
Next relLoop
dbsNorthwind.Close
End Sub