SharePointCommunity
Die deutschsprachige Community für SharePoint, Microsoft 365, Teams, Yammer und mit Azure

Sponsored by

Willkommen im Forum Archiv.
Einträge sind hier nicht mehr möglich, aber der Bestand von 12 Jahren SharePoint-Wissen ist hier recherchierbar.




Aus eigener Vorlage erzeugte Dokumente sind immer gesperrt.

Unbeantwortet Dieser Beitrag hat 7 Antworten

Ohne Rang
216 Beiträge
Nachtschelm erstellt 15 Feb. 2011 17:46
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo Forum,
diesmal komme ich mit folgendem Problem:

Ich habe eine Word-Vorlage erstellt und diese als Standardvorlage für eine Dokumentenbibliothek eingerichtet. Die Vorlage beinhaltet ein Makro, dass automatisch den Dateinamen im "Speichern unter"-Dialog vorschlägt. Das funktioniert soweit auch, allerdings wird das neuangelegte Dokument sehr lange nicht mehr freigegeben. Das heißt, wenn ich nach dem Erstellen des Dokuments eine Änderung an dessen Eigenschaften oder dem Inhalt vornehmen will, bekomme ich vollgende Fehlermeldung:

"Die Datei ist derzeit von einem anderen Benutzer ausgecheckt oder zur Bearbeitung gesperrt."

Wenn ich eine zeitlang warte, wird die Sperre aufgehoben und ich kann das Dokument wieder bearbeiten. Aber das ist natürlich nicht praktikabel. Ich gehe davon aus, dass es irgendwas mit dem VB-Makro zu tun hat, bin mir aber nicht sicher, da ich von VB so gut wie keine Ahnung habe. Hier mal des knappe Skript:

Sub FileSave()
FileSaveAs
Exit Sub

End Sub
Sub FileSaveAs()

    Dim DocName As String
    DocName = "URLAUBSANTRAG_" + Application.UserName + Format(Now, "yyyy-mm-dd hhmmss")

    With Dialogs(wdDialogFileSaveAs)
        .Name = DocName
        .Show
    End With
    Exit Sub
End Sub

Falls jmd Erfahrung mit Makros in Office-Dokumenten in Verbindung mit SharePoint hat und mir bei meinem Problem helfen könnte, wäre das echt super!

Alle Antworten

Ohne Rang
8 Beiträge
Meckermac Als Antwort am 21 Feb. 2013 13:03
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo Forum,

schade das es hier keine Antwort gab. Vor einem ähnlichen Problem stehe ich im Moment nämlich auch:

Bei mir wird ein Infopath Formular zur Datenerfassung genutzt. Nachdem der Benutzer das Formular an unseren Sharepoint (2010 Foundation) gesendet hat, wird ein Workflow gestartet. 

Dieser Workflow macht nicht viel anderes als nur die Berechtigung für "alle User" zu entziehen.

Das Ganze funktioniert genau einmal. Danach kommt es zu genau dem Verhalten. 

Weiß jemand Rat? 

Gruß

Marc

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 21 Feb. 2013 14:10
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hat das irgendwie mit dem obigen Problem zu tun? Ich sehe den Zusammenhang nämlich nicht.

[quote user="Meckermac"]Dieser Workflow macht nicht viel anderes als nur die Berechtigung für "alle User" zu entziehen[/quote]

Hat dann noch irgendjemand Zugriff darauf? ist das Dokument danach ausgecheckt? Ist auf der bibliothek die Inhaltsgenehmigung aktiv?

[quote user="Meckermac"]Das Ganze funktioniert genau einmal. Danach kommt es zu genau dem Verhalten[/quote]

Heißt das, daß der Workflow mehrmals die Berechtigungen ändert?

Ganz allgemein: es kann zu Problemen kommen, wenn mehrere Prozesse quasi gleichzeitig an demselben Element etwas ändern, also z.B. ein Workflow und ein Benutzer. Bei InfoPath kann das der Hintergrundprozeß sein, der aus dem Formular veröffentliche Felder mit den Spalten der Bibliothek abgleicht. Oft hilft es dann im Workflow eine Pause einzubauen (Für eine Minute anhalten), um dem anderen Prozeß genügend Zeit zu geben.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
8 Beiträge
Meckermac Als Antwort am 21 Feb. 2013 15:03
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Stimmt, vielleicht sollte ich es etwas näher erklären.

Das Formular erfasst Eingaben des aktuellen Benutzers. Die Inhalte werden in eine Bibliothek geschrieben auf die zunächst die Gruppe "alle User" die Berechtigung "entwerfen" hat. Ausser dieser Berechtigung gibt es noch weitere für die Geschäftsleitung und die Administratoren. Nachdem die Daten in der Bibliothek abgelegt sind, entzieht der Workflow diesem Element die Berechtigung für "alle User" (Gruppe), übrig bleiben nur die Geschäftsleitung und die Admins.

Fülle ich nun ein Formular aus und sende es an die Bibliothek startet der WF bleibt dann aber stehen mit der Meldung:

"Die Datei ist derzeit von einem anderen Benutzer ausgecheckt oder zur Bearbeitung gesperrt."

es dauert nun eine gewisse Zeit (ca 5min.) und der WF läuft weiter. (die gleichen Auswirkungen wie oben). Ich tippe mal, dass das Problem von Nachtschelm nicht mit dem VB-Script zusammenhängt?!

Komisch finde ich, dass wenn ich den WF neu veröffentliche, er bei ersten Durchlauf reibungslos funktioniert. Erst beim zweiten Formular kommt es zu dieser mehrminütigen Wartezeit.

Vielen Dank für eure Hilfe!

Achso, Ausgecheckt ist es nicht und Inhaltsgenehmigung ist auch nicht aktiv, wie gesagt, der erste Durchlauf ist ok.

Das mit der Pause hatte ich schon probiert, auch auf Inhalt in eine Spalte warten half nicht.

Marc

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 21 Feb. 2013 16:05
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

[quote user="Meckermac"]"Die Datei ist derzeit von einem anderen Benutzer ausgecheckt oder zur Bearbeitung gesperrt[/quote]

Das ist eine Standardmeldung des Workflows, der in diesem Fall selbst erkannt hat, daß etwas warten notwendig ist. Das ist kein Fehler und der Workflow arbeitet dann auch korrekt weiter. Es läßt sich auch nicht unterdrücken. Also einfach ignorieren.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
8 Beiträge
Meckermac Als Antwort am 21 Feb. 2013 16:20
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hmm, das ist nicht so günstig.

Solange der WF steht, ist dieses Element für alle anderen Benutzer (Gruppe "alle User") einsehbar. Das ist nicht gewünscht da dort auch personenbezogene Daten abgelegt werden.

Ich verstehe nur nicht warum der WF den ersten Durchlauf einwandfrei durchführt.

In anderen Bibliotheken nutze ich eine ähnliche Technik. Hier lasse z.B. ich einen WF nachsehen ob die Spalte "offentich" ein "Nein" enthält und setzte die Berechtigungen auf dieses Dokument neu. Das funktioniert.

Gäbe es denn eine andere Möglichkeit mit der ich es schaffe dieses InfoPath Formular auszulesen und den Ersteller sofort auszusperren? Es soll nach dem Schema "abgeschickt ist abgeschickt" funktionieren. Eine neue Berechtigungsstufe zu schaffen, funktioniert auch nicht, ich kann "erstellen" und "lesen" nicht von einander trennen. (Zentraladministration)

 

 

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 21 Feb. 2013 16:48
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Das ganze System mit den Workflows verhält sich eben immer wieder unterschiedlich. Es gibt viele Faktoren, die darauf Einfluß haben, allen voran die aktuelle Serverauslastung.

InfoPath-Formulare werden nach dem Speichern noch von Code bearbeitet, z.B. um Daten zu extrahieren und als SharePoint-Spalten anzuzeigen. Der Workflow greift ebenfalls auf dieses Element zu und möchte es verändern und da kann es eben zu Kollisionen kommen. Wie gesagt: kann, nicht muß.

Und Workflows laufen mit sehr niedriger Priorität im Hintergrund. Solange der Server noch "etwas Besseres" zu tun hat, kann es da schon mal eine ganze Weile dauern, bis der Workflow dran ist.

Man könnte das Ganze durch einen zu programmierenden EventReceiver verbessern. Dann muß man sich aber selbst darum kümmern, daß zumindest gewartet wird, bis SharePoint mit seinen Änderungen fertig ist. Dann kann man allerdings sofort loslegen.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
8 Beiträge
Meckermac Als Antwort am 25 Feb. 2013 12:50
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

So, ich denke das Problem ist gelöst.

Ich habe die Inhaltsgenehmigung eingeschaltet und den Usern der Gruppe "alle User" das Recht entzogen ungenehmigte Inhalte zu sehen. Wenn der Workflow läuft setzt er erst die Berechtigungen neu und anschliessend den Status auf "genehmigt". Er läuft immernoch lange, aber in der Zwischenzeit kann niemand der nicht Genehigungsberechtigt ist, das Dokument lesen.

 

Danke an Andi für die Erklärung.

 

Gruß

meckermac