SPFile.ScheduleStart - Méthode (DateTime, Boolean, String)
Planifie l'approbation automatique d'un document dans une bibliothèque de modéré à la date et heure spécifiées, avec le commentaire approbation spécifié et éventuellement modifie l'état de modération de l'élément de liste.
Espace de noms : Microsoft.SharePoint
Assembly : Microsoft.SharePoint (dans Microsoft.SharePoint.dll)
Syntaxe
'Déclaration
Public Sub ScheduleStart ( _
startDate As DateTime, _
setModerationStatus As Boolean, _
approvalComment As String _
)
'Utilisation
Dim instance As SPFile
Dim startDate As DateTime
Dim setModerationStatus As Boolean
Dim approvalComment As String
instance.ScheduleStart(startDate, setModerationStatus, _
approvalComment)
public void ScheduleStart(
DateTime startDate,
bool setModerationStatus,
string approvalComment
)
Paramètres
startDate
Type : System.DateTimeLa date et l'heure lorsque le document est approuvé.
setModerationStatus
Type : System.Booleantrue pour définir la propriété ModerationInformation de l'élément de liste à SPModerationStatusType.Scheduled; false de l'état de modération de laisser inchangé.
approvalComment
Type : System.StringL'explication pourquoi l'élément a été approuvé. Cette méthode stocke cette valeur dans la propriété SPListItem.ModerationInformation.Comment .
Exceptions
Exception | Condition |
---|---|
UnauthorizedAccessException | L'utilisateur actuel ne possède pas les autorisations de.ApproveItems de SPBasePermissions. |
SPException | La valeur de la propriété EnableModeration de bibliothèque de documents est false. |
SPException | La valeur de la propriété EnableMinorVersions de bibliothèque de documents est false. |
SPException | Le document a déjà été approuvé (la valeur de la propriété ModerationInformation de l'élément de liste est SPModerationStatusType.Approved). - ou - Contrôle de version mineure n'est pas activé pour la bibliothèque de documents. |
Remarques
Cette méthode crée un travail du minuteur de l'élément de travail qui appelle la méthode Approve(String) à une date et une heure. Si une autre tâche du même type a déjà été créée pour le fichier, il est remplacé par ce nouveau projet. Lors de l'arrivent de la date et heure spécifiées, le fichier est approuvé et publié. Il devient alors visible dans les affichages publics de la bibliothèque de documents.
Statut de planification est suivi par l'intermédiaire de la propriété ModerationInformation de l'élément de liste. Si true est passé comme un argument au paramètre de la méthode ScheduleStartsetModerationStatus , la propriété ModerationInformation est définie sur SPModerationStatusType.Scheduled. Si vous ne souhaitez pas afficher d'approbation comme prévu, transmettez false comme argument.
Étant donné que la méthode ScheduleStart approuve essentiellement le fichier avant sa publication, l'utilisateur actuel doit disposer de l'autorisation de.ApproveItemsSPBasePermissions. Lorsque le travail du minuteur est créé par cette méthode s'exécute finalement, la valeur de la propriété ModerationInformation de l'élément de liste a la valeur SPModerationStatusType,.Approved, et la chaîne de texte transmise comme argument pour le paramètre approvalComment est définie comme la valeur de la propriété SPListItem.ModerationInformation.Comment de l'élément de la liste.
L'approbation de contenu entraîne l'élévation d'une version secondaire du fichier d'une version majeure. Seules les versions mineures peuvent être planifiées, et uniquement les versions principales sont publiées. Ce processus de travail, contrôle de version mineure doit être activée pour la bibliothèque de documents.
Exemples
Cet exemple planifie un élément de travail d'approbation d'un fichier dans une bibliothèque de documents. L'approbation est planifiée pour avoir lieu dans les heures tôt le matin, le jour suivant la demande.
public void Approve(SPListItem item, string comment)
{
SPFile file = item.File;
// Be sure we have a file to work with.
if (file != null)
{
// Check in any file that is checked out.
if (file.Level == SPFileLevel.Checkout)
{
file.CheckIn(String.Empty, SPCheckinType.MinorCheckIn);
}
// Queue it up at 2 am tomorrow.
DateTime startDate = DateTime.Now.Date.AddHours(2.0);
try
{
file.ScheduleStart(startDate, true, comment);
}
catch (SPException ex)
{
// Handle Sharepoint errors
}
}
}
Public Sub Approve(ByRef item As SPListItem, ByVal comment As String)
Dim file As SPFile = item.File
' Be sure we have a file to work with.
If (file Is Nothing) Then
' Check in any file that is checked out.
If file.Level = SPFileLevel.Checkout Then
file.CheckIn(String.Empty, SPCheckinType.MinorCheckIn)
End If
'Queue it up at 2 am tomorrow.
DateTime(startDate = DateTime.Now.Date.AddHours(2.0))
Try
file.ScheduleStart(startDate, True, comment)
Catch ex As SPException
' Handle Sharepoint errors
End Try
End If
End Sub