Donnez vie à vos documents numériques !
 

Modification d’extension dans un script de fonction

abracadabraPDF Forums PDF – Général Modification d’extension dans un script de fonction

  • Ce sujet est vide.
  • Créateur
    Sujet
  • #45228
    spldim
    Membre

    Bonjour le forum,

    je souhaiterai savoir s’il existe une possibilité de modifier des scripts de fonction.

    Jusqu’à présent j’utilise une multitude de scripts ( scripts 1 pour le candidat 1, etc.) et je me posais la question de savoir si à partir de la valeur récupérée dans un autre champ texte et par le biais d’un bout de script ou d’une variable rajoutée en début de fonction, voire une concaténation, donc plus qu’une seule fonction.

    ex: Champ texte”PV.ChoixCandidat” , valeur 1 si je pouvais modifier les 8 lors des appels de la fonction:

    function np8()    Old !
    {
    if ((this.getField(“PV.Cat.8″).value ==”1″)&&(choixC8==”1”)){this.getField(“PV.Note.pa.8”).value = this.getField(“0.c1.a”).value;}

    et donc fonction unique qui s’incrémente automatiquement lors des choix dans le formulaire

    function np()    New ! choix 1
    {
    if ((this.getField(“PV.Cat.1“).value ==”1″)&&(choixC8==”1”)){this.getField(“PV.Note.pa.1“).value = this.getField(“0.c1.a”).value;}

    function np()      New ! choix 2
    {
    if ((this.getField(“PV.Cat.2“).value ==”1″)&&(choixC8==”1”)){this.getField(“PV.Note.pa.2“).value = this.getField(“0.c1.a”).value;}

    Merci d’avance.
    Jacques

Affichage de 5 réponses de 1 à 5 (sur un total de 5)
  • Auteur
    Réponses
  • #59438
    Merlin
    Maître des clés

    Bonjour.

    Oui c’est possible, il faut utiliser une boucle “for”.

    Mais il a va falloir qu’un plus pointu que moi t’explique comment ça fonctionne car ce n’est pas dans mes cordes.
    :joker:

    #59439
    spldim
    Membre

    merci Merlin pour ta réponse. je me mets en position attente.
    Je précise que l’ensemble de mes champs répondent a la convention de dénomination.
    Jacques.

    #59440
    bebarth
    Maître des clés

    bonjour,
    si j’ai bien compris (encore une fois…), lorsqu’on lance la fonction, on récupère le numéro du candidat dans le champ “PV.ChoixCandidat” et la fonction n’est effectuée uniquement pour ce candidat :

    function np()
    {
    var cand = this.getField(“PV.ChoixCandidat”).value;
    if ((this.getField(“PV.Cat.”+cand).value ==”1″)&&(choixC8==”1”)){this.getField(“PV.Note.pa.”+cand).value = this.getField(“0.c1.a”).value;}

    par contre il faudrait mettre une restriction si la valeur entrée dans le champ n’est pas correcte ! (ou est stocké le nombre total de candidats ?)

    si l’on veut lancer la fonction pour tous les candidats :

    function np()
    {
    for (i = 0; i {
    if ((this.getField(“PV.Cat.”+i).value ==”1″)&&(choixC8==”1”)){this.getField(“PV.Note.pa.”+i).value = this.getField(“0.c1.a”).value;}

    }
    }

    ai-je bien compris ?
    :doute:

    #59441
    spldim
    Membre

    Bonsoir Bebarth et le forum, merci pour ta réponse en effet je cherchais milles complications alors qu’une simple variable suffit. je ne pense pas avoir de problème dans le choix car le champ “ChoixCandidats” appelle une liste déroulante permanente de 1 à 12 qui par cascade  remplit mes champs de formulaire noms prénoms ddn ldn mais aussi note de théorie, de pratique stockées tout au long du document. Donc lors de la rédaction du PV final je fusionne l’ensemble de ces données dans un tableau, une ligne par candidat et par catégorie. Désormais avec un “script function” unique .

    Par contre je ne sais pas si je pourrais utiliser ta deuxième suggestion

    function np()
    {
    for (i = 0; i ! ce n’est le nombre mais le numéro du candidat que j’utilise !
    {
    if ((this.getField(“PV.Cat.”+i).value ==”1″)&&(choixC8==”1”)){this.getField(“PV.Note.pa.”+i).value = this.getField(“0.c1.a”).value;}

    }

    la fonction permet de renseigner par candidat la catégorie de test choisie (de 1 à 6), le numéro du candidat et sa note obtenue en pratique.

    #59442
    bebarth
    Maître des clés

    la boucle “for” s’incrémente de +1, aussi il faudrait récupérer les numéros des candidats et les stocker dans une variable tableau “v“.
    :geek:

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