Débogage de scripts

Remarque  Cette fonction est disponible lorsque la préférence générale Utiliser les outils avancés est sélectionnée. Consultez la section Utilisation des outils avancés.

Script Debugger est un outil interactif permettant de dépanner les scripts de FileMaker.

Par exemple, vous pouvez déboguer des scripts exécutés depuis le menu Scripts ou les raccourcis clavier, déboguer un script activé par un déclencheur de script, un bouton ou un menu personnalisé et désactiver ou activer temporairement les déclencheurs de script lorsque vous travaillez dans Script Debugger.

Pour déboguer les scripts :

  1. Activez Script Debugger en effectuant l'une des opérations suivantes :
    • Sélectionnez le menu Outils > Script Debugger, puis exécutez votre script.
    • Sélectionnez le menu Scripts > Espace de travail de script, sélectionnez votre script, puis cliquez sur Bouton Déboguer. Pour enregistrer tous les scripts ouverts, puis déboguer le script, maintenez enfoncée la touche Maj (Windows) ou Option (macOS) et cliquez sur Bouton Déboguer.
  2. Utilisez les commandes suivantes pour déboguer le script :
  3. Choisissez

    Pour

    Pas à pas principal

    Bouton Pas à pas principal

    Exécuter le script pas à pas sans sous-scripts.

    Si l'action de script est Exécuter le script, Script Debugger exécutera le sous-script puis passera à la ligne suivante du script d'appel. Script Debugger exécutera toutes les étapes du sous-script jusqu'à ce qu'il rencontre un point d'arrêt.

    Commencer la procédure

    Bouton Commencer la procédure

    Exécuter le script pas à pas, et saisir et présenter les actions dans des sous-scripts.

    Si l'action de script est Exécuter script, Script Debugger passera à la première ligne du sous-script et attendra une entrée de l'utilisateur avant de passer à l'action de sous-script suivante.

    Terminer la procédure

    Bouton Terminer la procédure

    Exécuter tous les étapes du script en cours et, dans le cas d'un sous-script, revenir à la ligne qui suit l'étape Exécuter script du script d'appel.

    S'il ne s'agit pas d'un sous-script, la commande Terminer la procédure indique au Script Debugger d'exécuter toutes les actions de script et de sous-script restantes jusqu'à ce qu'il rencontre un point d'arrêt.

    Définir l'action suivante

    Bouton Définir l'action suivante

    Régler le pointeur d'exécution des étapes sur l'action de script en surbrillance.

    Cette commande passe le contrôle à l'étape en surbrillance, mais ne l'exécute pas. L'action en surbrillance s'exécute à la reprise de l'exécution du script ou de l'étape de débogage. Toutes les actions de script comprises entre la dernière étape exécutée et la suivante désignée ne sont pas exécutées. Cliquez sur une action pour la mettre en surbrillance, puis cliquez sur Bouton Définir l'action suivante dans Script Debugger.

    Exécuter

    Bouton Exécuter

    Pause

    Bouton Pause

    Inverser entre pause et exécution de toutes les actions de script jusqu'à la fin d'un script ou un point d'arrêt. Lorsqu'un script est mis en pause, vous pouvez double-cliquer dessus dans la liste Appeler la pile pour le modifier. Chaque script actif s'ouvre dans un onglet distinct de l'Espace de travail de script, ce qui vous permet de modifier plusieurs scripts. L'exécution du script n'est pas interrompue tant que vous n'enregistrez pas les modifications.

    Lorsqu'un script est en pause, vous pouvez l'exécuter pas à pas en cliquant sur Bouton Commencer la procédure dans Script Debugger.

    Interrompre script

    Bouton Interrompre script

    Arrêter l'exécution d'un script.

    Activer/Désactiver les déclencheurs de script

    Bouton Activer/désactiver les déclencheurs de script montrant des déclencheurs de script désactivés 

    Désactiver ou activer temporairement tous les déclencheurs de script d'un fichier.

    Vous devez avoir des privilèges d'accès Accès intégral pour désactiver un déclencheur de script. Les déclencheurs de script sont activés par défaut. A la fermeture de Script Debugger, tous les déclencheurs de script désactivés sont alors activés.

    Modifier le script

    Bouton Modifier le script

    Ouvre le script actif dans la boîte de dialogue Modifier le script. Vous pouvez modifier un script pendant son exécution, mais une fois les modifications du script enregistrées, l'exécution est interrompue.

    Ouvrir/fermer le Visualiseur de données

    Bouton Ouvrir/fermer le Visualiseur de données

    Ouvrir (ou fermer) la fenêtre Visualiseur de données pour surveiller des rubriques, des variables et des formules de calcul particulières. Consultez la section Utilisation du Visualiseur de données.

    Authentifier le script/Annuler l'authentification

    Bouton de verrouillage pour authentifier le script ou le visualiseur de données Bouton de déverrouillage pour annuler l'authentification du script ou du visualiseur de données

    Annuler le verrouillage de Script Debugger ou du Visualiseur de données pour les scripts n'autorisant pas les privilèges de modification.

    Vous devez avoir des privilèges d'accès intégral pour authentifier un script. Le plus haut niveau de privilèges s'applique à tous les scripts, mais pas aux autres éléments de fichiers (tels que les enregistrements et les modèles). Vos privilèges en modification durent jusqu'à la fermeture de Script Debugger et du Visualiseur de données.

  4. Sélectionnez Suspendre en cas d'erreur si vous souhaitez mettre les scripts en pause lorsque vous rencontrez des erreurs.

Affichage des sous-scripts

Vous pouvez afficher les sous-scripts au moment où vous naviguez entre les scripts de Script Debugger. Par exemple, si le script A appelle le script B, qui ensuite appelle à son tour le script C, vous pouvez visualiser les actions de chacun de ces trois scripts.

  1. Sélectionnez le menu Outils> Script Debugger.
  2. Exécutez un script qui appelle un sous-script.
  3. Cliquez sur Commencer la procédure.

    La liste Appeler la pile affiche le sous-script.

  4. Sélectionnez un script dans la liste Appeler la pile pour afficher les actions de ce script dans la zone d'affichage.

Remarques 

  • Pour définir ou supprimer un point d'arrêt, cliquez sur le numéro de ligne à gauche de l'action de script. Les points d'arrêt permettent au Script Debugger d'exécuter de larges sections de script en ne générant des pauses que pour examiner la section marquée d'un point d'arrêt. Ils sont ignorés par FileMaker Pro lorsque Script Debugger n'est pas utilisé. Il est possible de poser des points d'arrêt sur plusieurs actions. Vous ne pouvez pas définir de points d'arrêt sur les actions appelées par un bouton ou un menu personnalisé.
  • Pour simplifier le débogage, Script Debugger ignore certaines actions de script. L'action Autor. annulation utilisateur avec une option définie sur Non ne vous empêchera pas d'arrêter l'exécution d'un script. L'action de script Ajuster fenêtre associée aux options Masquer ou Réduire ne masquera ni ne réduira la fenêtre lors d'une exécution via les boutons Bouton Pas à pas principal ou Bouton Commencer la procédure.
  • Lorsqu'un script dont les privilèges d'accès sont définis sur Modifiable exécute un script en accès Exécutable uniquement, ce dernier s'exécute entièrement sans afficher ses actions dans Script Debugger. Lorsqu'un script exécutable uniquement exécute un script dont les privilèges d'accès sont définis sur Modifiable, seules les actions de ce dernier s'affichent dans Script Debugger. Pour modifier un script, cliquez sur Bouton Authentifier le script/Annuler l'authentification du script dans Script Debugger dans Script Debugger. Pour plus d'informations sur les privilèges associés aux scripts et l'exécution de scripts avec tous les privilèges, consultez la section Modification des privilèges des scripts.

    Si vous ouvrez le Visualiseur de données après avoir choisi Authentifier le script/Annuler l'authentification, vos privilèges d'accès sont préservés dans le Visualiseur de données et dans le Script Debugger tant que vous ne fermez pas le Script Debugger.

  • Pour mettre au point un script de démarrage, ouvrez Script Debugger avant d'ouvrir votre fichier de base de données.
  • Lorsque vous fermez Script Debugger alors qu'un script est en pause, se dernier reprend et se termine.