Su ItemUpdating Modifica proprietà
-
10-12-2019 - |
Domanda
Ho un problema, con questo evento. Qual è il mio scopo: Voglio aggiornare una delle proprietà in base a pochi criteri, quindi voglio riempire un campo A se campo A è vuoto e il campo B non è vuoto e il campo c è anche vuoto.
Come farlo correttamente perché con la voce ItemUpdating Alcune dopoPropertoperie sono a volte null o non esistono affatto ecc.
Qualche buon consiglio?
Solo per farti sapere è di SharePoint 2007
Aggiornamento : Il problema è che devo confrontare se il valore precedente e il nuovo valore: quindi se qualcuno aggiorna un elemento.
ex: Articolo corrente: Titolo= valore1; Titolo2= Value1
Qualcuno si aggiorna di conseguenza: Titolo= newvalue
L'elemento aggiornato dovrebbe avere il valore successivo: titolo= newvalue; Titolo2= newvalue
Avanti Aggiornamento Aggiornamento: TITLE2= AncoraAWVALUE;
L'elemento aggiornato dovrebbe essere come follwoing: Titolo= AncoraAnewValue; TITLE2= AncoraAWVALUE;
Così fondamentalmente entrambi i campi dovrebbero rimanere sincronizzati NNO materia quale viene aggiornato, quindi non posso sapere quale dei campi è stato aggiornato e quindi quale dovrei aggiornare ..
Vedi
Soluzione 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;
Altri suggerimenti
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 } }