Gli script possono eseguire operazioni semplici, come impostare l'orientamento di stampa, o complesse, come creare lettere personalizzate per ciascun cliente.
Ad esempio, è possibile definire una serie di attività complesse per realizzare un'e-mail di ringraziamento per i clienti nel database Clienti che hanno fatto acquisti durante la settimana precedente. Lo script consente di comporre un'e-mail personalizzata per ogni cliente. Lo script passa al modo Anteprima ed entra in pausa in modo da consentire all'utente di vedere come verrà visualizzato il messaggio prima di inviarlo. L'esecuzione completa delle istruzioni può essere avviata facendo clic su un pulsante nel formato Vendite.
Gli script vengono creati selezionando i comandi, detti istruzioni di script, da un elenco di FileMaker Pro Advanced, specificando le opzioni (se necessario) e ordinando le istruzioni nel modo corretto per eseguire l'operazione.
In genere gli script vengono eseguiti sul client, ma si potrebbe volerne eseguire alcuni su FileMaker Server o FileMaker Cloud per migliorare le prestazioni o per programmarne l'esecuzione automatica. Vedere Esecuzione di script in FileMaker Server e FileMaker Cloud.
Maggiore è il tempo dedicato alla pianificazione dello script, più efficace sarà la sua esecuzione. Durante la pianificazione è necessario porsi le seguenti domande:
•La possibilità di separare ogni compito in compiti più piccoli. Per ciascuna piccola operazione è possibile definire dei subscript e poi definire uno script che esegua tutti i subscript. In questo modo la realizzazione e la verifica di piccoli script è più veloce di quella di un unico script complesso. "Inoltre, i subscript possono essere riutilizzati in altre aree." (Utilizzare l'istruzione di script Esegui script per eseguire un subscript all'interno di uno script).
•Quali istruzioni di script devono essere eseguite e in quali condizioni? È necessario eseguire sempre tutte le istruzioni di script? Alcune devono essere eseguite per un determinato numero di volte finché non si soddisfa una determinata condizione? Lo script deve richiamare altri script e subscript? È possibile controllare l'avanzamento dello script in diversi modi. Vedere Istruzioni di script Controllo per ulteriori informazioni su come creare script con istruzioni condizionali.
•Si desidera eseguire lo script in un formato particolare? Poiché gli script sono definiti a livello dei file e possono essere richiamati da qualsiasi formato, assicurarsi che vengano eseguiti nel formato o nei formati desiderati. Utilizzare l'istruzione di script Vai al formato per cambiare i formati.
•Lo script dovrà operare su tutti i record nel database, nel gruppo trovato corrente oppure in un determinato gruppo di record? (utilizzare Istruzioni di script Gruppi individuati per includere nel gruppo trovato solo i record con cui si desidera lavorare).
•I dati necessari sono raccolti in un unico file di database oppure sono distribuiti in più file? Nel caso in cui si utilizzino più file, quali devono essere aperti dallo script? In quale file deve essere definito lo script? Nella maggior parte dei casi gli script devono essere definiti nello stesso file in cui vengono elaborati i dati. Le soluzioni di database che comprendono più di un file potrebbero necessitare di script separati in ogni file, a seconda della complessità dell'operazione che si sta cercando di automatizzare.
•Con quale record deve iniziare lo script? Ad esempio, se si utilizza l'istruzione di script Loop decidere se il loop deve iniziare dal primo, dall'ultimo record, da un record specifico o dal record corrente del gruppo trovato. (Utilizzare l'istruzione di script Vai a Record/Richiesta/Pagina, l'istruzione di script Vai al record correlato o l'istruzione di script Vai alla riga del portale per specificare un record di inizio. Se non si include nessuna istruzione di script Navigazione per determinare il record corrente, il loop inizia con quello che sarà il record corrente al momento dell'esecuzione).
•Quale finestra utilizzare? Uno script è collegato inizialmente a una finestra specifica che può essere sullo sfondo. Lo script rimane in tale finestra fino a quando un'operazione di script non lo trasferisce in un'altra finestra. Ad esempio, utilizzare l'istruzione di script Seleziona finestra per specificare una finestra diversa. Se la finestra specificata non è disponibile, lo script passa alla finestra del file in primo piano. Quando si sospende uno script la finestra a cui è associato, se è disponibile, passa in primo piano. Vedere Istruzioni di script Finestre.
•Lo script deve passare da un modo all'altro? Lo script può essere eseguito dal modo Usa, Trova, Formato scheda o Anteprima. Assicurarsi che lo script si trovi nel modo adeguato prima di essere eseguito. Ad esempio, utilizzare l'istruzione di script Passa al modo Usa per modificare i dati nei campi e nei record e utilizzare l'istruzione di script Passa al modo Trova per impostare o eseguire una richiesta di ricerca.
Nota Gli script eseguiti nel modo Formato scheda passano automaticamente al modo Usa prima di essere eseguiti.
•Quali sono i campi e i formati necessari per lo script? Alcune istruzioni (come l'istruzione di script Vai al campo e l'istruzione di script Inserisci testo) richiedono la presenza di un campo nel formato corrente, mentre in altri casi (come l'istruzione di script Imposta campo) questo non è necessario. Utilizzare l'istruzione di script Vai al formato per passare a un formato che presenta i campi richiesti dallo script oppure collocare i campi nell'area grigia a destra del formato per renderli accessibili alle istruzioni di script, ma non agli utenti.
•I record devono essere elaborati seguendo un certo ordine? Scegliere tra il criterio di ordinamento corrente, un criterio di ordinamento specifico o nessun criterio di ordinamento (l'ordine in cui i record sono stati creati). Utilizzare l'istruzione di script Ordina i record o l'istruzione di script Annulla ordinamento record prima di avviare un loop per ordinare i record in modo adeguato.
•Come deve procedere lo script attraverso i campi e i record? (Usare l'istruzione di script Vai a Record/Richiesta/Pagina, l'istruzione di script Loop, l'istruzione di script Exit Loop If e l'istruzione di script End Loop per controllare l'elaborazione di più campi o record).
•Quando deve terminare lo script? Dopo che sono state eseguite tutte le istruzioni di script? Dopo che una determinata condizione è stata soddisfatta? (Utilizzare l'istruzione di script If, l'istruzione di script Else If e l'istruzione di script Else per eseguire un'operazione come l'istruzione di script Esci dallo script quando lo script raggiunge una determinata condizione).
•Gli utenti dovrebbero essere in grado di arrestare lo script mentre è in esecuzione? Lo script contiene un processo che potrebbe generare dati incompleti o non corretti se termina troppo presto? Utilizzare l'istruzione di script Consenti interruzione utente per determinare se gli utenti possano arrestare uno script.
•Considerare la verifica dello script. Utilizzare l'istruzione di script Pausa/continua lo script per inserire pause in punti predefiniti dello script. Salvare una copia del database, quindi definire e provare lo script al suo interno per conservare i dati originali.
Nota È possibile utilizzare lo Script Debugger per testare gli script e risolvere eventuali errori. Vedere Debug degli script.
•Come gestire le condizioni di errore (come i gruppi individuati vuoti). È possibile catturare l'ultima condizione di errore segnalata da FileMaker Pro Advanced utilizzando la funzione Get ( UltimoErrore ). Utilizzare questa funzione, l'istruzione di script If, l'istruzione di script Else If e l'istruzione di script Else per creare script che reagiscano agli errori provocati dall'utente o ai risultati imprevisti. Per un controllo ancora maggiore, utilizzare l'istruzione di script Imposta cattura errori per eliminare i messaggi di errore generalmente visualizzati in queste situazioni e sostituirli con messaggi personalizzati utilizzando l'istruzione di script Mostra finestra personalizz..
•La possibilità di eseguire gli script deve essere concessa a tutti gli utenti? Utilizzare i set di privilegi per controllare l'accesso degli utenti agli script. Grazie ai set di privilegi è possibile consentire agli utenti di eseguire o modificare singoli script, nessuno script o tutti gli script. È anche possibile impostare l'autorizzazione predefinita per ogni set di privilegi per ogni futuro nuovo script definito nel file. Gli script per cui l'impostazione prevede che vengano eseguiti con accesso completo permettono di far eseguire determinate operazioni agli utenti che normalmente non disporrebbero dei privilegi necessari per eseguirle. Vedere Creazione e modifica dei set di privilegi.
•Come gli utenti eseguiranno lo script. È necessario creare un pulsante per eseguire lo script oppure specificare che lo script deve essere aggiunto al menu Script. Gli script possono anche essere eseguiti dall'Area di lavoro script o quando viene attivato un trigger di script. Ad esempio, è possibile utilizzare il trigger di script SuAperturaPrimaFinestra per eseguire uno script quando si apre il database.
Dopo aver considerato tutte queste situazioni, è possibile gestire gli script per il database. Vedere Creazione e modifica degli script.