Direkt zum Hauptbereich

Benutzer einer SharePoint-Gruppe auslesen (Data One Power Activity for Nintex Workflow)

Ich habe dieser Tage ein kleines Problem mit der Nintex-Aktivität << Data Request >> gehabt. Derzeit ist es leider nur möglich dieser Aktivität einen Benutzer zuzuweisen. Was nun aber tun, wenn mehrere Benutzer diese Dateneingabe vornehmen sollen. Man kann das Ganze umgehen, indem man eine neue SharePoint-Gruppe anlegt und die Benutzer in dieser Gruppe einpflegt.
Hier bin ich dann jedoch auf das nächste Problem gestoßen. Die SharePoint-Gruppe wird nicht aufgelöst, so dass die Aufgabe nicht in den Nintex-Webpart << Meine Workflowaufgaben >> angezeigt wird. Ich habe mir nun Gedanken über eine mögliche Lösung gemacht und bin zu folgendem Ergebnis gekommen.

Schritt 1: SharePoint Webservice
Auslesen der SharePoint-Gruppe mit dem SharePoint Webservice (http://sharepoint/_vti_bin/UserGroup.asmx) und der Methode << GetUserCollectionFromGroup >>. Als Ergebnis bekommen wir folgendes XML-Konstrukt (aus Darstellungsgründen habe ich es auf den LoginName beschränkt):


<GetUserCollectionFromGroup xmlns="http://schemas.microsoft.com/sharepoint/soap/directory/">
   <Users>
        <User  LoginName="Domäne\ps_test"  />
        <User  LoginName="Domäne\tk_bpmhelp" />
        <User  LoginName="Domäne\tk_discmanager"  />
   </Users>
</GetUserCollectionFromGroup>

Schritt 2: Auslesen mit PowerShell
Für die weitere Vorgehensweise werden die einzelnen Benutzer (in diesem Fall der LoginName) benötigt. Das Auslesen der Benutzer habe ich mit der Powershell realisiert. Die meisten werden nun fragen, wie kann ich Nintex Workflow in Verbindung mit der PowerShell nutzen? Ganz einfach, man benutzt die  << Data One PowerActivity for Nintex Workflow >>. Das folgende Script liest die einzelnen Benutzer aus und speichert Sie in einer ArrayList. Das Ergebnis wird dann einer Nintex-Collection-Variablen übergeben und man hat nun die Möglichkeit auf die einzelnen Benutzer dieser SharePoint-Gruppe zuzugreifen.


# path to the xml-file
$InputXML = 'C:\Users\ps\Desktop\UserGroup.xml' 
# get the content from the xml-file
$xml = [xml](Get-Content -Path $InputXML)
# create a variable of type System.Collections.ArrayList
$users = new-object 'System.Collections.ArrayList'
# iterate through the xml-file and get all users of the SharePoint-Group
$xml.GetUserCollectionFromGroup.users.user | foreach { 
$users.Add($_.Loginname)
}


Schritt 3: Zuweisen << Data Request >> an die Benutzer
Damit die Benutzer nun Ihre Aufgaben auch im Webpart << Meine Workflowaufgaben >> sehen können, muss jedem Benutzer ein << Data Request >> zugewiesen werden. In der Collection-Variable, die zuvor in der << Data One PowerActivity >> gefüllt wurde, sind alle Benutzer der SharePoint-Gruppe enthalten. Für jeden Eintrag wird ein << Data Request >> gestellt. Nun müssen wir noch die Abarbeitung der restlichen Aufgaben realisieren, wenn jemand seine Eingabe getätigt hat. Die << Data Request >> Aktivität hat derzeit leider nicht die Möglichkeit, dass man in der Konfiguration angeben kann, dass die erste Antwort zählt (wie man es z.B. vom Flexi-Task gewöhnt ist). Man muss sich die Action-ID's der einzelnen Aufgaben speichern und kann hiermit dann die noch offenen Aufgaben abschließen.

Die Lösung ist zwar nur suboptimal, aber man kann damit arbeiten und diese Aktivität auch mit mehreren Usern nutzen. Ich hoffe, dass in einem der nächsten Releases dieses Feature implementiert sein wird.

Viele Grüße,
Patrick

Kommentare

Beliebte Posts aus diesem Blog

Neue Funktionalitäten in Microsoft Teams

Vorgestern hat Microsoft mal wieder super Features für MS Teams veröffentlicht. Teams wird somit mehr und mehr die zentrale App für das Daily Business. Ein weiteres Anzeichen, dass Teams das Tool der Zusammenarbeit und Produktivität der nächsten Zeit werden könnte. Ich habe mich direkt mal an den neuen Features versucht und ein bisschen gespielt :-)

Innerhalb von Teams kann man nun im Store nach verfügbaren Apps und diese im Handumdrehen einbinden. Hierbei sind

Der Zugriff auf die Apps wurde ebenfalls verbessert. So muss man nicht immer in die Registerkarten der jeweiligen Teams navigieren, sondern hat den Zugriff und auch die Funktionalität über das Menü stark verbessert und die Wege entsprechend verkürzt. Um z.B. nun all seine Aufgaben aus Planner zu sehen kann man nun direkt aus dem Menü in Teams darauf zugreifen. Keine Notwendigkeit mehr Aufgaben pro Team zu durchsuchen oder mittels Browser in die Planner-Anwendung zu springen. Dasselbe gilt für Flow, OneNote, Stream, usw. - al…

Nutzung der Mehrsprachigkeit in SharePoint 2013

Heute wollte ich mich mit dem Thema <Mehrsprachigkeit und SharePoint 2013> auseinandersetzen. Wie in SharePoint 2010 bietet Microsoft auch diverse Sprachpakete für SharePoint 2013 an. Zum heutigen Zeitpunkt stehen Sie leider noch nicht zum freien Download bereit. Wenn Ihr jedoch eine MSDN-Subscription besitzt, so könnt Ihr die verfügbaren Sprachpakete hier herunterladen. Die folgenden Sprachpakete stehen derzeit zum Download bereit.




















Nachdem ich mir die Pakete installiert und den Config-Wizard laufen gelassen habe (Es hat keine 10 Minuten gedauert, das sieht mir nach Optimierung aus) stehen die Pakete zur Verfügung und ich kann Sie auf den einzelnen Site-Collections aktivieren. Dazu gehe ich wie gewohnt in die <Site-Settings>








und wähle dort die <Language settings> aus und markiere die gewünschte Sprache.


























Das sind alles keine Änderungen gegenüber SharePoint 2010. Meine Seite öffnet sich nun wie erwartet in Deutsch. Nun möchte ich jedoch wieder in die englische Sprache …

Microsoft Teams und Kanäle

Kanäle (oder auch Channels) in Microsoft Teams sind dafür da, um innerhalb eines Teams die Zusammenarbeit und Kommunikation zu ermöglichen. Jedes erstellte Team startet mit dem Kanal Allgemein. Ein Kanal beinhaltet derzeit 3 Registerkarten bei Erstellung:
UnterhaltungenDateienWikiweitere Registerkarten können hinzugefügt werden. Zudem kann man jedem Kanal Konnektoren hinzufügen. Jeder Kanal erhält ebenfalls eine eigene Email-Adressse, die man entsprechend für den Zugriff konfigurieren kann. Die Namensgebung der Adresse ist derzeit noch etwas kryptisch, wird aber hoffentlich in der Zukunft lesbarer und nachvollziehbarer werden.
Wenn wir uns im Team über die unterschiedlichsten Themen oder auch Projekte unterhalten, macht es wenig Sinn dies ausschließlich im Kanal Allgemein zutun, denn so verlieren wir sehr schnell die Übersicht und eine effektive Kommunikation und Zusammenarbeit ist auch trotz der Nutzung von MS Teams nicht gegeben. Hier gibt es die Möglichkeit weitere Kanäle zu erstelle…