2009-10-13 8 views
0

J'ai une liste SharePoint avec l'approbation du contenu activée. L'exigence métier est qu'une fois le nouvel élément de liste approuvé, il doit rester approuvé malgré les mises à jour ultérieures par tout utilisateur. Ma première pensée a été de gérer la méthode ItemUpdating, et si la propriété before correspondante est Approved, définissez la propriété after sur Approved. Cela ne fonctionne pas cependant.SharePoint - vérification de l'état de modification de l'approbation de contenu dans le récepteur d'événements

Dans la méthode ItemUpdating, la colonne "État d'approbation" n'apparaît pas dans les propriétés properties.BeforeProperties ou properties.AfterProperties. properties.ListItem ["Approval Status"] et properties.ListItem.ModerationInformation.Status affichent tous deux la valeur "before". Dans la méthode ItemUpdated, la situation est la même, sauf que les valeurs affichées sont les valeurs "après".

Y a-t-il un moyen dans l'une ou l'autre méthode d'identifier les méthodes avant et après? Je peux contourner ce problème en créant une nouvelle colonne cachée que je définis lorsque l'élément est approuvé, mais cela ne semble pas le mieux.

Devrais-je aborder cette question du point de vue du flux de travail?

Répondre

0

Utiliser le nom interne du champ avec AfterProperties ou BeforeProperties. c.-à-d., Propriétés.AprèsProperties ["nom interne"].

Il fonctionne pour moi

0

S'il vous plaît réfère aux propriétés suivantes dans la section AfterProperties pour une bibliothèque de documents.

Les bibliothèques de documents sont un peu différentes des listes. les bibliothèques de doc ont .AfterProperties ["vti_doclibmodstat"] et .AfterProperties ["vti_doclibmodcomm"].

Questions connexes