Configuración de ejemplo para una transformación de modelo a modelo para modelos que contienen referencias cruzadas

Este ejemplo muestra dos formas de gestionar referencias cruzadas al transformar un modelo.
Antes de empezar
Utilice las instrucciones en "Configurar instrucciones para una transformación de modelo a modelo para modelos que contienen referencias cruzadas" para configurar el ejemplo.

Transformar referencias cruzadas cuando no se ha transformado el elemento al que se hace referencia

Por qué y cuándo se efectúa esta tarea
  1. En el entorno de trabajo, en la vista Explorador de paquetes, expanda el proyecto origen, expanda Modelos, expanda Source1 y a continuación expanda las clases A y B. Cada clase tiene un atributo y el tipo del atributo es la otra clase del mismo paquete.
  2. Expanda el proyecto destino y efectúe una doble pulsación sobre el archivo de configuración de transformación llamado transform source1 to target1.tc.
  3. En el editor de configuraciones de transformación, pulse Ejecutar.
  4. En el proyecto destino, expanda Modelos, expanda Target1; a continuación expanda las interfaces IA y IB que la transformación ha generado a partir de las clases A y B. Tenga en cuenta que los tipos de los atributos se establecen en la interfaz en el modelo destino que corresponde a la clase en el modelo origen.
  5. En el proyecto origen, expanda Source2. Esta carpeta contiene un paquete con una clase llamada C, que tiene un atributo cuyo tipo es una clase del otro modelo de entrada, Clase A en Source1 (paquete P1). Esta referencia cruzada es el asunto de este ejemplo.
  6. En el proyecto destino, efectúe una doble pulsación sobre el archivo de configuración de transformación llamado transform source2 to target2.tc.
  7. En el editor de configuraciones de transformación, pulse Ejecutar.
  8. En el proyecto destino, expanda Modelos, expanda Target2 y expanda la interfaz IC que la transformación ha generado a partir de la clase C. El tipo del atributo del modelo destino generado es el mismo que era en el modelo de entrada: Clase A en Source1. Este resultado se da porqué la transformación que transforma Source2 en Target 2 no tiene información sobre la transformación de Source1 en Target1.
Resultados
Si está transformando varios modelos como en este ejemplo y los modelos contienen referencias intermodelo que desea actualizar para los objetos correspondientes, no puede transformar los modelos secuencialmente. Debe transformar los modelos a la misma vez. La sección siguiente le indica cómo hacerlo.
Nota: Si el modelo que contiene el elemento al que se hace referencia no debe transformarse, lo que significa que la referencia cruzada es estática, no necesita las instrucciones de la sección siguiente. Simplemente puede transformar el modelo que contiene el elemento al que se hace referencia tal como se hace normalmente. Estas instrucciones sólo son aplicables cuando se debe transformar el destino de la referencia cruzada.

Transformar referencias cruzadas cuando se transforman el elemento al que se hace referencia y el elemento que hace referencia

Por qué y cuándo se efectúa esta tarea
  1. En la vista Explorador de paquetes, expanda el proyecto destino y efectúe una doble pulsación sobre el archivo de configuración de transformación llamado transform source1 and source2 to target1 and target2.tc.
  2. En el Editor de configuraciones de transformación, pulse la pestaña Origen y destino. Fíjese en que el origen que se especifica aquí es Source1.emx y el destino es Target1.emx, igual que en la transformación llamada transform source1 to target1.tc.
  3. En el editor de configuración de transformaciones, pulse la pestaña Orígenes y destinos de transformación auxiliares. El origen y el destino auxiliares especificados aquí son Source2.emx y Target2.emx. Cuando ejecuta la transformación, Source2.emx se transforma al igual que Source1.emx.
  4. En el editor de configuraciones de transformación, pulse la pestaña Principal y a continuación pulse Ejecutar.
  5. Examine Target1. El contenido es el mismo que tenía antes de la transformación anterior.
  6. Examine Target2. El atributo de IC en la interfaz generada se ha establecido ahora en IA que es la interfaz del modelo destino correspondiente a la clase a la que se hacía referencia originalmente, A, en el modelo origen.
Información relacionada
Instrucciones de configuración para una transformación de modelo a modelo para modelos que contienen referencias cruzadas

Comentarios