endfetchxml |
Fin FetchXML |
|---|---|
| Liquid (Microsoft) | |
Syntaxe
|
{% fetchxml nom_variable %} <fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="false"> <entity name="contact"> <attribute name="fullname" /> <attribute name="emailaddress1" /> <order attribute="fullname" descending="false" /> </entity> </fetch> {% endfetchxml %} |
Paramètres
| Nom | Description |
|---|---|
| nom_variable | Ce paramètre permet de nommer la variable Liquid qui recevra le résultat de la requête FetchXML. Cette variable pourra être utilisée ensuite dans le gabarit. |
| contact | Ce paramètre permet de spécifier le nom de l'entité Dataverse à interroger (ici, l'entité contact). |
| fullname | Ce paramètre permet d'indiquer que l'attribut fullname de l'entité doit être retourné dans le résultat de la requête FetchXML. |
| emailaddress1 | Ce paramètre permet d'indiquer que l'attribut emailaddress1 de l'entité doit également être retourné dans le résultat de la requête FetchXML. |
Description
Cette balise permet de marquer la fin d'une requête FetchXML intégrée dans un modèle Liquid.
Remarques
- Délimite explicitement le bloc FetchXML : La balise {% endfetchxml %} sert à marquer la fin d'une requête FetchXML commencée avec {% fetchxml nom_variable %}. Cela permet au moteur Liquid de comprendre où se termine la requête et de traiter correctement son contenu comme un bloc structuré.
- Essentielle pour encapsuler correctement la syntaxe XML : Le contenu entre fetchxml et endfetchxml utilise une syntaxe XML complexe, nécessitant d'être bien délimitée pour éviter les erreurs d'interprétation. La balise endfetchxml est donc indispensable pour garantir que l'analyse du modèle Liquid reste cohérente.
- Favorise une séparation claire entre logique Liquid et structure FetchXML : En fermant explicitement le bloc avec endfetchxml, cette balise aide à maintenir une distinction nette entre les portions de code Liquid (balises, filtres, boucles) et les instructions FetchXML proprement dites. Cela améliore la lisibilité et la maintenabilité du code.
- Permet d'associer le résultat de la requête à une variable Liquid : Grâce à cette balise fermante, la requête complète peut être liée à une variable définie dans la balise d'ouverture (fetchxml nom_variable). Cette variable contiendra alors les résultats Dataverse, utilisables dans des boucles ou conditions plus loin dans le code.
- Obligatoire pour l'exécution correcte de la requête : Sans la balise endfetchxml, la requête ne sera pas reconnue comme terminée, et le moteur Liquid générera une erreur ou n'exécutera pas correctement la récupération de données. Cette balise est donc un élément structurel obligatoire.
- Utile dans les scénarios dynamiques avec des entités multiples : Dans Power Pages, on peut utiliser plusieurs blocs FetchXML dans une même page pour interroger différentes entités (exemple : contact, account, incident). La balise endfetchxml permet de bien cloisonner chaque requête et d'éviter toute confusion dans le traitement.
- Peut être combinée à des structures de contrôle Liquid : Une fois la requête terminée avec endfetchxml, la variable contenant les résultats peut être utilisée dans une boucle for, dans des conditions if/elsif, ou dans des affichages personnalisés. Cela permet une forte intégration des données avec la logique du portail.
- Améliore la robustesse du gabarit Liquid dans Power Pages : Le respect des balises d'ouverture et de fermeture, comme fetchxml et endfetchxml, est une bonne pratique permettant de produire des pages plus fiables et faciles à corriger. Une structure claire évite des erreurs subtiles lors du rendu ou des mises à jour ultérieures.
Dernière mise à jour : Mercredi, le 23 Juillet 2025