SharePoint-Listenabfrage

Dieser Konfliktlöser ermöglicht es Ihnen, eine SharePoint-Liste zu verwenden, um Workflowteilnehmern unter Verwendung von einer Vielzahl an Parametern und/oder eines logischen Ausdrucks Aufgaben zuzuweisen.

Dies kann nützlich in Szenarien sein, in denen das Weiterleiten davon abhängt, welche Werte von einem Benutzer in einem Formular ausgewählt werden. Sie können zum Beispiel ein Formular auf Grundlage der in einem oder mehreren Feldern ausgewählten Werte zur Genehmigung weiterleiten, wie Produktionsanlage und Lagerort, wenn ein Formular einen Anlagen- und Lager-Feldwert besitzt.

SharePoint-Listenabfrage-Parameter

Argument

Beschreibung

Erforderlich?

allow select

Ein Ja/Nein-Wert, der anzeigt, ob es dem Benutzer gestattet ist, den Workflowteilnehmer zu wählen, wenn die Abfrage nichts ausgibt. Auf „Ja“ festgelegt ermöglicht es dieser Wert dem Formularbenutzer, mit der Pool-Steuerung im Element Prozesssteuerung zu interagieren und mögliche Teilnehmer auszuwählen oder ihre Auswahl aufzuheben. Wenn auf „Nein“ festgelegt, wird die Pool-Steuerung nicht angezeigt und der Formularbenutzer kann die Teilnehmer nicht ändern.

 

column

Name der abzufragenden Spalte.

Ja

display

Ein Ja/Nein-Wert, der anzeigt, ob der ausgewählte Workflowteilnehmer angezeigt werden soll oder nicht.

Ja

list

Name der abzufragenden Liste.

Ja

poolcolumn

Name der abzufragenden Spalte.

 

poollist

Name der abzufragenden Liste.

 

poolquery

Die auszuführende Abfrage.

 

poolsite

SharePoint-Website mit der Liste, die Sie abfragen.

 

query

Die auszuführende Abfrage.

Ja

runat

Ein Start/Ende-Wert, der anzeigt, wann die Abfrage ausgeführt wird.

 

site

SharePoint-Website mit der Liste, die Sie abfragen.

Ja

Hinweis: Die Pool-Optionen (poolcolumn, poollist, poolquery, poolsite) ermöglichen es dem Benutzer, die Teilnehmer interaktiv aus den von der Abfrage ausgegebenen Ergebnissen auszuwählen. Der Teilnehmer-Konfliktlöser kann in Verbindung mit der Option „Pool-Abfrage erneut ausführen“ in der benutzerdefinierten Steuerung des Workflowteilnehmers ausgeführt werden, um es Ihnen zu ermöglichen, die Pool-Abfrage auszuführen, wenn sich der Wert in einem Formularfeld ändert.

Beispiel

poolsite= http://localhost/grant, poolcolumn=people, poolquery= [division]==@[/my:myFields/my:SPDiv], poollist=Divisions, allowselect=false

Erforderliche Argumente

Zurück zum Anfang

Die unten aufgeführten Parameter sind mindestens für den Konfliktlöser „SharePoint-Listenabfrage“ erforderlich.

Site

Geben Sie die URL zur SharePoint-Website mit der Liste der genehmigenden Personen ein.

Beispiel: Wenn sich Ihre Seite unter „http://mysite/myforms/lists/approvers“ befindet, dann geben Sie „http://mysite/myforms“ ein.

Tipp: Sie können die URL auch aus Ihrem Browser kopieren, indem Sie zur Website gehen und alles ab dem letzten Schrägstrich – einschließlich des Schrägstrichs – löschen (normalerweise „/default.aspx oder /home.aspx“).

Display

„Display“ muss in Verbindung mit dem Element Prozesssteuerung verwendet werden. Wenn auf „Ja“ festgelegt, wird der zur Abfrage passende Teilnehmer in der Prozesssteuerung angezeigt.

List

Geben Sie den Namen der Liste ein, in der sich Ihre genehmigende Personen befinden.

Beispiel: Wenn Ihre Listen-URL „http://mysite/myforms/lists/approvers“ lautet, dann ist der Wert für die Liste approvers.

Column

Dieses Argument zeigt an, welche Spalte in Ihrer SharePoint-Liste die Benutzernamen für die genehmigenden Personen beinhaltet. Geben Sie den Spaltennamen ein, wie er in der Liste im Browser angezeigt wird.

Im unten stehenden Beispiel würde der Spaltenname die Spalte Benutzername der genehmigenden Person sein, da sich in Ihr die Benutzernamen befinden.

Query

Das Argument „Query“ ist ein Ausdruck, der genehmigende Personen herausfiltert, die Sie vergleichen möchten. Durch das Verwenden des Ausdruckgenerators können Sie Felder einfügen, Werte hochstufen und/oder logische Operatoren verwenden.

Wenn Sie zum Beispiel eine SharePoint-Liste mit den genehmigenden Personen für Lagerbereiche in Anlagen haben, kann diese folgendermaßen aussehen:

Anlage Anlagennamen LagerortGenehmigende PersonBenutzername der genehmigenden Person
3105ChicagoCH01Gerald Kaufnwh\gkauf
3105ChicagoCH02Adeline Bhattnwh\abhatt
3101Des MoinesDM03Dan Smithsonnwh\dsmithson

Abfragebeispiele

Zurück zum Anfang

Statische Abfrage

Sie können eine statische Abfrage erstellen (in der die Werte sich niemals ändern), die immer Des Moines ausgibt, indem Sie Folgendes eingeben:

[Anlagenname] == "Des Moines"

Die [ ]-Klammern umschließen den SharePoint-Zielspaltennamen. Dieses Aussage gibt dem Konfliktlöser die Anweisung, alle Übereinstimmungen zu finden und zuzuordnen, in denen der Anlagenname „Des Moines“ entspricht.

Was wäre, wenn Sie jemanden auf Grundlage mehrerer Werte zum Ziel machen wollen, wie Adeline oben? Sie könnten zum Beispiel diese Anweisung verwenden:

[Anlagenname] == "Chicago" && [Lagerort] == "CH02"

Das doppelte Und-Zeichen ist das logische UND, was bedeutet, dass beide Seiten des Ausdrucks übereinstimmen und wahr sein müssen.

Dynamische Abfrage

Abfragen können auch dynamische Werte aus dem Formular verwenden. Anstatt zum Beispiel aus einer langen Liste mit genehmigenden Personen auszuwählen, können Sie ein Formular haben, in dem Sie nur den Lagerort und die Produktionsanlage eingeben müssen.

Der Abfrageausdruck dafür würde folgendermaßen lauten:

([Anlagenname] == @[/my:myFields/my:plant]) && ([Lagerort] == @[/my:myFields/my:storage_location])

Diese Abfrage vergleicht die SharePoint-Spalte Anlagenname mit dem Wert des Felds „plant“ im Formular. Sie vergleicht ebenfalls die SharePoint-Spalte Lagerort mit dem Feld "storage_location“ im Formular. In diesem Beispiel können Sie ein Formular ausfüllen und die Anlage zu 3105 und den Lagerort zu CH01 festlegen. Anschließend wird das Formular automatisch zu Gerald Kauf weitergeleitet.

Wichtige Hinweise:

  • Verwenden Sie das @-Symbol vor dem XPath für Felder, wenn Sie Abfrageanweisungen erstellen, die einen Formularfeldwert benötigen. Das @-Symbol bedeutet, dass der Wert aufgelöst werden sollte, nachdem das Formular ausgeführt wurde, nicht davor.
  • Schließen Sie jede Anweisung in Klammern ein, wenn Sie mehrere Bedingungen in einer logischen Anweisung vergleichen müssen (wie in dem oben stehenden Beispiel). Dies teilt der Engine mit, die Bedingungen in Klammern zuerst zu evaluieren und die Anweisungsergebnisse mit dem Rest zu vergleichen.

Pool-Argumente

Zurück zum Anfang

Pool-Argumente ermöglichen es Ihnen, dem Formularbenutzer übereinstimmende Teilnehmer aus dem Konfliktlöser anzuzeigen, der dann aus einer Liste auswählen kann.

Durch das Verwenden dieser Argumente wird eine spezielle Steuerung im Element Prozesssteuerung erstellt, das mögliche Übereinstimmungen auf der linken und Aufgabenempfänger auf der rechten Seite anzeigt.

Für diese Argumente muss sich das Element „Prozesssteuerung“ im Formular befinden. Wenn Pool-Argumente verwendet werden, sollten die äquivalenten nicht-Pool-Argumente gelöscht sein.

POOLSITE, POOLLIST, POOLCOLUMN, POOLQUERY

Diese vier Argumente sind für die unter Erforderliche Argumente beschriebenen nicht-Pool-Argumente identisch. Verwenden Sie dieselbe Syntax und dieselben Werte.