إنشاء وحذف إدخالات سجل المعلومات. إنشاء وحذف إدخالات سجل المعلومات حذف إدخال سجل المعلومات

مرور سريع

خيار البرنامج للتنظيف الكامل:

عند التنفيذ، سيتم حذف إدخالات معلومات التسجيل بسرعة. إذا كان سجل المعلومات كبيرًا، فسيستغرق ذلك بعض الوقت، ولكن عادةً بضع ثوانٍ.

مجموعة السجلاتهو "مدير" خاص لإدارة مجموعة من السجلات.

إذا لم يتم تعيين التحديد حسب الأبعاد ولم يتم إجراء القراءة الأولية باستخدام طريقة القراءة ()، فسيتم حفظ الحالة الفارغة الحالية في وقت استدعاء الكتابة ().

حذف إدخالات تسجيل المعلومات بشكل تفاعلي

في وضع التشغيل المُدار للتكوين، يتم تمكين التحديد المتعدد لإدخالات السجل بشكل افتراضي، وإذا كان السجل مستقلاً (غير تابع لمستند المسجل)، فمن الممكن حذف مجموعة من الإدخالات.

باستخدام Shift، حدد جميع الإدخالات باستخدام الأمر Ctrl+A وانقر فوق "حذف" أو من خلال قائمة السياق "حذف"

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

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

في النماذج العادية، يمكنك حذف سطر واحد بشكل قياسي في كل مرة.

معالجة حذف إدخالات سجل المعلومات

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

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

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

حذف إدخالات سجل المعلومات

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

SetRecord = InformationRegisters. سعر. CreateRecordSet() ; SetRecord. يكتب() ؛

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

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

لنفترض أننا نريد حذف السجلات حيث المنتج - قلم رصاص، أ الفترة - 01/01/2017. اسمحوا لي أن أذكرك أنه بالنسبة لسجلات المعلومات الدورية، يمكن تعيين التحديد ليس فقط حسب الأبعاد، ولكن أيضًا حسب الفترة. في هذه الحالة، سيبدو الكود الخاص بنا هكذا

SetRecord = InformationRegisters. سعر. CreateRecordSet() ; SetRecord. اختيار. فترة. مجموعة("20170101"); SetRecord. اختيار. منتج. Set(Directories.Products.FindByName("Pencil") ) ; SetRecord. يكتب() ؛

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

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

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

إضافة إدخالات إلى سجل المعلومات

وكمثال على إنشاء إدخالات سجل المعلومات، فلنستعيد الإدخالات المحذوفة مسبقًا

SetRecord = InformationRegisters. سعر. CreateRecordSet() ; SetRecord. اختيار. فترة. مجموعة("20170101"); SetRecord. اختيار. منتج. Set(Directories.Products.FindByName("Pencil") ) ; NewRecord = SetRecord. يضيف() ؛ رقم قياسي جديد. الفترة = "20170101"؛ رقم قياسي جديد. الموفر = الدلائل. الأطراف المقابلة. FindByName("LLC "Lesprom" "" ) ; رقم قياسي جديد. المنتج = الدلائل. بضائع. FindByName("قلم رصاص" ) ; رقم قياسي جديد. المبلغ = 10 ; NewRecord = SetRecord. يضيف() ؛ رقم قياسي جديد. الفترة = "20170101"؛ رقم قياسي جديد. الموفر = الدلائل. الأطراف المقابلة. FindByName("PJSC" "القرطاسية" "" ) ; رقم قياسي جديد. المنتج = الدلائل. بضائع. FindByName("قلم رصاص" ) ; رقم قياسي جديد. المبلغ = 27 ; SetRecord. اكتب (خطأ) ؛

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


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

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

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

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

RecordSet = Information Registers.OURRegister.CreateRecordSet(); RecordSet.Write();

مجموعة السجلات = سجلات المعلومات. سجلنا. CreateRecordSet() ;

مجموعة السجلات. يكتب() ؛

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

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

الخطوة 2. انسخ سجل المعلومات المطلوب.

الخطوة 3. احذف سجل المعلومات الأصلي

الخطوة 4. أعد تسمية النسخة إلى النسخة الأصلية وقم بتطبيق التغييرات.

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

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

إذا وجدت خطأ أو عدم دقة، يرجى تحديد جزء من النص والنقر عليه السيطرة + أدخل.