English
Instant Developer Foundation Documentazione
  • Reference Librerie
  • Pannelli
  • Libreria Pannello
  • Comandi

Undo Changes

procedura copia link

Scopo

Annulla le modifiche ai dati effettuate dall'utente se il pannello è in stato MODIFIED oppure cancella i criteri di ricerca se esso è in stato QBE. E' l'equivalente del tasto F6-Annulla della toolbar del pannello.

Sintassi

// Annulla le modifiche
Pannello.UndoChanges()

Argomenti

Questa procedura non ha argomenti.

Esempio di codice

// **************************************************
// Cerca un testo nel nome del prodotto usando il QBE
// **************************************************

public void Prodotti2.BottoneCercaNome()
{
  string n = "" // Il testo da cercare
  // 
  // Chiedo all'utente che cosa vuole cercare

  n := InputBox(MSG Inserisci Parte)
  // 
  // Valore non ancora preso oppure non dato

  if n = Empty String
  {
    return
  }
  // 
  // Annulla le eventuali modifiche del pannello

  Prodotti.UndoChanges()
  // 
  // Entra nello stato QBE

  Prodotti.EnterQBEMode()
  // 
  // Annulla gli eventuali criteri di ricerca precedenti

  Prodotti.UndoChanges()
  // 
  // Imposta il criterio NomeProdotto Like %...%

  Prodotti.NomeProdotto.QBEFilter := Asterisco +c n +c Asterisco
  // 
  // Cerca i dati

  Prodotti.FindData()
}
  • Se il pannello è in stato QBE il comando cancella i criteri di ricerca eventualmente presenti nei campi della master query (vedi proprietà QBEFilter).
  • Se il pannello è in stato MODIFIED, qusto comando porta il pannello in stato DATA annullando le modifiche ai dati e causando la notifica di diversi eventi, fra i quali OnCommand, OnChangeStatus e OnChangeRow. Si consiglia si leggere i messaggi di debug dove è visibile l'elenco e la sequenza degli eventi notificati.
  • Anche se il pannello è in stato DATA, questo comando ha degli effetti di nota: il suo funzionamento consiste nel ricopiare i dati presenti nel "buffer video" (in cui il pannello memorizza i dati delle righe visibili) con quelli contenuti nel set di dati posseduto dal pannello stesso.
    Questo può essere utile se, ad esempio, in una procedura Visual Code si utilizza un ciclo FOR-EACH sul recordset del pannello e si modificano i dati in esso contenuti. Dopo il ciclo è necessario usare il comando UndoChanges per far sì che i nuovi dati appaiano a video (consulta il video tutorial Mastro On Formatting).
  • Questo comando ha un meccanismo di funzionamento diverso dal comando UpdatePanel che invece aggiorna sia i dati sulla riga selezionata che eventualmente le query del pannello in base alle variazioni dell'intero database IMDB.

Ultima modifica: 31/10/2022 / Validità: da 6.5.2680

Vedi Anche

  • Panel Status (lista valori)
  • On Change Row (evento)
  • On Change Status (evento)
  • Update Panel (procedura)
  • On Command (evento)
  • QBE Filter (proprietà)

Hai trovato utile l'articolo?

Grazie per il feedback!

Ti serve altro aiuto?

Consulta il Forum