Uitdaging Inventory in SQL Server

Status
Niet open voor verdere reacties.

Htt_wng

Gebruiker
Lid geworden
9 jul 2005
Berichten
58
Goedemorgen iedereen,

Ik heb weer een uitdaging. Op dit moment ben ik bezig met het maken van mijn voorraad systeem.

Het proces gaat als volg:

Er word grondstoffen van een leverancier aangevoerd naar de productielocatie. Na produceren worden deeindproducten in 3 soorten verschillende verpakkingen verpakt. Deze eindproducten word vervolgens opgeslagen in een magazijn waarna word geleverd aan een afnemer. Voor mijn certificering moet ik aan kunnen tonen wie de leverancier is geweest van mijn geleverde eindproducten. Ook willen ze de history zien van mijn voorraad.

De 3 belangrijkste tabellen waar het om gaat zijn:

tbl_Leverancier
Leverancier_naam
Leverancier_nummer
Etc.

Inslag (eindproducten die in de voorraad komt)
artikel_nummer
Inslag_aantalpallets
etc.

Afvoer (eindproducten die naar een afnemer gaat)
Artikel_nummer
Afvoer_aantalpallets
etc.

Hoe moet ik dit aanpakken. Ik wil namelijk de history bewaren van mijn inslag dus een mutatie in de inslag tabel is niet wenselijk.
Wie o Wie kan mij hierbij helpen???
 
Laatst bewerkt:
Volgens mij mis je nog wat tabellen; je wilt van een artikel kunnen zien wie de leveranciers zijn geweest. Ik vermoed dat je het dan hebt over de leveranciers van de grondstoffen, want in je vraag heb je het verder niet over leveranciers. Ook is niet duidelijk of één artikel 3 keer verpakt wordt, (plastic, kleine doos, grote doos) of in 3 verschillende verpakkingen wordt ingepakt. (per stuk, per 10, per 100 etc).

Je moet dus op zijn minst een tabel hebben waarin je het productieproces vastlegt (welke grondstoffen (met bijbehorende leverancier(s)) heb je nodig om één artikel te maken), en het feitelijke produceren: op welke dag wordt welk product in welke hoeveelheden gemaakt, en wie heeft de daarvoor benodigde grondstoffen geleverd?

Voorbeeldje: als je een nieuwe telefoon maakt, dan hoort daar een scherm bij en een kast. In het productieproces ligt dus vast dat een telefoon een scherm heeft en een kast. Daaraan gekoppeld heb je een tabel waarin je vastlegt dat Leverancier A, Leverancier B en Leverancier D schermen leveren, en Leverancier C, Leverancier D en Leverancier E kasten. Op 25-4 maak je dan 30 telefoons, waarvan de kasten geleverd worden door Leverancier E en de schermen door Leverancier A, en op 26-4 maak je 50 telefoons waarvan de kasten geleverd worden door Leverancier C en de schermen door Leverancier A.
In je rapportage zie je dan dat Leverancier A 80 schermen heeft geleverd, Leverancier E 30 kasten en Leverancier C 50 kasten.

Is dat ongeveer wat je bedoelt?
 
Hoi Octafish,

Het productieproces is gelukkig simpeler dan jou voorbeeld. We maken gebruik van 1 grondstof voor ons eindproduct. Maar we hebben verschillende leverancier die dezelfde grondstof levert. Op het moment dat een grondstof word aangeleverd bij onze productielocatie word er bijgehouden wie de leverancier is en het aantal kg. Elke vracht grondstof komt van 1 leverancier. Na het produceren word een keuze gemaakt door de productiemedewerkers of het verpakt word in een 25 kg zak of 1000kg bigbags en word deze in de magazijn geplaatst. Op het moment dat een klant een bestelling plaatst, wordt de eindproduct uit de magazijn gehaald en wordt het geleverd aan de klant. Voor de certificering is het belangrijk dat wij het hele proces kunnen volgen van leverancier tot aan de klant. We moeten bijhouden wie de leverancier is van ons eindproduct en waar het naar toe is gegaan.

Ik heb een foto bijgevoegd zodat het meer duidelijk word. Inslag tabel is in feite het tabel waarbij word aangegeven wat uit het productie is gekomen en in het afvoertabel staat wat er is afgenomen door de klant.

Schermafbeelding 2017-04-26 om 14.59.17.png
 
Het is mij gelukt :D Ik heb het inslag_ID als FK gebruikt in mijn afvoer tabel. Maar nou wil ik de voorraad berekenen. dit is dus aantal pallets dat in is gegaan min het aantal pallets dat eruit is gegaan. Helaas werkt mijn query nog niet goed.

In mijn magazijn heb ik het volgende staan:
Inslag_id Inslag_aantalpallets
1 2
2. 8

In mijn afvoer het ik de volgende staan:
afvoer_id Inslag_id afvoer_aantalpallets
1 1 2
2 2 3
3 2 3

Ik heb de volgende scriptie gemaakt:

Select
inslag.inslag_id, CAST(inslag.inslag_aantalpallets as numeric)-CAST (afvoer.afvoer_aantalpallets as numeric) as voorraad
From inslag
Inner join afvoer on inslag.inslag_id=Afvoer.inslag_id

Dit is wat er uitkomt
inslag_id voorraad
1 0
2 5
2 5

Voorraad klopt dus niet want in feite zijn er 6 pallets weggegaan van inslag_id 2 dus in totaal zal er nu 2 moeten staan.
Heb je misschien een tip welke tool ik moet gebruiken om een invoerscherm voor het database. Invoerscherm wil ik een wegomgeving hebben
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan