Aantal velden bepalen in subformulier

Status
Niet open voor verdere reacties.

Jean Hermans

Gebruiker
Lid geworden
21 feb 2008
Berichten
11
Databank voor labogegevens

Eerste tabel: Tbl_data : id: FormulierID automatische nummering
Tbl_labouitslagen: FormulierID --------FormulierID(Tbl_data) veel op één
LaboID tweede sleutel in tabel voor labo uitslag

Formulier of rapport
Hoofdformulier of hoofdrapport: tbl_data
subformulier Tbl_labouitslagen. Graag zou ik aantal records willen beperken tot de laatste 7 labouitslagen

Hoe?
 
Topwaarde

Baseer het subformulier op een query, voor zover dat nog niet gebeurd is. Stel deze query in op topwaarde 7. Je kunt dit doen door dubbel te klikken in de ontwerp-weergave in een leeg stuk op het bovenste blokje en dan de eigenschap top-waarde in te stellen op 7. Als je query in sql is geschreven, vervang dan de select door select top 7. Verder is het van belang dat de volgorde van je query zo is ingesteld dat de eerste 7 resultaten ook de 7 zijn die je wilt zien en dat de kolommen die opgehaald worden samen unieke combinaties opleveren, anders zou je meer dan 7 resultaten kunnen krijgen.
 
Dit kan maar dan heb ik de laatste 7 waarden van alle labouitslagen, terwijl ik infeite de laatste zeven uitslagen wil hebben bij de ID overeenkomstige van het hoofdformulier.
 
Hallo Jean,

open het rapport vanuit je formulier, via een knop.
Knop toevoegen in de ontwerpweergave van je formulier en de wizard volgen.

Daarna moet je de code in de Bij Klikken gebeurtenis van je knop aanpassen.
Je moet een konditie toevoegen aan de regel DoCmd.OpenReport, waarin je verwijst naar het ID uit je hoofdformulier.

Kijk even in Access Help, daarin staat de methode OpenReport duidelijk beschreven.
Of zoek hier even in het forum.

Groet,

Tardis
 
Over het hoofd gezien

Ja natuurlijk, dat had ik over het hoofd gezien.

Het zou nog wel kunnen, alleen moet je dan de koppeling tussen het hoofd-formulier en het subformulier weghalen en als criterium bij de query van het subformulier een verwijzing naar de ID van het hoofdformulier:
Code:
Forms!frmHoofd!ID
frmHoofd is de naam van je hoofdformulier, ID de naam van de ID op het hoofdformulier. Het zou kunnen dat je bij de oncurrent event, gebeurtenis bij aanwijzen, een regeltje code moet schrijven om je subformulier te verversen:
Code:
Me!frmSub.requery
maar dat moet je zelf even uitproberen.

Het lijkt misschien geen aantrekkelijke oplossing, maar de alternatieven zijn nog veel omslachtiger, vrees ik. Misschien dat anderen wel betere ideeen hebben?
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan