Как перенести номенклатуру и контрагентов в чистую базу 1С:Бухгалтерия

Программист 1С v8.3 (Обычные формы) 1C:Бухгалтерия Бухгалтерский учет
← На главную

При ведении учета в программе нередко возникает ситуация, когда первичные документы за прошлые периоды оформлялись с ошибками, не проводились или вносились бессистемно. В таких случаях оптимальным решением становится начало учета «с чистого листа». Однако ручной ввод всей нормативно-справочной информации (НСИ) — номенклатуры со всеми характеристиками и контрагентов с их реквизитами — занимает слишком много времени. Рассмотрим подробнее, какими способами можно перенести справочники в новую базу 1С или корректно очистить текущую базу от ненужных документов, сохранив всю структуру данных.

Вариант 1. Универсальная выгрузка и загрузка данных в формате XML

Если конфигурация-источник и конфигурация-приемник имеют абсолютно одинаковую структуру метаданных (например, базы одного и того же релиза Бухгалтерия предприятия 2.0), самым быстрым и надежным способом является использование обработки «Выгрузка и загрузка данных XML».

Разберем по шагам порядок работы с этой обработкой:

  1. Открываем обработку в исходной базе через меню Файл — Открыть.
  2. В дереве объектов метаданных снимаем все флаги и отмечаем только необходимые справочники: Номенклатура и Контрагенты.
  3. Обратим внимание на подчиненные и связанные объекты. При простом переносе только элементов справочника документы не смогут корректно заполняться и проводиться. Обязательно отмечаем зависимые справочники и регистры сведений:
    • Для контрагентов: справочники ДоговорыКонтрагентов, БанковскиеСчета, регистры сведений КонтактнаяИнформация и СчетаУчетаРасчетовСКонтрагентами.
    • Для номенклатуры: справочник ЕдиницыИзмерения, КлассификаторЕдиницИзмерения, регистры сведений СчетаУчетаНоменклатуры, ЦеныНоменклатуры и справочник ТипыЦенНоменклатуры.
  4. В поле «Имя файла выгрузки» указываем путь к файлу на диске и нажимаем кнопку «Выгрузить данные».
  5. Создаем новую чистую информационную базу из того же шаблона конфигурации.
  6. Открываем обработку в новой базе на вкладке «Загрузка», выбираем сформированный XML-файл и нажимаем «Загрузить данные».

Вариант 2. Очистка копии рабочей базы от документов

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

Проанализируем алгоритм очистки базы:

  1. Создание резервной копии. Перед любыми массовыми действиями обязательно делаем выгрузку информационной базы в файл .dt.
  2. Отмена проведения и пометка на удаление. В конфигурациях на обычных формах используем типовую обработку ГрупповаяОбработкаСправочниковДокументов:
    • Выбираем тип объекта «Документы» и добавляем нужные виды документов (например, РеализацияТоваровУслуг, ПоступлениеТоваровУслуг).
    • Нажимаем кнопку «Отобрать».
    • В поле «Действие» выбираем «Изменить: [Пометка удаления]» со значением «Да» (или сначала «Отмена проведения») и нажимаем «Выполнить».
  3. Удаление помеченных объектов. Переходим в меню Операции — Удаление помеченных объектов, выбираем режим контроля и запускаем удаление.
  4. Тестирование и исправление. После удаления большого массива документов запускаем конфигуратор и выполняем процедуру Администрирование — Тестирование и исправление с установленными флагами реиндексации, проверки ссылочной целостности и сжатия таблиц информационной базы.

Если требуется очистить абсолютно все документы информационной базы программно, разберем пример небольшого скрипта для внешней обработки:


ВыборкаДокументов = Документы;
Для Каждого МенеджерДокумента Из ВыборкаДокументов Цикл
    Выборка = МенеджерДокумента.Выбрать();
    Пока Выборка.Следующий() Цикл
        ДокументОбъект = Выборка.ПолучитьОбъект();
        Если ДокументОбъект.Проведен Тогда
            ДокументОбъект.Записать(РежимЗаписиДокумента.ОтменаПроведения);
        КонецЕсли;
        ДокументОбъект.УстановитьПометкуУдаления(Истина);
    КонецЦикла;
КонецЦикла;

Вариант 3. Использование типовой свертки информационной базы

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

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

Вариант 4. Переход на актуальную редакцию (БП 3.0) через прямой перенос

Если исходная база работает на устаревшей редакции (например, Бухгалтерия предприятия 2.0), рационально сразу выполнить переход на управляемые формы в чистую базу Бухгалтерия предприятия 3.0.

Разберем порядок действий при переходе:

  1. Разворачиваем пустую типовую базу актуального релиза Бухгалтерия предприятия 3.0.
  2. При первом запуске программы или через раздел Администрирование — Перенос данных из 1С:Бухгалтерии 8 (ред. 2.0) запускаем встроенный помощник перехода.
  3. Выбираем вариант прямого подключения к информационной базе через COM-соединение или перенос через внешний файл.
  4. В настройках помощника выбираем перенос нормативно-справочной информации и при необходимости — остатков на нужную дату.
  5. Штатный алгоритм автоматически преобразует структуры данных (например, перенесет контактную информацию из регистра сведений 2.0 в табличные части справочников 3.0) без переноса поврежденных документов и лишних записей регистров.

Важные технические предостережения

Выделим ключевые моменты, на которые необходимо обратить внимание при переносе и очистке данных:

  1. Недопустимость прямой очистки таблиц базы через SQL (TRUNCATE / DELETE). Удаление данных на уровне СУБД в обход объектной модели 1С приводит к появлению «битых ссылок» (объект не найден) в регистрах бухгалтерии и служебных таблицах итогов, что делает дальнейшую работу и обновление базы невозможными.
  2. Контроль дублей предопределенных элементов. При загрузке данных через XML в чистую базу сопоставление предопределенных элементов (например, основных ставок НДС или системных статей движения денежных средств) может задвоиться, если перенос выполняется между несовпадающими подверсиями конфигураций. После загрузки рекомендуется проверить справочники на отсутствие дубликатов.
  3. Объем базы и ограничения транзакций. При массовом удалении документов в файловых бабах (формат .1CD) операции следует производить порциями, чтобы избежать превышения лимита на размер внутренних таблиц и ошибок блокировок.
← На главную