Scopo
Questa funzione segnala che il contenuto del campo è errato e ne permette di indicare la causa. Deve essere usata principalmente nel ciclo di validazione del pannello, nell'evento di OnUpdatingRow.
Sintassi
Pannello.Campo.SetErrorText(messaggio di errore)
Argomenti
Messaggio di errore | E' una stringa che spiega perchè il contenuto del campo è errato. |
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 //
)
{
// Se sto validando il campo Nome Prodotto....
if Column = Prodotti.NomeProdotto.Me()
{
// Imposto il nome del prodotto al nome del fornitore per prova.
if Prodotti.NomeProdotto = AAA
{
Prodotti.NomeProdotto := Prodotti.NomeSocietaFornitori.GetValueAt(Prodotti.
ValidatingRow() + ONE)
}
//
// La lunghezza del nome del prodotto deve essere almeno 5 caratteri
if Length(Prodotti.NomeProdotto) < C5
{
// Segnalo un errore, non sarà possibile salvare i dati nel database
Prodotti.NomeProdotto.SetErrorText(MSG Nome Troppo Corto)
}
}
//
// Se la scorta è nulla, la inizializzo a 10 unità
if IsNull(Prodotti.Scorte)
{
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 //
)
{
// Se sto validando il campo Nome Prodotto....
if Column = Prodotti.NomeProdotto.Me()
{
// Imposto il nome del prodotto al nome del fornitore per prova.
if Prodotti.NomeProdotto = AAA
{
Prodotti.NomeProdotto := Prodotti.NomeSocietaFornitori.GetValueAt(Prodotti.
ValidatingRow() + ONE)
}
//
// La lunghezza del nome del prodotto deve essere almeno 5 caratteri
if Length(Prodotti.NomeProdotto) < C5
{
// Segnalo un errore, non sarà possibile salvare i dati nel database
Prodotti.NomeProdotto.SetErrorText(MSG Nome Troppo Corto)
}
}
//
// Se la scorta è nulla, la inizializzo a 10 unità
if IsNull(Prodotti.Scorte)
{
Prodotti.Scorte := C10
}
}
- Questa procedura è pensata per essere utilizzata all'interno del ciclo di validazione del pannello (evento OnUpdatingRow). Utilizzandola in altri contesti potrebbe non funzionare come ci si aspetta.
- L'errore verrà impostato sulla riga per cui è stato chiamato l'evento OnUpdatingRow, oppure sulla riga attiva se si usa questa procedura al di fuori del ciclo di validazione del pannello.
- Il modo con cui il messaggio di errore viene visualizzato dipende dai parametri di output dei messaggi di errore. Vedi anche SetErrorMode per maggiori informazioni.
- Non è necessario resettare il messaggio di errore impostato sul campo perchè esso viene annullato dal framework all'inizio del ciclo di validazione del pannello.
Ultima modifica: 25/10/2016 / Validità: da 6.5.2680