استخدام المعلمات في التقارير

يمكنك استخدام المعلمات في التقارير للتحكم في البيانات التي يتم استردادها من خلال مطالبة المستخدم بقيمة أو مجموعة قيم عندما يقوم المستخدم بتشغيل التقرير. يسترد استعلام مجموعة البيانات فقط البيانات المطلوبة من المستخدم. يمكنك أيضا إضافة معاملات مخفية وخاصة في التقارير التي لا تطالب المستخدم بالإدخال، ولكن يمكن استخدامها لعمليات مثل تصفية البيانات والاستخراج الديناميكي.

‏‫ملاحظة‬

وأقصى طول لقيم المعلمة التي يتم تمريرها من Microsoft Dynamics 365 Customer Engagement (on-premises) هي 2000 حرف. على سبيل المثال، إذا قمت بتشغيل تقرير وإنشاء عامل تصفية بيانات من خلال واجهة مستخدم بحث متقدم، فإن عبارة عامل التصفية الناتجة التي يتم تمريرها إلى معلمة عامل تصفية لا يمكن أن تتجاوز 2000 حرف. لا يوجد حد أقصى لعدد المعلمات التي يمكنك تحديدها. ومع ذلك، قد تحتاج إلى تحديد طول السلسلة في سطر URL وعدد المعلمات لتلبية متطلبات مستعرض معين.

إضافة معلمات

يمكنك إضافة معاملات إلى تقرير لتحديد معلمات التقرير الفردية أو تمرير المعلومات عن طريق استعلام أو توفير الوصول إلى إعدادات المستخدم، مثل معلمات CRM_CurrencySymbol وCRM_CurrencyPositivePattern.

يمثل <ReportParameter> عنصرًا في ملف تعريف التقرير (RDL) والذي يُستخدم لوصف معلمة فردية في التقرير. يحتوي <QueryParameter> على معلومات حول معلمة فردية والتي يتم تمريرها إلى مصدر البيانات كجزء من استعلام. يوضح رمز XML التالي المأخوذ من ملف RDL لتقرير ملخص الحساب كيفية استخدام معلمات ReportParameter و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>  

توضح الأمثلة التالية كيفية استخدام المعلمات QueryParameter وReportParameter في تقرير يستند إلى 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>  

المعلمات المخفية

يتضمن مصمم التقرير في Visual Studio دعمًا مضمنًا للمعلمات المخفية. بالإضافة إلى ذلك، يمكنك إخفاء المعلمات من خلال إضافة بادئة CRM إلى اسم المعلمة في تقرير. افتراضيًا، يتم إخفاء المعلمات ببادئة CRM عند نشر التقرير. عندما تقوم بتشغيل التقرير، لا تتم مطالبتك بإدخال قيم المعلمات المخفية.

المعلمات الخاصة

يعرض الجدول التالي المعلمات المخفية الخاصة التي يمكنك استخدامها في التقارير الخاصة بك.

المعلمة‬ الوصف
CRM_FilterText تحتوي على قيمة نص عامل التصفية الذي يُنشئه مستخدم التقرير بشكل تفاعلي في عارض التقارير عندما يقوم المستخدم بتشغيل تقرير. هي معلمة في مربع نص تلخيص عامل تصفية الموجود في رأس التقرير. يتم تعيين القيمة الأولية إلى عامل التصفية الافتراضي.
CRM_URL تعيين على عنوان URL للتطبيق. استخدم هذه المعلمة عند الاستخراج.
CRM_FilteredEntity تُستخدم عبارة استعلام لتمكين تصفية البيانات مسبقًا (من خلال بحث متقدم).

يجب إنشاء جميع المعلمات في تقرير حتى تتمكن من الإشارة إليها. يتم ملء قيم هذه المعلمات الخاصة بواسطة Customer Engagement (on-premises) عند تشغيل التقرير.

معلمات التنسيق الإضافية

يعرض الجدول التالي المعلمات الإضافية التي يمكنك استخدامها في التقارير. ومن بينها المعلمات التي توفر الوصول إلى معلومات إعدادات الرقم للمستخدم. يمكنك استخدام هذه القيم لتنسيق وعرض القيم الرقمية. تشبه هذه المعلمات القيم المحددة في فئة NumberFormatInfo. استخدم هذه المعلمات في التقارير المخصصة لتنسيق البيانات وفقا لإعدادات المستخدم.

المعلمة‬ الوصف
CRM_FullName الاسم الكامل للمستخدم الذي يتم تشغل التقرير بالنيابة عنه.
CRM_UserTimeZone اسم المنطقة الزمنية للمستخدم، على سبيل المثال، التوقيت الرسمي الباسيفيكي.
CRM_UILanguageId الموقع الحالي (LCID) للمستخدم.
CRM_YearStartWeekCode الأسبوع الأول من العام الذي تم استخدامه في تطبيقات Dynamics 365 for Customer Engagement.
CRM_WeekStartDayCode اليوم الأول من العام الذي يتم استخدامه في Customer Engagement.
CRM_FiscalCalendarStart تاريخ بدء السنة المالية التي يتم استخدامها في Customer Engagement.
CRM_FiscalPeriodType تحديد كيفية تقسيم السنة المالية-ربع سنوي، وشهري، وسنوي وهكذا.
CRM_FiscalYearDisplayCode تحديد ما إذا كان سيتم عرض اسم السنة المالية استنادًا إلى متى تبدأ السنة المالية أو متى تنتهي.
CRM_FiscalYearPeriodConnect تحديد كيف تتصل السنة المالية والفترة المالية عند عرضهما معًا.
CRM_FiscalYearFormat تحديد كيف يتم عرض اسم السنة المالية.
CRM_FiscalPeriodFormat تحديد كيف يتم عرض الفترة المالية.
CRM_FiscalYearPrefixFormat تحديد ما إذا كان يتم إرفاق بادئة للسنة المالية عند عرضها أم لا.
CRM_FiscalYearSuffixFormat تحديد ما إذا كان يتم إرفاق لاحقة للسنة المالية عند عرضها أم لا.
CRM_CurrencyDecimalPrecision ‏‏الدقة العشرية للعملة.
CRM_CurrencySymbol رمز العملة الخاص بالمؤسسة.
CRM_CurrencyPositivePattern نمط التنسيق لقيم العملات الموجبة.
CRM_CurrencyNegativePattern نمط التنسيق لقيم العملات السالبة.
CRM_NumberDecimalDigits عدد المنازل العشرية للاستخدام في القيم الرقمية.
CRM_NumberDecimalSeperator السلسلة التي يتم استخدامها كفاصلة عشرية في القيم الرقمية.
CRM_NumberNegativePattern نمط التنسيق للقيم الرقمية السالبة.
CRM_NumberGroupSizes عدد الأرقام في كل مجموعة إلى يسار العلامة العشرية في القيم الرقمية.
CRM_NumberGroupSeperator السلسلة التي تفصل مجموعات الأرقام إلى يسار العلامة العشرية في القيم الرقمية.
CRM_DateSeparator السلسلة التي تفصل مكونات تاريخ، مثل السنة والشهر واليوم.
CRM_TimeSeparator السلسلة التي تفصل مكونات الوقت، مثل الساعة والدقائق والثواني.
CRM_AMDesignator السلسلة التي تفصل مكونات الوقت، مثل الساعة والدقائق والثواني
CRM_PMDesignator مصمم الساعات التي تكون بتنسيق "بعد الظهر" (مساء).
CRM_ShortDatePattern نمط تنسيق لقيمة تاريخ قصير تكون مقترنة بنمط التنسيق "d".
CRM_LongDatePattern نمط تنسيق لقيمة تاريخ طويل تكون مقترنة بنمط التنسيق "D".
CRM_ShortTimePattern نمط تنسيق لقيمة وقت قصير تكون مقترنة بنمط التنسيق "t".
CRM_MonthDayPattern نمط تنسيق لقيم الشهر واليوم تكون مقترنة بأنماط التنسيق "m" و"M".

(راجع أيضًا )

دليل إعداد التقارير والتحليلات
نشر التقارير