Vue de classe (model)

De Wiki1000
(Différences entre les versions)
(Page créée avec « ===Introduction=== Les vues de classe sont l'équivalent objet des vues SQL. Une vue de classe présente les caractéristiques suivantes : * Elle représente une vue d'une … »)
 
(Propriétés avancées d'une vue)
Ligne 26 : Ligne 26 :
  
 
===Propriétés avancées d'une vue===
 
===Propriétés avancées d'une vue===
====Clé primaire====
+
 
====Ordre de tri====
+
{{#images:image-1.png|dsm/modele/vue}}
====Filtre SQL====
+
 
 +
* Clé primaire
 +
:Lorsqu'une vue comporte des agrégats chaque objet de la vue correspond à un ensemble d'objets de la classe principale; dans ce cas il est nécessaire de définir un attribut clé primaire pour identifier de façon unique une instance de la vue.
 +
 
 +
* Ordre de tri
 +
:Cet attribut peut être utilisé pour ordonner les instances de la vue.
 +
 
 +
* Expression Where
 +
:Ce filtre, appliqué uniquement en SQL, peut être utilisé pour filtrer les instances de la vue. Il est ajouté systématiquement à toutes les requêtes portant sur la vue.
 +
 
 
====Attributs agrégats====
 
====Attributs agrégats====
 +
 +
{{#images:image-2.png|dsm/modele/vue}}
 +
 +
Lorsque l'alias d'un attribut de la vue est un attribut numérique il est possible de définir un agrégat pour cet attribut.
 +
 +
{{tip|Dans ce cas vous devrez définir une clé primaire pour la vue}}
  
 
===Vue en mise à jour===
 
===Vue en mise à jour===

Version du 9 septembre 2011 à 12:12

Sommaire

Introduction

Les vues de classe sont l'équivalent objet des vues SQL.

Une vue de classe présente les caractéristiques suivantes :

  • Elle représente une vue d'une classe existante, généralement persistante, appelée classe principale.
  • Les attributs d'une vue puvent être soit des attributs non persistant soit des alias sur les attributs de la classe principale.
  • Les alias d'attribut peuvent parcourir les références de la classe principale.

Le principal avantage des vues est que lors du chargement des objets d'une vue le framework effectuera une seule requête contenant les jointures sur toutes les tables nécessaires selon les références définies dans les alias de la vue.

Info-20px.png Note : En général une jointure correspond à une référence

Filtre sur les vues

Les filtres posés sur une vue doivent être défini par rapport aux attributs de la vue mais peuvent contenir des termes relatifs à la classe principale de la vue.

versiontahoe-32x32.png Un filtre sur une vue peut faire référence à la pseudo référence "main" pour forcer l'utilisation d'un attribut de la classe principale, ceci peut être utile si la vue redéfini un rôle de la classe principale et que l'on désire utiliser le rôle dans le filtre.

Droit sur une vue

Les droits pris en compte pour une vue sont :

  • Les droits posés sur la vue.
  • Si la vue n'a pas de droits définis les droits définis sur la classe principale.
Tip-20px.png Tip : Evitez de définir des droit sur une vue mais définissez les droits sur la classe principale.

Propriétés avancées d'une vue

image-1.png

  • Clé primaire
Lorsqu'une vue comporte des agrégats chaque objet de la vue correspond à un ensemble d'objets de la classe principale; dans ce cas il est nécessaire de définir un attribut clé primaire pour identifier de façon unique une instance de la vue.
  • Ordre de tri
Cet attribut peut être utilisé pour ordonner les instances de la vue.
  • Expression Where
Ce filtre, appliqué uniquement en SQL, peut être utilisé pour filtrer les instances de la vue. Il est ajouté systématiquement à toutes les requêtes portant sur la vue.

Attributs agrégats

image-2.png

Lorsque l'alias d'un attribut de la vue est un attribut numérique il est possible de définir un agrégat pour cet attribut.

Tip-20px.png Tip : Dans ce cas vous devrez définir une clé primaire pour la vue

Vue en mise à jour

ModèleDéveloppement DSM

Outils personnels