Auf der itemupdating änderung von service
-
10-12-2019 - |
Frage
Ich habe ein Problem mit dieser Veranstaltung. Was mein Ziel ist: Ich möchte eine der Eigenschaften auf der Grundlage von wenigen Kriterien aktualisieren, sodass ich ein Feld füllen, wenn ein Feld A leer ist und das Feld B nicht leer ist und Feld C auch nicht leer ist.
Wie man es ordnungsgemäß ausmut, weil mit der Artikulation einiger Afterproperties manchmal null ist, oder sie existieren überhaupt nicht usw. usw.
Jeder gute Rat?
Um Sie nur wissen zu lassen, ist es ungefähr
update : Das Problem ist, dass ich mit dem vorherigen Wert und den neuen Wert vergleichen muss, wenn jemand einen Artikel aktualisiert.
ex: Aktuelles Element: title= value1; title2= value1
Jemand-Updates entsprechend: TITEL= NEWVALUE
Aktualisierter Artikel sollte folgender sein: title= newValue; TITEL2= NEWVALUE
Nächstes Mal folgendes Update: title2= nochmalswewValue;
Aktualisierter Artikel sollte als Follwoing sein: TITEL= WIEDERLANDEWVALUE; TITEL2= WIEDERLANDEWVALUE;
Im Grunde sollten beide Felder synchronisiert werden, die nNO-Angelegenheit ist, welche wird man aktualisiert, sodass ich nicht wissen kann, welcher der Felder aktualisiert wurde, und dann sollte ich aktualisieren.
Sie sehen
Lösung 3
Basically at the end I solved my issue myself.
Just by checking the listItem.AfterProperties["column"] and comparing them with ListItem["column"] and then setting the again to ListItem.AfterProperties["column"]= value;
Andere Tipps
Just one question: Is there a reason for not using ItemUpdated where all your field would have been updated with the fresh information?
In ItemAdding you must check both BeforeProperties and AfterProperties to be successful in this task.
In ItemAdded:
title2 = title
In ItemUpdated workflow:
//Only when there is a change in title/title2 columns if(title != title2) { //Meaning title has changed if(title.beforeProperties.Value == title2) { title2 = title } //Meaning title2 has changed else if(title2.beforeProperties.Value == title) { title = title2 } }