Возможности обработки:
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с, выгружаются как автоматические на позицию); с помощью поля "Группа скидок" можно контролировать взаимосвязь ручных скидок с автоматическими