Загрузка данных из файлов в 1С 8.3: Excel, CSV и XML
Содержание
Пришёл прайс поставщика на 800 позиций в Excel, а вбивать его руками в справочник «Номенклатура» никто не будет. Загрузить файл в 1С 8.3 можно штатной загрузкой данных из табличного документа: открываете список, вызываете команду загрузки, вставляете данные, сопоставляете колонки с полями и нажимаете «Загрузить». Всё остальное в этой теме сводится к подготовке файла и разбору ошибок.
Файл не всегда лежит в Excel. Бывает CSV из банка или маркетплейса, XML из другой программы, а иногда «загрузить файлы» значит прикрепить скан к документу. Разберём все варианты, от безопасного к более сложным.
Что выбрать: способы загрузки файлов
Сначала решите, что именно вы загружаете. От этого зависит инструмент.
| Что загружаете | Чем загружать | Риск |
|---|---|---|
| Справочник (номенклатура, контрагенты) из Excel | Стандартная загрузка данных из файла | Низкий, если проверить сопоставление |
| Табличную часть документа (товары, услуги) | Заполнение из файла или буфера обмена | Низкий |
| Выписку банка | Обмен с банком, файл формата 1С | Средний, смотреть дубли |
| XML или данные другой базы 1С | Правила обмена, конвертация данных | Высокий, нужен тест |
| Сканы, договоры, PDF | Присоединённые файлы | Низкий |
Всю базу целиком (.dt) | Конфигуратор | Затирает текущие данные |
Загрузка .dt заменяет базу целиком. К загрузке справочников из Excel она отношения не имеет. Путаница между ними стоила не одному бухгалтеру месяца работы.
Подготовка Excel-файла перед загрузкой
Девять проблем из десяти возникают не в 1С, а в самом файле. Потратьте десять минут на порядок в таблице.
Что проверить в таблице
- 📌 Заголовки в одной строке, без объединённых ячеек.
- 📌 Одна строка — одна запись. Никаких итогов, подзаголовков и пустых строк посередине.
- 📌 Один столбец — один смысл. Не склеивайте артикул и наименование.
- 📌 Числа хранятся как числа, а не как текст. Зелёный треугольник в углу ячейки выдаёт текст.
- 📌 Дробная часть отделена так, как принято в региональных настройках компьютера. Запятая или точка — смотрите по своей системе.
- 📌 Лишние пробелы в начале и конце убраны. Для этого подойдёт функция
СЖПРОБЕЛЫ.
Форматы файлов
Для табличных данных лучше всего подходят xlsx и csv. Старый xls тоже читается, но часто ломает кодировку. Если у вас csv, откройте его в текстовом редакторе и убедитесь, что разделитель единый (точка с запятой), а кодировка не превращает русский текст в кракозябры.
Самый надёжный приём: откройте файл в Excel, выделите нужную область и скопируйте. Загрузка через буфер обмена обходит проблемы с форматом и кодировкой.
Перед загрузкой сделайте копию базы или хотя бы выгрузку справочника, в который будете грузить. Если загрузка пойдёт не так, откатить её штатно нельзя.
Перед массовой загрузкой сделайте резервную копию базы. Это минута работы против дня восстановления.
Загрузка из табличного документа: порядок действий
Стандартный механизм загрузки данных из файла встроен в большинство современных конфигураций на базе библиотеки стандартных подсистем (1С:Бухгалтерия 3.0, ЗУП 3, Управление торговлей 11). Он работает для справочников и для табличных частей документов. Точное расположение команды зависит от конфигурации и релиза.
Пошагово
- Откройте список, в который грузите данные. Например,
Справочники → Номенклатура. - В командной панели списка найдите меню «Ещё» и команду загрузки данных из файла. Если её нет, загрузку через эту форму для данного списка не включали.
- Откроется форма с пустой таблицей. Вставьте скопированные данные (
Ctrl+V) или откройте файл Excel кнопкой выбора файла. - Проверьте, что данные встали в правильные колонки. Заголовки в таблице формы — это поля справочника.
- Нажмите кнопку перехода к следующему шагу. 1С сопоставит строки с существующими записями.
- Просмотрите результат сопоставления. Строки отмечаются как «Найдено», «Будет создано» или «Не найдено / ошибка».
- Нажмите «Загрузить» и дождитесь итога.
Пример. В файле 800 строк, в базе уже есть 650 таких же позиций. Правильно настроенная загрузка создаст 150 новых и не тронет остальные. Неправильно настроенная создаст 800 новых, и у вас появятся дубли.
Если команды загрузки нет
В «чистом» интерфейсе такой кнопки может не быть, если конфигурация старая или самописная. Тогда остаются три пути:
- 🔹 Загрузка в табличную часть документа из буфера обмена, если в форме есть команда вставки.
- 🔹 Внешняя обработка загрузки (раздел про автоматизацию ниже).
- 🔹 Обновление конфигурации до релиза, где механизм уже есть.
Сопоставление: как 1С находит записи и не плодит дубли
Главная настройка загрузки — по какому полю искать уже существующую запись. Её и называют правилом поиска.
Ключевые поля
Для номенклатуры это обычно артикул или наименование, для контрагентов — ИНН (и КПП для юрлиц). Выбирайте поле, которое не повторяется и не меняется.
| Справочник | Надёжное поле для поиска | Ненадёжное |
|---|---|---|
| Номенклатура | Артикул, штрихкод | Наименование (опечатки, пробелы) |
| Контрагенты | ИНН + КПП | Наименование |
| Банковские счета | Номер счёта + БИК | Название банка |
| Физические лица | Паспорт, ИНН | ФИО (полные тёзки) |
Что делать, если записи нет
Правило «создавать, если не найдено» удобно при первичном наполнении базы. При обновлении цен его лучше выключить: тогда опечатка в артикуле не создаст новую позицию, а вернёт ошибку.
Новые элементы лучше сразу класть в нужную группу. Если в файле нет колонки с группой, задайте её один раз для всей загрузки, а не разгребайте потом корень справочника.
Поля с ссылками (единица измерения, вид номенклатуры, ставка НДС) сопоставляются по наименованию. Если в файле «шт.», а в справочнике «шт», запись не найдётся. Приведите написание к справочнику заранее.
Для сложных переносов между разными структурами полезна схема соответствия «поле в файле → поле в 1С»:
Загрузка из XML и других файлов обмена
XML используют, когда данные идут не от человека, а из другой программы: другой базы 1С, интернет-магазина, учётной системы партнёра.
Обмен между базами 1С
Между двумя базами 1С файл выгружается и загружается через механизм обмена данными. В современных конфигурациях это раздел Администрирование → Синхронизация данных (название и состав зависят от конфигурации). Настройка включает:
- Создание обмена в одной базе и выбор типа (например, обмен с другой конфигурацией).
- Указание папки на диске, куда пишется файл
XML. - Выгрузку в базе-источнике и загрузку в базе-приёмнике.
Для автоматического обмена нужен общий каталог или FTP. Для разового переноса достаточно вручную скопировать файл.
Универсальный XML
Если другого пути нет, существует универсальный обмен данными в формате XML — это внешняя обработка с правилами конвертации. Она требует:
- ✅ файла правил обмена, подходящего вашей паре конфигураций;
- ✅ тестовой копии базы для пробной загрузки;
- ✅ проверки результата отчётами по загруженным объектам.
Боевую базу с первого раза не грузите. Сначала копия, потом оригинал.
CSV и текстовые файлы
Для банков, торговых площадок и касс применяют обмен через файл формата, который описан в документации контрагента. Загружайте такие файлы через специализированную обработку (клиент-банк, обмен с торговой площадкой). Универсальная загрузка из табличного документа для них не подходит.
Присоединённые файлы: как прикрепить скан или PDF
Если нужно положить в базу не данные, а сам документ (договор, акт, скан), используют присоединённые файлы.
- Откройте нужный документ или карточку справочника.
- Найдите в форме команду добавления файла: чаще всего это значок скрепки или раздел «Файлы».
- Выберите файл на диске или перетащите его в окно.
- Файл появится в списке и откроется двойным щелчком.
Не складывайте тяжёлые сканы в базу без нужды. Файл в 5 МБ на 2 000 документов — это уже 10 ГБ. Для больших объёмов настраивают хранение файлов на диске сервера, а не в самой базе, это делает администратор.
Разбор ошибок и протокол загрузки
После загрузки не закрывайте форму, пока не прочитали итог. Сообщения о проблемах выводятся прямо в окне или в панели сообщений.
Частые причины
| Симптом | Причина | Что делать |
|---|---|---|
| Часть строк не загрузилась | Не заполнено обязательное поле | Дополнить колонку в файле, загрузить только пропущенные |
| Появились дубли | Поиск шёл по наименованию | Объединить дубли, пересмотреть ключ |
| Число стало нулём | В ячейке текст или не тот разделитель | Привести столбец к числовому формату |
| «Кракозябры» вместо русского | Кодировка csv | Пересохранить файл в UTF-8 или Windows-1251 |
| Не найдена единица измерения | Разное написание | Выровнять написание по справочнику |
| Загрузка идёт очень долго | Большой файл и проведение документов | Разбить на пачки по 500–1 000 строк |
Как проверить результат
Не доверяйте счётчику «загружено 800 из 800». Откройте список и отсортируйте по дате создания. Выборочно сверьте 10–15 записей с исходным файлом, особенно цены, остатки и реквизиты. Проверьте, нет ли записей без группы.
Автоматизация: внешние обработки и регулярные загрузки
Если файл приходит каждую неделю, ручная работа быстро надоедает. Есть три уровня автоматизации.
Внешняя обработка загрузки
Внешняя обработка — отдельный файл epf, который подключается к базе без изменения конфигурации. Для её подключения используйте Администрирование → Печатные формы, отчёты и обработки → Дополнительные отчёты и обработки, если этот раздел включён. Разработчик задаёт в обработке нужные колонки, правила поиска и действия при ошибках.
Подключайте обработки только из надёжных источников. Внешняя обработка выполняет код с правами пользователя и может изменить или удалить данные. Скачанный с форума файл сначала проверяйте на тестовой копии.
Регламентное задание
Для регулярных обменов по расписанию администратор настраивает регламентное задание: оно забирает файл из папки и загружает его без участия человека. Обычно так работают обмены с интернет-магазинами и торговым оборудованием.
Что стоит автоматизировать
- ✅ Ежедневные выгрузки заказов.
- ✅ Регулярные прайсы поставщиков.
- ✅ Банковские выписки.
Разовую первичную загрузку справочников проще и безопаснее сделать вручную.