Imposta Annulla transazione su Errore

Controlla se le transazioni vengono immediatamente annullate quando si verifica un errore.

Opzioni 

  • Attivata annulla automaticamente le transazioni non appena si verificano determinati errori. Questo è il comportamento predefinito quando questa istruzione di script non viene utilizzata.

  • Disattivata consente alle istruzioni all'interno delle transazioni di continuare anche dopo che si sono verificati determinati errori.

Compatibilità 

Prodotto Supportata
FileMaker Pro
FileMaker Go
FileMaker WebDirect
FileMaker Server
FileMaker Cloud
FileMaker Data API
Pubblicazione Web personalizzata

Creata nella versione 

21.1.1

Descrizione 

Quando questa istruzione di script è impostata su Attivata, se un'istruzione di script all'interno di una transazione restituisce un errore perché non riesce a creare, aggiornare o eliminare i dati come previsto, la transazione viene automaticamente annullata, comportandosi allo stesso modo di quando l'istruzione di script istruzione di script Annulla transazione viene eseguita senza una condizione. Questi tipi di errori annullano automaticamente le transazioni:

  • Una modifica a un campo, impostato per eseguire sempre la verifica, non corrisponde alle opzioni di verifica del campo

  • Errori a livello dei privilegi come nessun accesso a campi, record e tabelle

Impostare questa istruzione di script su Disattivata per aggiungere una propria gestione degli errori all'interno delle transazioni. Ad esempio, dopo che si verifica un errore che altrimenti annullerebbe la transazione, lo script può tentare di risolvere l'errore, quindi provare ad effettuare nuovamente l'operazione per evitare di annullare l'intera transazione.

Quando è su Disattivata, questa istruzione di script è anche utile durante il debug di una transazione in Script Debugger. Poiché un errore non annulla automaticamente la transazione, è possibile impostare l'struzione successiva ovunque si desideri, anche all'interno della transazione, che altrimenti non sarebbe consentito.

Note 

  • Per ottenere lo stato attuale di Imposta Annulla transazione su Errore, utilizzare la funzione Get(AnnullaTransazioneSuStatoErrore).

  • Se impostato su Disattivata, Imposta Annulla transazione su Errore rimane disabilitato per tutto il tempo in cui lo script corrente e tutti i subscript sono in esecuzione, a meno che non venga modificato. Quando lo script corrente termina, lo stato ritorna su Attivata.

Esempio 1 

Apre una transazione e tenta di impostare il campo Testo e il campo Numero, che ha la convalida abilitata per i dati solo numerici. Imposta campo per testo va a buon fine. Imposta campo per numero non supera la convalida e restituisce un errore, ma la transazione non viene annullata automaticamente. Invece, viene visualizzata la finestra di dialogo personalizzata, quindi la transazione viene salvata, cambiando solo il campo Testo.

Copia
Imposta Annulla transazione su Errore [ Disattivata ]
Apri transazione [ ]
    Imposta campo [ Tabella::Testo ; "Romanzo" ]
    Imposta campo [ Tabella::Numero ; "Era buio e..." ]
    If [ Get ( UltimoErrore ) > 0 ]
        Mostra finestra personalizz. [ "Oops, si è verificato un errore con Numero." ]
    End If
Salva transazione