Загрузка документов в 1С из файла: форматы, обработки, ошибки

· 9 мин

Содержание

Загрузить документ в 1С можно тремя путями: через типовую обработку загрузки из табличного файла, через обмен в формате XML или своей внешней обработкой. Выбор зависит от источника: таблица Excel от поставщика, выгрузка из другой базы 1С или ответ внешней системы в JSON.

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

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

Что подготовить до загрузки

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

Проверьте по списку:

  • 📅 Даты в одном формате. Смесь 07.10.2026 и 2026-10-07 в одном столбце читается непредсказуемо.
  • 🔢 Числа без пробелов-разделителей тысяч и с одним десятичным разделителем. Значение 1 250,50 с неразрывным пробелом 1С прочитает как текст.
  • 🏷️ Идентификаторы: ИНН, КПП, артикул, код номенклатуры. По ним 1С ищет существующие элементы. Лишний пробел в конце — и элемент считается новым.
  • 📄 Шапка отдельно от строк. Номер, дата и контрагент повторяются в каждой строке или вынесены в отдельный блок, но не смешаны.
  • 🔤 Кодировка. Для текстовых файлов и CSV это UTF-8 или Windows-1251. Если вместо русских букв «кракозябры», дело в ней.

Выберите формат под задачу:

ФорматКогда подходитРиски
Excel (.xlsx, .xls)Разовая выгрузка от человека, прайс, реестрСкрытые строки, объединённые ячейки, числа-как-текст
CSV / TXTВыгрузка из учётных систем без 1СКодировка, разделитель, переносы строк внутри ячеек
XMLОбмен между базами 1С, структурированные данныеВерсия формата, несовпадение конфигураций
JSONДанные из веб-сервисов и APIНужна своя обработка, типовой загрузки нет

Уберите из таблицы объединённые ячейки, итоговые строки и пустые строки между блоками. Лишняя «Итого» внизу превращается в документ с названием «Итого».

Типовая обработка загрузки из табличного файла

Для документов из Excel сначала ищите штатные средства. В части конфигураций (в том числе в «Бухгалтерии предприятия» и «Управлении торговлей») есть обработка «Загрузка данных из табличного документа». Где она лежит, зависит от конфигурации и релиза. Проще всего найти её через поиск по функциям: введите «загрузка данных» в строку поиска по функциям в верхней панели.

Как работает такая обработка:

  1. Выбираете, что загружаете: справочник, документ или регистр сведений .
  2. Вставляете данные из Excel в таблицу обработки через Ctrl+V или открываете файл.
  3. Указываете, какая колонка какому реквизиту соответствует.
  4. Запускаете загрузку и смотрите результат в протоколе.

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

💡 Сначала загрузите две-три строки. Проверьте, как заполнились поля документа и что он проводится. Только потом отправляйте весь файл.

Загрузка в уже созданный документ

Часто нужен не новый документ, а подстановка строк в готовую табличную часть. Например, поступление на 400 позиций, которое вам прислали таблицей. В некоторых конфигурациях у табличной части есть пункт «Загрузить из файла» или похожий, он вызывает ту же логику. Если кнопки нет, ищите её в меню «Ещё» над таблицей.

Строки подбираются по полю, которое вы выбрали как ключ: артикул, штрихкод, наименование. Самый надёжный ключ — тот, который в базе уникален. Наименование подходит хуже всего: «Бумага А4» и «Бумага А4 » с пробелом это для 1С разные вещи.

Сопоставление полей и справочников

Это самое длинное место любой загрузки. Документ ссылается на справочники, а в файле стоят просто строки. 1С должна понять, какой элемент справочника скрывается за словом «ООО Ромашка».

Сопоставление полей
Колонка «Контрагент» в файле→Справочник «Контрагенты», поиск по ИНН
Колонка «Товар» в файле→Справочник «Номенклатура», поиск по артикулу
Колонка «Склад» в файле→Справочник «Склады», поиск по наименованию
Колонка «Ставка НДС» в файле→Перечисление ставок НДС
Колонка «Количество» в файле→Количество в строке табличной части

Практические правила сопоставления:

  • 🔑 Ищите по ИНН, а не по названию. Названия пишут десятью способами, ИНН один.
  • 🧩 Если элемента нет, решите заранее: создавать автоматически или останавливаться. Для разовой загрузки лучше остановиться и посмотреть, что не нашлось.
  • 📚 Заведите таблицу соответствия для устоявшихся расхождений. Поставщик называет товар «Кабель ВВГ 3х2.5», у вас он «Кабель ВВГнг 3*2,5». Один раз сопоставили — дальше работает.
  • 🏬 Перечисления (ставки НДС, виды операций, типы цен) сопоставляйте явно. Текст «20%» сам не превратится в значение перечисления.

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

Обмен документами в формате XML

Если документы идут из другой базы 1С, загружайте их через обмен, а не через Excel. XML сохраняет связи: в нём уже лежат ссылки на контрагентов, договоры и номенклатуру, и они сопоставляются по уникальным идентификаторам или по правилам обмена.

Есть два распространённых сценария.

Синхронизация между типовыми конфигурациями. Настраивается в разделе администрирования, в пункте синхронизации данных. Вы создаёте обмен, указываете вторую базу, правила и отбор по документам. Дальше обмен работает автоматически или по кнопке.

Разовая выгрузка и загрузка файлом. Подходит, когда баз две, связи между ними нет, а нужно перенести пакет документов. Одна база формирует файл .xml, вторая его читает. Обязательное условие: обе стороны понимают один формат обмена. Если конфигурации и релизы сильно расходятся, файл может не загрузиться или потерять часть реквизитов.

Что проверить перед загрузкой XML:

  • версия формата обмена в файле совпадает с той, что ждёт принимающая база;
  • в принимающей базе есть правила обмена для нужного типа документов;
  • заданы организации и склады, куда будут попадать документы;
  • включён нужный режим: загружать как непроведённые или сразу проводить.

💡 Загружайте сначала непроведёнными. Так вы увидите, что пришло, и сможете провести документы пачкой, когда убедитесь, что суммы сходятся.

Для данных из веб-сервисов стандартного XML-обмена обычно мало. JSON тоже не читается типовой обработкой. Здесь нужна интеграция через HTTP-сервис или своя обработка. О ней ниже.

Протокол загрузки и разбор ошибок

После загрузки смотрите не на «Загрузка завершена», а на протокол. Именно там видно, сколько документов создано, сколько пропущено и почему.

Что искать в протоколе:

  • ❌ строки с пометкой об ошибке, в которых указан документ и причина;
  • ⚠️ предупреждения: документ записан, но не проведён;
  • 📊 итоговые счётчики: прочитано, создано, обновлено, пропущено.

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

Диагностика: выберите симптом

Журнал регистрации открывается из раздела администрирования (пункт поддержки и обслуживания). Фильтруйте его по времени загрузки и уровню «Ошибка». Там обычно виден точный текст исключения, которого нет в протоколе обработки.

Когда документ загружен, но суммы не сходятся

Бывает, что загрузка прошла без ошибок, а итог по документу отличается от файла. Причин две. Первая: НДС в 1С считается сверху или в том, как задан режим «сумма включает НДС», а в файле другое. Вторая: округление построчно против округления итога. Сверьте один документ вручную, найдите расхождение и поправьте настройки обработки или формулу в файле. Потом перезагружайте остальное.

Повторная загрузка и дубли

Рано или поздно файл придётся загрузить второй раз: поправили данные или добавили строки. Тут легко получить задвоенные документы.

Чтобы дубли не появились, у обработки должен быть ключ, по которому она отличает «этот документ уже есть». Обычно это номер и дата или внешний идентификатор из источника. Если такого ключа нет, перед повторным запуском удалите или пометьте на удаление результат первой попытки.

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

Перед нажатием «Загрузить»
Выполнено: 0 / 6

Тестовая база для репетиции

Если документов много, не репетируйте на рабочей базе. Сделайте копию, загрузите в неё весь файл и сравните результат с ожидаемым: количество документов, общую сумму, остатки по нескольким ключевым позициям. Расхождение на копии стоит ноль рублей, на рабочей базе оно стоит вечера правок.

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

Автоматизация: внешние обработки и скрипты

Если загрузка нужна каждую неделю, ручное копирование из Excel надоест. Есть три способа убрать рутину.

Внешняя обработка .epf. Её пишет программист 1С под ваш формат файла. Подключается без изменения конфигурации: меню «Файл» → «Открыть» (или Ctrl+O), выбираете файл .epf. В обработке настраиваются колонки, ключи и поведение при ошибках. Для ряда конфигураций включается список разрешённых внешних обработок в дополнительных отчётах и обработках.

Обмен по расписанию. Для XML-обмена между базами можно включить автоматическую синхронизацию с интервалом. Загрузка идёт сама, а протокол копится в журнале обмена.

Интеграция с внешней системой. Данные в JSON принимает HTTP-сервис конфигурации или стандартный интерфейс. Это уже задача разработки: описать формат, проверить права, обработать ошибки и повторные отправки.

Для любого автоматического варианта продумайте три вещи:

  • 🔁 что делать при повторной отправке того же документа (обновить или пропустить);
  • 🔔 кто узнает об ошибке. Тихий провал хуже громкого: через месяц обнаружится, что половина документов не пришла;
  • 🔐 под каким пользователем идёт загрузка. Права должны покрывать нужные документы и ничего лишнего.

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

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

Можно ли загрузить документ из Excel без программиста?
Да, если в вашей конфигурации есть типовая обработка загрузки из табличного документа и нужный вид данных ею поддерживается. Для нестандартных документов и сложных файлов придётся подключать внешнюю обработку.
Чем отличается загрузка через XML от загрузки из Excel?
XML несёт готовые ссылки между объектами и подходит для обмена между базами 1С. Excel это просто таблица: связи вы настраиваете сами через сопоставление полей.
Загруженные документы сразу проведены?
Это зависит от настроек обработки. Безопаснее загружать непроведёнными, проверить и провести пачкой.
Как загрузить JSON в 1С?
Типовой обработки для этого нет. Нужен HTTP-сервис в конфигурации или своя обработка, которая разберёт JSON и создаст документы.
Что делать, если загрузка прошла дважды?
Найдите дубли отбором по дате и виду документа, пометьте лишние на удаление и выполните удаление помеченных. Проведённые документы сначала отмените.