Donnez vie à vos documents numériques !
 

Script pour calcul d’intervalles dans un formulaire PDF

abracadabraPDF Forums PDF – Général Script pour calcul d’intervalles dans un formulaire PDF

  • Ce sujet est vide.
  • Créateur
    Sujet
  • #45061
    nitherrien
    Membre

    Bonjour,

    Dans mon formulaire, des enseignants entrent un résultat (sur 8) pour chacun des 4 critères.

    Exemple:

    Critères      Résultats
        1                  7
        2                  3
        3                  5
        4                  8

    J’ai ajouté un calcul pour faire la somme des résultats (/32).

    Donc, pour l’exemple, le formulaire affiche automatiquement la somme de 23.

    Ma question: est-ce possible d’ajouter un calcul personnel (script) pour associer la somme à un % d’un intervalle?

    Voici l’intervalle:

     

     

     

     

     

     

    1

    10%

    2-3

    20%

    4-5

    30%

    6-7

    40%

    8-9

    50%

    10-11-12-13-14
    60%

     

     

     

    15-16

    65%

    17-18

    70%

       

     

     

    19-20

    75%

    21-22-23

    80%

       

     

     

    24-25

    85%

    26-27

    90%

       

     

     

    28-29-30

    95%

    31-32

    100%

     
    Donc, par exemple, si la somme (des entrants de l’enseignants) est de 21, le formulaire affichera 80 %.

    Est-ce possible d’avoir un script pour un intervalle? Comment l’écrire?

    Merci beaucoup!

    Nic 

Affichage de 9 réponses de 1 à 9 (sur un total de 9)
  • Auteur
    Réponses
  • #58322
    brumbies
    Membre

    Bonjour,

    Il est possible de faire exécuter un script de calcul pour faire ce que tu veux, par contre, aurais tu une maquette à poster, ce qui serait plus simple…
    :Smiley01:

    #58323
    nitherrien
    Membre

    Voici la maquette de mon formulaire.

    Est-ce trop compliqué!

    Merci

    Nic

    #58324
    brumbies
    Membre

    Bonsoir,

    Il y plusieurs solutions possibles. Par exemple, par le biais d’une imbrication d’instructions de contrôle comme if(){}else{if(){}else{if(){}else{}…}}.

    Le problème dans ton cas c’est le fait qu’il n’y ait pas de suite logique entre ton nombre de point, ton numéro de transfert et ton pourcentage.
    Du coup, j’ai opté pour l’utilisation d’un tableau que je définis en script de document. Il suffit de modifier le résultat (32).
    :Smiley01:

    #58325
    Merlin
    Maître des clés

    :bravo:

    #58326
    nitherrien
    Membre

    Wow! Merci Vraiment impressionnant!

    Petite dernière question!

    Dans mon école. Nous avons un formulaire à compléter à la main. L’enseignant doit entrer une cote pour chaque critère (A, B, C et D). C’est la première étape. Ensuite il doit calculer la somme /32 et utiliser le tableau pour inscrire la note sur 7 et après sur 100.

    J’ai voulu créer un formulaire pdf, car croyez-le ou non, chaque année des enseignants font des erreurs dans le calcul sur 32 et des erreurs de lecture du tableau. Ainsi, avec un script, on règle le problème.

    Donc je voulais avoir un formulaire où le prof n’a qu’a entrer 4 résultats (0 à 8) pour un max de 32. Je ne veux pas qu’il entre directement la somme sur 32 pour éviter les erreurs. Je voudrais que le formulaire fasse la somme sur 32 et convertisse avec votre script.

    J’ai pris votre maquette et j’ai fait des tests en ajoutant quatre boîtes de textes (nombres) et en faisant calculer pour la boîte A la somme des quatre boîtes de texte. J’obtiens la somme, mais les notes /7 et /100 qui apparaissent ne correspondent plus aux bonnes lignes du tableau.

    J’ai essayé de comprendre le langage et les codes…je suis un gros nul. Je n’y arrive pas.

    Merci quand même…

    Vous m’avez donné le goût d’en apprendre davantage sur la programmation.

    Je suis très reconnaissant de votre temps. Merci beaucoup.

    Nic

    #58327
    Merlin
    Maître des clés

    Bonjour,

    Essaye le ci-joint.
    :Smiley15:

    #58328
    nitherrien
    Membre

    Bonjour Merlin,

    Merci pour le formulaire.

    Cependant, le tableau de conversion /7 et /100 pour la note /32 n’est pas une moyenne. La difficulté réside dans les intervalles non constants. Brumbies l’avait remarqué et c’est ça le casse-tête. C’est une façon assez particulière de transformer les résultats, j’en convient, mais ce tableau de conversion nous est imposé…

    Mon formulaire idéal (exemple):

    L’enseignant entre (comme tu le permets Merlin) quatre résultats sur /8 (c’est la seule chose qu’il peut entrer).

    Sur le formulaire, on voit:

    total /32 (calculé par la formulaire, une somme, commande facile à écrire)
    total /7 (calculé à partir du résultat /32 en tenant compte du tableau de conversion, pas une moyenne)
    total / 100 (calculé à partir du résultat /32 en tenant compte du tableau de conversion, pas une moyenne)

    Je crois que c’est un peu trop compliqué avec le tableau de conversion.

    Je ne veux plus vous déranger… Merci Merlin et Brumbies pour votre bon travail.

    Je vais faire calculer la somme /32 par le formulaire et je vais demander aux enseignants d’entrer manuellement la note /7 et /100.

    Merci pour tout

    Nic

    #58329
    brumbies
    Membre

    Bonsoir,

    Le document de Merlin permet de te donner le script pour additionner les 4 notes à renseigner. En le combinant au miens on obtient le doc ci-joint.

    C’est sans doute ce que tu as fait mais attention à bien vérifier l’ordre de calcul de tes champs de formulaires, sinon effectivement ça ne fonctionne pas… ou plutot avec un décalage de 1 saisie (donc inutile)
    accessible dans la acrobat pro XI : formulaire / modifier / autres taches / définir l’ordre de calcul

    :Smiley01:
    PS: j’ai mis les champs de calcul en lecture seul

    #58330
    nitherrien
    Membre

    UN GROS MERCI à Brumbies,

    Ta programmation est parfaite.

    :bravo: :Smiley01: :Smiley01: :Smiley01: :Smiley01: :Smiley01: :Smiley01: :Smiley01: :Smiley01: :Smiley01:

    Je suis vraiment content…

    Nic

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