SuTransazioneFinestra
Esegue uno script e lo trasferisce a un oggetto JSON come parametro di script dopo che una o più modifiche al record sono state salvate con successo. L'oggetto JSON include il nome del file, il nome della tabella di base, l'ID del record, l'operazione e il contenuto di un campo contesto per ogni operazione di record salvata.
Le azioni che attivano questo trigger di script sono:
-
un record viene salvato dopo essere stato creato, modificato o eliminato
-
una transazione aperta viene salvata con successo
Al momento dell'esecuzione dello script
Dopo l'elaborazione dell'evento.
Modi di utilizzo del trigger
Modi Usa e Trova.
Risultato
Nessuno
Compatibilità
| Prodotto | Supportata |
|---|---|
|
FileMaker Pro |
Sì |
|
FileMaker Go |
Sì |
|
FileMaker WebDirect |
Sì |
|
FileMaker Server |
Sì |
|
FileMaker Cloud |
Sì |
|
FileMaker Data API |
Sì |
|
Pubblicazione Web personalizzata |
Sì |
Creata nella versione
20.1
Descrizione
Qualsiasi azione che salvi uno o più record attiva questo trigger di script, sia all'interno di una transazione aperta (vedere l'istruzione di script Apri transazione) che non. Questo trigger trasferisce allo script un oggetto JSON come parametro di script contenente informazioni sui salvataggi. È possibile utilizzare questo trigger con uno script che registra ogni creazione, modifica ed eliminazione di record, ad esempio, all'interno di un registro di verifica delle modifiche, di chi le apporta e quando.
Utilizzare la funzione Get ( ParametroScript ) nello script attivato per recuperare l'oggetto JSON. L'oggetto JSON ha la seguente struttura:
{
"NomeFile" : {
"NomeTabellaBase" : [
[ "Operazione", IDRecord, ContenutoCampo ],
...
]
}
}
-
"NomeFile"è il nome del file di database senza l'estensione del file. -
"NomeTabellaBase"è il nome della tabella di base per i record interessati. -
"Operazione"è"Nuovo","Modificato"o"Cancellato". -
IDRecordè il codice ID interno del record. -
ContenutoCampoè il contenuto del campo contesto per quel record. È possibile utilizzare questo campo per trasferire informazioni aggiuntive allo script (ad esempio, l'utente corrente, l'indicatore data e ora e i valori del campo). Se il campo contiene JSON valido, viene incluso come valore JSON, anziché come stringa di testo. Se non esiste un campo contesto corrispondente nella tabella, viene utilizzata una stringa vuota.
Quando un salvataggio ha effetto sui record di più tabelle di base, ogni tabella ha il proprio array sotto la chiave "NomeFile". Quando vengono interessati i record in tabelle correlate di altri file, ogni file ha la propria chiave di livello superiore.
Il campo contesto è specificato nell'opzione Nome campo quando si configura questo trigger. Se Nome campo è lasciato vuoto, il trigger cerca un campo denominato SuTransazioneFinestra in ogni tabella di base. Se non viene trovato alcun campo corrispondente in una tabella, ContenutoCampo è una stringa vuota per i record di quella tabella.
Note
-
Questo trigger è configurato per ogni file. Se i record vengono modificati in una tabella correlata in un altro file, tali voci di record sono incluse nel parametro JSON anche se l'altro file non ha il trigger di script SuTransazioneFinestra configurato.
-
Per i record eliminati, i dati del campo contesto vengono acquisiti prima che il record venga eliminato. Per i record nuovi e modificati, i dati del campo contesto vengono acquisiti dopo che i record sono stati salvati.
-
I record o le transazioni ripristinati non attivano questo trigger. Vedere le istruzioni di script Ripristina il record/richiesta e Annulla transazione.
-
L'accesso diretto al database tramite FileMaker Data API o OData API non attiva questo trigger. Tuttavia, gli script eseguiti tramite tali API possono attivarlo.
-
Per un esempio di script di registrazione audit da utilizzare con SuTransazioneFinestra, vedere questo post del blog Claris Engineering.