Partager via


Recherche modifications spécifiques dans le journal des modifications

Dernière modification : mercredi 29 juillet 2009

S’applique à : SharePoint Foundation 2010

Dans cet article
Construction d'une requête
Filtrage par type d'objet
Filtrage par type de modification

Vous pouvez rétrécir la sélection des médifications qui sont retournées dans une collection de modifications en passant un objet SPChangeQuery à une surcharge de la méthode GetChanges de la classe SPList, SPWeb, SPSite ou SPContentDatabase. Quand vous construisez un objet SPChangeQuery, vous pouvez spécifier que vous voulez filtrer les résultats de la requête par type d'objet, ou par type de modification ou les deux.

Construction d'une requête

Pour filtrer les résultats qui sont retournés par un appel à la méthode GetChanges(SPChangeQuery), utilisez les paramètres du constructeur SPChangeQuery en combinaison avec les propriétés de l'objet SPChangeQuery.

La signature du constructeur est comme suit :

public SPChangeQuery(bool AllChangeObjectTypes, bool AllChangeTypes);

Voici comment utiliser les deux paramètres du constructeur :

  • AllChangeObjectTypes

    Passez true pour retourner les modifications à tous les types d'objets. Passez false pour limiter la requête à des types d'objets spécifiques ; puis définissez true dans les propriétés de l'objet SPChangeQuery correspondant aux types d'objets qui vous intéressent.

    Par exemple, le code suivant construit une requête pour des modifications apportées aux objets SPGroup.

    // Construct a query.
    SPChangeQuery query = new SPChangeQuery(false, true); 
    
    // Specify the object type. 
    query.Group = true;
    
  • AllChangeTypes

    Passez true pour retourner tous les types de modifications. Passez false pour limiter la requête à des types de modifications spécifiques ; puis définissez true dans les propriétés de l'objet SPChangeQuery correspondant aux types de modifications qui vous intéressent.

    Par exemple, le code suivant construit une requête pour des modifications qui suppriment des objets.

    // Construct a query.
    SPChangeQuery query = new SPChangeQuery(true, false); 
    
    // Specify the change type. 
    query.Delete = true;
    

Si vous souhaitez limiter la requête à des types de modifications spécifiques concernant des types d'objet spécifiques, vous pouvez passer false en tant qu'argument aux deux paramètres. Par exemple, le code suivant construit une requête pour des modifications qui ajoutent, suppriment ou mettent à jour des objets.

// Construct a query.
SPChangeQuery query = new SPChangeQuery(false, false); 

// Specify the object type.
query.Item = true;

// And the change types. 
query.Add = true;
query.Delete = true;
query.Update = true;

Filtrage par type d'objet

Le tableau suivant est une liste des propriétés de la classe SPChangeQuery que vous pouvez utiliser pour spécifier les types d'objets pour lesquels des modifications doivent être retournées. Pour obtenir des modifications pour un type d'objet particulier, définissez la propriété correspondante à true. Les entrées des modifications sont retournées en tant que sous-classes de SPChange avec des propriétés spécifiques au type d'objet. Par exemple, la sous-classe SPChangeUser représente une modification dans un objet SPUser et possède une propriété IsSiteAdminChange qui décrit une caractéristique d'une modification à ce type d'objet.

Tableau 1. Propriétés qui spécifient un type d'objet

Propriété

Description

Sous-classe retournée

Alert

Inclut les modification apportées aux objets SPAlert.

SPChangeAlert

ContentType

Inclut les modification apportées aux objets SPContentType.

SPChangeContentType

Field

Inclut les modification apportées aux objets SPField.

SPChangeField

File

Inclut les modification apportées aux fichiers qui existent en dehors d'une liste et n'ont pas d'éléments correspondants.

SPChangeFile

Folder

Inclut les modification apportées aux dossiers qui existent en dehors d'une liste et n'ont pas d'éléments correspondants.

SPChangeFolder

Group

Inclut les modification apportées aux objets SPGroup.

SPChangeGroup

Item

Inclut les modification apportées à tous les objets qui existent dans une liste : éléments de liste, fichiers et dossiers.

SPChangeItem

List

Inclut les modification apportées aux objets SPList.

SPChangeList

SecurityPolicy

Inclut les modification apportées à la stratégie de sécurité au niveau application Web qui affecte l'intégralité de la base de données de contenu.

SPChangeSecurityPolicy

Site

Inclut les modification apportées aux objets SPSite.

SPChangeSite

User

Inclut les modification apportées aux objets SPUser.

SPChangeUser

View

Inclut les modification apportées aux objets SPView.

SPChangeView

Web

Inclut les modification apportées aux objets SPWeb.

SPChangeWeb

Filtrage par type de modification

Le tableau suivant est une liste des propriétés de la classe SPChangeQuery que vous pouvez utiliser pour spécifier les modifications apportées aux objets qu'une requête doit retourner. Pour obtenir un type particulier de modification, définissez la propriété correspondant à true. Ne perdez pas de vue, cependant, que tous les types de modifications ne s'appliquent pas à tous les types d'objets.

Tableau 2. Propriétés qui spécifient un type de modifications

Propriété

Description

Add

Inclut des ajouts d'objets. Pour les éléments, les fichiers et les dossiers, la valeur TimeLastModified dans le journal doit être la même que la propriété Created de l'objet.

Delete

Inclut des suppressions d'objets.

GroupMembershipAdd

Inclut des modifications qui ajoutent des utilisateurs à des groupes.

GroupMembershipDelete

Inclut des modifications qui suppriment des utilisateurs des groupes.

Move

Inclut des opérations de déplacement.

Navigation

Inclut les modifications apportées à la navigation.

Rename

Inclut les modifications de renommage. Cela signifie que la partie nom de fichier de l'URL a été modifiée.

Restore

Inclut les modifications qui restaurent les objets à partir de la Corbeille ou d'une sauvegarde. La modification de restauration signale au lecteur du journal des modifications d'un client de synchronisation qu'il doit resynchroniser l'objet et tous ses enfants.

RoleAssignmentAdd

Inclut les modifications qui ajoutent une affectation de rôle à l'étendue de l'objet.

RoleAssignmentDelete

Inclut les modifications qui suppriment une affectation de rôle à l'étendue de l'objet.

RoleDefinitionAdd

Inclut les modifications qui ajoutent une définition de rôle.

RoleDefinitionDelete

Inclut les modifications qui suppriment une définition de rôle.

RoleDefinitionUpdate

Inclut les modifications qui modifient une définition de rôle.

SystemUpdate

Inclut les modifications qui modifient un objet sans modifier sa propriété Modified ou Modified By. La valeur TimeLastModified dans le journal doit correspondre au moment où la modification s'est produite, et non à la propriété Modified.

Update

Inclut les modifications qui modifient un objet.

Voir aussi

Tâches

Procédure : Filtrer le journal des modifications par type d'objet

Procédure : filtrer le journal des modifications par type de modification