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.




Metadaten per Workflow eintragen

Unbeantwortet Dieser Beitrag hat 8 Antworten

Ohne Rang
91 Beiträge
Myrcella erstellt 13 Okt. 2014 14:55
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo Community,

ich soll eine Dokumentenbibliothek im SP 2013 umsetzen. Dafür sollen für jedes der einigen hundert Dokumente Metadaten vergeben werden. Diese ergeben sich aus einer Kennziffer, die sich aus verschiedenen Komponenten zusammensetzt.

Da aber nicht jeder Mitarbeiter weiß, wofür welcher Teil der Kennziffer steht bzw. damit die Metadaten nicht jedes Mal per Hand eingetragen werden müssen, habe ich versucht, einen Workflow zu erstellen, der die Bestandteile der Kennziffer untersucht und dann die Metadaten entsprechend einträgt.

Ich habe schon einige Zeit darauf verwendet, jeweils den kompletten Term von jedem Metadatum herauszusuchen. Über eine Bedingung habe ich bereits versucht, für einen Bestandteil der Kennziffer die Metadaten per Workflow auszufüllen (über "Element aktualisieren"), aber obwohl ich den vollständigen Term angebe, wird der Workflow angehalten, sobald er ein Metadatum eintragen soll.

Kann mir jemand weiterhelfen?

Viele Grüße,

Myrcella

Alle Antworten

Ohne Rang
204 Beiträge
Nico Thiemer Als Antwort am 14 Okt. 2014 08:13
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo!

 

Was heißt angehalten? Gibt es einen Fehler oder was passiert?

 

Viele Grüße

 

Nico Thiemer

--

SharePoint Enthusiast seit 2001

Twitter: https://twitter.com/NicoThiemer
Blog: http://nicothiemer.wordpress.com
XING: https://www.xing.com/profile/Nico_Thiemer

Ohne Rang
611 Beiträge
Florian Adler Als Antwort am 14 Okt. 2014 08:37
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Setze am besten nach jedem Schritt einen individuellen Kommentar, um zu sehen, wo genau der Workflow stecken bleibt. Hilfreich ist vielleicht der ULS Log. Ist der Metadatenservice sauber gestartet und verfügbar? Hat der User/Workflow darauf Zugriff?

Ich bin wieder (sporadisch) hier!

Ohne Rang
91 Beiträge
Myrcella Als Antwort am 14 Okt. 2014 08:51
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Ich setze schon nach so ziemlich jeder wichtigen Aktion einen Kommentar. Das Extrahieren der einzelnen Bestandteile der Kennziffer funktioniert sauber. Aber wenn der WF das entsprechende Metadatum eintragen soll (in der Form ID;#Term|GUID), bleibt er stecken und gibt folgende Fehlermeldung:

An unhandled exception occurred during the execution of the workflow instance. Exception details: System.ArgumentNullException: Der Wert darf nicht NULL sein. Parametername: Input bei Microsoft.Activities.Expressions.IndexOfString.Execute(CodeActivityContext context) bei System.Activities.CodeActivity`1.InternalExecute(ActivityInstance instance, ActivityExecutor executor, BookmarkManager bookmarkManager) bei System.Activities.Runtime.ActivityExecutor.ExecuteActivityWorkItem.ExecuteBody(ActivityExecutor executor, BookmarkManager bookmarkManager, Location resultLocation)

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 14 Okt. 2014 09:05
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

[quote user="Myrcella"]ID;#Term|GUID)[/quote]

Hast Du mal versucht als ID einfach -1 anzugeben? Ich meine mich zu erinnern, daß es damit geht.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
91 Beiträge
Myrcella Als Antwort am 14 Okt. 2014 09:16
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Ja, hab ich versucht, ging aber auch nicht. Eigentlich soll das Teil eines größeren Workflows werden, habe aber diese Funktionalität in einen winzigen Testworkflow gepackt und der läuft einfach nicht. Ich habe ihn folgendermaßen aufgebaut (gekürzt):

1 Zeichen ab dem Anfang von Aktuelles Element: Kennziffer kopieren (Ausgabe in Variable: Bestandteil 1)
Wenn Variable: Bestandteil 1 ist gleich Y
MMD-Spalte 1 auf 94;#Sonstiges [miscellaneous]|40b6bfdd-3831-4e34-9692-b31dad8afaf0 festlegen
Gehe zu Ende des Workflows.

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 14 Okt. 2014 10:11
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Das hört sich nach einem 2013er Workflow an. Versuche es doch interessehalber mal mit einem 2010er.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
91 Beiträge
Myrcella Als Antwort am 14 Okt. 2014 10:21
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

"Der Workflow konnte auf Grund eines internen Fehlers nicht gestartet werden.

Ohne Rang
91 Beiträge
Myrcella Als Antwort am 20 Okt. 2014 09:25
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Nachdem ich jetzt einige hundert Forumseinträge bei technet zum Thema Metadaten überflogen habe, bin ich einer Lösung meines Problems immer noch nicht näher.

Verschiedene Quellen sagen, dass es mit 2010-Workflows möglich war, Metadaten einzutragen. Ich habe also verschiedene Workflows gebastelt, aber bei jedem tritt beim Start ein "interner Fehler" auf. Dann habe ich gelesen, dass es mit 2010-WFs nur ging, sofern das zu befüllende Metadatenfeld leer ist. Also habe ich es bei leeren Feldern versucht, nach wie vor wurde ein interner Fehler gemeldet.

Mehrfach wurde ein Blogeintrag referenziert [http://patrickboom.wordpress.com/2013/07/23/workflow-activity-set-managed-metadata-column/], den ich aber irgendwie nicht ganz durchschaue, da mir Erfahrung mit Visual Studio und wesentliche Programmierkenntnisse fehlen.

Ich fürchte, mein eigentliches Problem habe ich schon längst geahnt: um Metadatenfelder auszufüllen, muss man nicht MMD-Spalte, sondern MMD-Spalte_0 benutzen. Diese Spalte steht aber weder in der "aktuelles Feld festlegen" noch in der "Listenelement aktualisieren"-Aktion zur Auswahl. Ich nehme daher an, dass es nicht möglich ist, Metadatenfelder per Workflow zu befüllen.