Как загрузить данные из Excel в документ Пересчет товаров в 1С:Розница 2.2

Программист 1С v8.3 (Управляемые формы) 1С:Розница Управленческий учет Торговля и дистрибуция
← На главную

При проведении инвентаризации с использованием мобильных терминалов сбора данных (ТСД) часто возникает задача переноса полученных результатов в информационную базу 1С. Обычно недорогие или специфические модели ТСД выгружают данные в простые форматы, такие как Excel или CSV, в виде списка «штрихкод; количество». Рассмотрим подробнее, как максимально эффективно загрузить эти данные в документ ПересчетТоваров в конфигурации 1С:Розница 2.2. Чтобы предварительно убедиться в наличии кодов у всей номенклатуры базы, можно применить обработку для проверки заполнения штрихкодов в Рознице 2.2.

Способ 1: Встроенный функционал «Загрузка из внешнего файла»

Начиная с версии 2.2.5, в 1С:Розница реализован удобный механизм прямой загрузки данных в табличные части документов. Проанализируем этот алгоритм:

  1. Откроем документ ПересчетТоваров, который находится в статусе В работе. Это критически важное условие, так как в других статусах редактирование данных может быть заблокировано системой.
  2. Над табличной частью «Товары» найдем кнопку Загрузить из внешнего файла (обычно она выглядит как пиктограмма папки со стрелкой).
  3. В открывшемся окне нам предложат два варианта: скопировать данные напрямую из Excel через буфер обмена или прочитать готовый файл. Разберем по шагам вариант с копированием: выделим в Excel колонки со штрихкодом и количеством, скопируем их (Ctrl+C) и вставим в поле формы 1С (Ctrl+V).
  4. Нажмем кнопку «Далее». Программа попросит нас сопоставить колонки. Укажем, какая колонка соответствует Штрихкод, а какая — КоличествоФакт.
  5. После нажатия кнопки «Загрузить» 1С автоматически выполнит поиск номенклатуры по штрихкодам и заполнит фактические остатки в документе.

Способ 2: Использование универсальной обработки «Загрузка данных из табличного документа»

Если по какой-то причине встроенная кнопка недоступна или требуется более тонкая настройка поиска (например, сопоставление не по штрихкоду, а по артикулу), воспользуемся стандартной обработкой. Рассмотрим, как это сделать:

Эта обработка часто входит в состав дистрибутива конфигурации или может быть найдена на ИТС. Выясним последовательность действий:

  1. Запустим обработку ЗагрузкаДанныхИзТабличногоДокумента.epf через меню «Файл — Открыть» (если у пользователя есть соответствующие права).
  2. В поле «Режим загрузки» выберем Загрузка в табличную часть.
  3. В качестве объекта выберем ссылку на наш созданный документ ПересчетТоваров, а в поле «Табличная часть» укажем Товары.
  4. На вкладке «Настройка» отметим галочками поля Номенклатура и Количество.
  5. Важный нюанс: для поля Номенклатура в колонке «Поле поиска» укажем, что поиск будет вестись не по ссылке, а по подчиненному объекту (штрихкоду). Для этого настроим связь через регистр сведений ШтрихкодыНоменклатуры.
  6. Загрузим данные и нажмем «Выполнить».

Подготовка данных в Excel: исправляем типичные ошибки

Проанализируем ситуацию, когда данные из ТСД попадают в Excel с некорректным форматированием. Это самая частая причина ошибок загрузки. Посмотрим на основные проблемы:

Экспоненциальный вид штрихкода. Длинные числа (EAN-13) Excel часто превращает в вид 4,60E+12. Если загрузить это в 1С «как есть», поиск товара не сработает. Чтобы этого избежать, перед загрузкой выделим колонку в Excel, нажмем правую кнопку мыши, выберем «Формат ячеек» и установим Числовой (0 знаков после запятой) или Текстовый.

Потеря ведущих нулей. Если ваш штрихкод начинается с нуля (например, 000000123456), Excel может его обрезать до 123456. Проанализируем это: для 1С это совершенно другой штрихкод. Всегда проверяйте, чтобы формат ячеек в Excel был «Текстовый» еще до момента вставки или импорта данных из ТСД.

Методика работы с документом «Пересчет товаров»

Посмотрим на правильную последовательность действий в 1С:Розница для минимизации ошибок учета:

  1. Сначала создается документ ПриказНаПересчетТоваров. Он определяет область инвентаризации (склад, группу товаров).
  2. На основании приказа создается документ ПересчетТоваров.
  3. В документе пересчета рекомендуется сначала нажать кнопку Заполнить по отбору. Это заполнит таблицу всеми товарами, которые числятся на остатках по данным программы (колонка «Учет»).
  4. Только после этого мы выполняем загрузку из Excel. Программа сопоставит найденные штрихкоды и обновит колонку Факт. Если в Excel есть товары, которых нет в учетном списке, программа предложит их добавить.

Работа с весовым товаром

Выясним причину проблем с весовым товаром. Если в Excel-файле содержится штрихкод весового товара (начинающийся на 22 или 29), в нем обычно «зашит» вес. Стандартная загрузка может воспринять такой код как одну позицию с количеством «1». Если вы планируете загружать весовой товар, убедитесь, что ваш ТСД или обработка умеют «расщеплять» штрихкод на код товара и вес, либо используйте специализированные расширения (.cfe), которые умеют обрабатывать префиксы весовых штрихкодов при загрузке.

Программный подход (для разработчиков)

Если вы решите написать свою обработку загрузки, проанализируем пример кода для поиска номенклатуры по штрихкоду:


// Функция поиска номенклатуры по штрихкоду
Функция НайтиНоменклатуруПоШтрихкоду(ТекШтрихкод)
    Запрос = Новый Запрос;
    Запрос.Текст = 
        "ВЫБРАТЬ
        |	Штрихкоды.Владелец КАК Номенклатура,
        |	Штрихкоды.Характеристика КАК Характеристика
        |ИЗ
        |	РегистрСведений.Штрихкоды КАК Штрихкоды
        |ГДЕ
        |	Штрихкоды.Штрихкод = &Штрихкод";
    
    Запрос.УстановитьПараметр("Штрихкод", ТекШтрихкод);
    Результат = Запрос.Выполнить();
    
    Если Не Результат.Пустой() Тогда
        Выборка = Результат.Выбрать();
        Выборка.Следующий();
        Возврат Выборка;
    КонецЕсли;
    
    Возврат Неопределено;
КонецФункции

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

Альтернативы Excel-загрузке

Рассмотрим современные альтернативы. Чтобы избежать проблем с форматами файлов и ручным переносом данных, можно использовать мобильные приложения, такие как 1С:Кладовщик. В этом случае данные передаются напрямую в документ ПересчетТоваров через веб-сервис по Wi-Fi. Это исключает этап формирования Excel-файла и существенно ускоряет работу. Для пересчета товаров с прямым поиском по штрихкодам и кодам маркировки можно использовать инструмент для инвентаризации в Рознице с поддержкой маркировки.

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

← На главную