556033_fr-FR
Le débogueur JSL – Prochaines étapes
Pour cette recette, nous examinerons ce qui rend le débogueur JSL des points d'arrêt conditionnels vraiment puissants. Cette fonctionnalité nous permet de suspendre un script lorsqu'une condition spécifique est remplie, par exemple lorsqu'une variable atteint une certaine valeur. Avec lui, nous pouvons cibler des valeurs d'entrée spécifiques, des itérations de boucle, des numéros de colonnes, etc. Nous utiliserons le même programme que celui que nous avons utilisé pour la recette JSL Debugger – Getting Started. Il a été légèrement modifié pour illustrer les points de cette recette.
Ingrédients:
Tableau de données – CVC9
Difficulté : Facile
Pas:
- Ouvrez la table de données CVC 9 et le script Créer une liste CVC . Lancez le débogueur. Définissez des points d'arrêt sur les lignes 25, 40 et 46. Nous serons intéressés de voir que les chaînes d'entrée sont analysées correctement. Pour réitérer les informations de la recette précédente :
Les cellules vides sont supprimées
Les cellules commençant par « [ v. » sont ignorées.
Des virgules séparent les mots individuels.
Une barre oblique ( / ) donne une liste de mots pour combiner un ou plusieurs mots après le tilde ( ~ ). Par exemple, tener/llevar ~ barba/bigote/gafas doit être étendu à six mots : tener barba, llevar barba, tener bigote, llevar bigote, tener gafas, llevar gafas . Il peut y avoir plus de deux listes dans une cellule
Il peut y avoir à la fois des barres obliques et des virgules dans une cellule. L'entrée : tronco, extremidad ~ supérieur/inférieur , doit être étendue à : tronco, extremidad supérieure, extremidad inférieure .
- Cliquez avec le bouton droit sur le point d'arrêt de la ligne 25 et sélectionnez Modifier le point d'arrêt . Dans la boîte de dialogue, sélectionnez l'onglet Condition . Cochez la case Condition et ajoutez la condition Contains(item",",") . item est une variable que nous surveillerons. Le bouton radio Est vrai doit être sélectionné. Cliquez sur OK . Un plus apparaît dans le point d’arrêt indiquant qu’il s’agit d’un point d’arrêt conditionnel.
- Ajoutez item , tildeGroup et buildCartesian à la liste des variables surveillées.
- Cliquez sur le bouton Exécuter en haut à gauche du débogueur. Lorsque vous y êtes invité, sélectionnez Section pour la colonne Niveau et les trois colonnes suivantes pour les colonnes de données . Cliquez sur le bouton Exécuter dans la boîte de dialogue.
- Le débogueur doit être arrêté à la ligne 25. L'élément variable contient la chaîne « pelo, ojo, nariz ». Le point d'arrêt conditionnel a ignoré toutes les cellules où il n'y a pas de virgule.
- Cliquez encore deux fois sur Exécuter . La variable tildeGroup contient {"pelo"} .
- Cliquez à nouveau sur Exécuter . tildeGroup contient désormais {"ojo"} . Il semble que les chaînes contenant uniquement des virgules soient analysées correctement.
- Ensuite, nous devons vérifier que les cellules contenant des tildes sont correctement analysées. Nous pouvons le faire en modifiant le point d'arrêt conditionnel actuel. En bas à droite du débogueur, sélectionnez l’onglet Points d’arrêt . Sélectionnez la ligne contenant le point d'arrêt conditionnel et cliquez sur le bouton Modifier le point d'arrêt en haut de l'onglet (deuxième en partant de la gauche). Cliquez sur la cellule de la colonne Condition contenant la condition du point d'arrêt. Modifiez-le pour qu'il soit Contains(item,"~") . Alternativement, nous aurions pu modifier la ligne directement dans le tableau des points d'arrêt.
- Décochez les cases des points d'arrêt sur les lignes 40 et 46. Cela nous permet de désactiver les points d'arrêt sans les supprimer.
- Cliquez sur le bouton Exécuter . Le débogueur s'arrêtera au point d'arrêt de la ligne 24 pour la prochaine observation où l'élément contient un tilde. (Remarque : si le débogueur s'arrête, mais que l'élément ne contient pas de tilde, il se peut que le débogueur ait été arrêté prématurément avant son exécution complète. Cliquez sur le bouton Exécuter sans points d'arrêt et réessayez.)
- Next, we will check items with both a tilde and comma. Modify the condition on breakpoint 24 to
Contains(item,"~") & Contains(item,",")
- Cliquez sur Exécuter . Nous pouvons désormais parcourir les éléments comportant ces deux caractères.
Lorsque l’on parcourt un grand nombre d’éléments, il peut être difficile de déterminer où et pourquoi un problème survient. Bien que le débogueur soit généralement utilisé pour parcourir un script, il peut également être utilisé pour aider à diagnostiquer des problèmes plus graves.
- Exécutez le programme sans le débogueur, en sélectionnant cette fois Section pour la colonne Niveau et toutes les colonnes restantes pour les colonnes Données .
- Après avoir cliqué sur Exécuter , nous obtenons une boîte de dialogue d'erreur. Les informations contenues dans le journal indiquent qu'il y a un problème d'indice mais ne donnent pas beaucoup de détails autres que le fait qu'il impliquait une colonne et était probablement dû à la variable targetRows .
- Relancez le programme dans le débogueur et cliquez sur le bouton Exécuter sans points d'arrêt .
- Après avoir fermé la boîte de dialogue d'avertissement, le contrôle est rendu au débogueur. Nous pouvons maintenant explorer diverses valeurs de variables. En particulier, nous pouvons facilement identifier la colonne problématique comme étant 10.1. Les actions liées à la Vivienda et que targetRows sont vides.
Conseils pour réussir:
- Utilisez des points d'arrêt conditionnels pour cibler comment et quand un point d'arrêt est utilisé pour s'arrêter.
- Le débogueur peut être utilisé pour déterminer les valeurs des variables au moment de l'échec lorsque les erreurs ne sont pas facilement détectées à l'aide du journal.
ApéritifsAutomatisation et scripts
Comments
There are no comments yet