К статье
Практический материал

Справочники и Данные · 11 мин

1С: как сделать загрузку данных — практическая инструкция

Как сделать загрузку данных в 1С: из Excel, CSV и через обработку. Пошаговая инструкция, типичные ошибки, проверка результата и советы по переносу данных.

Загрузка данных — одна из самых частых задач при работе с 1С: перенос номенклатуры из Excel, импорт контрагентов из CSV, загрузка цен поставщика или остатков при переходе на новую базу. В зависимости от конфигурации и объёма данных используются разные инструменты: встроенные механизмы «Загрузка данных из файла», универсальные обработки, обмен через правила конвертации.

Ошибка при загрузке может привести к дублям справочников, неверным ценам и остаткам, которые потом придётся разбирать вручную. Поэтому любую массовую загрузку начинают с копии базы и тестового прогона на небольшой выборке. Ниже разобраны основные способы, порядок действий и контроль результата.

Подготовка: что сделать до загрузки

Перед любой массовой загрузкой создайте резервную копию информационной базы. Для файловой базы достаточно скопировать файл 1Cv8.1CD, для клиент-серверной — сделать выгрузку через конфигуратор (Администрирование → Выгрузить информационную базу) или средствами СУБД. Это единственная гарантия отката, если данные загрузятся с ошибками.

Далее подготовьте сам файл. Убедитесь, что данные чистые: нет объединённых ячеек, пустых строк в середине таблицы, лишних пробелов и разных написаний одного и того же значения (например, «ООО Ромашка» и «ООО "Ромашка"»). Даты приведите к единому формату, числа не должны содержать текстовых символов и неразрывных пробелов.

Определите ключевое поле для поиска существующих элементов — обычно это код, артикул, ИНН или наименование. От этого зависит, создадутся ли новые элементы или обновятся существующие. Если поле-поиск выбрано неверно, в справочнике появятся дубли.

Загрузка из Excel и CSV через типовую обработку

В большинстве современных типовых конфигураций (1С:Бухгалтерия, Управление торговлей, ERP, Комплексная автоматизация) есть встроенный механизм «Загрузка данных из файла». Обычно он находится в разделе «НСИ и администрирование» → «Начальное заполнение» или вызывается из формы списка конкретного справочника по кнопке «Загрузить».

Порядок работы типовой обработки одинаков: выбираете файл (поддерживаются форматы XLSX, CSV, MXL и некоторые другие), программа показывает таблицу с данными, и вы вручную сопоставляете колонки файла реквизитам справочника или документа. После сопоставления запускается загрузка, а по итогам формируется протокол: сколько элементов создано, сколько обновлено, какие строки не загружены и почему.

Порядок загрузки из файла
  1. 1
    Сделайте резервную копию базы
  2. 2
    Очистите файл: уберите объединённые ячейки, пустые строки, лишние пробелы
  3. 3
    Откройте обработку «Загрузка данных из файла» и выберите файл
  4. 4
    Сопоставьте колонки файла реквизитам справочника
  5. 5
    Укажите поле поиска существующих элементов (код, артикул, ИНН)
  6. 6
    Запустите загрузку на тестовой выборке из 5–10 строк
  7. 7
    Проверьте результат и только потом загружайте весь файл
  8. 8
    Изучите протокол: разберите строки с ошибками

Особенности формата CSV

CSV — текстовый формат, поэтому важны три настройки: разделитель (точка с запятой или запятая), кодировка (часто требуется UTF-8, иначе кириллица превратится в нечитаемые символы) и признак того, что первая строка содержит заголовки. Если после загрузки вместо текста видны знаки вопроса — пере сохраните файл в правильной кодировке через «Блокнот» или Excel («CSV с разделителями, UTF-8»).

Загрузка номенклатуры и цен поставщика

Загрузка прайса поставщика — частный, но очень распространённый сценарий. В конфигурациях с торговым функционалом для этого есть отдельные механизмы: в Управлении торговлей — «Загрузка цен поставщиков из файлов», в других решениях — регистрация цен через документ «Установка цен номенклатуры» с последующим заполнением из файла.

Ключевой момент — сопоставление товаров поставщика с вашей номенклатурой. Если артикулы совпадают, сопоставление происходит автоматически; если нет — придётся сопоставлять вручную или по наименованию. Найденные соответствия программа обычно запоминает, поэтому повторные загрузки от того же поставщика проходят быстрее.

Проверяйте единицы измерения и валюту до загрузки: цена «за упаковку» вместо «за штуку» или в другой валюте исказит себестоимость и отпускные цены во всех последующих документах.

Перенос данных между базами 1С

Если нужно перенести данные не из файла, а из другой базы 1С (например, из старой учётной системы в новую), применяются другие инструменты. Самый универсальный — обработка «Универсальный обмен данными в формате XML»: в базе-источнике выполняется выгрузка по правилам обмена, в базе-приёмнике — загрузка из полученного XML-файла.

Для перехода между типовыми конфигурациями существуют готовые правила обмена и помощники перехода (например, при переходе с «1С:Управление торговлей 10.3» на редакцию 11). Они переносят справочники, остатки и основные документы с минимальной ручной настройкой.

Для нетиповых ситуаций правила конвертации создаются в конфигурации «Конвертация данных» — это уже задача для специалиста, так как требует понимания структуры метаданных обеих баз и языка обработки событий.

Сравнение способов загрузки

Типовая обработка «Загрузка данных из файла»

Подходит для разовой загрузки справочников и табличных частей из Excel/CSV. Ограничение: не загружает сложные связанные объекты и движения документов.

Универсальный обмен данными XML

Для переноса между базами 1С по готовым правилам. Требует совместимых правил обмена и аккуратной настройки.

Самописная обработка на встроенном языке

Для нестандартных форматов и сложной логики. Требует навыков программирования в 1С и тщательного тестирования.

Внешние готовые обработки

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

Загрузка через самописную обработку: основы

Когда типовых средств не хватает — нестандартный формат файла, особая логика поиска, создание сразу нескольких связанных объектов — пишется собственная обработка. Типовой подход: файл читается через табличный документ (для Excel/MXL) или построчно текстовым чтением (для CSV), затем в цикле создаются или обновляются объекты.

Упрощённый пример чтения CSV и создания элементов справочника выглядит так:

bsl
Текст = Новый ЧтениеТекста(ИмяФайла, КодировкаТекста.UTF8);
Строка = Текст.ПрочитатьСтроку();
Пока Строка <> Неопределено Цикл
    Части = СтрРазделить(Строка, ";");
    Элемент = Справочники.Номенклатура.НайтиПоРеквизиту("Артикул", Части[0]);
    Если Элемент.Пустая() Тогда
        Новый = Справочники.Номенклатура.СоздатьЭлемент();
        Новый.Наименование = Части[1];
        Новый.Артикул = Части[0];
        Новый.Записать();
    КонецЕсли;
    Строка = Текст.ПрочитатьСтроку();
КонецЦикла;

При больших объёмах оборачивайте запись в транзакции разумными порциями и выводите прогресс, иначе обработка будет выглядеть «зависшей». Все ошибки записи логируйте с номером строки файла — это сильно упрощает разбор проблем.

Самописные обработки для загрузки документов должны корректно заполнять обязательные реквизиты и проводиться в правильном режиме. Ошибка здесь опаснее, чем в справочниках: некорректно проведённые документы исказят регистры, остатки и отчётность.

Проверка результата после загрузки

Не считайте загрузку завершённой, пока не проверили результат. Минимальный контроль: сравнить количество строк в файле с количеством созданных/обновлённых элементов в протоколе, открыть несколько случайных элементов и сверить значения реквизитов с исходным файлом.

Дополнительно проверьте отсутствие дублей: отсортируйте справочник по полю поиска или воспользуйтесь штатным поиском и удалением дублей (в типовых конфигурациях: Администрирование → Обслуживание → Поиск и удаление дублей). Для загруженных цен и остатков сверьте контрольные суммы: итог по файлу и итог в базе должны совпадать.

Контрольные точки

Как проверить результат загрузки

Количество записей
Норма

Совпадает с числом строк файла минус отклонённые в протоколе

Тревожный признак

Расхождение без объяснения в протоколе — часть строк потерялась

Случайная выборка элементов
Норма

Реквизиты в базе совпадают со значениями в файле

Тревожный признак

Сдвиг колонок, обрезанный текст, неверные даты

Дубли справочника
Норма

Поиск по ключевому полю даёт один элемент

Тревожный признак

Несколько элементов с одинаковым артикулом или ИНН

Контрольные суммы
Норма

Итоговая сумма по файлу равна итогу в базе

Тревожный признак

Суммы расходятся — ошибки в формате чисел или пропущенные строки

Типичные ошибки и как их избежать

Большинство проблем при загрузке связано не с программой, а с качеством исходного файла и неверным сопоставлением. Разберите каждую ошибку из протокола — они почти всегда повторяются сериями и решаются одним исправлением в файле.

Типичные ошибки при загрузке в 1С
01
Загрузка без резервной копии — при ошибке данные приходится восстанавливать вручную или терять
02
Неверное поле поиска — в справочнике появляются тысячи дублей вместо обновления существующих элементов
03
Неправильная кодировка CSV — кириллица превращается в нечитаемые символы, элементы создаются с испорченными наименованиями
04
Объединённые ячейки и промежуточные итоги в Excel — сдвиг колонок и загрузка мусорных строк
05
Неверный формат чисел и дат — цены делятся на 100 или даты интерпретируются как текст
06
Игнорирование протокола загрузки — отклонённые строки остаются незамеченными, данные в базе неполные

Отдельная группа ошибок — права доступа. Если обработка загрузки недоступна или часть реквизитов не записывается, проверьте, что у пользователя есть права на изменение соответствующих объектов, а не только на просмотр.

Маршрут решения

Как выбрать способ загрузки

Нужно один раз загрузить справочник из Excel или CSVИспользуйте типовую обработку «Загрузка данных из файла»
Прайс поставщика приходит регулярно в одном форматеНастройте шаблон загрузки цен поставщика — сопоставление сохранится для следующих раз
Переносите данные из другой базы 1СПримените универсальный обмен данными XML с подходящими правилами
Формат файла нестандартный или нужна сложная логикаЗакажите или напишите внешнюю обработку и протестируйте её на копии базы
Объём большой и загрузка повторяется постоянноРассмотрите автоматизацию через регламентное задание или интеграцию по HTTP/файловому обмену

Частые вопросы

Можно ли загрузить данные в 1С без программиста?

Да, для типовых задач (номенклатура, контрагенты, цены) достаточно встроенной обработки «Загрузка данных из файла» — она не требует программирования, только аккуратного сопоставления колонок. Программист нужен для нестандартных форматов и сложной логики переноса.

Почему после загрузки появились дубли элементов?

Почти всегда причина в неверно выбранном поле поиска или в расхождениях данных: лишние пробелы, разный регистр, разные написания. Перед повторной загрузкой удалите дубли штатной обработкой и нормализуйте значения в файле.

Как загрузить данные, если в файле несколько листов Excel?

Типовая обработка обычно работает с одним листом. Либо скопируйте нужные данные на один лист, либо загружайте листы по очереди, сохраняя каждый в отдельный файл.

Что делать, если часть строк не загрузилась?

Откройте протокол загрузки — в нём указаны номера строк и причины отказа (пустое обязательное поле, ненайденное значение ссылочного реквизита, ошибка формата). Исправьте эти строки в файле и загрузите только их повторно.

Можно ли отменить выполненную загрузку?

Штатной кнопки «отменить загрузку» нет. Варианты: восстановить базу из резервной копии, удалить созданные элементы вручную или обработкой по отбору (например, все элементы, созданные за время загрузки). Поэтому копия базы перед загрузкой обязательна.

Как загрузить штрихкоды вместе с номенклатурой?

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

Итог

Что важно запомнить

Любую загрузку начинайте с резервной копии и теста на малой выборке. Для файлов Excel/CSV используйте типовую обработку «Загрузка данных из файла», для переноса между базами — универсальный обмен XML. Правильно выберите поле поиска, проверьте результат по протоколу и контрольным суммам, а дубли удаляйте штатными средствами.