Ik heb een MS-Access database met allemaal saldo's gekoppeld aan een (GPT-)site. Nu wil ik het totaal van alle saldo's laten zien.

Ik heb de volgende SQL:
SELECT tblSites.[Naam GPT], tblLand.Taal, [MijnGPT-verdiensten].Saldo, [MijnGPT-verdiensten].Punten, Sum([MijnGPT-verdiensten].Saldo) AS [Totale Saldo], Sum([MijnGPT-verdiensten].Punten) AS [Totale Punten]
FROM tblLand INNER JOIN (tblSites INNER JOIN [MijnGPT-verdiensten] ON tblSites.pkSiteID = [MijnGPT-verdiensten].pkSiteID) ON tblLand.pkNationaliteitID = tblSites.pkNationaliteitID
GROUP BY tblSites.[Naam GPT], tblLand.Taal, [MijnGPT-verdiensten].Saldo, [MijnGPT-verdiensten].Punten
ORDER BY tblSites.[Naam GPT];

alleen nu zie ik van elke site de som en niet van alle sites bij elkaar opgeteld... wat dus de bedoeling is.
In de query wordt lastig, want daar heb je dit:

GROUP BY tblSites.[Naam GPT]

de totalen worden dus gegroupeerd per site.

Als je nu op basis van die query een formulier maakt met een formulierkoptekst en een formuliervoettekst, dan kun je wel het totaal laten zien. Het formulier moet een doorlopend formulier zijn. Zorg dat het veld waarin de subtotalen staan er ook in voorkomt.

In het voettekstdeel van je formulier maak je dan een onafhankelijk tekstveld en bij besturingselementbron vul je in: =Som([subtotaal])

Vervang 'subtotaal' door de naam van het veld waarin de subtotalen staan.
Robert schreef op 31.10.2006 23:39
[quote='Jan Koehoorn schreef op 31.10.2006 23:32']Ja dat is niet zo handig dan. Maar waar in Access wil je het laten zien? Op een formulier, of in een rapport?


Maakt voor het verhaal niets uit Jan, zowel voor formulieren als voor rapporten kan je gewoon query's die je aan hebt gemaakt gaan gebruiken.[/quote]
Dat klopt, maar in Access kan je bij rapporten ook running totals maken, vandaar mijn vraag.
Aan de linkerkant heb je onder Tabellen ook de keuze Query's, maar als het in een rapport kan mag dat ook. Alhoewel ik toch de voorkeur geef aan een Query.

en wat zijn running totals?
heb nog niet zoveel ervaring met SQL...
Het is in Access eigenlijk helemaal niet de bedoeling dat je rechtstreeks in tabellen en queries werkt. Op basis van tabellen en/of queries maak je je formulieren waarmee je data bewerkt en rapporten waarmee je data uitprint.

Maar als je het juist in een query wilt laten zien zou je het kunnen proberen met een SUM zonder GROUP BY. Of dat in Access werkt, weet ik niet uit mijn hoofd. Kwestie van uitproberen.

Maar zoals gezegd, die methode die ik je gaf met een formulier is veel gemakkelijker.
Dat had ik al geprobeerd zonder GROUP BY

John de Boer schreef op 31.10.2006 21:17
Dan krijg ik een melding
"U probeert een query uit te voeren waarbij de opgegeven expressie Naam GPT geen deel uitmaakt van een statische functie"


Ik vul het normaliter ook in formulieren in.
Ik heb even gekeken en als ik deze gebruik dan werkt hij:

SELECT Sum(test.subtotaal) AS totaal
FROM test;
John de Boer schreef op 31.10.2006 23:52
Dat had ik al geprobeerd zonder GROUP BY

[quote='John de Boer schreef op 31.10.2006 21:17']Dan krijg ik een melding
"U probeert een query uit te voeren waarbij de opgegeven expressie Naam GPT geen deel uitmaakt van een statische functie"


Ik vul het normaliter ook in formulieren in.
[/quote]
Die foutmelding krijg je als je gewone kolomnamen in combinatie met statistische functie gebruikt zonder GROUP BY.

Pleur de boel gewoon in een form, zoals ik al voorstelde. Dan krijg je precies wat je wilt, een overzicht met subtotalen en een generaal totaal.
ook dit werkt niet


SELECT Sum([MijnGPT-verdiensten].Saldo) AS [Totale saldo], 
FROM [MijnGPT-verdiensten];


Hoe dat in zijn werk gaat met formulieren moet ik nog ff uitvissen dan.
Ik kan desnoods wel de 'kale' db opsturen mocht dat nodig zijn...

In ieder geval bedankt Jan!
Ga maar eens kijken in de formuliersectie. Je maakt een formulier op basis van een tabel of query. Formulieren in Access zijn bedoeld om gegevens te editen, maar je kunt er ook velden in zetten die een (sub)totaal uitrekenen. Zie een van mijn eerdere posts, daarin leg ik uit hoe. Mocht je er niet uitkomen, dan hoor ik het wel.
Ik heb zitten zoeken maar kan niet de relevante post vinden... :-$

Ik heb al wel met formulieren gewerkt (zoals ik al eerder vermeldde).
Ik heb bijv. ook een site over films (hier) waar ik dus de films ook invoer m.b.v. een formulier. Alleen dit is voor mij een stapje hoger.

Reageren