Логотип 2А СОФТ

Анализ количества созданных объектов в базе данных 1С

1С

Обработка для разработчиков 1С, специалистов по внедрению 1С и администраторов информационных баз 1С. Предназначена для решения задач, где требуется оперативность в оценке масштабов используемых данных в базе данных 1С.

4 мин
Доступно для: Специалист Администратор Программист
обработка

Разработчики, специалисты по внедрению и администраторы информационных баз на платформе 1С:Предприятие не редко сталкиваются с необходимостью оценки масштаба используемых данных в базе. Конфигурации 1С содержат достаточно большое количество метаданных, но далеко не все из них активно используются. Для подсчета количества объектов каждого вида метаданных несложно написать простую обработку. Такая обработка всегда пригодится в качестве первичного инструмента для оптимизации, миграции и аудита системы.

Чем полезна такая обработка?

Главная ценность инструмента — быстро сориентировать пользователя в том какие объекты метаданных используются в данной конфигурации. После экспресс анализа количества объектов в базе данных можно приступить к более детальному рассмотрению проблемы, ради которой потребовался этот анализ данных базы 1С. Ведь уже известно, что внесено в базу и что можно в ней смотреть. Не нужно тратить время на ручное открытие всех списков документов и справочников, составление запросов для подсчета количества документов. Достаточно за один клик получить детальную картину информационной базы.

Основные преимущества использования:

  • Точная оценка объемов: Вы четко видите, какие объекты (справочники, документы, регистры) созданы в базе данных. Каких объектов создано очень много, а каких мало.
  • Выявление «мусора»: Легко обнаружить неиспользуемые или устаревшие объекты метаданных, которые были созданы для разовых задач, но продолжают занимать место.
  • Планирование ресурсов: На основе данных о количестве записей можно точнее спрогнозировать рост базы и требования к дисковому пространству сервера СУБД.
  • Свертка базы: вы понимаете какие объекты лучше удалить из базы для достижения максимального эффекта от свертки базы с минимальными трудозатратами.

Где и когда ее можно использовать?

Область применения такой обработки крайне широка — от рядовой поддержки до масштабных архитектурных проектов.

  1. Подготовка к свертке информационной базы. Перед проведением свертки (удалением старых документов и очисткой регистров) необходимо зафиксировать «точку старта». Обработка позволяет сравнить количество объектов до и после свертки, чтобы наглядно оценить эффективность процедуры и убедиться, что лишние данные действительно удалены.
  2. Переход на новые конфигурации или миграция данных. При переносе данных (например, с «1С:УПП» на «1С:ERP») или переезде в облачную инфраструктуру критически важно знать точный объем переносимых сущностей. Это помогает правильно настроить правила обмена (конвертации) и оценить время, которое потребуется на трансляцию данных.
  3. Аудит и оптимизация производительности. Если база начинает «тормозить», анализ количества записей в разрезе метаданных укажет на главных виновников. Например, вы можете обнаружить миллиарды записей в регистре сведений «Версии объектов».
  4. Оценка стоимости доработок и сопровождения. Для обслуживающей команды специалистов — отличный инструмент экспресс-аудита. Посмотрев на количество документов и справочников, архитектор сразу понимает реальный масштаб кастомизации системы клиентом и может более точно оценить трудозатраты на обновление измененной конфигурации.

Резюме

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

Готовый код:

Главная процедура в обработке подсчета количества объектов представлена ниже:

 1&НаСервере
 2Процедура НайтиНаСервере()
 3
 4    // Обходим в метаданных все справочники конфигурации и 
 5    // подсчитываем кол-во созданных элементов в каждом справочнике
 6	Для Каждого Стр Из Метаданные.Справочники Цикл
 7		выб = Справочники[стр.Имя].Выбрать();
 8		Если выб.Следующий() Тогда 
 9			НСтрока = Объекты.Добавить();
10			НСтрока.Объект = "Справочник:" + стр.Имя;
11		КонецЕсли;
12	КонецЦикла;
13	
14    // Обходим документы
15	Для Каждого Стр Из Метаданные.Документы Цикл
16		выб = Документы[стр.Имя].Выбрать();
17		Если выб.Следующий() Тогда 
18			НСтрока = Объекты.Добавить();
19			НСтрока.Объект = "Документы:" + стр.Имя;
20		КонецЕсли;
21	КонецЦикла;
22	
23    // Обходим регистры сведений
24	Для Каждого Стр Из Метаданные.РегистрыСведений Цикл
25		выб = РегистрыСведений[стр.Имя].Выбрать();
26		Если выб.Следующий() Тогда 
27			НСтрока = Объекты.Добавить();
28			НСтрока.Объект = "Регистры сведений:" + стр.Имя;
29		КонецЕсли;
30	КонецЦикла;
31	
32    // Обходим регистры накопления
33	Для Каждого Стр Из Метаданные.РегистрыНакопления Цикл
34		выб = РегистрыНакопления[стр.Имя].Выбрать();
35		Если выб.Следующий() Тогда 
36			НСтрока = Объекты.Добавить();
37			НСтрока.Объект = "Регистры накопления:" + стр.Имя;
38		КонецЕсли;
39	КонецЦикла;
40	
41	
42КонецПроцедуры

Если по какой-то причине вам удобнее получить готовую обработку, сразу посмотрите в “Полезные материалы для скачивания”. Здесь лежит готовая к скачиванию обработка.

Полезные материалы для скачивания
  • CheckingAmountData1C.epf Обработка, показывающая количество данных в информационной базе данных 1С 8 6.5 KB