Возможно ли реализовать комплексный учет для работы с маркетплейсами в 1С: архитектура и пошаговое решение

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

Автоматизация работы на маркетплейсах — это не просто выгрузка остатков, а сложный процесс, включающий складскую логистику, учет операций нескольких юридических лиц в одной базе и глубокую аналитику. Рассмотрим, как построить надежную систему в 1С, способную обрабатывать миллионы записей и интегрироваться с внешними базами данных на PostgreSQL.

Анализ требований и выбор программного обеспечения

Прежде чем приступать к разработке, проанализируем масштаб задачи. Нам требуется вести учет для нескольких продавцов, управлять общим центром упаковки, отслеживать статусы накладных (от создания до продажи) и считать прибыль по методу FIFO. Рассмотрим наиболее подходящие конфигурации для этой цели:

  1. 1С:Управление торговлей 11 (УТ 11): Это флагманское решение. Оно содержит мощный блок адресного склада (WMS), который позволяет реализовать размещение по ячейкам, сборку коробок и управление остатками в разрезе организаций.
  2. 1С:Управление нашей фирмой (УНФ): Подойдет, если процессы производства (упаковки) не слишком сложные. Она проще в освоении, но при больших объемах данных (миллионы строк) УТ 11 на серверной платформе будет работать стабильнее.
  3. 1С:Комплексная автоматизация (КА): Идеальна, если помимо торговли требуется детальный расчет зарплаты сотрудников склада и управленческий баланс.

Интеграция с PostgreSQL через внешние источники данных

Одной из ключевых задач является получение данных из базы PostgreSQL, куда асинхронно стекается информация с маркетплейса. Разберем, как подключить эти данные напрямую к 1С, не прибегая к медленному обмену файлами. В платформе 1С существует объект ВнешниеИсточникиДанных.

Выясним, как это работает по шагам:

  1. Создадим в конфигураторе новый объект ВнешнийИсточникДанных.
  2. Настроим строку соединения с PostgreSQL (используя ODBC-драйвер).
  3. Выберем необходимые таблицы (остатки, заказы, статусы).

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


Запрос = Новый Запрос;
Запрос.Текст = 
    "ВЫБРАТЬ
    |   ВнешнийИсточникЛимиты.Артикул КАК Артикул,
    |   ВнешнийИсточникЛимиты.ДоступныйЛимит КАК Лимит
    |ИЗ
    |   ВнешнийИсточникДанных.Маркетплейс.Таблица.Лимиты КАК ВнешнийИсточникЛимиты
    |ГДЕ
    |   ВнешнийИсточникЛимиты.Артикул = &Артикул";

Запрос.УстановитьПараметр("Артикул", ТекущийАртикул);
Результат = Запрос.Выполнить();

Организация работы нескольких продавцов (механизм RLS)

Ситуация, когда несколько продавцов работают в одной базе и используют один склад, требует четкого разграничения прав. Мы не хотим, чтобы Продавец А видел закупки Продавца Б. Для этого проанализируем механизм RLS (Row Level Security).

В типовых конфигурациях (УТ 11, КА) уже встроены профили групп доступа. Мы можем настроить ограничения так, чтобы:

Складской учет: упаковка и адресное хранение

Важный этап — процесс упаковки. В 1С его можно реализовать через документ ЗаказНаСборку или создать кастомное РабочееМестоУпаковщика. Разберем, как реализовать выбор типа упаковки. Для этого будем использовать ДополнительныеРеквизиты.

Алгоритм работы упаковщика в системе:

  1. Сотрудник открывает список задач на упаковку (формируется на основании закупок продавцов).
  2. При завершении упаковки система проверяет статус в PostgreSQL: если есть созданная накладная на МП — предлагает «привязать» товар к ней.
  3. Если накладной нет — проверяет лимит отгрузки через внешний источник данных и предлагает создать новую запись.
  4. Для товаров, идущих на хранение, используется механизм ячеистого склада. Каждой коробке присваивается уникальный Штрихкод (ШК).

Уведомления и контроль логистики через Telegram

Для реализации пунктов о Telegram-уведомлениях (о нестыковках статусов или приближении даты отгрузки) нам не нужны сторонние сервисы. Мы можем использовать встроенные средства 1С для работы с HTTP-запросами.

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


Процедура ПроверитьСтатусыИУведомить() Экспорт
    // Получаем список накладных, которые "Отправлены", но не "Приняты" более 24 часов
    Запрос = Новый Запрос("ВЫБРАТЬ НомерНакладной ИЗ РегистрСведений.СтатусыЛогистики ГДЕ ...");
    Выборка = Запрос.Выполнить().Выбрать();
    
    Пока Выборка.Следующий() Цикл
        ТекстСообщения = "Внимание! Накладная №" + Выборка.НомерНакладной + " задерживается в пути!";
        ОтправитьВTelegram(ТекстСообщения, ID_Пользователя);
    КонецЦикла;
КонецПроцедуры

Расчет прибыли по методу FIFO и аналитика

Система 1С идеально подходит для расчета себестоимости по методу FIFO. При каждой продаже программа «подбирает» самую старую партию закупки и списывает её стоимость. Это позволяет точно считать маржу, даже если закупочные цены меняются каждый день.

Для реализации отчетов ABC и XYZ анализа (по обороту или прибыли) в 1С:Управление торговлей используются стандартные обработки. Вам останется только настроить источники данных:

Производительность при больших объемах данных

1,5 миллиона записей о продажах — это объем, с которым 1С на базе PostgreSQL или MS SQL Server справляется без проблем при соблюдении следующих условий:

  1. Клиент-серверный вариант работы: Обязательно использование сервера 1С.
  2. Регулярное обслуживание БД: Обновление статистики и дефрагментация индексов.
  3. Оптимизация запросов: Избегайте обращений к виртуальным таблицам остатков внутри циклов.

Заключение и рекомендации по внедрению

Рассмотренный функционал полностью реализуем в 1С. Однако стоит предостеречь от попыток сделать всё за «5 дней». Подобный проект требует:

  1. Создания Минимально жизнеспособного продукта (MVP) за 1-2 месяца (базовый учет, склад, загрузка из PostgreSQL).
  2. Постепенного добавления блоков (Telegram-боты, сложная аналитика, возвраты) в течение последующих 2-3 месяцев.

Выбирайте современные конфигурации на управляемых формах (УТ 11, УНФ), так как они имеют лучшую поддержку веб-сервисов и мобильных рабочих мест, что крайне важно для сотрудников склада со сканерами штрихкодов.

← На главную