Partager via


Utilisation de paramètres dans les rapports

Vous utilisez des paramètres dans les rapports pour contrôler les données récupérées en invitant l’utilisateur à indiquer une valeur ou un ensemble de valeurs lorsque l’utilisateur exécute le rapport. La requête d’ensemble de données récupère uniquement les données qui sont demandées par l’utilisateur. Vous pouvez également ajouter des paramètres masqués et spéciaux dans les rapports qui n’invitent pas l’utilisateur à indiquer des éléments, mais qui peuvent être utilisés pour des opérations comme le filtrage et l’extraction dynamique de données.

Note

La longueur maximale des valeurs de paramètre qui sont transmises depuis Microsoft Dynamics 365 Customer Engagement (on-premises) est de 2 000 caractères. Par exemple, si vous exécutez un rapport et créez un filtre de données via l’interface utilisateur Recherche avancée, l’expression de filtre en résultant qui est transmise à un paramètre de filtre ne doit pas dépasser 2 000 caractères. Il n’y a aucune limite maximale au nombre de paramètres que vous pouvez spécifier. Cependant, il est possible que vous deviez limiter la longueur de la chaîne dans la ligne d’URL et le nombre de paramètres pour satisfaire les besoins d’un navigateur particulier.

Ajout de paramètres

Vous pouvez ajouter des paramètres à un rapport pour définir les paramètres individuels d’un rapport, transmettre les informations via une requête, ou permettre l’accès aux paramètres utilisateur, notamment les paramètres CRM_CurrencySymbol et CRM_CurrencyPositivePattern.

L’élément <ReportParameter> est un élément dans le fichier de définition de rapport (RDL) utilisé pour décrire un paramètre individuel du rapport. L’élément <QueryParameter> contient des informations sur un paramètre individuel qui est transmis à la source de données dans le cadre d’une requête. Le code XML suivant provenant du fichier du RDL du rapport Résumé du compte montre comment utiliser les paramètres ReportParameter et QueryParameter.

<ReportParameter Name="CRM_FilteredAccount">  
  <DataType>String</DataType>  
    <Nullable>true</Nullable>  
    <DefaultValue>  
      <Values>  
         <Value>select * from FilteredAccount</Value>  
      </Values>  
    </DefaultValue>  
    <AllowBlank>true</AllowBlank>  
    <Prompt>CRM_FilteredAccount</Prompt>  
</ReportParameter>  
<Query>  
   <rd:UseGenericDesigner>true</rd:UseGenericDesigner>  
   <CommandText>declare @sql as nVarchar(max)  
      set @sql = '  
      SELECT top 10 CAST(accountid as nvarchar(100)) as AccountID,  
      name, '''' as None  
      FROM (' + @FilteredAccount + ') as fa'  
      exec(@sql)  
   </CommandText>  
   <QueryParameters>  
      <QueryParameter Name="@FilteredAccount">  
         <Value>=Parameters!FilteredAccount.Value</Value>  
      </QueryParameter>  
   </QueryParameters>  
   <DataSourceName>CRM</DataSourceName>  
</Query>  

Les exemples suivants expliquent comment utiliser les paramètres QueryParameter et ReportParameter dans un rapport Fetch.

<ReportParameter Name="FilteredAccount">  
      <DataType>String</DataType>  
      <Prompt>Filtered Account</Prompt>  
            <DefaultValue>  
                  <Values>  
                        <Value>  
                              <fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="false">  
                              <entity name="account">  
                              <all-attributes/>  
                              </entity>  
                              </fetch>  
                        </Value>  
                  </Values>  
            </DefaultValue>  
    </ReportParameter>  
<Query>  
        <DataSourceName>DataSource1</DataSourceName>  
        <CommandText>  
                  <fetch>   
                  <entity name="account" enableprefiltering="true" prefilterparametername="FilteredAccount">  
                  <attribute name="accountid" />  
                  <attribute name="name" />  
                  </entity>  
                  </fetch>  
            </CommandText>  
        <QueryParameters>  
          <QueryParameter Name="FilteredAccount">  
            <Value>=Parameters!FilteredAccount.Value</Value>  
          </QueryParameter>  
        </QueryParameters>  
        <rd:UseGenericDesigner>true</rd:UseGenericDesigner>  
      </Query>  

Paramètres masqués

Le concepteur de rapports dans Visual Studio a une prise en charge intégrée des paramètres masqués. En outre, vous pouvez masquer les paramètres en ajoutant un préfixe CRM_ au nom du paramètre dans un rapport. Par défaut, les paramètres avec un préfixe CRM_ sont masqués lorsque le rapport est publié. Lorsque vous exécutez ce rapport, vous n’êtes pas invité à entrer des valeurs de paramètre pour les paramètres masqués.

Paramètres spéciaux

Le tableau suivant montre les paramètres masqués spéciaux que vous pouvez utiliser dans vos rapports.

Paramètre Description
CRM_FilterText Contient la valeur du texte de filtre qu’un utilisateur de rapport crée de façon interactive dans la visionneuse de rapports lorsque l’utilisateur exécute un rapport. Le paramètre figure dans une zone de texte de critère de filtrage qui se trouve dans l’en-tête du rapport. La valeur initiale est définie sur le filtre par défaut.
CRM_URL Défini sur l’URL de l’application. Utilisez ce paramètre lors de l’extraction.
CRM_FilteredEntity Utilisé dans une expression de requête pour activer le préfiltrage des données (via la Recherche avancée).

Vous devez créer tous les paramètres dans un rapport avant de pouvoir y faire référence. Les valeurs de ces paramètres spéciaux sont renseignées par Customer Engagement (on-premises) lorsque vous exécutez le rapport.

Paramètres de format supplémentaires

Le tableau suivant contient des paramètres supplémentaires que vous pouvez utiliser dans les rapports. Parmi ceux-ci se trouvent les paramètres qui permettent d’accéder aux informations des paramètres de nombre de l’utilisateur. Vous pouvez utiliser ces valeurs pour mettre en forme et afficher les valeurs numériques. Ces paramètres sont semblables aux valeurs spécifiées dans la classe NumberFormatInfo. Utilisez ces paramètres dans les rapports personnalisés pour mettre en forme les données en fonction des paramètres utilisateur.

Paramètre Description
CRM_FullName Le nom complet de l’utilisateur au nom duquel le rapport est exécuté.
CRM_UserTimeZone Le nom du fuseau horaire de l’utilisateur, par exemple, Heure normale du Pacifique.
CRM_UILanguageId Le paramètre régional (LCID) actuel de l’utilisateur.
CRM_YearStartWeekCode La première semaine de l’année utilisée dans les applications Dynamics 365 for Customer Engagement.
CRM_WeekStartDayCode Le premier jour de la semaine utilisé dans Customer Engagement.
CRM_FiscalCalendarStart La date de début de l’exercice utilisée dans Customer Engagement.
CRM_FiscalPeriodType Indique comment l’exercice est divisé (Trimestriellement, Mensuellement, Annuellement, etc.)
CRM_FiscalYearDisplayCode Détermine si le nom de l’exercice est affiché selon sa date de début ou de fin.
CRM_FiscalYearPeriodConnect Indique comment l’exercice et la période fiscale sont connectés lorsqu’ils sont affichés ensemble.
CRM_FiscalYearFormat Indique comment le nom de l’exercice s’affiche.
CRM_FiscalPeriodFormat Indique comment la période fiscale s’affiche.
CRM_FiscalYearPrefixFormat Spécifie si un préfixe est lié à l’exercice quand il s’affiche.
CRM_FiscalYearSuffixFormat Spécifie si un suffixe est lié à l’exercice quand il s’affiche.
CRM_CurrencyDecimalPrecision La précision décimale de devise.
CRM_CurrencySymbol Le symbole monétaire de l’organisation.
CRM_CurrencyPositivePattern Le modèle de format des valeurs monétaires positives.
CRM_CurrencyNegativePattern Le modèle de format des valeurs monétaires négatives.
CRM_NumberDecimalDigits Le nombre de décimales à utiliser dans les valeurs numériques.
CRM_NumberDecimalSeperator La chaîne qui sert de séparateur décimal dans les valeurs numériques.
CRM_NumberNegativePattern Le modèle de format pour les valeurs numériques négatives.
CRM_NumberGroupSizes Le nombre de chiffres dans chaque groupe à gauche de la virgule dans les valeurs numériques.
CRM_NumberGroupSeperator La chaîne qui sépare les groupes de chiffres à gauche de la virgule dans les valeurs numériques.
CRM_DateSeparator La chaîne qui sépare les composants d’une date, comme l’année, le mois et le jour.
CRM_TimeSeparator La chaîne qui sépare les composants d’une heure, comme l’heure, les minutes et les secondes.
CRM_AMDesignator La chaîne qui sépare les composants d’une heure, comme l’heure, les minutes et les secondes.
CRM_PMDesignator L’indicateur pour les heures qui sont « post meridiem » (après-midi).
CRM_ShortDatePattern Le modèle de format pour une valeur de date courte associée au modèle de format « d ».
CRM_LongDatePattern Le modèle de format pour une valeur de date longue associée au modèle de format « D ».
CRM_ShortTimePattern Le modèle de format pour une valeur d’heure courte associée au modèle de format « t ».
CRM_MonthDayPattern Le modèle de format pour les valeurs de mois et de jour associées aux modèles de format « m » et « M ».

Voir aussi

Guide sur les rapports et analyses
Publier les rapports