Очистка регистров от пустых регистраторов


В моей практике возникали случаи когда регистратор становился битой ссылкой типа <Объект не найден> (77:805f000c291e652311e0ad237dea6181) и такие движения как бы "зависали" и мешались в оборотах, вот и написал такую обработку, постарался сделать универсальной.

Эта обработка «умеет» работат с 3-мя типами регистров: РегистрыСведений, РегистрыНакопления, РегистрыРасчета.

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

ВНИМАНИЕ! Выполнять обработку под ПОЛНЫМИ правами! Иначе можно получить неадекватный эффект! Проверка на битую ссылку делается посредством:

Если Выборка.Регистратор.ПолучитьОбъект()=неопределено.

 Ну и конечно же сделать бэкап не забудьте!

6 Comments

  1. K_A_O

    > Проверка на битую ссылку делается посредством: Если Выборка.Регистратор.ПолучитьОбъект()=неопределено.

    Перебирать миллион записей регистра нехорошо. Может быть стоит прямо в запросе проверить Регистратор.Номер ЕСТЬ NULL

    Reply
  2. royaljon

    (1) K_A_O, изменил

    Reply
  3. TMV

    (0), Может лучше не удалять такие записи, а восстанавливать не найденный объект?

    Reply
  4. royaljon

    (3) TMV, это можно предусмотреть, просто в моем случае получалось что регистратор специально удален и нет нужды его восстанавливать

    Reply
  5. almas

    Посмотри. http://infostart.ru/public/21538/

    Писал для себя. пользуюсь достаточно часто.

    Reply
  6. royaljon

    (5) almas, да на вашем фоне детский лепет, спасибо!

    Reply

Leave a Comment

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