Заказ покупателя из таблицы Excel: перенос строк в документ 1С без ручного набора
Содержание
Загрузить заказ из Excel в 1С проще всего так: создайте документ заказа, заполните шапку (клиент, организация, склад), а строки товаров перенесите командой загрузки из файла в табличной части «Товары». Откроется форма с таблицей: в неё вставляют ячейки из Excel через Ctrl+V или выбирают сам файл .xlsx, затем программа сопоставляет позиции со справочником «Номенклатура» и заполняет документ.
Есть три пути, и выбирают по частоте. Разовый заказ на 30–300 строк — встроенная загрузка в табличную часть. Нетиповая конфигурация без такой команды — универсальная обработка «Загрузка данных из табличного документа». Десятки заказов в день от одних и тех же клиентов в одном и том же формате — своя внешняя обработка или электронный обмен заказами.
Какой способ загрузки заказа выбрать
| Способ | Когда подходит | Что загружает | Ограничения |
|---|---|---|---|
| 📥 Встроенная загрузка в табличную часть | Типовые БП 3.0, УТ 11, КА, ERP, УНФ на свежих релизах | Только строки товаров | Шапку заполняют вручную, один заказ за раз |
| 🧩 Обработка «Загрузка данных из табличного документа» | Нетиповая или старая конфигурация, нет кнопки загрузки | Табличную часть выбранного документа | Нужны права на внешние обработки, настройка колонок каждый раз |
| ⚙️ Своя внешняя обработка | Регулярные заказы в постоянном формате | Шапку и строки, можно пачкой | Нужен программист, обработку дорабатывают при смене формата |
| 🔄 Электронный обмен заказами (EDI, обмен с сайтом) | Сетевые покупатели, интернет-магазин | Заказ целиком | Отдельное подключение и настройка |
Документ называется по-разному в зависимости от конфигурации, и это влияет на то, куда загружать:
| Конфигурация | Документ | Где найти список |
|---|---|---|
| 1С:Управление торговлей 11, КА 2, ERP | Заказ клиента | Продажи → Заказы клиентов |
| 1С:Управление торговлей 11, КА 2, ERP | Заказ поставщику | Закупки → Заказы поставщикам |
| 1С:УНФ | Заказ покупателя | Продажи → Заказы покупателей |
| 1С:Бухгалтерия 3.0 | Счёт покупателю (отдельного заказа нет) | Продажи → Счета покупателям |
В Бухгалтерии заказ клиента обычно оформляют счётом на оплату, а при отгрузке строки переносят в реализацию через ввод на основании. Порядок загрузки строк в счёт тот же, что описан ниже.
Подготовка файла Excel к импорту в 1С
Большая часть ошибок импорта рождается в файле, а не в 1С. Клиент присылает красивый бланк с логотипом, объединёнными ячейками и итогами — такой файл программа прочитает, но сопоставит плохо. Пять минут на чистку экономят полчаса ручного исправления строк.
Как должна выглядеть таблица
- Одна строка — одна позиция заказа. Подзаголовки групп («Крепёж», «Инструмент») удалите или вынесите в отдельную колонку.
- Первая строка — заголовки колонок, данные идут сразу под ней, без пустых строк.
- Объединённых ячеек нет: выделите весь лист и снимите объединение.
- Строки «Итого», «НДС», «Всего к оплате» внизу удалите — иначе 1С попробует найти товар с названием «Итого».
- Лишние колонки (фото, описание, остаток у поставщика) можно оставить, при загрузке их просто не сопоставляют.
Ключ для поиска товара
Решите заранее, по какой колонке 1С будет узнавать товар. Надёжность ключей разная:
- 🏷️ Штрихкод — самый точный вариант, если ваши товары им размечены и коды заведены в базе.
- 🔢 Артикул — хорош, если артикулы в базе заполнены и уникальны. Артикул поставщика и ваш артикул часто не совпадают: уточните, чей стоит в файле.
- 📝 Наименование — худший ключ. «Саморез 4,2х16» и «Саморез 4.2*16 мм» для программы разные товары.
Форматы ячеек
- Колонку со штрихкодами и артикулами с ведущими нулями переведите в формат «Текстовый» до вставки данных. Иначе Excel превратит
0012345в12345, а 13-значный штрихкод — в4,6E+12. - Количество и цена должны быть числами, а не текстом. Зелёный треугольник в углу ячейки — признак числа, сохранённого как текст.
- Уберите пробелы в начале и конце артикулов. Помогает формула
=СЖПРОБЕЛЫ(A2)с последующей вставкой значений. - Формулы в ячейках допустимы, 1С читает рассчитанное значение. Но если формула ссылается на другой файл, перед загрузкой замените её значением.
Сохраните файл в формате .xlsx. Старый .xls тоже читается, но с ним чаще бывают проблемы с кодировкой и датами.
Загрузка строк заказа из Excel встроенными средствами 1С
Встроенная загрузка в табличные части есть в типовых конфигурациях на платформе 8.3. Это общий механизм для многих документов, поэтому выглядит он одинаково в заказе, счёте, реализации и поступлении.
Создайте документ и заполните шапку
- Откройте список заказов (путь — в таблице выше) и нажмите
Создать. - Заполните клиента, организацию, склад. В УТ 11 выберите соглашение: от него зависят вид цен и условия оплаты.
- Перейдите на вкладку «Товары».
Шапку стоит заполнить до загрузки строк. Склад и вид цен влияют на то, как документ дорисует строки после вставки.
Откройте форму загрузки
В командной панели табличной части «Товары» найдите команду загрузки из файла. В разных релизах это отдельная кнопка «Загрузить» или пункт в меню «Заполнить» либо «Ещё». Откроется форма с пустой таблицей-шаблоном: колонки в ней соответствуют полям, которые можно загрузить в эту табличную часть.
Перенесите данные
Вариантов два:
- Через буфер обмена. В Excel выделите диапазон с данными без строки заголовков, скопируйте, в форме 1С щёлкните в первую ячейку первой колонки и нажмите
Ctrl+V. Порядок колонок в Excel должен совпасть с порядком в шаблоне — переставьте их в Excel заранее. - Из файла. Выберите команду загрузки из файла в самой форме и укажите
.xlsx,.xls,.odsили.csv. Программа попытается разложить колонки по заголовкам; проверьте результат глазами.
Лишние колонки шаблона, для которых у вас нет данных, оставьте пустыми. Шаблон обычно позволяет выбрать, по чему искать номенклатуру: по наименованию, артикулу, штрихкоду или коду.
Сопоставьте позиции и завершите загрузку
После нажатия Далее программа ищет каждую строку в справочнике и делит их на группы: найденные однозначно, найденные с несколькими совпадениями и не найденные. Разберите две последние группы до загрузки:
- для неоднозначных выберите правильную позицию из предложенных;
- для ненайденных укажите товар вручную из справочника или создайте новый элемент, если это действительно новая позиция;
- строки, которые не нужны в заказе, исключите.
Затем подтвердите загрузку. Строки попадут в документ, и останется проверить суммы и записать заказ.
Новые элементы номенклатуры, созданные из формы загрузки, получают минимум реквизитов. Проверьте у них вид номенклатуры, единицу измерения, ставку НДС и группу, иначе отгрузка по ним споткнётся позже.
Как настроить соответствие колонок и справочников
Самая трудоёмкая часть импорта — не вставка, а сопоставление. Ниже — типичная раскладка колонок клиентского заказа на поля табличной части.
Единицы измерения и упаковки
Клиент пишет «2 коробки», а в 1С товар учитывается в штуках. В УТ 11 и ERP при включённом учёте упаковок в строке есть отдельное поле упаковки: загрузите количество упаковок и укажите упаковку — штуки программа пересчитает сама. В Бухгалтерии упаковок нет, поэтому пересчитайте количество в базовую единицу прямо в Excel до загрузки.
Характеристики
Если товары ведутся с характеристиками (размер, цвет), одной колонки артикула мало: «Футболка арт. 105» найдётся, а размер останется пустым. Добавьте в файл колонку характеристики с теми же названиями, что в базе, и сопоставьте её при загрузке.
Цены: загружать или нет
Есть два подхода:
- Цены из файла. Подходит, если цена согласована с клиентом индивидуально и указана в его заказе.
- Цены из базы. Колонку цены не загружают, после загрузки строк заполняют цены командой документа по виду цен или соглашению.
Второй вариант безопаснее: клиент не «подсунет» устаревший прайс. Если загружали цены из файла, сравните итог документа с итогом в Excel — расхождение больше копеек означает ошибку в строках.
Словарь соответствий для постоянных клиентов
Когда клиент присылает заказы регулярно, а его наименования не совпадают с вашими, заведите таблицу соответствий: колонка с его артикулом и колонка с вашим. Перед загрузкой подставляйте ваш артикул формулой ВПР (или ИНДЕКС/ПОИСКПОЗ). В УТ 11 и ERP есть учёт номенклатуры поставщиков и номенклатуры контрагентов — если он включён, сопоставление по артикулу клиента можно вести прямо в базе.
Порядок проверки заказа после импорта из Excel
Загрузка заполнила строки, но документ ещё не готов. Перед записью и проведением пройдите по списку.
- Сравните количество строк в документе и в файле. Разница — значит, часть строк отброшена на этапе сопоставления.
- Сверьте итоговую сумму документа с итогом в Excel.
- Отсортируйте табличную часть по колонке номенклатуры и поищите дубли: одна позиция могла попасть дважды из-за разных написаний в файле.
- Проверьте ставку НДС в строках, особенно у позиций, созданных при загрузке.
- Проверьте склад и дату отгрузки, если они задаются построчно.
- В УТ 11 посмотрите статус заказа и варианты обеспечения: без них резерв не встанет.
- Запишите документ, затем проведите.
Если заказ большой, сначала запишите его без проведения. Проведение заказа с тысячей строк в УТ может занять заметное время из-за расчёта обеспечения, а при ошибке в одной строке вы не потеряете всю загрузку.
Автоматизация загрузки заказов внешней обработкой
Ручная загрузка терпима для одного-двух заказов в день. Когда их десятки, нужен другой подход.
Обработка «Загрузка данных из табличного документа»
Это универсальная внешняя обработка, которую распространяет фирма 1С для управляемых форм. Она умеет загружать данные в справочник, в регистр сведений и в табличную часть документа. Для заказа выбирают режим загрузки в табличную часть, указывают ссылку на созданный заказ и табличную часть «Товары», затем настраивают колонки и способ поиска номенклатуры.
Как подключить:
- разово — открыть файл
.epfчерез главное меню программы:Файл → Открыть; - постоянно — добавить в раздел дополнительных обработок:
Администрирование → Печатные формы, отчёты и обработки → Дополнительные отчёты и обработки(в УТ 11 раздел называетсяНСИ и администрирование).
Платформа выдаст предупреждение о безопасности при открытии внешнего файла, а у пользователя должно быть право на интерактивное открытие внешних обработок. Без него файл не откроется — права настраивает администратор базы.
Своя обработка под формат клиента
Если формат файла постоянный, программист пишет обработку, которая читает файл, находит товары по артикулу и создаёт заказ целиком вместе с шапкой. Пользователь выбирает файл и клиента, нажимает одну кнопку. Ниже — серверная часть такого решения: чтение файла и заполнение табличной части открытого документа.
&НаСервере
Процедура ЗаполнитьТоварыИзФайла(АдресФайла)
ДвоичныеДанные = ПолучитьИзВременногоХранилища(АдресФайла);
ИмяВременногоФайла = ПолучитьИмяВременногоФайла("xlsx");
ДвоичныеДанные.Записать(ИмяВременногоФайла);
Таб = Новый ТабличныйДокумент;
Таб.Прочитать(ИмяВременногоФайла);
УдалитьФайлы(ИмяВременногоФайла);
// Колонки файла: 1 - артикул, 2 - количество, 3 - цена. Строка 1 - заголовки.
Для НомерСтроки = 2 По Таб.ВысотаТаблицы Цикл
Артикул = СокрЛП(Таб.Область(НомерСтроки, 1, НомерСтроки, 1).Текст);
Если ПустаяСтрока(Артикул) Тогда
Продолжить;
КонецЕсли;
Номенклатура = Справочники.Номенклатура.НайтиПоРеквизиту("Артикул", Артикул);
Если Номенклатура.Пустая() Тогда
Сообщить(СтрШаблон("Строка %1: артикул %2 не найден", НомерСтроки, Артикул));
Продолжить;
КонецЕсли;
ТекстКоличества = СтрЗаменить(Таб.Область(НомерСтроки, 2, НомерСтроки, 2).Текст, " ", "");
ТекстЦены = СтрЗаменить(Таб.Область(НомерСтроки, 3, НомерСтроки, 3).Текст, " ", "");
НоваяСтрока = Объект.Товары.Добавить();
НоваяСтрока.Номенклатура = Номенклатура;
НоваяСтрока.Количество = Число(ТекстКоличества);
НоваяСтрока.Цена = Число(ТекстЦены);
НоваяСтрока.Сумма = НоваяСтрока.Количество * НоваяСтрока.Цена;
КонецЦикла;
КонецПроцедуры
Файл на клиенте помещают во временное хранилище через ПоместитьВоВременноеХранилище или диалог выбора файла, а адрес передают в процедуру. Метод Прочитать у табличного документа работает с .xlsx и .xls без установленного Excel на сервере.
Код — заготовка, а не готовое решение. Если в ячейке пробелы-разделители тысяч другого вида (неразрывный пробел), их тоже нужно убирать, иначе Число() вызовет ошибку. В УТ 11 и ERP у строки заказа есть свои связанные поля — ставка НДС, сумма НДС, упаковка, вариант обеспечения; их заполняют штатными процедурами конфигурации, а не прямым присвоением. Доработку типовой формы делают через расширение конфигурации, чтобы не снимать базу с поддержки.
Электронный обмен заказами
Для сетевых покупателей и маркетплейсов Excel — промежуточное звено, которое стоит убрать. Заказы от торговых сетей принимают через сервис 1С:EDI, заказы с сайта — через обмен с интернет-магазином. Тогда документ появляется в базе без участия менеджера, а Excel нужен только для разовых клиентов.
Ошибки при загрузке заказа и что с ними делать
Ниже собраны ситуации, которые встречаются при импорте. Выберите свою, чтобы увидеть причину.
Частые вопросы о загрузке заказов из Excel
Можно ли загрузить в 1С сразу несколько заказов из одного файла?
Нужен ли установленный Microsoft Excel на компьютере?
.xlsx и .xls своими средствами. Excel или аналог нужен только для подготовки файла.Подойдёт ли файл из Google Таблиц?
.xlsx или скопируйте диапазон прямо из браузера и вставьте в форму загрузки через буфер обмена.Как не настраивать колонки при каждой загрузке?
Можно ли так же загрузить заказ поставщику?
Закупки → Заказы поставщикам, заполните шапку и загрузите строки в табличную часть товаров.