Программирование в 1СПятница, 22.11.2024, 06:23

| RSS
Главная | Каталог статей
Меню сайта

Категории раздела
Основы [36]
Общие вопросы по 1С 7.7 [88]
1С: Бухгалтерия 7.7 [7]
1С: Торговля 7.7 [4]
1С:Зарплата и кадры 7.7 [1]
1С 7.7: Проблемы и решения [33]
УРБД [3]
Управление Распределенными Базами Данных
OLE [2]
Механизм обмена данными между базами 1С через OLE
SQL [1]
Сервер терминалов [1]
Интеграция с внешними приложениями [3]
FAQ по 1С v.7.7 [7]
FAQ по 1С v.7.7

Поиск

Поиск по сайту

Главная » Статьи » 1С v.7.7 » Общие вопросы по 1С 7.7

Удаление неиспользуемых элементов справочника
Удаление неиспользуемых элементов справочника
 
Есть многоуровневый справочник Контрагенты. Как определить для каждого элемента этого справочника, используется ли он – где-то задействован в документах или операциях и если нет, то удалить.

Попробуйте воспользоваться процедурой НайтиСсылки(), например, вот так:

ТЗСсылок = СоздатьОбъект(“ТаблицаЗначений”);
СпрК = СоздатьОбъект(“Справочник.Контрагенты”);
ВсегоПомечено = 0;
СпрК.ПорядокНаименований();
СпрК.ВыбратьЭлементы();
Пока СпрК.ПолучитьЭлемент()=1 Цикл
   Если СпрК.ЭтоГруппа()<>1 Тогда
      ТЗСсылок.УдалитьСтроки();
      НайтиСсылки(СпрК.ТекущийЭлемент(),ТЗСсылок);
      Если ТЗСсылок.КоличествоСтрок()=0 Тогда
         Если СпрК.ПометкаУдаления()<>1 Тогда
            СпрК.Удалить(0);
            ВсегоПомечено = ВсегоПомечено + 1;
         КонецЕсли;
      КонецЕсли;
   КонецЕсли;
КонецЦикла;
Сообщить(“Итого помечено на удаление “ + СокрЛП(ВсегоПомечено)+” контрагента(ов)”);
Категория: Общие вопросы по 1С 7.7 | Добавил: Spacer (11.07.2008)
Просмотров: 6780 | Комментарии: 1
Всего комментариев: 1
1 togomsk  
1
Крайне нерационально искать ссылки на каждый элемент справочника по отдельности. Надо создать список из всех элементов справочника, найти по ним ссылки ( 1 раз), а затем уже искать элементы, на которые нет ссылок в таблице значений. Где-то так.

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz

  • Статистика

    Copyright 1C:Programmer © 2024
    Бесплатный конструктор сайтов - uCoz