Forum Użytkownikow Subiekt GT
InsERT GT => Dodatki - zestawienia - sfera => Wątek zaczęty przez: Paweł Em w Czerwiec 11, 2021, 12:49:35
-
Hej wszystkim,
Krókie pytanie:
W której tabeli znajduje się informacja dot. bieżących zamówień do dostawców?( co jest zamówione?)
-
W tych samych co wszystkie inne dokumenty handlowe i magazynowe: dok__Dokument, dok_Pozycja.
-
Niestety nie mogę znaleźć, która to kolumna. Istnieje jakieś źródło gdzie znajdę co jest w jakiej tabeli?
Poniżej jest moje zapytanie które pokazuje stan wybranych towarów, w drugiej kolumnie liczy zapotrzebowanie z ostatniego miesiąca i właśnie chciałbym dodać trzecią kolumnę która będzie pokazywać ile danego towaru jest w zamówieniach do dostawców. Po wrzuceniu do excela miałbym pełną kontrolę nad tym.
SELECT T.tw_IdGrupa, T.tw_Symbol, T.tw_Nazwa, ST.st_Stan, Sprzedaz_miesieczna = ISNULL(SP.Sprzedaz, 0),T.tw_JednMiary
FROM tw__Towar T
INNER JOIN tw_Stan ST ON ST.st_TowId = T.tw_Id AND ST.st_MagId = 1
LEFT JOIN ( SELECT ob_TowId, Sprzedaz = SUM(dok_Pozycja.ob_Ilosc) FROM dok_Pozycja
LEFT JOIN dok__Dokument ON ob_DokMagId = dok_id WHERE dok_DataWyst BETWEEN DATEADD(day,-30,getdate()) AND GETDATE() AND dok_Typ = 13 AND dok_MagId = 1 AND ob_TowRodzaj = 1
GROUP BY ob_TowId ) SP ON T.tw_Id = SP.ob_TowId WHERE T.tw_Zablokowany = 0 AND T.tw_Rodzaj = 1 AND T.tw_IdGrupa IN(3) AND T.tw_Nazwa LIKE 'ory%' AND (T.tw_Nazwa LIKE '%PS%' OR T.tw_Nazwa LIKE '%PL%') ORDER BY T.tw_IdGrupa, T.tw_Symbol, T.tw_Nazwa, ST.st_Stan, Sprzedaz_miesieczna,T.tw_JednMiary
-
Opis tabel jest w helpie
-
Niestety nie mogę znaleźć, która to kolumna. Istnieje jakieś źródło gdzie znajdę co jest w jakiej tabeli?
Zacznij od przeczytania tego działu na forum, odpowiedź jest powtarzana do znudzenia.
-
Czytam opis struktury zbioru danych, gdzie widzę opisy co znajduje się w tabelach, jednak niewiele mi to mówi skąd wziąć co jest zamówione.
Widzę także że jest zestawienie "towary na zamówieniach" lecz po pierwszym odpaleniu profilera nie wiem w jaki sposób uzyskać potrzebną informację.
-
To sugeruje żeby jednak zamówić zestawienie u kogoś kto ma pojęcie o SQL.
-
Rozumiem, w sumie sam wykonałem zapytanie które potrzebuję, jednak wolałbym jakby to było w jednym zapytaniu a nie dwóch.
Podpowiedział by ktoś czy możliwe jest połączenie tych dwóch zapytań? a jak tak to udzielił wskazówki? Zależy mi na podnoszeniu swoich umiejętności.
SELECT T.tw_IdGrupa, T.tw_Symbol, T.tw_Nazwa, ST.st_Stan, Sprzedaz_miesieczna = ISNULL(SP.Sprzedaz, 0),T.tw_JednMiary
FROM tw__Towar T
INNER JOIN tw_Stan ST ON ST.st_TowId = T.tw_Id AND ST.st_MagId = 1
LEFT JOIN ( SELECT ob_TowId, Sprzedaz = SUM(dok_Pozycja.ob_Ilosc) FROM dok_Pozycja
LEFT JOIN dok__Dokument ON ob_DokMagId = dok_Id WHERE dok_DataWyst BETWEEN DATEADD(day,-30,getdate()) AND GETDATE() AND dok_Typ = 13 AND dok_MagId = 1 AND ob_TowRodzaj = 1
GROUP BY ob_TowId ) SP ON T.tw_Id = SP.ob_TowId WHERE T.tw_Zablokowany = 0 AND T.tw_Rodzaj = 1 AND T.tw_IdGrupa IN(3) AND T.tw_Nazwa LIKE 'ory%' AND (T.tw_Nazwa LIKE '%PS%' OR T.tw_Nazwa LIKE '%PL%')
ORDER BY T.tw_IdGrupa, T.tw_Symbol, T.tw_Nazwa, ST.st_Stan, Sprzedaz_miesieczna,T.tw_JednMiary
SELECT T.tw_Nazwa,P.ob_Ilosc
FROM dok__Dokument AS Dok
LEFT JOIN dok_Pozycja AS P ON ob_DokHanId=dok_Id
LEFT JOIN tw__Towar AS T ON [tw_Id]= ob_TowId WHERE Dok.dok_Typ = 15 AND Dok.dok_MagId = 1 AND (Dok.dok_Status <> 2) AND Dok.dok_StatusEx = 0 AND T.tw_Nazwa LIKE 'ory%' AND (T.tw_Nazwa LIKE '%PS%' OR T.tw_Nazwa LIKE '%PL%')
-
CANDY za ile mi takie zrobisz?
-
Nie wiem, bo nie wiem co to zestawienie ma robić.
Szkoda czasu na analizowanie kodu żeby zrozumieć intencje, zresztą to często prowadzi do finalnego "ale przecież ja chciałem czegoś innego".
Proszę o opis: co chcemy osiągnąć, jakie mają być kolumny i jakie filtry.
Może być na PW.