Форум OlegON > Программы и оборудование для автоматизации торговли > Системы автоматизации торговли > Супермаг Плюс (Супермаг 2000)

Ценник с учётом предела скидки и маркетинговой акции. : Супермаг Плюс (Супермаг 2000)

24.04.2024 9:08


24.10.2014 16:58
SMak
 
Здравствуйте.

Подскажите, как из БД выдернуть скидку для артикула с учётом групповых пределов скидки?
И как проверить артикул на участие в открытой МА?
Какие это таблицы? Или может кто уже такое делал?
24.10.2014 19:19
vdm
 
Вырезка из ценника в oracle reports.

Минимальная цена с учетом предела скидки на вид цены
Код:
select
       ROUND(t_pr.PRICE*((100-NVL(Supermag.SMGETDISCLIMITCARD(t_pr.ARTICLE, :P_PRICE_TYPE), 100))/100), 2) MIN_PRICE
...
  from SUPERMAG.TTPriceCard t_pr
Артикул в действующей акции, если
Код:
SUPERMAG.SMPRICES.SAVEDPRICE IS NOT NULL
Т.е. при включенном запрете скидок на акционный товар, мин. цену можно брать так:
Код:
select
       DECODE(p.SAVEDPRICE, NULL, 0, t_pr.PRICE) MIN_PRICE_A
...
  from SUPERMAG.TTPriceCard t_pr, SUPERMAG.SMPRICES p
 where t_pr.ARTICLE=p.ARTICLE AND p.STORELOC=:P_LOC AND p.PRICETYPE=:P_PRICE_TYPE
27.10.2014 12:53
SMak
 
а эта штука Supermag.SMGETDISCLIMITCARD проверяет все виды пределов скидок? ничего дополнительного не надо?
27.10.2014 13:26
vdm
 
Что значит "все виды"?

Функция берет предел скидки заданного артикула, по заданному виду цены, с учетом существования предела скидки на группу.
27.10.2014 16:14
SMak
 
Цитата:
vdm с учетом существования предела скидки на группу.
вот это и интересовало, спасибо :)
07.11.2014 11:34
SMak
 
FastReport. Ценник на основе примера с изменением размеров, запросов...
Что можно было такого накрутить, чтобы теперь при печати из см+ количество копий перемножалось? :/
[P_COPIES] в ценник выводит верно. Но количество ценников на листе равно P_COPIES * P_COPIES
07.11.2014 16:51
SMak
 
вот что с ним не так?
Вложения
Тип файла: rar ab_price_card_s.rar (3.0 Кб, 170 просмотров)
10.11.2014 17:17
akonev
 
у меня этот ценник вообще по ошибке валится.
будем исходить из того, что у тебя - работает.

"не то" - вот здесь:
Код:
select t.Article, t.Name, t.Country,t.Price,
t.UnitName, t.QtyPrint, t.BarCode,t.RUBNAME,
decode(t.PLU,null,'','PLU:  '||t.PLU) PLU,
ROUND(t_pr.PRICE*((100-NVL(Supermag.SMGETDISCLIMITCARD(t_pr.ARTICLE, :P_PRICE_TYPE), 100))/100), 2) MIN_PRICE
  from SUPERMAG.TTPriceCard t_pr, supermag.SVPriceCard t
 where t_pr.ARTICLE=t.ARTICLE 
order by 1
Код:
create or replace view svpricecard as
select  t.Article Article, t.Name Name  , t.CardComment CardComment,
				t.Country Country, t.Price Price, t1.UnitName UnitName,
				t1.Qty Qty, t1.QtyPrint QtyPrint,
				t1.BarCode BarCode, t1.IsScale IsScale, t1.PLU PLU,
				russianspell.PriceCardString(0,t.Price) RubSum,
				russianspell.PriceCardString(1)         RubName,
				russianspell.PriceCardString(2,t.Price) KopSum,
				russianspell.PriceCardString(3)         KopName,
				russianspell.PriceCardString(4,t.Price) PriceShort,
				russianspell.PriceCardString(5,t.Price) PriceFull,
				to_number(russianspell.PriceCardString(6)) PricePrec
		from TTPriceCard t, TTPriceCard1 t1
		where t.article = t1.article
в TTPriceCard каждая карточка отбирается столько раз, какое количество ты указал при печати.

svpricecard включает в себя выборку из TTPriceCard и поэтому в ней тоже каждая карточка столько же раз.

осталось связать их по артикулу и вуаля! каждая строка с артикулом из svpricecard повторилась при связывании столько раз, сколько раз этот артикул есть в TTPriceCard. количества перемножились.
10.11.2014 17:19
akonev
 
тебе зачем вообще TTPriceCard сдался в этом селекте?
вот так не то что-то выбирается?
Код:
select t.Article, t.Name, t.Country,t.Price,
t.UnitName, t.QtyPrint, t.BarCode,t.RUBNAME,
decode(t.PLU,null,'','PLU:  '||t.PLU) PLU,
ROUND(t.PRICE*((100-NVL(Supermag.SMGETDISCLIMITCARD(t.ARTICLE, :P_PRICE_TYPE), 100))/100), 2) MIN_PRICE
  from supermag.SVPriceCard t
order by 1
11.11.2014 14:07
SMak
 
О! Изначально зачем-то ставил, что-то брал из ТТ и забыл :/
Спасибо :)
Часовой пояс GMT +3, время: 09:08.

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