Обмен данными

Импорт операций для товаров из CSV

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

Светлана Золотенкова Автор: Светлана Золотенкова Обновлено: 28 июля 2026 г.

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

Этот импорт устроен так же, как импорт рецептов: одна строка — одна операция в техкарте одного товара. Четыре этапа изделия — четыре строки с одним артикулом.

Где начать загрузку

Меню пользователя → «Настройки» → вкладка «Импорт данных» → плитка «Добавить операции для товаров». Сначала «Скачать шаблон», потом «Загрузить данные».

Колонок ровно семь. Файл с другим числом колонок в заголовке система отобьет целиком.

Колонки шаблона

Шаблон приходит с готовой техкартой из четырех этапов на один товар:

ART-001;Резка;1;10;1200;Стол сборки;лист 18мм

ART-001;Сборка;2;30;900;;

ART-001;Окраска;3;20;1500;Покрасочная;

ART-001;ОТК;4;5;0;;по чек-листу

Колонка Что в нее писать
«Артикул товара» код варианта изделия; обязательна
«Название операции» название этапа; обязательна
«Порядок» целое число от 1; обязательна
«Время (мин)» норматив в минутах, больше нуля; обязательна
«Стоимость в час» ставка ресурса; можно оставить пустой
«Ресурс» название станка или рабочего места
«Примечания» свободный текст

«Порядок» задает последовательность этапов в техкарте. Только целое число и только от 1: 0, -1 и 1,5 дают ошибку «Порядок» должен быть положительным числом (1, 2, 3…)».

«Время (мин)» задается в минутах, а хранится в часах — система делит на 60 сама. Десять минут станут 0,1667 ч. Не пишите сюда часы: 0,5 будет понято как полминуты.

«Стоимость в час» — ставка, по которой считается стоимость этапа. Пустая колонка означает ноль, а не «взять ставку из справочника ресурсов». Отрицательное значение отклоняется.

Операции создаются сами

Если операции с таким названием в справочнике еще нет, система заводит ее автоматически и сразу привязывает к товару. Заранее наполнять справочник операций не нужно.

Названия сверяются без учета регистра: Резка, резка и РЕЗКА — одна и та же операция. А вот Резка ЧПУ — уже другая. Опечатка в названии не даст ошибку, она молча создаст лишнюю операцию в справочнике, поэтому список названий лучше причесать до загрузки.

Автосозданная операция получает ставку 0 и единицу измерения «ч». Если единицы «ч» в справочнике нет, она тоже заводится сама.

Тем импорт и отличается от загрузки материалов, где единицу измерения надо завести заранее: здесь заранее не нужно ничего, кроме самих товаров.

Товар должен существовать

Единственное, что импорт не создает, — сам товар. Артикул не найден:

Товар с артикулом «ART-001» не найден

Артикул принадлежит материалу, а не товару:

Артикул «MAT-001» принадлежит не товару, а материалу

Операции привязываются только к товарам. Материалу техкарту не задать.

Колонка «Ресурс» уезжает в примечание

Отдельного поля для ресурса у операции товара нет. Чтобы введенное не потерялось, система приклеивает ресурс к примечанию:

В файле Что окажется в примечании
Ресурс Стол сборки, примечание пустое Ресурс: Стол сборки
Ресурс Стол сборки, примечание лист 18мм Ресурс: Стол сборки. лист 18мм
Ресурс пустой, примечание лист 18мм лист 18мм

То есть это текстовая пометка для человека, а не привязка к станку. Загрузка операций не расставит загрузку по ресурсам и не появится в планировании мощностей. Настоящие ресурсы назначаются в карточке товара и в производственном заказе.

Дубль исчезает из обоих счетчиков

Если операция уже привязана к этому товару, строка пропускается с предупреждением:

Операция «Резка» уже привязана к товару «ART-001» — строка пропущена

И вот тут важное отличие от импорта рецептов: такая строка не попадает ни в «принято», ни в «отклонено». Она просто исчезает из счетчиков.

Практическое следствие: счетчики не сходятся с числом строк файла. Загрузили 10 строк, видите «Импорт завершен · 8 принято · 0 отклонено» — значит, две строки были дублями. Разница между числом строк и суммой счетчиков и есть число пропущенных.

В импорте рецептов пропущенный дубль, наоборот, попадает в «принято». Два соседних импорта ведут себя противоположно, и полагаться на привычку не стоит — смотрите отчет.

Одну операцию к товару дважды не привязать

Дубль определяется парой «товар + операция», без учета порядка и времени. Поэтому техкарту вида «Шлифовка → Окраска → Шлифовка» файлом не задать: вторая шлифовка будет считаться дублем первой и пропадет.

Обход простой — разведите этапы по названиям: Шлифовка черновая и Шлифовка финишная. Это будут две разные операции справочника, и обе заедут.

Что происходит после нажатия «Загрузить данные»

Предпросмотра нет, строки уходят в базу сразу. Под плиткой появляется полоса результата, желтая при любых замечаниях, со ссылкой «Скачать отчет об ошибках (CSV)». Файл приходит как product-operations-import-report.csv с колонками «Строка», «Уровень», «Сообщение».

Номера строк считаются вместе с заголовком: заголовок — строка 1, первая запись — строка 2.

Импорт построчный, транзакции нет. Одна плохая строка не отменяет остальные, но и отката нет.

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

Где смотреть результат

Откройте карточку товара, вкладку «Операции». Этапы стоят в том порядке, который вы задали колонкой «Порядок», а «Итого» внизу собирает плановое время и стоимость работ.

Вкладка «Операции» в карточке товара с загруженными этапами техкарты, временем и стоимостью в час
Порядок этапов берется из колонки «Порядок», время пересчитано из минут в часы.

Вкладки «Операции» может не быть. Она показывается, только если в карточке стоит флажок «Произвести» — блок «Использование» на вкладке «Главная информация». Импорт этот флажок не проверяет и не выставляет: строки будут приняты, а вкладка не появится. Данные при этом на месте — поставьте флажок, и техкарта отобразится.

Краевые случаи

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

Изменить время или ставку импортом нельзя. Дубль пропускается, старые значения остаются. Правьте в карточке товара.

Два одинаковых «Порядка» в одном товаре ошибки не дают. Этапы встанут рядом, порядок между ними будет произвольным — пронумеруйте заново.

Техкарта не переносится на варианты по отдельности. Операции задаются на товар целиком.

Пустой файл или файл только с заголовком ошибки не дает: «Импорт завершен · 0 принято · 0 отклонено».

Разделитель и кодировка

  • разделитель — точка с запятой (;), не запятая;
  • кодировка — UTF-8, иначе «Файл не в кодировке UTF-8. Сохраните CSV как UTF-8.».

Файл с запятыми читается как одна колонка и отбивается сообщением «Ожидается 7 колонок в заголовке, получено 1».

Чего импорт операций не делает

  • Не создает товары. Их надо завести заранее.
  • Не обновляет уже привязанные операции. Дубль пропускается.
  • Не удаляет операции из техкарты.
  • Не привязывает станок или исполнителя — «Ресурс» остается текстом в примечании.
  • Не читает XLSX и XLS. Только CSV.

Смотрите также:

Помогла ли статья?