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.




Automatische Generierung fortlaufender Nummer in Abhängigkeit anderer Spalten

Unbeantwortet Dieser Beitrag hat 42 Antworten

Ohne Rang
43 Beiträge
Christoph Moosbrugger erstellt 9 Mai 2017 08:56
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo,

Ich habe eine Liste und mehrere Spalten, welche als Kategorisierung verwendet werden. In Abhängigkeit dieser Kategorisierung soll jede Zeile eine fortlaufende Nummer beginnend bei 1 (Format 0001) erhalten.

Spalte 1 Spalte 2 Spalte 3
A DD 0001
A BB 0001
A DD 0002
A CC 0001
A DD 0003
etc

 

 

 

 

 

 

Es soll zusätzlich auch eine Checkbox geben, welche als Indikator gelten soll, ob die Spate 3 ausgefüllt werden soll oder nicht, denn nicht jedes Dokument soll eine fortlaufende Nummer erhalten. 

Ich denke das reicht für den Anfang :)

Vielen Dank schon einmal für Rückmeldungen.

Alle Antworten

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 9 Mai 2017 09:19
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Man könnte es mit einem Workflow versuchen, der für jedes neue Element automatisch startet. Der Workflow holt sich über die REST-API die jeweils höchste Nummer, addiert eins und schreibt das dann ins eben neu angelegte Element.

Das wird funktionieren, aber nicht bei hoher Last, also nicht wenn viele Elemente gleichzeitig angelegt und geändert werden. Das liegt einfach an der asynchronen Natur von Workflows.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
43 Beiträge
Christoph Moosbrugger Als Antwort am 9 Mai 2017 09:29
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo Andi,

das mit der Last sollte kein Problem sein, denn es wird nicht vorkommen, dass viele Elemente gleichzeitig angelegt werden. Wir sprechen da von maximal 10-20 über einen Tag verteilt.

Da ich mit WF noch nicht so 100% durch bin, wo finde ich gute Dokumentation (speziell zu REST-API etc.) dazu?

DANKE!

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 9 Mai 2017 09:55
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hier habe ich mal zusammengeschrieben wie das im Workflow funktioniert: https://andifandrich.wordpress.com/2013/08/06/sharepoint-2013-workflows-teil-1-call-http-web-service/

Und hier findest Du eine Einführung in die REST-API: https://msdn.microsoft.com/de-de/library/office/fp142380.aspx

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
43 Beiträge
Christoph Moosbrugger Als Antwort am 9 Mai 2017 10:22
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Vielen Dank Andi. Werd mir das gerne anschauen.

Ohne Rang
43 Beiträge
Christoph Moosbrugger Als Antwort am 20 Juni 2017 16:29
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo Andi,

habe jetzt endlich zeit gefunden mich deinem Beitrag zu widmen und habe das testszenario auch durch. Zu meiner Anfrage habe ich jetzt grundsätzlich folgendes Problem. Noch einmal kurz zu meiner Ursprungsanfrage.

Ich hätte gerne eine automatische Generierung von Nummern (Spalte 3). Diese soll basierend auf auf Spalte 2 immer eine neue Nummer generieren. Neu heißt in diesem Sinne, dass sollte ein Dokument gelöscht werden, diese Nummer nicht wieder verwendet werden kann. Das bringe ich leider im Moment nicht her, wenn ich immer nur schaue wie viele DOkumente (count) ich habe und dann +1 rechne.

Vielleicht kannst du mir hier wieder helfen.

DANKE!

Spalte 1 Spalte 2 Spalte 3
A DD 0001
A BB 0001
A DD 0002
A CC 0001
A DD 0003

etc


Ohne Rang
43 Beiträge
Share15 Als Antwort am 21 Juni 2017 09:37
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Moin!

 

Die SharePoint-interne ID zu verwenden wäre keine Lösung? SharePoint-IDs haben den Vorteil, dass sie auf keinen Fall doppelt auftreten und automatisch generiert werden. Sie können auch in Listenansichten als Spalte eingeblendet werden. Der Nachteil ist, dass Lücken entstehen können, wenn Dokumente/Listeneinträge gelöscht werden, weil sie nicht zweimal vergeben werden.

Ohne Rang
43 Beiträge
Christoph Moosbrugger Als Antwort am 21 Juni 2017 10:12
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hi,

das wäre eine option, ist aber nicht die Wunschlösung. Die komplette Dokumentennummer, welche schlussendlich generiert wird, folgt folgender Logik:

XXX-YYY-ZZZ-0001 =>

XXX ist fix für alle Dokumente.
YYY beim upload des dokument ist das das erste auswahlfeld.
ZZZ in Abghängigkeit von YYY soll hier eine weitere Auswahl getroffen werden.
0001 Es soll eine vierstellige fortlaufende Nummer generiert werden, welche in Abhängigkeit von ZZZ immer wieder mit 0001 startet. Also alle unterschiedlichen ZZZ starten mit 0001. Ich hoffe, dass ich diese Logik verständlich rübergebracht habe.

DANKE!

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 21 Juni 2017 10:26
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Um bei dem einfacheren Beispiel weiter oben zu bleiben, holst Du Dir die höchste Nummer in Spalte 3, bei der Spalte 2 dem Wert aus dem aktuellen Element entspricht. Du brauchst dazu ein Abfrage mit Filter auf Spalte 2, absteigend sortiert nach Spalte 3 und beschränkt auf ein einziges Element. Dadurch erhältst Du die letzte verwendete Nummer und kannst sie um eins erhöhen.

Probleme bekommst Du, wenn das Element mit der bisher höchsten Nummer gelöscht wird, weil die dann neu vergeben wird. Dieses Problem ist unlösbar (mit diesen Mitteln), aber meiner Meinung nach auch völlig egal.

Ein weiteres Problem bekommst Du, wenn mehrere Elemente gleichzeitig angelegt werden. Dann laufen auch mehrere Workflows mehr oder weniger gleichzeitig und würden dieselbe Nummer mehrfach vergeben.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
43 Beiträge
Christoph Moosbrugger Als Antwort am 25 Juni 2017 20:03
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo Andi,

wieder einmal Danke für deine Hilfe. Da ich mit den Workflows in SD noch nicht zu 100% durch bin, kannst du mir genauer erklären wie ich das mit den Abfragen anstellen muss?

DANKE!

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 26 Juni 2017 08:05
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hier eine Beschreibung, wie man per Workflow überhaupt Daten aus SharePoint abruft: https://andifandrich.wordpress.com/2013/08/06/sharepoint-2013-workflows-teil-1-call-http-web-service/

Und hier ein Einstieg in die REST API generell: https://msdn.microsoft.com/de-de/library/office/fp142380.aspx

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
43 Beiträge
Christoph Moosbrugger Als Antwort am 26 Juni 2017 08:19
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo Andi,

Danke, deine beiden Artikel (Teil 1 und Teil 2) habe ich soweit schon durch. Hatte gedacht, dass du mir eventuell detailliertere Hiflestellung direkt auf meine Fragestellung geben kannst.

Werde mir derweilen deine beiden Artikel noch einmal zu Gemüte führe und versuchen, die Daten zu bekommen.

Viele Grüße,
Christoph

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 26 Juni 2017 08:26
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Tut mir leid, aber genauer kann ich das aus der Ferne nicht sagen, weil ich Deine ganze Umgebung nicht kenne. Das würde vermutlich auch den Umfang eines Posts hier sprengen...

Du solltest grundsätzlich verstehen, wie die REST-Calls im Workflow funktionieren, z.B. aus meinen Artikeln. Und Du solltest grundsätzlich verstehen, wie die REST-API von SharePoint tickt, z.B. aus MSDN. Wenn man das einmal draufhat, kann man sehr schnell alle möglichen derartigen Sachen in seine Workflows einbauen.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
43 Beiträge
Christoph Moosbrugger Als Antwort am 26 Juni 2017 08:31
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

ok, habe ich mir schon gedacht, dass das den Rahmen sprengen würde. Würde mich aber trotzdem gern wieder hier melden, falls ich schwierigkeiten bei details habe.

DANKE!

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 26 Juni 2017 10:47
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

[quote user="Christoph Moosbrugger"]Würde mich aber trotzdem gern wieder hier melden, falls ich schwierigkeiten bei details habe.[/quote]

Auf jeden Fall!

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
43 Beiträge
Christoph Moosbrugger Als Antwort am 28 Juni 2017 11:18
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo Andi,

in deinem Blogeintrag Teil 1 setzt du den Filter auf die ID sprich ...$select=Id,Title,ParentId&$filter=Parent eq [%Aktuelles Element:ID%]...

den Zusatz Id brauchst du diesen nur weil du auch die Id filterst oder brauchst du diese immer? Auf mein Beispiel mit der Spalte 2 bezogen würde es doch so aussehen: ......$select=Id,Title,Spalte2&$filter=Spalte2 eq [%Aktuelles Element:Spalte2%]...

bin derzeit eben am versuchen, dass ich zumindest den Count dieser elemente hinbekomme und dann versuche ich im nächsten Schritt die Sortierung und dann die Bschränkung au 1 Element hinzubekommen, dass ich dann +1 rechnen kann.

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 28 Juni 2017 11:27
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Ja, Dein Abfragetext sieht gut aus. Du kannst das tatsächlich einfach im Browser testen.

Mit $select gibst Du an, welche Spalten Du geliefert haben möchtest. Die ID ist eigentlich immer sinnvoll, weil man nur damit ein Element eindeutig identifizieren kann. Alle Spalten, die als Filter verwendet werden, müssen auch bei $select angegeben werden.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
43 Beiträge
Christoph Moosbrugger Als Antwort am 28 Juni 2017 11:51
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

hmmm komisch...

Habe den Workflow jetzt so aufgebaut wie in deinem Beispiel (außer der Spalte 2 natürlich angepasst auf meine liste), bekomme aber immer ItemCount = 0 zurück gemeldet.

der rest vom workflow ist so wie in deinem beispiel.

 

 

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 28 Juni 2017 12:09
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Wie gesagt, teste die Abfrage im Browser bis sie funktioniert und baue das dann in den Workflow. Ich kann hier aus der Ferne nur im Nebel stochern...

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
43 Beiträge
Christoph Moosbrugger Als Antwort am 28 Juni 2017 14:00
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

ok, habe die Abfrage im Browser soweit hinbekommen und es kommen auch daten zurück. Scheinbar muss ich aber ein Problem mit dem Filter [%Aktuelles Element:Spalte2%] im SD haben, da hier keine daten mehr zurückgemeldet werden. Wenn ich den Filter auf einen wert setze also nicht auf Spalte2, dann werden werte zurückgemeldet und die Zählung der Elemente erfolgt wie gewollt.

Gibt es Beschränkungen auf den Spaltentyp, welcher als Filter angewendet werden kann?

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 28 Juni 2017 14:13
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Lasse Dir die zusammengesetzte Abfrage vom Workflow einfach in die Verlaufsliste schreiben. Du siehst dann, was genau als Abfrage verwendet wird.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
43 Beiträge
Christoph Moosbrugger Als Antwort am 29 Juni 2017 13:45
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

habe jetzt schon lange nach der Ursache gesucht aber komm einfach nicht drauf. Habe deine Testumgebung und meine Live Umgebung parallel am laufen mit 2 workflows. Der einzige Unterschied ist, dass ich auf Spalte2 den Verweis habe und nicht wie im Beispiel Parent bzw. ParentId.

Die History des Verlaufs meldet einen Fehler beim ResponseContent:

{"error":{"code":"-2146232832, Microsoft.SharePoint.SPException","message":{"lang":"en-US","value":"Column 'ORG' does not exist. It may have been deleted by another user."}}}

Der "Column 'ORG'" ist ein Wert, welcher in diesem speziellen Fall als Filter gelten sollte in Spalte2. Diesen Fehler verstehe ich nicht bzw. woher dieser resultiert.

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 29 Juni 2017 14:16
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Lasse Dir die zusammengebaute Abfrage VOR! der HttpRequest-Aktion in die History protokollieren. Das ist die einzige Möglichkeit herauszufinden, was da wirklich vor sich geht...

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
43 Beiträge
Christoph Moosbrugger Als Antwort am 29 Juni 2017 14:26
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Befehl "Set Variable: REST-URL to...." wie in einem vorigan kommentar geschrieben.

Log: https://.../_api/lists/getbytitle('MeineListe')/items?$select=Id,Title,Spalte2&$filter=Spalte2 eq OPS

anstelle des "OPS" steht im Workflow [%Aktuelles Element:Spalte2%]

nächster Schritt "then Build {...} Dictionary (Output to Variable:RequestHeaders)

Log: {"Accept":"application\/json;odata=verbose","Content-Type":"application\/json;odata=verbose"}

nächster Schritt "Call [%Varable: REST-URL%]......

Log wie im vorigen Bpost geschrieben.

 

Vielleicht hierzu noch ienmal zwei grundsatzfragen. Kann ich diesen Workflow auch anwenden, wenn ich nicht die Parent/Child Konfiguarion habe UND kann ich diesen Workflow auf jede beliebige Spalte (jeden beliebigen Typs/Inhalt) anwenden?

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 29 Juni 2017 16:08
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

[quote user="Christoph Moosbrugger"]Log: https://.../_api/lists/getbytitle('MeineListe')/items?$select=Id,Title,Spalte2&$filter=Spalte2 eq OPS

anstelle des "OPS" steht im Workflow [%Aktuelles Element:Spalte2%][/quote]

Wenn der Teil mit [%Aktuelles Element... korrekt ersetzt wurde, dann paßt das. Kommt das erwartete Ergebnis, wenn Du die URL aus dem Workflowverlauf in den Browser kopierst?

[quote user="Christoph Moosbrugger"]Kann ich diesen Workflow auch anwenden, wenn ich nicht die Parent/Child Konfiguarion habe UND kann ich diesen Workflow auf jede beliebige Spalte (jeden beliebigen Typs/Inhalt) anwenden?[/quote]

Das mit dem Parent/Child kommt häufig vor, ist aber nur ein willkürlich gewähltes Beispiel. Man kann per Workflow so ziemlich alles machen, was die REST-API hergibt. Also auch solche Sachen wie Listen oder ganze Websites anlegen. Es ist aber nicht immer ganz einfach, die korrekte Syntax zu finden und daher mein Hinweis auf Ausprobieren im Browser. Ich weiß auch nicht alles auswendig und mache es immer so...

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
43 Beiträge
Christoph Moosbrugger Als Antwort am 29 Juni 2017 16:15
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

ja, wenn ich den Link im Browser eingebe, kommt das richtige Ergebnis, sprich im Browser wurde der Teil zwischen [% ... %] mit meinem Wert "OPS" ersetzt.

Gerade deshalb verwundert mich der Fehler, dass er auf einmal ausspuckt, dass er die Spalte "OPS" nicht finden kann obwohl der Verweis ja auf Spalte2 geht und nicht auf deren Inhalt?

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 29 Juni 2017 16:18
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Dann wirst Du irgendwo einen Fehler im XPath haben. Beachte, daß XPath case-sensitive ist, d.h. es wird zwischen Groß- und Kleinschreibung unterschieden.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
43 Beiträge
Christoph Moosbrugger Als Antwort am 29 Juni 2017 16:32
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

:( oh mann.

und der filter den ich setze geht auf den spalteninhalt und nicht die spalte selbst, oder? das will nicht in meinen kopf gehen, dass er dann sagt, dass die spalte nicht existiert.

Die Zeile sagt doch folgendes ... zeige mir aus der angebenen Liste die Attribute Id, Titel, Spalte2 aller Elemente aber Filter so, dass mir nur Elemente angezeigt werden bei der die Spalte2 einem bestimmten Wert (Aktuelles Element Spalte2) entspricht, richtig?

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 30 Juni 2017 08:27
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Ich habe Deine Aussage oben so v erstanden, daß zwar der HttpRequest funktioniert, aber es dann einen Fehler beim Zugriff auf die gelieferten Daten gibt. Kann mich natürlich auch täuschen...

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
43 Beiträge
Christoph Moosbrugger Als Antwort am 30 Juni 2017 08:33
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Morgen!

habe jetzt eine Nacht darüber geschlafen, den kompletten Workflow noch einmal neu geschrieben und zuerst einmal einfach gemacht. Zeige mir alle Items ohne filter und dann zähle wie viele es sind.

Klappt alles super. Habe dann auch noch gesagt, dass er mir auf die spalte Id nur den hächsten Wert angeben soll, klappt super.

Dann im nächsten Schritt wieder den Filter eingebaut und da kommt der haken wieder. warum auch immer gibt er aus, dass er die Spalte XXX nicht findet. Der Wert XXX ist in diesem fall der Inhalt des Elements.

&$filter=Spalte2 eq [%Aktuelles Element:Spalte2%] => so sieht der Filter im Workflow selbst aus.

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 30 Juni 2017 08:36
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Das hättest Du aber schon lange gemerkt, wenn Du wie vorgeschlagen die Abfrage einfach im Browser ausprobiert hättest...

Du mußt hier immer die internen Spaltennamen benutzen, die sich von den sichtbaren Namen unterscheiden können. Wenn Du in den Listeneinstellungen auf eine Spalte klickst, steht in der Adresszeile irgendwo Field=Title. Das ist der interne Name.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
43 Beiträge
Christoph Moosbrugger Als Antwort am 30 Juni 2017 08:44
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

[quote user="Andi Fandrich"]

Du mußt hier immer die internen Spaltennamen benutzen, die sich von den sichtbaren Namen unterscheiden können. Wenn Du in den Listeneinstellungen auf eine Spalte klickst, steht in der Adresszeile irgendwo Field=Title. Das ist der interne Name.

[/quote]

Stop. Das ist mir klar und das habe ich auch so gemacht. Der Wert XXX => OPS von einem vorigen Beitrag, das ist der Spalteninhalt für mein aktuelles Element und nicht der Spaltenname. Das ist genau das was mich verwundert, dass er als Spaltenname den Inhalt nimmt und sagt, dass er diesen nicht findet. Es ist mir logisch, dass er die Spalte mit dem Namen des Inhaltes nicht finden kann, da es diese ja auch nicht gibt.

 

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 30 Juni 2017 09:10
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Aaaaah, jetzt kommen wir der Sache näher :-)

Bei Textfeldern muß der Wert in Hochkommata gesetzt werden:

$filter=Spalte eq 'Wert'

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
43 Beiträge
Christoph Moosbrugger Als Antwort am 30 Juni 2017 09:19
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

aber ich möchte einen dynamischen Filter, je nachdem was in Spalte2 steht und keinen auf einen fixen wert.

Er soll die Spaltee aller gefundenen Elemente mit der Spalte2 des aktuellen Elementes vergleichen und dann nur die elemente ausspucken bei denen dies zutrifft. Deshalb doch Spalte 2 eq [%Aktuelles Element: Spalte2%] oder habe ich da was falsch verstanden?

Für die Browserabfrage habe ich das schon so hinbekommen mit den Hochkomma, dass ich zumindest die Abfrage prüfen kann ob werte ankommen.

hoffe, dass ich mich jetzt verständlicher ausgedrückt habe :) und danke für deine Geduld mit mir.

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 30 Juni 2017 10:08
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Und wo ist das Problem? Mach doch einfach um das [%...%] Hochkommas...

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
43 Beiträge
Christoph Moosbrugger Als Antwort am 30 Juni 2017 10:17
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Dann stellt sich bei mir aber die Frage, warum du das in deinem Testbeispiel mit der Parent und Child List nicht machen musst?

jetzt hat es geklappt,... hauptsache ich suche drei tage und es liegt nur an den s**** fehlenden hochkommata.

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 30 Juni 2017 10:31
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Ich habe das im Beispiel nicht gemacht, weil es da nicht um Text ging, sondern um Zahlen und da darf man keine Hochkomma setzen. Une bei anderen Feldtypen wie z.B. Datum ist es wieder anders.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
43 Beiträge
Christoph Moosbrugger Als Antwort am 30 Juni 2017 10:48
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

man lernt nie aus :). danke für den Hinweis.

dann weiter mit dem fragespiel. Ich habe jetzt miene Elemente gefiltert, gelistet und nach einer bestimmten spalte sortiert und nur noch ein Element angezeigt. Diese habe ich dann ja mit d/results in mein Dictionary "ResultItems" geschrieben.

Jetzt möchte ich nicht mehr zählen, sondern den Wert einer Spalte um 1 erhöhen.

1. Frage: Wie kann ich auf eine Spalte in einer Dictionary zugreifen und den bestimmten wert holen?

2. Frage: ich gehe davon aus, dass diese Spalte als Nummer deklariert werden muss, um damit auch rechnen zu können?

Danke :)

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 30 Juni 2017 11:34
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

1. Mit der Aktion "Get an item from a dictionary" wie im zweiten Teil meines Artikels beschrieben.

2. Workflows sind da einigermaßen unempfindlich, d.h. es kann auch eine Textspalte sein, aber sie darf nur eine Zahl enthalten.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
43 Beiträge
Christoph Moosbrugger Als Antwort am 3 Juli 2017 14:17
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

und täglich grüßt das Murmeltier. 

And, ich denke, dass ich wieder einmal deine Hilfe brauche. Den Abschnitt den du in deinem zweiten Teil beschreibst verstehe ich glaub ich noch nicht so ganz. DIe erste Zeile heißt ja

get d/results([%Variable: LoopCounter%])/ID ...

mit diesem Befehl greife ich auf das Dictionary zu, welches im vorigen Schritt erstellt wurde? Es wird ja auch gezählt wie viele Elemente sich in der Dictionary Variable befinden und dementsprechend oft wird die Schleife ausgeführt.

Meine Abfrage im ersten Teil, gibt nur mehr ein Listenelement aus (Da Filter top=1 angewendet). Von diesem Element hätte ich gerne den Wert aus Spalte X. Diesen Wert X würde ich gerne mit calculate Spalte X + 1 in eine Variable schreiben und im letzten Schritt die Spalte X des aktuellen Elementes (welches gerade erstellt wurde und auch welchem der WF läuft) mit dieser Variable füllen. Somit wäre folgendes:

Element 1: Spalte X = 100
Element 2: SPalte X = 101
usw.

 

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 3 Juli 2017 15:12
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Im Artikel beschreibe ich ja, wie man mehrere Elemente holt und die dann per Schleife der Reihe nach durchgeht. Dabei wird auf jeweils ein Element über die Variable LoopCountre zugegriffen. Die Variable wird bei jedem Schleifendurchlauf um eins erhöht. Den Teil kannst Du Dir ja sparen, wenn Du nur ein einziges Ergebnis hast.

Im Beispiel wird auf die ID zugegriffen, aber es kann auch jede andere Spalte sein. Oder Du verwendest diese ID um damit direkt auf das Element in der Liste zuzugreifen...

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
43 Beiträge
Christoph Moosbrugger Als Antwort am 5 Juli 2017 15:41
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo Andi,

möchte dir noch einmal meinen Dank aussprechen für deine Geduld mit meinem (vielleicht auch blöden) Fargen. Habe jetzt alles so hinbekommen, wie wir uns das vorgestellt haben auch wenn ich noch die eine oder andere Macke von Sharepoint bzw. Sharepoint Designer entdeckt habe.

Danke und Gruß,
Christoph

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 5 Juli 2017 15:47
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Freut mich und danke für die Rückmeldung. Ich verspreche Dir, daß Du rund um SharePoint Designer noch sehr viele weitere Macken kennenlernen wirst. Das Ding ist ein einziger großer Bug :-(

PS: es gibt keine blöden Fragen, nur blöde Antworten...

Viele Grüße
Andi
af @ evocom de
Blog