Rapport op basis van criteria

Status
Niet open voor verdere reacties.

Scubaman

Gebruiker
Lid geworden
19 mrt 2010
Berichten
99
Goede middag,

ik schiet aardig op met mijn database.

Ik wil de mogelijkheid biden om een rapport te maken op basis van verschillende criteria. Nu heb ik "een vaste" keuze, maar wil graag dat er gekozen kan worden.

Ik heb 5 Velden (korting = € veld), 2e kind, incasso, vooraf termijnen en contant (ja/nee velden)
Als het mogelijk is zou ik kunnen laten kiezen uit een of meer velden en dan een rapport willen zien.

IS dit mogelijk? En zo zou iemand me een zetje in de goede richting willen geven. Heb geen kaas gegeten van VBA en heb van Octafish zijn voorbeeld in de cursus bestudeerd, maar bak er voor mezelf niets van.


Bedankt
 
Als je niet wilt programmeren, en toch flexibele criteria wilt gebruiken, dan moet je die opnemen in de onderliggende query van je rapport. Heb je hulp nodig, dan lijkt mij een voorbeeldje wel wenselijk.
 
Hallo Michel,

dank je wel voor je snelle antwoord.


Zou wel willen programmeren, maar wet niet hoe.


Ik heb nu vier verschillende rapporten gemaakt, (via een queries) maar flexibele criteria lijkt me toch gemakkelijker. Hoef ik ook maar een rapport te maken.:)
Heb nu een rapport met contante betalingen, vooraf, incasso en termijnen. Zou in principe nog meer rapporten moeten maken als ik elke combinatie zou willen gebruiken. een voorbeeldje zou natuurlijk super zijn, dan kan ik van daar uit proberen verder te gaan.
 
Ik dacht meer andersom: een voorbeeldje van jouw kant ;)
 
Oh sorry,


verkeerd begrepen. Wil je een zip bestand van de hele database?
 
Alles wat nodig is voor je vraag. Dus in ieder geval de tabellen en het rapport.
 
Opsplitsen in brokken van 100kb met WinRar, of op een site als mijnbestand.nl neerzetten. In het laatste geval hoef je 'm ook niet te zippen.
 
En hoe stuur je het rapport aan? Hij opent met een formulier... En welk rapport wil je als basis gebruiken?
 
Laatst bewerkt:
Heb in het formulier overzichten alle te printen en te mailen rapporten gezet.


Deze rapporten zijn gemaakt via 4 verschillende queries

Ik had het idee om dat te wijzigen, maar weet niet hoe, zoals ik hierboven al beschreven heb. Er is dus nog geen rapport dat werkt zoals ik dat graag wil. Hoop dat ik me duidelijk gemaakt heb.
 
Maar waar is dan het formulier waarop je de selecties wilt maken? Dat zie ik ook niet.
 
mmm,


dat klopt, want ik heb geen idee waar ik beginnen moet.

Kan natuurlijk wel alle velden op een formulier zetten, dat is niet zo moeilijk. Maar dan, weet niet welke kant ik vandaar uit moet.
Zet ik alle 4 queries op het formulier, of zet ik alleen de velden uit de tabel, natuurlijk met naam etc op een formulier.
 
Laatst bewerkt:
Zou natuurlijk zo'n formulier kunnen maken. Of alleen het onderste gedeelte. Maar zoals ik al zei, geen idee hoe en waar te beginnen.
 

Bijlagen

  • Schermafbeelding 2013-06-29 om 19.05.39.png
    Schermafbeelding 2013-06-29 om 19.05.39.png
    20,5 KB · Weergaven: 32
Zoals ik eerder al zei (en wat ook in de cursus wordt uitgelegd) is een generiek rapport afhankelijk van gegevens die je selecteert, en waarop je het rapport filtert. Die moet je dan wel kunnen selecteren. Dus zonder formulier waarop de door jouw gewenste filteropties staan, gaat het zowiezo niet werken. Omdat je rapporten hebt op basis van Cursistgegevens, lijkt mij dat een prima bron voor rapporten.
Code:
FROM [qrycursist-examen]
WHERE ((([qrycursist-examen].Uitslag)="Certificaat"));
Verschilt niet zoveel van
Code:
FROM [qrycursist-examen]
WHERE ((([qrycursist-examen].Uitslag)="Geslaagd"));
In dit geval zou je het rapport moeten baseren op een keuzelijst cboUitslag.
En deze is, met een kleine aanpassing, ook nog wel te gebruiken:
Code:
FROM tblcursist
GROUP BY tblcursist.Aanhef, tblcursist.Voornaam, tblcursist.Achternaam, tblcursist.Voorletters, tblcursist.[Geboorte datum], tblcursist.[IBan nummer], tblcursist.[2e Kind], tblcursist.[Eenmalige incasso], tblcursist.[School korting], tblcursist.Betalen
HAVING (((tblcursist.[Eenmalige incasso])=Yes));
Je ziet hier al dat WHERE de voorkeur zou moeten hebben over HAVING. Maar deze rapporten kunnen op dezelfde query gebaseerd worden.
Maar als een rapport is gebaseerd op andere tabellen, wordt het een stuk lastiger.
Code:
FROM tblcursusleidster INNER JOIN (tblleslocatie INNER JOIN tblcursist ON tblleslocatie.Id = tblcursist.[Les locatie]) ON tblcursusleidster.Id = tblcursist.Cursusleidster
Dan moet je dus ofwel een andere (filter)groep maken, ofwel de andere rapporten omzetten naar dezelfde gegevensbron.
Iets anders is de query
 
Dank je wel voor je antwoord.


Ben bezig ze te bestuderen. Begrijp de eerste twee. Het scheelt me een query. Maar moet wel twee rapporten maken. een met geslaagd en de ander met certificaat. Heb ik dat goed begrepen?

De derde code, tja dat is andere koek. Zet ik die code ook in een rapport bij Group by? en dan moet ik natuurlijk toevoegen:
HAVING (tblcursist.[Vooraf])=Yes)); enz.

Begrijp ik dit zo goed? Alleen hoe doe ik het dan met schoolkorting want dat is een numeriek veld


Sorry voor alle naïviteit
 
De code heb ik uit je eigen Queries gehaald, dus die zou je toch bekend voor moeten komen, ik heb alleen een kopietje van de SQL gemaakt. Dus als je geholpen bent met het citeren van je eigen werk, dan ben ik snel klaar :)
 
Dank je wel voor je antwoord. Gebruik alleen mooit sql dus daarom komt me het onbekend voor.
Heb overigens voor de twee rapporten, certificaat en geslaagd, wel in het rapport group by gebruikt dan heb ik 2 queries minder.
Maar ik begrijp dat zonder V B A mijn oorspronkelijke vraag flexibele oplossing niet mogelijk is
 
Dan heb je mijn antwoorden niet goed gelezen, want het kan prima zonder programmeren. Alleen heb je een formulier nodig waarop je de filtercriteria neerzet waarop de rapporten gefilterd kunnen worden. Dus als je dat maakt, dan kunnen we verder kijken.
 
Dank je wel voor de reprimande:):)


Zal proberen een selectie formulier te maken en kom dan terug.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan