Forum Użytkownikow Subiekt GT
InsERT GT => Dodatki - zestawienia - sfera => Wątek zaczęty przez: kamilm758 w Sierpień 13, 2019, 08:03:58
-
Witam, Czy w Subiekcie mogę sprawdzić w jakich transakcjach zastosowano promocję(zmianę ceny) dla jakiejkolwiek pozycji? Np. Woda Mineralna kosztuje 2,00 zł, a jakiś kasjer dał rabat na paragonie 10%. Chciałbym zestawienie takich transakcji. Czy można gdzieś to sprawdzić?
-
Wbudowanego zestawienia nie ma, ale da się to wyciągnąć zestawieniem własnym.
Trzeba tylko pamiętać że zamiast 20 zł - 10% można po prostu wpisać 18 zł.
Robiłem takie zestawienie kiedyś dla jednego z klientów, więc jakby co zapraszam na PW
-
Chcę aby to zestawienie zwracało tego typu transakcje, tu zastosowano rabat na jednej pozycji(2,00%), próbuję napisać w SQL:
SELECT
CONVERT(VARCHAR(10),dok_DataWyst,121) as Data,
dok_NrPelny as Numer,
isnull(adr_Nazwa,'kontrahent nieokreślony') as Kontrahent,
CASE WHEN dok_typ in (14,6) THEN isnull(dok_KwGotowka,0) * -1 ELSE isnull(dok_KwGotowka,0) END as Gotówka,
CASE WHEN dok_typ in (14,6) THEN isnull( dok_KwDoZaplaty,0) * -1 ELSE isnull( dok_KwDoZaplaty,0) END as Przelew,
CASE WHEN dok_typ in (14,6) THEN isnull(dok_KwKarta,0) * -1 ELSE isnull(dok_KwKarta,0) END as Karta
FROM
dok__Dokument dok LEFT JOIN adr__Ewid adr ON (dok.dok_OdbiorcaId = adr.adr_IdObiektu AND adr.adr_TypAdresu = 1)
WHERE
(dok.dok_Typ IN (2,6,21,14))
AND
(dok_DataWyst BETWEEN {DR: Z okresu::})
AND(
NOT(dok_RabatProc=0)) //dodałem ten warunek!!!!!!!
and
(dok_MagId = 1)
AND
(dbo.fnMAKE_DOKPARAM(dok_Typ, dok_Podtyp)!=131073)
ORDER BY Data, dok_Id
Tego zestawienia używam do wyświetlenia transakcji i ich płatności. Dodałem warunek(komentarz z wykrzyknikami), aby brane były pod uwagę dokumenty z nie zerową promocją, lecz niestety po dodaniu tego warunku, nie wypisuje żadnych dokumentów.
-
Przecież rabat jest na pozycji dokumentu a do tychże pozycji nawet nie zaglądasz...
-
Czyli
SELECT
CONVERT(VARCHAR(10),dok_DataWyst,121) as Data,
dok_NrPelny as Numer,
isnull(adr_Nazwa,'kontrahent nieokreślony') as Kontrahent,
CASE WHEN dok_typ in (14,6) THEN isnull(dok_KwGotowka,0) * -1 ELSE isnull(dok_KwGotowka,0) END as Gotówka,
CASE WHEN dok_typ in (14,6) THEN isnull( dok_KwDoZaplaty,0) * -1 ELSE isnull( dok_KwDoZaplaty,0) END as Przelew,
CASE WHEN dok_typ in (14,6) THEN isnull(dok_KwKarta,0) * -1 ELSE isnull(dok_KwKarta,0) END as Karta
FROM
dok__Dokument dok LEFT JOIN adr__Ewid adr ON (dok.dok_OdbiorcaId = adr.adr_IdObiektu AND adr.adr_TypAdresu = 1)
WHERE
(dok.dok_Typ IN (2,6,21,14))
AND(EXISTS(SELECT 1 FROM dok_pozycja pz WHERE pz.ob_DokHanId=dok.dok_Id AND pz.ob_rabat!=0))
AND
(dok_DataWyst BETWEEN {DR: Z okresu::})
and
(dok_MagId = 1)
AND
(dbo.fnMAKE_DOKPARAM(dok_Typ, dok_Podtyp)!=131073)
ORDER BY Data, dok_Id
lecę po pozycjach dokumentów, i sprawdzam czy istnieją pozycję z niezerowym rabatem? jeśli istnieje chociaż jedna to wypisuję?