Freigeben über


Verwenden von Parametern in Berichten

Sie können Parameter in Berichten verwenden, um die Daten zu steuern, die abgerufen werden, indem Sie den einen Benutzer auffordern, einen Wert oder einen Satz von Werten anzugeben, wenn der Benutzer den Bericht ausführt. Die Datasetabfrage ruft nur die Daten ab, die vom Benutzer angefordert werden. Sie können auch ausgeblendete und spezielle Parameter in den Berichten hinzufügen, die den Benutzer nicht zu einer Eingabe auffordern, jedoch für Vorgänge wie Datenfilterung und dynamisches Drillthrough verwendet werden können.

Notiz

Die maximale Länge der Parameterwerte, die von Microsoft Dynamics 365 Customer Engagement (on-premises) eingegeben werden kann, ist 2000 Zeichen. Wenn Sie zum Beispiel einen Bericht ausführen und einen Datenfilter über die Benutzerschnittstelle Erweiterte Suche erstellen, darf der resultierende Filterausdruck, der einem Filterparameter übergeben werden kann, 2.000 Stellen nicht überschreiten. Es gibt keine Höchstgrenze für die Anzahl der Parameter, die Sie angeben können. Allerdings müssen Sie möglicherweise die Länge der Zeichenfolgen auf der URL-Zeile und die Anzahl der Parameter begrenzen, um die Anforderungen eines bestimmten Browsers zu erfüllen.

Hinzufügen von Parametern

Sie können einem Bericht Parameter hinzufügen, um die einzelnen Parameter eines Berichts zu definieren, Informationen über eine Abfrage zu übergeben, oder Zugriff auf Benutzereinstellungen wie CRM_CurrencySymbol- und CRM_CurrencyPositivePattern-Parameter zu ermöglichen.

Der <ReportParameter> ist ein Element in der Datei Berichtsdefinition (RDL), die verwendet wird, um einen einzelnen Parameter im Bericht zu beschreiben. Der <QueryParameter> enthält Informationen zu einem einzelnen zur Parameter, der der Datenquelle als Teil einer Abfrage übergeben werden kann. Der folgende XML-Code aus der RDL-Datei des Firmenzusammenfassungsberichts zeigt, wie die gesammelten ReportParameter- und QueryParameter-Parameter verwendet werden.

<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>  

Die folgenden Beispiele veranschaulichen, wie die QueryParameter und ReportParameter-Parameter in einem Fetch-basierten Bericht verwendet werden.

<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>  

Ausgeblendete Parameter

Der Berichtsdesigner in Visual Studio besitzt integrierte Unterstützung für ausgeblendete Parameter. Darüber hinaus können Sie Parameter ausblenden, indem Sie dem Parameternamen in einem Bericht ein CRM_-Präfix hinzufügen. Standardmäßig sind die Parameter mit einem CRM_-Präfix bei der Veröffentlichung des Berichts ausgeblendet. Wenn Sie den Bericht ausführen, werden Sie nicht aufgefordert, Parameterwerte für die ausgeblendeten Parameter einzugeben.

Spezielle Parameter

In der folgenden Tabelle sind die Speicherorte speziellen ausgeblendeten Parameter dargestellt, die Sie in Berichten den verwenden können.

Parameter Beschreibung
CRM_FilterText Enthält den Wert des Filtertexts, den ein Berichtsbenutzer interaktiv im Berichts-Viewer erstellt, wenn der Benutzer einen Bericht ausführt. Der Parameter steht in einem Zusammenfassungstextfeld, das im Berichtskopf enthalten ist. Der Anfangswert ist auf den Standardfilter festgelegt.
CRM_URL Legen Sie die URL der App fest. Verwenden Sie diesen Parameter beim Drillthrough.
CRM_FilteredEntity Verwendung in einem Abfrageausdruck, um Datenvorfiltern zu aktivieren (durch Erweiterte Suche).

Sie müssen alle Parameter in einem Bericht erstellen, bevor Sie auf sie verweisen können. Die Werte dieser speziellen Parameter werden von Customer Engagement (on-premises) ausgefüllt, wenn Sie den Bericht ausführen.

Zusätzliche Formatparameter

Die folgenden Tabelle enthält zusätzliche Parameter, die Sie in den Berichten verwenden können. Unter diesen gibt es Parameter, die Zugriff auf die Zahleneinstellungsinformationen der Benutzer gewährt. Sie können diese Werte verwenden, um die numerischen Werte zu formatieren und anzuzeigen. Diese Parameter sind vergleichbar mit den Werten, die in der NumberFormatInfo-Klasse angegeben wurden. Verwenden Sie diese Parameter in benutzerdefinierten Berichten, um die Daten entsprechend den Benutzereinstellungen zu formatieren.

Parameter Beschreibung
CRM_FullName Der vollständige Name des Benutzers, in dessen Auftrag der Bericht ausgeführt wird.
CRM_UserTimeZone Zeitzonenname des Benutzers, z. B. Pacific Standard Time.
CRM_UILanguageId Aktuelles Gebietsschema des Benutzers (LCID).
CRM_YearStartWeekCode Die erste Woche des Jahres, die in Dynamics 365 for Customer Engagement-Apps verwendet wird.
CRM_WeekStartDayCode Die erste Tag der Wochentag, die im Customer Engagement verwendet wird.
CRM_FiscalCalendarStart Das Startdatum des Geschäftsjahrs, das in Customer Engagement verwendet wird.
CRM_FiscalPeriodType Gibt an, wie das Geschäftsjahr unterteilt wird, vierteljährlich, monatlich, jährlich usw.
CRM_FiscalYearDisplayCode Legt fest, ob der Name des Geschäftsjahrs basierend auf seinem Start- oder Enddatum angezeigt wird.
CRM_FiscalYearPeriodConnect Gibt an, wie das Geschäftsjahr und die Buchhaltungsperiode verbunden sind, wenn sie zusammen angezeigt werden.
CRM_FiscalYearFormat Gibt an, wie der Namen des Geschäftsjahrs angezeigt wird.
CRM_FiscalPeriodFormat Gibt an, wie die Buchhaltungsperiode angezeigt wird.
CRM_FiscalYearPrefixFormat Gibt an, ob dem Geschäftsjahr ein Präfix angefügt wird, wenn es angezeigt wird.
CRM_FiscalYearSuffixFormat Gibt an, ob dem Geschäftsjahr ein Suffix angefügt wird, wenn es angezeigt wird.
CRM_CurrencyDecimalPrecision Die Dezimalstellengenauigkeit der Währung
CRM_CurrencySymbol Das Währungssymbol der Organisation.
CRM_CurrencyPositivePattern Das Formatmuster für positive Geldbeträge.
CRM_CurrencyNegativePattern Das Formatmuster für negative Geldbeträge.
CRM_NumberDecimalDigits Die Anzahl der in numerischen Werten verwendeten Dezimalstellen.
CRM_NumberDecimalSeperator Die Zeichenfolge, die als Dezimaltrennzeichen in numerischen Werte verwendet wird.
CRM_NumberNegativePattern Das Formatmuster für negative numerische Werte.
CRM_NumberGroupSizes Die Anzahl der Ziffern in jeder Gruppe links von den Dezimalstellen in numerischen Werten.
CRM_NumberGroupSeperator Die Zeichenfolge, die Gruppen von Ziffern links von den Dezimalstellen in numerischen Werten trennt.
CRM_DateSeparator Die Zeichenfolge, die die Komponenten eines Datums, wie Monat, Jahr und Tage trennt.
CRM_TimeSeparator Die Zeichenfolge, die die Komponenten der Uhrzeit, wie Stunde, Minuten und Sekunden trennt.
CRM_AMDesignator Die Zeichenfolge, die die Komponenten der Uhrzeit, wie Stunde, Minuten und Sekunden trennt
CRM_PMDesignator Der Bezeichner für Stunden, die "post meridiem" (PM) sind.
CRM_ShortDatePattern Das Formatmuster für einen kurzen Datumswert, der dem "d"-Formatmuster zugeordnet ist.
CRM_LongDatePattern Das Formatmuster für einen langen Datumswert, der dem "D"-Formatmuster zugeordnet ist.
CRM_ShortTimePattern Das Formatmuster für einen kurzen Zeitwert, der dem "t"-Formatmuster zugeordnet ist.
CRM_MonthDayPattern Das Formatmuster für Monats- und Tagswerte, die den "m"- und "M"-Formatmustern zugeordnet sind.

Siehe auch

Berichterstellungs- und Analytik-Handbuch
Veröffentlichen von Berichten