English
Instant Developer Foundation Documentazione
  • Estensibilità
  • Libreria
  • INDE Extension
  • Transazioni

Add Transaction Message

procedura copia link

Scopo

Aggiunge un messaggio alla transazione; il messaggio sarà visibile nella finestra dei messaggi di IN.DE.


Esempio di videata dei messaggi di una transazione

Sintassi

INDEExtension INDE = null // Oggetto INDE
// 
INDE.AddTransactionMessage(id transazione, id oggetto, tipo messaggio, testo messaggio)

Argomenti

ID Transazione Puntatore alla transazione a cui aggiungere un messaggio
ID Oggetto Puntatore all'oggetto a cui si riferisce il messaggio
Tipo Tipo di messaggio (vedi la lista valori Tipi Messaggio)
Testo Testo del messaggio

Note

  • Aggiungere messaggi alle transazioni è molto utile per segnalare all'utente gli errori che si sono verificati o per aggiungere informazioni o avvertimenti di cui l'utente dovrebbe prendere visione.

Esempio di codice

// ******************************************
// Rinomina le tabelle e i campi dei database
// ******************************************

public void Parole.Rinomina()
{
  INDEExtension INDE = null   // Oggetto INDE
  INDETreeWalker twDB = new() // TreeWalker per scorrere i database
  int DocID = 0               // Identificativo del documento
  // 
  // Svuoto la tabella IMDB

  delete from Parole
  // 
  // Carico in memoria le parole

  insert into Parole select
    set Parola := Parola
    set Acronimo := Acronimo
  from
    Parole // Tabella Master
  // 
  // Mi connetto ad INDE

  INDE.Connect()
  // 
  // Recupero l'identificativo del documento attivo

  DocID := INDE.GetActiveDocument()
  if DocID > ZERO
  {
    int PrjID = 0 // Identificativo del progetto
    int TrID = 0  // Identificativo della transazione
    // 
    // Recupero l'identificativo del progetto

    PrjID := INDE.GetRootObject(DocID)
    // 
    // Apro una tranzasione

    TrID := INDE.BeginTransaction(DocID)
    // 
    try
    {
      // Inizializzo il TreeWalker per scorrere i database del progetto
      twDB.SetRoot(PrjID, Database, ??, ??, ??)
      while True = True
         ...
      // 
      // Rendo permanenti le modifiche

      INDE.CommitTransaction(TrID)
      // 
      // Valido il documento

      INDE.Validate(INDE.GetActiveDocument())
    }
    catch  // Si è verificato un errore
    {
      // Annullo le modifiche
      INDE.AddTransactionMessage(TrID, PrjID, Errore, MSG Impossibile 2)
      INDE.RoolbackTransaction(TrID)
    }
  }
}

In questo esempio viene aggiunto un messaggio di errore in caso di eccezione durante la rinominazione degli oggetti di database.

Ultima modifica: 23/03/2021 / Validità: da 7.1.3300

Vedi anche

  • Set Transaction Name (procedura)

Hai trovato utile l'articolo?

Grazie per il feedback!

Ti serve altro aiuto?

Consulta il Forum