Scopo
Questa funzione ritorna l'ultimo valore salvato sul DB del campo. Può essere usata nel ciclo di validazione per sapere quanto valeva il campo prima dell'inizio delle modifiche fatte dall'utente.
Sintassi
string s = "" // Valore originale (salvato)
//
s := Pannello.Campo.OriginalValue()
//
s := Pannello.Campo.OriginalValue()
Argomenti
Questa funzione non ha argomenti.Valore di ritorno
Ritorna il valore del campo prima dell'inizio delle modifiche da parte dall'utente. Se la riga era nuova, verrà tornato NULL.
Esempio di codice
// *******************************************************
// Called when a field in a row has been changed by a user
// *******************************************************
event Prodotti.Prodotti.OnUpdatingRow(
int Column // Column that has been changed.
boolean FieldModified //
boolean FieldWasModified //
boolean RowWasModified //
boolean Inserting // This parameter is TRUE if the row is a new row
inout boolean Cancel //
)
{
// Validazione campo scorte...
if Column = Prodotti.Scorte.Me()
{
// Se ho cambiato la scorta del prodotto nell'ultima chiamata...
if Convert(Prodotti.Scorte.LastValue()) <> Prodotti.Scorte
{
// Lo voglio segnalare all'utente
EsempiAM.MessageBox(FormatMessage(MSG Cambiato Prodotto, Prodotti.Scorte.LastValue(
), Prodotti.Scorte, Prodotti.Scorte.OriginalValue(), ??, ??))
}
}
//
// Se sto validando il campo Nome Prodotto....
if Column = Prodotti.NomeProdotto.Me()
...
//
// Se la scorta è nulla, la inizializzo a 10 unità
if IsNull(Prodotti.Scorte)
...
//
// Se la scorta è minore di 10 emetto un warning
if Prodotti.Scorte < C10
...
}
// Called when a field in a row has been changed by a user
// *******************************************************
event Prodotti.Prodotti.OnUpdatingRow(
int Column // Column that has been changed.
boolean FieldModified //
boolean FieldWasModified //
boolean RowWasModified //
boolean Inserting // This parameter is TRUE if the row is a new row
inout boolean Cancel //
)
{
// Validazione campo scorte...
if Column = Prodotti.Scorte.Me()
{
// Se ho cambiato la scorta del prodotto nell'ultima chiamata...
if Convert(Prodotti.Scorte.LastValue()) <> Prodotti.Scorte
{
// Lo voglio segnalare all'utente
EsempiAM.MessageBox(FormatMessage(MSG Cambiato Prodotto, Prodotti.Scorte.LastValue(
), Prodotti.Scorte, Prodotti.Scorte.OriginalValue(), ??, ??))
}
}
//
// Se sto validando il campo Nome Prodotto....
if Column = Prodotti.NomeProdotto.Me()
...
//
// Se la scorta è nulla, la inizializzo a 10 unità
if IsNull(Prodotti.Scorte)
...
//
// Se la scorta è minore di 10 emetto un warning
if Prodotti.Scorte < C10
...
}
- Il valore di ritorno della funzione è di tipo Stringa. Tuttavia il valore del campo viene ritornato nel tipo corrispondente al campo quindi è possibile usare la funzione Convert per adattare il tipo ritornato alla variabile da assegnare.
- Per sapere il valore precedente alla modifica attuale usare la funzione LastValue.
Ultima modifica: 25/10/2016 / Validità: da 6.5.2680
funzione