Donnez vie à vos documents numériques !
 

Problème script pour somme de données

abracadabraPDF Forums PDF – Général Problème script pour somme de données

  • Ce sujet est vide.
  • Créateur
    Sujet
  • #45146
    CHERIBIBI
    Membre

    Bonjour,

    Je veux faire la somme de 4 champs. j’ai mis ce script :

    var PH11 = this.getField(“PH1-1”).value;
    var PH12 = this.getField(“PH1-2”).value;
    var PH13 = this.getField(“PH1-3”).value;
    var PH14 = this.getField(“PH1-4”).value;
    var U1 = this.getField(“U1”).value;
    if(U1 != “” && U1 != “0”)
    {
    event.value = (PH11+PH12+PH13+PH14) + ” u20AC”;
    }
    else {event.value = “”;
    }

    Cela fonctionne bien si tous les champs sont renseignées. Par contre si je rempli que 2 ou 3 champs, j’ai une erreur.

    Exemple : PH11 = 10 et PH13 = 15 j’ai ce résultat : 1015 au lieu de 25

Affichage de 5 réponses de 1 à 5 (sur un total de 5)
  • Auteur
    Réponses
  • #58912
    alex
    Participant

    Bonjour,
    Si on ne précise pas le format des données saisies, le traitement procède à une concaténation de chaînes.
    On peut s’affranchir de cette “formalité” en forçant le traitement à calculer une somme, pour cela on ajoute 1* (multiplication par 1 qui lève l’ambiguité puisqu’il y a un opérateur).

    //Je veux faire la somme de 4 champs. j’ai mis ce script :
    console.clear();
    var PH11 = this.getField(“PH1-1”).value;
    var PH12 = this.getField(“PH1-2”).value;
    var PH13 = this.getField(“PH1-3”).value;
    var PH14 = this.getField(“PH1-4”).value;
    var U1 = this.getField(“U1”).value;
    if(U1 != “” && U1 != “0”)
    {
    total=1*PH11+1*PH12+1*PH13+1*PH14;
    console.println(“Resultat=”+total);
    this.event.value = total + ” u20AC”;
    }
    else
    {
    this.event.value = “”;
    }
    Voir maquette.

    #58913
    CHERIBIBI
    Membre

    Bonsoir,

    Merci pour l’info. Je teste cela ce WE.

    Bon WE

    #58914
    Merlin
    Maître des clés

    On peut s’affranchir de cette “formalité” en forçant le traitement à calculer une somme, pour cela on ajoute 1* (multiplication par 1 qui lève l’ambiguité puisqu’il y a un opérateur).

    Le killer tip qui déchire tout !
    Je le note.

    :bravo:  :extra:

    #58915
    alex
    Participant

    Oui, c’est usant de paramétrer les formats des champs numériques un à un (et on ne peut pas le faire par script). Alors, quand ce n’est pas nécessaire on s’en passe… au moins dans les tests.

    #58916
    CHERIBIBI
    Membre

    Bonjour,
    Je viens de tester c’est OK, merci alex.
    Bon WE

Affichage de 5 réponses de 1 à 5 (sur un total de 5)
  • Vous devez être connecté pour répondre à ce sujet.