gifts2017

Обработка обмена между 1С: Розница 1.0 и Frontol с учётом скидок и накоплений

Опубликовал Сергей Красильников (groMalog) в раздел Обмен - Обмен с другими системами

Данная обработка основана на стандартной обработке обмена от 1С. Дополнительно к товарам выгружаются сегменты, дисконтные карты, скидки и накопления.

Возможности обработки:

0) не требуется изменений в конфигурации
1) собираются все работающие на момент выгрузки скидки и скидки, действие которых начнётся в будущем
2) все скидки из базы выгружаются как автоматические на позицию; выгрузка ручных скидок (на документ) настраивается в настройках оборудования
3) выгружаются все дисконтные карты и их владельцы
4) поддерживаемые настройки скидок:
- поддерживаются скидки суммой и процентом, надбавки и скидки
- поддерживаются накопительные скидки
- поддерживается ограничение скидки по получателю (только по дисконтным картам)
- поддерживается ограничение к сегменту номенклатуры (но не на сегмент) и по сегменту-исключению (см. ограничения!)
- поддерживается срок действия скидки
- поддерживается любая комбинация указанных выше настроек
5) загрузка данных о накоплениях реализована следующим образом:
- при загрузке создаётся документ "Корректировка записей регистров" с заполнением регистра "Продажи по дисконтным картам"
- в корректировку попадают позиции документов, в которых зарегистрирована карта клиента, но при условии, что на позицию нет других скидок не по карте клиента (настраивается, см. ограничения!)
6) при загрузке данных о накоплениях, если карта не найдена в базе, создаётся новая карта с соотвествующим номером, создаётся физическое лицо "Владелец карты N"
7) при выгрузке выводится информация о товаре с нулевой ценой
8) выгружается иерархия ставок
9) в настройках оборудования есть возможность включить отсев накоплений по карте (в накопления по карте не входят позиции документов, в которых присутствует скидка не по карте)
10) есть возможность выгрузки накоплений по картам, при этом накопительные скидки загружаются в Frontol именно как накопительные, поэтому нет необходимости частого обмена (при этом в Frontol не работает отсев накоплений по карте)

Ограничения:

0) (ограничение стандартной обработки, исправлю по первому желанию клиентов) В наименованиях товаров, клиентов, карт, скидок, сегментов должен отсутстовать символ ";"
1) Необходимо каждый раз выполнять полный обмен, иначе скидки на неизменившуюся номенклатуру потеряются
2) Для увеличения производительности Frontol и скорости обмена необходимо использовать как можно меньше сегментов-исключений, особенно при отсуствии основного сегмента
3) Если в настройках не выбрана выгрузка оборотов по картам в Frontol, то желательно выполнять обмен не реже раза в сутки, т.к. накопительные скидки переходят границу накопления только после обмена (без выгрузки оборотов в Frontol накопления не дублируются)
4) Вся иерархия ставок выгружается в корневую группу ставок с условием выбора "максимальная"

Настройка дополнительных возможностей:

1. Настройка Frontol для загрузки карт
Из-за невозможности загрузки в Frontol объектов "Вид карт", один экземпляр необходимо создать вручную. Для этого нужно зайти в Frontol Администратор, закладка "Справочники", справочник "Виды карт". Нажмите кнопку "Добавить". В поле наименование можно добавить что-нибудь вроде "Накопительная карта". Важно отметить галочку "Карты" в разделе "Авторегистрация", а также описать диапазон ваших карт в параметрах авторегистрации, чтобы у вас нельзя было зарегистрировать чужие карты. Раздел "Ввод карты" может заполнить настройщик оборудования.

2. Предварительная настройка Frontol для реализации накопительных скидок.

2.1 Если в Frontol ещё не настроены накопительные скидки, нужно создать заготовку через мастера:
зайти в Frontol Администратор -> закладка "Скидки и сценарии" -> мастер скидок -> кнопка со стрелкой вниз (переход на "Cкидки на суммы персональных накоплений") -> далее -> в поле "P, %" вводим 100 -> выбираем любую скидку в поле "Скидка, S1" -> далее
Будет показано окно с результатом работы мастера. Из него для настройки обработки нам необходимо запомнить следующие коды:
1) код сценария
2) код вида счетчика (накопления суммы)

2.2 Дополнительно: реализация счетчика накопления количества.
Если вам необходимы скидки, зависящие от накопления количества купленного товара, то необходимы дополнительные действия:
1) зайти на закладку "Скидки и сценарии", в справочник "Счетчики", нажать кнопку "Добавить"
2) наименование: Скидки на количество; авт. создание: карта
3) запомнить код создаваемого вида счетчика, нажать "ОК"
4) зайти на закладку "Скидки и сценарии", в справочник "Сценарии", зайти в созданный в п. 2 сценарий
5) изменить код на следующий (в данном случае код вида счетчика накопления суммы - 1, количества - 2):

function BeforeAct(AO, RO, E)
{
}
function AfterAct(AO, RO, E)
{
  switch(RO.ReceiptTypeCode)
  {
    case 1: // ПРОДАЖА
      RO.Counter.AddValueByTypeCode(1, RO.SummWD * 1.0000);
      RO.Counter.AddValueByTypeCode(2, RO.BuyCount * 1.0000);
      break;
    case 2: // ВОЗВРАТ
      RO.Counter.AddValueByTypeCode(1, -RO.SummWD * 1.0000);
      RO.Counter.AddValueByTypeCode(2, -RO.BuyCount * 1.0000);
      break;
    case 3: // АННУЛИР
      RO.Counter.AddValueByTypeCode(1, -RO.SummWD * 1.0000);
      RO.Counter.AddValueByTypeCode(2, -RO.BuyCount * 1.0000);
      break;
    case 4: // ОБМЕН
      RO.Counter.AddValueByTypeCode(1, RO.SummWD * 1.0000);
      RO.Counter.AddValueByTypeCode(2, RO.BuyCount * 1.0000);
      break;
  }
}

3. Настройка обработки.
1) ввести код вида карт из п. 1
2) если необходимо вести накопления в Frontol, то ввести код сценария, код вида счетчика накопления суммы (в поле "Код счетчика накопления суммы"), код вида счетчика накопления количества (если есть, в поле "Код счетчика накопления количества") из п. 2
3) при включенном флажке "Ограничивать накопления скидкой по карте (в 1С)" в создаваемые для учёта накоплений корректировки записей регистров не будут попадать позиции, на которые распространялись скидки, не привязанные к какой-либо карте; для реализации подобного поведения в Frontol необходимо модифицировать сценарии накопления, но этим вопросом я не занимался, поэтому инструкций не предоставляю;
4) в таблицу "Ручные скидки" необходимо внести ручные скидки, если таковые будут использоваться на рабочем месте кассира (все скидки, настроенные стандартными механизмами 1с, выгружаются как автоматические на позицию); с помощью поля "Группа скидок" можно контролировать взаимосвязь ручных скидок с автоматическими

Скачать файлы

Наименование Файл Версия Размер
Обработка 68
.zip 74,23Kb
17.10.13
68
.zip 74,23Kb Скачать
Форма настройки 33
.JPG 63,73Kb
05.08.13
33
.JPG 63,73Kb Бесплатно

См. также

Подписаться Добавить вознаграждение
Комментарии
1. Max Avramenko Avramenko (A_Max) 13.08.13 11:39
Мы свою под УТ 10.3 написали и решили вообще не использовать стандартный механизм 1С обмена с кассами. Слишком много ограничений. Тоже выгружается вся система скидок 1С, и суммы накоплений по картам фиксируются в ОтчётеККМ.
Плюс:
+ выгрузка системы скидок настроенной в 1С
+ выгрузка пользователей ККМ и печать бейджиков с ШК
+ работа с любыми типами складов (оптовый/НТТ/АТТ)
+ обмен через почту
+ созможность загрузки:
** последней смены
** диапазона смен
** диапазона дат
+ возможность разбиения загруженного отчёта по:
** сменам
** дням
** чекам - для каждого чека на кассе создастся чек в 1С
** по переоценке - если у товара в течении дня изменилась цена то будет сделан "срез" на этот момент
+ Опция создание документа "Возврат от покупателя"
+ Опция создания ПКО для каждого отчёта

Думал разместить тоже, но вот 1000р как-то ну очень мало. Да и вопрос гложет по поводу необходимости защиты от копирования.
2. Сергей Красильников (groMalog) 14.08.13 00:04
В моей обработке уклон сделан в сторону накопительных скидок, которые есть в 1С:Розница. В УТ 10.3 скидки гораздо менее функциональные (если не прав, прошу поправить). Расчёт также на небольшой розничный магазин, когда детализация отчёта не важна. Например, магазин одежды. Кстати, обработка подходит и для конфигурации "Розница 8. Магазин одежды и обуви", т.к. последняя является лишь дополнением к 1С:Розница.
По поводу обмена по почте. У Атол есть своя обработка обмена, поддерживающая данную функцию. Будет несложно допилить и её. Но с новыми возможностями цена будет расти;) Да и без них при повышении спроса тоже будет, так что спешите!
3. Сергей Красильников (groMalog) 14.08.13 00:08
Про защиту от копирования: вроде как не тот калибр, будут ли оправданы затраты? Да и с развитием 1с наши с вами обработки всё больше устаревают.
4. Max Avramenko Avramenko (A_Max) 14.08.13 11:55
Самое главное, что забыл написать в первом сообщении:
Удачи на поприще автоматизации розничной торговли :)

А по поводу устаревания....
Мы начали её делать ещё под 8.0 и с тех пор актуальность не потерялась.
Так что всё совсем не так уж хорошо с развитием у 1С в плане взаимодействия с другими системами.
5. Димон Димон (sytyj39) 12.12.13 20:18
(1) A_Max, может не совсем в тему... можно хотябы в кратце описать "обычную" схему проведения переоценки. Правда у меня УТ 10.3. Переоценку проводим в УТ (списание части товара и приход по новой цене - номенклатура та же самая), выгружаем на кассу, в итоге меняется цена вцелом по товару. Хочу разобраться, как надо правильно делать переоценку. Прошу заранее прощения за оффтоп.
6. Сергей Красильников (groMalog) 20.12.13 09:21
(5) sytyj39, А почему не личным сообщением? Оффтоп жуткий, удалите это кто-нибудь!
7. Евгений Мошков (MoshkovEV) 12.02.15 08:30