Ik werk nu een tijdje met Crystal Reports op een Oracle database maar loop tegen hetvolgende probleem aan. En dit is niet zozeer CR maar misschien een gevolg van hoe databases werken. In het voorbeeld zal ik de tabellen vereenvoudigen.
Tabel 1 bevat klantnummer en klantnaam
Tabel 2 bevat klantnummer, kortingpercentage, ingangsdatum korting, einddatum korting
Nu wil ik een rapport bouwen met álle klanten en daarbij de eventuele korting. Er zijn dus klanten zonder korting.
Men neme uit tabel 1 het klantnummer en naam, en uit tabel 2 het kortingspercentage. Daarvoor komen enkel waarden bij klanten die ook daadwerkelijk in tabel 2 voorkomen, aangezien klanten zonder korting niet in tabel 2 voor komen. Tot zover gaat het goed.
Maar nu heeft een klant een korting-periode afgerond en een nieuwe gestart. Daardoor wordt op het klantnummer in tabel 2 twee regels gevonden en weergegeven (de oude korting en de nieuwe). Nu wil ik echter alleen de nu geldende zien.
Een selectie op bijv. einddatum korting werkt niet, want dan verdwijnen óók de klanten die uberhaupt geen korting hadden, omdat daar geen einddatum bij staat.
Hoe krijg ik het voor elkaar om óf te selecteren op "en de eindatum en/of leeg" óf hoe maak ik een formule die een waarde koppelt aan een "leeg" kortingsveld (van klanten die niet in tabel 2 voor komen).
Hopelijk is het een beetje duidelijk.
Tabel 1 bevat klantnummer en klantnaam
Tabel 2 bevat klantnummer, kortingpercentage, ingangsdatum korting, einddatum korting
Nu wil ik een rapport bouwen met álle klanten en daarbij de eventuele korting. Er zijn dus klanten zonder korting.
Men neme uit tabel 1 het klantnummer en naam, en uit tabel 2 het kortingspercentage. Daarvoor komen enkel waarden bij klanten die ook daadwerkelijk in tabel 2 voorkomen, aangezien klanten zonder korting niet in tabel 2 voor komen. Tot zover gaat het goed.
Maar nu heeft een klant een korting-periode afgerond en een nieuwe gestart. Daardoor wordt op het klantnummer in tabel 2 twee regels gevonden en weergegeven (de oude korting en de nieuwe). Nu wil ik echter alleen de nu geldende zien.
Een selectie op bijv. einddatum korting werkt niet, want dan verdwijnen óók de klanten die uberhaupt geen korting hadden, omdat daar geen einddatum bij staat.
Hoe krijg ik het voor elkaar om óf te selecteren op "en de eindatum en/of leeg" óf hoe maak ik een formule die een waarde koppelt aan een "leeg" kortingsveld (van klanten die niet in tabel 2 voor komen).
Hopelijk is het een beetje duidelijk.