half jaarsoverzicht

Status
Niet open voor verdere reacties.

Koenie

Gebruiker
Lid geworden
14 mei 2004
Berichten
312
Hoi,

In het dbtje in de bijlage is het mogelijk om een maandrapport te maken op basis van de Datepart functie.
Nu wil ik een halfjaarsoverzicht maken, maar ik kom er niet uit.

Wie kan mij helpen

gr.
Monique
 

Bijlagen

Interval

De mogelijke intervallen met de DatePart functie zijn:

yyyy Year
q kwartaal
m maand
y dag van het jaar
d dag
w weekdag
ww week
h uur
n minuut
s seconde

Als je met DatePart wilt werken, moet je kiezen voor een kwartaal rapportage of jaarlijkse rapportage.

Ik heb overigens nog wel even gekeken naar de halfjaarlijkse rapportage.
Ik heb de formulieren, rapporten etc verwijderd ivm grootte.
Jij wilt waarschijnlijk ook alleen de query zien.
Ik heb alleen een query gemaakt die tussen een begin en einddatum selecteert.
Nu kan je zelf de interval bepalen, als 3/4 jaar rapportage wilt is dit ook mogelijk. ;)
Misschien is dit wat je zoekt?
 

Bijlagen

Laatst bewerkt:
Er zijn meer mogelijkheden om een halfjaars overzicht te maken.
Een mogelijkheid:
voeg aan je query een extra veld toe:
periode: IIf(Month([Datum])<7;1;2)
wanneer de gegevens meerdere jaren betreft ook groeperen over jaar met:
jaar:Year([Datum])
 
Hoi,

dank voor de reacties.
Met beide opties heb ik een beetje lopen pielen,maar het probleem waar ik nu tegen aan loop;

hij telt de acties nu niet meer goed op.
Geeft per dag de bepaalde actie weer.
Wat ik wil is dat hij nu het aantal acties van het afgelopen half jaar geeft.
(dus b.v. 0.041 deur gesloten 42 keer)

Hoop dat jullie mij verder op weg kunnen helpen.

gr.
Monique
 
Group By

Ik vermoed dat je de datum in een Group By hebt staan.
Dit stond overigens ook in mn eerdere voorbeeldje.
Maar het was me ook niet bekend wat het resultaat moest zijn.

Als je een Group by zet bij datum, dan zal de query alle unieke data weergeven.
Je zegt kortweg groepeer op unieke data.

Verander de Group By in Waar.
En je zult zien dat dezelfde kamernummers gegroepeerd worden.
 
Even terug naar de oorspronkelijke vraag: bedoel je met een halfjaarsoverzicht een rapportage over de maanden 1-6 en 7-12, of wil je echt van de afgelopen 6 maanden zien, gerekend vanaf de huidige dag?

Michel
 
Hoi Michel,

ik wil inderdaad een overzicht van de maanden 1 t/m 6 én (straks) 7 t/m 12.

gr
Monique
 
Op zich is het niet moeilijk om de totalen correct te laten berekenen; de reden dat je voor je gevoel teveel regels krijgt komt doordat je teveel velden meeneemt om te groeperen.
De velden <Deur afgesloten> en <Licht uitgedaan> kunnen voor elke kamer aparte combinaties opleveren: beide waar, beide niet waar, A waar+B niet waar, A niet waar+B waar, en al die combinaties worden apart geteld.
Om dus een totaal te maken, zul je minder velden moeten gebruiken.

Een voorbeeldje heb ik hier voor je:

SELECT DatePart("m",[Datum]) AS Maand, Format([Datum],"MMMM") AS MaandNaam, Count(1) AS Aantal, "Jan-Jun" AS Periode
FROM tblgegevens INNER JOIN [tbl invoergegevens bouwdeel C] ON tblgegevens.datumid = [tbl invoergegevens bouwdeel C].datumid
WHERE (((IIf(DatePart("m",[Datum])<7,1,2))=1))
GROUP BY DatePart("m",[Datum]), Format([Datum],"MMMM"), "Jan-Jun"
UNION ALL
SELECT DatePart("m",[Datum]) AS Maand, Format([Datum],"MMMM") AS MaandNaam, Count(1) AS Aantal, "Jul-Dec" AS Periode
FROM tblgegevens INNER JOIN [tbl invoergegevens bouwdeel C] ON tblgegevens.datumid = [tbl invoergegevens bouwdeel C].datumid
WHERE (((IIf(DatePart("m",[Datum])<7,1,2))=2))
GROUP BY DatePart("m",[Datum]), Format([Datum],"MMMM"), "Jul-Dec";

Hiermee krijg je een overzicht per half jaar over de maanden. Zoals je ziet, zitten hier geen kamernummers of andere velden bij; zou je daar meer velden aan toevoegen, dan krijg je automatisch meer regels.
Daar is m.b.v. een rapport uiteraard weer een mooie mouw aan te passen.

Michel
 
Hoi Michel,

bedankt voor het stukje code.
Diegene voor wie het dbtje bestemd is wil echter wel zien hoeveel keren de bepaalde aktie's zijn uitgevoerd in het afgelopen jaar.
Ik snap dat je dan de velden toe moet voegen die nodig zijn (toch?), maar ik weet alleen niet waar ik dit moet doen in jouw stukje code.

Monique
 
Had ik inderdaad iets duidelijker uit kunnen leggen :o
De code is de volledige code voor een query. Het is een type query die je niet met de wizard kunt maken, omdat het eigenlijk twee queries in één zijn. Het deel boven de tekst UNION ALL is een query, en het Select deel eronder is ook een eigen query. Elk deel toont een half jaar overzicht, en bij elkaar levert de query dus twee regels op, voor het eerste half jaar en voor het tweede half jaar.

Hoe gebruik je de code? Simpel genoeg eigenlijk... Maak een nieuwe query in de ontwerpweergave, maar selecteer geen tabel, dus het tabelmenuutje gelijk sluiten. Omdat Access nu niet weet wat voor query er gemaakt wordt, sta je gelijk in de SQL modus. Als het goed is zie je nu een leeg scherm met de tekst SELECT ;
Deze tekst haal je weg, en vervang je door de code uit het vorige stukje.
Daarna kun je de query op de normale manier uitvoeren. Zou moeten werken...

Als je maar één half jaar wilt zien, dan kun je de query splitsen op het deel Boven de tekst UNION ALL, en het deel eronder. Je kunt ze beiden als aparte query opslaan. Omdat dit dan wel normale queries zijn, kun je ze op de normale manier aanpassen.

Michel
 
Hoi Octafish,

Een paar dagen niet aan kunnen werken aan het dbtje, vandaar deze late reactie.
Je code werkt perfect, maar........ik wil in het rapport dus niet alleen aantallen zien, maar ook welke actie.
.
Ik krijg het niet voor elkaar om velden toe te voegen.
Krijg steeds een foutmelding mbt de syntaxis of zo.

Zou je me nog "even" uit de brand willen helpen.
het overzicht moet dus bevatten;

kamernr.
betreffende actie (deur afgesloten/verlichting e.d.)
Aantal

Het zal vast ook door mijn blonde haren komen, en het warme weer maar ik kom er niet uit.:D
:confused:
Monique
 
bedankt voor de hulp.
heb het uiteindelijk voor elkaar gekregen.


Monique.
 
We gaan toch niet de vooroordelen over blondjes hier doorbreken ? ;)
Hoe heb je het opgelost?

Michel
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan