21.7.2 Tutoriel de débogage
Suivez l'exemple ci-dessous pour apprendre les étapes nécessaires au débogage d'une formule. Après avoir terminé cet exercice, utilisez le même principe pour déboguer vos formules.
21.7.2.1 A propos de ce tutoriel
● Ce tutoriel utilise l'exemple de base de données Xtreme.mdb.
● Ce tutoriel utilise la syntaxe Crystal.
● La formule suivante est la formule que vous testerez pour trouver d'éventuelles erreurs :
If ({customer.CUSTOMER NAME} [1 to 2 = "Bi" and
ToText({customer,CUSTOMER ID}) [1] = "6") Or
({customer.CUSTOMER NAME} [1] = 'Ro" and
ToText({customer.CUSTOMER ID}) [1] = "5")
"PREFERRED CUSTOMER"
Else
"DOES NOT FIT CRITERIA"
Si elle est correcte, cette formule devrait sélectionner tous les clients dont le nom commence par "Bi" et dont l'ID client commence par "6" ainsi que les entreprises dont le nom commence par "Ro" et dont l'ID client commence par "5". Lors de l'impression du champ, les enregistrements sélectionnés seront estampillés "CLIENT
PRIVILEGIE" alors que le reste sera estampillé "NE REPOND PAS AUX CRITERES".
Examinez à présent chaque partie de la formule pour vérifier que chaque condition fonctionne individuellement.
21.7.2.2 Formule1
1. Pour commencer, créez un rapport en utilisant la table Clients dans
Xtreme.mdb
et placez les champs suivants de gauche à droite dans la section Détails :
{customer.CUSTOMER ID}
{customer.CUSTOMER NAME}
Pour tester chaque portion de la formule, placez un nouveau champ de formule à côté de ces deux champs dans le rapport.
2. Créez une nouvelle formule appelée Formule1.
3. Tapez le texte suivant dans la zone
Texte de la formule
de l'Editeur de formule :
If {customer.CUSTOMER NAME} [1 to 2 = "Bi" Then
"TRUE"
Else
"FALSE"
4.
Cliquez sur
Vérifier
pour rechercher les erreurs éventuelles. Le message d'erreur suivant apparaît :
The ] is missing.
436
©
2013 SAP AG ou société affiliée SAP. Tous droits réservés.
Guide de l'utilisateur de SAP Crystal Reports 2011
Utilisation des formules
5. Corrigez la formule en insérant le signe ] manquant après le 2.
6. Cliquez de nouveau sur
Vérifier
. Le message suivant apparaîtra :
No errors found.
7. Cliquez sur
Enregistrer et fermer
dans la barre d'outils de l'Atelier de formules.
8. Insérez le champ de formule corrigé à droite des deux champs de données de la section Détails de votre rapport.
9.
Cliquez sur
Aperçu avant impression
dans la barre d'outils Standard pour vérifier les valeurs du rapport et comparer les champs afin de voir si les valeurs de champs renvoyées par @Formule1 sont correctes.
La valeur "TRUE" est affichée à côté des noms de client commençant par "Bi" et "FALSE" à côté des autres.
Vérifiez maintenant les autres portions de la formule. Créez la Formula2, la Formula3 et la Formula4 en suivant les
étapes 1 à 9 à l'aide des formules spécifiées pour chacune d'elles.
Insérez chaque champ de formule sur la même ligne que la section Détails pour effectuer une comparaison rapide. Vérifiez qu'ils ne contiennent pas d'erreurs, corrigez les erreurs si nécessaire et assurez-vous de la validité des valeurs renvoyées avant de passer à la Formule2.
21.7.2.3 Formule2
1. Créez une nouvelle formule et donnez-lui le nom Formule2.
2. Tapez le texte suivant dans la zone
Texte de la formule
de l'Editeur de formule :
If ToText({customer,CUSTOMER ID}) [1] = "6" Then
"TRUE"
Else
"FALSE"
3.
Cliquez sur
Vérifier
pour rechercher les erreurs éventuelles. Le message d'erreur suivant apparaît :
This field name is not known.
4. Corrigez la formule en remplaçant la virgule (,) dans le nom du champ par un point (.).
5. Cliquez de nouveau sur
Vérifier
. La formule ne devrait plus contenir d'erreurs.
6. Placez la formule à droite du champ @Formule1.
7.
Cliquez sur
Aperçu avant impression
dans la barre d'outils Standard pour vérifier les valeurs du rapport et comparer les champs afin de voir si les valeurs renvoyées par @Formule2 sont correctes.
La valeur "TRUE" doit apparaître à côté de tous les numéros de client commençant par 6 et la valeur "FALSE" à côté des autres numéros de client.
21.7.2.4 Formule3
1. Créez une nouvelle formule et donnez-lui le nom Formule3.
Guide de l'utilisateur de SAP Crystal Reports 2011
Utilisation des formules
©
2013 SAP AG ou société affiliée SAP. Tous droits réservés.
437
2. Tapez le texte suivant dans la zone
Texte de la formule
de l'Editeur de formule :
If {customer.CUSTOMER NAME} [1 to 2] = 'Ro" Then
"TRUE"
Else
"FALSE"
3.
Cliquez sur
Vérifier
pour rechercher les erreurs éventuelles. Le message d'erreur suivant apparaît :
The matching ' for this string is missing.
4. Corrigez la formule en changeant le guillemet simple (') avant Ro en guillemet double (").
5. Cliquez de nouveau sur
Vérifier
. La formule ne devrait plus contenir d'erreurs.
6. Placez la formule à droite du champ @Formule2.
7.
Cliquez sur
Aperçu avant impression
dans la barre d'outils Standard pour vérifier les valeurs du rapport et comparer les champs afin de voir si les valeurs renvoyées par @Formule3 sont correctes.
La valeur "TRUE" devrait maintenant être affichée à côté des noms de clients commençant par "Ro" et "FALSE" à côté des autres noms de clients.
21.7.2.5 Formule4
1. Créez une nouvelle formule et donnez-lui le nom Formule4.
2. Tapez le texte suivant dans la zone
Texte de la formule
de l'Editeur de formule :
If ToText({customer.CUSTOMER ID}) [1] = "5"
"TRUE"
Else
"FALSE"
3.
Cliquez sur
Vérifier
pour rechercher les erreurs éventuelles. Le message d'erreur suivant apparaît :
The word 'then' is missing.
4. Corrigez la formule en entrant le mot "Then" après "5" à la fin de la première ligne.
5. Cliquez de nouveau sur
Vérifier
. La formule ne devrait plus contenir d'erreurs.
6. Placez la formule à droite du champ @Formule3.
7.
Cliquez sur
Aperçu avant impression
dans la barre d'outils Standard pour vérifier les valeurs du rapport et comparer les champs afin de voir si les valeurs renvoyées par @Formule4 sont correctes.
La valeur "TRUE" devrait à présent apparaître à côté de tous les ID client commençant par 5 et la valeur "FALSE" à côté des autres ID client.
Maintenant que les formules ne contiennent plus d'erreurs et que les valeurs de champs renvoyées sont correctes, créez une formule reliant les composants séparés. Commencez par relier les deux premières formules
(@Formule1 et @Formule2) et ajoutez ensuite @Formule3 et @Formule4 pour créer la formule finale
@FormuleFinale.
438
©
2013 SAP AG ou société affiliée SAP. Tous droits réservés.
Guide de l'utilisateur de SAP Crystal Reports 2011
Utilisation des formules

Публичная ссылка обновлена
Публичная ссылка на ваш чат обновлена.