Форум по программам и оборудованию > > >

Как сделать, чтобы скидка по штрихкоду срабатывала 2-3 раза в день

23.11.2017 10:32


[ТЕМА ЗАКРЫТА]
Опции темы
13.08.2015 13:14
 
А можно на примере показать, как отобрать карты которые повторяются в оперативных чеках более 2-3 раз, и запрос на блокировку этих карт.
13.08.2015 14:29
 
еще раз, карты какие? клиентские/дисконтные/загружаемые из супермага?
13.08.2015 17:12
 
Цитата:
Павел Сосновских еще раз, карты какие? клиентские/дисконтные/загружаемые из супермага?
Загружаемые из супермага с установленным процентом скидки!
13.08.2015 19:25
 
Цитата:
Tiger А можно на примере показать, как отобрать карты которые повторяются в оперативных чеках более 2-3 раз, и запрос на блокировку этих карт.
Отобрать карты, повторяющиеся в чеках более одного раза получилось

select CODE, count(*) from SMOnlineDiscCard GROUP BY CODE HAVING count(*)>2;
13.08.2015 19:45
 
Цитата:
Tiger Отобрать карты, повторяющиеся в чеках более одного раза получилось

select CODE, count(*) from SMOnlineDiscCard GROUP BY CODE HAVING count(*)>2;
C блокировкой тоже разобрался

update SMDiscPers SET STOPPED=1 WHERE CODE='номер карты';
commit;


Вопрос как теперь объединить два запроса, чтобы отобранные карты блокировать?
13.08.2015 20:31
 
Цитата:
Tiger Отобрать карты, повторяющиеся в чеках более одного раза получилось

select CODE, count(*) from SMOnlineDiscCard GROUP BY CODE HAVING count(*)>2;
Цитата:
Tiger C блокировкой тоже разобрался

update SMDiscPers SET STOPPED=1 WHERE CODE='номер карты';
commit;


Вопрос как теперь объединить два запроса, чтобы отобранные карты блокировать?
Думаю так:

UPDATE SMDiscPers SET STOPPED=0 WHERE CODE IN (SELECT CODE from SMOnlineDiscCard GROUP BY CODE HAVING count(*)>2)

Поправьте если не прав!
13.08.2015 20:33
 
Цитата:
Tiger Думаю так:

UPDATE SMDiscPers SET STOPPED=0 WHERE CODE IN (SELECT CODE from SMOnlineDiscCard GROUP BY CODE HAVING count(*)>2)

Поправьте если не прав!
STOPPED=1, чтобы заблочить!
13.08.2015 21:25
 
Можно еще добавить условие
AND stopped = 0
Чтобы лишний раз не дергать уже заблокированные.
А для разблокировки если есть история то по ней, если нет можно создать доп таблицу - при выполнении первого запроса на блокировку параллельно писать номер карты туда.
26.08.2015 15:17
 
В продолжении темы.

Запрет организовал! Теперь хочется сделать отчет, в качестве конечных данных нужно видеть:

ФИО карта общая сумма покупки и сумма скидки по карте

Данные хочу тянуть их mysql УКМ4. Помогите найти таблицы, в которых храниться нужная мне информация?
26.08.2015 19:34
 
а в супермаге не получится?
там же есть какие-то отчеты по дисконтным картам
плюс можно в бизнес-анализе что-то такое накрутить...чеки со спецификацией

если все же в укме, то:
- trm_in_disc_std2perscard - card_code, name, discount_type - сами карты
- trm_out_receipt_discounts - card_code, discount_type, amount - скидки по чекам
- trm_out_receipt_header, trm_out_receipt_foter, trm_out_receipt_subtotal - заголовки, подвалы, подитоги чеков

надо все связать, отфильтровать видимо по времени, нормальности завершения чека,...

ФИО - trm_in_disc_std2perscard.name
карта - trm_in_disc_std2perscard.card_code
сумма покупки - trm_out_receipt_subtotal.amount/clear_amount - со всеми скидками/без скидок
сумма скидки по карте - trm_out_receipt_discounts.amount

надо еще посмотреть, что в суммах именно надо(где со скидками, где без, со всеми скидками, в т.ч. округлением или только со скидками по картам)


Опции темы



Часовой пояс GMT +3, время: 10:32.

Все в прочитанное - Донат - RSS - - Карта - Вверх

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