نظام تكوين البيانات 1C 8.3 للدمى. إنشاء تقرير بسيط عن نظام التخزين

قم بالدخول إلى الموقع كطالب

نظام تكوين البيانات 1C 8.3 للمبتدئين: التقرير الأول عن SKD

إذا لم تكن قد قرأت مقدمة هذه الوحدة، يرجى قراءتها: .

لإكمال الدروس سوف تحتاج 1C 8.3 (لا يقل عن 8.3.4.482) .

إذا كان لديك الإصدار 8.3 من 1C مثبتًا بالفعل، فاستخدمه. إذا لم يكن الأمر كذلك، فقم بتنزيل وتثبيت الإصدار التعليمي، الذي تنتجه 1C خصيصًا للأغراض التعليمية.

لهذا:

  • قم بفك ضغط الأرشيف الذي تم تنزيله من الرابط إلى مجلد منفصل على سطح المكتب لديك:
    • رابط التحميل من Dropbox (الخيار رقم 1)
    • رابط التحميل من Mail.ru (الخيار رقم 2)
  • قم بتشغيل الملف "setup.exe".
  • انقر فوق التالي، التالي، تثبيت.
  • انتظر التثبيت لإكمال.

يجب أن يظهر الاختصار التالي على سطح المكتب لديك:

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

إذا قمت بحذفه، قم بتنزيله مرة أخرى بالطريقة التالية، وقم بفك ضغطه وإضافته إلى قائمة قواعد البيانات.

أخيرًا، تم إعداد طاولة العمل وسنقوم الآن بإنشاء تقريرنا الأول معًا باستخدام نظام تكوين البيانات. سيكون من السهل جدًا إظهار القدرات العامة لنظام تكوين البيانات (مختصر SKD).

تحديد الهدف

الغرض من هذا الدرس- قم بإنشاء تقرير يعرض، في وضع المستخدم، قائمة بالعملاء تحتوي على الحقول التالية:

  • اسم
  • أرضية
  • اللون المفضل للعميل .

يجب أن يكون التقرير خارجيا. وهذا يعني أنه سيتم إنشاؤه وتكوينه في أداة التهيئة، ثم حفظه كملف منفصل (خارجي) على الكمبيوتر.

لإنشاء مثل هذا التقرير في 1C، سيحتاج المستخدم إلى تشغيل قاعدة البيانات في وضع المستخدم، وفتح هذا الملف والنقر فوق الزر "إنشاء".

يذهب!

إنشاء تقرير

نطلق أداة التهيئة لقاعدة بيانات Gastronom:

من القائمة الرئيسية، حدد "ملف" -> "جديد...":

اختر "التقرير الخارجي":

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

يتم فتح نافذة إنشاء تقرير خارجي. بالنسبة للاسم، أدخل: " الدرس 1"، ثم اضغط على الزر " فتح مخطط تكوين البيانات":

بدأ مصمم إنشاء المخطط. نحن نتفق مع الاسم الافتراضي" مخطط تخطيط البيانات الأساسية"واضغط على الزر" مستعد":

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

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

الآن نحن على الإشارة المرجعية " مجموعات البيانات"سوف نبقى هناك."

نكتب طلبا من خلال المنشئ

يتطلب منا نظام تكوين البيانات (المختصر بـ DCS) القيام بذلك بيانات،والتي سيتم عرضها للمستخدم.

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

انقر فوق أخضرعلامة الجمع وفي القائمة المنسدلة حدد العنصر " إضافة مجموعة بيانات - استعلام":

مهمتنا هي كتابة نص الطلب في هذا الحقل. هل نسيت كيفية القيام بذلك حتى الآن؟

سأعطيك تلميحا:

في هذا الاستعلام قمنا باختيار ثلاثة حقول (" اسم", "أرضية" و " اللون المفضل") من الجدول" الدليل. العملاء".

لكن لا تتعجل في كتابة هذا النص في حقل "الطلب" يدويًا.

الآن سوف نقوم بإنشاء نفس الطلب بشكل مرئي، فقط باستخدام الماوس. هذه الطريقة تسمى " منشئ الاستعلام".

لاستدعاء هذا المنشئ، انقر فوق الزر " منشئ الاستعلام..." في الجزء العلوي الأيمن من حقل "الطلب":

في النافذة التي تفتح، اسحب الجدول " العملاء"من العمود الأول إلى الثاني للإشارة إلى أنه من هذا الجدول سوف نقوم بالاستعلام عن البيانات:

اتضح مثل هذا:

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

اتضح مثل هذا:

دعونا نفعل الشيء نفسه مع الحقول" أرضية" و " اللون المفضل". وستكون النتيجة مثل هذا:

انقر فوق الزر "موافق" للخروج من أداة إنشاء الاستعلام والتأكد من إضافة نص الاستعلام تلقائيًا إلى حقل "الاستعلام".

علاوة على ذلك، بناءً على نص الطلب، قامت 1C نفسها بسحب أسماء الحقول (المنطقة الموجودة فوق الطلب) التي سيتم استخدامها بواسطة مخطط تكوين البيانات:

الآن بعد أن قمنا بتجميع الطلب، تعرف ACS كيفية الحصول على بيانات للتقرير.

إعداد عرض البيانات

يبقى بطريقة أو بأخرى تصور هذه البياناتللمستخدم على شكل نموذج مطبوع. وهذا هو المكان الذي يمكن أن تعمل فيه ACS العجائب!

لإنشاء مثل هذه المعجزة، دعنا نذهب إلى علامة التبويب " إعدادات" وانقر فوق زر مصمم الإعدادات ( العصا السحرية):

في النافذة التي تفتح، حدد نوع التقرير " قائمة"و اضغط " إضافي":

في النافذة التالية، حدد (عن طريق السحب) الحقول التي تريد عرضها في القائمة (اسحب جميع الحقول المتاحة لنا: " اللون المفضل", "اسم" و " أرضية"):

دعونا نحصل على هذه النتيجة ونضغط على الزر " نعم":

تم إغلاق مصمم الإعدادات والعنصر " إدخالات مفصلة":

التقرير جاهز، دعونا نتحقق منه. للقيام بذلك، قم أولاً بحفظ التقرير كملف خارجي.

احفظ التقرير كملف

افتح عنصر القائمة الرئيسية " ملف"->"يحفظ":

سأحفظه على سطح المكتب تحت اسم " الدرس 1":

التحقق من التقرير في وضع المستخدم

أخيرًا، دعنا نغلق أداة التهيئة وننتقل إلى قاعدة البيانات الخاصة بنا في وضع المستخدم:

اسم المستخدم "المسؤول"، بدون كلمة مرور:

من خلال القائمة اختر العنصر " ملف"->"يفتح...":

وحدد ملف التقرير (لقد قمت بحفظه على سطح المكتب تحت اسم “Lesson1.erf”):

تم فتح نموذج التقرير، انقر فوق الزر " استمارة":

مستعد! هنا لدينا قائمة قابلة للطباعة مع قائمة العملاء واللون المفضل لديهم والجنس:

يمكن طباعة النموذج القابل للطباعة بسهولة. للقيام بذلك، ما عليك سوى تحديد عنصر القائمة " ملف"->"ختم...":

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

الطلاب - أجيب عن طريق البريد، ولكن انظر أولا.

قم بالدخول إلى الموقع كطالب

قم بتسجيل الدخول كطالب للوصول إلى المواد المدرسية

عند إنشاء تقارير باستخدام نظام تكوين البيانات (DCS)، يكون من المناسب عرض معلمات التقرير (على الأقل الأكثر استخدامًا) في النموذج، حتى لا يجبر المستخدم على الخوض في نافذة إعدادات DCS القياسية.

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

هناك طريقتان لإخراج معلمات ACS إلى نموذج عادي:

  • إخراج جدول إعدادات المعلمة بأكمله
  • إخراج المعلمات الفردية في شكل حقول الإدخال.

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

في هذه الحالة، سيتم عرض كافة معلمات ACS للمستخدم التي ليس لها قيود على التوفر.

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

  1. لنقم بإنشاء تفاصيل التقرير المطابقة للمعلمات. في مثالنا، ستكون هذه التفاصيل تاريخ البدء، تاريخ الانتهاء، المنظمة. لنقم بتعيين أنواع البيانات المناسبة لهم.
  2. لنقم بإنشاء حقول إدخال في النموذج لكل معلمة وربطها من خلال الخاصية بياناتمع تفاصيل التقرير لكل حقل إدخال، سيكون من الجيد إنشاء تسمية بجانبه باسم المعلمة حتى يفهم المستخدم المعلمة التي يقوم بتحريرها.
  3. لكل حقل إدخال، تحتاج إلى إنشاء إجراء لمعالج الحدث عندما يتغير، والذي سيقوم بتعيين القيمة التي حددها المستخدم على معلمات ACS. في المثال، قمت بإنشاء إجراء واحد وقمت بتعيينه لتغيير أحداث جميع حقول الإدخال الثلاثة. أي أنه عندما يتم تغيير معلمة واحدة، تتم إعادة ضبط المعلمات الثلاثة جميعها. من وجهة نظر الأداء، هذا على الأرجح غير فعال، ولكن... المعلمات ليست كثيرة، والفرق ليس ملحوظا. إذا كان هناك عدد كبير من المعلمات، فمن المفيد تعيين كل واحد منها في إجراء منفصل. لذلك، رمز الإجراء للمعالج عندما يتغيرسوف تبدو مثل هذا:

    معلمات الإجراءOnChange(العنصر)

    ParameterStartDate =SettingsLinker. إعدادات. معلمات البيانات. عناصر. Find("بداية الفترة"); // يتم إجراء البحث حسب اسم معلمة ACS
    المعلمةDateStart الاستخدام = صحيح؛ // سيتم استخدام المعلمة أثناء الاختيار
    المعلمةDateStart القيمة = تاريخ البدء؛ // يتم تعيين قيمة سمة التقرير للمعلمة

    ParameterDataCon = LinkerSettings. إعدادات. معلمات البيانات. عناصر. Find("نهاية الفترة");
    ParameterDateCon. الاستخدام = صحيح؛
    ParameterDateCon. القيمة = EndDay(EndDate) ؛

    ParameterOrg = إعدادات الملحن. إعدادات. معلمات البيانات. عناصر. بحث("المنظمة");
    منظمة المعلمة. الاستخدام = صحيح؛
    منظمة المعلمة. القيمة = المنظمة؛

    نهاية الإجراء

يعنيDCS نظام تكوين البيانات. SKD هي إحدى آليات منصة 1C لتطوير التقارير. يتم إنشاء التقرير دون الحاجة إلى كتابة كود البرنامج. باستخدام منشئ معين والإعدادات التي تم إجراؤها فيه، يقوم المبرمج بتعيين النتيجة المرجوة، ويفهم نظام تكوين البيانات ذلك ويعرض هذه النتيجة للمستخدم. إذا كنت بحاجة إلى تغيير شيء ما في التقرير، فما عليك سوى الرجوع إلى المصمم مرة أخرى وإجراء التغييرات اللازمة، ويصبح التقرير المعدل جاهزًا. عيب نظام التحكم في الوصول هو أن إعداداته معقدة للغاية ولا يتعلمها جميع المستخدمين بسرعة.

ما هي تقنية إنشاء تقرير ACS:

اكتب طلب 1C إلى نظام التحكم في الوصول، الذي يوفر الحصول على البيانات

تحديد دور ACS للحقول (الحقول المحسوبة والموارد)

أدخل إعدادات ACS الافتراضية.

لدى المستخدم الفرصة لتغيير العديد من الإعدادات حسب الرغبة.

تتمتع ACS بمزايا كبيرة لكل من المستخدم والمبرمج:

مبرمج - يلغي الحاجة إلى كتابة برنامج لتشغيل التقرير والإعدادات

المستخدم - يحصل على وصول كبير إلى إعدادات التقرير.

في جميع تكوينات 1C الجديدة، سيتم استخدام جميع التقارير على 1C SKD فقط.

إنشاء تقرير.

حدد ملف القائمة -> جديد. حدد نوع الملف - تقرير جديد.

يتم إنشاء تقرير جديد. لنقم بإنشاء مخطط ACS جديد باستخدام زر الرسم البياني لتكوين البيانات المفتوحة.

إنشاء استعلام للتقرير.

يمكن أن يكون هناك العديد من مصادر البيانات لـ SKD 1C. لاستخدام استعلامين منفصلين، على سبيل المثال، أضف أولاً "مجموعة البيانات - الاتحاد"، ثم عدة استعلامات. في مثالنا سوف نستخدم الاستعلام.

تم إنشاء الاستعلام باستخدام منشئ الاستعلام. لا يختلف العمل مع مصمم الاستعلام في نظام التحكم في الوصول عن العمل المعتاد.

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

إعدادات ACS.

في علامة التبويب الموارد، نشير إلى الحقول التي سيتم تلخيصها للإجماليات. يمكن حساب إجمالي الموارد باستخدام وظائف لغة التعبير SKD - Sum() وAverage() وMaximum() وMinimum() وQuantity(). المبلغ الافتراضي.

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

يتم إجراء الإعدادات الأساسية في علامة التبويب "الإعدادات".

دعونا نستخدم منشئ الإعدادات. دعونا نعرض البيانات في القائمة.

حدد الحقول المطلوبة.

التجميع. دعونا نختار مجموعة حسب التسمية.

الفرز حسب حقل التسميات بترتيب تصاعدي.

تبدو نتيجة إعداد ACS هكذا.

في علامة التبويب الفرعية "المعلمات"، بالنسبة لمعلمة "الفترة"، قم بتعيين علامة "تضمين في إعدادات المستخدم". بعد بعد الانتهاء من هذا الإعداد، سيتم عرض المعلمات في نموذج التقرير الرئيسي.

دعونا نحفظ التقرير.

تشكيل SKD.

لنفتح التقرير في 1C:Enterprise. دعونا نحدد الفترة المطلوبة وننشئ تقريرًا.

تم الانتهاء من التقرير!

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

وهذه هي الصفحة الرئيسية للتقرير:

يتم استدعاء هذه الصفحة من أداة التهيئة في القائمة ملف - جديد - تقرير خارجي.

نقوم أولاً بإضافة مجموعة بيانات (DataSet1). في نافذة "الاستعلام"، يمكنك كتابته بنفسك، أو إنشائه باستخدام Query Builder، أو تحميله من ملف. الطريقة الأكثر ملاءمة هي استخدام مُنشئ الاستعلام. اقرأ كيف يعمل المنشئ.

يتم ملء كل ما تحتاجه تلقائيًا، ولكن بعض الأشياء تحتاج إلى تعديل.

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

في علامة التبويب "الموارد"، حدد الموارد نفسها وقم بتكوين عرض النتائج لها:

تحتوي علامة التبويب "المعلمات" على كل ما يغير محتوى التقرير (على سبيل المثال، الفترة التي سيتم تحديد البيانات لها). يتم ملؤها تلقائيًا بناءً على معلمات الطلب (انظر الصفحة الأولى). باستخدام مربعات الاختيار، يمكنك ضبط رؤية هذه المعلمات وتوافرها، وتعيين القيمة الأولية، وما إلى ذلك:

احصل على 267 درس فيديو على 1C مجانًا:

وأخيرا، الإعدادات. هنا يتم رسم مظهر التقرير - الأعمدة والصفوف ومواضعها بالنسبة لبعضها البعض والمجموعات وما إلى ذلك. سيساعدك زر "فتح مصمم الإعدادات" على ترتيب الخطوط والأعمدة بالترتيب المطلوب. سيسمح لك زر "إعدادات العناصر المخصصة" بعرض المعلمات في رأس التقرير:

انتبه إلى العمودperiod.PartsDate.NameMonth. كيفية عرض اسم الشهر في رأس العمود؟ هذا هو المكان الذي يخرج.

بالمناسبة، هذا الإعداد هو الذي يسمح لك بعرض البيانات لعدة فترات مرة واحدة في أعمدة التقرير المجاورة:

علامة التبويب المهمة الأخرى هي الحقول المحددة. إذا كان فارغاً، فلن يتم إنشاء التقرير. عادةً ما يتم ملؤها تلقائيًا بالنقر فوق الزر "فتح مصمم الإعدادات":

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

  • 1C-بيتريكس
  • يعد إعداد التقارير أحد أهم مجالات برامج الأعمال. يمكن أن يعتمد مصير الشركة (وليس بالمعنى المجازي!) على مدى سهولة تخصيص تقرير موجود للاحتياجات المتغيرة للأعمال (والتشريعات) أو إنشاء تقرير جديد، سواء كان تقريرًا لمكتب الضرائب أو رسم بياني لاعتماد الطلب على السلع على الموسم وعوامل أخرى. نظام تقارير قوي ومرن يجعل من السهل استخراج البيانات الضرورية من النظام، وتقديمها بشكل مفهوم، مما يسمح للمستخدم النهائي بإعادة تكوين تقرير قياسي لرؤية البيانات في ضوء جديد - وهذا هو المثل الأعلى الذي يجب على كل يجب أن يسعى نظام الأعمال إلى.

    في منصة 1C:Enterprise، تكون هناك آلية تسمى "نظام تكوين البيانات" (المختصر بـ DCS) مسؤولة عن إنشاء التقارير. سنحاول في هذه المقالة تقديم وصف موجز لفكرة وبنية آلية ACS وقدراتها.


    ACS هي آلية تعتمد على الوصف التعريفي للتقارير. تم تصميم نظام التحكم في الوصول لإنشاء التقارير وعرض المعلومات ذات البنية المعقدة. بالمناسبة، بالإضافة إلى تطوير التقارير، يتم استخدام آلية ACS أيضًا في 1C:Enterprise في قائمة ديناميكية، وهي أداة لعرض معلومات القائمة بوظائف غنية (عرض قوائم مسطحة وهرمية، والتصميم الشرطي للصفوف والتجمعات، وما إلى ذلك). ).

    قليلا من التاريخ

    في الإصدار الأول من منصة 1C:Enterprise 8، الإصدار 8.0، تم إعداد التقارير على النحو التالي:
    1. تمت كتابة استعلام واحد أو أكثر بلغة الاستعلام 1C (لغة تشبه SQL، المزيد عنها أدناه).
    2. تمت كتابة التعليمات البرمجية التي تنقل نتائج الاستعلامات المنفذة إلى مستند جدول بيانات أو مخطط. يمكن أن يقوم الكود أيضًا بعمل لا يمكن القيام به في الاستعلام - على سبيل المثال، يقوم بحساب القيم باستخدام لغة 1C المضمنة.
    النهج واضح ومباشر، ولكنه ليس الأكثر ملاءمة - فهناك الحد الأدنى من الإعدادات المرئية، ويجب برمجة كل شيء "يدا بيد". وكانت إحدى الأوراق الرابحة في ذلك الوقت لمنصة "1C:Enterprise 8" الجديدة تمامًا هي التقليل في حل التطبيق من كمية التعليمات البرمجية التي يجب كتابتها يدويًا، على وجه الخصوص، من خلال التصميم المرئي. وسيكون من المنطقي اتباع نفس المسار في آلية الإبلاغ. وقد تم ذلك من خلال تطوير آلية جديدة - نظام تكوين البيانات.

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

    صياغة المشكلة

    كانت المهمة التي كانت أمام فريق التطوير هي إنشاء نظام تقارير لا يعتمد على الخوارزمية (أي من خلال كتابة التعليمات البرمجية)، ولكن على النهج التعريفي لإنشاء التقارير. ونحن نعتقد أن المشكلة قد تم حلها بنجاح. في تجربتنا، يمكن تنفيذ حوالي 80% من التقارير المطلوبة باستخدام ACS بدون سطر واحد من التعليمات البرمجية (باستثناء كتابة الصيغ للحقول المحسوبة)، في الغالب من خلال الإعدادات المرئية.
    استغرق تطوير الإصدار الأول من SDS حوالي 5 سنوات.

    لغتان

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

    لغة الاستعلام

    تعتمد لغة الاستعلام على SQL ويسهل تعلمها لأولئك الذين لديهم خبرة في SQL. طلب مثال:

    من السهل رؤية نظائرها للأقسام القياسية لاستعلامات SQL - SELECT، FROM، GROUP BY، ORDER BY.

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

    • الوصول إلى الحقول باستخدام نقطة. إذا كانت حقول الجدول من نوع مرجعي (تقوم بتخزين روابط لكائنات جدول آخر)، فيمكن للمطور الرجوع إليها في نص الطلب من خلال "."، ولا يحد النظام من عدد مستويات التداخل لمثل هذه الروابط (على سبيل المثال، طلب العميل. الاتفاقية. المنظمة. الهاتف).
    • تشكيل النتائج متعدد الأبعاد والمستويات. يتم تشكيل الإجماليات والإجماليات الفرعية مع الأخذ في الاعتبار التجميع والتسلسل الهرمي، ويمكن اجتياز المستويات بأي ترتيب مع التلخيص، ويتم ضمان البناء الصحيح للإجماليات وفقًا للأبعاد الزمنية.
    • دعم الجداول الافتراضية. تتيح لك الجداول الافتراضية التي يوفرها النظام الحصول على بيانات شبه جاهزة لمعظم مهام التطبيق دون الحاجة إلى إنشاء استعلامات معقدة. وبالتالي، يمكن للجدول الافتراضي توفير بيانات عن أرصدة المنتجات حسب فترات زمنية معينة. وفي الوقت نفسه، تحقق الجداول الافتراضية أقصى استفادة من المعلومات المخزنة، على سبيل المثال، الإجماليات المحسوبة مسبقًا، وما إلى ذلك.
    • الجداول المؤقتة. تتيح لك لغة الاستعلام استخدام الجداول المؤقتة في الاستعلامات. من خلال مساعدتهم، يمكنك تحسين أداء الاستعلام، وفي بعض الحالات تقليل عدد عمليات الحظر وتسهيل قراءة نص الاستعلام.
    • طلبات دفعة. لجعل العمل مع الجداول المؤقتة أكثر ملاءمة، تدعم لغة الاستعلام العمل مع الاستعلامات المجمعة - وبالتالي، يتم إنشاء جدول مؤقت واستخدامه في استعلام واحد. الطلب المجمع عبارة عن سلسلة من الطلبات مفصولة بفواصل منقوطة ("؛"). يتم تنفيذ الطلبات الواردة في الدفعة واحدًا تلو الآخر. ستكون نتيجة تنفيذ طلب دفعة، اعتمادًا على الطريقة المستخدمة، إما النتيجة التي يتم إرجاعها بواسطة الطلب الأخير في الدفعة، أو مصفوفة من النتائج من جميع الاستعلامات في الدفعة بالتسلسل الذي تتبعه الاستعلامات في الدفعة .
    • استرجاع تمثيلات الحقول المرجعية. يحتوي كل جدول كائن (يتم فيه تخزين كتاب مرجعي أو مستند) على حقل افتراضي - "عرض". يحتوي هذا الحقل على تمثيل نصي للكائن ويجعل مهمة منشئ التقرير أسهل. لذلك، بالنسبة للمستند، يحتوي هذا الحقل على جميع المعلومات الأساسية - اسم نوع المستند ورقمه وتاريخه (على سبيل المثال، "البيع 000000003 من 07/06/2017 17:49:14")، مما يوفر للمطور من كتابة حقل محسوب.
    • وإلخ.
    تقوم آلية الطلب بتعديل الطلب تلقائيا مع الأخذ في الاعتبار الأدوار التي ينتمي إليها المستخدم الذي يتم تنفيذ الطلب نيابة عنه (أي لن يرى المستخدم سوى البيانات التي يحق له رؤيتها) والخيارات الوظيفية (أي وفقا مع تلك التي تم تكوينها في وظيفة حل التطبيق).

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

    على سبيل المثال:

    • يختار. تصف هذه الجملة الحقول التي سيتمكن المستخدم من تحديدها للإخراج. بعد هذه الكلمة الأساسية، يتم إدراج الأسماء المستعارة للحقول من قائمة اختيار الاستعلام الرئيسية التي ستكون متاحة للتكوين، مفصولة بفواصل. مثال: (حدد عنصر، مستودع)
    • أين. تم توضيح الحقول التي يمكن للمستخدم تطبيق التحديد عليها. يستخدم هذا الاقتراح حقول الجدول. غير مسموح باستخدام الأسماء المستعارة لحقل قائمة الاختيار. يمكن أن يحتوي كل جزء من الاتحاد على عنصر WHERE الخاص به. أمثلة: (WHERE Item.*، Warehouse)، (WHERE Document.Date >= &StartDate، Document.Date<= &ДатаКонца}
    • وإلخ.
    مثال على استخدام الامتدادات:

    لغة التعبير عن تكوين البيانات

    تم تصميم لغة تعبير تكوين البيانات لكتابة التعبيرات المستخدمة، على وجه الخصوص، لوصف تعبيرات الحقول المخصصة. يتيح لك SKD تحديد الحقول المخصصة في التقرير باستخدام التعبيرات الخاصة بك أو مجموعات من الخيارات مع شروط تحديدها (مماثلة لـ CASE في SQL). الحقول المخصصة تشبه الحقول المحسوبة. ويمكن تعيينها في المكوِّن وفي وضع 1C:Enterprise، ولكن لا يمكن استخدام وظائف الوحدات النمطية الشائعة في تعبيرات الحقول المخصصة. ولذلك، فإن الحقول المخصصة مخصصة للمستخدم وليس للمطور.

    مثال:

    عملية إنشاء تقرير عن نظام التحكم في الوصول

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

    على سبيل المثال، يمكنك إضافة استعلام كمجموعة بيانات إلى نظام تكوين البيانات واستدعاء مُنشئ الاستعلام، والذي يسمح لك بإنشاء استعلام معقد بشكل عشوائي:

    ستكون نتيجة تشغيل مصمم الاستعلام هي نص الاستعلام (في لغة الاستعلام 1C:Enterprise). يمكن تعديل هذا النص يدويًا إذا لزم الأمر:

    يمكن أن يكون هناك عدة مجموعات بيانات في مخطط تخطيط البيانات، ويمكن ربط مجموعات البيانات في التخطيط بأي طريقة، ويمكن إضافة الحقول المحسوبة، ويمكن تحديد معلمات التقرير، وما إلى ذلك. ومن الجدير بالذكر ميزة مثيرة للاهتمام لآلية الاستعلام في 1C:Enterprise. تتم ترجمة الاستعلامات في النهاية إلى لغة SQL الخاصة بنظام إدارة قواعد البيانات (DBMS) الذي يعمل به التطبيق مباشرةً. بشكل عام، نحاول استخدام إمكانيات خوادم DBMS إلى الحد الأقصى (نحن مقيدون بحقيقة أننا نستخدم فقط تلك الإمكانات المتوفرة في نفس الوقت في جميع أنظمة إدارة قواعد البيانات المدعومة بواسطة النظام الأساسي 1C:Enterprise - MS SQL، Oracle، IBM DB2 ، بوستجرسكل). وبالتالي، على مستوى الاستعلام في الحقول المحسوبة، يمكننا فقط استخدام تلك الوظائف التي يتم ترجمتها إلى SQL.

    ولكن على مستوى مخطط تكوين البيانات، يمكننا بالفعل إضافة حقول مخصصة واستخدام الوظائف فيها في لغة تطوير 1C المدمجة (بما في ذلك تلك المكتوبة بواسطتنا)، والتي توسع بشكل كبير قدرات التقارير. من الناحية الفنية، يبدو الأمر كما يلي - كل ما يمكن ترجمته إلى SQL يتم ترجمته إلى SQL، ويتم تنفيذ الاستعلام على مستوى DBMS، ويتم وضع نتائج الاستعلام في ذاكرة خادم تطبيق 1C ويقوم SKD بحساب القيم لكل سجل ​​من الحقول المحسوبة التي تمت كتابة صيغها بلغة 1C.


    إضافة الحقول المخصصة

    يمكنك إضافة عدد عشوائي من الجداول والرسوم البيانية إلى التقرير:


    مصمم التقارير


    تقرير وقت التشغيل

    باستخدام SKD، يمكن للمستخدم إضافة تحديدات معقدة إلى التقرير (والتي ستتم إضافتها إلى الطلب في الأماكن الصحيحة)، والتصميم الشرطي (السماح بتنسيق الحقول المعروضة بشكل مختلف - بالخط واللون وما إلى ذلك، اعتمادًا على قيمها ) وأكثر بكثير. .

    يمكن وصف عملية إنشاء التقرير وتوليده بإيجاز على النحو التالي:

    • يحدد المطور في وقت التصميم بمساعدة المصمم (أو في وقت التشغيل باستخدام التعليمات البرمجية) مخطط تخطيط البيانات:
      • نص الطلب/الطلبات
      • وصف الحقول المحسوبة
      • العلاقات بين الطلبات (إذا كان هناك العديد منها)
      • خيارات التقرير
      • الإعدادات الافتراضية
      • إلخ.
    • يتم حفظ الإعدادات المذكورة أعلاه في التخطيط
    • يفتح المستخدم التقرير
      • من المحتمل أن يقوم بإجراء إعدادات إضافية (على سبيل المثال، تغيير قيم المعلمات)
      • ينقر على زر "إنشاء".
    • يتم تطبيق إعدادات المستخدم على نظام تكوين البيانات المحدد من قبل المطور.
    • يتم تشكيل تخطيط متوسط ​​لتكوين البيانات، يحتوي على تعليمات حول مكان تلقي البيانات. على وجه الخصوص، يتم تعديل الاستعلامات المحددة في التخطيط. وبالتالي، تتم إزالة الحقول غير المستخدمة في التقرير من الطلب (يتم ذلك لتقليل كمية البيانات المستلمة). تتم إضافة كافة الحقول التي تشارك في صيغ الحقول المحسوبة إلى الاستعلام.
    • يأتي دور معالج تكوين البيانات. يقوم معالج التخطيط بتنفيذ الاستعلامات وربط مجموعات البيانات وحساب قيم الحقول والموارد المحسوبة وإجراء التجميع. باختصار، يقوم بإجراء جميع الحسابات التي لم يتم إجراؤها على مستوى نظام إدارة قواعد البيانات (DBMS).
    • يطلق معالج إخراج البيانات طلبًا للتنفيذ ويعرض البيانات المستلمة في مستند جدول بيانات أو مخطط أو ما إلى ذلك.


    عملية إنشاء تقرير باستخدام آلية ACS

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

    إعدادات مخصصة

    جميع أدوات ACS متاحة لكل من المطور والمستخدم النهائي. لكن الممارسة أظهرت أن المستخدم النهائي غالبًا ما يتعرض للترهيب بسبب وفرة إمكانيات الأداة. علاوة على ذلك، في معظم الحالات، لا يحتاج المستخدم النهائي إلى كل قوة الإعدادات - يكفي أن يكون لديه وصول سريع إلى إعداد معلمة تقرير واحدة أو اثنتين (على سبيل المثال، الفترة والطرف المقابل). بدءًا من إصدار معين من النظام الأساسي، يتمتع مطور التقرير بفرصة تحديد إعدادات التقرير المتاحة للمستخدم. ويتم ذلك باستخدام مربع الاختيار "تضمين في إعدادات المستخدم". بالإضافة إلى ذلك، تحتوي إعدادات التقرير الآن على علامة "وضع العرض"، والتي تأخذ إحدى القيم الثلاث:
    • الوصول السريع. سيتم عرض الإعداد مباشرة في الجزء العلوي من نافذة التقرير.
    • عادي. سيكون الإعداد متاحًا من خلال زر "الإعدادات".
    • غير متاح. لن يكون الإعداد متاحًا للمستخدم النهائي.


    تحديد وضع العرض في وقت التصميم


    عرض الإعداد في وضع الوصول السريع في وقت التشغيل (تحت الزر إنشاء)

    خطط التنمية

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