Donnez vie à vos documents numériques !
 

Anxionet

Toutes mes réponses sur les forums

Affichage d’1 réponse (sur un total de 1)
  • Auteur
    Réponses
  • Anxionet
    Membre

    Bonjour;
    J’essai d’utiliser ce script pour une formulaire avec une seule couple. Ma question est très simple, peut être pour vous, mais je n’y connais pas beaucoup à ce sujet.
    Où je dois coller le premier script?
    Le deuxième pour le remplissage de la liste fille, j’ai vu qui va sur l’onglet format, mais pour le premier je ne vois pas où le coller. Merci de votre aide !

    Nous sommes donc sous Acrobat PRO (versions 7,8,9), le formulaire a été développé avec AcroForm.
    Deux scripts font le travail:
    Le premier, (qui ne travaille qu’une fois à l’ouverture du document par exemple) assure le remplissage des items des sélecteurs (listes déroulantes mères) ainsi que la construction des tables Liste(x,y)
    x est l’index du couple mere/fille.
    y est l’index de l’occurence mère.

    function RemplissageMere()
    {
    //Remplissage du premier menu déroulant Liste1:
    console.clear();
    //Paramétrage du nombre de couples mere/fille du document
    NbreCouples=5;
    //On définit les tableaux:
    Selecteur=new Array();
    Liste=new Array();
    indexCouple=1;
      while (indexCouple<=NbreCouples)
      {
      Selecteur[indexCouple]=new Array();
      Liste[indexCouple]=new Array();
      indexCouple=indexCouple+1;
      }
    //On définit les listes mères/filles (autant de Listes filles que d’items du Selecteur mère), le nombre d’items est libre
    //Premier couple par exemple:
    Selecteur[1]=[“Garçons”,”Filles”]
    Liste[1][0]=[“Jean”,”Alain”,”François”,”Pierre”,”Damien”,”Alex”,”Mike”]
    Liste[1][1]=[“Brigitte”,”Nicole”,”Marie”,”Julie”,”Cécile”,”Marion”,”Diane”,”Judith”,”Samia”,”Colette”,”Christine”]
    //Fin du premier couple
    //Second couple pour exemple:
    Selecteur[2]=[“France”,”Allemagne”,”Italie”,”Espagne”,”Belgique”]
    Liste[2][0]=[“Paris”,”Bordeaux”,”Lille”,”Strasbourg”,”Lyon”,”Grenoble”]
    Liste[2][1]=[“Berlin”,”Bonn”,”Munich”,”Brême”];
    Liste[2][2]=[“Rome”,”Milan”,”Gênes”,”Bologne”];
    Liste[2][3]=[“Madrid”,”Barcelonne”,”Valence”];
    Liste[2][4]=[“Bruxelles”,”Gand”,”Namur”];
    //Fin du second couple
    //Couple 3 pour exemple:
    Selecteur[3]=[“Europe”,”Amérique”]
    Liste[3][0]=[“Bruxelles”,”Paris”,”Oslo”,”Londres”,”Berlin”,”Madrid”,”Rome”,”Athène”,”Milan”]
    Liste[3][1]=[“New-York”,”Montreal”,”Toronto”,”La Paz”,”Panama”];
    //Fin du couple 3.
    //Couple 4 pour exemple:
    Selecteur[4]=[]
    Liste[4][0]=[]
    //Fin du couple 4
    //Couple 5 pour exemple:
    Selecteur[5]=[];
    Liste[5][0]=[];
    //Fin du couple 5
    //………………………..Autres définitions si nécessaire.
    //Remplissage des listes mères (sélecteurs)
    indexCouple=1;
      while (indexCouple<=NbreCouples)
      {
      this.getField(“ListeMere”+indexCouple).clearItems();
      this.getField(“ListeFille”+indexCouple).clearItems();
      indexItem=0;
        while(indexItem    {
        this.getField(“ListeMere”+indexCouple).insertItemAt(Selecteur[indexCouple][indexItem],indexItem,indexItem)
        indexItem=indexItem+1;
        }
      indexCouple=indexCouple+1;
      }
    //Fin remplissage Liste mère
    }

    Un second script général, lançé par les sélecteurs, met à jour les listes filles:
    Attention à son mode de lancement.onglet Format>
    Catégorie de format>Personnalisé
    Script de touches personnalisé>

    function RemplissageFille()
    {
    console.clear();
    //On définit les items de Liste fille de rang indexCouple à chaque fois que le sélecteur mère est solliscité:
    //Nom du sélecteur solliscité:
    NomSelecteur=event.target.name;
    console.println(“Sélecteur activé:”+NomSelecteur)
    //Détermination du rang:
    longueuralpha=”ListeMere”.length;
    console.println(“Longueur de la partie alpha:”+longueuralpha)
    indexCouple=NomSelecteur.substring(longueuralpha,NomSelecteur.length);
    console.println(“index du couple:”+indexCouple)
    ffille=this.getField(“ListeFille”+indexCouple);
    console.println(“Liste mise à jour: ListeFille”+indexCouple)
    ffille.delay=true;
    ffille.clearItems();
    indexItem=0;
    while(indexItem {
    ffille.insertItemAt(Liste[indexCouple][event.changeEx][indexItem],indexItem,indexItem)
    indexItem=indexItem+1;
    }
    ffille.currentValueIndices=0;
    ffille.delay=false;
    }

Affichage d’1 réponse (sur un total de 1)