Возможна ли продажа от двух разных организаций из одной базы Frontol 5 и как настроить обмен с 1С:Розница?

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

При автоматизации розничной торговли часто возникает задача реализации товаров от нескольких юридических лиц (например, ООО и ИП) на одном кассовом рабочем месте. Рассмотрим, как устроена работа с несколькими фирмами во кассовом ПО Frontol 5, а также с какими техническими ограничениями можно столкнуться при загрузке продаж в конфигурацию 1С:Розница.

Настройка работы с двумя организациями во Frontol 5

В кассовом ПО Frontol 5 реализован полноценный механизм работы с несколькими организациями. Проанализируем ключевые сущности, которые необходимо настроить во Frontol:

  1. Справочник «Фирмы»: Создадим две отдельные записи с реквизитами и ИНН каждой из организаций.
  2. Группы печати: Каждой фирме должна соответствовать своя группа печати. В настройках оборудования к каждой группе печати привязывается свой фискальный регистратор (ККТ).
  3. Привязка товаров: В справочнике номенклатуры позициям присваивается соответствующая группа печати. Товары ИП привязываются к одной группе, а товары ООО — к другой.

При таком подходе кассир работает в едином окне пробития чека. При закрытии чека Frontol 5 автоматически делит позиционный состав по группам печати и печатает фискальные чеки на двух разных ККТ. В файле транзакций записи о продажах четко разделены по фирмам и группам печати.

Ограничения типового механизма обмена в 1С:Розница

Выясним причину, почему возникают трудности при загрузке данных продаж из Frontol 5 в стандартную конфигурацию 1С:Розница.

В типовой 1С взаимодействие с кассой Offline осуществляется через справочник ПодключаемоеОборудование. В настройках конкретного узла обмена KKM Offline в 1С жестко задаются только один склад и одна организация. При обработке файла транзакций типовой механизм 1С формирует только один документ ОтчетОРозничныхПродажах на организацию, указанную в узле подключения оборудования.

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

Варианты решения проблемы при интеграции с 1С

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

1. Использование расширения конфигурации 1С (рекомендуемый способ)

Чтобы не снимать конфигурацию с поддержки, создадим расширение, которое перехватывает обработку загрузки транзакций Frontol:

  1. При выгрузке каталога товаров из 1С передаем во Frontol информацию о группах печати (на основе правил продаж или свойств номенклатуры).
  2. При загрузке файла транзакций перехватываем стандартную процедуру заполнения документа и анализируем коды фирм/групп печати в транзакциях.
  3. Программно формируем отдельные документы ОтчетОРозничныхПродажах для каждого юридического лица с привязкой к его организации и складу.

Проанализируем пример кода алгоритма разделения загружаемых строк по организациям:


&НаСервере
Процедура СоздатьОтчетыПоОрганизациям(ТаблицаТранзакций, УзелКассы)
    
    // Группируем проданные товары по организациям
    ТаблицаПоОрганизациям = ТаблицаТранзакций.Скопировать();
    ТаблицаПоОрганизациям.Свернуть("Организация");
    
    Для Каждого СтрОрг Из ТаблицаПоОрганизациям Цикл
        
        ДокументОРП = Документы.ОтчетОРозничныхПродажах.СоздатьДокумент();
        ДокументОРП.Дата = ТекущаяДата();
        ДокументОРП.Организация = СтрОрг.Организация;
        ДокументОРП.Склад = СтрОрг.Организация.СкладПоУмолчанию;
        ДокументОРП.ЗаполнитьЗаголовок();
        
        // Отбираем товары конкретной фирмы из общего массива транзакций
        Отбор = Новый Структура("Организация", СтрОрг.Организация);
        СтрокиПродаж = ТаблицаТранзакций.НайтиСтроки(Отбор);
        
        Для Каждого СтрПродажи Из СтрокиПродаж Цикл
            НоваяСтрока = ДокументОРП.Товары.Добавить();
            НоваяСтрока.Номенклатура = СтрПродажи.Номенклатура;
            НоваяСтрока.Количество = СтрПродажи.Количество;
            НоваяСтрока.Цена = СтрПродажи.Цена;
            НоваяСтрока.Сумма = СтрПродажи.Сумма;
        КонецЦикла;
        
        ДокументОРП.Записать(РежимЗаписиДокумента.Проведение);
        
    КонецЦикла;
    
КонецПроцедуры

2. Настройка двух независимых узлов обмена с разными каталогами

Если товары организаций строго разделены по категориям, создадим в 1С два отдельных узла подключения KKM Offline. В каждом узле указывается своя организация, узел ссылается на свой каталог обмена. Однако этот метод требует физического разделения файлов обмена и настройки правил во Frontol для параллельного чтения нескольких каталогов.

3. Использование специализированных бэк-офисных систем

В специализированных решениях (например, линейки продуктов «Далион») функционал работы с несколькими организациями и группами печати при обмене с Frontol заложен штатно. При импорте транзакций система автоматически распределяет продажи и списания по соответствующим организациям.

Важные технические особенности работы

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

  1. Эквайринговый терминал: Терминал оплаты должен поддерживать режим «мультимерчант» (одновременная работа с несколькими банковскими счетами), либо должны быть установлены отдельные банковские терминалы для каждого ККТ.
  2. Оформление возвратов: Возвраты товаров во Frontol должны проводиться строго по ККТ той организации, на которой изначально был пробит фискальный чек, чтобы избежать искажения данных в ОФД.
← На главную