Skocz do zawartości

Dokument magazynowy przyjmujący towar, który widnieje na danym dokumencie sprzedaży - Zapytanie SQL

Polecane posty

Chciałbym zapytaniem SQL wyciągnąć informacje na temat pozycji dokumentu sprzedaży (towaru) skąd on się w ogóle wziął na stanie (jaki id/numer dokumentu magazynowego PW/PZ). Czy ktoś pomoże?

Poniżej dokładniejsze opisanie problemu:

1. Zajmujemy się produkcją opakowań kartonowych.
2. Kupujemy karton (materiał) od producenta z którego wycinamy pudełka (produkt).
3. W towarach mam karton (materiał) o symbolu 001 i pudełko (produkt) o symbolu 002.
4. Kupiłem 100 kartonów o symbolu 001. Utworzył się dokument handlowy FZ 1/07/2020 oraz dokument magazynowy PZ 1/07/2020.
5. Wyprodukowałem 20 pudełek o symbolu 001. Zrobiłem rozchód kartonu RW 1/07/2020 oraz przychód pudełka PW 1/07/2020. Oba dokumenty są powiązane.
6. Wyprodukowałem kolejne tym razem 30 pudełek o symbolu 002. Zrobiłem rozchód kartonu RW 2/07/2020 oraz przychód pudełka PW 2/07/2020. Oba dokumenty są powiązane.
7. Kupiłem 10 pudełek gotowych o symbolu 002. Utworzył się dokument handlowy FZ 2/07/2020 oraz dokument magazynowy PZ 2/07/2020.
7. Sprzedałem 40 pudełek. Utworzył się dokument handlowy FS 1/07/2020 oraz WZ 1/07/2020.
8. Wykonuje zestawienie sprzedaży poleceniem:

SELECT 
    tw__Towar.tw_Symbol As Symbol, 
    dok_NrPelny,
    dok_DoDokNrPelny,
    ob_Ilosc AS IloscSprzedanych
FROM dok__Dokument
JOIN dok_Pozycja on ob_DokMagId = dok_Id
JOIN tw__Towar on ob_TowId = tw_Id
JOIN tw_Stan on st_TowId = tw_Id

WHERE (dok_Typ = '11') -- WZ
        AND dok_DoDokId IS NOT NULL
        AND st_MagId = '1'
        AND YEAR(dok_datawyst) = '2020'
        AND MONTH(dok_datawyst) = '07'
        AND tw_Symbol = '002'


Wynik zapytania:

Cytat

Symbol    |dok_NrPelny       |dok_DoDokNrPelny    |IloscSprzedanych
002          |WZ 1/07/2020    |FS 1/07/2020              |40


Teraz potrzebuje zapytanie do bazy SQL, które sprawdzi z jakich przyjęć magazynowych (PZ/PW) został zaciągnięty towar 002 do sprzedaży na WZ 1/07/2020. Wynikiem powinien być:
PZ 2/07/2020
PW 2/07/2020

 

Cały ten problem wyniknął podczas próby wygenerowania zestawienia, z którego sprawdzę ilość zużytego kartonu (materiału) na podstawie sprzedaży pudełek (produktu) z danego okresu nie biorąc pod uwagę stanów, jakie zostają podczas produkcji. Z takiego zestawienie wiedziałbym ile schodzi danego kartonu np. na miesiąc i ile muszę domówić od producenta wg "prognozy".

Edytowane przez maniootek •
Link to postu

Na czym ma polegać ta "pomoc" ? Jak dowiedzieć się w jaki sposób działa program, jakie powiązania tworzy opisywałem niezliczoną ilość razy, dokumentacja bazy danych dołączona do pomocy do programu też będzie pomocna.

Link to postu
17 minut temu, Daniel Kozłowski napisał:

Na czym ma polegać ta "pomoc" ? Jak dowiedzieć się w jaki sposób działa program, jakie powiązania tworzy opisywałem niezliczoną ilość razy, dokumentacja bazy danych dołączona do pomocy do programu też będzie pomocna.

Kombinowałem z tabelą "Ruch towaru" ale tam nie ma informacji o jaką dostawę czy też przyjęcie chodzi.

Link to postu
×
×
  • Dodaj nową pozycję...