Поиск неиспользуемых ссылок и пометка их на удаление (с описанием кода)

01.04.19

База данных - Чистка данных

Простая обработка по поиску неиспользуемых объектов с пометкой на удаление неиспользуемых элементов.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Поиск неиспользуемых ссылок и пометка их на удаление:
.epf 7,37Kb ver:1.0
23 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Возникла необходимость быстро проверить справочник и пометить неиспользуемые элементы на удаление.

Тестировалось в УПП 1.3.

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

Смысл простой.

1) Выбираем Справочники или Документы. (С документом стоит быть аккуратным, обработка писалась для чистки справочников)

2) Нажимаем "Найти и пометить на удаление неиспользуемое". Выполняется поиск по наличию ссылок в системе на элемент. Если ссылок не найдено элемент помечается на удаление.


Основной функционал поиска, при необходимости можете доработать под ваши задачи:    

Запрос = Новый Запрос;	
	
	Для каждого ЭлементТипа Из ОписаниеТиповОбъекта.Типы() Цикл
		
		ОбъектМетаданных = Метаданные.НайтиПоТипу(ЭлементТипа);
		
		Если Метаданные.Справочники.Содержит(ОбъектМетаданных) Тогда
		    ВидОбъекта = "Справочник";
		ИначеЕсли Метаданные.Документы.Содержит(ОбъектМетаданных) Тогда
		    ВидОбъекта = "Документ";
		КонецЕсли;
			
		Запрос.Текст = 
			"ВЫБРАТЬ
			|	ВыборкаЭлементов.Ссылка как Ссылка
			|ИЗ
			|	"+ВидОбъекта+"."+ОбъектМетаданных.Имя+" КАК ВыборкаЭлементов
			|Где
			|	не ПометкаУдаления";
		
		РезультатЗапроса = Запрос.Выполнить();	
		ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
		
		Шаг = 0;
		Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
			М = Новый Массив;
			М.Добавить(ВыборкаДетальныеЗаписи.Ссылка);
			ЕстьСсылки = НайтиПоСсылкам(М);
			колСсылок = ЕстьСсылки.Количество();
			Если колСсылок > 0 Тогда
				Сообщить("На этот элемент есть Ссылки в системе:" +ВыборкаДетальныеЗаписи.Ссылка);
				Сообщить("количество ссылок: "+колСсылок);
				//Тут возможно обработать найденные ссылки
				//Возможно все найденные ссылки помечены на удаление и вы желаете ваш элемент после 
				//анализа всё же пометить на удаление
				//При большом объеме данных будет долго анализировать информацию... 
				//Для каждого ст из ЕстьСсылки Цикл
				//	 //
				//	 //
				//КонецЦикла;                                                             
			Иначе
				Шаг = Шаг + 1;
				Сообщить(""+Шаг+") Помечен на удаление: " +ВыборкаДетальныеЗаписи.Ссылка);
				Об = ВыборкаДетальныеЗаписи.Ссылка.ПолучитьОбъект();
				Об.ПометкаУдаления = Истина;
				Об.Записать();			
			КонецЕсли;
		КонецЦикла;
		
		Сообщить("Всего помечено на удаление: "+Шаг); 
		
	КонецЦикла;

Можете поблагодарить, если Вам помог описанный функционал.

Вступайте в нашу телеграмм-группу Инфостарт

Обработка чистка поиск неиспользуемых ссылок пометка удаление 1С.

См. также

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы. Может выполнять свертку одновременно в несколько потоков. А так же автоматически, без непосредственного участия пользователя. Решение в Реестре отечественного ПО

24900 руб.

20.08.2024    62409    328    160    

297

SALE! %

Мастера заполнения Поиск данных База данных Инструментарий разработчика Корректировка данных Универсальные функции Механизмы платформы 1С Подбор и обработка объектов 1С 8.3 1С 8.5 Платные (руб)

Infostart MagicInput улучшает подбор в полях ввода 1С: ищет по любой части названия и по нескольким ключевым фрагментам, распознаёт ввод в другой раскладке и показывает иконки/статусы объектов прямо в списке. Поддерживает вставку навигационной ссылки/представления документа для автоподбора; для разработчиков доступны поиск по GUID и полному имени предопределённого. Работает в управляемых формах и подключается в большинстве конфигураций 1С 8.3/8.5.

5000 4000 руб.

25.02.2026    1625    9    1    

11

Чистка данных Системный администратор Программист 1С:Предприятие 8 1C:Бухгалтерия 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Розница 3.0 Платные (руб)

Позволяет удалить организации из любых из информационных баз 1С на управляемых формах (БП 3.0, УТ 11, КА 2, ERP 2, ЗУП 3, УНФ, Розница 3.0 и пр.). Главное требование - программа должна содержать справочник "Организации". Реализован самый быстрый алгоритм непосредственного удаления объектов. Работает даже на базах большого размера. Для ускорения работы алгоритма не запускается проверка контроля ссылочной целостности. Проверку учета можно запустить отдельно с помощью дополнительной обработки. Необходимо перед удалением самостоятельно проверить базу на наличие перекрестных ссылок разных организаций в одном документе. Эту дополнительную обработку проверки перекрестных ссылок по запросу предоставляем бесплатно нашим покупателям.

6100 руб.

16.03.2015    280266    250    83    

285

Чистка данных Системный администратор Программист 1С:Предприятие 8 1C:Бухгалтерия 1С:Бухгалтерия 1.6 1С:Бухгалтерия 3.0 1С:ERP Управление предприятием 2 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 1.6 1С:Управление нашей фирмой 3.0 1С:Управление торговлей 10 1С:Управление торговлей 11 1С:Розница 2 1С:Розница 3.0 Платные (руб)

Данные обработки помогут Вам легко и, главное быстро, выполнить удаление любых данных в Ваших базах 1С на платформах 8.1-8.3. Обработки помогут легко просмотреть связи ссылок в виде дерева, выбрать что удалять, а что нет, используя любые отборы. Это позволит уменьшить объем лишней и не нужной информации в справочниках и документах, планах видов характеристик и др. объектах и облегчит работу с данными пользователям и Вам. Понятное расположение команд и настроек, в сочетании с описанием и справкой, еще упростят процесс. (Обновление от 26.02.2026, версия 4.5, 4.6.0)

14640 руб.

22.02.2013    145354    288    153    

456

Поиск данных Системный администратор Программист 1С:Предприятие 8 1C:Бухгалтерия 1С:Бухгалтерия 3.0 1С:Зарплата и Управление Персоналом 3.x 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 1.6 1С:Управление нашей фирмой 3.0 1С:Управление торговлей 11 1С:Розница 2 1С:Розница 3.0 Платные (руб)

Обработки помогут Вам легко и, главное, быстро (в 5 раз и быстрее штатной обработки 1С), выполнить поиск дублирующих данных в Ваших базах 1С на платформах 8.1-8.3. Это позволит уменьшить объем лишней информации в справочниках и документах, планах видов характеристик и др., упростит работу с данными пользователям. А так же можно, одним нажатием, узнать в каких ссылочных объектах есть вообще дубли! Понятное расположение команд и настроек, в сочетании с описанием и справкой, еще упростят процесс. А так же обновления Вы получаете бесплатно в течение года с момента приобретения данных обработок! (Обновление от 27.11.2023, версия 6.12)

13420 руб.

14.05.2012    167551    356    253    

587

Чистка данных Программист 1С:Предприятие 8 1C:Бухгалтерия 1С:ERP Управление предприятием 2 Платные (руб)

Если в вашей информационной базе крутится очень много данных, или база должна быть доступна 24/7 (как в моем случае), или же вы боитесь запускать тестирование и исправление, НО существует потребность удалить битые ссылки, тогда эта обработка сможет Вам помочь. Обработка выявляет битые ссылки как в самих объектах метаданных, так и в их табличных частях(!), а так же может их удалить.

5084 руб.

23.08.2021    12224    26    3    

32
Для отправки сообщения требуется регистрация/авторизация