مصمم المعادلات في التقارير الإلكترونية

يشرح هذا الموضوع كيفية استخدام مصمم المعادلة في التقارير الإلكترونية. عندما تصمم تنسيقًا لمستند إلكتروني معين في التقارير الإلكترونية، يمكنك استخدام معادلات لتحويل البيانات لتلبية متطلبات تنفيذ وتنسيق هذا المستند. تشبه هذه المعادلات المعادلات في Microsoft Excel. هناك أنواع مختلفة من الدالات المعتمدة في المعادلات: النص والتاريخ والوقت ومنطق الرياضيات والمعلومات وتحويل أنواع البيانات وغير ذلك (دالات خاصة بمجال الأعمال).

نظرة عامة على مصمم المعادلة

تدعم التقارير الإلكترونية مصمم المعادلة. لذلك، في وقت التصميم، يمكنك تكوين التعبيرات التي يمكن استخدامها للمهام التالية في وقت التشغيل:

  • تحويل البيانات المستلمة من قاعدة بيانات Microsoft Dynamics 365 for Finance and Operations، التي يجب أن يتم إدخالها في نموذج بيانات التقارير الإلكترونية المصمم ليكون مصدر بيانات لتنسيقات التقارير الإلكترونية. (على سبيل المثال، هذه التحويلات قد تتضمن تحويل نوع البيانات والتصفية والتجميع.)
  • بيانات التنسيق التي يجب إرسالها إلى مستند إلكتروني أصلي وفقًا لمخطط وشروط تنسيق تقارير إلكترونية محدد. (على سبيل المثال، التنسيق الذي قد يتم وفقًا للغة أو الثقافة المطلوبة أو الترميز).
  • التحكم في عملية إنشاء المستندات الإلكترونية. (على سبيل المثال، يمكن للتعبيرات تمكين أو تعطيل إخراج عناصر معينة للتنسيق، استنادًا إلى معالجة البيانات. كما يمكنها إيقاف عملية إنشاء المستند أو طرح رسائل إلى المستخدمين.)

يمكنك فتح صفحة مصمم المعادلة‬‏‫ عندما تنفذ أي إجراء من الإجراءات التالية:

  • ربط عناصر مصدر البيانات بمكونات نموذج البيانات.
  • ربط عناصر مصدر البيانات بمكونات التنسيق.
  • إكمال صيانة الحقول المحتسبة كجزء من مصادر البيانات.
  • تعريف شروط إمكانية الرؤية‬ لمعلمات إدخال المستخدم‬.
  • تصميم عمليات تحويل التنسيق.
  • تعريف شروط التمكين لمكونات التنسيق.
  • تعريف أسماء الملفات لمكونات ملف التنسيق.
  • تعريف الشروط لعمليات التحقق من مراقبة العملية.
  • تعريف الرسالة النصية لعمليات التحقق من مراقبة العملية.

تصميم معادلات التقارير الإلكترونية

ربط البيانات

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

  • من مصادر بيانات Finance and Operations ومعلمات وقت التشغيل إلى نموذج بيانات التقارير الإلكترونية
  • من نموذج بيانات التقارير الإلكترونية إلى تنسيق التقارير الإلكترونية
  • من مصادر بيانات Finance and Operations ومعلمات وقت التشغيل إلى نموذج التقارير الإلكترونية

يبين الرسم التوضيحي التالي تصميم تعبير من هذا النوع. في هذا المثال، يقوم التعبير بتقريب قيمة الحقل Intrastat.AmountMST جدول نظام جمع المعلومات التجارية بين دول الاتحاد الأوروبي‬‏‫ في ‬‏‫Finance and Operations إلى منزلتين عشريتين، ثم يقوم بإرجاع القيمة المقربة.

ربط البيانات

يبين الرسم التوضيحي التالي كيف يمكن استخدام تعبير من هذا النوع. في هذا المثال، يتم إدخال نتيجة التعبير المُصمم في المكون Transaction.InvoicedAmount لنموذج بيانات نموذج الإبلاغ الضريبي.

ربط البيانات قيد الاستخدام

في وقت التشغيل، تقرب الصيغة المصممة، ROUND ‏‏(Intrastat.AmountMST, 2)، قيمة حقل AmountMST لكل سجل في جدول نظام جمع المعلومات التجارية بين دول الاتحاد الأوروبي إلى منزلتين عشريتين. ثم تقوم بإدخال القيمة المقربة في مكون Transaction.InvoicedAmount لنموذج بيانات تقارير الضرائب.

تنسيق البيانات

يمكن استخدام مصمم معادلة التقارير الإلكترونية لتعريف تعبير يقوم بتنسيق البيانات التي يتم تلقيها من مصادر البيانات، بحيث يمكن إرسال البيانات كجزء من المستند الإلكتروني الناشئ. قد يكون لديك التنسيق الذي يجب تطبيقه كقاعدة نموذجية يجب إعادة استخدامها لتنسيق. في هذه الحالة، يمكنك تقديم هذا التنسيق مرة واحدة في تكوين التنسيق، كتحويل مسمى يحتوي على تعبير تنسيق. عندئذٍ، يمكن ربط هذا التحويل المسمى بالعديد من مكونات التنسيق التي يجب تنسيق إخراجها وفقًا لتعبير التنسيق الذي أنشأته.

يبين الرسم التوضيحي التالي تصميم تحويل من هذا النوع. في هذا المثال، يقتطع تحويل TrimmedString البيانات الواردة من نوع بيانات السلسلة عن طريق إزالة المسافات البادئة والزائدة. تم تقوم بإرجاع قيمة السلسلة المقتطعة.

التحويل

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

التحويل قيد الاستخدام

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

إذا كان لديك تنسيق يجب أن يُطبق بشكل فردي، فيمكنك إدخال ذلك التنسيق كتعبير فردي لربط خاص بمكون تنسيق محدد. يبين الرسم التوضيحي التالي تعبيرًا من هذا النوع. في هذا المثال، يرتبط مكون التنسيق partyType بمصدر البيانات عبر تعبير يقوم بتحويل البيانات الواردة من الحقل Model.Company.RegistrationType في مصدر البيانات إلى نص بأحرف كبيرة. يرسل التعبير بعد ذلك هذا النص كإخراج إلى المستند الإلكتروني.

تطبيق التنسيق على مكون واحد

التحكم في تدفق العملية

يمكن استخدام مصمم معادلة التقارير الإلكترونية‬ لتحديد التعبيرات التي تتحكم في تدفق العملية للمستندات الإلكترونية الناشئة. يمكنك القيام بالمهام التالية:

  • تعريف الظروف التي تحدد متى يجب إيقاف عملية إنشاء المستند.
  • تحديد التعبيرات التي تنشئ رسائل للمستخدم فيما يتعلق بالعملية المتوقفة أو تطرح رسائل سجل تنفيذ فيما يتعلق بالعملية المستمرة لإنشاء التقارير.
  • تحديد أسماء ملفات للمستندات الإلكترونية الناشئة والتحكم في ظروف إنشائها.

يتم تصميم كل قاعدة للتحكم في تدفق العملية كعملية تحقق من الصحة واحدة. يبين الرسم التوضيحي التالي عملية تحقق من هذا النوع. فيما يلي شرح للتكوين في هذا المثال:

  • يتم تقييم عملية التحقق من الصحة عند إنشاء عقدة INSTAT أثناء إنشاء ملف XML.
  • إذا كانت قائمة الحركات فارغة، فستوقف عملية التحقق من الصحة العملية وترجع FALSE.
  • ترجع عملية التحقق من الصحة رسالة خطأ تتضمن نص تسمية Finance and Operations‏ SYS70894 باللغة المفضلة للمستخدم.

التحقق من الصحة

يمكن أيضًا استخدام مصمم معادلة التقارير الإلكترونية لإنشاء اسم ملف للمستند الإلكتروني الناشئ والتحكم في عملية إنشاء الملف. يبين الرسم التوضيحي التالي تصميم التحكم بانسياب العملية‬ من هذا النوع. فيما يلي شرح للتكوين في هذا المثال:

  • يتم تقسيم قائمة بسجلات من مصدر بيانات model.Intrastat إلى دُفعات. تحتوي كل دُفعة على ما يصل إلى 1000 سجل.
  • ينشئ الإخراج ملف zip يحتوي على ملف واحد بتنسيق XML لكل دُفعة تم إنشاؤها.
  • يُرجع التعبير اسم ملف للمستندات الإلكترونية الناشئة عن طريق وصل اسم الملف وملحقه. للدُفعة الثانية وكافة الدُفعات اللاحقة، يحتوي اسم الملف على معرف دُفعة كلاحقة.
  • يمكّن التعبير (من خلال إرجاع TRUE) عملية إنشاء ملف للدُفعات التي تحتوي على سجل واحد على الأقل.

التحكم في الملف

البنية الأساسية

يمكن أن تحتوي تعبيرات التقارير الإلكترونية أي من العناصر التالية أو كلها:

  • ثوابت
  • المعاملات
  • المراجع
  • المسارات
  • الوظائف

ثوابت

عند تصميم التعبيرات، يمكنك استخدام الثوابت النصية والرقمية (القيم التي لم تُحتسب). على سبيل المثال، يستخدم التعبير VALUE ("100") + 20 الثابت الرقمي20 وثابت السلسلة "‏‏100‏‏"، ويُرجع القيمة الرقمية 120. يدعم مصمم معادلة التقارير الإلكترونية تسلسلات الهروب. لذلك، يمكنك تحديد أي سلسلة تعبير تجب معالجتها بشكل مختلف. على سبيل المثال، يقوم التعبير "ليو تولستوي ""الحرب والسلم"" المجلد 1" بإرجاع السلسلة النصية ليو تولستوي "الحرب والسلم" المجلد 1.

عوامل التشغيل

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

المعامل المعنى مثال
+ الجمع 1+2
- الطرح، السالب 5-2، -1
* الضرب 7*8
/ القسم 9/3

يعرض الجدول التالي عوامل تشغيل المقارنة المدعومة. يمكنك استخدام عوامل التشغيل هذه لمقارنة قيمتين.

المعامل المعنى مثال
= متساو X=Y
> أكبر من X>Y
< أقل من X<Y
>= أكبر من أو يساوي X>=Y
<= أقل من أو يساوي X<=Y
<> لا يساوي X<>Y

بالإضافة إلى ذلك، يمكنك استخدام علامة عطف (&) كعامل ربط نص. وبهذه الطريقة، يمكنك الانضمام أو ربط سلسلة نصية واحدة أو أكثر في جزء واحد من النص.

المعامل المعنى مثال
& تسلسل "لا شيء للطباعة" & ": " & "لم يتم العثور على سجلات"
أسبقية عامل التشغيل

يُعد الترتيب الذي يتم بموجبه تقييم أجزاء تعبير مركب عنصرًا هامًا. على سبيل المثال، تختلف نتيجة التعبير 1 + 4 / 2، تبعًا للعملية التي تم تنفيذها أولاً، سواء كانت عملية جمع أم قسمة. يمكنك استخدام الأقواس لتعريف كيفية تقييم تعبير بوضوح. على سبيل المثال، للإشارة إلى وجوب إنجازه عملية الجمع أولاً، يمكنك تغيير التعبير السابق إلى ‎(1 + 4) / 2. إذا لم تشر إلى ترتيب العمليات في تعبير بشكل واضح، فإن الترتيب يستند إلى الأسبقية الافتراضية المعيّنة إلى عوامل التشغيل المعتمدة. يُظهر الجدول التالي الأولوية المعينة لكل عامل تشغيل. يتم تقييم عوامل التشغيل التي لها أسبقية أعلى (على سبيل المثال، 7) قبل عوامل التشغيل التي لها أولوية أقل (على سبيل المثال، 1).

الأسبقية المعاملات بناء الجملة
7 تجميع ( … )
6 وصول العضو … . …
5 استدعاء دالة … ( … )
4 تضاعفي … * …
… / …
3 شيء مضاف … + …
… - …
2 مقارنة … < …
… <= …
… => …
… > …
… = …
… <> …
1 الفصل … , …

إذا كان تعبير يتضمن عوامل تشغيل متعددة متتالية لها نفس الأسبقية، فإنه يتم تقييم هذه العمليات من اليسار إلى اليمين. على سبيل المثال، يُرجع التعبير 1 + 6 / 2 * 3 >5 القيمة true. نوصي باستخدام الأقواس للإشارة بوضوح إلى الترتيب المطلوب للعمليات في التعبيرات، ولتسهيل قراءة التعبيرات والمحافظة عليها.

المراجع

يمكن استخدام جميع مصادر البيانات في مكون التقارير الإلكترونية الحالي التي تتوفر أثناء تصميم تعبير كمراجع مسماة. (قد يكون مكون التقارير الإلكترونية الحالي نموذجًا أو تنسيقًا.) على سبيل المثال، يحتوي على نموذج بيانات التقارير الإلكترونية الحالي على مصدر بيانات ReportingDate، ويُرجع مصدر البيانات هذا قيمة نوع بيانات التاريخ والوقت. لتنسيق تلك القيمة في المستند الناشئ، يمكنك الإشارة إلى مصدر بيانات في التعبير كما يلي DATETIMEFORMAT (ReportingDate, "dd-MM-yyyy")

يجب أن تكون جميع الأحرف في اسم مصدر البيانات المرجعي والتي لا تمثل حرفًا أبجديًا مسبوقة بعلامة اقتباس مفردة ('). إذا كان اسم مصدر البيانات المرجعي يحتوي على رمز واحد على الأقل لا يمثل حرفًا من الحروف الأبجدية، فمن ثم يجب أن يضمن الاسم في علامة اقتباس مفردة. (على سبيل المثال، قد تكون هذه الرموز غير الأبجدية علامات ترقيم أو رموز مكتوبة أخرى.) فيما يلي بعض الأمثلة:

  • يجب الإشارة إلى مصدر البيانات Today's date & time في تعبير التقارير الإلكترونية على الشكل التالي: ‏‏'Today''s date & time'
  • يجب الإشارة إلى الأسلوب name() في مصدر البيانات Customers في تعبير التقارير الإلكترونية على الشكل التالي: Customers.'name()'

إذا كانت أساليب مصادر بيانات Finance and Operations تشتمل على معلمات، فإنه يتم استخدام بناء الجملة التالي لاستدعاء تلك الأساليب:

  • إذا كان أسلوب isLanguageRTL لمصدر بيانات النظام يشتمل على معلمة EN-US لنوع بيانات السلسلة، فيجب الإشارة إلى هذا الأسلوب في تعبير تقارير إلكترونية كـ System.'isLanguageRTL'("EN-US").
  • لن تكون علامات الاقتباس مطلوبة عندما يحتوي اسم الأسلوب على رموز أبجدية رقمية فقط. ومع ذلك، تكون مطلوبة بالنسبة إلى أسلوب جدول عندما يتضمن الاسم أقواسًا.

عندما تتم إضافة مصدر بيانات النظام إلى تعيين التقارير الإلكترونية الذي يشير إلى فئة عمومي لتطبيق Finance and Operations، يُرجع التعبير القيمة المنطقية FALSE. يُرجع التعبير المعدل System.' isLanguageRTL'("AR") القيمة المنطقية TRUE.

يمكنك تحديد الطريقة التي يتم بها تمرير القيم إلى معلمات هذا النوع من الأسلوب:

  • يمكن تمرير الثوابت فقط للأساليب الخاصة بهذا النوع. يتم تحديد قيم الثوابت في وقت التصميم.
  • يتم دعم أنواع البيانات الأولية (الأساسية) فقط للمعلمات من هذا النوع. (أنواع البيانات الأولية هي عدد صحيح، وحقيقي، ومنطقية، وسلسلة، وهكذا).

المسارات

عندما يشير تعبير إلى مصدر بيانات مصنف، يمكنك استخدام تعريف المسار لتحديد عنصر أساسي معينة من مصدر البيانات هذا. يتم استخدام حرف النقطة (.) لفصل العناصر الفردية في مصدر بيانات مصنف. على سبيل المثال، يحتوي نموذج بيانات التقارير الإلكترونية الحالي على مصدر بيانات InvoiceTransactions، ويُرجع مصدر البيانات هذا قائمة بالسجلات. تحتوي بنية السجل InvoiceTransactions على الحقلين AmountDebit وAmountCredit، اللذين يرجعان قيمًا رقمية. وبالتالي، يمكنك تصميم التعبير التالي لحساب المبلغ المفوتر: InvoiceTransactions.AmountDebit - InvoiceTransactions.AmountCredit

الوظائف

يصف القسم التالي الدالات التي يمكنك استخدامها في تعبيرات التقارير الإلكترونية. ويمكن استخدام كافة مصادر بيانات سياق التعبير (نموذج بيانات التقارير الإلكترونية الحالي أو تنسيق التقارير الإلكترونية)، كمعلمات لدالات الاستدعاء وفقًا لقائمة وسيطات لدالات الاستدعاء. يمكن أيضًا استخدام الثوابت كمعلمات لدالات الاستدعاء. على سبيل المثال، يحتوي نموذج بيانات التقارير الإلكترونية الحالي على مصدر بيانات InvoiceTransactions، ويُرجع مصدر البيانات هذا قائمة بالسجلات. تحتوي بنية السجل InvoiceTransactions على الحقلين AmountDebit وAmountCredit، اللذين يرجعان قيمًا رقمية. وبالتالي، لحساب المبلغ المفوتر، يمكنك تصميم التعبير التالي الذي يستخدم دالة التقريب المضمنة للتقارير الإلكترونية: ROUND (InvoiceTransactions.AmountDebit - InvoiceTransactions.AmountCredit, 2)

الدالات المدعومة

يصف الجدول التالي دالات معالجة البيانات التي يمكنك استخدامها لتصميم نماذج بيانات التقارير الإلكترونية والتقارير الإلكترونية. لم يتم تثبيت قائمة الدالات. يستطيع المطورون توسيعها. لمشاهدة قائمة الدالات التي يمكنك استخدامها، افتح جزء الدالات في مصمم معادلة التقارير الإلكترونية.

دلات التاريخ والوقت

الدالة الوصف مثال
ADDDAYS (التاريخ والوقت، الأيام) إضافة عدد محدد من الأيام إلى قيمة التاريخ/الوقت المحددة. ADDDAYS (now ()، 7) ترجع التاريخ والوقت سبعة أيام في المستقبل.
DATETODATETIME (التاريخ) تحويل القيمة المحددة إلى قيمة تاريخ/وقت. يقوم DATETODATETIME (CompInfo. 'getCurrentDate()') بإرجاع تاريخ جلسة عمل Finance and Operations الحالية، 24 ديسمبر 2015، على الشكل التالي، 12/24/2015 12:00:00 ص. في هذا المثال، CompInfo عبارة عن مصدر بيانات تقارير إلكترونية من النوع Finance and Operations/جدول يشير إلى جدول CompanyInfo.
NOW () تُرجع تاريخ ووقت خادم تطبيق Finance and Operations الحالي كقيمة تاريخ/وقت.
TODAY () تُرجع تاريخ خادم تطبيق Finance and Operations الحالي كقيمة تاريخ.
NULLDATE () إرجاع قيمة تاريخ فارغة.
NULLDATETIME () إرجاع قيمة وقت/تاريخ فارغة.
DATETIMEFORMAT (التاريخ والوقت، التنسيق) تحويل قيمة التاريخ/الوقت المحددة إلى سلسلة بالتنسيق المحدد. (لمزيد من المعلومات حول التنسيقات المعتمدة، راجع قياسي ومخصص.) DATETIMEFORMAT (NOW(), "dd-MM-yyyy") ترجع المعادلة تاريخ خادم تطبيق Finance and Operations الحالي، وهو 24 ديسمبر 2015، على الشكل التالي "24-12-2015‏‏‏‏"‏‏، وفقًا للتنسيق المخصص المحدد.
DATETIMEFORMAT (التاريخ والوقت، التنسيق، الثقافة) تحويل قيمة التاريخ/الوقت المحددة إلى سلسلة بالتنسيق والثقافة المحددة. (لمزيد من المعلومات حول التنسيقات المعتمدة، راجع قياسي ومخصص). تُرجع المعادلة DATETIMEFORMAT (NOW(), "d", "de") تاريخ خادم تطبيق Finance and Operations الحالي، 24 ديسمبر 2015، على الشكل "24.12.2015"، وفقًا للثقافة الألمانية المحددة.
SESSIONTODAY () تُرجع تاريخ جلسة عمل Finance and Operations الحالية كقيمة تاريخ.
SESSIONNOW () تُرجع تاريخ ووقت جلسة عمل Finance and Operations الحالية كقيمة تاريخ/وقت.
DATEFORMAT (التاريخ، التنسيق) إرجاع تمثيل السلسلة للتاريخ المحدد بالتنسيق المحدد. DATEFORMAT (SESSIONTODAY (), "dd-MM-yyyy") ترجع المعادلة تاريخ جلسة عمل Finance and Operations الحالية، وهو 24 ديسمبر 2015، على الشكل التالي "24-12-2015‏‏‏‏"‏‏، وفقًا للتنسيق المخصص المحدد.
DATEFORMAT (التاريخ، التنسيق، الثقافة) تحويل قيمة التاريخ المحددة إلى سلسلة بالتنسيق والثقافة المحددة. (لمزيد من المعلومات حول التنسيقات المعتمدة، راجع قياسي ومخصص). DATETIMEFORMAT (SESSIONNOW (), "d", "de") تُرحع جلسة عمل Finance and Operations الحالية، 24 ديسمبر 2015، على الشكل "24.12.2015"، وفقًا للثقافة الألمانية المحددة.
DAYOFYEAR (التاريخ) إرجاع تمثيل عدد صحيح لعدد الأيام من 1 يناير إلى التاريخ المحدد. تُرجع المعادلة DAYOFYEAR (DATEVALUE ("01-03-2016", "dd-MM-yyyy")) القيمة 61. تُرجع المعادلة DAYOFYEAR (DATEVALUE ("01-01-2016", "dd-MM-yyyy")) القيمة 1.
أيام (تاريخ 1، تاريخ 2) إرجاع عدد الأيام بين التاريخ المحدد الأول والتاريخ المحدد الثاني. إرجاع قيمة موجبة إذا كان التاريخ الأول لاحقًا للتاريخ الثاني أو إرجاع 0 (صفر) عند يساوي التاريخ الأول التاريخ الثاني أو إرجاع قيمة سالبة بدلاً من ذلك. DAYS (TODAY (), DATEVALUE( DATETIMEFORMAT( ADDDAYS(NOW(), 1), "yyyyMMdd"), "yyyyMMdd")) تُرجع -1.

دالات تحويل البيانات

الوظيفة الوصف مثال
DATETODATETIME (التاريخ) تحويل القيمة المحددة إلى قيمة تاريخ/وقت. يقوم DATETODATETIME (CompInfo. 'getCurrentDate()') بإرجاع تاريخ جلسة عمل Finance and Operations الحالية، 24 ديسمبر 2015، على الشكل التالي، 12/24/2015 12:00:00 ص. في هذا المثال، CompInfo عبارة عن مصدر بيانات تقارير إلكترونية من النوع Finance and Operations/جدول يشير إلى جدول CompanyInfo.
DATEVALUE (سلسلة، تنسيق) إرجاع تمثيل التاريخ للسلسلة المحددة بالتنسيق المحدد. DATEVALUE ("21-Dec-2016", "dd-MMM-yyyy") تُرجع التاريخ 21 ديسمبر 2016 وفقًا للتنسيق المخصص المحدد وثقافة EN-US للتطبيق الافتراضي.
DATEVALUE (سلسلة، تنسيق، ثقافة) إرجاع تمثيل تاريخ السلسلة المحددة في الثقافة والتنسيق المحدد. DATEVALUE ("21-Gen-2016", "dd-MMM-yyyy", "IT") تُرجع التاريخ 21 يناير 2016، استنادًا إلى الثقافة والتنسيق المخصص المحدد. ومع ذلك، ستطرح DATEVALUE ("21-Gen-2016", "dd-MMM-yyyy", "EN-US") استثناءً لإعلام المستخدم بأنه لم يتم التعرف على السلسلة المحددة كتاريخ صالح.
DATETIMEVALUE (سلسلة، تنسيق) إرجاع تمثيل تاريخ/وقت للسلسلة المحددة بالتنسيق المحدد. DATETIMEVALUE ("21-Dec-2016 02:55:00", "dd-MMM-yyyy hh:mm:ss") تُرجع 2:55:00 ص في 21 ديسمبر 2016، استنادًا إلى التنسيق المخصص المحدد وثقافة EN-US للتطييق الافتراضي.
DATETIMEVALUE (سلسلة، تنسيق، ثقافة) إرجاع تمثيل تاريخ/وقت السلسلة المحددة في الثقافة والتنسيق المحدد. DATETIMEVALUE ("21-Gen-2016 02:55:00", "dd-MMM-yyyy hh:mm:ss", "IT") تُرجع 2:55:00 ص في 21 ديسمبر 2016، استنادًا إلى التنسيق المخصص المحدد وثقافة EN-US للتطبيق الافتراضي. ومع ذلك، ستطرح DATETIMEVALUE ("21-Gen-2016 02:55:00", "dd-MMM-yyyy hh:mm:ss", "EN-US") استثناءً لإعلام المستخدم بأنه لم يتم التعرف على السلسلة المحددة كتاريخ/وقت صالح.

دالات القائمة

الوظيفة الوصف مثال
SPLIT (إدخال، طول) تقسيم سلسلة الإدخال المحددة إلى سلاسل فرعية، لكل منها الطول المحدد. إرجاع النتيجة كقائمة جديدة. SPLIT ("abcd", 3) ترجع قائمة جديدة تتألف من سجلين لديهما الحقل STRING . يحتوي الحقل في السجل الأول على النص "abc"، ويحتوي الحقل في السجل الثاني على النص "d".
SPLITLIST (قائمة، رقم) تقسيم القائمة المحددة إلى دُفعات تحتوي كل واحدة منها على العدد المحدد من السجلات. إرجاع النتيجة كقائمة جديدة من الدُفعات التي تحتوي على العناصر التالية:
  • الدُفعات كقوائم منتظمة (المكون قيمة)
  • رقم الدُفعة الحالية (المكون BatchNumber)
في الرسم التوضيح التالي، يتم إنشاء مصدر بيانات الخطوط كقائمة سجلات من السجلات الثلاثة. يتم تقسيم هذه القائمة إلى دُفعات، يحتوي كل منها على ما يصل إلى سجلين.

Data source that is divided into batches

يبين الرسم التوضيحي التالي تخطيط التنسيق المصمم. في تخطيط التنسيق هذا، يتم إنشاء عمليات الربط إلى مصدر بيانات الخطوط لإنشاء إخراج بتنسيق XML. يقدم هذا الإخراج عقدًا فردية لكل دُفعة والسجلات التي فيها.

Format layout that has bindings to a data source

يعرض الرسم التوضيحي التالي النتيجة عند تشغيل التنسيق المصمم.

Result of running the format
LIST (سجل 1 [، سجل 2، ...]) إرجاع قائمة جديدة تم إنشاؤها من وسيطات محددة. LIST (model.MainData, model.OtherData) ترجع سجلاً فارغًا، حيث تحتوي قائمة الحقول على كل الحقول من قائمة سجلات MainData وOtherData.
LISTJOIN (قائمة 1، قائمة 2، ...) إرجاع قائمة مرتبطة تم إنشاؤها من قوائم وسيطات محددة. LISTJOIN (SPLIT ("abc", 1), SPLIT ("def", 1)) تُرجع قائمة السجلات الستة، حيث يحتوي حقل واحد من نوع البيانات STRING على أحرف فردية.
ISEMPTY (قائمة) إرجاع TRUE إذا لم تتضمن القائمة المحددة أية عناصر. وإلا، يتم إرجاع FALSE.
EMPTYLIST (قائمة) إرجاع قائمة فارغة باستخدام القائمة المحددة كمصدر لبنية القائمة. EMPTYLIST (SPLIT ("abc", 1)) تُرجع قائمة فارغة جديدة لها نفس بنية القائمة المرتجعة بواسطة الدالة SPLIT.
FIRST (قائمة) إرجاع السجل الأول من القائمة المحددة، إذا لم يكن هذا السجل فارغًا. وإلا، يتم طرح استثناء.
FIRSTORNULL (قائمة) إرجاع السجل الأول من القائمة المحددة، إذا لم يكن هذا السجل فارغًا. وإلا يتم إرجاع سجل فارغ.
LISTOFFIRSTITEM (قائمة) إرجاع قائمة تحتوي على العنصر الأول فقط من القائمة المحددة.
ALLITEMS (مسار) إرجاع قائمة مدمجة جديدة تمثل كل العناصر التي تطابق المسار المحدد. يجب تحديد المسار كمسار مصدر بيانات صالح لعنصر مصدر بيانات لنوع بيانات قائمة السجلات. يجب أن تُظهر عناصر البيانات مثل سلسلة المسار والتاريخ خطأ في وقت التصميم في منشئ تعبير التقارير الإلكترونية. إذا أدخلت SPLIT("abcdef" , 2) كمصدر بيانات (DS)، فسترجع COUNT( ALLITEMS (DS.Value)) العدد 3.
ORDERBY (قائمة [, تعبير 1، تعبير 2، …]) إرجاع قائمة محددة بعد أن تم فرزها وفقًا للوسيطات المحددة. يمكن تعريف الوسيطات التالية كعبارات. إذا تم تكوين Vendor كمصدر بيانات تقارير إلكترونية يشير إلى جدول VendTable، ترجع ORDERBY (Vendors, Vendors.'name()') قائمة مورّدين تم فرزها حسب الاسم بترتيب تصاعدي.
REVERSE (قائمة) إرجاع القائمة المحددة بترتيب فرز معكوس. إذا تم تكوين Vendor كمصدر بيانات تقارير إلكترونية يشير إلى جدول VendTable، ترجع REVERSE (ORDERBY (Vendors, Vendors.'name()')) ) قائمة مورّدين تم فرزها حسب الاسم بترتيب تنازلي.
WHERE (قائمة، شرط) إرجاع قائمة محددة بعد أن تمت تصفيتها وفقًا للشرط المحدد. يتم تطبيق الشرط المحدد على القائمة في الذاكرة. بهذه الطريقة، تختلف دالة WHERE عن الدالة FILTER. إذا تم تكوين Vendor كمصدر بيانات تقارير إلكترونية يشير إلى جدول VendTable ترجع (Vendors, Vendors.VendGroup = "40") قائمة المورّدين التي تنتمي إلى مجموعة الموردين 40.
ENUMERATE (قائمة) إرجاع قائمة جديدة تتكون من السجلات التي تم تعدادها للقائمة المحددة، والتي تعرض العناصر التالية:
  • سجلات قائمة محددة كقوائم عادية (المكونقيمة)
  • فهرس السجلات الحالية (المكون Number)
في الرسم التوضيحي التالي، يتم إنشاء مصدر البيانات Enumerated كقائمة تم تعدادها لسجلات المورّدين من مصدر البيانات Vendors الذي يشير إلى الجدول VendTable.

Enumerated data source

يبين الرسم التوضيحي التالي التنسيق. في هذا التنسيق، يتم إنشاء عمليات ربط البيانات لإنشاء إخراج بتنسيق XML. يقدم هذا الإخراج موردين فرديين كعقد تم تعدادها.

Format that has data bindings

يعرض الرسم التوضيحي التالي النتيجة عند تشغيل التنسيق المصمم.

Result of running the format
COUNT (قائمة) إرجاع عدد السجلات في القائمة المحددة، إذا لم تكن القائمة فارغة. وإلا، يتم إرجاع 0 (صفر) COUNT (SPLIT("abcd" , 3)) ترجع 2، لأن الدلة SPLIT تنشئ قائمة مكونة من سجلين.
LISTOFFIELDS (مسار) إرجاع قائمة سجلات تم إنشاؤها من وسيطة من أحد الأنواع التالية:
  • تعداد النموذج
  • تعداد التنسيق
  • الحاوية

تتكون القائمة التي تم إنشاؤها من السجلات التي تحتوي على الحقول التالية:

  • الاسم
  • التسمية
  • الوصف
في وقت التشغيل، يُرجع الحقلان التسمية والوصف القيم المستندة إلى إعدادات لغة التنسيق.
في الرسم التوضيحي التالي، يتم تقديم تعداد في نموذج بيانات.

Enumeration in a model

يبين الرسم التوضيحي التالي هذه التفاصيل:

  • يتم إدراج تعداد النموذج في تقرير كمصدر بيانات.
  • يستخدم تعبير التقارير الإلكترونية تعداد النموذج كمعلمة لدالة LISTOFFIELDS.
  • يتم إدراج مصدر بيانات نوع قائمة السجلات في تقرير باستخدام تعبير التقارير الإلكترونية الذي تم إنشاؤه.

Format

يوضح المثال التالي عناصر تنسيق التقارير الإلكترونية المرتبطة بمصدر البيانات من نوع قائمة السجلات الذي تم إنشاؤها باستخدام الدالة LISTOFFIELDS.

Format design

يعرض الرسم التوضيحي التالي النتيجة عند تشغيل التنسيق المصمم.

Format output

[!NOTE]
تتم تعبئة النص المترجم للتسميات والأوصاف في إخراج تنسيق التقارير الإلكترونية وفقًا لإعدادات اللغة التي تم تكوينها لعناصر تنسيق الملف والمجلد الأصلي.
LISTOFFIELDS (المسار، اللغة) إرجاع قائمة سجلات تم إنشاؤها من وسيطة، مثل تعداد نموذج أو تعداد تنسيق أو حاوية. تتكون القائمة التي تم إنشاؤها من السجلات التي تحتوي على الحقول التالية:
  • الاسم
  • التسمية
  • الوصف
  • مترجم

في وقت التشغيل، يُرجع الحقلان التسمية والوصف القيم المستندة إلى إعدادات لغة التنسيق واللغة المحددة. يشير الحقل مترجم إلى أنه تمت ترجمة حقل التسمية إلى اللغة المحددة.

على سبيل المثال، يمكنك استخدام نوع مصدر بيانات الحقل المحسوب لتكوين مصدري البيانات enumType_de وenumType_deCH لتعداد نموذج بيانات enumType:
  • enumType_de = LISTOFFIELDS (enumType, "de")
  • enumType_deCH = LISTOFFIELDS (enumType, "de-CH")
في هذه الحالة، يمكنك استخدام التعبير التالي للحصول على تسمية لقيمة التعداد بالألمانية السويسرية، في حالة توفر هذه الترجمة. في حالة عدم توفر ترجمة اللغة الألمانية السويسرية، تكون التسمية باللغة الألمانية: IF (NOT (enumType_deCH.IsTranslated), enumType_de.Label, enumType_deCH.Label).
STRINGJOIN (قائمة، اسم الحقل، محدد) إرجاع سلسلة تتألف من القيم المتصلة للحقل المحدد من القائمة المحددة. يتم فصل القيم بالمحدد المعين. إذا قمت بإدخال SPLIT("abc" , 1) كمصدر بيانات (DS)، يقوم تعبير STRINGJOIN (DS, DS.Value, ":") بإرجاع "a:b:c".
SPLITLISTBYLIMIT (قائمة، قيمة الحد، مصدر الحد) تقسيم القائمة المعينة إلى قائمة جديدة من القوائم الفرعية وإرجاع النتيجة في محتوى قائمة السجلات. تعين محددة قيمة الحد قيمة الحد لتقسيم القائمة الأصلية. وتعين محددة مصدر الحد الخطوة التي يزداد عندها المجموع إجمالي. لا يتم تطبيق الحد على صنف واحد من القائمة الأصلية عندما يقوم مصدر الحد بتجاوز الحد المعرّف. تعرض التوضيحات التالية تنسيقًا ومصادر البيانات التي يتم استخدامها له.

Format

Data sources

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

Output

في الرسوم التوضيحية التالية، تم تعديل التنسيق نفسه جتى يقدم قائمة أصناف السلع في دُفعات عندما يجب أن تتضمن دُفعة واحدة سلعًا مع وزن إجمالي يجب ألا يتجاوز الحد 9.

Adjusted format

Data sources for the adjusted format

يعرض الرسم التوضيحي التالي النتيجة عند تشغيل التنسيق المعدَّل.

Output of the adjusted format

[!NOTE]
لا يتم تطبيق الحد على الصنف الأخير من القائمة الأصلية لأن القيمة (11) لمصدر الحد (الوزن) تتجاوز الحد المُعرف (9). استخدم الدالة WHERE أو التعبير ممكّن لعنصر التنسيق المناظر لتجاهل (تخطي) القوائم الفرعية أثناء إنشاء التقرير (عند الحاجة).
FILTER (قائمة، شرط) إرجاع القائمة المحددة بعد أن تم تعديل الاستعلام لتصفيته وفقًا للشرط المحدد. تختلف هذه الدالة عن الدالة WHERE لأنه يتم تطبيق الشرط المحدد على أي من مصادر بيانات التقارير الإلكترونية لنوع سجلات الجداول على مستوى قاعدة البيانات. يمكن تحديد القائمة والشرط باستخدام الجداول والعلاقات. إذا تم تكوين Vendor كمصدر بيانات تقارير إلكترونية يشير إلى جدول VendTable، تُرجع FILTER (Vendors, Vendors.VendGroup ="40") قائمة المورّدين التي تنتمي إلى مجموعة الموردين 40. إذا تم تكوين المورد كمصدر بيانات تقارير إلكترونية يشير إلى جدول VendTable يُرجع parmVendorBankGroup الذي تم تكوينه كمصدر بيانات القيمة الموجودة في نوع بيانات السلسلة، ويُرجع FILTER (Vendor.'<Relations'.VendBankAccount, Vendor.'<Relations'.VendBankAccount.BankGroupID = parmVendorBankGroup) قائمة بحسابات الموردين الذين ينتمون إلى مجموعة بنك محددة.

الوظائف المنطقية

الوظيفة الوصف مثال
CASE (تعبير, الخيار 1، النتيجة 1 [، الخيار 2، النتيجة 2] … [، النتيجة الافتراضية]) تقييم قيمة التعبير المحدد مقابل الخيارات البديلة المحددة. ويتم إرجاع نتيجة الخيار المساوية لقيمة التعبير. وإلا إرجاع نتيجة افتراضية اختيارية، إذا تم تحديد نتيجة افتراضية. (النتيجة الافتراضية هي المعلمة الأخيرة التي لا يسبقها أي خيار). CASE( DATETIMEFORMAT( NOW(), "MM"), "10", "WINTER", "11", "WINTER", "12", "WINTER", "") ترجع السلسلة "WINTER" عندما يقع تاريخ جلسة عمل Finance and Operations الحالية بين شهري أكتوبر وديسمبر. وإلا، تقوم بإرجاع سلسلة فارغة.
IF (شرط, القيمة 1، القيمة 2) إرجاع القيمة المحددة الأولى عند تلبية الشرط المحدد. وإلا، إرجاع القيمة المحددة الثانية. إذا كانت القيمة 1 والقيمة 2 عبارة عن سجلات أو قوائم سجلات، فستتضمن النتيجة فقط الحقول الموجودة في القائمتين. IF (1=2, "condition is met", "condition is not met") ترجع السلسلة "condition is not met".
NOT (شرط) إرجاع القيمة المنطقية المعكوسة للشرط المحدد. NOT (TRUE) ترجع FALSE.
AND (الشرط 1[، الشرط 2، ...]) إرجاع TRUE إذا كانت جميع الشروط المحددة صحيحة. وإلا، يتم إرجاع FALSE. AND (1=1, "a"="a") ترجع TRUE. AND (1=2, "a"="a") ترجع FALSE.
OR (الشرط 1[، الشرط 2، ...]) إرجاع FALSE إذا كانت جميع الشروط المحددة خاطئة. إرجاع TRUE إذا كان أي واحد من الشروط المحددة صحيحًا. OR (1=2, "a"="a") ترجع TRUE.

الدالات الحسابية

الدالة الوصف مثال
ABS (رقم) إرجاع القيمة المطلقة للعدد المحدد. (بمعنى آخر، إرجاع الرقم دون إشارته). ABS (-1) ترجع 1.
POWER (رقم، أس) إرجاع نتيجة رفع الرقم الموجب المحدد إلى الأس المحدد. POWER (10, 2) ترجع 100.
NUMBERVALUE (سلسلة، فاصل عشري، فاصل مجموعة أرقام) تحويل السلسلة المحددة إلى رقم. يتم استخدام الفاصلة العشرية المحددة بين العدد الصحيح والأجزاء الكسرية لرقم عشري. يتم استخدام فاصل تجميع الأرقام المحدد كفاصل الآلاف. NUMBERVALUE("1 234,56", ",", " ") ترجع القيمة 1234.56.
VALUE (سلسلة) تحويل السلسلة المحددة إلى رقم. يتم اعتبار الفواصل وأحرف النقطة (.) كفواصل عشرية، ويتم استخدام الواصلة البادئة (-) كعلامة سالب. اطرح استثناءًا إذا كانت السلسلة المحددة تحتوي على أحرف غير رقمية أخرى. VALUE ("1 234,56") تقوم بطرح استثناء.
ROUND (رقم، منازل عشرية) إرجاع الرقم المحدد بعد أن تم تقريبه إلى عدد المنازل العشرية المحدد:
  • إذا كانت قيمة معلمة المنازل العشرية أكبر من 0 (صفر)، فيتم تقريب الرقم المحدد إلى عدد المنازل العشرية العديدة.
  • إذا كانت قيمة معلمة المنازل العشرية المحددة تساوي 0، فيتم تقريب الرقم المحدد إلى أقرب عدد صحيح.
  • إذا كانت قيمة معلمة المنازل العشرية المحددة أقل من 0 (صفر)، فيتم تقريب الرقم المحدد إلى يسار الفاصلة العشرية.
ROUND (1200.767, 2) تقرّب إلى منزلتين عشريتين وترجع 1200.77. ROUND (1200.767, -3) تقرّب إلى أقرب مضاعف من 1,000 وترجع 1000.
ROUNDDOWN (رقم، منازل عشرية) إرجاع الرقم المحدد بعد أن تم تقريبه لأسفل إلى عدد المنازل العشرية المحدد.
[!NOTE]
تعمل هذه الدالة مثل الدالة ROUND، إلا أنها تقرّب دائمًا الرقم المحدد لأسفل (في اتجاه الصفر).
ROUNDDOWN (1200.767, 2) تقرّب لأسفل إلى منزلتين عشريتين وترجع 1200.76. ROUNDDOWN (1700.767, -3) تقرّب لأسفل إلى أقرب مضاعف من 1,000 وترجع 1000.
ROUNDUP (رقم، منازل عشرية) إرجاع الرقم المحدد بعد أن تم تقريبه لأعلى إلى عدد المنازل العشرية المحدد.
[!NOTE]
تعمل هذه الدالة مثل الدالة ROUND، إلا أنها تقرّب دائمًا الرقم المحدد لأعلى (بعيدًا عن الصفر).
ROUNDUP (1200.763, 2) تقرّب لأعلى إلى منزلتين عشريتين وترجع 1200.77. ROUNDUP (1200.767, -3) تقرّب لأعلى إلى أقرب مضاعف من 1,000 وترجع 2000.

دالات تحويل البيانات

الوظيفة ‏‏الوصف مثال
VALUE (سلسلة) تحويل السلسلة المحددة إلى رقم. يتم اعتبار الفواصل وأحرف النقطة (.) كفواصل عشرية، ويتم استخدام الواصلة البادئة (-) كعلامة سالب. اطرح استثناءًا إذا كانت السلسلة المحددة تحتوي على أحرف غير رقمية أخرى. VALUE ("1 234,56") تقوم بطرح استثناء.
NUMBERVALUE (سلسلة، فاصل عشري، فاصل مجموعة أرقام) تحويل السلسلة المحددة إلى رقم. يتم استخدام الفاصلة العشرية المحددة بين العدد الصحيح والأجزاء الكسرية لرقم عشري. يتم استخدام فاصل تجميع الأرقام المحدد كفاصل الآلاف. NUMBERVALUE("1 234,56", ",", " ") تُرجع 1234.56.
INTVALUE (سلسلة) إرجاع تمثيل عدد صحيح للسلسلة المحددة. يتم اقتطاع أيٍّ من المنازل العشرية. INTVALUE ("100.77") تُرجع 100.
INTVALUE (رقم) إرجاع تمثيل عدد صحيح للرقم المحدد. يتم اقتطاع أيٍّ من المنازل العشرية. تُرجع INTVALUE (-100.77) القيمة -100.
INT64VALUE (سلسلة) إرجاع تمثيل int64 للسلسلة المحددة. يتم اقتطاع أيٍّ من المنازل العشرية. INT64VALUE ("22565422744") تُرجع 22565422744.
INT64VALUE (رقم) إرجاع تمثيل int64 للرقم المحدد. يتم اقتطاع أيٍّ من المنازل العشرية. تُرجع INT64VALUE (22565422744.00) القيمة 22565422744.

وظائف السجلات

الوظيفة ‏‏الوصف مثال
NULLCONTAINER (قائمة) إرجاع سجل فارغ له نفس بنية قائمة السجلات المحددة أو السجل المحدد.
[!NOTE]
هذه الدالة قديمة. استخدم الدالة EMPTYRECORD بدلاً منها.
NULLCONTAINER (SPLIT ("abc", 1)) ترجع سجلاً فارغًا جديدًا له نفس بنية القائمة المرتجعة بواسطة الدالة SPLIT.
EMPTYRECORD (سجل) إرجاع سجل فارغ له نفس بنية قائمة السجلات المحددة أو السجل المحدد.
[!NOTE]
سجل فارغ عبارة عن سجل تحتوي فيه جميع الحقول على قيمة فارغة. قيمة فارغة هي 0 (صفر) للأرقام، سلسلة فارغة للسلاسل، وهكذا.
EMPTYRECORD (SPLIT ("abc", 1)) ترجع سجلاً فارغًا جديدًا له نفس بنية القائمة المرتجعة بواسطة الدالة SPLIT.

الدالات النصية

الدالة الوصف مثال
UPPER (سلسلة) إرجاع السلسلة المحددة بعد أن تم تحويلها إلى أحرف كبيرة. UPPER("Sample") ترجع "SAMPLE".
LOWER (سلسلة) إرجاع السلسلة المحددة بعد أن تم تحويلها إلى أحرف صغيرة. LOWER ("Sample") ترجع "sample".
LEFT (سلسلة، عدد الأحرف) إرجاع عدد الأحرف المحدد من بداية السلسلة المحددة. LEFT ("Sample", 3) تُرجع "Sam".
RIGHT (سلسلة، عدد الأحرف) إرجاع عدد الأحرف المحدد من نهاية السلسلة المحددة. RIGHT ("Sample", 3) تُرجع "ple".
MID (سلسلة، موضع البدء، عدد الأحرف) إرجاع عدد الأحرف المحدد من بداية السلسلة المحددة وحتى الموضع المحدد. MID ("Sample", 2, 3) تُرجع "amp".
LEN (سلسلة) إرجاع عدد الأحرف في السلسلة المحددة. LEN ("Sample") تُرجع 6.
CHAR (رقم) إرجاع سلسلة الأحرف المشار إليها بواسطة رقم Unicode المحدد. CHAR (255) تُرجع "ÿ".
[!NOTE]
تتوقف السلسلة التي تُرجعها هذه الدالة على الترميز المحدد في عنصر تنسيق الملف الأصلي. للحصول على قائمة بالرموز المدعومة، راجع فئة الترميز.
CONCATENATE (سلسلة 1 [، سلسلة 2، …]) إرجاع كافة السلاسل النصية المحددة بعد أن ضمها في سلسلة واحدة. CONCATENATE ("abc", "def") تُرجع "abcdef".
[!NOTE]
كما يقوم التعبير "abc" & "def" بإرجاع "abcdef".
TRANSLATE (سلسلة، نمط، استبدال) إرجاع السلسلة المحددة بعد أن تم استبدال كافة حالات تواجد الأحرف في سلسلة النمط المحددة بالأحرف في الموضع المقابل من السلسلة البديلة المحددة. TRANSLATE ("abcdef", "cd", "GH") تستبدل النمط "cd" بالسلسلة "GH" وترجع "abGHef".
REPLACE (سلسلة، نمط، استبدال، علامة تعبير عادي) عندما تكون علامة التعبير العادي المحدد ‎true، يتم إرجاع السلسلة المحددة بعد أن تم تعديلها عن طريق تطبيق التعبير العادي المحدد كوسيطة نمط لهذه الدالة. يتم استخدام هذا التعبير للبحث عن الأحرف التي يجب أن يتم استبدالها. تستخدم أحرف الوسيطة البديلة المحددة لاستبدال الأحرف التي يتم العثور عليها. عندما تكون علامة التعبير العادي المحدد false، تعمل هذه الدالة مثل الدالة TRANSLATE. REPLACE ("+1 923 456 4971", "[^0-9]", "", true) تطبق تعبيرًا عاديًا يقوم بإزالة كافة الرموز غير الرقمية، وترجع "19234564971". REPLACE ("abcdef", "cd", "GH", false) تستبدل النمط "cd" بالسلسلة "GH" وترجع "abGHef".
TEXT (إدخال) تُرجع الإدخال المحدد بعد أن يتم تحويله إلى سلسلة نصية يتم تنسيقها وفقًا لإعدادات الخادم المحلية لمثيل Finance and Operations الحالي. بالنسبة إلى القيم من النوع الحقيقي، تتحدد سلسلة التحويل بمنزلتين عشريتين. إذا كانت إعدادات الخادم المحلية لمثيل Finance and Operations معرّفة على الشكل EN-US، تُرجع TEXT (NOW ()) تاريخ جلسة عمل Finance and Operations الحالية، 17 ديسمبر 2015، على شكل سلسلة نصية "12/17/2015 07:59:23 ص". TEXT (1/3) ترجع "0.33".
FORMAT (السلسلة 1، السلسلة 2[، السلسلة 3، ...]) إرجاع السلسلة المحددة بعد أن تم تنسيقها باستبدال تواجد %N بالوسيطة n. الوسيطات عبارة عن سلاسل. إذا لم يتم توفير وسيطة لمعلمة، فسيتم إرجاع المعلمة على الشكل "%N" في السلسلة. بالنسبة إلى القيم من النوع الحقيقي، تتحدد سلسلة التحويل بمنزلتين عشريتين. في الرسم التوضيحي التالي، يرجع مصدر البيانات PaymentModel قائمة سجلات العملاء عبر المكون Customer وقيمة بيانات المعالجة عبر الحقل ProcessingDate.

PaymentModel data source

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

  • التسمية SYS70894 لـ Finance and Operations، التي تتضمن النص التالي:
    • للغة الإنجليزية- الولايات المتحدة: "‏‫لا توجد عناصر لطباعتها‬"
    • للغة الألمانية: "Nichts zu drucken"
  • التسمية SYS18389 لـ Finance and Operations، التي تتضمن النص التالي:
    • للغة الإنجليزية- الولايات المتحدة: "العميل %1 موقوف لـ %2."
    • للغة الألمانية: "Debitor '%1' wird für %2 gesperrt."

هذه هي المعادلة التي يمكن تصميمها:

FORMAT (CONCATENATE (@"SYS70894", ". ", @"SYS18389"), model.Customer.Name, DATETIMEFORMAT (model.ProcessingDate, "d"))

إذا تمت معالجة تقرير العميل Litware Retail في 17 ديسمبر 2015 بالثقافة الإنجليزية-الولايات المتحدة واللغة الإنجليزية-الولايات المتحدة فإن هذه المعادلة سترجع النص التالي الذي يمكن تقديمه كرسالة استثناء للمستخدم:

"لا توجد عناصر لطباعتها‬. العميل Litware Retail موقوف للتاريخ 12/17/2015."

إذا تمت معالجة التقرير نفسه لعميل Litware Retail في 17 ديسمبر 2015، بالثقافة الألمانية واللغة الألمانية، فإن هذه المعادلة ترجع النص التالي الذي يستخدم تنسيق تاريخ آخر:

"Nichts zu drucken. Debitor 'Litware Retail' wird für 17.12.2015 gesperrt."

[!NOTE]
يتم تطبيق بناء الجملة التالي في معادلات التقارير الإلكترونية للتسميات:
  • بالنسبة إلى التسميات من موارد Finance and Operations: @"X"، حيث X هو معرف التسمية في شجرة مكونات البرنامج (AOT)
  • بالنسبة إلى التسميات المقيمة في تكوينات التقارير الإلكترونية: @"GER_LABEL:X"، حيث X هو معرف التسمية في تكوين التقارير الإلكترونية
NUMBERFORMAT (رقم، تنسيق) إرجاع تمثيل سلسلة للرقم المحدد بالتنسيق المحدد. (لمزيد من المعلومات حول التنسيقات المعتمدة، راجع القياسي و المخصص.) يحدد السياق الذي تُشغل فيه الوظيفة الثقافة التي يتم استخدامها لتنسيق الأرقام. لثقافة EN-US، ترجع NUMBERFORMAT (0.45, "p") النتيجة "45.00 %". NUMBERFORMAT (10.45, "#") ترجع "10".
NUMERALSTOTEXT (رقم، لغة، عملة، طباعة علامة اسم العملة‬، منازل عشرية) إرجاع الرقم المحدد بعد أن تم نطقه (تحويله) إلى سلاسل نصية باللغة المحددة. كود اللغة اختياري. عند تحديده كسلسلة فارغة، يتم استخدام كود اللغة الخاص بسياق التشغيل بدلاً من ذلك. (يتم تحديد كود لغة سياق التشغيل لإنشاء مجلد أو ملف.) كود العملة اختياري أيضًا. عندما يتم تعريفه كسلسلة فارغة، يتم استخدام عملة الشركة.
[!NOTE]
يتم تحليل علامة طباعة اسم العملة ومعلمات المنازل العشرية فقط لأكواد اللغات التالية: CS، وET، وHU، وLT، وLV، وPL، وRU. بالإضافة إلى ذلك، يتم تحليل معلمة طباعة علامة اسم العملة فقط لشركات Finance and Operations، جيث يدعم سياق البلد أو المنطقة صرف أسماء العملات.
NUMERALSTOTEXT (1234.56, "EN", "", false, 2) تُرجع "ألف ومئتين وأربعة وثلاثون و56". NUMERALSTOTEXT (120, "PL", "", false, 0) تُرجع "Sto dwadzieścia". NUMERALSTOTEXT (120.21, "RU", "EUR", true, 2) تُرجع "Сто двадцать евро 21 евроцент".
PADLEFT (سلسلة، طول، أحرف التعبئة) إرجاع سلسلة البطول المحدد تمت فيه تعبئة بداية السلسلة المحددة بالأحرف المحددة. PADLEFT ("1234", 10, " ") تُرجع السلسلة النصية "      1234".
TRIM (سلسلة) إرجاع سلسلة النص المحددة بعد أن تم اقتطاع المسافات البادئة والزائدة، وبعد أن تمت إزالة المسافات المتعددة بين الكلمات. TRIM ("     Sample     text     ") ترجع "نصًا نموذجيًا".
GETENUMVALUEBYNAME (مسار مصدر بيانات تعداد، نص تسمية قيمة تعداد) إرجاع قيمة مصدر بيانات التعداد المحدد استنادًا بالنص المحدد لتسمية التعداد. في الرسم التوضيحي التالي، يتم تقديم تعداد ReportDirection في نموذج بيانات. لاحظ أنه يتم تحديد التسميات لقيم التعداد.

Available values for data model enumeration

يبين الرسم التوضيحي التالي هذه التفاصيل:

  • يتم إدراج تعداد نموذج ReportDirection في تقرير كمصدر بيانات، $Direction
  • تم تصميم تعبير تقرير إلكتروني، $IsArrivals، لاستخدام تعداد النموذج كمعلمة لهذه الدالة. قيمة هذا التعبير هي TRUE.
Example of data model enumeration

دالات تحويل البيانات

الوظيفة الوصف مثال
TEXT (إدخال) تُرجع الإدخال المحدد بعد أن يتم تحويله إلى سلسلة نصية يتم تنسيقها وفقًا لإعدادات الخادم المحلية لمثيل Finance and Operations الحالي. بالنسبة إلى القيم من النوع الحقيقي، تتحدد سلسلة التحويل بمنزلتين عشريتين. إذا كانت إعدادات الخادم المحلية لمثيل Finance and Operations معرّفة على الشكل EN-US, TEXT (NOW ()) تُرجع جلسة عمل Finance and Operations الحالية، 17 ديسمبر 2015، على شكل السلسلة النصية "12/17/2015 07:59:23 AM". TEXT (1/3) ترجع "0.33".
QRCODE (سلسلة) إرجاع صورة الكود QR بالتنسيق الثنائي base64 للسلسلة المحددة. QRCODE ("نص نموذجي") تُرجع U2FtcGxlIHRleHQ=.

وظائف تجميع البيانات

الوظيفة الوصف مثال
FORMATELEMENTNAME () إرجاع اسم عنصر التنسيق الحالي. إرجاع علامة سلسلة فارغة عندما تكون العلامة تجميع تفاصيل المخرجات‬ للملفات الحالية متوقفة عن التشغيل. لمزيد من المعلومات حول كيفية استخدام هذه الدالة، راجع دليل المهام التقارير الإلكترونية - استخدام بيانات مخرجات التنسيق لعمليات الجرد والتجميع جزء من عملية الأعمال اكتساب/تطوير خدمة تكنولوجيا المعلومات/مكونات الحلول.
SUMIFS (سلسلة مفاتيح للتجميع، سلسلة النطاق 1 للمعايير، سلسلة القيمة 1 للمعايير، [، سلسلة النطاق 2 للمعايير، سلسلة القيمة 2 للمعايير…]) إرجاع مجموع قيم عقد XML (حيث يتم تحديد الاسم المحدد كمفتاح) الذي تم تجميعه أثناء تنفيذ هذا التنسيق، ويفي هذا بالشروط المحددة (أزواج من النطاقات والقيم). إرجاع القيمة 0 (صفر) عندما تكون العلامة تجميع تفاصيل المخرجات للملفات الحالية متوقفة عن التشغيل.
SUMIF (سلسلة مفاتيح للتجميع، سلسلة نطاق المعايير، سلسلة قيم المعايير) إرجاع مجموع قيم عقد XML (حيث يتم تحديد الاسم المحدد كمفتاح) الذي تم تجميعه أثناء تنفيذ هذا التنسيق، ويفي هذا بالشرط المحدد (النطاق والقيمة). إرجاع القيمة 0 (صفر) عندما تكون العلامة تجميع تفاصيل المخرجات للملفات الحالية متوقفة عن التشغيل.
COUNTIFS (سلسلة النطاق 1 للمعايير، سلسلة القيمة 1 للمعايير [سلسلة النطاق 2 للمعايير، سلسلة القيمة 2 للمعايير, …]) إرجاع عدد عقد XML التي تم جمعها أثناء تنفيذ هذا التنسيق، والذي يفي بالشروط المحددة (أزواج النطاقات والقيم). إرجاع القيمة 0 (صفر) عندما تكون العلامة تجميع تفاصيل المخرجات للملفات الحالية متوقفة عن التشغيل.
COUNTIF (سلسلة نطاق المعايير، سلسل قيمة المعايير) إرجاع عدد عقد XML التي تم جمعها أثناء تنفيذ هذا التنسيق، والذي يفي بالشرط الذي تم إدخاله (النطاق والقيمة). إرجاع القيمة 0 (صفر) عندما تكون العلامة تجميع تفاصيل المخرجات للملفات الحالية متوقفة عن التشغيل.
COLLECTEDLIST (سلسلة النطاق 1 للمعايير، سلسلة القيمة 1 للمعايير [سلسلة النطاق 2 للمعايير، سلسلة القيمة 2 للمعايير …]) إرجاع قائمة قيم عقد XML التي تم جمعها أثناء تنفيذ هذا التنسيق، والتي تفي بالشروط التي تم إدخالها (النطاق والقيمة). إرجاع قائمة فارغة عندما تكون العلامة تجميع تفاصيل المخرجات للملفات الحالية متوقفة عن التشغيل.

دالات أخرى (خاصة بمجال الأعمال)

الوظيفة ‏‏الوصف مثال
CONVERTCURRENCY (المبلغ، العملة المصدر، العملة الهدف، التاريخ، الشركة) تحويل المبلغ المالي المحدد من العملة المصدر المحددة إلى العملة الهدف المحددة باستخدام إعدادات شركة Finance and Operations المحددة بالتاريخ المحدد. CONVERTCURRENCY (1, "EUR", "USD", TODAY(), "DEMF") ترجع مكافئ اليورو الواحد بالدولار الأمريكي بتاريخ الجلسة الحالية، استنادًا إلى إعدادات شركة DEMF.
ROUNDAMOUNT (رقم، منازل عشرية، قاعدة التقريب) تقريب المبلغ المحدد وفقًا لقاعدة التقريب المحددة وعدد المنازل العشرية المحدد.
[!NOTE]
يجب تحديد قاعدة التقريب كقيمة Finance and Operations للتعداد RoundOffType.
إذا تم تعيين المعلمة model.RoundOff إلى Downward, ROUNDAMOUNT (1000.787, 2, model.RoundOff) تُرجع القيمة 1000.78. إذا تم تعيين المعلمة model.RoundOff إلى Normal أو Rounding-up، فسترجع ROUNDAMOUNT (1000.787, 2, model.RoundOff) القيمة 1000.79.
CURCredRef (خانات رقمية) إرجاع مرجع دائن، استنادًا إلى الخانات الرقمية في رقم الفاتورة المحددة. CURCredRef ("VEND-200002") ترجع "2200002".
MOD_97 (خانات رقمية) إرجاع مرجع دائن كتعبير MOD97، استنادًا إلى الخانات الرقمية في رقم الفاتورة المحددة. MOD_97 ("VEND-200002") ترجع "20000285".
ISOCredRef (خانات رقمية) إرجاع مرجع دائن المنظمة العالمية للمواصفات (ISO)، استنادًا إلى الخانات الرقمية والرموز الأبجدية في رقم الفاتورة المحددة.
[!NOTE]
لإزالة الرموز من الحروف الأبجدية غير المتوافقة مع ISO، يجب ترجمة معلمة الإدخال قبل أن يتم تمريرها إلى هذه الدالة.
ISOCredRef ("VEND-200002") ترجع "RF23VEND-200002".
CN_GBT_AdditionalDimensionID (سلسلة، رقم) الحصول على معرف البُعد المالي. يتم تمثيل الأبعاد في هذه السلسلة كمعرّفات مفصولة بفواصل. في هذه السلسلة، تحدد الأرقام كود تسلسل البُعد المطلوب. CN_GBT_AdditionalDimensionID ("AA,BB,CC,DD,EE,FF,GG,HH",3) تُرجع "CC".
GetCurrentCompany () إرجاع التمثيل النصي لكود أحد الكيانات القانونية (الشركة) الذي يقوم مستخدم بتسجيل الدخول فيه حاليًا. GETCURRENTCOMPANY () تُرجع USMF لمستخدم سجل دخوله إلى شركة Contoso Entertainment System USA وهي شركة Finance and Operations.
CH_BANK_MOD_10 (خانات رقمية) إرجاع مرجع دائن كتعبير MOD10، استنادًا إلى الخانات الرقمية في رقم الفاتورة المحددة. CH_BANK_MOD_10 ("VEND-200002") تُرجع 3.
FA_SUM (كود الأصل الثابت، كود نموذج القيمة، تاريخ البدء، تاريخ الانتهاء) إرجاع حاوية البيانات المُعدة لمبالغ الأصول الثابتة للفترة المحددة. FA_SUM ("COMP-000001", "Current", Date1, Date2) يُرجع حاوية البيانات المعدّة للأصل الثابت "COMP-000001" مع نموذج القيمةم "الحالي" لفترة من التاريخ1 إلى التاريخ2.
FA_BALANCE (كود الأصل الثابت، كود نموذج القيمة، سنة إعداد التقرير، تاريخ إعداد التقرير) إرجاع حاوية البيانات المُعدة لرصيد الأصل الثابت. يجب تحديد سنة إعداد التقرير كقيمة لتعداد AssetYear في Finance and Operations. FA_SUM ("COMP-000001", "Current", AxEnumAssetYear.ThisYear, SESSIONTODAY ()) حاوية البيانات المعدّة من أرصدة الأصل الثابت "COMP-000001" مع نموذج القيمة "الحالي" في تاريخ جلسة عمل Finance and Operations الحالية.
TABLENAME2ID (سلسلة) إرجاع تمثيل عدد صحيح لمعرف الجدول لاسم الجدول المحدد. TABLENAME2ID ("نظام جمع المعلومات التجارية بين دول الاتحاد الأوروبي") تُرجع 1510.
ISVALIDCHARACTERISO7064 (سلسلة) إرجاع القيمة المنطقية TRUE عندما تمثل السلسلة المحددة رقم حساب مصرفي دولي (IBAN)‬ صالحًا. وإلا، إرجاع القيمة المنطقية FALSE. تُرجع ISVALIDCHARACTERISO7064 ("AT61 1904 3002 3457 3201") القيمة TRUE. تُرجع ISVALIDCHARACTERISO7064 ("AT61") القيمة FALSE.

ملحق قائمة الدالات

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

الموارد الإضافية

نظرة عامة حول التقارير الإلكترونية

توسيع قائمة دالات التقارير الإلكترونية