Tabel met datum records

Status
Niet open voor verdere reacties.

test1000

Gebruiker
Lid geworden
7 jul 2017
Berichten
258
Hoi,

Ik heb een tabel A met veld Datum en andere velden.

Tabel A :

Datum ARTIKEL PRIJS
01/01/2020
10/01/2020
20/01/2020

Nu heb ik een andere tabel B die gegevens uit tabel A moet halen maar ik het is niet de juiste datum.
Hiermee bedoel ik ik heb een record in tabel B met datum 12/01/2020.
Dan wil ik het record uit tabel A van 10/01/2020.
Heb ik in tabel B een datum van 08/01/2020 dan het record van tabel A van 01/01/2020

Dus als de datum van tabel B niet overeen komt de eerst lagere datum nemen van tabel A.
Ivm 12/01/2020 is 10/01/2020 de eerst lagere datum.

Op welke manier kan ik dit opvangen ?
 
Dat loopt fout bij een datum die geen lagere datum heeft; gebruikelijk is om de andere kant op te werken :). Je zult dus op zijn minst een dummy record in Tabel A moeten hebben, die je dan óók nog eens duidelijk maakt dat de geretourneerde waarde onzin zijn. Of er 100% zeker van zijn dat die situatie niet kan voorkomen.
De oplossing ligt verder in een query op basis van een Cartesisch product, waarbij je de datum van Tabel B vergelijkt met de datum uit Tabel A.
 
De gemakkelijkste oplossing voor prijslijsten is 2 data : DatumGeldigVan en DatumGeldigTot. Dit maakt de queries ook veel sneller.

voorbeeld
Arikelnr Prijs GeldigVan GeldigTot
AB01 100 1/1/2020 9/1/2020
AB01 110 10/1/2020 19/1/2020
AB01 120 20/1/2020 30/12/2020

Als er geen einddatum is wordt meestal verondersteld dat de prijs momenteel nog geldig is.
Om ervoor te zorgen dat er geen overlappende tarieven zijn kan je kontroles inbouwen in het formulier waarmee je de prijzentabel voedt.
 
Dan nóg heb je een cartesisch product nodig :). Overigens geef ik in mijn cursus zowel een voorbeeld van prijzen met begin- en einddatum, en van prijzen opzoeken op basis van één datum. Ze zijn beiden even snel in het gebruik.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan