Les sections répétables sont des panneaux qui peuvent être dynamiquement ajoutés ou supprimés dans un formulaire.  

Par exemple, lorsqu’elle dépose sa candidature pour un poste, la personne à la recherche d’un emploi fournit des informations sur son précédent poste telles que le nom de l’entreprise, le poste, le projet, etc. Les informations demandées par tous les employeurs nécessitent des sections différentes mais dont l’aspect est similaire. Dans ce scénario, le formulaire d’embauche fournit une section employeur et contient une option pour ajouter dynamiquement davantage de sections de ce type. Ces sections qui sont dynamiquement ajoutées sont appelées sections répétables.  

Pour créer des panneaux répétables, vous pouvez utiliser l’une des méthodes suivantes :

Utilisation du gestionnaire d’instances via des scripts 

  1. Dans le panneau à répéter, cliquez sur Modifier. Dans la fenêtre Modifier le composant, cliquez sur l’onglet Paramètres de répétition , puis spécifiez une valeur pour les champs Nombre maximum et Nombre minimum

    Le champ Nombre maximum spécifie le nombre maximal de fois qu’un panneau peut s’afficher sur la page. Vous pouvez spécifier la valeur -1 dans le champ Nombre maximum pour que le panneau s’affiche un nombre illimité de fois.

    Le champ Nombre minimum spécifie le nombre minimum de fois qu’un panneau peut s’afficher sur la page. Si vous spécifiez la valeur zéro dans le champ Nombre minimum, vous pouvez ultérieurement supprimer toutes les instances via des scripts une fois le rendu terminé.

    Remarque :

    Pour créer un panneau non répétable, spécifiez la valeur 1 dans les champs Nombre maximum et Nombre minimum. La mise en page en accordéon ne prend pas en charge la valeur -1 dans le champ Nombre maximum. Vous pouvez spécifier un nombre élevé pour exprimer une valeur infinie.

  2. Le parent du panneau à répéter doit contenir des boutons d’ajout et de suppression pour gérer les instances des panneaux répétables. Pour insérer des boutons dans le parent et activer des scripts sur les boutons, procédez comme suit :

    1. A partir du sidekick, faites glisser un composant Bouton jusqu’au parent du panneau. Cliquez avec le bouton droit sur le composant Bouton, puis, dans le menu contextuel, sélectionnez Modifier. La fenêtre Modifier le bouton apparaît.

    2. Dans la fenêtre Modifier le bouton, cliquez sur l’onglet Script. Dans le champ Expression de clic :

      • Pour créer un bouton d’ajout de panneau, spécifiez this.panel.instanceManager.addInstance().
      • Pour créer un bouton de suppression de panneau, spécifiez this.panel.instanceManager.removeInstance (this.panel.instanceIndex).

      Cliquez sur OK.

    3. Pour ajouter un bouton de suppression, faites glisser un autre composant Bouton et attribuez au champ Expression de clic la valeur
      this.panel.instanceManager.removeInstance(this.panel.instanceIndex).

       

Utilisation de la mise en page en accordéon pour le panneau parent  

Un panneau possède différentes options de mise en forme. La mise en page de l’option de conception en accordéon prend en charge les panneaux répétables. Pour créer un panneau répétable avec la mise en page de l’option de conception en accordéon, procédez comme suit :

  1. Dans le parent du panneau à répéter, cliquez sur Modifier. La fenêtre Modifier le composant s’ouvre. Dans la liste déroulante Mise en page du panneau, sélectionnez Mise en page pour l’option de conception en accordéon.

  2. Dans un panneau à répéter, cliquez sur Modifier. La fenêtre Modifier le composant s’ouvre. Sélectionnez l’onglet Paramètres de répétition, puis spécifiez une valeur pour les champs Nombre maximum et Nombre minimum.

    Vous pouvez désormais utiliser les boutons plus (+) et croix (x) pour ajouter ou supprimer des panneaux.

Utilisation des sous-formulaires qui se répètent du modèle de formulaire (XDP/XSD)

Un sous-formulaire répétable est similaire aux panneaux répétables dans les formulaires adaptatifs. Dans LiveCycle Designer, suivez la procédure suivante pour créer un sous-formulaire qui se répète :

 
  1. Dans la palette Hiérarchie, sélectionnez le sous-formulaire parent du sous-formulaire à répéter.
  2. Dans la palette Objet, cliquez sur l’onglet Sous-formulaire et sélectionnez Distribué dans la liste Contenu.
  3. Sélectionnez le sous-formulaire à répéter.
  4. Dans la palette Objet, cliquez sur l’onglet Sous-formulaire et sélectionnez Positionné ou Distribué dans la liste Contenu.
  5. Cliquez sur l’onglet Liaison et sélectionnez Sous-formulaire pour chaque élément.
  6. Pour spécifier le nombre minimum de répétitions, sélectionnez Min. de répétitions et saisissez un nombre dans la zone associée. Si cette option est réglée sur 0 et qu’aucune donnée n’est fournie pour les objets du sous-formulaire au moment de la fusion, le sous-formulaire n’est pas placé au cours du processus de génération du formulaire.
  7. Pour spécifier le nombre maximum de répétitions, sélectionnez Max. de répétitions et saisissez un nombre dans la zone associée. Si vous n’indiquez rien dans la zone Max, le nombre de répétitions du sous-formulaire est illimité.
  8. Pour spécifier un nombre précis de répétitions du sous-formulaire, quelle que soit la quantité de données, sélectionnez l’option Quantité initiale et tapez un nombre dans la zone associée. Si cette option est sélectionnée et s’il n’y a pas de données disponibles, ou si les données existantes sont inférieures à la valeur Quantité initiale, les occurrences vides du sous-formulaire apparaissent quand même sur le formulaire.
  9. Ajoutez deux boutons dans le sous-formulaire parent : un pour ajouter une instance et un autre pour supprimer l’instance du sous-formulaire répétable. Pour obtenir des instructions détaillées, reportez-vous à la section Créer une action.
  10. Liez maintenant le modèle de formulaire au formulaire adaptatif. Pour obtenir des instructions détaillées, reportez-vous à la section Création d’un formulaire adaptatif basé sur un modèle.
  11. Utilisez les boutons créés à l’étape 9 pour ajouter et supprimer des sous-formulaires.  

Telechargement

Utilisation des paramètres de répétition d’un schéma XML (XSD)

Vous pouvez créer des panneaux répétables à partir d’un schéma XML et de la propriété minOccurs et maxOccurs de n’importe quel élément de type complexe. Pour des informations détaillées sur le schéma XML, reportez-vous à la section Création de formulaires adaptatifs à l’aide du schéma XML en tant que modèle de formulaire.

Dans le code suivant, le panneau SampleType utilise la propriété minOccurs et maxOccurs.

<?xml version="1.0" encoding="utf-8" ?> 
    <xs:schema targetNamespace="http://adobe.com/sample.xsd"
                    xmlns="http://adobe.com/sample.xsd"
                    xmlns:xs="http://www.w3.org/2001/XMLSchema"
                >

        <xs:element name="sample" type="SampleType"/>
        
        <xs:complexType name="SampleType">
            <xs:sequence>
                <xs:element name="leaderName" type="xs:string" default="Enter Name"/>
                <xs:element name="assignmentStartDate" type="xs:date"/>
                <xs:element name="gender" type="GenderEnum"/>
                <xs:element name="noOfProjectsAssigned" type="IntType"/>
                <xs:element name="assignmentDetails" type="AssignmentDetails" 
                                            minOccurs="0" maxOccurs="10"/>
            </xs:sequence>
        </xs:complexType>

        <xs:complexType name="AssignmentDetails">
            <xs:attribute name="name" type="xs:string" use="required"/>
            <xs:attribute name="durationOfAssignment" type="xs:unsignedInt" use="required"/>
            <xs:attribute name="numberOfMentees" type="xs:unsignedInt" use="required"/>
             <xs:attribute name="descriptionOfAssignment" type="xs:string" use="required"/>
             <xs:attribute name="financeRelatedProject" type="xs:boolean"/>
       </xs:complexType>
		<xs:simpleType name="IntType">
            <xs:restriction base="xs:int">
            </xs:restriction>
        </xs:simpleType>
		<xs:simpleType name="GenderEnum">
            <xs:restriction base="xs:string">
                <xs:enumeration value="Female"/>
                <xs:enumeration value="Male"/>
            </xs:restriction>
        </xs:simpleType>
    </xs:schema>

Remarque :

Pour une mise en page autre qu’en accordéon, utilisez les composants Bouton des formulaires adaptatifs pour ajouter et supprimer des instances.

Ce produit est distribué sous licence Creative Commons Attribution - Pas d’utilisation commerciale - Partage à l’identique 3.0 non transposé  Les publications Twitter™ et Facebook ne sont pas couvertes par les dispositions Creative Commons.

Mentions légales   |   Politique de confidentialité en ligne