Свертка базы (регистров накопления) средствами SQL

Опубликовал Анатолий Ситников (acsent) в раздел Обработки - Свертка базы

Обработка предназначена для ускорения свертки регистров путем использования прямых запросов SQL

В обработке можно выбирать

  Какие регистры сворачивать
  Какие документы ввода остатков использовать (ОперацияБуХ. КорректировкаЗаписейРегистров)
  Количество строк в документе
  Удаление движений средствами 1С или SQL

 

Порядок выполнения свертки

1. Создание документов ввод остатков  с неактивными движениями
Кнопка "Создать ввод остатков"

------------
1.1 Обмен РБД

Выполняется вручную.

Если РБД не используется, то данный шаг можно пропустить.


------------
2. Отключение итогов
3. Удаление старых движений (можно средствами SQL или 1С)
4. Включение активности у ввода остатков
5. Включение итогов

Кнопка "Удалить старые движения"

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

Наименование Файл Версия Размер
СверткаРегистровSQL.epf
.epf 21,04Kb
26.08.15
68
.epf 21,04Kb 68 Скачать

См. также

Добавить вознаграждение
Комментарии
1. Расул Хадисов (lambert) 26.08.15 20:18 Сейчас в теме
Не работает под платформой 8.1
2. Андрей Вахрин (dolter) 116 26.08.15 21:29 Сейчас в теме
Т.е. пересчет итогов идет средствами 1С, а не SQL?
3. Алексей Роза (DoctorRoza) 27.08.15 09:13 Сейчас в теме
Автор! Вы вот написали данную обработку, значит в теме. Просветите меня - зачем делать свертку базу? В нынешних условиях, стоимость дискового пространства, возможности 1С и т. п.. Что это дает? Я у многих спрашивал тут на сайте. Ответы, типа база быстрее начинает работать (с какого ..?) или места на дисках мало (и свертка прям сократит ее на ~90%), звучат просто по-детски. Может Вы мне скажете? :) Спасибо!
4. Анатолий Ситников (acsent) 1003 27.08.15 10:03 Сейчас в теме
(2) Да, пересчет итогов происходит средствами 1С. Но чистый SQL именно здесь и не требуется
5. Анатолий Ситников (acsent) 1003 27.08.15 10:04 Сейчас в теме
(3) Если у тебя все отборы в запросах попадают в индекс, то да свертка не требуется
6. Николай Пугачев (nickpugachev) 27.08.15 14:47 Сейчас в теме
(3) DoctorRoza,
иногда нужно проводить регламентные операции типа перестроения индексов. на больших таблицах (типа таблиц записей регистров накопления) это очень не шустрая операция. к тому же на sql server standard эта операция блокирует таблицу. а на enterprise мало у кого денег достаточно и имеет смысл.
это относится к базам с большими таблицами регистров и с маленькими сервисными окнами.

в случае маленьких баз - смысла особого нет, просто народу так приятнее. а еще позволяет остаться в рамках файловой базы.
7. Марат Хафизов (Painted) 16 02.09.15 08:17 Сейчас в теме
(3) DoctorRoza,
зачем делать свертку базу?
Из недавнего: так приказал директор. Он сдает дела и решил не светить старые грехи.
8. Игорь Костюк (foxey) 2 02.09.15 09:41 Сейчас в теме
У нас была ситуация, когда главбух решила, что нужна новая база. Что главбух, который была до нее слишком все корявенько делала и надо начать с чистого листа.
Пришлось делать свертку базы и начинать вести дела "правильно".
9. Вадим Никонов (V.Nikonov) 113 03.09.15 21:33 Сейчас в теме
(3) DoctorRoza, Возможно, самым идеальным было бы иметь две базы. Одна - оперативная (с не очень большим периодом и малым размером). Вторая Накопительная - имеющая большой период и исключающая некоторые оперативные регистры...
Например, регистры Заказы, Резервы и др. не интересуют в отдаленном прошлом. Зачастую достаточно сведений о Остатках товаров, Себестоимости, Взаиморасчетах, Деньгах и частично других сведениях....
10. Дмитрий М (reflexcompani) 2 21.01.16 13:20 Сейчас в теме
Автор, обработка не работает на платформе 8.3 в БП3.0. Выдает множество ошибок. Вы на БП 3.0 проверяли?
11. BagiraN Рощак (BagiraN) 18 09.05.16 12:06 Сейчас в теме
{ВнешняяОбработка.СверткаРегистров.МодульОбъекта(100)}: Ошибка при вызове метода контекста (Выполнить)
Результат = Запрос.Выполнить();
по причине:
{(4, 2)}: Таблица не найдена "Документ."
<<?>>Документ. КАК Док


Управление производственным предприятием, редакция 1.3 (1.3.75.2)
1С:Предприятие 8.2 (8.2.19.106)