Т.к. 1С:Предприятие за год насчитывает >> 500000 документов, и 1С-ка стала заметно медленнее работать, мне было поручено перенести документы за 2009 год в новую базу. Первое что напрашивалось, выгрузить документы в файл, и загрузить их в новой базе. Желания писать выгрузку всех видов документов как-то не было. Поэтому было решено скопировать старую базу данных, снять остатки на начало 2009 года, и удалить все документы до 2009 г.
Снять остатки и внести их лучше всего документом, т.к. при необходимости можно будет восстановить хронологию. Для каждого регистра создаю документ, и объединяю в один журнал.
Рис1. Документы
Рис 2. Журнал
Выборка остатков осуществляется циклом (это вешаем на кнопку):
Рег = СоздатьОбъект("Регистр.ХХХ");
Рег.ВременныйРасчет(1);
РассчитатьРегистрыПО(ДатаДок);
Рег.ВыбратьИтоги();
Пока Рег.ПолучитьИтог() = 1 Цикл
НоваяСтрока();
... ...
КонецЦикла;
Осталось только написать обработку которая удалит все документы до 31.12.08
Док = СоздатьОбъект("Документ");
Док.ВыбратьДокументы(,'31.12.08');
Пока Док.ПолучитьДокумент() = 1 Цикл
Док.СделатьНеПроведенным();
Док.Удалить();
КонецЦикла;
Вот и все, провожу документы в которых сохранены остатки, и запускаю пересчет за месяц
объяснял начальнику управления программистов, как устроен RubyOnRails. Услышав про миграции, он спросил: "это как в 1С?" (:
ОтветитьУдалить:) да уж, 1С 7.7 убогий язык, но приносящий прибыль
ОтветитьУдалитьмне совсем непонятно, почему убогие вещи приносят прибыль больше чем отличные вещи.
ОтветитьУдалитькомпания 1С заняла прочное место на рынке систем бухгалтерского и учета, и аналитического учета.
ОтветитьУдалитьдля времени своего появления этот язык был просто великолепным, времена меняются, а язык остался на прежнем уровне, я не говорю о дополнительных возможностях которые можно использовать вместе с библиотеками v7++.
в своей работе я стараюсь использовать стандартные возможности системы.
после появления 8 версии многое изменилось, но 7 по прежнему остается популярна, многие организации в своей практике используют именно эту версию платформы, кроме того маркетинговая политика компании 1С построена таким образом что с клиентами на прямую они практически не работают, бОльшая часть продаж идет через дистрибьюторов, которые по прежнему продолжают поддерживать 7 версию. Кроме того 8 значительно требовательнее к ресурсам клиентской машины, что так же ограничивает возможность внедрения этой версии в организацию