Форум OlegON > Программы и оборудование для автоматизации торговли > Кассовые программы > УКМ-4

Проблема с персональной скидкой на классификатор. : УКМ-4

22.11.2024 16:13


23.03.2009 07:13
Здравствуйте все, пожалуйста, помогите советом!

В магазине есть отлаженная система персональных скидок с применением алгоритма скидки "Персональная скидка на классификатор (УКМ 2.х)"
Данные о карточках загружаются из Супермага, с помощью конвертера "Стандартный 2 CSV импорт". Обратно в Супермаг соответственно поступают данные о продажах по этим карточкам ( при закрытии смены, в таблице trm_out_receipt_discounts с перечнем скидок для чеков, есть поле card_number).
Периодически данные о продажах с использованием карточек обрабатываются во внешней системе и возвращаются в Супермаг. Скидка может быть увеличена, уменьшена и т.д. Также во внешней системе о клиенте хранится больше информации - там есть ФИО, накоплен. сумма покупок, и др. данные, ключ - номер карточки.

1 Основной вопрос
Как в чеке вывести произвольную, связанную с карточкой, информацию из внешней системы, например ФИО владельца и его накопления?
При этом минимально реконструируя существующий процесс.

2 И дальше по мельче
Информация о скидке "Персональная скидка на классификатор (УКМ 2.х)" хранится в таблице сервера
trm_in_disc_std2perscard(Скидка УКМ2 на дисконтные карты), возможно ли получить доступ к элементам данной таблицы при печати чека?
Например к trm_in_disc_std2perscard.name trm_in_disc_std2perscard.amount

3
Есть ли более полное руководство по программированию чем "Инструкция по использованию языка Lua.doc"

4
Возможно ли средствами lua при печати чека считать и распарсить текстовый файл csv с данными?
Выполнить внешнюю программу и получить результат ее работы?
23.03.2009 09:02
Цитата:
airan
1 Основной вопрос
Как в чеке вывести произвольную, связанную с карточкой, информацию из внешней системы, например ФИО владельца и его накопления?
При этом минимально реконструируя существующий процесс.
Так как расчет накоплений в самом УКМ4 не ведется, то информации о накоплениях в УКм4 нет. В результате, всё, что ты захочешь напечатать имеет смысл закидывать при передаче информации в поле наименование скидки.

Цитата:
airan 2 И дальше по мельче
Информация о скидке "Персональная скидка на классификатор (УКМ 2.х)" хранится в таблице сервера
trm_in_disc_std2perscard(Скидка УКМ2 на дисконтные карты), возможно ли получить доступ к элементам данной таблицы при печати чека?
Например к trm_in_disc_std2perscard.name trm_in_disc_std2perscard.amount

discount.name, discount.increment не подходят?

Цитата:
airan 3
Есть ли более полное руководство по программированию чем "Инструкция по использованию языка Lua.doc"
Другого нет.

Цитата:
airan 4
Возможно ли средствами lua при печати чека считать и распарсить текстовый файл csv с данными?
Выполнить внешнюю программу и получить результат ее работы?
Скорее всего, это возможно. Только думаю, что скорость работы будет страдать.


24.03.2009 12:17
Спасибо большое за ответ.

Считывать файл я пробовал до того как вопрос задавать - не получилось.
Обратиться через lua к полям таблички из скидки "Персональная на классификатор" тоже не получилось.

Вероятно нужно пробовать еще... но пока решил сделать так:

Данные о карточках экспортируются из супермага как и раньше, скидку на "Персональная на классификатор" отключаю.

Пишу программу, которая периодически проверяет табличку "Персональная на классификатор" и заводит в базе сервера УКМ клиентов с айдишкой равной id карточки из таблицы скидки "Персональная на классификатор"(чтобы потом была возможность заводить-удалять в зависимости от состава таблички "Персональная на классификатор" которая будет экспортироваться стандартными средствами УКМ из Супермага).

Также у клиента заводим клубную карту с id == id карточки из таблицы скидки "Персональная на классификатор". Заводим скидку для клиента с клубной картой == скидке "Персональная на классификатор"(подходит алгоритм по накопителю..). Все это нужно сделать программно, дисконтных карт очень много.

Далее считываю внешний csv файлик с id карточки в кач. ключа и произвольной информацией, которую можно запихать в табличку clients, полей там много...
В чеке можно печатать эти произвольные данные о клиенте, я пробовал и есть примеры в receipt.lua...

Другой скрипт выгружает данные назад супермагу. В нем смотрим, если скидка была для зарегистрированного клиента, то подставляем id его клубной карты в нужное место(туда где раньше id карточки заведенной в супермаге печатался...эта часть практически готова, т.к. был образец)

В общих чертах собственно все...
Интересно заработает ли :)
24.03.2009 12:31
А почему бы просто не грузить клиентов из Супермага?
Не карты, а именно клиентов?
25.03.2009 02:09
Плохо продумана обратная выгрузка о продажах в супермаг. Скидка проведенная по зарег. клиенту не выгружается стандартным механизмом в супермаг.

Далее не продуман вопрос о централизованном пересчете накопительной суммы клиентов по всем магазинам.

Цитата:
Другой скрипт выгружает данные назад супермагу. В нем смотрим, если скидка была для зарегистрированного клиента, то подставляем id его клубной карты в нужное место(туда где раньше id карточки заведенной в супермаге печатался...эта часть практически готова, т.к. был образец)
Проблема в том, что выгруженная информация из УКМ о продажах, в супермаге полностью затирает предыдущую выгрузку по этой же смене.
Часовой пояс GMT +3, время: 16:13.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.