Partager via


Références d'un ou plusieurs champs

Dernière modification : mercredi 21 juillet 2010

S’applique à : SharePoint Foundation 2010

Dans cet article
Les colonnes sont des références d'un champ ou de plusieurs champs
Ajout de colonnes aux listes
Référencement de colonnes dans des types de contenu

Cette rubrique décrit les différences entre les références d'un champ ou de plusieurs champs.

Les colonnes sont des références d'un champ ou de plusieurs champs

Les colonnes sont représentées comme éléments Field ou FieldRef, élément (ContentType) dans les différents schémas SharePoint Foundation, par exemple les définitions de site, de liste et de type de contenu.

Les colonnes de site et de liste sont représentées sous la forme d’éléments Field dans les définitions de site et de liste. Toutefois, les références de site et de liste sont représentées sous la forme d’éléments FieldRef dans les définitions de type de contenu. De la même façon, les colonnes de site et de liste contenues dans les sites et les listes sont représentées sous la forme d’objets SPField dans le modèle objet, tandis que les références de colonne de site et de liste dans les types de contenu sont représentées sous la forme d’objets SPFieldLink.

L'élément Field contient la définition complète d'une colonne de site ou de liste.

L’élément FieldRef est une référence à une colonne définie ailleurs, au niveau du site ou de la liste. Dans la référence de champ, vous pouvez redéfinir un sous-ensemble des propriétés de colonne, dont :

  • Nom complet

  • Attributs de promotion et rétrogradation XML

  • Si le champ est facultatif, obligatoire ou masqué

La modification de ces propriétés dans la référence de champ les affecte uniquement lorsqu'ils s'appliquent au type de contenu spécifique qui contient la référence de champ.

Ajout de colonnes aux listes

Vous pouvez considérer les colonnes de site comme des modèles ; vous les créez au niveau du site, puis vous pouvez les appliquer aux listes et aux sites enfants souhaités.

Pour plus d'informations sur les colonnes de site, voir Présentation des colonnes.

Lorsque vous ajoutez une colonne de site à une liste, sa définition est copiée localement dans la liste en tant que colonne de liste. Par conséquent, dans le schéma de liste, la colonne de liste est maintenant représentée par un élément Field dans le schéma de liste. Dans le modèle objet, elle est représentée par un objet SPField.

De plus, lorsque vous ajoutez une colonne de site à une liste, celle-ci a le même ID de champ que la colonne de site. SharePoint Foundation utilise cet ID pour savoir quelles colonnes de liste sont les « enfants » d'une colonne de site donnée. Ainsi, vous apportez des modifications à une colonne de site et propagez ces modifications à toutes les colonnes de liste qui sont des enfants de la colonne de site.

Pour plus d'informations, voir Mise à jour des colonnes de site.

Vous pouvez également créer des colonnes au niveau de la liste, auquel cas elles ne s'appliquent qu'à la liste où elles ont été créées. Vous ne pouvez ajouter des colonnes de liste qu'aux types de contenu de cette liste. Les colonnes de liste sont également représentées sous la forme d'éléments Field dans le schéma de la liste et d'objets SPField dans le modèle objet. Comme elles ne sont pas dérivées d'une autre colonne, elles n'ont pas de relations parent/enfant avec d'autres colonnes.

Référencement de colonnes dans des types de contenu

Pour effectuer le suivi de certaines métadonnées d’élément dans un type de contenu, vous pouvez référencer une colonne qui représente ces métadonnées. Toutefois, vous ne pouvez pas créer une colonne dans un type de contenu ; vous devez créer la colonne, puis la référencer dans la définition du type de contenu. De ce fait, lorsque vous ajoutez une colonne à un type de contenu, le schéma de ce type de contenu ne contient pas d’élément Field ; il contient un élément FieldRef. Cela est vrai à la fois dans les colonnes de site et dans les colonnes de liste que vous ajoutez aux types de contenu.

Une référence de champ conserve le même ID de champ que la colonne qu'il référence.

Si vous créez un type de contenu d’après un type de contenu parent, par défaut toutes les colonnes référencées dans le parent sont représentées dans le type de contenu enfant en tant qu’éléments FieldRef.

Lorsque vous ajoutez un type de contenu à une liste, les colonnes qui y sont référencées sont copiées localement dans la liste en tant que colonnes de liste. Les colonnes référencées par les différents éléments FieldRef du schéma du type de contenu sont copiées dans le schéma de la liste en tant qu’éléments Field, là encore avec la relation enfant/parent avec la colonne de site.

Lorsque vous référencez une colonne de liste dans un type de contenu de liste, elle est ajoutée en tant qu'élément FieldRef dans le schéma du type de contenu de liste.

Par conséquent, les colonnes sont toujours représentées par des éléments Field dans les schémas de site et de liste, mais toujours par des éléments FieldRef dans les schémas de type de contenu.

Les références de champ dans les types de contenu sont représentées par l'objet SPFieldLink dans le modèle objet Windows SharePoint Services 3.0.

L’illustration suivante montre cette relation. Supposons que vous référenciez la colonne de site Auteur dans un type de contenu. Dans le schéma du type de contenu, la référence à la colonne est représentée par un élément FieldRef. Lorsque vous ajoutez le type de contenu à une liste, SharePoint Foundation ajoute la colonne Auteur en tant qu’élément Field. Les deux éléments ont le même ID de champ que la colonne de site Auteur. Lorsque vous référencez la colonne de liste ItemNo dans le type de contenu de la liste, SharePoint Foundation l’ajoute en tant qu’élément FieldRef, avec le même ID de champ.

Champs et références de champ dans les sites et les listes

Voir aussi

Tâches

Procédure : référencer une colonne dans un type de contenu

Concepts

Définitions de type de contenu

Autres ressources

Types de contenu