Berekend veld berekenen in keuzelijst

Status
Niet open voor verdere reacties.

john64

Gebruiker
Lid geworden
12 jun 2011
Berichten
268
Goedemorgen
In een databaseformulier heb ik een aantal keuzelijsten, waarbij de inhoud van kzl2 afhankelijk is van de gekozen regel in kzl1.
Dat werkt prima.
In kzl1 heb ik een een testen staan, waarbij in kzl2 de data staan waarop deze testen uitgevoerd zijn.
Nu wil ik in kzl2, naast de datum een extra kolom ("type certificering") laten zien gebaseerd op de recordset die vertoond wordt in kzl2. Achter de 'oudste' datum moet in die extra kolom "initiele certificering" komen te staan, achter alle overige data in kzl2 ' hercertificering" .
Hoe krijg ik dat voor elkaar.
Heb het geprobeerd om in de betrokken query te werken met groups en dan te controleren op waarde van de datum: is deze gelijk aan de kleinste waarde in de recordset, dan toon "initieel", anders "her"
Lukt nog niet echt.
Moet er eerst een aparte query gemaakt worden die kleinste waarde bepaald ?
Wie kan mij op weg helpen?

mvg
John
 
Groeperen gaat hier niet werken. Je kunt met DMin de eerste datum ophalen met een voorwaarde en die datum vergelijken met het datumveld. Dus daar maak je dan een IIF op.
 
Geprobeerd om in query in te voeren

Code:
Type certificering: IIf([DatumSessie]=DMin([DatumSessie];[kzlCertificeringsdata]);"init";"her")

maar "dat snapt ie niet"

Welk domain met je als 2e parameter in functie Dmin invoeren. De waarde van de datumsessie moet dus vergeleken worden met de kleinste waarde in de recordset die in de kzl vertoond wordt.

mvg
John
 
Wat is [kzlCertificeringsdata]? Riekt als een keuzelijst, niet als een tabel...
 
Correct.
In deze keuzelijst wordt op basis van een 2-tal andere tabellen de data gefilterd die gelden voor de test die in de eerste keuzelijst gekozen is.
de [kzlCertificeringsdata] die hier bedoelt wordt, laat dus meerdere kolommen zien, waaronder datumsessie. Ik wil naast de datum laten zien of dit een initiele of hercertificering is. In dit keuzeveld wil ik alleen laten zien of de betrokken certificering init of her is, maar het is uiteindelijk van belang voor het uitdraaien van certificaten; hierop moet een vermelding komen of dit certificaat uitgereikt is basis van initiele certificering of hercertificering.

Kan je misschien iets met kzlCertificeringsdata.Itemdata(..) doen ? Vergelijken met de kolom waar de datum in staat ?
 
D-functies werken (daar staat die D voor) op de database, lees: tabellen. Je kunt dus nooit iets opzoeken in een andere keuzelijst. Maar dat hoeft ook niet: de datum die je zoekt (de startdatum) staat nu eenmaal in een tabel. Dus daar moet je hem ook uithalen. Wél heb je verschillende groepen in die tabel staan, die je filtert met je eerste keuzelijst. Dus om de juiste DMin te vinden (zou je niet filteren met DMin dan krijg je de eerste datum uit de hele tabel) moet je de eerste keuzelijst als criterium meegeven.
 
Inmiddels gelukt. Heb een losse functie gemaakt die minimum datum van de records in de keuzelijst bepaalt. Vervolgens query zodanig aangepast dat er een nieuwe kolom getoond wordt waarin datum vergeleken wordt met de minimum datum

thxs voor meedenken
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan