Partager via


Objet Role (Générateur de modèles)

L'objet Role définit un rôle d'une entité. Un rôle est une description de deux entités associées. Cet objet hérite les propriétés de l'objet Field.

Propriétés

Nom

Cardinalité

Type

Description

Name

0-1

String

Nom du rôle. Si le paramètre Cardinality a pour valeur One ou OptionalOne, le nom de l'entité associée est le nom par défaut. Sinon, la chaîne a pour valeur par défaut la valeur du paramètre CollectionName de l'entité associée.

Linguistics

0-1

Object

Propriétés linguistiques du rôle. Cet élément n'est pas autorisé si le paramètre Name est omis. Dans ce cas, les valeurs par défaut des paramètres SingularName et PluralName correspondent aux valeurs des paramètres Name et Collection de l'entité associée, respectivement.

RelatedRoleID

1

String

ID du rôle correspondant sur l'entité cible. La valeur de ce rôle ne peut pas correspondre à la valeur du paramètre RelatedRole. En outre, la valeur RelatedRole du paramètre RelatedRole doit être ce rôle.

Cardinality

1

Enum

Quatre options sont disponibles : One, Many, OptionalOne ou OptionalMany.

ContextualName

0-1

Enum

Lorsque le rôle est utilisé pour accéder à l'entité, l'énumérateur ContextualName remplace le paramètre ContextualName pour les attributs de l'entité cible du rôle. L'énumérateur peut avoir l'une des trois valeurs suivantes : Attribute, Merge ou Role. La valeur par défaut de l'énumérateur est Attribute et permet d'utiliser le nom de l'attribut comme nom contextuel. Spécifiez Merge pour que le nom de l'attribut et le nom du rôle soient fusionnés et utilisés comme nom contextuel. Si cet attribut est le seul attribut d'identification de l'entité et que vous spécifiez Role, le nom du rôle est utilisé comme nom contextuel. S'il n'est pas le seul attribut d'identification de l'entité, Role est traité comme Merge.

HiddenFields

0-1

Object

Ensemble de champs et de dossiers de champs que l'application cliente ne doit pas afficher pour l'entité cible du rôle lorsque celui-ci est utilisé pour accéder à l'entité. Par exemple, l'attribut AddressType doit être masqué lorsque l'élément Address est affiché à l'aide du rôle HomeAddress.

ExpandInline

0-1

Boolean

Indique que l'application cliente ne doit pas afficher le rôle à l'utilisateur et que les champs de l'entité associée doivent être affichés à la place comme s'ils appartenaient à cette entité. L'expansion de rôle est favorisée au détriment du comportement de recherche lorsque ils sont tous les deux spécifiés.

PromoteLookup

0-1

Boolean

Indique que l'application cliente, lorsque l'entité conteneur est affichée comme une recherche, affiche également l'entité cible comme telle. Cette valeur n'est autorisée que si l'entité conteneur et l'entité cible du rôle sont toutes les deux des entités de recherche. Les rôles de recherche sur l'entité associée d'un rôle de recherche sont promus si la valeur de PromoteLookup est true et que l'entité associée du rôle promu n'est pas l'entité destinataire de cette promotion ou l'un de ses ancêtres ou descendants directs.

Preferred

0-1

Boolean

Indique que les chemins d'accès qui contiennent ce rôle doivent être préférés à ceux qui ne contiennent pas de rôle par défaut. Utilisez ce paramètre Boolean pour indiquer le chemin d'accès à emprunter pour atteindre une autre entité lorsque plusieurs chemins d'accès sont disponibles.

Recursion

0-1

Boolean

Indique si la relation doit être parcourue de manière récursive par défaut. La récursivité n'est autorisée que si l'entité conteneur est la même que l'entité cible. Les rôles sont étendus de manière récursive, mais la récursivité s'arrête en cas de tentative d'extension d'éléments à partir de l'entité A dans le contexte de A, ou de l'un de ses ancêtres ou descendants directs.

Binding

0-1

Object

Objet de base de données qui représente ce rôle. L'extrémité spécifiée de la relation doit être liée aux colonnes de la table à laquelle l'entité qui contient l'élément RelatedRole est liée ou elle doit être égale à la colonne à laquelle cette entité est liée. L'autre extrémité de la relation doit se trouver dans la table à laquelle l'entité conteneur de ce rôle est liée ou elle doit être égale à la colonne à laquelle cette entité est liée. Le paramètre Binding est requis sauf si l'entité de ce rôle est liée à une table qui contient la colonne à laquelle l'entité de RelatedRole est liée (ou vice versa). Dans ce cas, la relation contenant contenu entre la colonne et la table est implicite et la liaison n'est pas spécifiée.

Remarques

Dans le Générateur de rapports, un rôle est une description de la relation entre deux entités.

Pour plus d'informations sur les valeurs Enum valides, consultez Types de données du Générateur de modèles.