لنقم بإنشاء تقرير، وإضافة مخطط تخطيط البيانات الأساسي، وإضافة مجموعة من البيانات من نوع "الاستعلام" إلى نظام التحكم في الوصول وإنشاء طلب بسيط (انظر الشكل 1).
الشكل 1. استعلام مجموعة البيانات |
لنقم بإنشاء تقرير، وإضافة مخطط تخطيط بيانات أساسي، وإضافة مجموعة من البيانات من نوع "الاستعلام" إلى نظام التحكم في الوصول وإنشاء طلب بسيط (انظر الشكل 6).
الشكل 6. استعلام مجموعة البيانات |
دعنا نذهب إلى علامة التبويب "الإعدادات" وننشئ إعدادًا لإخراج البيانات - سيكون هذا سجلاً مفصلاً (انظر الشكل 8).
نتيجة التقرير:
تنزيل نموذج التقرير
ما تحتاج إلى معرفته عند استخدام هذه الطريقة:
1) قد يحتوي تعبير محرك تكوين البيانات على استدعاءات لوظائف وحدات التكوين العامة العامة. على سبيل المثال:
الاسم المختصر (الرابط، التاريخ، الرقم)
2) عند إنشاء تقرير برمجيًا، يُسمح باستخدام وظائف الوحدات النمطية المشتركة فقط إذا تم تحديد المعلمة المقابلة لمعالج تكوين البيانات (المعلمة الرابعة):
CompositionProcessor = newDataCompositionProcessor;
LayoutProcessor.Initialize(LayoutLayout, DecryptionData, True);
3) لا يمكن استخدام وظائف الوحدات الشائعة في تعبيرات الحقول المخصصة.
4) إذا تم طرح استثناء عند إنشاء تقرير يشير إلى وظيفة وحدة نمطية مشتركة، فتحقق من سياق تنفيذ الوحدة (انظر الشكل 9).
الحصول على قائمة المنتجات للتقرير (DocumentLink)- تقوم الوظيفة بإنشاء سطر بقائمة البضائع الواردة.
// خيارات:
// DocumentLink - DocumentLink.إيصال البضائع - مستند "إيصال البضائع".
// قيمة الإرجاع:
// سلسلة - سلسلة تحتوي على قائمة المنتجات.
وظيفة الحصول على قائمة المنتجات لتصدير التقرير (DocumentLink).
قائمة المنتجات = "";
لكل سطر PM من دورة DocumentLink.Products
قائمة المنتجات = قائمة المنتجات + سطر TC.Nomenclature؛
قائمة المنتجات = قائمة المنتجات + الرموز.ملاحظة؛
EndCycle;
قائمة إرجاع المنتجات؛
EndFunction // الحصول على قائمة المنتجات للتقرير ()
أريد في هذه المذكرة القصيرة أن أوضح كيف يمكنك تلخيص القيم على مستويات مختلفة من التجميع في تقرير باستخدام نظام تكوين البيانات.
كما هو موضح في الصورة، فقط على مستوى التجميع "مجموعات العناصر"، يتم حساب مورد "الطلب"، ويعرض مقدار الاحتياجات التي يجب طلبها لمجموعة العناصر الحالية بناءً على شروط معينة:
وبناء على ذلك، من الضروري الآن حساب المجاميع للمجموعات المذكورة أعلاه ("المستودعات"، "أنواع المستودعات") والإجمالي الإجمالي.
للقيام بذلك، استخدم الوظيفة حساب ExpressionWithGroupArray:
تقييم التعبير باستخدامGROUPARRAY (EVALEXPRESSIONWITHGROUPARRAY)
بناء الجملة:
تقييم ExpressionWithGroupArray (،)
وصف:
تقوم الدالة بإرجاع مصفوفة، يحتوي كل عنصر منها على نتيجة تقييم تعبير للتجميع حسب الحقل المحدد.
يقوم مؤلف التخطيط، عند إنشاء تخطيط، بتحويل معلمات الوظيفة إلى مصطلحات حقول تخطيط تكوين البيانات. على سبيل المثال، سيتم تحويل حقل الحساب إلى DataSet.Account.
يقوم منشئ التخطيط، عند إنشاء تعبيرات لمخرجات حقل مخصص يحتوي تعبيره على الدالة CalculateArrayWithGroupArray() فقط، بإنشاء تعبير الإخراج بحيث يتم ترتيب معلومات الإخراج. على سبيل المثال، بالنسبة لحقل مخصص يحتوي على التعبير:
CalculateExpressionWithGroupArray("المبلغ(AmountTurnover)"، "الطرف المقابل")
سيقوم منشئ التخطيط بإنشاء التعبير التالي للإخراج:
ConnectRows(Array(Order(CalculateExpressionWithGroupingValueTable("View(Sum(DataSet.AmountTurnover)),Sum(DataSet.AmountTurnover)",,"DataSet.Account"),"2")))
خيارات:
النوع: سلسلة. التعبير المراد تقييمه. سلسلة، على سبيل المثال، Amount(AmountTurnover).
النوع: سلسلة. تجميع تعبيرات الحقول - تعبيرات حقول التجميع، مفصولة بفواصل. على سبيل المثال، المقاول، الطرف.
النوع: سلسلة. تعبير يصف التحديد المطبق على سجلات التفاصيل. لا يدعم التعبير استخدام الوظائف التجميعية. على سبيل المثال، DeletionFlag = False.
النوع: سلسلة. تعبير يصف التحديد المطبق على سجلات المجموعة. على سبيل المثال، المبلغ(AmountTurnover) > &المعلمة1.
مثال:
الحد الأقصى(CalculateExpressionWithGroupArray("Amount(AmountTurnover)", "Counterparty"));
يمكن العثور على وصف تفصيلي لبناء جملة الوظيفة على http://its.1c.ru/db/v837doc#bookmark:dev:TI000000582
الآن، بالنسبة للحساب، نقوم بتكرار حقل "الطلب"، بقيم مختلفة "الحساب حسب..."، وذلك باستخدام التعبيرات التالية، لاحظ أنه في كل مستوى أعلى يتم استخدام قيم المستويات الموجودة أسفل المجموعات .
ونتيجة لذلك، نحصل على البناء التالي:
يوم جيد أيها القراء الأعزاء لمدونتنا! اليوم أريد أن أخبركم، باستخدام مثال حقيقي، كيف
استخدم وظائف ACS Array وJoinStrings. في مقال عنه
كان هناك القليل من الإشارة إلى كيفية العمل مع
على الإشارة المرجعية
، كما سبق أن تم شرحه
باستخدام علامة التبويب "الموارد". اليوم سوف ننتبه مرة أخرى إلى هذه
الإشارات المرجعية في ضوء موضوعنا.
ظهور مثال لتقرير 1C باستخدام وظيفتي ACS مجموعة مصفوفةو ConnectRowsالتالي:
المهمة: تحتاج إلى إدراج جميع أرقام المبيعات لمنتج واحد في خلية واحدة.
شيء من هذا القبيل: التسميات | الكمية | 001، 002، الخ. |
سوف نستخدم طلبًا لتسجيل التراكم "Realization of TMZ".
يختار
تنفيذ TMZ. المسجل. رقم،
تنفيذ TMZ. التسميات,
تنفيذ TMZ. المسجل،
تنفيذ TMZ. دوران الكمية
من
سجل التراكم. تنفيذ TMZ. الثورات
(،، المسجل،) كيفية تنفيذ TMZ
يوجد سجل التراكم "Realization of TMZ" في كل من تكوين المحاسبة وفي تكوين إدارة المؤسسات التجارية (UTP). تعرف على كيفية تكوين USP في عنصر دليل "Nomenclature". لذلك، بعد التنزيل، يمكنك تشغيل هذا التقرير في كلا التكوينين للتحقق من وظائفه.
تم استخدام نفس الخطوات لكن مع بعض الإضافات في الإنشاء
.
JoinStrings
يستخدم لربط السلاسل في سلسلة واحدة.
بناء الجملة:
ConnectRows(القيمة، فاصل العناصر، فاصل الأعمدة)
خيارات:
في ضوء الإصدار القادم من 8.2.14، سأحاول وصف بعض الوظائف الجديدة لنظام تكوين البيانات.
افتح الرسم التخطيطي لتخطيط البيانات، ويفضل أن يكون ذلك في تقرير خارجي، لتسهيل عملية التحرير.
نقوم بإضافة مجموعة بيانات من نوع الاستعلام ونكتب، إما يدوياً أو باستخدام مصمم الاستعلام، استعلاماً بسيطاً:
1. قم بإعداد طلب في نظام التحكم في الوصول.
2. قم بإعداد الحقول المحسوبة في نظام التحكم في الوصول
3. قم بتكوين تخطيط البيانات في علامة تبويب الإعدادات
4. إطلاق 1C إنتربرايز 8.2.14. افتح التقرير. نحن نشكل، نتلقى.
وصف الوظائف الجديدة نفسها:
1. التاريخ الحالي ()
إرجاع تاريخ النظام. عند إنشاء تخطيط تخطيط، في جميع التعبيرات الموجودة في التخطيط، يتم استبدال وظيفة CurrentDate() بقيمة التاريخ الحالي.
2. حساب التعبير ()
بناء الجملة:
حساب التعبير (،)
وصف:
تم تصميم الوظيفة لتقييم تعبير في سياق بعض المجموعات.
تأخذ الوظيفة في الاعتبار اختيار المجموعات، ولكنها لا تأخذ في الاعتبار التحديدات الهرمية.
لا يمكن تطبيق الوظيفة على مجموعة في تحديد المجموعة لتلك المجموعة. على سبيل المثال، عند تحديد مجموعة Nomenclature، لا يمكنك استخدام التعبير CalculateExpression("Sum(SumTurnover)"، "TotalTotal") > 1000. ولكن يمكن استخدام مثل هذا التعبير في الاختيار الهرمي.
إذا كان سجل النهاية يسبق سجل البداية، فيعتبر أنه لا توجد سجلات لحساب البيانات التفصيلية وحساب الوظائف المجمعة.
عند حساب تعبيرات الفاصل الزمني للإجمالي الكلي (يتم تعيين معلمة التجميع على GrandTotal)، فمن المفترض أنه لا توجد سجلات لحساب البيانات التفصيلية وحساب الوظائف التجميعية.
رابط التخطيط عند إنشاء تعبير دالة حساب التعبير، إذا كان تعبير الترتيب يحتوي على حقول لا يمكن استخدامها في التجميع، فسيتم استبدال الوظيفة حساب التعبيرعلى باطل.
خيارات
يكتب: خط. التعبير المراد تقييمه.
يكتب: خط. يحتوي على اسم المجموعة التي سيتم تقييم التعبير في سياقها. إذا تم استخدام سلسلة فارغة كاسم للتجميع، فسيتم إجراء الحساب في سياق التجميع الحالي. إذا تم استخدام سلسلة GeneralTotal كاسم للمجموعة، فسيتم إجراء الحساب في سياق الإجمالي الكلي. وبخلاف ذلك، سيتم إجراء الحساب في سياق المجموعة الأصلية التي تحمل نفس الاسم.
على سبيل المثال:
Sum(Sales.SumTurnover)/حساب("Sum(Sales.SumTurnover)"، "الإجمالي")
في هذا المثال، ستكون النتيجة نسبة المجموع حسب الحقل المبيعات.المبلغ الدورانيتجميع السجلات لمجموع نفس الحقل في التخطيط بأكمله؛
يكتب: خط. يمكن أن تأخذ المعلمة القيم التالية:
· المجموع الإجمالي- سيتم حساب التعبير لجميع سجلات التجميع.
· تَسَلسُل— سيتم تقييم التعبير للسجل الهرمي الأصلي، إذا كان هناك واحد، وللمجموعة بأكملها، إذا لم يكن هناك سجل هرمي أصل.
· التجميع— سيتم تقييم التعبير لسجل تجميع المجموعة الحالي.
· GroupingNonResource— عند حساب دالة لسجل مجموعة حسب الموارد، سيتم حساب التعبير لسجل المجموعة الأول من المجموعة الأصلية.
عند حساب دالة حساب التعبير() مع معنى GroupingNonResourceبالنسبة لسجلات المجموعة التي لم يتم تجميعها حسب الموارد، يتم حساب الدالة بنفس الطريقة التي سيتم حسابها بها إذا كانت قيمة المعلمة مساوية للقيمة التجميع.
يقوم منشئ تخطيط تكوين البيانات، عند إنشاء تخطيط تكوين البيانات عند إخراج حقل مورد يتم من خلاله إجراء التجميع للتخطيط، بوضع تعبير في التخطيط الذي يتم حسابه باستخدام الوظيفة حساب التعبير() ، تشير إلى المعلمة GroupingNonResource. بالنسبة للموارد الأخرى، يتم وضع تعبيرات الموارد المعتادة في مجموعة الموارد.
يكتب: خط. يشير إلى السجل الذي يجب أن يبدأ الجزء منه، والذي يجب أن يتم حساب وظائف التعبير التجميعية منه، ومن أي سجل يمكن الحصول على قيم الحقول خارج الوظائف المجمعة. يمكن أن تكون القيمة واحدة مما يلي:
· أولاً
· الأخير (الأخير)
· سابق
· التالي التالي)
· حاضِر
· LimitingValue(قيمة الحدود) LimitingValue
يكتب: خط. يشير إلى السجل الذي يجب أن يستمر الجزء فيه، والذي يجب أن يتم فيه حساب الوظائف الإجمالية للتعبير. يمكن أن تكون القيمة واحدة مما يلي:
· أولاً. من الضروري الحصول على سجل المجموعة الأولى. بعد الكلمة الموجودة بين قوسين، يمكنك تحديد تعبير، وسيتم استخدام نتيجته كإزاحة من بداية التجميع. يجب أن تكون القيمة الناتجة عددًا صحيحًا أكبر من الصفر. على سبيل المثال، الأول (3) - تلقي السجل الثالث من بداية التجميع.
إذا كان السجل الأول خارج المجموعة، فيعتبر أنه لا توجد سجلات. على سبيل المثال، إذا كان هناك 3 سجلات، وتريد الحصول على الأول (4)، فيعتبر أنه لا توجد سجلات.
· الأخير (الأخير). تحتاج إلى الحصول على سجل التجميع الأخير. بعد الكلمة الموجودة بين قوسين، يمكنك تحديد تعبير، وسيتم استخدام نتيجته كإزاحة من نهاية المجموعة. يجب أن تكون القيمة الناتجة عددًا صحيحًا أكبر من الصفر. على سبيل المثال، Last(3) - تلقي السجل الثالث من نهاية المجموعة.
إذا كان السجل الأخير خارج المجموعة، فيعتبر أنه لا توجد سجلات. على سبيل المثال، إذا كان هناك 3 سجلات، وتريد الحصول على Last(4)، فيُعتبر أنه لا توجد سجلات.
· سابق. تحتاج إلى الحصول على سجل التجميع السابق. بعد الكلمة الموجودة بين قوسين، يمكنك تحديد تعبير، وسيتم استخدام نتيجته كإزاحة من سجل التجميع الحالي. على سبيل المثال، السابق (2) - الحصول على السابق من السجل السابق.
إذا تجاوز السجل السابق التجميع (على سبيل المثال، بالنسبة لسجل التجميع الثاني، تحتاج إلى الحصول على السابق (3))، فسيتم الحصول على سجل التجميع الأول.
عند استرجاع السجل السابق لإجمالي التجميع يعتبر أنه تم الحصول على السجل الأول.
· التالي التالي). تحتاج إلى الحصول على سجل المجموعة التالي. بعد الكلمة الموجودة بين قوسين، يمكنك تحديد تعبير، وسيتم استخدام نتيجته كإزاحة للأمام من سجل التجميع الحالي. على سبيل المثال، التالي(2) - الحصول على التالي من السجل التالي.
إذا تجاوز السجل التالي التجميع، فيعتبر أنه لا توجد سجلات. على سبيل المثال، إذا كان هناك 3 إدخالات واستقبل الإدخال الثالث Next()، فيُعتبر أنه لا توجد إدخالات.
عند استلام السجل التالي لإجمالي التجميع، يعتبر أنه لا يوجد سجل.
· حاضِر. تحتاج إلى الحصول على السجل الحالي.
عند استرداد إجمالي التجميع، يتم الحصول على السجل الأول.
· LimitingValue(قيمة الحدود). الحاجة إلى الحصول على سجل بالقيمة المحددة. بعد الكلمة LimitingValueبين قوسين تحتاج إلى الإشارة إلى التعبير بالقيمة التي تريد أن تبدأ الجزء بها، وهو حقل الترتيب الأول.
سيتم إرجاع السجل الأول الذي تكون قيمة حقل الترتيب الخاص به أكبر من أو تساوي القيمة المحددة كسجل. على سبيل المثال، إذا تم استخدام حقل الفترة كحقل الطلب، وكان يحتوي على القيم 01/01/2010، 02/01/2010، 03/01/2010، وتريد الحصول عليه LimitingValue(DateTime(2010, 1, 15))، ثم سيتم استلام المحضر بتاريخ 02/01/2010.
يكتب: خط. يسرد التعبيرات، مفصولة بفواصل، والتي تصف قواعد الترتيب. إذا لم يتم تحديده، فسيتم تنفيذ الترتيب بنفس الطريقة المتبعة في التجميع الذي يتم تقييم التعبير من أجله. بعد كل تعبير يمكنك تحديد كلمة رئيسية عمر(للترتيب التصاعدي) تنازلي(للترتيب التنازلي) و الطلب التلقائي(لترتيب الحقول المرجعية حسب الحقول التي تريد ترتيب الكائن المشار إليه بها). كلمة الطلب التلقائييمكن استخدامها كما هو الحال مع الكلمة عمر، هكذا مع الكلمة تنازلي.
يكتب: خط. نفس المعلمة فرز. يستخدم لتنظيم السجلات الهرمية. إذا لم يتم تحديده، يقوم منشئ التخطيط بإنشاء الترتيب وفقًا للترتيب المحدد في المعلمة فرز.
يكتب: خط. يحدد قاعدة تحديد السجل السابق أو التالي في حالة وجود عدة سجلات بنفس قيمة الترتيب:
· بشكل منفصليشير إلى أنه يتم استخدام تسلسل السجلات المرتبة لتحديد السجلات السابقة والتالية. القيمة الافتراضية.
· معاًيشير إلى أن السجلات السابقة والتالية يتم تحديدها بناءً على قيم تعبيرات الترتيب.
على سبيل المثال، إذا تم ترتيب التسلسل الناتج حسب التاريخ:
№ | تاريخ | الاسم الكامل | معنى |
1 | 01 يناير 2001 |
إيفانوف م. |
10 |
2 | 02 يناير 2001 | بيتروف س. | 20 |
3 | 03 يناير 2001 | سيدوروف ر. | 30 |
4 | 04 يناير 2001 | بيتروف س. | 40 |
بشكل منفصل، الذي - التي:
§ الإدخال السابق للإدخال 3 سيكون الإدخال 2.
التيار الحالي(وبناء على ذلك المعلمات يبدأو نهاية)، ثم بالنسبة للسجل 2، سيتكون هذا الجزء من سجل واحد 2. وسيكون التعبير مساويًا لـ 20.
إذا كانت قيمة المعلمة معاً، الذي - التي:
§ الإدخال السابق للإدخال 3 سيكون الإدخال 1.
§ إذا تم تعريف جزء الحساب على أنه التيار الحالي(وبناء على ذلك المعلمات يبدأو نهاية)، ثم بالنسبة للسجل 2، سيتكون هذا الجزء من السجلين 2 و3. التعبير CalculateExpression("Sum(Value)"، الحالي، الحالي)سوف يساوي 50
عند تحديد قيمة معلمة تساوي معاً، في المعلمات يبدأو نهايةلا يمكنك تحديد إزاحة للمواضع الأول، الأخير، السابق، التالي.
CalculateExpression("Sum(SumTurnover)"، "الأول"، "الحالي")
إذا كنت تريد الحصول على قيمة التجميع في السطر السابق، يمكنك استخدام التعبير التالي:
احسب التعبير ("السعر"، "السابق")
قائمة جديدالمهام:احسب ExpressionWithGroupArray(,) -
تقوم الدالة بإرجاع مصفوفة، يحتوي كل عنصر منها على نتيجة تقييم تعبير للتجميع حسب الحقل المحدد.
احسب ExpressionWithGroupValueTable(,) -
تقوم الدالة بإرجاع جدول قيم، يحتوي كل صف منه على نتيجة تقييم التعبيرات للتجميع حسب الحقل المحدد
معبأ بالقيمة() - تُرجع True إذا كانت القيمة غير القيمة الافتراضية لهذا النوع، بخلاف NULL، بخلاف مرجع فارغ، بخلاف غير محدد. يتم التحقق من القيم المنطقية بحثًا عن القيم الخالية. يتم التحقق من السلاسل بحثًا عن عدم وجود أحرف ليست بها مسافات بيضاء
شكل(، ) - تلقي سلسلة منسقة للقيمة التي تم تمريرها. يتم تعيين سلسلة التنسيق وفقًا لسلسلة التنسيق الخاصة بنظام 1C:Enterprise.
سلسلة فرعية(، ،) - تم تصميم هذه الوظيفة لاستخراج سلسلة فرعية من سلسلة.
طول الخط() - تم تصميم الوظيفة لتحديد طول السلسلة. المعلمة هي تعبير سلسلة
خط() - إذا تم تمرير مصفوفة كمعلمة، فإن الدالة ترجع سلسلة تحتوي على تمثيلات سلسلة لجميع عناصر المصفوفة، مفصولة بأحرف "؛ ". إذا تم تمرير جدول القيم كمعلمة، تقوم الدالة بإرجاع سلسلة تحتوي على تمثيلات سلسلة لجميع صفوف جدول القيم، مع فصل تمثيلات الخلية لكل صف بواسطة أحرف "؛"، والصفوف بخط جديد شخصية. إذا كان تمثيل سلسلة العنصر فارغًا، فسيتم عرض سلسلة بدلاً من تمثيلها.
1. احسب (التقييم)- يهدف إلى تقييم التعبير في سياق بعض المجموعات. يتم استخدام الوظيفة للتوافق مع الإصدارات السابقة من النظام الأساسي. من المستحسن استخدام الدالة CalculateExpression بدلاً من ذلك.
بناء الجملة:
حساب (التعبير، التجميع، نوع الحساب)
خيارات :
بناء الجملة:
حساب التعبير (التعبير، التجميع، نوع الحساب، البداية، النهاية، الفرز، الفرز الهرمي، معالجة قيم الطلب المتطابقة)
خيارات :
يحسب هذا المثال قيمة التسلسل الهرمي الحالي:
خيار
عندما يكون المستوى ()> 0
ثم قم بتقييم التعبير ("المرجع"، "التسلسل الهرمي")
وإلا لاغية
نهاية
ملحوظات:
تأخذ الوظيفة في الاعتبار اختيار المجموعات، ولكنها لا تأخذ في الاعتبار التحديدات الهرمية. لا يمكن تطبيق الوظيفة على مجموعة في تحديد المجموعة لتلك المجموعة. على سبيل المثال، عند تحديد مجموعة Nomenclature، لا يمكنك استخدام التعبير CalculateExpression("Sum(SumTurnover)", "TotalTotal") > 1000 . ولكن يمكن استخدام مثل هذا التعبير في الاختيار الهرمي. إذا كان سجل النهاية يسبق سجل البداية، فيعتبر أنه لا توجد سجلات لحساب البيانات التفصيلية وحساب الوظائف المجمعة. عند حساب تعبيرات الفاصل الزمني للإجمالي الكلي (يتم تعيين معلمة التجميع على "الإجمالي الإجمالي")، فمن المفترض أنه لا توجد سجلات لحساب البيانات التفصيلية وحساب الوظائف التجميعية. عند إنشاء تعبير لوظيفة CalculateExpression، يقوم مؤلف التخطيط، إذا كان تعبير الترتيب يحتوي على حقول لا يمكن استخدامها في التجميع، باستبدال وظيفة CalculateExpression بـ NULL.
3. تقييم التعبير بمصفوفة المجموعة (EvalExpression بمصفوفة المجموعة) - تقوم الدالة بإرجاع مصفوفة، يحتوي كل عنصر منها على نتيجة حساب تعبير للتجميع حسب الحقل المحدد.
بناء الجملة:
CalculateExpressionWithGroupArray (التعبير، GroupFieldExpressions، SelectRecords، SelectGroups)
خيارات :
يقوم منشئ التخطيط، عند إنشاء تعبيرات لعرض حقل مخصص يحتوي تعبيره على وظيفة CalculateArrayWithGroup فقط، بإنشاء تعبير العرض بحيث يتم ترتيب البيانات المعروضة بواسطة طرق العرض والبيانات.
على سبيل المثال، بالنسبة لحقل مخصص يحتوي على التعبير:
CalculateExpressionWithGroupArray("المبلغ(AmountTurnover)"، "الطرف المقابل")
سيقوم منشئ التخطيط بإنشاء التعبير التالي للإخراج:
ConnectRows(Array(Order(CalculateExpressionWithGroupingValueTable("View(Sum(DataSet.AmountTurnover))), Amount(DataSet.AmountTurnover)", "DataSet.Account"), "2")))
4.EvalExpressionWithGroupValueTable - تقوم الدالة بإرجاع جدول القيم، يحتوي كل عنصر منه على نتيجة حساب تعبير للتجميع حسب الحقل المحدد.
بناء الجملة:
CalculateExpressionWithGroupValueTable (التعبير، تعبيرات GroupField، تحديد السجلات، تحديد المجموعة)
خيارات :
ستكون نتيجة هذه الوظيفة عبارة عن جدول قيم يحتوي على أعمدة الطرف المقابل وحجم المبيعات، والذي سيحتوي على الأطراف المقابلة مع أحجام مبيعاتها.
يقوم مؤلف التخطيط، عند إنشاء تخطيط، بتحويل معلمات الوظيفة إلى مصطلحات حقول تخطيط تكوين البيانات. على سبيل المثال، سيتم تحويل حقل الحساب إلى DataSet.Account.
على سبيل المثال، حقل مخصص بالتعبير:
CalculateExpressionWithGroupValueTable("الحساب، المبلغ(AmountTurnover)"، "الحساب")
سيقوم منشئ التخطيط بإنشاء التعبير التالي للإخراج:
ConnectRows(GetPart(Order(CalculateExpressionWithGroupValueTable("DataSet.Account, DataSet.AccountRepresentation, Sum(DataSet.AmountTurnover), View(DataSet.AmountTurnover), DataSet.OrderingField", "DataSet.Account"), "5, 1, 3" )، "2، 4"))
5. المستوى - تم تصميم الوظيفة للحصول على مستوى التسجيل الحالي.
بناء الجملة:
مستوى()
مثال:
مستوى()
6. رقم التسلسل - احصل على الرقم التسلسلي التالي.
بناء الجملة:
رقم حسب الطلب ()
مثال:
رقم حسب الطلب ()
7. رقم التسلسل في المجموعة - إرجاع رقم التسلسل التالي في المجموعة الحالية.
مثال:
NumberByOrderInGroup()
8. التنسيق - الحصول على سلسلة منسقة للقيمة التي تم تمريرها.
بناء الجملة:
التنسيق (القيمة، سلسلة التنسيق)
خيارات :
9. بداية الفترة
بناء الجملة:
فترة البدء (التاريخ، نوع الفترة)
خيارات :
10. نهاية الفترة - تم تصميم الوظيفة لتحديد تاريخ محدد من تاريخ معين.
بناء الجملة:
فترة النهاية (التاريخ، نوع الفترة)
خيارات :
11. AddKDate (DateAdd) - تم تصميم الوظيفة لإضافة قيمة معينة إلى التاريخ.
بناء الجملة:
AddToDate (التعبير، IncrementType، الحجم)
خيارات :
12. فرق التاريخ - تم تصميم الدالة للحصول على الفرق بين تاريخين.
بناء الجملة:
DifferenceDate(Expression1، Expression2، DifferenceType)
خيارات :
13. سلسلة فرعية - تم تصميم هذه الوظيفة لاستخراج سلسلة فرعية من سلسلة.
بناء الجملة:
السلسلة الفرعية (السلسلة، الموضع، الطول)
خيارات :
14. طول السلسلة - تم تصميم الوظيفة لتحديد طول السلسلة.
بناء الجملة:
طول السلسلة (سلسلة)
معامل :
15 عاما- تم تصميم هذه الوظيفة لاستخراج السنة من قيمة نوع التاريخ.
بناء الجملة:
السنة (التاريخ)
معامل :
16. الربع - تم تصميم هذه الوظيفة لاستخراج رقم الربع من قيمة نوع التاريخ. ويتراوح رقم الربع عادة من 1 إلى 4.
بناء الجملة:
الربع (التاريخ)
معامل :
17. شهر - تم تصميم هذه الوظيفة لاستخراج رقم الشهر من قيمة نوع التاريخ. يتراوح رقم الشهر عادة من 1 إلى 12.
بناء الجملة:
تاريخ الشهر)
معامل :
18. يوم من السنة (DayOfYear) - تم تصميم هذه الوظيفة للحصول على يوم السنة من قيمة نوع التاريخ. يتراوح يوم السنة عادة من 1 إلى 365 (366).
بناء الجملة:
يوم السنة(التاريخ)
معامل :
19. يوم- تم تصميم هذه الوظيفة للحصول على يوم الشهر من قيمة نوع التاريخ. يتراوح يوم الشهر عادة من 1 إلى 31.
بناء الجملة:
تاريخ اليوم)
معامل :
20. الأسبوع - تم تصميم هذه الوظيفة للحصول على رقم الأسبوع من السنة من قيمة نوع التاريخ. يتم ترقيم أسابيع السنة ابتداءً من الرقم 1.
بناء الجملة:
الأسبوع(التاريخ)
معامل :
21. أيام الأسبوع - تم تصميم هذه الوظيفة للحصول على يوم الأسبوع من قيمة نوع التاريخ. يتراوح اليوم الطبيعي في الأسبوع من 1 (الاثنين) إلى 7 (الأحد).
بناء الجملة:
يوم الأسبوع(التاريخ)
معامل :
22. ساعة- تم تصميم هذه الوظيفة للحصول على الساعة من اليوم من قيمة نوع التاريخ. وتتراوح ساعة اليوم من 0 إلى 23.
بناء الجملة:
الساعة (التاريخ)
معامل :
23. دقيقة - تم تصميم هذه الوظيفة للحصول على دقيقة الساعة من قيمة نوع التاريخ. وتتراوح دقائق الساعة من 0 إلى 59.
بناء الجملة:
الدقيقة (التاريخ)
معامل :
24. ثانيا - تم تصميم هذه الوظيفة للحصول على ثانية الدقيقة من قيمة نوع التاريخ. تتراوح الثانية من الدقيقة من 0 إلى 59.
بناء الجملة:
الثاني (التاريخ)
معامل :
25. يلقي - تم تصميم هذه الوظيفة لاستخراج نوع من تعبير قد يحتوي على نوع مركب. إذا كان التعبير يحتوي على نوع آخر غير النوع المطلوب، فسيتم إرجاع NULL.
بناء الجملة:
التعبير (التعبير، نوع الإشارة)
خيارات :
26. إيس نول (إيس نول) - تقوم هذه الدالة بإرجاع قيمة المعلمة الثانية إذا كانت قيمة المعلمة الأولى فارغة. وإلا، سيتم إرجاع قيمة المعلمة الأولى.
بناء الجملة:
IsNull(Expression1، Expression2)
خيارات :
27.أكوس- يحسب قوس جيب التمام بالراديان.
بناء الجملة:
ACos (تعبير)
معامل :
بناء الجملة:
ASin (تعبير)
معامل :
بناء الجملة:
أتان (تعبير)
معامل :
بناء الجملة:
كوس (تعبير)
معامل :
بناء الجملة:
إكسب (التعبير)
معامل :
بناء الجملة:
سجل (تعبير)
معامل :
بناء الجملة:
سجل10(التعبير)
معامل :
بناء الجملة:
الأسرى (قاعدة، المؤشر)
خيارات :
بناء الجملة:
الخطيئة(تعبير)
معامل :
بناء الجملة:
سرت (التعبير)
معامل :
بناء الجملة:
تان (التعبير)
معامل :
بناء الجملة:
Env(التعبير، عمق البت)
خيارات :
بناء الجملة:
كائن (تعبير)
معامل :
قد يحتوي تعبير محرك تكوين البيانات على استدعاءات لوظائف وحدات التكوين العامة العامة. ليس هناك حاجة إلى بناء جملة إضافي لاستدعاء مثل هذه الوظائف.
مثال:
الاسم المختصر (Documents.Link، Documents.Date، Documents.Number)
في هذا المثال، سيتم استدعاء الدالة "AbbreviatedName" من وحدة التكوين العامة.
لاحظ أن استخدام وظائف الوحدة الشائعة مسموح به فقط إذا تم تحديد معلمة معالج تكوين البيانات المناسبة.
بالإضافة إلى ذلك، لا يمكن استخدام وظائف الوحدات النمطية الشائعة في تعبيرات الحقول المخصصة.
41. الاستياء - تقوم هذه الدالة بإرجاع تمثيل سلسلة للقيمة التي تم تمريرها لنوع غير بدائي. بالنسبة للقيم من النوع البدائي، يتم إرجاع القيمة نفسها.
<Пустое значение>".
مثال:
العرض التقديمي (الطرف المقابل)
42. سلسلة - تقوم هذه الدالة بتحويل القيمة التي تم تمريرها إلى سلسلة.
إذا تم استخدام مصفوفة أو جدول قيم كمعلمة، فستُرجع الدالة سلسلة تحتوي على تمثيل سلسلة لجميع عناصر المصفوفة، مفصولة بالأحرف "؛ ". إذا كان لأي عنصر تمثيل سلسلة فارغ، فستكون السلسلة "<Пустое значение>".
مثال:
الصف (تاريخ المبيعات)
43. القيمة معبأه
بالنسبة للقيم NULL، تقوم الدالة Undefine بإرجاع False دائمًا.
بالنسبة للقيم المنطقية، فإنها تُرجع دائمًا True.
بالنسبة للأنواع الأخرى، يتم إرجاع True إذا كانت القيمة تختلف عن القيمة الافتراضية للنوع المحدد.
مثال:
القيمة المملوءة (تاريخ التسليم)
44. ليفيلينجروب - تحصل هذه الوظيفة على مستوى التسجيل الحالي المتعلق بالتجميع.
يمكن استخدامه للحصول على مستوى تداخل السجل في مجموعة هرمية.
مثال:
ليفيلينجروب ()
45. نوع القيمة
بناء الجملة:
نوع القيمة(التعبير)
معامل :