Elaboration d'un script
Plus vous prendrez de temps pour bien préparer la création de votre script, plus vous aurez de chance d'obtenir le résultat escompté. Au cours de l'élaboration, posez-vous les questions suivantes :
 •
Pouvez-vous diviser ce travail en plusieurs tâches ? Le cas échéant, vous devez définir des sous-scripts pour chacune de ces tâches, puis définir un script qui exécute ces sous-scripts. Il est généralement plus aisé d'écrire et de tester plusieurs petits sous-scripts qu'un seul script plus complexe. Ces sous-scripts peuvent être réutilisés ailleurs (utilisez l'Exécuter script script step pour exécuter un sous-script à l'intérieur d'un script).
 •
Quelles actions de script doivent être exécutées et dans quelles conditions ? Toutes les actions de script doivent-elles être toujours exécutées ? Certaines doivent-elles être exécutées un certain nombre de fois jusqu'à ce qu'une certaine condition soit remplie ? Le script doit-il invoquer d'autres scripts et sous-scripts ? Vous pouvez contrôler la progression d'un script de diverses manières. Pour plus d'informations concernant la création de scripts avec des étapes conditionnelles, consultez la section Actions de script Contrôle.
 •
Souhaitez-vous que le script s'exécute sur un modèle en particulier ? Etant donné que les scripts sont définis au niveau du fichier et qu'ils peuvent être invoqués depuis un modèle, vous devez vérifier que le script fonctionne dans le ou les modèles souhaités. Utilisez l'Activer modèle script step pour modifier des modèles.
 •
 •
Toutes les données dont vous avez besoin figurent-elles dans un seul fichier de base de données ou le script devra-t-il faire appel à plusieurs fichiers ? Si vous utilisez plusieurs fichiers, lesquels doivent être ouverts par le script ? Dans quel fichier le ou les scripts doivent-ils être définis ? Dans la plupart des cas, un script doit être défini dans le fichier où se trouvent les données à traiter. Il vous faudra peut-être créer des scripts séparés pour chaque fichier dans les solutions de base de données avec plusieurs fichiers, selon la complexité de la tâche.
 •
Avec quel enregistrement le script doit-il démarrer ? Par exemple, lorsque vous utilisez l'Boucle script step, vous devez décider si la boucle démarre au premier enregistrement, au dernier enregistrement, à un enregistrement précis ou à l'enregistrement actif du jeu d'enregistrements trouvés. (Utilisez l'Afficher enreg/requête/page script step, l'Activer enregistrements liés script step ou l'Activer rangée externe script step pour indiquer un enregistrement de départ. Si vous n'incluez pas une action de script Navigation pour déterminer l'enregistrement actif, le point de départ de la boucle est l'enregistrement actif au moment de l'exécution du script.)
 •
Quelle fenêtre souhaitez-vous utiliser ? Un script est initialement associé à une fenêtre spécifique, qui peut se trouver à l'arrière-plan. Le script demeure sur cette fenêtre, tant que l'action du script active une autre fenêtre. Par exemple, utilisez l'Sélectionner fenêtre script step pour indiquer une autre fenêtre. Si la fenêtre indiquée n'est pas disponible, le script active la fenêtre du fichier se situant au premier plan. Lorsque vous mettez un script en pause, la fenêtre associée passe au premier plan si elle est disponible.
 •
Le script doit-il passer d'un mode à un autre ? Un script peut être lancé en mode Utilisation, Recherche, Modèle ou Prévisualisation. Assurez-vous que le mode activé au moment de l'exécution d'une action est correct. Par exemple, utilisez l'Mode Utilisation script step pour modifier des données dans des rubriques et des enregistrements et utilisez le Mode Recherche script step pour définir ou exécuter une requête de recherche.
Remarque  Les scripts exécutés en mode Modèle basculent vers le mode Utilisation avant l'exécution.
 •
De quelles rubriques et de quels modèles le script a-t-il besoin ? Certaines actions (comme l’Activer rubrique script step et l’Insérer texte script step) ont besoin de la présence d’une rubrique sur le modèle actif, ce qui n’est pas le cas pour d’autres (par exemple l’Définir rubrique script step). Utilisez l’Activer modèle script step pour passer à un modèle contenant les rubriques requises par votre script ou bien insérez les rubriques dans la zone grise située à droite du modèle afin qu’elles soient disponibles pour les actions de script, mais pas pour les utilisateurs.
 •
Les enregistrements doivent-ils être traités dans un ordre précis ? Choisissez entre l'ordre de tri actif, un ordre de tri précis ou aucun tri (ordre de création des enregistrements). Utilisez l'Trier enregistrements script step ou l'Annuler tri des enreg. script step afin de saisir une boucle pour trier correctement vos enregistrements avant de les traiter.
 •
 •
 •
 •
Comment allez-vous tester votre script ? Utilisez l'Suspendre/reprendre script script step pour faire une pause à des endroits prédéfinis de votre script. Afin de préserver les données originales, enregistrez un clone de votre base de données dans lequel vous définissez et testez votre script.
Remarque  Si vous utilisez FileMaker Pro Advanced, vous pouvez utiliser Script Debugger pour tester et dépanner vos scripts.
 •
Comment les situations d'erreur sont-elles gérées (aucun enregistrement trouvé, par exemple) ? Vous pouvez capturer la dernière condition d’erreur rapportée par FileMaker Pro en utilisant la Obtenir ( DernièreErreur ) function. Utilisez cette fonction ainsi que l'Si script step, l'Sinon si script step et l'Sinon script step pour créer des scripts réagissant aux erreurs de l'utilisateur ou aux résultats inattendus. Pour un contrôle plus avancé, utilisez l'Gestion erreurs script step pour supprimer les alertes d'erreur habituellement affichées par FileMaker Pro dans ces situations et les remplacer par des alertes personnalisées à l'aide de l'Ouvrir boîte dial. person. script step.
 •
Tous les utilisateurs doivent-ils avoir l'autorisation d'exécuter tous les scripts ? Utilisez les jeux de privilèges pour contrôler l'accès des utilisateurs aux scripts ? Avec les jeux de privilèges, vous pouvez autoriser les utilisateurs à exécuter ou modifier des scripts individuels, aucun script ou tous les scripts. Vous pouvez également définir les privilèges par défaut de chaque jeu concernant les futurs scripts définis dans le fichier. Si un script est défini pour s'exécuter avec un accès intégral, il peut effectuer des étapes pour l'utilisateur alors que ces étapes ne sont normalement pas autorisées par les privilèges attribués. Consultez la section Gestion des jeux de privilèges.
 •
Comment les utilisateurs exécutent-ils le script ? Vous devez créer un bouton pour exécuter le script ou indiquer que le script est ajouté au menu Scripts. Il est également possible d’exécuter les scripts à partir de la fenêtre Espace de travail de script ou lorsqu’un déclencheur de script est activé. Par exemple, vous pouvez utiliser le déclencheur SurOuverturePremiereFenetre pour exécuter un script à l'ouverture de la base de données.
Une fois que vous avez étudié toutes ces questions, vous pouvez gérer des scripts dans votre base de données. Consultez la section Création et modification de scripts.