Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
Dans le document CSDL $metadata, vous trouverez Function des éléments. Les opérations de fonction sont différentes des actions, car elles ne doivent pas modifier les données. Ils sont généralement utilisés uniquement pour récupérer des données.
Chaque fonction a un Name attribut. Ce nom fait partie de l’URL lorsque vous utilisez HTTPGET, en envoyant tous les paramètres définis pour la fonction dans l’URL de la requête.
Fonctions liées à un contexte
Tout comme les actions, les fonctions peuvent avoir un IsBound="true" attribut. Cela signifie qu’il s’agit d’une fonction liée . Les fonctions sans attribut IsBound ne sont pas liées. Une fonction liée signifie que le premier paramètre est une référence à un enregistrement de table ou à un jeu d’entités.
Lorsqu’une fonction est liée, elle aura une référence à un élément spécifique dans l’espace de noms de service. Pour utiliser la fonction, vous devez utiliser le nom qualifié complet, y compris l’espace de noms Microsoft.Dynamics.CRM. Plus d’informations : Espace de noms de service
Fonctions composables
Les fonctions peuvent avoir un IsComposable="true" attribut. Cela signifie que vous pouvez ajouter certaines options de requête système telles que $filter ou $select à l’URL pour spécifier les résultats retournés. Cette option est disponible uniquement pour des fonctions système spécifiques. Vous ne pouvez pas créer une fonction à l’aide de l’API personnalisée qui est composable.
Paramètres
Les fonctions ont généralement un ou plusieurs Parameter éléments. Chaque paramètre a les attributs suivants :
| Caractéristique | Descriptif |
|---|---|
Name |
Nom du paramètre. Le nom est unique, sauf si Function est surchargé. Plus d’informations : Fonctions surchargées. |
Type |
Type de paramètre. |
Nullable="false" |
Indique si le paramètre peut accepter une valeur Null |
ReturnType
Les fonctions doivent retourner des valeurs. Une fonction aura toujours un ReturnType élément.
| Caractéristique | Descriptif |
|---|---|
Type |
Type de paramètre. |
Nullable="false" |
Indique si la valeur peut être null. |
Exemples de définition de fonction
Voici quelques exemples fictifs de définitions montrant différents modèles de Function liaison. Chacun de ces exemples retourne une valeur entière.
Fonctions indépendantes
Fonction indépendante avec un paramètre entier Number unique.
<Function Name="UnBoundFunctionExample">
<Parameter Name="Number" Type="Edm.Int32" Nullable="false" />
<ReturnType Type="Edm.Int32" Nullable="false" />
</Function>
Fonction liée à une entité
Fonction liée à l’entité account avec un paramètre entier Number unique.
<Function Name="EntityBoundFunctionExample" IsBound="true">
<Parameter Name="entity" Type="mscrm.account" Nullable="false" />
<Parameter Name="Number" Type="Edm.Int32" Nullable="false" />
<ReturnType Type="Edm.Int32" Nullable="false" />
</Function>
Fonction liée à un jeu d’entités
Fonction liée à account EntitySet avec un paramètre entier Number unique.
<Function Name="EntityCollectionBoundFunctionExample" IsBound="true">
<Parameter Name="entityset" Type="Collection(mscrm.account)" Nullable="false" />
<Parameter Name="Number" Type="Edm.Int32" Nullable="false" />
<ReturnType Type="Edm.Int32" Nullable="false" />
</Function>
Fonctions surchargées
En règle générale, chaque fonction que vous trouvez dans le $metadata sera la seule fonction portant ce nom. Toutefois, les fonctions liées peuvent avoir plusieurs définitions lorsqu’elles sont liées à différents types. Le système RetrieveUnpublished et les fonctions RetrieveUnpublishedMultiple sont quelques exemples. Vous ne pouvez pas créer une fonction surchargée à l’aide de l’API personnalisée.
Plus d’informations : Règles de surcharge de fonction OData 4.0
Étapes suivantes
En savoir plus sur les types Complex &Enum.
Voir aussi
Utiliser l’API web Dataverse
Types d’API Web et opérations
Documents de service d’API web
EntityTypes de l’API web
Propriétés de l’API web
Propriétés de navigation de l’API web
Actions de l’API web
Types complexes et énumération de l’API web
OData version 4.0. Partie 3 : Langage de définition de schéma commun (Common Schema Definition Language, CSDL) et Errata 03, élément edm: Fonction