26oct. 2010

Walkthrough : TPT Inheritance

Afin de simplifier l'utilisation de l'héritage avec Entityn voici un walkthrough (pas à pas) qui va vous permettre de créer une relation d'héritage dans un modèle entity préexistant.

Il n'est pas possible de supprimer tout le modèle et de le régénérer. En effet, vous détruiriez toutes les relations d'héritages déjà créées.

Cet article fait suite à mon article précédent référençant les ressources intéressantes concernant l'utilisation du TPT Inheritance.

Dans la base de données

Etape 1

Créer la table parente dans la base de données. Créer une colonne identifiant et ajouter tous les champs requis.

Créer la table enfant dans la base de données avec une clé primaire et ajouter les champs requis.

Etape 2

Ajouter une clé étrangère dans table enfant tel que : Enfant.PrimaryKey References Parent.PrimaryKey.

En d'autre terme, la clé primaire de la table enfant, est aussi la clé étrangère vers la table parente.

Dans l'explorateur de modèle

Etape 3

Rafraichir le modèle, la relation apparaît.

Etape 4

Supprimer la relation dans le model manager.

Etape 5

Faire un clic droit sur l'entité relié à la table enfant : Ajouter > Héritage. Sélectionner la table qui sera table de base, la table dérivée puis valider. L'héritage apparait maintenant dans le navigateur de model.

  • Erreur : la colonne Id ne peut-être mappé dans l'enfant et le parent. Le modèle ne sait pas quel colonne apparaitra dans la propriété Id.

Etape 6

Supprimer la colonne Id de la table enfant. C'est celle de la table parente qui nous interesse.

  • Erreur : la colonne Id de la table enfant ne peut pas être mappée sur rien. C'est une clé primaire.

Etape 7

Clic droit sur l'entité nouvellement créée > Table mapping, on recrée le lien. Dans le tableau faire la correspondance entre Id dans le modèle avec la colonne Id de la table.

Si tout s'est bien passé, il n'y a plus d'erreur de compilation. Le champ Id est mappé de façon cachée. Il n’apparaît que dans les détails du mapping.

Conclusion

L'héritage est maintenant créé. L'entité enfant peut-être castée à loisir en tant qu'entité parente.

Dans un prochain article nous verrons comment manipuler les entité utilisant l'héritage : comment les sauver, les supprimer.

Utiliser la fonction Validate (clic droit -> Validate) pour vous assurer que le modèle est exploitable.

aucun commentaire

Fil des commentaires de ce billet

Ajouter un commentaire

Le code HTML est affiché comme du texte et les adresses web sont automatiquement transformées.