gifts2017

Размер таблиц информационной базы 1С 8.2 - 8.3 на SQL сервере

Опубликовал Ildar Gabdrakhmanov (spezc) в раздел Администрирование - Статистика базы данных

Показывает информацию о размерах таблиц базы данных на SQL (количество строк и занимаемое место в Кб) в связке с метаданными базы данных 1С в виде таблицы.

Показывает информацию о размерах таблиц базы данных на SQL (количество строк и занимаемое место в Кб) в связке с метаданными базы данных 1С в виде таблицы.

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

Выводимые данные:

        Зарезервировано, Кб
        Данные, Кб
        Индекс, Кб
        Неиспользовано, Кб
        КоличествоСтрок

Идея взята из публикации http://infostart.ru/public/179281/. Изменен запрос (показываются верные данные о размерах таблиц).

Представление результата через схему компоновки данных, возможность менять представления через конструктро СКД.

Работает с платформой 8.2, 8.3 (обычное и управляемое приложение, толстый клиент, тонкий клиент), SQL 2005-2008.

 

Версия 1.1:

  • формат внешней обработки замен на внешний отчет
  • изменен порядок редактирование настроек СКД
  • возможность использования вариантов отчета в управляемом приложении

Версия 1.2:

  • исправлены итоги по группировкам;

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

Наименование Файл Версия Размер Кол. Скачив.
Размер раблиц базы данных
.erf 15,03Kb
23.06.15
691
.erf v.1.2 15,03Kb 691 Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Артем Перепёлкин (it-on) 21.05.14 11:08
Добрый день!
При формировании отчета появляется ошибка.
Конфигурация: Бухгалтерия предприятия, редакция 2.0 (2.0.58.6)
Платформа: 1С:Предприятие 8.3 (8.3.4.437)
Толстый клиент.
Подскажите что я сделал не так.

Ошибка исполнения отчета
по причине:
Ошибка при выполнении обработчика - 'ПриКомпоновкеРезультата'
по причине:
{ВнешнийОтчет.РазмерТаблицБазыДанных.МодульОбъекта(151)}: Ошибка при вызове метода контекста (Инициализировать)

по причине:
Ошибка компоновки данных
по причине:
Ошибка инициализации
по причине:
Ошибка создания набора данных "НаборДанных1"
по причине:
Не найден внешний набор данных "ТаблицаДанныхИнформационнойБазы"


Upd. Вопрос снят. В поле Имя сервера надо было ввести имя sql-сервера, а не 1С сервера.
KirealSmith; smit1c; +2 Ответить 1
2. Ildar Gabdrakhmanov (spezc) 21.05.14 12:02
Да, ошибка возникает в случае неудачного подключения к SQL. В ближайшее время добавлю обработку ошибки подключения и представление ее с удобном виде
3. WellMaster (WellMaster) 30.06.14 14:33
Чем отличается "Размер зарезервировано" от "Размер данные"?
4. Ildar Gabdrakhmanov (spezc) 01.07.14 22:03
Данные - это физический размер данных в базе. Зарезервировано - это размер, который "подготовлен" для хранения данных. Например данных в mdf файле 10гб, а сам файл mdf - 15гб (зарезервировано)
5. Lumis 03.09.14 19:31
Очень странно считается ИТОГО для основного варианта отчета, вместо суммы - цифры из первой строки таблицы. И так для каждой колонки.
6. Александр (smit1c) 22.10.14 12:32
имя пользователя и пароль - это для доступа к серверу, а не к базе..
7. Ildar Gabdrakhmanov (spezc) 22.10.14 12:51
(5) Lumis, спасибо за замечание, проверю
8. Ildar Gabdrakhmanov (spezc) 22.10.14 12:51
(6) smit1c, это имя пользователя и пароль на sql (под этим пользователем будет выполнятся подключение к sql и выполняться запрос)
9. Максим Литвинов (maksa2005) 23.10.14 11:45
Укажите примеры заполнение ИмяБД...Сервера...пользователя...пароль...все что я указываю в Среда SQL Server Management Studio пишит ошибку:
Ошибка исполнения отчета
по причине:
Ошибка при выполнении обработчика - 'ПриКомпоновкеРезультата'
по причине:
{ВнешнийОтчет.РазмерТаблицБазыДанных.МодульОбъекта(151)}: Ошибка при вызове метода контекста (Инициализировать)
ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновкиДанных, СтруктураВнешнихДанных,, Истина);
по причине:
Ошибка компоновки данных
по причине:
Ошибка инициализации
по причине:
Ошибка создания набора данных "НаборДанных1"
по причине:
Не найден внешний набор данных "ТаблицаДанныхИнформационнойБазы"

10. Юрий Осипов (yuraos) 26.11.14 21:01
(1) it-on,
(2) spezc,
да ... неплохо бы было бы юзабилити накрутить:
1. подсказки у полей ввода, а то приходится думать - "что за имя сервера, имя базы, пользователь и пароль".
2. контроль заполнения обязательных реквизитов отчета перед его формированием.
3. обработку исключительных ситуаций с внятными сообщениями о причинах ошибки.
11. Юрий Осипов (yuraos) 26.11.14 21:05
(10)
ЗЫ
А вообще - клевый отчет!!!

Очень пригодился для выявления причин, почему бэкап базы распух в два раза.
Оказалось моя коллега учудила -
- решила в регистр остатков писать задним числом с периодом '02.01.0001'
;)))
12. борян петров (TODD22) 30.12.14 11:31
Спасибо :) Обработка очень пригодилась :)
13. Андрей Бирюков (Andrey34rus) 05.02.15 00:07
14. Александр Воронов (ya.Avoronov) 18.02.15 08:26
Спасибо автору.
Можете разъяснить по поводу колонок:

*Размер зарезервировано = 540 000
*Размер данные = 530 000
*Размер индекс = 9 700
*Размер не использовано = 300
*Количество строк = 250 000

На что обратить внимание? Как избавиться от такого размера если это регистр накоплений с 10-ком ресурсов. Что в большей степени влияет на размер таблицы?
15. Ildar Gabdrakhmanov (spezc) 24.02.15 08:05
(14) ya.Avoronov, поидее размер таблицы в 540мб сам по себе волновать не должен. Размер таблицы зависит от количества строк и количества измерений/ресурсов/реквизитов (чем больше информации храниться в каждой строке - тем больше "вес" этой строки).
Хотя если честно, есть подозрения в правильности архитектуры вашего решения. В регистре накопления обычно 1-2, максимум 3 ресурса. Но чтобы 10...
16. Alex Necro (alexnecro) 11.06.15 06:13
17. Алексей Р. (miniogn) 21.06.15 14:50
В настройке отчета сгруппировал по типу метаданных, так вот итоги по группировке не правильно показываются.
18. Ildar Gabdrakhmanov (spezc) 23.06.15 07:40
(17) miniogn, большое спасибо за ваш комментарий. Исправил отображение итогов.
19. Александр К (SunSun1979) 20.07.15 13:58
Добавьте поле таймаут, а то у меня вот УТ не успевает отработать :)
20. Валерий К (klinval) 28.07.15 11:35
(9) maksa2005, возможно вы указали имя базы как она называется в 1С (с русскими буквами), необходимо же в администрировании серверов в свойствах подглядеть реальное имя базы (без русских букв) и тогда всё будет работать. У меня по крайней мере был именно в этом затык.
21. BlackJack BlackJack (blackjack666) 03.08.15 21:52
С Postgre не будет работать?
22. Ildar Gabdrakhmanov (spezc) 04.08.15 07:43
(21) blackjack666, будет, если переписать скрипт)
23. Yackov . (Yackov) 07.08.15 11:17
Параметры подключения пишу правильные, другой отчет по ним отрабатывает, тут нет:
Ошибка исполнения отчета
по причине:
Ошибка при выполнении обработчика - 'ПриКомпоновкеРезультата'
по причине:
{ВнешнийОтчет.РазмерТаблицБазыДанных.МодульОбъекта(23)}: Ошибка при вызове метода контекста (Open)

по причине:
Произошла исключительная ситуация (Microsoft OLE DB Provider for SQL Server): Время ожидания запроса истекло
24. Группа Полипластик (polyplastic) 06.10.15 11:43
Спасибо, отчет полезный.
Удобнее, чем соединять вручную названия таблиц.

Однако, хочу отметить несколько моментов, которые можно доработать:
1.Для соединения с сервером SQL предусмотреть вариант соединения с использованием своей учетной записи. Если ты администратор сервера, имя/пароль вводить не нужно.
2.Неплохо бы сделать кнопку "Проверка соединения". Убедиться, что параметры сервера указаны верно до исполнения отчета
3.Если включить группировку по типу метаданных, можно заметить 2 вещи: пустые значения (сделайте например "Общие" по аналогии с веткой в конфигурации), и системные объекты, которые вероятнее всего не интересуют специалиста 1С. Отобрать можно по тем таблицам, которые выдает ПолучитьСтруктуруХраненияБазыДанных()
4.Не показывает имена табличных частей
25. Ildar Gabdrakhmanov (spezc) 07.10.15 07:55
(24) спасибо за ваши комментарии), в ближайшее время обновлю с учетом ваших предложений.
26. Nikoly Nik (Cool_vsi) 15.10.15 10:16
не могу подключиться к базе, объясните пожалуйста в какое поле что вбивать?

Разобрался, везде указываем данные SQL сервера, данные сервера 1с не важны и не нужны тут
спасибо! крутой отчет
27. Ольга Немешева (kn) 04.12.15 09:02
Спасибо, полезная обработка!Для файловой использую эту http://infostart.ru/public/82178/
28. rasswet (rasswet) 24.05.16 15:44
видимо автору не до обновления обработки :(
BigB; consigroup; +2 Ответить
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа