2009
10
апреля
Свертка торговой базы 1С пошагово.
Автор статьи: admin | Просмотров: 10,701 | Комментариев: 49
Пришла пора на работе свернуть свою родную торговую базу, прекрасный шанс написать статью как это сделать пошагово. Вот результат:
Во первых подобные статьи (мои же):
Свертка торговой базы 1С пошагово
Делаем копию БД
Основная информационная база лежит в каталоге База.
Копируем ее в папку БазаСвернуто

Папки с базами
Копируем Удаление.CMD в папку БазаСвернуто
Запускаем Удаление.CMD.

Запускаем Удаление.cmd
В появившемся окне DOS несколько раз нажимаем «Y», подтверждая, что хотим удалить файлы.

Удаляем файлы

Каталог базы после удаления документов
Далее запускаем БазаСвернуто в монопольном режиме, чтобы она переиндексировалась. Ждем завершения переиндексации, отмечаю, что переиндексация должна пройти достаточно бысто, т.к. БазаСвернуто уже не содержит документов.

Запускаем монопольно и индексируем
Открываем файл УдалениеПартий.ert.

Открываем файл Удаление партий.ert
Жмем Удалить Партии. Обработка может занять значительное время, как правило справочник Партии содержит очень много элементов, т.к. там хранится информация о всех партиях, когда либо присутствующих в базе данных.

Удаление партий
В строке состояния можно увидеть товар, по которому обработка удаляет партии.

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

Удаляем помеченные объекты
Ну и для полного счастья тестируем и исправляем ошибки, а также заодно и сжимаем и восстанавливаем базу данных, что может сильно уменьшить объем, освободив таблицы от удаленных объектов (элементов справочников).
Для этого заходим в Конфигуратор – Администрирование – Тестирование и исправление ИБ. Ставим все «галки», в. том числе и «Упаковка таблиц информационной базы«. Нажимаем выполнить и идем наливаем себе кофе. Гы…

Открываем Тестирование и исправление ИБ

Тестирование и исправление ИБ
На этом мы закончили подготовку новой базы - БазаСвернуто
Далее надо создать в коне диска С: папку Свертка. Мой компютер – С – правой кнопкой – создать папку – Сверка. Туда обработка выгрузки будет записывать данные в DBF формате, а обработка загрузки – забирать данные.

Создаем папку Свертка
Далее работаем с информационной базой «База»
Открываем старую информационную базу – База, желательно монопольно, но не обязательно.
Открываем файл Свертка.ert. Выставляем дату на которую надо сделать свертку и жмем Сформировать. прогрессор сообщит о степени завершенности выгрузки данных. В окне сообщений обработка сообщает об обработанных фирмам.

Обработка Свертка.ert
Если программа выдаст ошибку вроде:
База.ОчиститьФайл();
{D:\1C2009\СВЕРТКА\СВЕРТКА.ERT(122)}: Перед выполнением операции нужно открыть базу!
База.Добавить();
{D:\1C2009\СВЕРТКА\СВЕРТКА.ERT(136)}: Перед выполнением операции нужно открыть базу!
База.УстановитьЗначениеПоля(«FIRM»,СПРФирм.Код);
{D:\1C2009\СВЕРТКА\СВЕРТКА.ERT(137)}: Перед выполнением операции нужно открыть базу!
Значит Вы не создали папку Свертка в коне диска С. Проверьте еще раз наличие этой папки.
Все. Выгрузку сделали.
Далее возвращаемся к нашей новой информационной базе «БазаСвернуто«
Открываем внешнюю обработку СверткаЗагрузка.ert. Выставляем дату на которую будут сформированы документы. Нажимаем Сформировать.

СверткаЗагрузка.ert
И вновь прогрессор сообщит нам о степени завершенности.

СверткаЗагрузка.ert
Открываем общий журнал на той дате, которую указывали в форме и смотрим что у нас имеется.
Должны быть созданы документы «Ввод остатков ТМЦ на складе«, «Ввод остатков долг покупателя фирме«, «Ввод остатков долг фирмы покупателю«, а так же «Ввод остатков по подотчетникам» и «Ввод остатков по кассам«.
Далее нам надо провести эти документы. Можно было бы сделать обработкой, но я делаю Операции – Проведение документов.

Проведение документов

Общий журнал после проведения
Теперь нам осталось сделать один последний шаг.
Для того, чтобы сохранить нумерацию документов, то есть продолжить ее из старой базы создаем каждый документ, например Реализация, ПКО, РКО, ПоступлениеТМЦ с последним номером, который существует в старой базе и метим его на удаление. После чего вновь созданныы документы продолжаю нумерацию. А вообще если есть процедура выгрузки в Бухгалтерию, то номера лучше проставить у всех использующихся документов, чтобы не было проблем с выгрузкой в бухгалтерию. ))
Все свертка завершена.
Для проверки формируем необходимые отчеты в старой базе и в новой базе – например «Остатки ТМЦ» по складам и фирмам, «Ведомость по контрагентам«, и сверяем – циферки должны совпасть на 100%.
Ита, после свертки имеем:
Объем База – 2,15 Гигабайт

Объем первоначальной базы
Объем СвернутоБаза - 471 Мегабайт.

Объем свернутой базы
Объем снизился более чем в 4 раза.
Время, затраченное около 2х часов, причем в развалочку, попивая кофе и оформляя данную статью.
Проблемы. При выполнении данной процедуры на скалады приходуются товары в основных единицах, поправил руками на базовые. Имеет смысл если Базовые единицы отличаются от основных.
По просьбам немного доработал обработку свертки. Исправил ошибку, связанную с единицами измерений (возникает на некоторых базах), добавил выбор каталогов.
Скачать обработки свертки
Рубрики: 1С, Вопросы и ответы, Работа
января 17, 2011 at 8:04
Выполнил на debian lenny, под etersoft@wine. Все отлично, автору огромный респект и спасибо. Проблемы были, но касательно ОС, скрипты сработали безупречно, руководство понятно и доходчиво, даже поверхностно знакомому с 1с.
января 5, 2011 at 10:50
неа, оптово-розничная конфигурация
января 5, 2011 at 10:31
значит и глГубли не нет в глобальном модуле.
У тебя случаем конфигурация не для Украины?
января 5, 2011 at 10:26
При свертке пишет : переменная не определена глРубли
января 5, 2011 at 10:24
8я редакция. возможно не получится,
попробуй свернуть без удаления партий. Если ошибки будут, то не получится…
января 5, 2011 at 10:21
ТиС 7.70.862
января 5, 2011 at 10:19
какая конфигурация?
Если не ТиС, то возможно не получится.
января 5, 2011 at 10:15
т.е. в этой базе не получится или какой выход?
января 5, 2011 at 9:39
Это значит в этой базе нет справочника «Партии»