pour l'arrêt de boucleJe suis perplexe en ce moment sur un problème avec une boucle FOR.(avec JMP16)
// open a window
mywindow = New Window(" xyz ", .....etc.);
// create journal
myjrn = mywindow << journal window;
For( i = 1, i <= 100, i++,
// do a lot of lines of lines requiring about 5' run time.
// periodically journal objects.
Close All( data tables, no save )
); // end to for loop
// SAVE the journal:
myjrn << save journal( "my.jrn" );
La boucle s'arrête après une itération.
(Je peux redémarrer la boucle après le for (i=1, i<=100, i++, s'arrête et ne passe pas à i=2.
pour (i=2,i<=100, i++, s'arrête et ne passe pas à i=3.
for (i=3,i<=100, i++, s'arrête et ne passe pas à i=4.
Réflexions bienvenues sur ce qui cause cela? résolution?
Merci,
John
ScriptRe: pour l'arrêt de la boucleChaque code de chaque itération dépend-il des tables de données que vous fermez dans la fonction For() ?
Re: pour l'arrêt de boucleSans voir tout le code, il est difficile de diagnostiquer.
Vérifiez d'abord la fenêtre du journal pour toute erreur.
S'il n'y en a pas, je commencerais par regarder la valeur de i après la boucle For(). Je suppose que vous trouverez qu'il est supérieur à 100. Ensuite, vous devez voir où il est modifié par inadvertance. Cela peut parfois se produire avec des collisions de noms avec des colonnes dans une table de données. Si vous pouvez simplement comprendre où cela pourrait se produire, essayez de changer le i en quelque chose d'autre et voyez si cela commence à fonctionner. Cela confirmera la collision de noms.
Re: pour l'arrêt de boucleEst-il possible que quelque part dans votre boucle Fro(), vous définissiez la variable "i" sur une grande valeur ?
Re: pour l'arrêt de boucleAvez-vous d'autres parties de code utilisant "i" comme variable ?La variable pourrait-elle être réaffectée (par exemple, si vous utilisez des fonctions définies par l'utilisateur) ?