
Une autre façon d'itérer est d'utiliser la fonction While. Cette fonction ne prend que deux arguments : le test et le corps. Ainsi, si vous souhaitez utiliser une variable de type compteur, index ou indicateur dans l'un ou l'autre argument, vous devez les initialiser avant d'appeler la fonction While. JMP évalue le premier argument et l'interprète comme un résultat booléen afin de déterminer si l'itération doit se poursuivre. Si le résultat est vrai, la fonction While poursuit l'itération. S'il est faux, la fonction While termine l'itération et le script continue avec le code suivant. JMP évalue ensuite le deuxième argument. Ce code est généralement considéré comme le corps de l'itération, et JMP l'évalue à chaque fois. Comme il n'y a pas d'argument de mise à jour distinct, une partie de ce code doit mettre à jour la variable de type compteur, index ou indicateur pour l'itération suivante. Prenons un exemple. Dans ce code, c est un compteur ou un index et sa valeur initiale est « Not Done » (non terminé). La variable indicateur est initialement définie sur « true ». Ainsi, dans la fonction While, JMP évalue d'abord la variable not Done et l'interprète comme un résultat booléen. Si la valeur est true, la fonction continue. Le corps de l'itération inclut ensuite l'essentiel de l'itération : le lancement de la plateforme de distribution, puis met à jour la variable not Done à l'aide d'une comparaison booléenne. Dans le code présenté ici, JMP compare le nombre de colonnes de la table de données à la valeur actuelle du compteur, ET met à jour ce dernier. La comparaison renvoie a si la table de données contient davantage de colonnes et zéro lorsque toutes les colonnes ont été évaluées. Ce résultat est stocké dans not Done, qui est évalué au début de l'itération suivante. Notez que l'opérateur Post Increment renvoie sa valeur actuelle avant l'incrémentation ; le dernier élément du code pourrait donc être écrit comme suit : N Col supérieur à c, point-virgule, c plus-plus, et le résultat serait identique.