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

Продажа по кредитным картам в разрезе НДС : Супермаг Плюс (Супермаг 2000)

23.11.2024 7:33


29.02.2012 13:04
Подскажите как из базы супермага выдернуть реализацию с возвратами по кредиткам в разрезе ставок НДС
Реализация по кредиткам вроде сидит в табле:SMCashCredCardChecks
но там тока по чекам, а позиций в чеках нет :(
29.02.2012 13:06
Зачем? Я каждый раз это спрашиваю на этот дурацкий вопрос...
29.02.2012 13:20
мне показалось проще выдернуть, чем понять логику :-D
Код:
select s.closedate as дата, s.name as магазин, s.desknum as касса, s.znum as Z, sum(s.summa) as сумма, o.name as операция, g.title as ставка, replace(replace(to_char(s.bn),'1','безнал'),'0','нал') as платеж, s.opcode as o, s.taxgroupid as t
from saoperation o,
     smtaxgroupdef g,
(select sum(i.totalsum) as summa, h.opcode, t.taxgroupid, h.locid, h.desknum, h.znum, h.checknum, nvl(sign(sum(b.totalsum)),0) as bn, z.closedate, l.name
from smcashz z, 
     smcashcheckitems i
       left join smcashcredcardchecks b on b.locid=i.locid and b.desknum=i.desknum and b.znum=i.znum and b.checknum=i.checknum,
     smcashchecks h,
     smcardtax t,
     smstorelocations l
where z.locid in (select id from smstorelocations where UPPER(name) like UPPER('%&Место_Хранения%'))
  and z.closedate>=to_date('&Дата_Нач','DD.MM.YYYY')
  and z.closedate<=to_date('&Дата_Кон','DD.MM.YYYY')
  and h.locid=z.locid and h.desknum=z.desknum and h.znum=z.znum
  and i.locid=h.locid and i.desknum=h.desknum and i.znum=h.znum and i.checknum=h.checknum
  and t.article=i.article and t.datefrom<=z.closedate and t.dateto>=z.closedate
  and l.id=z.locid
  and t.rgnid=l.rgnid
group by h.opcode, t.taxgroupid, h.locid, h.desknum, h.znum, h.checknum, z.closedate, l.name) s
where o.id=s.opcode
  and g.taxgroupid=s.taxgroupid
group by s.closedate, s.name, s.opcode, o.name, s.taxgroupid, s.bn, g.title, s.znum, s.desknum
order by s.closedate, s.desknum, s.znum ,s.opcode, s.bn, s.taxgroupid
у нас запускается из Query Reporter от Allround Automations когда те же самые цифирки не хочет давать укм4
02.03.2012 12:53
а если был комбинированный платеж? как вы определяете - какая часть чека оплачена картой - какая налом?
02.03.2012 13:02
правильный вопрос. никак.

не помню, чего там в свежих версиях, а у меня комбинированный платеж вообще в супермаге не разбивается.
из-за этого периодически расползается разбивка по видам платежа между см+ и укм4.
поэтому кассиров комбинированному платежу даже не обучают, а сразу говорят что так низзя и не бывает.

в штатном режиме разбивку по платежам и ндс бухи получают по отчету, который формируется в укм4.
вышеприведенный запрос используется эпизодически, когда укм4 почему-то не хочет отчитываться.
02.03.2012 16:12
Цитата:
Andrew_Konev не помню, чего там в свежих версиях, а у меня комбинированный платеж вообще в супермаге не разбивается.
из-за этого периодически расползается разбивка по видам платежа между см+ и укм4.
А это как, из-за чего?
Разбивка платежей в целом по чекам в СМ/УКМ уже очень давно.
Комбинированная оплата используется, отчеты по платежам берем СМ, разночтений с УКМ не припоминаю.
03.04.2012 17:00
Выгрузил я в 1с, начали сверять и выяснилось, что полно чеков с разбитыми платежами
может кто подскажет? где то же это должно быть
03.04.2012 17:59
В чем вопрос то.
Из УКМ не подходит, нужно из СМ?
Проверь это для начала.
Без налогов и суммы левые, но хоть видно будет, есть в чеках разбивка оплат по позициям или нет.
Код:
select ch.LocId as "MX",
       cr.name as "Кред. карта",
       ch.opcode "Операция",
       ci.ARTICLE as "Арт.",
       sc.name as "Наименование",
       SUM(ci.QUANTITY) as "Количество", 
       SUM(ci.TOTALSUM) as "Сумма"
  from supermag.smcashcheckitems ci, supermag.smcashchecks ch, supermag.smcard sc,
         supermag.SMCredCards cr
 where (ci.locid = ch.locid and ci.desknum=ch.desknum and ci.znum=ch.znum and ci.checknum=ch.checknum
       and ch.opcode in (1,3))
       and ci.article=sc.article and cr.id(+)=ci.credcardbrand
       and (ch.printtime between TO_DATE('01.01.2012','DD.MM.YYYY') and TO_DATE('07.01.2012','DD.MM.YYYY'))
       and ci.CREDCARDBRAND is not null
Group by ch.LocId, cr.name, ch.opcode, ci.article, sc.name;
Часовой пояс GMT +3, время: 07:33.

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