🏭 Inkoop

Inkooporders, inkoopfacturen en magazijnontvangsten van leveranciers

Inkoopproces: De inkoopcyclus is: Bestelling (tabBestelKop/Regel) → Ontvangst (tabMagazijnOntvangsten) → Inkoopfactuur (tabInkoopfactuurKop/Regel). De leverancier is altijd een tabNaw-record met het correcte soorttype.
tabBestelKop
Koptabel inkooporders (bestellingen aan leveranciers)
KingSystem
#KolomTypeNullableBeschrijving
1BstKopGidintegerNOT NULL PKUnieke identifier van de bestelling
2BstKopNummernumeric(10)NOT NULLBestelnummer (zichtbaar voor gebruiker)
3BstKopNawGidintegerNOT NULL FK→tabNawLeverancier (NAW-record)
4BstKopMagGidintegerNOT NULL FK→tabMagazijnOntvangstmagazijn
5BstKopValNummerintegerNOT NULL FK→tabValutaValuta van de bestelling
6BstKopRelGidintegerNULL FK→tabRelatieContactpersoon bij leverancier
7BstKopRelGidInkoperintegerNULL FK→tabRelatieInterne inkoper die de bestelling heeft geplaatst
8BstKopAdrGidintegerNULL FK→tabAdresLeveradres van de leverancier
9BstKopNawGidAfleveringintegerNULL FK→tabNawAfwijkend afleveradres-NAW (directe levering)
10BstKopAanmaakDatumtimestampNOT NULLDatum/tijd van aanmaken bestelling
11BstKopBestelDatumdateNULLOfficiële besteldatum
12BstKopBestelTijdtimeNULLBesteltijd
13BstKopAfleverDatumdateNULLGevraagde afleverdatum
14BstKopIsGoedgekeurdsmallintNULLBestelling goedgekeurd (0=nee, 1=ja)
15BstKopGoedgekeurdDoornchar(40)NULLNaam van de goedkeurder
16BstKopGoedgekeurdOptimestampNULLDatum/tijd van goedkeuring
17BstKopIsVerwerktsmallintNULLBestelling verzonden naar leverancier (0=nee, 1=ja)
18BstKopIsVolledigOntvangensmallintNULLVolledig ontvangen (0=nee, 1=ja)
19BstKopIsVolledigGeboektsmallintNULLVolledig geboekt in grootboek (0=nee, 1=ja)
20BstKopLvcNummerintegerNULL FK→tabLeveringsConditieLeveringscondities
21BstKopBtcNummerintegerNULL FK→tabBetalingsConditieBetalingscondities bij leverancier
22BstKopReferentielong nvarcharNULLOnze referentie / opmerkingen bij de bestelling
23BstKopLastModifiedtimestampNULLTijdstip van laatste wijziging
tabBestelRegel
Bestelregels – één record per artikel op een inkooporder
KingSystem
#KolomTypeNullableBeschrijving
1BstRglGidintegerNOT NULL PKPrimaire sleutel
2BstRglBstKopGidintegerNOT NULL FK→tabBestelKopBijbehorende bestelkop
3BstRglNummerintegerNOT NULLRegelnummer binnen de bestelling
4BstRglSoortsmallintNOT NULLRegelsoort:
0 = Tekst
1 = Tarief
2 = Artikel
5BstRglArtGidintegerNULL FK→tabArtikelBesteld artikel
6BstRglArtPartijGidintegerNULL FK→tabArtikelPartijArtikelpartij (indien partijregistratie)
7BstRglBtwCodeintegerNULL FK→tabBtwBTW-code
8BstRglArtikelNummerLeveranciernchar(20)NULLArtikelnummer bij de leverancier
9BstRglEANcodenchar(30)NULLEAN-code van het artikel
10BstRglInkoopEenheidnchar(20)NULLMaateenheid bij inkoop (bijv. "doos", "pallet")
11BstRglVoorraadEenhedenInInkoopEenheidnumeric(15)NULLOmrekeningsfactor: hoeveel voorraadeenheden per inkoopeenheid
12BstRglAantalBesteldnumeric(15)NULLBesteld aantal (in inkoopeenheden)
13BstRglAantalOntvangenInVoorrEenhnumeric(15)NULLReeds ontvangen aantal (in voorraadeenheden)
14BstRglAantalNogTeOntvangenInVoorrEenhnumeric(15)NULLNog te ontvangen aantal
15BstRglPrijsnumeric(15)NULLInkoopprijs per eenheid
16BstRglPrijsPernumeric(15)NULLPrijs per hoeveel eenheden
17BstRglKortingPercentagenumeric(15)NULLKortingspercentage
18BstRglKortingBedragnumeric(15)NULLKortingsbedrag
19BstRglAfleverdatumdateNULLGewenste afleverdatum voor deze regel
20BstRglOmslong nvarcharNULLOmschrijving / tekst bij de bestelregel
21BstRglLastModifiedtimestampNULLTijdstip van laatste wijziging
tabInkoopfactuurKop / tabInkoopfactuurRegel
Inkoopfacturen van leveranciers
KingSystem
Kolom (Kop)TypeNullableBeschrijving
IfkGidintegerNOT NULL PKPrimaire sleutel inkoopfactuurkop
IfkNawGidintegerNOT NULL FK→tabNawLeverancier
IfkValNummerintegerNOT NULL FK→tabValutaValuta van de inkoopfactuur
IfkBtcNummerintegerNULL FK→tabBetalingsConditieBetalingscondities
IfkFactuurNummernchar(40)NOT NULLFactuurnummer van de leverancier
IfkFactuurdatumdateNOT NULLFactuurdatum op de leveranciersfactuur
IfkVervaldatumdateNOT NULLBetaaltermijn / vervaldatum
IfkOmschrijvingnchar(40)NULLInterne omschrijving van de inkoopfactuur
IfkFactuurbedragExclBTWnumeric(15)NOT NULLTotaalbedrag factuur exclusief BTW
IfkTotaalBtwnumeric(15)NOT NULLTotaal BTW-bedrag op de factuur
IfkIsGoedgekeurdsmallintNOT NULLFactuur goedgekeurd voor betaling (0=nee, 1=ja)
IfkGoedgekeurdDoornchar(40)NULLNaam van de goedkeurder
IfkGoedgekeurdOptimestampNULLDatum/tijd van goedkeuring
IfkIsVerwerktsmallintNULLGeboekt in grootboek (0=nee, 1=ja)
IfkReferentienummernchar(40)NULLEigen referentienummer / inkoopordernummer
IfkBetalingskenmerknchar(140)NULLBetalingsreferentie voor SEPA-overschrijving
IfkAangemaaktDoornchar(40)NULLGebruiker die de factuur heeft ingevoerd
IfkLastModifiedtimestampNULLTijdstip van laatste wijziging
Kolom (Regel)TypeNullableBeschrijving
IfrGidintegerNOT NULL PKPrimaire sleutel
IfrIfkGidintegerNOT NULL FK→tabInkoopfactuurKopBijbehorende inkoopfactuurkop
IfrArtGidintegerNULL FK→tabArtikelArtikel op de factuurregel
IfrBtwCodeintegerNULL FK→tabBtwBTW-code
IfrRegelNrintegerNOT NULLRegelnummer op de inkoopfactuur
IfrRegelSoortsmallintNOT NULLRegelsoort:
0 = Tekst
1 = Tarief
2 = Artikel
IfrAantalnumeric(15)NULLGefactureerd aantal
IfrInkoopeenheidnchar(20)NULLInkoopeenheid
IfrPrijsnumeric(15)NULLPrijs per eenheid
IfrPrijsPernumeric(15)NULLPrijs per hoeveel eenheden
IfrKortingPercentagenumeric(15)NULLKortingspercentage
IfrRegeltotaalExclBtwnumeric(15)NOT NULLRegeltotaal exclusief BTW
IfrOmslong nvarcharNULLOmschrijving van de factuurregel
IfrLastModifiedtimestampNULLTijdstip van laatste wijziging
tabMagazijnOntvangstenKop / tabMagazijnOntvangstenDetail
Ontvangstregistratie van inkooporders in het magazijn
KingSystem

Bij ontvangst van een bestelling wordt een ontvangstbon aangemaakt die de werkelijk ontvangen aantallen vastlegt. Deze ontvangst koppelt terug aan de bestelregel.

Kolom (Kop)OmschrijvingKolom (Detail)Omschrijving
MokGidPK ontvangst-kopModGidPK ontvangst-detail
MokBstKopGidFK → tabBestelKopModMokGidFK → tabMagazijnOntvangstenKop
MokNawGidFK → tabNaw (leverancier)ModBstRglGidFK → tabBestelRegel
MokMagGidFK → tabMagazijnModArtGidFK → tabArtikel
MokOntvangstDatumDatum van ontvangstModAantalOntvangenOntvangen aantal
MokOntvangenDoorNaam van de ontvangerModLocGidFK → tabLocatie (opslaglocatie)
MokLastModifiedTijdstip laatste wijzigingModLastModifiedTijdstip laatste wijziging
Inkoopprocesstroom
Hoe tabellen samenhangen in het inkoopproces

Processtroom inkoop

tabNaw (leverancier)──1:N──>tabBestelKopLeverancier heeft meerdere bestellingen
tabBestelKop──1:N──>tabBestelRegelBestelling heeft meerdere artikelregels
tabBestelRegel──N:1──>tabArtikelBestelregel verwijst naar artikel
tabBestelKop──1:N──>tabMagazijnOntvangstenKopBestelling heeft meerdere ontvangstbonnen
tabBestelRegel──1:N──>tabMagazijnOntvangstenDetailBestelregel koppelt aan ontvangstdetails
tabNaw (leverancier)──1:N──>tabInkoopfactuurKopLeverancier stuurt inkoopfacturen
tabInkoopfactuurKop──1:N──>tabInkoopfactuurRegelInkoopfactuur heeft meerdere regels
tabInkoopfactuurKop──>tabJournaalPostNa verwerking aangemaakt als grootboekboeking
SQL-voorbeelden
Praktische query's voor de inkoopmodule

Openstaande bestellingen (nog niet volledig ontvangen)

SELECT b.BstKopNummer, b.BstKopBestelDatum, b.BstKopAfleverDatum, lev.AdrNaam1 -- leveranciersnaam, r.BstRglAantalBesteld, r.BstRglAantalNogTeOntvangenInVoorrEenh, a.ArtCode, a.ArtOms FROM KingSystem.tabBestelKop b JOIN KingSystem.tabBestelRegel r ON r.BstRglBstKopGid = b.BstKopGid JOIN KingSystem.tabArtikel a ON a.ArtGid = r.BstRglArtGid JOIN KingSystem.tabAdres lev ON lev.AdrNawGid = b.BstKopNawGid WHERE b.BstKopIsVolledigOntvangen = 0 AND r.BstRglAantalNogTeOntvangenInVoorrEenh > 0 ORDER BY b.BstKopAfleverDatum

Te betalen inkoopfacturen

SELECT i.IfkFactuurNummer, i.IfkFactuurdatum, i.IfkVervaldatum, lev.AdrNaam1 -- leveranciersnaam, i.IfkFactuurbedragExclBTW, i.IfkTotaalBtw, i.IfkReferentienummer FROM KingSystem.tabInkoopfactuurKop i JOIN KingSystem.tabAdres lev ON lev.AdrNawGid = i.IfkNawGid WHERE i.IfkIsGoedgekeurd = 1 AND i.IfkIsVerwerkt = 0 -- nog niet geboekt ORDER BY i.IfkVervaldatum