Vous pouvez utiliser des dépendances étendues pour définir l'ordre de génération des vues.
Les dépendances étendues sont des liens libres entre objets de MPD. Ces liens permettent de clarifier les relations existant entre les différentes objets d'un modèle. En règle générale, ces liens ne sont ni interprétés ni vérifiés par PowerAMC car ils ne sont créés qu'à des fins de documentation. Toutefois, si vous affectez le stéréotype <<DBCreateAfter>> à une dépendance étendue entre des vues, il sera analysé lors de la génération.
La vue à partir de laquelle vous faites partir la dépendance étendue est la vue dépendante et celle située à l'autre extrémité du lien est la vue influent. La vue influente sera générée avant la vue dépendante.
Si vous créez un jeu de dépendances étendues réflexives et/ou circulaires à l'aide du stéréotype <<DBCreateAfter>> , un message d'erreur s'affiche lors de la vérification du modèle. Si vous choisissez d'ignorer cette erreur, les vues seront générées par ordre alphabétique, sans tenir compte de l'ordre de génération, ce qui peut provoquer des erreurs lors de la création des vues dans la base de données.
Par exemple, Vous créez la vue GRANDE SURFACE à partir de la table MAGASIN. La vue extrait des informations de la table comme vous pouvez le vérifier dans l'onglet Requête SQL de la feuille de propriétés de vue :
Vous décidez de créer une autre vue appelée RAYON INFORMATIQUE ne faisant apparaître qu'une partie de l'offre du la grande surface. Cette vue est créée à partir de la vue GRANDE SURFACE, et en tire ses informations.
Par défaut les vues sont générées par ordre alphabétique, ainsi la génération de RAYON INFORMATIQUE échouera car la vue GRANDE SURFACE dont elle dépend n'est pas encore générée. Pour éviter ce problème, vous pouvez créer une dépendance étendue avec le stéréotype <<DBCreateAfter>> reliant RAYON INFORMATIQUE à GRANDE SURFACE.
Vous pouvez ainsi définir l'ordre de génération pour les vues : GRANDE SURFACE sera généré avant RAYON INFORMATIQUE.
Vous pouvez créer une dépendance étendue entre les vues depuis la liste des vues ou à partir du diagramme.
Pour plus d'informations sur la création de vues à partir d'une liste, voir Définition d'un ordre de génération pour les procédures stockées.