قم بعمل تقرير خارجي 1s. إضافة تقرير خارجي إلى قاعدة البيانات

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

التقارير والمعالجة

بشكل عام ، لا توجد فروق ذات دلالة إحصائية بين هذين النوعين من الكائنات:

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

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

تختلف العناصر التي تم النظر فيها فعليًا في المقالة عن المعالجة الخارجية بامتداد الملف:

  1. المعالجة الخارجية - epf ؛
  2. تقرير خارجي - erf.

التقارير الخارجية والمضمنة

إذا نظرت بعناية إلى شجرة أي تكوين في 1C ، ستلاحظ وجود فرع تقرير أيضًا (الشكل 1)

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

أرز. 2

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

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

قم بإنشاء تقرير خارجي

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

من حيث المبدأ ، لدى المبرمج خياران لتجميع البيانات المسترجعة من جداول قاعدة البيانات:

  1. استخدام آلية نظام تكوين البيانات (SKD) ؛
  2. ملء برمجيًا مستند جدول البيانات، باستخدام تخطيط مُعد مسبقًا.

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

ولكن ، بغض النظر عن الآلية المختارة ، يجب أن تبدأ من قائمة "ملف" ، القائمة الفرعية "جديد". يتم فتح قائمة اختيار الكائن الذي تم إنشاؤه قبل المطور (الشكل 3).

أرز. 3

أرز. 4

هنا نرى:

  • اسم يلخص الغرض من الكائن بأكبر قدر ممكن من الدقة ؛
  • المرادف والتعليق - المقصود به وصف كامل;
  • مخطط التخطيط الرئيسي - هنا يمكنك ضبط التخطيط الذي سيُستخدم لطباعة التقرير ؛
  • يفتح زر "فتح مخطط ..." مُنشئ نتيجة المعالجة ؛
  • نافذة لوصف النماذج والتفاصيل والتخطيطات.

بالنقر فوق الزر "إجراءات" ، يمكنك فتح وحدة الكائن الذي يتم إنشاؤه.

مخطط التخطيط

يؤدي استخدام ACS لإنشاء تقرير إلى تبسيط عمل المطور بشكل كبير:

  1. لا حاجة للتفكير وإنشاء شكل الكائن ؛
  2. يمكن تغيير التحديدات والتجمعات والأعمدة من النموذج المعروض ديناميكيًا في وضع المستخدم ؛
  3. من الممكن إنشاء وتخزين عدة خيارات لتشكيل الجدول النهائي.

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

أرز.
5

يتم تخزين المخطط في تخطيطات الكائنات.

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

تسجيل الكائنات الخارجية في قاعدة البيانات

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

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

للقيام بذلك ، يجب تحديد وظيفة التصدير ExternalProcessingDetails في الوحدة النمطية للمعالج. (الشكل 6)

أرز. 6

يوضح الشكل 6 مجموعة تقريبية من الأوامر التي تسمح لك بتسجيل ملف في الدليل.

بالإضافة إلى وظيفة المعلومات ، فيما يلي: إجراء آخر (AddCommand) ودالة (GetCommandTable). يظهر محتواها في الشكل. 7

أرز. 7

ضع في اعتبارك إنشاء تقرير خارجي في 1s 8 دون استخدام نظام تكوين البيانات. لإنشاء تقرير خارجي ، سنستخدم تكوين المحاسبة 2.0 ، البيانات الأولية: "اكتب تقريرًا عن الحساب المحاسبي 62 حيث سيتم عرض معدل دوران الفترة المحددة في السياق النظراءو عقود الأطراف المقابلة.

1. إنشاء تقرير

بادئ ذي بدء ، سننشئ ملف تقرير خارجي ، لذلك سننتقل إلى 1s 8 في الوضع المكون، اذهب إلى القائمة ملف -> جديدأو انقر فوق الرمز مستند جديد.

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

2. إنشاء تخطيط خارجي للتقرير

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

سيتكون تصميمنا من 4 مجالات:

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

لنبدأ في إنشاء مناطق التخطيط. لإنشاء منطقة في التخطيط ، حدد العدد المطلوب من الأسطر وانقر جدول القائمة -> الأسماء -> تعيين الاسم(أو Ctrl + Shift + N). إلى المنطقة قبعةاكتب اسم التقرير: حجم التداول 62 حسابا، ارسم باستخدام الأداة الحدودرأس التقرير ، وكذلك تعيين المعلمات بداية الفترةو نهاية الفترة. بمساعدة المعلمات ، يمكنك عرض البيانات اللازمة في التقرير ، وسنتعامل مع هذا في المرحلة التالية من التطوير ، أي عند كتابة كود البرنامج الخاص بالتقرير. لإنشاء معلمة في التخطيط ، حدد الخلية المطلوبة ، واكتب اسم المعلمة فيها (بدون مسافات) ، وانقر بزر الماوس الأيمن عليها ، وحدد العنصر في القائمة التي تفتح ملكيات. في خصائص الخلية في علامة التبويب تَخطِيطحدد ملء معامل.

بعد ذلك ، في الخلية ، سيتم وضع اسم المعلمة بين أقواس زاوية ("<>"). نتيجة لذلك ، المنطقة قبعةيجب أن يبدو مثل هذا:

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

في المنطقة مقاول اتفاقية البياناتسننشئ معلمات لعرض اسم العقد ، وكذلك للإيرادات والمصروفات للحساب 62 ، باستخدام أداة الحدود ، سنقوم برسم المنطقة في شكل صف جدول. دعونا نجعل مسافة بادئة صغيرة قبل المعلمة اتفاقية الطرف المقابل(يمكن القيام بذلك عن طريق تقسيم الخلايا ودمجها. انقر بزر الماوس الأيمن فوق الخلية -> دمجأو كسر الخلية) ، من الضروري أن يُظهر التقرير أن بند العقد أقل في التسلسل الهرمي من بند الطرف المقابل.

في المنطقة قبولنقم بإنشاء معلمات لمجموع الإيصالات والنفقات.

نتيجة لذلك ، يجب أن نحصل على تنسيق مثل هذا:

3. إنشاء نموذج تقرير

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

في الصفحة التالية من المُنشئ ، حدد كلا الدعامتين المتاحتين ( بداية الفترة, نهاية الفترة) لوضعها في النموذج.

نتيجة لذلك ، حصلنا على هذا النموذج:

لكن في هذا الشكل لا يناسبنا ، سنجري بعض التغييرات عليه:

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

نتيجة لذلك ، سيبدو نموذجنا كما يلي:

4. البرمجة

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

يمكنك التبديل بين النموذج والوحدة النمطية الخاصة به باستخدام علامات التبويب الموجودة أسفل النموذج

لاستدعاء نموذج اختيار الفترة ، نستخدم الإجراء القياسي المحاسبة 2.0من الوحدة العامة العمل مع الحوارات - HandlerPeriodSettingPressing، تحتاج إلى تمرير تفاصيل التقرير كمعلمات إليه بداية الفترةو نهاية الفترة.

إجراء Button1Press (عنصر)العمل مع Dialogs.HandlerSettingPeriodPress (StartPeriod ، EndPeriod) ؛ EndProcedure

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

TabDoc = FormElements.TabDoc ،

احصل على تخطيط التقرير الخارجي باستخدام الوظيفة GetLayout (<ИмяМакета>) ، سنقوم بتمرير اسم التخطيط إلى المعلمة ، وإذا كان هذا التنسيق موجودًا ، فستجده الوظيفة.

Layout = GetLayout ("Layout") ؛

بعد استلام التصميم ، سننشئ متغيرات لكل مجال من مناطقه ، وسنستخدم طريقة التخطيط لذلك GetRegion (<ИмяОбласти>) .

AreaHat = Layout.GetArea ("Hat") ؛ AreaDataAccount = Layout.GetArea ( "مقاول البيانات") ؛ AreaDataAgreement = Layout.GetArea ("DataAgreement") ؛ AreaFooter = Layout.GetArea ("الطابق السفلي") ؛

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

TabDoc.Clear () ،

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

Header.Parameters.PeriodStart = PeriodStart ؛ AreaHeader.Parameters.EndPeriod = EndPeriod ؛

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

TabDoc.Output (رأس المنطقة) ؛

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

طلب = طلب جديد ؛

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

Query.SetParameter ("Account62"، Charts of Accounts.Self-support.FindByCode ("62")) ؛

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

Query.SetParameter ("StartPeriod" ، StartPeriod) ؛ Query.SetParameter ("EndPeriod"، EndPeriod) ؛

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

Request.Text = "" ؛

بعد ذلك ، ضع المؤشر بين الاقتباسات ، اضغط على الزر الايمنالماوس وحدد العنصر البناءطلب. سيتم فتح نافذة مصمم الاستعلام.

نحتاج الآن إلى تحديد جدول قاعدة البيانات 1C 8 الذي نحتاجه.نحن بحاجة إلى جدول افتراضي تحولاتسجل المحاسبة الدعم الذاتي. ابحث عنه على الجانب الأيسر من نافذة المصمم

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

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

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

سجل في HIERARCHY (& Score62)

يمكنك أيضًا استخدام منشئ الشروط بالنقر فوق الزر بثلاث نقاط.

لا حاجة لفرض المزيد من الشروط على الطاولة الافتراضية ، لذا اضغط على الزر نعمفي نافذة خيارات الجدول الافتراضية. بعد ذلك ، نحتاج إلى تحديد الحقول التي نحتاجها من الجدول الدعم الذاتي(يسمى: الطرف المقابل ، اتفاق الطرف المقابل ، الدخل والنفقات). لمشاهدة قائمة الحقول المتوفرة في الجدول الذي حددناه ، اضغط على رمز "+" بجوار اسمها. بعد ذلك ، اسحب الحقول المطلوبة إلى أقصى يمين منطقة منشئ الاستعلام ، والتي تسمى: الحقول. إذا فتحنا مخطط حسابات المحاسبة ، فسنرى ذلك للحساب 62 تحليلات بواسطة للطرف المقابل - هذا هو Subconto1، وبواسطة عقد المقاول - Subconto2.

لذلك ، من حقول الجدول الظاهري ، حدد Subconto1و Subconto2. نظرًا لأننا نحتاج إلى الدخل والمصروفات حسب المبلغ ، فنحن أيضًا نختار الحقول المبلغو المبلغ

دعنا نملأ الأسماء المستعارة للحقول التي اخترناها ، لذلك سننتقل إلى علامة التبويب النقابات / الأسماء المستعارةوقم بتعيين أسماء الحقول المطلوبة.

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

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

Query.Text = "حدد | تحولات الدعم الذاتي. | تحولات الدعم الذاتي. اتفاقية مقاول Subconto2 AS ، | الدعم الذاتي التحولات. | الدعم الذاتي التحولات. AmountTurnoverKt AS النفقات| من | RegisterAccounting.S self-support Transovers (& Begin of the Period، End of period، Account in the HERARCHY (& Account62)،) AS الدعم الذاتي التحولات| النتائج | SUM (الدخل) ، | SUM (المصروفات) | تشغيل | الطرف المقابل ، | اتفاق الطرف المقابل ";

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

SelectionContractor = Query.Execute (). حدد (BypassingQueryResult.By Groupings) ؛

وبالتالي ، سوف نتلقى سجلات بإجماليات جميع الأطراف المقابلة.

قبل تجاوز بيانات العينة باستخدام حلقة ، نقوم بتهيئة المتغيرات المخصصة لحساب الإجماليات للتقرير:

إجمالي الدخل = 0 ؛ إجمالي المصروفات = 0 ؛

من أجل عرض بيانات التقرير بتسلسل هرمي (وينتشر بواسطة "+") ، عيِّن بداية التجميع التلقائي لصفوف مستند جدول البيانات:

TabDoc.StartAutogroupRows () ،

تم الانتهاء من جميع الاستعدادات ، فلنبدأ الآن في تجاوز نتائج الاستعلام. سيتم تنفيذ التجاوز باستخدام الحلقة الوداع

أثناء SelectionContractor.Next () Cycle EndCycle ؛

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

AreaDataAccount.Parameters.Incoming = 0 ؛ AreaDataAccount.Parameters.Expense = 0 ؛

بعد ذلك ، املأ المنطقة مقاول البياناتعينة بيانات البند

ملء inPropertyValues ​​(AreaDataAccount.Parameters ، SelectionAccount) ؛

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

TabDoc.Output (AreaDataAccount، 1) ،

الآن بالنسبة لهذا الطرف المقابل ، سنقوم بالاختيار وفقًا لعقودها.

SelectAgentContract = SelectContractor.Select (BypassingQueryResult.By Groupings) ،

سيتم تنفيذ التجاوز باستخدام الحلقة الوداع.

أثناء SelectionAgreementContractor.Next () Cycle EndCycle ؛

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

AreaDataAgreement.Parameters.Income = 0 ؛ AreaDataAgreement.Parameters.Expense = 0 ؛ ملء inPropertyValues ​​(AreaDataContract.Parameters، SelectionContractorContract) ؛ TabDoc.Output (AreaDataContract، 2) ؛

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

إجمالي الدخل = إجمالي الدخل + SelectionAgreementContractor.Income ؛ TotalExpense = TotalExpense + SelectionContractor's Agreement.Expense ؛

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

TabDoc.EndAutoGroupRows () ،

دورات كاملة مسؤولة عن إخراج البيانات إلى المنطقة مقاول البياناتو مقاول اتفاقية البياناتيبدو مثل هذا:

TabDoc.StartAutogroupRows () ، أثناء SelectionContractor.Next () منطقة التكرار DataContractor.Parameters.Incoming = 0 ؛ AreaDataAccount.Parameters.Expense = 0 ؛ ملء inPropertyValues ​​(AreaDataAccount.Parameters ، SelectionAccount) ؛ TabDoc.Output (AreaDataAccount، 1) ، SelectAgentContract = SelectContractor.Select (BypassingQueryResult.By Groupings) ، أثناء SelectionAgreementContractor.Next () منطقة التكرار DataAgreement.Parameters.Incoming = 0 ؛ AreaDataAgreement.Parameters.Expense = 0 ؛ ملء inPropertyValues ​​(AreaDataContract.Parameters، SelectionContractorContract) ؛ TabDoc.Output (AreaDataAgreement، 2) ؛ إجمالي الدخل = إجمالي الدخل + SelectionAgreementContractor.Income ؛ TotalExpense = TotalExpense + SelectionContractor's Agreement.Expense ؛ نهاية الدورة نهاية الدورة TabDoc.EndAutoGroupRows () ،

يبقى لعرض البيانات الإجمالية في المنطقة قبووعرض المنطقة نفسها مستند جدول البيانات.

AreaBasement.Parameters.TotalIncome = إجمالي الدخل ؛ AreaBasement.Parameters.TotalExpense = TotalExpense ؛ TabDoc.Output (RegionFooter) ؛

هذه هي عملية كتابة تقرير خارجي لـ 1C 8 بدون استخدام ACSمكتمل. الآن يمكن إنشاؤه في 1C: وضع Enterprise 8 وإضافته إلى الدليل المعالجة الخارجيةيمكنك تنزيل ملف التقرير الذي تمت مناقشته في المقالة بواسطة.

شاهد فيديو عن إنشاء ملف شكل مطبوعلتطبيق مُدار:

في القائمة العلوية انتقل إلى خدمة->->.

بعد ذلك ، سيظهر نموذج قائمة الدليل. في القائمة العلوية ، انقر فوق يضيف.

تظهر نافذة إضافة تقرير جديد. نضغط على الزر يفتح.

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

نتيجة لذلك ، يظهر التقرير الجديد في القائمة.

بعد ذلك يمكن استخدام التقرير وإتمام الإضافة. لفتح هذا التقرير لاحقًا ، انتقل أيضًا إلى خدمة->تقارير ومعالجة إضافية->تقارير خارجية إضافية.

بالنسبة لـ BP 3.0 و ZUP 3.0 و UT 11 و ERP 2.0.

لإضافة تقرير خارجي في 1C: تكوينات Enterprise 8.3 في واجهة مُدارة (على سبيل المثال ، محاسبة 3.0) ، سندخل القسم المقابل من البرنامج:


من الضروري أن يتم تضمين علم الاستخدام تقارير إضافية، اتبع الارتباط التشعبي:

في القائمة التي تفتح ، انقر فوق الزر يخلق:


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

الآن أنت بحاجة إلى إقامة إقامة(مكان إتاحة التقرير في البرنامج):


اختر عشوائيًا من القائمة القسم المطلوبالبرامج:


أنت الآن بحاجة إلى تسجيل التغييرات في بطاقة التقرير الخارجية:

افتح الآن التقرير من واجهة البرنامج:


القائمة فارغة ، انقر هنا تخصيص القائمة:


في نموذج الاختيار ، نضع علامة على تقريرنا:


الآن ظهر في القائمة:


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




تحميل...
قمة