$estPremiereJournee vient de la ligne
Définir $estPremiereJournee: 1
Le test Si $estPremiereJournee est un test booléen. Un merveilleux article par un brillantissime développeur FileMaker a été publié il y a tout juste 10 ans et explique parfaitement la logique booléenne appliquée à FileMaker. ;)
Pour revenir aux moutons de Laurent (qui passent je l'espère une meilleure soirée que beaucoup d'autres moutons), cette dernière boucle me semble pouvoir fonctionner mais c'est très… "bancal". C'est lié au fait que des actions identiques gèrent la première itération en dehors de la boucle, et les autres à l'intérieur.
Je crois que j'ai appris à coder correctement en m'obligeant à écrire les boucles de manière à ce que :
- la première itération ne soit pas traitée comme un cas particulier : la boucle peut tourner à l'identique qu'il y ait 0, 1 ou plusieurs itérations, et ne demande pas de déclaration préalable.
- la condition de sortie de boucle (fin de boucle si) est exprimée dès le premier pas de script de la boucle. (pour éviter d'avoir des erreurs 101 en fin de boucle (après dernier enreg), je m'autorise une deuxième condition de fin de boucle avant d'activer l'enregistrement suivant, mais c'est juste pour cela.
Au début, ça fait des nœuds au cerveau. Une fois maîtrisé, aucune boucle ne résiste.
Pour reprendre (en pseudo pseudo code) :
Definir $chauffeur
Activer modele journees
Afficher tous les enreg
Definir $c = Obtenir ( NombreEnregTrouvés )
Definir $j = 0
Boucle
Fin de boucle si $j >= $c
Definir $j = $j + 1
Activer modele journees
Activer enreg $j
Definir $journee
Activer modele reveils
Nouvel enreg
Definir rub zkf_journee
Definir rub zkf_chauffeurs
Fin de boucle