Utilisation d’un modèle de données de formulaire :headding-anchor:work-with-form-data-model

Version
Lien de l’article
AEM as a Cloud Service
Cliquez ici
AEM 6.5
Cet article

data-integration

L’éditeur de modèle de données de formulaire fournit une interface utilisateur intuitive et des outils d’édition et de configuration d’un modèle de données de formulaire. L’éditeur vous permet d’ajouter et de configurer des objets, des propriétés et des services de modèle de données à partir des sources de données disponibles dans le modèle de données de formulaire. En outre, il vous permet de créer des objets et des propriétés de modèle de données sans sources de données et de les lier ultérieurement aux objets et propriétés de modèle de données respectifs. Vous pouvez également générer et modifier des exemples de données pour les propriétés d’objet de modèle de données que vous pouvez utiliser pour préremplir des formulaires adaptatifs et des communications interactives lors de la prévisualisation. Vous pouvez tester les objets et services de modèle de données configurés dans un modèle de données de formulaire afin de vous assurer de leur intégration correcte aux sources de données.

Si vous êtes novice en intégration de données Forms et n’avez pas configuré de source de données ou créé de modèle de données de formulaire, consultez les rubriques suivantes :

Lisez la suite pour plus de détails sur les diverses tâches et configurations que vous pouvez effectuer à l’aide de l’éditeur de modèle de données de formulaire.

NOTE
Vous devez être membre des deux groupes fdm-author et forms-user pour pouvoir créer et utiliser le modèle de données de formulaire. Contactez votre administrateur ou administratrice AEM pour devenir membre des groupes.

Ajout d’objets et de services de modèle de données :headding-anchor:add-data-model-objects-and-services

Une fois que vous avez créé un modèle de données de formulaire et ajouté des sources de données, vous pouvez utiliser l’éditeur de modèles de données pour ajouter des objets et des services de modèle de données, configurer leurs propriétés, créer des associations entre objets de modèle de données et tester le modèle et les services de données de formulaire.

Vous pouvez ajouter des objets et des services de modèle de données à partir des sources de données disponibles dans le modèle de données de formulaire. Lorsque des objets de modèle de données ajoutés apparaissent dans l’onglet Modèle, les services ajoutés apparaissent dans l’onglet Services.

Pour ajouter des objets et services de modèle de données :

  1. Connectez-vous à l’instance d’auteur AEM, accédez à Formulaires > Intégrations de données et ouvrez le modèle de données du formulaire dans lequel vous souhaitez ajouter des objets de modèle de données.

  2. Dans le volet Sources de données, développez les sources de données pour afficher les objets et services de modèle de données disponibles.

  3. Sélectionnez les objets et services de modèle de données que vous souhaitez ajouter au modèle de données de formulaire, puis appuyez sur Ajouter la sélection.

    selected-objects

    Objets et services de modèle de données sélectionnés

    note note
    NOTE
    Si votre modèle de données de formulaire contient un objet qui est un mot-clé réservé à votre base de données relationnelle, cela peut entraîner des problèmes d’ajout, de mise à jour ou de récupération de données. Ainsi, évitez d’utiliser de tels objets dans votre modèle de données de formulaire.

    L’onglet Modèle affiche une représentation graphique de tous les objets de modèle de données et de leurs propriétés ajoutées au modèle de données de formulaire. Chaque objet de modèle de données est représenté par une boîte dans le modèle de données de formulaire.

    model-tab

    L’onglet Modèle affiche les objets de modèle de données ajoutés

    note note
    NOTE
    Vous pouvez appuyer sur des zones d’objet de modèle de données et les faire glisser pour les organiser dans la zone de contenu. Tous les objets de modèle de données ajoutés dans le modèle de données de formulaire sont grisés dans le volet Sources de données.

    L’onglet Services répertorie les services ajoutés.

    services-tab

    L’onglet Services affiche les services de modèle de données

    note note
    NOTE
    En plus des objets et services de modèle de données, le document de métadonnées de service OData inclut des propriétés de navigation qui définissent l’association entre deux objets de modèle de données. Pour plus d’informations, voir Utilisation des propriétés de navigation des services OData.
  4. Sélectionnez Enregistrer pour enregistrer l’objet de modèle de formulaire.

    note note
    NOTE
    Vous pouvez appeler les services que vous avez configurés dans l’onglet Services d’un modèle de données de formulaire à l’aide des règles de formulaire adaptatif. Les services configurés sont disponibles dans l’action Appeler les services de l’éditeur de règles. Pour plus d’informations sur l’utilisation de ces services dans des règles de formulaire adaptatif, voir les règles Appeler des services et Définir la valeur des règles dans l’éditeur de règles.

Création des objets de modèle de données et des propriétés enfant :headding-anchor:create-data-model-objects-and-child-properties

Création des objets de modèle de données :headding-anchor:create-data-model-objects

Vous pouvez ajouter des objets de modèle de données à partir de sources de données configurées et vous pouvez également créer des objets ou des entités de modèle de données sans sources de données. C’est particulièrement utile si vous n’avez pas configuré de sources de données dans le modèle de données de formulaire.

Pour créer un objet de modèle de données sans sources de données :

  1. Connectez-vous à l’instance de création AEM, accédez à Formulaires > Intégrations de données et ouvrez le modèle de données du formulaire dans lequel vous souhaitez créer un objet ou une entité de modèle de données.

  2. Sélectionnez Créer une entité.

  3. Dans la boîte de dialogue Créer un modèle de données, spécifiez un nom pour l’objet de modèle de données et sélectionnez Ajouter. Un objet de modèle de données est ajouté au modèle de données de formulaire. L’objet de modèle de données ajouté n’est pas lié à une source de données et n’a aucune propriété comme indiqué dans l’image suivante.

    new-entity

Ensuite, vous pouvez ajouter des propriétés enfant dans des objets de modèle de données non liés.

Ajout des propriétés enfant :headding-anchor:child-properties

L’éditeur de modèle de données de formulaire vous permet de créer des propriétés enfant dans un objet de modèle de données. Lors de sa création, la propriété n’est liée à aucune propriété dans une source de données. Vous pouvez ensuite lier la propriété enfant à une autre propriété dans l’objet de modèle de données conteneur.

Pour créer une propriété enfant :

  1. Dans un modèle de données de formulaire, sélectionnez un objet de modèle de données puis Créer une propriété enfant.

  2. Dans la boîte de dialogue Créer une propriété enfant, spécifiez un nom et un type de données pour la propriété dans les champs Nom et Type, respectivement. Vous avez la possibilité d’indiquer un titre et une description pour la propriété.

  3. Activez Calculé si la propriété est une propriété calculée. La valeur d’une propriété calculée est évaluée en fonction d’une règle ou d’une expression. Pour plus d’informations, voir Modifier les propriétés.

  4. Si l’objet de modèle de données est lié à une source de données, la propriété enfant ajoutée est automatiquement liée à la propriété de l’objet de modèle de données parent avec le même nom et le même type de données.

    Pour lier manuellement une propriété enfant à une propriété d’objet de modèle de données, sélectionnez l’icône de navigation en regard du champ Référence de liaison. La boîte de dialogue Sélection d’objet répertorie toutes les propriétés de l’objet modèle de données parent. Sélectionnez une propriété puis l’icône en forme de coche. Notez que vous pouvez uniquement sélectionner une propriété du même type de données que la propriété enfant.

  5. Sélectionnez Terminé pour enregistrer la propriété enfant puis Enregistrer pour enregistrer le modèle de données de formulaire. La propriété enfant est maintenant ajoutée à l’objet de modèle de données.

Après avoir créé des objets et des propriétés de modèle de données, vous pouvez continuer à créer des formulaires adaptatifs basés sur le modèle de données de formulaire. Plus tard, lorsque des sources de données sont disponibles et configurées, vous pouvez lier le modèle de données de formulaire à des sources de données. La liaison sera automatiquement mise à jour dans les formulaires adaptatifs et les communications interactives associés. Pour plus d’informations sur la création de formulaires adaptatifs et de communications interactives à l’aide du modèle de données de formulaire, consultez la section Utiliser le modèle de données de formulaire.

Liaison des objets et des propriétés de modèle de données :headding-anchor:bind-data-model-objects-and-properties

Lorsque les sources de données que vous souhaitez intégrer au modèle de données de formulaire sont disponibles, vous pouvez les ajouter au modèle de données de formulaire, comme indiqué dans la section Mettre à jour les sources de données. Ensuite, procédez comme suit pour lier les objets et propriétés de modèle de données non liés :

  1. Dans le modèle de données de formulaire, sélectionnez la source de données non liée que vous souhaitez lier à une source de données.

  2. Sélectionnez Modifier les propriétés.

  3. Dans le volet Modifier les propriétés, sélectionnez l’icône de navigation en regard du champ Liaison. Cette action ouvre la boîte de dialogue Sélection d’objet qui répertorie les sources de données ajoutées dans le modèle de données de formulaire.

    select-object

  4. Développez l’arborescence des sources de données, sélectionnez un objet de modèle de données à lier puis l’icône en forme de coche.

  5. Sélectionnez Terminé pour enregistrer les propriétés, puis sélectionnez Enregistrer pour enregistrer le modèle de données du formulaire. L’objet de modèle de données est maintenant lié à une source de données. Notez que l’objet de modèle de données n’est plus marqué comme Non lié.

    bound-model-object

Configuration des services :headding-anchor:configure-services

Pour lire et écrire des données pour un objet de modèle de données, procédez comme suit pour configurer les services en lecture et en écriture :

  1. Cochez la case en haut d’un objet de modèle de données pour le sélectionner et sélectionnez Modifier les propriétés.

    edit-properties

    Modification des propriétés pour configurer les services de lecture et d’écriture pour un objet de modèle de données

    La boîte de dialogue Modifier les propriétés s’ouvre.

    edit-properties-2

    Boîte de dialogue Modifier les propriétés

    note note
    NOTE
    En plus des objets et services de modèle de données, le document de métadonnées de service OData inclut des propriétés de navigation qui définissent l’association entre deux objets de modèle de données. Lorsque vous ajoutez une source de données de service OData à un modèle de données de formulaire, un service est disponible dans Modèle de données de formulaire pour toutes les propriétés de navigation dans un objet de modèle de données. Vous pouvez utiliser ce service pour lire les propriétés de navigation de l’objet de modèle de données correspondant.
    Pour plus d’informations sur l’utilisation du service, voir Utilisation des propriétés de navigation des services OData.
  2. Activez/désactivez Objet de niveau supérieur pour spécifier si l’objet de modèle de données est un objet de modèle de niveau supérieur.

    Les objets de modèle de données configurés dans un modèle de données de formulaire peuvent être utilisés dans l’onglet Objets de modèle de données de l’explorateur de contenu d’un formulaire adaptatif basé sur le modèle de données de formulaire. Lorsque vous ajoutez une association entre deux objets de modèle de données, l’objet de modèle de données à associer est imbriqué sous l’objet de modèle de données auquel vous l’associez dans l’onglet Objets de modèle de données. Si le modèle de données imbriqué est un objet de niveau supérieur, il apparaît également séparément dans l’onglet Objets de modèle de données. Par conséquent, vous en verrez deux entrées, l’une à l’intérieur et l’autre à l’extérieur de la hiérarchie imbriquée, ce qui pourrait perturber les personnes chargées de la création de formulaires. Pour que l’objet de modèle de données associé apparaisse uniquement dans la hiérarchie imbriquée, désactivez la propriété Objet de niveau supérieur.

  3. Sélectionnez les services de lecture et d’écriture pour les objets de modèle de données sélectionnés. Les arguments pour les services apparaissent.

    read-write-services

    Services de lecture et d’écriture configurés pour la source de données des employés

  4. Sélectionnez aem_6_3_edit pour l’argument de service de lecture afin de lier l’argument à une valeur Attribut du profil utilisateur, Attribut de requête ou Littéral et spécifiez la valeur de liaison.

  5. Sélectionnez Terminé pour enregistrer l’argument, Terminé pour enregistrer les propriétés, puis Enregistrer pour enregistrer le modèle de données de formulaire.

Liaison des arguments du service de lecture :headding-anchor:bindargument

Liez l’argument du service de lecture à une valeur Attribut du profil utilisateur, Attribut de requête ou Littéral en fonction d’une valeur de liaison. La valeur est transmise au service en tant qu’argument pour récupérer les détails associés à la valeur spécifiée à partir de la source de données.

Valeur Littéral :headding-anchor:literal-value

Sélectionnez Littéral dans le menu déroulant Liaison à et entrez une valeur dans le champ Valeur de liaison. Les détails associés à la valeur sont récupérés à partir de la source de données. Utilisez cette option pour récupérer les détails associés à une valeur statique.

Dans cet exemple, les détails associés à 4367655678, en tant que valeur de l’argument mobilenum, sont récupérés à partir de la source de données. Les détails associés, si vous transmettez la valeur d’un argument de numéro de mobile, peuvent inclure des propriétés telles que le nom du client, l’adresse du client et la ville.

Valeur Littéral

Attribut du profil utilisateur :headding-anchor:user-profile-attribute

Sélectionnez Attribut du profil utilisateur dans le menu déroulant Liaison à et saisissez le nom de l’attribut dans le champ Valeur de liaison. Les détails de l’utilisateur connecté à l’instance AEM sont récupérés à partir de la source de données en fonction du nom de l’attribut.

Le nom d’attribut spécifié dans le champ Valeur de liaison doit inclure le chemin de liaison complet jusqu’au nom d’attribut de l’utilisateur ou l’utilisatrice. Ouvrez l’URL suivante pour accéder aux détails de l’utilisateur sur CRXDE :

https://[server-name]:[port]/crx/de/index.jsp#/home/users/

Profil utilisateur

Dans cet exemple, spécifiez profile.empid dans le champ Valeur de liaison de l’utilisateur grios.

Modifier l’argument

L’argument id prend la valeur de l’attribut empid du profil utilisateur et le transmet en tant qu’argument au service de lecture. Il lit et renvoie les valeurs des propriétés associées à partir de l’objet de modèle de données de l’employé pour le empid associé à l’utilisateur connecté.

Attribut de requête :headding-anchor:request-attribute

Utilisez l’attribut de requête pour récupérer les propriétés associées à partir de la source de données.

  1. Sélectionnez Attribut de requête dans le menu déroulant Liaison à et saisissez le nom de l’attribut dans le champ Valeur de liaison.

  2. Créez une superposition pour head.jsp. Pour créer la superposition, ouvrez CRX DE et copiez le fichier https://<server-name>:<port number>/crx/de/index.jsp#/libs/fd/af/components/page2/afStaticTemplatePage/head.jsp dans https://<server-name>:<port number>/crx/de/index.jsp#/apps/fd/af/components/page2/afStaticTemplatePage/head.jsp

    note note
    NOTE
    • Si vous utilisez un modèle statique, superposez le fichier head.jsp à l’adresse suivante :
      /libs/fd/af/components/page2/afStaticTemplatePage/head.jsp
    • Si vous utilisez un modèle modifiable, superposez le fichier aftemplatedpage.jsp à l’adresse suivante :
      /libs/fd/af/components/page2/aftemplatedpage/aftemplatedpage.jsp
  3. Définissez paramMap pour l’attribut de requête. Par exemple, incluez le code suivant dans le fichier .jsp du dossier des applications :

    code language-javascript
    <%Map paraMap = new HashMap();
     paraMap.put("<request_attribute>",request.getParameter("<request_attribute>"));
     request.setAttribute("paramMap",paraMap);
    

    Par exemple, utilisez le code ci-suivant pour récupérer la valeur de petid à partir de la source de données :

    code language-javascript
    <%Map paraMap = new HashMap();
    paraMap.put("petId",request.getParameter("petId"));
    request.setAttribute("paramMap",paraMap);%>
    

Les détails sont récupérés à partir de la source de données en fonction du nom d’attribut spécifié dans la requête.

Par exemple, la spécification de l’attribut en tant que petid=100 dans la requête extrait les propriétés associées à la valeur d’attribut de la source de données.

Ajout des associations :headding-anchor:add-associations

Généralement, des associations sont créées entre des objets de modèle de données dans une source de données. L’association peut lier un objet à un ou plusieurs objets. Par exemple, plusieurs personnes à charge peuvent être associées à un employé ou une employée. Il s’agit d’une association d’un objet à plusieurs objets, désignée par 1:n sur la ligne reliant les objets de modèle de données associés. Toutefois, si une association renvoie un nom d’employé unique pour un ID d’employé donné, elle est appelée association un-à-un.

Lorsque vous ajoutez des objets de modèle de données associés d’une source de données à un modèle de données de formulaire, leurs associations sont conservées et affichées comme étant liées par des lignes fléchées. Vous pouvez ajouter des associations entre des objets de modèle de données sur des sources de données disparates dans un modèle de données de formulaire.

NOTE
Les associations prédéfinies dans une source de données JDBC ne sont pas conservées dans le modèle de données de formulaire. Créez-les manuellement.

Pour ajouter une association :

  1. Cochez la case en haut d’un objet de modèle de données pour le sélectionner et sélectionnez Ajouter une association. La boîte de dialogue Ajouter une association s’ouvre.

    ajouter-association

    note note
    NOTE
    En plus des objets et services de modèle de données, le document de métadonnées de service OData inclut des propriétés de navigation qui définissent l’association entre deux objets de modèle de données. Vous pouvez utiliser ces propriétés de navigation lors de l’ajout d’associations dans un modèle de données de formulaire. Pour plus d’informations, voir Utilisation des propriétés de navigation des services OData.

    La boîte de dialogue Ajouter une association s’ouvre.

    add-association-2

    Boîte de dialogue Ajouter une association

  2. Dans le volet Ajouter une association :

    • Spécifiez un titre pour l’association.
    • Sélectionnez le type d’association : un à un ou un à plusieurs.
    • Sélectionnez l’objet de modèle de données à associer.
    • Sélectionnez le service de lecture pour lire les données de l’objet de modèle sélectionné. L’argument de service de lecture s’affiche. Modifiez l’argument, si nécessaire, et liez-le à la propriété de l’objet de modèle de données à associer.

    Dans l’exemple suivant, l’argument par défaut pour le service de lecture de l’objet de modèle de données Personnes à charge est dependentid.

    add-association-example

    L’argument par défaut pour le service de lecture Personnes à charge est dependentid

    Toutefois, l’argument doit être une propriété commune entre l’objet de modèle de données associé, qui est Employeeid dans cet exemple. Par conséquent, l’argument Employeeid doit être lié à la propriété id de l’objet de modèle de données Employé pour extraire les détails des personnes à charge associés de l’objet de modèle de données Personnes à charge.

    add-association-example-2

    Argument mis à jour et liaison

    Sélectionnez Terminé pour enregistrer l’argument.

  3. Sélectionnez Terminé pour enregistrer l’association, puis Enregistrer pour enregistrer le modèle de données de formulaire.

  4. Répétez les étapes pour créer plus d’associations si nécessaire.

NOTE
L’association ajoutée apparaît dans la zone d’objet de modèle de données avec le titre spécifié et une ligne reliant les objets de modèle de données associés.
Vous pouvez modifier une association en cochant la case correspondante et en sélectionnant Modifier l’association.

added-association

Modification des propriétés :headding-anchor:properties

Vous pouvez modifier les propriétés des objets de modèle de données, leurs propriétés et les services ajoutés dans le modèle de données de formulaire.

Pour modifier les propriétés :

  1. Cochez la case en regard d’un objet de modèle de données, d’une propriété ou d’un service dans le modèle de données de formulaire.

  2. Sélectionnez Modifier les propriétés. Le volet Modifier les propriétés de l’objet de modèle, de la propriété ou du service sélectionné s’ouvre.

    • Objet de modèle de données  : spécifiez les services de lecture et d’écriture et modifiez les arguments.
    • Propriété  : spécifiez le type, le sous-type et le format de la propriété. Vous pouvez également spécifier si la propriété sélectionnée est la clé principale de l’objet de modèle de données.
    • Service  : spécifiez l’objet de modèle d’entrée, le type de sortie et les arguments du service. Pour un service Get, vous pouvez spécifier s’il doit renvoyer un tableau.

    edit-properties-service

    Boîte de dialogue Modifier les propriétés pour un service Get

  3. Sélectionnez Terminé pour enregistrer les propriétés, puis Enregistrer pour enregistrer le modèle de données de formulaire.

Créer des propriétés calculées :headding-anchor:computed

Une propriété calculée est celle dont la valeur est calculée sur la base d’une règle ou d’une expression. À l’aide d’une règle, vous pouvez définir la valeur d’une propriété calculée sur une chaîne littérale, un nombre, le résultat d’une expression mathématique ou la valeur d’une autre propriété dans le modèle de données de formulaire.

Par exemple, vous pouvez créer une propriété calculée FullName dont la valeur est le résultat de la concaténation des propriétés existantes FirstName et LastName. Pour ce faire :

  1. Créez une propriété nommée FullName dont le type de données est Chaîne.

  2. Activez Calculé et sélectionnez Terminé pour créer la propriété.

    calculé

    La propriété calculée FullName est créée. Identifiez l’icône en regard de la propriété comme illustration d’une propriété calculée.

    prop-calculée

  3. Sélectionnez la propriété FullName puis Modifier la règle. Une fenêtre Éditeur de règles s’ouvre.

  4. Dans la fenêtre Éditeur de règles, sélectionnez Créer. Une fenêtre de règles Définir la valeur s’ouvre.

    Dans la liste déroulante Sélectionner une option, sélectionnez Expression mathématique. Les autres options disponibles sont Objet de modèle de données de formulaire et Chaîne.

  5. Dans l’expression mathématique, sélectionnez FirstName et LastName dans les premier et second objets, respectivement. Sélectionnez plus en tant qu’opérateur.

    Sélectionnez Terminé, puis Fermer pour fermer la fenêtre de l’éditeur de règles. La règle se présente comme suit :

    règle

  6. Sur le modèle de données de formulaire, sélectionnez Enregistrer. La propriété calculée est configurée.

Utilisation des propriétés de navigation des services OData :headding-anchor:work-with-navigation-properties-of-odata-services

Dans les services OData, les propriétés de navigation sont utilisées pour définir des associations entre deux objets de modèle de données. Ces propriétés sont définies sur un type d’entité ou un type complexe. Par exemple, dans l’extrait suivant du fichier de métadonnées des exemples de services OData TripPin, l’entité de personne contient trois propriétés de navigation : Friends, BestFriend et Trips.

Pour plus d’informations sur les propriétés de navigation, voir la documentation OData.

<edmx:Edmx xmlns:edmx="https://docs.oasis-open.org/odata/ns/edmx" Version="4.0">
<script/>
<edmx:DataServices>
<Schema xmlns="https://docs.oasis-open.org/odata/ns/edm" Namespace="Microsoft.OData.Service.Sample.TrippinInMemory.Models">
<EntityType Name="Person">
<Key>
<PropertyRef Name="UserName"/>
</Key>
<Property Name="UserName" Type="Edm.String" Nullable="false"/>
<Property Name="FirstName" Type="Edm.String" Nullable="false"/>
<Property Name="LastName" Type="Edm.String"/>
<Property Name="MiddleName" Type="Edm.String"/>
<Property Name="Gender" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.PersonGender" Nullable="false"/>
<Property Name="Age" Type="Edm.Int64"/>
<Property Name="Emails" Type="Collection(Edm.String)"/>
<Property Name="AddressInfo" Type="Collection(Microsoft.OData.Service.Sample.TrippinInMemory.Models.Location)"/>
<Property Name="HomeAddress" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Location"/>
<Property Name="FavoriteFeature" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Feature" Nullable="false"/>
<Property Name="Features" Type="Collection(Microsoft.OData.Service.Sample.TrippinInMemory.Models.Feature)" Nullable="false"/>
<NavigationProperty Name="Friends" Type="Collection(Microsoft.OData.Service.Sample.TrippinInMemory.Models.Person)"/>
<NavigationProperty Name="BestFriend" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Person"/>
<NavigationProperty Name="Trips" Type="Collection(Microsoft.OData.Service.Sample.TrippinInMemory.Models.Trip)"/>
</EntityType>

Lorsque vous configurez un service OData dans un modèle de données de formulaire, toutes les propriétés de navigation d’un conteneur d’entité sont mises à disposition via un service dans le modèle de données de formulaire. Dans cet exemple de service ODP TripPin, les trois propriétés de navigation du conteneur d’entité Person peuvent être lues à l’aide d’un service GET LINK dans le modèle de données de formulaire.

Les éléments suivants mettent en évidence le service GET LINK of Person /People dans le modèle de données de formulaire, qui est un service combiné pour les trois propriétés de navigation dans l’entité Person du service TripPin OData.

nav-prop-service

Une fois que vous avez ajouté le service GET LINK à l’onglet Modèle de données de formulaire, vous pouvez modifier les propriétés pour choisir l’objet de modèle de sortie et la propriété de navigation à utiliser dans le service. Par exemple, le service GET LINK of Person /People dans l’exemple suivant utilise Trip comme objet de modèle de sortie et la propriété de navigation Trips.

edit-prop-nav-prop

NOTE
Les valeurs disponibles dans le champ Valeur par défaut de l’argument NavigationPropertyName dépendent de l’état du bouton bascule Revenir au tableau ?Bouton bascule. Lorsqu’il est activé, il affiche les propriétés de navigation du type Collection.

Dans cet exemple, vous pouvez également choisir l’objet de modèle de sortie Person et l’argument de propriété de navigation Friends ou BestFriend (selon que Revenir au tableau ? est activé ou désactivé).

edit-prop-nav-prop2

De même, vous pouvez choisir un service GET LINK et configurer ses propriétés de navigation lors de l’ajout d’associations dans le modèle de données de formulaire. Toutefois, pour pouvoir sélectionner une propriété de navigation, assurez-vous que le champ Liaison à est défini sur Littéral.

add-association-nav-prop

Génération et modification des exemples de données :headding-anchor:sample

L’éditeur de modèle de données de formulaire vous permet de générer des exemples de données pour toutes les propriétés d’objet de modèle de données, y compris les propriétés calculées, dans un modèle de données de formulaire. Il s’agit d’un ensemble de valeurs aléatoires conformes au type de données configuré pour chaque propriété. Vous pouvez également modifier et enregistrer des données qui sont conservées même si vous régénérez les données d’exemple.

Procédez comme suit pour générer et modifier des exemples de données :

  1. Ouvrez un modèle de données de formulaire et sélectionnez Modifier les données d’exemple. Cela génère et affiche les exemples de données dans la fenêtre Modifier les exemples de données.

    Génération des exemples de données

  2. Dans la fenêtre Modifier les données d’exemple, modifiez les données, si nécessaire, et sélectionnez Enregistrer.

Vous pouvez ensuite utiliser les exemples de données pour préremplir et tester des communications interactives basées sur le modèle de données de formulaire. Pour plus d’informations, reportez-vous à la section Utilisation d’un modèle de données de formulaire.

Test des objets et des services de modèle de données :headding-anchor:test-data-model-objects-and-services

Votre modèle de données de formulaire est configuré, mais avant de le mettre en service, vous pouvez vérifier si les objets et services de modèle de données configurés fonctionnent comme prévu. Pour tester les objets et les services de modèle de données :

  1. Sélectionnez un objet ou un service de modèle de données dans le modèle de données de formulaire puis sélectionnez Tester l’objet de modèle ou Tester le service, respectivement.

    La fenêtre Tester le modèle de données de formulaire s’ouvre.

    test-data-model

  2. Dans la fenêtre Tester le modèle de données de formulaire, sélectionnez l’objet ou le service de modèle de données à tester dans le volet de saisie.

  3. Indiquez une valeur d’argument dans le code de test et sélectionnez Tester. Un test réussi renvoie la sortie dans le volet Sortie.

    Résultats du test

De même, vous pouvez tester d’autres objets et services de modèle de données dans le modèle de données de formulaire.

Validation automatisée des données d’entrée :headding-anchor:automated-validation-of-input-data

Le modèle de données de formulaire valide les données reçues en tant qu’entrées lors de l’appel de l’API DermisBridge (en fonction des critères de validation disponibles dans le modèle de données de formulaire). La validation est basée sur l’indicateur ValidationOptions défini dans l’objet de requête utilisé pour appeler l’API.

L’indicateur peut être défini sur l’une des valeurs suivantes :

  • FULL  : FDM effectue la validation en fonction de toutes les contraintes.
  • OFF  : aucune validation.
  • BASIC  : FDM effectue la validation en fonction des contraintes « required » et « nullable »

Si aucune valeur n’est définie pour l’indicateur ValidationOptions, la validation BASIC est effectuée sur les données d’entrée.

Voici un exemple de définition de l’indicateur de validation sur FULL  :

operationOptions.setValidationOptions(ValidationOptions.FULL);
NOTE
La valeur que vous fournissez pour un attribut dans les données d’entrée doit correspondre au type de données défini pour l’attribut dans le document de métadonnées.
Si la valeur ne correspond pas au type de données défini pour l’attribut, l’API DermisBridge affiche une exception quelle que soit la valeur de l’indicateur ValidationOptions. Si le niveau de journal est défini sur Débogage, une erreur est consignée dans le fichier error.log.

Le modèle de données de formulaire valide les données d’entrée en fonction d’une liste de contraintes de type de données. La liste des contraintes pour les données d’entrée peut varier en fonction de la source de données.

Le tableau suivant répertorie les contraintes des données d’entrée en fonction de la source de données :

Contraintes
Description
Source de données d’entrée
required
Si la valeur est true, le paramètre doit être inclus dans les données d’entrée.
Swagger, WSDL et base de données
nullable
Si la valeur est true, la valeur du paramètre peut être définie sur Null dans les données d’entrée.
WSDL, Odata et base de données
maximum
Spécifie la limite supérieure pour les valeurs numériques. La valeur maximale spécifiée comme limite supérieure peut également être affectée au paramètre dans les données d’entrée.
Swagger et WSDL
minimum
Définit la limite inférieure pour les valeurs numériques. La valeur minimale spécifiée comme limite inférieure peut également être affectée au paramètre dans les données d’entrée.
Swagger et WSDL
exclusiveMaximum
Spécifie la limite supérieure pour les valeurs numériques. La valeur maximale spécifiée comme limite supérieure ne doit pas être affectée au paramètre dans les données d’entrée.
Swagger et WSDL
exclusiveMinimum
Définit la limite inférieure pour les valeurs numériques. La valeur minimale spécifiée comme limite inférieure ne doit pas être affectée au paramètre dans les données d’entrée.
Swagger et WSDL
minLength
Indique la limite inférieure pour le nombre de caractères inclus dans une chaîne. La valeur minimale spécifiée comme limite inférieure peut également être affectée au paramètre dans les données d’entrée.
Swagger et WSDL
maxLength
Indique la limite supérieure pour le nombre de caractères inclus dans une chaîne. La valeur maximale spécifiée comme limite supérieure peut également être affectée au paramètre dans les données d’entrée.
Swagger, WSDL, Odata et base de données
pattern
Indique une séquence fixe de caractères. La chaîne d’entrée n’est validée avec succès que si les caractères sont conformes au modèle spécifié.
Swagger
minItems
Indique le nombre minimum d’éléments dans un tableau. La valeur minimale spécifiée comme limite inférieure peut également être affectée au paramètre dans les données d’entrée.
Swagger et WSDL
maxItems
Indique le nombre maximum d’éléments dans un tableau. La valeur maximale spécifiée comme limite supérieure peut également être affectée au paramètre dans les données d’entrée.
Swagger et WSDL
uniqueItems
Si la valeur est true, tous les éléments du tableau doivent être uniques dans les données d’entrée.
Swagger
enum (chaîne)
Limite la valeur d’un paramètre dans les données d’entrée à un ensemble fixe de valeurs de chaîne. Il doit s’agir d’un tableau contenant au moins un élément, où chaque élément est unique.
Swagger, WSDL et Odata
enum (nombre)
Limite la valeur d’un paramètre dans les données d’entrée à un ensemble fixe de valeurs numériques. Il doit s’agir d’un tableau contenant au moins un élément, où chaque élément est unique.
WSDL

Dans cet exemple, les données d’entrée sont validées en fonction des contraintes maximales, minimales et requises définies dans le fichier Swagger. Les données d’entrée répondent aux critères de validation uniquement si l’ID de commande est présent et que sa valeur est comprise entre 1 et 10.

   parameters: [
   {
   name: "orderId",
   in: "path",
   description: "ID of pet that needs to be fetched",
   required: true,
   type: "integer",
   maximum: 10,
   minimum: 1,
   format: "int64"
   }
   ]

Une exception s’affiche si les données d’entrée ne répondent pas aux critères de validation. Si le niveau de journal est défini sur Débogage, une erreur est consignée dans le fichier error.log. Par exemple,

21.01.2019 17:26:37.411 *ERROR* com.adobe.aem.dermis.core.validation.JsonSchemaValidator {"errorCode":"AEM-FDM-001-044","errorMessage":"Input validations failed during operation execution.","violations":{"/orderId":["numeric instance is greater than the required maximum (maximum: 10, found: 16)"]}}

Étapes suivantes :headding-anchor:next-steps

Vous disposez d’un modèle de données de formulaire fonctionnel pouvant à présent être utilisé dans les formulaires adaptatifs et les flux de communications interactives. Pour plus d’informations, reportez-vous à la section Utilisation d’un modèle de données de formulaire.

recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2