Bruke parametere i rapporter
Du kan bruke parametere i rapporter til å styre dataene som hentes, ved å be brukeren om en verdi eller et sett med verdier når brukeren kjører rapporten. Datasettspørringen henter bare dataene som kreves av brukeren. Du kan også legge til skjulte og spesielle parametere i rapportene som ikke ber brukere angi inndata, men kan brukes for operasjoner som for eksempel datafiltrering og dynamiske gjennomganger.
Merk
Maksimal lengde på parameterverdiene som sendes fra Microsoft Dynamics 365 Customer Engagement (on-premises), er 2 000 tegn. Hvis du kjører en rapport og oppretter et datafilter gjennom brukergrensesnittet Avansert søk, kan ikke det resulterende filteruttrykket som sendes til et filterparameter, overskride 2 000 tegn. Det er ingen maksimumsgrense for hvor mange parametere du kan angi. Det kan hende du må begrense lengden på strengen på URL-linjen og antall parametere for å oppfylle kravene til en bestemt nettleser.
Legge til parametere
Du kan legge til parametere i en rapport for å definere en rapports individuelle parametere, sende informasjon gjennom en spørring eller gi tilgang til brukerinnstillinger, for eksempel CRM_CurrencySymbol
- og CRM_CurrencyPositivePattern
parametere.
<ReportParameter> er et element i en rapportdefinisjonsfilen (RDL) som brukes til å beskrive en individuell parameter i rapporten. <QueryParameter> inneholder informasjon om en individuell parameter som sendes til datakilden som en del av en spørring. Følgende XML-kode hentet fra RDL-filen med rapporten Sammendrag av forretningsforbindelse viser hvordan du bruker ReportParameter
- og QueryParameter
-parameterne.
<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>
Eksemplet nedenfor viser hvordan du bruker QueryParameter
- og ReportParameter
-parameterne i en Fetch
-basert rapport.
<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>
Skjulte parametere
Report Designer i Visual Studio har innebygd støtte for skjulte parametere. I tillegg kan du skjule parametere ved å legge til prefikset CRM_ i parameternavnet i en rapport. Som standard er parameterne som har prefikset CRM_ skjult når rapporten er publisert. Når du kjører rapporten, blir du ikke bedt om å angi verdier for de skjulte parameterne.
Spesielle parametere
Tabellen nedenfor viser de spesielle skjulte parameterne som du kan bruke i rapportene.
Parameter | Beskrivelse |
---|---|
CRM_FilterText |
Inneholder verdien for filterteksten som en rapportbruker oppretter interaktivt i rapportvisningen når du kjører en rapport. Parameteren er i en tekstboks for filtersammendrag som er plassert i toppteksten i rapporttoppteksten. Den opprinnelige verdien er satt til standardfilteret. |
CRM_URL |
Angi URL-adressen til appen. Bruk denne parameteren til gjennomgang. |
CRM_FilteredEntity |
Bruk i et spørringsuttrykk for å aktivere forhåndsfiltrering av data (via Avansert søk). |
Du må opprette alle parametere i en rapport før du kan referere til dem. Verdiene for disse spesielle parameterne fylles ut av Customer Engagement (on-premises) når du kjører rapporten.
Flere formatparametere
Tabellen nedenfor inneholder flere parametere som du kan bruke i rapportene. Blant disse er parametere som gir tilgang til innstillingsinformasjon om brukernummer. Du kan bruke disse verdiene til å formatere og vise numeriske verdier. Parameterne ligner på verdiene som er angitt i NumberFormatInfo-klassen. Bruk disse parameterne i egendefinerte rapporter for å formatere dataene i henhold til brukerinnstillingene.
Parameter | Beskrivelse |
---|---|
CRM_FullName |
Det fullstendige navnet på brukeren som rapporten kjøres på vegne av. |
CRM_UserTimeZone |
Brukerens tidssonenavn, for eksempel Stillehavskysten (normaltid). |
CRM_UILanguageId |
Gjeldende nasjonale innstillinger (LCID) for brukeren. |
CRM_YearStartWeekCode |
Den første uken i året som brukes i Dynamics 365 for Customer Engagement-apper. |
CRM_WeekStartDayCode |
Den første dagen i uken som brukes i Customer Engagement. |
CRM_FiscalCalendarStart |
Startdatoen for regnskapsåret som brukes i Customer Engagement. |
CRM_FiscalPeriodType |
Angir hvordan regnskapsåret er inndelt – kvartalsvis, månedlig, årlig og så videre. |
CRM_FiscalYearDisplayCode |
Angir om navnet på regnskapsåret vises basert på regnskapsårets start eller slutt. |
CRM_FiscalYearPeriodConnect |
Angir hvordan regnskapsåret og regnskapsperioden skal kobles når de vises sammen. |
CRM_FiscalYearFormat |
Angir hvordan navnet på regnskapsåret vises. |
CRM_FiscalPeriodFormat |
Angir hvordan regnskapsperioden vises. |
CRM_FiscalYearPrefixFormat |
Angir om et prefiks er knyttet til regnskapsåret når det vises. |
CRM_FiscalYearSuffixFormat |
Angir om et suffiks er knyttet til regnskapsåret når det vises. |
CRM_CurrencyDecimalPrecision |
Presisjon for valutadesimal. |
CRM_CurrencySymbol |
Organisasjonens valutasymbol. |
CRM_CurrencyPositivePattern |
Formatmønsteret for positive valutaverdier. |
CRM_CurrencyNegativePattern |
Formatmønsteret for negative valutaverdier. |
CRM_NumberDecimalDigits |
Antall desimaler som skal brukes i numeriske verdier. |
CRM_NumberDecimalSeperator |
Strengen som skal brukes som desimaltegn i numeriske verdier. |
CRM_NumberNegativePattern |
Formatmønsteret for negative numeriske verdier. |
CRM_NumberGroupSizes |
Antall sifre i hver gruppe til venstre for desimalen i numeriske verdier. |
CRM_NumberGroupSeperator |
Strengen som atskiller grupper med sifre til venstre for desimalen i numeriske verdier. |
CRM_DateSeparator |
Strengen som skiller komponentene i en dato, for eksempel år, dag og måned. |
CRM_TimeSeparator |
Strengen som skiller komponentene for tid, for eksempel time, minutter og sekunder. |
CRM_AMDesignator |
Strengen som skiller komponentene for tid, for eksempel time, minutter og sekunder |
CRM_PMDesignator |
Betegnelsen for timer som er "post meridiem" (PM). |
CRM_ShortDatePattern |
Formatmønsteret for en kort datoverdi som er knyttet til formatmønsteret "d". |
CRM_LongDatePattern |
Formatmønsteret for en lang datoverdi som er knyttet til formatmønsteret "D". |
CRM_ShortTimePattern |
Formatmønsteret for en kort tidsverdi som er knyttet til formatmønsteret "t". |
CRM_MonthDayPattern |
Formatmønsteret for måned, og dagsverdier som er knyttet til formatmønstrene "m" og "M". |