Определение размера базы данных 1С с разбивкой по объектам метаданных (обычная и управляемая форма)

Администрирование - Статистика базы данных

Обработка для определения размера таблиц базы данных 1С. Адаптирована для конфигураций на обычных и управляемых формах 8.2 - 8.3!

Описание

Адаптация популярной обработки Определение размера базы данных 1С с разбивкой по объектам метаданных для управляемых форм.

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

Режим использования модальности: Не использовать.

Режим использования синхронных вызовов расширений платформы и внешних компонент: Не использовать.

В версии для 8.3.6:

Процедура "Найти", заменена на "СтрНайти", т.к. считается устаревшей!

Весь функционал проиллюстрирован в скриншотах!

Обновление от 09.06.2018
- Добавлена команда с гарантированным получением результата, но в управляемых формах значительно страдает производительность.
- Дополнена справочная информация.

P.S. Если материал вам помог, поблагодарите автора, поставив звездочку!

Скачать файлы

Наименование Файл Версия Размер
Размер таблиц базы данных 3.1 (8.3.6+)
.epf 32,70Kb
09.06.18
81
.epf 3.1.1 32,70Kb 81 Скачать
Размер таблиц базы данных 2.1 (8.2-8.3.5)
.epf 33,44Kb
09.06.18
20
.epf 2.1.1 33,44Kb 20 Скачать

См. также

Комментарии
1. J Popov (japopov) 45 13.07.17 12:52 Сейчас в теме
То, что это только для MS SQL, указать просто забыли...
nedopro; AlexB.; +2 Ответить
2. Максим Б (Xershi) 345 13.07.17 12:57 Сейчас в теме
(1) строчки такой нет, но из описания это сразу видно! А точнее в скриншотах!
3. Канат Джумадылов (Fox-trot) 54 14.07.17 22:27 Сейчас в теме
такой инструмент каждый должен попробовать навоять :)
4. Максим Б (Xershi) 345 15.07.17 00:31 Сейчас в теме
(3) причем и на клиенте и на сервере!
5. Канат Джумадылов (Fox-trot) 54 15.07.17 13:23 Сейчас в теме
я использовал адо, но по большому счету редька не слаще
6. Максим Б (Xershi) 345 15.07.17 13:45 Сейчас в теме
(5) длительность работы алгоритма не от ком-объекта зависит, а от кода!
7. Канат Джумадылов (Fox-trot) 54 15.07.17 21:03 Сейчас в теме
так а я про что
помница еще была у мелких технология джет, но ее быстренько похоронили :)
8. Максим Б (Xershi) 345 15.07.17 21:04 Сейчас в теме
(7) дискутировать тут не о чем. Разница межу сервером и клиентом примерно 1 к 1,5. А у вас наверно было 1 к 300 или более в зависимости от данных.
9. Александр Лыткин (TrinitronOTV) 05.09.17 09:31 Сейчас в теме
Для файловых баз такую обработку как-то можно использовать?
10. Максим Б (Xershi) 345 05.09.17 15:33 Сейчас в теме
(9) это разработка не предназначена для файловых 1С! Т.к. она обращается к SQL серверу за данными. Для файловых есть специальная утилита или похожие разработки.
11. Александр Лыткин (TrinitronOTV) 07.09.17 05:40 Сейчас в теме
12. DenisCh Гейтс (DenisCh) 07.09.17 07:54 Сейчас в теме
(11) V8TableSizes от MMF
Качал, вроде, отсюда. На файловой работает. (Да только на файловой и работает )
13. Александр Лыткин (TrinitronOTV) 08.09.17 05:26 Сейчас в теме
(12) нашел такую, но версия не совсем новая, спасибо за информацию
14. Дмитрий Дашевский (dmitry1975) 39 28.12.17 12:04 Сейчас в теме
Спасибо, помогла обработка :)
15. Дмитрий Г (Дмитрий74Чел) 18 02.01.18 20:46 Сейчас в теме
Автор, в описании четко не увидел: в тонком клиенте работает ли? А то много аналогов - но только в толстом.

Второй вопрос: учтена ли ошибка http://forum.infostart.ru/forum34/topic61223/message686024/#message686024
16. Максим Б (Xershi) 345 02.01.18 21:36 Сейчас в теме
(15) УФ предполагают работу как в тонком клиенте так и в толстом.
Т.к. данной ошибки не встречал, то гарантировать не могу.
17. Дмитрий Г (Дмитрий74Чел) 18 09.01.18 07:56 Сейчас в теме
(16) изменю формулировку: используется ли RS=cmd.Execute(); вместо RS.Open();
18. Максим Б (Xershi) 345 09.01.18 11:27 Сейчас в теме
(17) наверное речь идет об этой строке кода:
RS.Open(СтрЗаменить(ШаблонЗапроса, "%ИмяТаблицы%", Строка.ТаблицаSQL), Connect);
19. Максим Б (Xershi) 345 09.06.18 14:10 Сейчас в теме
Переписал алгоритмы для гарантированного получения результата, но скорость при этом пострадала:
RS.Open(СтрЗаменить(ШаблонЗапроса, "%ИмяТаблицы%", Строка.ТаблицаSQL), Connect);

Данный код выполняется 5 290 раз 58,318323 секунд и занимает 78,18 % времени исполнения всего кода.
А вот улучшенный вариант:
RS = cmd.Execute();

В разы медленнее из-за запроса на удаление таблиц и таймаута на ожидание блокировок, выполняется те же 5 290 раз, но уже за 943,982579 секунд и времени на все занимает уже 98,38 %!
А если запускать все на клиенте будет еще в 1,5 - 2 раза медленнее!

У вас конечно результаты будут другие, т.к. у каждого своя база, где-то меньше, а где-то и намного большего размера.
Оставьте свое сообщение