Accéder aux données Dataverse

Effectué

Les créateurs Power Pages peuvent créer la sortie qui comporte du contenu statique à l’aide de code HTML. De même, ils peuvent utiliser Liquid lorsqu’ils utilisent plusieurs pages et du contenu dynamique provenant de Microsoft Dataverse et qu’ils doivent faire des changements d’une page à l’autre. Les éléments Liquid font office d’espaces réservés : avant que la sortie ne soit envoyée au navigateur, les éléments Liquid sont remplacés par des données de Dataverse.

Power Pages implémente de nombreuses extensions conçues pour fonctionner avec Dataverse. Certains objets Liquid disponibles et spécifiques à Dataverse sont décrits dans le tableau suivant :

Object Description
page Fait référence à la page actuelle de requête de site web. L’objet page donne accès à des composants tels que les fils d’Ariane de la page actuelle, le titre ou l’URL de la page actuelle, par exemple {{ page.title }}, et toute autre colonne ou table associée à la ligne Power Apps sous-jacente.
user Fait référence à l’utilisateur actuel du site web, permettant l’accès à toutes les colonnes de la ligne de contact Power Apps sous-jacente. Si aucun utilisateur n’est connecté, cette variable est null.
website Fait référence au site web, permettant d’accéder à toutes les colonnes de la ligne de site web Power Apps (adx_website).
Tables génériques Un objet de table permet d’accéder aux lignes et colonnes d’une table Dataverse. Une collection de toutes les tables est appelée entities. Par exemple, {{ entities.contact[request.params.contactid].firstname }} fait référence à la colonne du prénom dans la ligne de contact identifiée par le paramètre de requête contactid.

Des balises spécifiques à Microsoft Dataverse vous permettent de charger et d’afficher les données Dataverse ou d’utiliser d’autres services d’infrastructure Power Pages. Ces balises sont des extensions spécifiques à Dataverse du langage Liquid. Certaines de ces balises sont décrites dans le tableau suivant :

Balise Description
chart Ajoute un graphique Power Apps à une page web. Pour connaître les étapes d’ajout d’un graphique Power Apps à une page web, consultez Ajouter un graphique à une page web.
powerbi Ajoute les tableaux de bord et les états Microsoft Power BI dans les pages. Pour connaître les étapes d’ajout d’un état ou tableau de bord Power BI à une page web dans le site web, consultez Ajouter un état ou tableau de bord Power BI à une page web.
entitylist Une balise de bloc Liquid qui charge une liste donnée par son nom ou son ID. Si la liste est chargée avec succès, le contenu du bloc s’affiche.
entityview Une balise de bloc Liquid qui charge une vue Dataverse donnée par son nom ou son ID. Si la vue est chargée avec succès, le contenu du bloc s’affiche.
fetchxml Permet aux utilisateurs d’interroger des données Dataverse et affiche les résultats dans une page.
codecomponent Vous permet d’intégrer des composants de code à l’aide d’une balise Liquid. Pour en savoir plus, consultez Utiliser une balise de modèle Liquid pour les composants de code.

Dans l’exemple suivant, la vue Devises actives est chargée et toutes les lignes renvoyées s’affichent. Dans le studio de conception Power Pages, ce code produit une sortie en raison des privilèges de conception implicites du créateur. Toutefois, sur le site web, l’utilisateur doit avoir les privilèges de lecture affectés sur la table devise afin que le fragment puisse renvoyer des données.

{% entityview logical_name:'transactioncurrency', name:'Active Currencies' %}
<p>We support {{ entityview.total_records }} currencies.</p>
<ul>
  {% for cur in entityview.records -%}
  <li>{{ cur.currencyname }}</li>
  {% endfor %}
</ul>
{% endentityview %}

La sortie ressemblerait à l’exemple suivant :

Nous prenons en charge quatre devises.

  • Dollar australien
  • Dollar canadien
  • Euro
  • Dollar américain

À l’aide de Liquid dans Power Pages, vous pouvez :

Dans tous ces scénarios, vous bénéficiez d’un accès dynamique aux fonctionnalités Power Pages telles que les paramètres de site, les extraits de contenu, les listes et les formulaires de base, etc.

Important

Les instructions Liquid sont uniquement traitées en tant que sortie. Liquid n’a pas la capacité d’étendre le code côté serveur qui traite des interactions utilisateur telles que les envois de formulaires.