Freigeben über


SPFile.ScheduleStart-Methode (DateTime, Boolean, String)

Plant die automatische Genehmigung eines Dokuments in einer moderierten Bibliothek am angegebenen Datum und Uhrzeit, mit dem Genehmigungskommentar angegebenen, und ändert optional den Moderationsstatus des Listenelements.

Namespace:  Microsoft.SharePoint
Assembly:  Microsoft.SharePoint (in Microsoft.SharePoint.dll)

Syntax

'Declaration
Public Sub ScheduleStart ( _
    startDate As DateTime, _
    setModerationStatus As Boolean, _
    approvalComment As String _
)
'Usage
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
)

Parameter

  • startDate
    Typ: System.DateTime

    Das Datum und die Uhrzeit, wann das Dokument genehmigt wird.

  • approvalComment
    Typ: System.String

    Die Erläuterung, warum das Element genehmigt wurde. Diese Methode speichert diesen Wert in der Eigenschaft SPListItem.ModerationInformation.Comment .

Ausnahmen

Ausnahme Bedingung
UnauthorizedAccessException

Der aktuelle Benutzer hat keinen SPBasePermissions.ApproveItems Berechtigungen.

SPException

Der Wert der Eigenschaft EnableModeration Document Library ist false.

SPException

Der Wert der Eigenschaft EnableMinorVersions Document Library ist false.

SPException

Ist das Dokument bereits genehmigt (der Wert der ModerationInformation -Eigenschaft des Listenelements ist SPModerationStatusType-.Approved).

-ODER-

Nebenversionen ist für die Dokumentbibliothek nicht aktiviert.

Hinweise

Diese Methode erstellt einen Zeitgeberauftrag für Arbeitsaufgaben, der auf ein bestimmtes Datum und eine Uhrzeit die Approve(String) -Methode aufruft. Wenn bereits eine andere Stelle des gleichen Typs für die Datei erstellt wurde, wird es durch das neue Projekt ersetzt. Wenn das angegebene Datum und die Uhrzeit ankommen, wird die Datei genehmigt und veröffentlicht. Es wird dann in öffentlichen Ansichten der Dokumentbibliothek angezeigt.

Planungsstatus wird über die ModerationInformation -Eigenschaft des Listenelements nachverfolgt. Wenn true an den setModerationStatus -Parameter, der die ScheduleStart -Methode als Argument übergeben wird, wird die Eigenschaft ModerationInformation auf SPModerationStatusType.Scheduledfestgelegt. Wenn Sie nicht als geplante Genehmigung anzeigen möchten, übergeben Sie false als Argument.

Da die ScheduleStart -Methode im Wesentlichen die Datei vor ihrer Veröffentlichung genehmigt, muss der aktuelle Benutzer die SPBasePermissions.ApproveItems Berechtigung. Wenn der Zeitgeberauftrag erstellt diese Methode letztendlich ausgeführt wird, ist der Wert der ModerationInformation -Eigenschaft des Listenelements auf SPModerationStatusType.Approvedfestgelegt und an den approvalComment -Parameter als Argument übergebene Zeichenfolge als Wert für das Listenelement SPListItem.ModerationInformation.Comment -Eigenschaft festgelegt ist.

Inhaltsgenehmigung führt die Erhöhung von eine Nebenversion der Datei um eine Hauptversion. Nur die Nebenversionen geplant werden können und nur Hauptversionen veröffentlicht werden. Dieser Prozess funktioniert muss die Nebenversionen für die Dokumentbibliothek aktiviert sein.

Beispiele

In diesem Beispiel plant eine Arbeitsaufgabe für Genehmigung für eine Datei in einer Dokumentbibliothek. Die Genehmigung in den frühen Morgenstunden am Tag nach der Anforderung erfolgen soll.

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

Siehe auch

Referenz

SPFile Klasse

SPFile-Member

ScheduleStart-Überladung

Microsoft.SharePoint-Namespace

Approve

ScheduleEnd

ModerationInformation

SPModerationStatusType