gifts2017

Быстрое сворачивание 1С 77 ТиС (от 10 до 40 минут) независимо от размера ИБ.

Опубликовал Марат (Marik) в раздел Обработки - Свертка базы

Хотя большинство пользователей перешло на 1С 8ХХ, но есть еще очень много торговых организаций до сих пор эксплуатирующих 1С 77 ТиС. И пока еще не собираются переходить на новую платформу, а свертку делать надо. Есть много решений, я решил поделиться своим. Основное отличие:
1. Универсальность
2. Быстрота
3. Свертку можно делать на любую дату (не обязательно на начало года)

Предисловие:

Прежде чем делать свертку обязательно снимите архив ИБ. Не забудьте сделать ТИИБ, чтобы не возникло неприятностей на следующих шагах. Не стоит напоминать что все последующие шаги надо делать от имени пользователя с установленной ролью "Полные полномочия" (настраивается в справочнике "Пользователи")

Содержимое архива:

1. Конфигурация 1cv7.md содержит три объекта - 1. Документ "ОстаткиПоРегистру", 2. Журнал "КорректировкаРегистров", 3. Обработка "СформироватьОстаткиПоРегистрам"

Итак откройте конфигурацию и загрузите эти три объекта в свою, далее запустите 1С Предприятие и выполните обработку "Сформировать остатки по регистрам". Обработка предложит выбрать вид операции:

1 - Сформировать остатки по регистрам на указанную дату (будут сформированы документы "ОстаткиПоРегистру")

2 - Пометить документы на удаление до указанной даты (включительно)

3 - Включить движений по регистрам для документов "ОстаткиПоРегистру"

Для начала укажите вид операции "1", дождитесь выполнение обработки, после закройте 1С и откройте Total Commander, найдите папку ИБ и удалите все файлы по маске RA*.*, RG*.*, тем самым мы сэкономим скорость удаления документов.

Вновь запустите 1С и переустановите ТА на начало века и вызовите обработку, но теперь вид операции укажите "2". Дождитесь исполнения (минут 5-10). Опять установите ТА на дату свертки и опять вызовите обработку (вид операции "3"). И наконец вызовите стандартную операцию "Проведение документов" и перепроведите все "проведенные" документы от даты свертки до текущей даты, дождитесь исполнения (15-20 минут). Свертка готова, последнее что нужно сделать это удалить помеченные документы.

Кстати перепровдение документов необходимо только есть после даты свертки есть проведенные документы (например, если вы сворачиваете ИБ не начало года).

Вот и все, таким способ постоянно сворачиваю ИБ размером 12 Гб. Забыл сказать, что ИБ если SQL вариант нужно выгрузить в файловый вариант и после свертки обратно загрузить в SQL.

P.S.

За основу была взята идея не помню какого автора. Что было доработано: в документе "ОстаткиПоРегистру" увеличил количество реквизитов "Измерения","Ресурс" до 5-ти. Для реквизита "Ресурс" увеличил длину до 19 и точность до 5 (в типовой ТиС есть регистр "ОстаткиТМ" у которого точность после запятой "5"). Также изменил строку:

"НазначитьТип("Измерение" + Сч, СокрЛП(ИзмТип[сч]));" на "НазначитьТип("Измерение" + Сч, СокрЛП(ИзмТип[сч]), СокрЛП(ИзмДлина[сч]), СокрЛП(ИзмТочность[сч]));"

Вроде бы мелочь, но когда сворачиваешь большие ИБ любая мелочь вызывает трудно отслеживаемые ошибки.

Удачи всем!

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

Наименование Файл Версия Размер
1cv7.md 66
.zip 12,70Kb
14.11.14
66
.zip 12,70Kb Скачать

См. также

Подписаться Добавить вознаграждение
Комментарии
1. Дмитрий Литовченко (kompas-dm) 15.11.14 09:39
2. Алексей Ситников (SiAl) 16.11.14 16:29
"Забыл сказать, что ИБ если SQL вариант нужно выгрузить в файловый вариант и после свертки обратно загрузить в SQL."

Я так понимаю это связано с тем, что
после закройте 1С и откройте Total Commander, найдите папку ИБ и удалите все файлы по маске RA*.*, RG*.*, тем самым мы сэкономим скорость удаления документов.

Советую автору выучить язык SQL в плане конструкции DROP TABLE.
Может сама свертка работает и быстро, но сколько времени уходит на ТИИ, выгрузку из SQL в DBF и обратно? Сколько занимает перенос ТА с проведением документов?
3. dimi3o (etmarket) 16.11.14 17:20
Несомненно есть минусы - все-таки много действий вручную. Но показатель - 10-40 минут для базы в 12 Гб, очень неплох!
4. Антон Рощин (wolfsoft) 19.11.14 11:10
У меня была похожая полу-универсальная свёртка регистров, в принципе, для любой конфигурации. Только не публиковал, потому как "полу" :)
5. Alex Steiner (OrsoBear) 20.11.14 15:17
Как раз подобной сейчас базу сворачиваю.
Из идей, что можно добавить:
Выбор для каких регистров какие реквизиты не включать в свертку.
К примеру, у меня у меня долг формируется с указанием документа, а закрывается другим документом.
Ваш вариант схлапывает по документам, получается много ссылок на прошлый период, от которого избавляемся.
Приходится эти документы тянуть.
Сделал так, что Если вид регистра "Покупатели", Значение "КоррДокумент" в определении остатков не участвует.
Без учета документов Записей регистра остатков стало гораздо меньше, и бухгалтерию в принципе устроило.
Так же для поставщиков и прочих регистров.
Понимаю, что это больше в адрес предприятия, где так криво придумали закрывать документы.
Но мне встречается не первый раз.

В остальном хорошо придумано.
6. Вячеслав Бюльбюль-Оглы (SvSoft) 24.11.14 08:35
(0) А как насчет партий ТМЦ, периодики (цены, единицы)???
7. Стас ТТТ (st8899) 06.02.15 16:33
на этапе "2" на каждом месяце спрашивает по 10-100 документам, удалить подчиненные или нет! Не понятно что жать да или нет!
На этапе"после этапа 3, проводим все "проведенные документы", выдает ошибку:
На документ Строка выписки банка (приход) тт00014010 (28.12.2012) не зарегистрирован счет - фактура!
На документ Строка выписки банка (приход) тт00014021 (28.12.2012) не зарегистрирован счет - фактура!
Проведение документа: 31.01.2014 Запись книги покупок тг00000001
Документ - основание не проведен!
Документ не проводится!

Свертка делалась на 1 января 2013г, ТА 6 февраля 2015г. База ведется с 2006г.
Вот такие пироги... обработка не рабочая, не тратьте время и деньги зря...!