Donnez vie à vos documents numériques !
 

Répondre à : Permutation de contenu de champs

abracadabraPDF Forums PDF – Général Permutation de contenu de champs Répondre à : Permutation de contenu de champs

#70987
bebarth
Maître des clés

bonjour,
Voici quelques réponses :

nbPlaces=17; // Nombre de places
posEleve=new Array(nbPlaces+1); // Définition d'une table à 18 éléments (de 0 à 17)
function noPlace() {
// S'il n'y a qu'une seule ligne pour une boucle "for" ou une condition "if else"
// il n'y a pas besoin d'accolades qui définissent l'ensemble des lignes à exécuter
for (var i=1; i<=nbPlaces; i++) posEleve=[this.getField("El."+i).value,this.getField("place."+i).value];
// posEleve=[this.getField("El."+i).value,this.getField("place."+i).value];
// L'élément i de la table posEleve est une table [] de 2 éléments et la virgule indique la séparation des éléments
}
noPlace();
// Fonction "placement" selon 2 paramètres "ind" -> indice et "pos" -> position
function placement(ind,pos) {
// Boucle pour vérifier toutes les positions
for (var i=1; i<=nbPlaces; i++) {
// So la position indiquée est identique à la position dans la table posEleve
// mais que l'indice du champs est différent de l'indice de la table posEleve
if (pos==posEleve[1] && ind!=i) {
// Message d'alerte
app.alert(posEleve[ind][0]+" et "+posEleve[0]+" ont le même numéro de place : "+posEleve[1],3);
break;
} else if (ind==i) {
posEleve[ind][1]=pos;
}
}
}

Les tables et les boucles permettent de réduire beaucoup les lignes de scripts.
Les expressions régulières sont assez compliquées à comprendre, mais sont très efficaces !

@+
😎