Очистка регистра сведений с отбором

Думаю, многие знают, что очистить полностью регистр сведений, можно одной строкой, и наверное у многих даже есть какой-то заготовленный шаблон(обработка) для очистки.

А вот что делать если регистр сведений нужно очистить, по определенному условию? 

Например по периоду или по организации. Опять писать несколько строк кода?

В свое время написал универсальную обработку для этих целей. и уже было про нее забыл как случайно она попала в мое поле зрения. И чтобы больше ее не терять, решил выложить здесь. Так она точно не потеряется, и может кому-то пригодится.

Так-же на особо больших базах, где более 1 млн. записей, при выполнении очистки регистра одной строкой, может выдаваться сообщение о нехватке памяти. Для этих целей есть возможнойть установить удалять порциями.

10 Comments

  1. Yashazz

    1. Почему отбор не СКД, в нонешние-то времена?

    2. Учтена ли ситуация «обезьяны с гранатой», есть ли контроль доступа?

    3. Речь только о независимых регистрах?

    Reply
  2. vasiliy_b

    1. Писал давно(см. описание).

    2. Писал для себя(см. описание).

    3. Да.

    Reply
  3. Yashazz

    За выкладывание с учётом 2) во всеобщий доступ можно бы и минуснуть, но не буду — т.к. юзвери, поуродовавшие свои базы с использованием таких обработок, делают хлеб франчам и фрилансерам. ))) Пусть будет.

    Reply
  4. @lexandr

    (3) Yashazz,такие коментарии к обработки из десятка строк, просто диву даешся. Человек работал, делал для себя выложил, вдруг кому-то пригодиться, а он еще минуснуть хочет, обидно. Спасибо за обработку, такие очень часто помогают, когда надо что-то очень быстро сделать, а писать лень.

    Reply
  5. TMV

    (4) @lexandr, странно, что сюда писать не

    лень
    Reply
  6. vicmos

    Спасибо

    Reply
  7. RomikSh

    Отбор не срабатывает, очистил весь регистр, хорошо что это была копия (((

    Reply
  8. vasiliy_b

    Может опишите проблему по точнее? т.к. Этой обработке не один день, и ни кто кроме Вас еще не жаловался. Сам пользуюсь регулярно.

    Reply
  9. koka

    (8) (7) RomikSh, Привет!

    Аналогично — очистил регистр напрочь, хотя установил отбор по одному из измерений с видом сравнения «содержит» — хорошо на копии.

    1. Если не установить отметку «Удалять порциями», то очищается весь регистр без отбора?

    2. Что произойдёт, если кол-во в порции будет не равно (больше) чем реальных записей в регистре? Видимо выражение

    ЕстьЗаписи = (Результат.Количество() = КоличествоЗаписей * Множитель)

    выдаст, что записей нет ?

    3. Не подключен «Вид сравнения», указанный в таблице отбора» — жёстко зашито «равно». Это вообще …

    За заготовку плюс, конечно. Если будет время — допилите — вещь то полезная.

    Reply
  10. Alexei_fox

    Минус, пометьте пож. что обработка работает только с независимыми регистрами.

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *