Forum Użytkownikow Subiekt GT

InsERT GT => Dodatki - zestawienia - sfera => Wątek zaczęty przez: Sandra w Maj 22, 2015, 21:40:36

Tytuł: Zestawienie dnia z podziałem na rodzaj płatności - filtr magazynu
Wiadomość wysłana przez: Sandra w Maj 22, 2015, 21:40:36
Witam serdecznie,

zaczynam dopiero przygodę z subiektem.
Na forum znalazłam taki kod:

Cytuj
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
                (dbo.fnMAKE_DOKPARAM(dok_Typ, dok_Podtyp)!=131073)
ORDER BY Data, dok_Id


podlicza dzień z podziałem na rodzaj płatności,
brakuje mi jedynie filtra magazynu (mam 2 MAD - Detaliczny i MAG - Główny)

Czy ktoś byłby w stanie mi dopisać brakującą linijkę czy dwie?

Z góry dziękuję :)

Tytuł: Odp: Zestawienie dnia z podziałem na rodzaj płatności - filtr magazynu
Wiadomość wysłana przez: birds22 w Maj 22, 2015, 22:13:16
Cytuj
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
                (dbo.fnMAKE_DOKPARAM(dok_Typ, dok_Podtyp)!=131073)
AND
dok_MagId = ({DB:Select mag_Id, mag_Nazwa from sl_Magazyn:magazyn:0:(wybierz)})
ORDER BY Data, dok_Id
Tytuł: Odp: Zestawienie dnia z podziałem na rodzaj płatności - filtr magazynu
Wiadomość wysłana przez: Sandra w Maj 24, 2015, 19:46:10
Wielkie dzięki! :)
Tytuł: Odp: Zestawienie dnia z podziałem na rodzaj płatności - filtr magazynu
Wiadomość wysłana przez: Sandra w Maj 31, 2015, 18:46:00
Pytanie - prośba:

po kilkudniowym użytkowaniu tego zestawienia okazało się, że wszystko działa, jeśli płatność jest gotówką/kartą/kredytem kupieckiem, a nie działa, jeśli paragon "zapłacono przelewem".

Jak to zmienić...?

Tytuł: Odp: Zestawienie dnia z podziałem na rodzaj płatności - filtr magazynu
Wiadomość wysłana przez: kamil i. w Sierpień 18, 2015, 13:55:43
podbijam i z góry dziękuję!
Tytuł: Odp: Zestawienie dnia z podziałem na rodzaj płatności - filtr magazynu
Wiadomość wysłana przez: milek99 w Marzec 08, 2017, 13:08:15
Wiem że stary temat ale też szukałem odpowiedzi na to pytanie :)

Trzeba dodać
Cytuj
CASE WHEN dok_typ in (14,6) THEN isnull(dok_KwPrzelew,0) * -1 ELSE isnull(dok_KwPrzelew,0) END as [Zap│acono przelewem],

Cytuj
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_KwPrzelew,0) * -1 ELSE isnull(dok_KwPrzelew,0) END as [Zapłacono przelewem],
   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
                (dbo.fnMAKE_DOKPARAM(dok_Typ, dok_Podtyp)!=131073)
AND
dok_MagId = ({DB:Select mag_Id, mag_Nazwa from sl_Magazyn:magazyn:0:(wybierz)})
ORDER BY Data, dok_Id

Pozdrawiam