AC97:Anzahl nach Wochentagen sortiert in Diagramm

Hallo,

habe folgendes Problem: Ich möchte in einem Diagramm die Anzahl bestimmter Ereignisse nach den Wochentagen sortiert haben. Falls es von Bedeutung ist: Erfaßt wird zum entsprechenden Ereignis das Datum im Format tt.mm.jj

Kann ich das mit eingebauten Assistenten etc. machen oder brauch ich dazu ein paar Code-Zeilen?

Danke im Voraus

Jürgen

habe folgendes Problem: Ich möchte in einem Diagramm die
Anzahl bestimmter Ereignisse nach den Wochentagen sortiert
haben. Falls es von Bedeutung ist: Erfaßt wird zum
entsprechenden Ereignis das Datum im Format tt.mm.jj

Hi Jürgen,
das geht mit einer Abfrage.
Angenommen, Deine Ereignistabelle hat zwei Felder Ereignis und Datum, dann kannst Du das so machen:

SELECT Ereignis, 
 Weekday(Datum) AS sortk, 
 Format(Datum,'ddd') AS Wochentag, 
 Count(\*) AS Anzahl
 FROM Ereignistabelle
 GROUP BY Ereignis, Weekday(Datum), Format(Datum,'ddd')
 ORDER BY Weekday(Datum);

Den Ausdruck Weekday(Datum) brauchst Du nicht unbedingt, aber für die Sortierunng ist er hilfreich (sonst würde alles alphabetisch nach den Namen der Wochentagen sortiert, also: Di, Do, Mo, Mi, Fr, Sa, So).

Gruß

J.

Hallo Jürgen,

erstelle einfache ein Abfrage über die Daten. Schalte die Gruppierungsfunktion ein.
In der Spalte mit der Anzahl lässt Du einfach die Summe bilden.
Die Spalte mit dem Datum erfasst Du ungefähr so:
WTag:Wochentag([Datum];2)
damit wird der Wochentag aus dem Datum gezogen (die ‚2‘ beginnt mit der Zählung am Montag). Siehe auch dazu in der Hilfe unter Wochentag.

SQL:
SELECT Weekday([Datum],2) AS WTag, Sum(tblTest.Anzahl) AS [Summe von Anzahl]
FROM tblTest
GROUP BY Weekday([Datum],2);

Gruß

Gerd

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Vielen Dank! Und noch was…
Danke!!! So richtig verstanden habe ich die Wirkungsweise zwar nicht (z.B. „sortk“), aber es klappt! Und das zählt.

Jetzt aber ein Folgeproblemchen: Wenn ich daraus ein Diagramm erstelle, werden nur die Wochentage dargestellt, an denen das Ereignis mind. 1x stattgefunden hat. Wie kann ich alle Wochentage darstellen?

Danke
Jürgen

Hi Jürgen,
das geht mit einer Abfrage.
Angenommen, Deine Ereignistabelle hat zwei Felder Ereignis und
Datum, dann kannst Du das so machen:

SELECT Ereignis,
Weekday(Datum) AS sortk,
Format(Datum,‚ddd‘) AS Wochentag,
Count(*) AS Anzahl
FROM Ereignistabelle
GROUP BY Ereignis, Weekday(Datum), Format(Datum,‚ddd‘)
ORDER BY Weekday(Datum);

Den Ausdruck Weekday(Datum) brauchst Du nicht unbedingt, aber
für die Sortierunng ist er hilfreich (sonst würde alles
alphabetisch nach den Namen der Wochentagen sortiert, also:
Di, Do, Mo, Mi, Fr, Sa, So).

Gruß

J.

Danke!!! So richtig verstanden habe ich die Wirkungsweise zwar
nicht (z.B. „sortk“), aber es klappt! Und das zählt.

Sortk sollte „Sortierkriterium“ anbkürzen :smile:
Das ist ein Ausdruck, der aus einem gegebenen Datumswert eine Zahl zurückgibt: 1 für Montag, 2 für Dienstag, usw. Diese nutze ich zum Sortieren (ohne diese Zahl kämen die Daten entweder unsortiert oder falsch sortiert heraus).

Jetzt aber ein Folgeproblemchen: Wenn ich daraus ein Diagramm
erstelle, werden nur die Wochentage dargestellt, an denen das
Ereignis mind. 1x stattgefunden hat. Wie kann ich alle
Wochentage darstellen?

Fällt mir spontan nichts ein - Die Wochentage ermittele ich aus dem Datumswert Deiner Eintragungen, und da keine entsprechenden Daten da sind, kann ich auch keine selektieren.

Gruß

J.

Hallo (José),

das mit der Abfrage klappt ja tadellos. Wenn ich daraus aber ein Diagramm (in einem Bericht) bastle, ist die ganze Sortierung wieder weg und es ist alphabetisch geordnet. Habe schon ein wenig rumprobiert, aber keine Lösung gefunden (z.B. die genannte SQL-Abfrage direkt bei den Berichtseigenschaften eingefügt; sortiert auch richtig, nur sind dann zusätzliche Balken für das Sortierkriterium und die EreignisID sichtbar).

Eine Idee, wie’s klappen könnte?

Danke
Jürgen

Eine Idee, wie’s klappen könnte?

Ehrlich gesagt, mit den Diagrammen bin ich nicht so bewandert. Ich müßte selbst ein wenig basteln. Ich bin derzeit zuhause (Kinder krank), vielleich finde ich morgen mal eine ruhige Mnute dazu.

Gruß

J.