كيفية توصيل تقرير خارجي في 1s 8.3. معلومات المحاسبة

ضع في اعتبارك إنشاء تقرير خارجيفي 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) ، سندخل القسم المقابل من البرنامج:


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

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


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

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


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


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

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


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


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


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


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


قم بتنزيل معالجة الكائنات العالمية 1C 8.3.

في التطبيق المعتاد لإصدار منصة 1C 8.2 و 8.1 (في الأشكال العادية) ، كانت هناك معالجة رائعة مثل "الاختيار الشامل ومعالجة الكائنات". لقد سهّل إلى حد كبير حياة المبرمجين ومسؤولي البرامج.

ظهرت نفس معالجة 1C لتطبيق مُدار (8.3 و 8.2). قبل ذلك ، في 1C 8.3 ، كان من الضروري التعامل مع المعالجة النموذجية لتغيير المجموعة في التفاصيل ، ولكنها لا تحل جميع المهام المطلوبة في العمل اليومي لمستخدم أو مبرمج 1C.

بحث واختيار الأشياء

بعد تنزيل المعالجة ، يمكننا تشغيلها على أنها خارجية. من لا يعرف ، يتم ذلك من خلال قائمة "ملف" - "فتح". ستظهر نافذة المعالجة:

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

من خلال النقر فوق الزر "تصفية الإعدادات" ، يمكننا تعيين عامل التصفية لأي حقل من حقول الكائن تقريبًا:

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

بعد كل الإعدادات ، يجب تحديد الكائنات. انقر فوق الزر "بحث عن كائنات" وشاهد نتيجة التحديد:

معالجة العنصر

دعنا ننتقل إلى علامة التبويب "المعالجة":

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

خوارزمية تعسفية

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

وضع الدعائم

تسمح لك معالجة "تفاصيل التثبيت" بتغيير تفاصيل المستندات أو الدلائل المحددة ، بالإضافة إلى سجلات المعلومات. مفيدة جدًا ، وفي بعض الأحيان تكون المعالجة ضرورية فقط. على سبيل المثال ، دعنا نستبدل عملة المستند في المستندات المحددة:

وتجدر الإشارة على الفور إلى أنه يمكن إجراء المعالجة على الفور ، أو يمكنك حفظ الإعداد. سيتم عرض هذا الإعداد في شجرة المعالجة.

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

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

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

الآن يمكننا تنفيذ الإعدادات المحددة بالتسلسل بالنقر فوق الزر "تشغيل".

المصدر: programmer1s.ru

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

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

للقيام بذلك ، سنقوم على الفور بإجراء الإعدادات اللازمة في البرنامج (يتم اعتبار التكوين 1C 8.3: "محاسبة المؤسسة 3.0" على النماذج المدارة).

يمنحنا تحديد هذا المربع القدرة على استخدام المعالجة الخارجية.

إنشاء معالجة خارجية جديدة في 1C 8.3 عن طريق المثال

لننتقل الآن إلى أداة التهيئة. حدد "جديد ..." من قائمة "ملف". ستفتح نافذة لاختيار نوع الملف المراد إنشاؤه. حدد "المعالجة الخارجية":

سيتم فتح نافذة معالجة خارجية جديدة. دعونا نطلق عليها اسمًا الآن. سيتم تقديمه عند حفظ المعالجة على القرص:

لنقم بإضافة نموذج معالجة مُدار جديد. نشير إلى أن هذا هو نموذج المعالجة وهو النموذج الرئيسي:

في النموذج سيكون لدينا اثنان من الدعائم:

  • مجموعة التسمية - رابط للكتاب المرجعي "التسمية" ؛
  • حدد معدل ضريبة القيمة المضافة - ارتباط إلى قائمة معدل ضريبة القيمة المضافة.

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

يمكن تغيير تسلسل التفاصيل باستخدام الأسهم "لأعلى" - "لأسفل":

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

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

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

& AtClient

مجموعة الإجراءات معدل ضريبة القيمة المضافة (الأمر)

SetVATRateOnServer () ،

EndProcedure

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

& على الخادم

SetVATRateOnServer () الإجراء

طلب = طلب جديد ؛
Request.Text =
"يختار
| التسمية
| من
| الدليل. التسمية AS التسمية
| أين
| التسمية. المرجع في التسلسل (ومجموعة التسمية)
| وليس التسمية. علامة الحذف
| وليس التسمية. هذه هي المجموعة.

Query.SetParameter ("مجموعة التسمية" ، مجموعة التسمية) ؛
RequestRes = Request.Execute () ،
SelectDetRecords = ResRequest.Select () ،

أثناء حلقة SelectDetRecord.Next ()

محاولة
SprNo.Object.Write () ،
استثناء
تقرير ("خطأ في كتابة الكائن" "" + SprNoobObject + "" "!
| » + DescriptionError ()) ؛
نهاية المحاولة

نهاية الدورة

EndProcedure

نعود إلى علامة التبويب "Form" ، نضيف زرًا إلى النموذج ونربطه بالأمر:

على هذا النحو ، فإن معالجتنا جاهزة للاستخدام. للاتصال به ، في وضع "1C Enterprise" ، تحتاج إلى الانتقال إلى القائمة "ملف" - "فتح" وتحديد الملف الذي تم إنشاؤه.

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

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

ولكن من أجل إضافة المعالجة الخاصة بنا هناك ، يجب علينا أولاً إعطائها وصفًا وإخبار البرنامج بخصائصه.

وصف تفاصيل المعالجة الخارجية

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

تصدير DetailOnExternalProcessing () للوظيفة

DataForReg = هيكل جديد () ،
DataForReg.Insert ("الاسم" ، "تعيين معدل ضريبة القيمة المضافة") ؛
DataForReg.Insert ("SafeMode"، True) ؛
DataForReg.Insert ("الإصدار"، "الإصدار: 1.001") ؛
DataForReg.Insert ("المعلومات" ، "معالجة لتعيين معدل ضريبة القيمة المضافة في دليل التسمية") ؛
DataForReg.Insert ("View"، "extraProcessing") ؛

TabZnCommands = New TableValues ​​؛
TabZnCommands.Columns.Add ("المعرف") ،
TabZnCommands.Columns.Add ("الاستخدام") ،
TabZnCommands.Columns.Add ("عرض") ،

NewLine = TabZnCommands.Add () ،
NewString.Identifier = "OpenProcessing" ؛
NewLine.Usage = "FormOpen" ؛
NewLine.View = "فتح المعالجة" ؛
DataForReg.Insert ("الأوامر" ، TabZnCommands) ؛

إرجاع DataForReg ؛

وظائف النهاية

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

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

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

ربط المعالجة الخارجية في 1C 8.3



تحميل...
قمة