Una relación de clave foránea es una relación entre una
columna ampliada en cualquier tabla de la base de datos de la
aplicación y la tabla YFS_PERSON_INFO. Puede crear elementos de clave
foránea para establecer la relación entre una columna ampliada y la
tabla YFS_PERSON_INFO.
Acerca de esta tarea
Nota: Actualmente, YFS_PERSON_INFO es la única tabla que soporta una relación con extensiones de clave foránea dentro de la base de datos de la aplicación.
Procedimiento
- Copie el archivo <runtime_sandbox>/repository/entity/extensions/Extensions.xml.sample como archivo <install_dirruntime_sandbox>/extensions/global/entities/your_custom_filename.xml O modifique el archivo XML de extensión existente.
- Edite el archivo your_custom_filename.xml para añadir elementos de clave foránea tal como se muestra en el ejemplo siguiente para cada tabla que desee ampliar. Para obtener una
descripción de los atributos XML, consulte la tabla que sigue al
ejemplo.
<!-- element exposed to create foreign key relationship -->
<DBSchema>
<Entities>
<Entity TableName="REQUIRED">
.
.
<!-- element exposed to create relationship with PERSON_INFO table -->
<ForeignKeys>
<ForeignKey ParentTableName="YFS_PERSON_INFO"
XMLName="YFSName1" >
<Attribute ColumnName="REQUIRED"
ParentColumnName="PERSON_INFO_KEY" />
</ForeignKey>
<ForeignKey ParentTableName="YFS_PERSON_INFO"
XMLName="YFSName2" >
<Attribute ColumnName="REQUIRED"
ParentColumnName="PERSON_INFO_KEY" />
</ForeignKey>
.
.
</ForeignKeys>
.
.
</Entity>
</Entities>
</DBSchema>
Atributo
|
Descripción
|
Entidad
|
TableName
|
Nombre de la tabla a la que se
añaden los elementos de clave foránea. Por ejemplo, YFS_ITEM.
|
Entity/ForeignKeys/ForeignKey
|
ParentTableName
|
Nombre de la tabla padre de este elemento de
clave foránea.
Nota: Este valor debe ser YFS_PERSON_INFO, que es la única tabla que soporta actualmente las relaciones de claves foráneas.
|
XMLName
|
Puede especificar la representación XML del
nombre de elemento. Debe empezar por el prefijo de la entidad padre. Por ejemplo, si el prefijo de ParentTableName es YFS, entonces el
XMLName debe empezar por YFS.
De forma predeterminada, se da por sentado que es el nombre de la
tabla padre.
|
Entity/ForeignKeys/ForeignKey/Attribute
|
ColumnName
|
Especifica el nombre de columna ampliada de la entidad.
|
ParentColumnName
|
El nombre de columna de la tabla
YFS_PERSON_INFO que tiene una relación de elemento de clave foránea.
|
- Cree una etiqueta ForeignKey para cada relación de clave foránea que desee añadir.
- Puede que varios elementos de clave foránea estén relacionados
con la misma tabla padre.
- Amplíe las plantillas de API correspondientes para incluir los
elementos de clave foránea siguiendo las instrucciones de Ampliación
de plantillas de API.
- Compile y despliegue las ampliaciones.