Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Berichtsstruktur oder Abfragedefinition?

Begonnen von gromax, April 15, 2015, 20:46:03

⏪ vorheriges - nächstes ⏩

gromax

Liebe Access-Profis,

in meiner DB habe ich Ausfallzeiten von Lehrkräften erfasst. Dies geschieht in einer Tabelle, in der der Beginn [LeK_Beginn] und das Ende [LeK_Ende] datumsgenau hinterlegt sind.
Nun möchte ich einen Bericht erstellen, in dem die ausfallenden Lehrkräfte monatsweise dargestellt werden. Kein Problem für mich ist die Darstellung des Monats, in dem der Ausfall beginnt [rpt_AUSFALL] bzw. in dem der Ausfall [rpt_Rueckkehr] endet.

Wie gehe ich aber vor, wenn ich auch die Zwischenmonate analog der unteren Struktur darstellen möchte?

[rpt_AUSFALL]
SEPTEMBER
  Abele, Alfred       02.09.2014  bis  12.12.2014  (...)
  Bebele, Bertha      22.09.2014  bis  10.11.2014  (...)
  Cebele, Christa      25.09.2014  bis  01.02.2015  (..)
OKTOBER
  Abele, Alfred       02.10.2014  bis  12.12.2014  (...)
  Bebele, Bertha      22.09.2014  bis  10.11.2014  (...)
  Cebele, Christa      25.09.2014  bis  01.02.2015  (..)
NOVEMBER
  Abele, Alfred          02.10.2014  bis  12.12.2014  (...)
  Bebele, Bertha      22.09.2014  bis  10.11.2014  (...)
  Cebele, Christa      25.09.2014  bis  01.02.2015  (..)
NOVEMBER
  Abele, Alfred       02.10.2014  bis  12.12.2014  (...)
  Cebele, Christa      25.09.2014  bis  01.02.2015  (..)
DEZEMBER
  Abele, Alfred       02.10.2014  bis  12.12.2014  (...)
  Cebele, Christa      25.09.2014  bis  01.02.2015  (..)
JANUAR
  Cebele, Christa      25.09.2014  bis  01.02.2015  (..)
FEBRUAR
  Cebele, Christa      25.09.2014  bis  01.02.2015  (..)

Für jede Idee vielen Dank vorab!

Viele Grüße
gromax

MaggieMay

Hallo,

warum ist der November doppelt aufgeführt?
Ist das Absicht oder ein Versehen oder ein Ergebnis deines derzeitigen Versuches?

Wenn letzteres der Fall ist, so zeige bitte den Code dazu (SQL +/- VBA).
Freundliche Grüße
MaggieMay

gromax

Hallo MaggieMay,

der "doppelte November" ist meiner Schlampigkeit (copy and paste) geschuldet und hat keine inhaltliche Bedeutung - mea culpa und sorry!
Es gibt hierzu keinen VBA-Code sondern nur den Gedanken/die Idee, dass der andauernde Ausfall in einem Bericht auch "andauernd" dargestellt werden sollte.
Mir fehlt hierzu der Zugang oder auch nur eine Idee!

Danke
gromax

MaggieMay

Ich könnte mir vorstellen, dass man das mit Hilfe einer Kalendertabelle lösen kann, in der für jeden Tag des Auswertungszeitraums ein Datensatz mit dem Datum enthalten ist. Dann kannst du die Ausfallzeiten mit dieser Tabelle zusammenführen und die einzelnen Tage hinzufügen. Im Bericht kannst du über die Gruppierung nach Monat die Datensätze wieder zusammenfassen.

Beispiel:
SELECT k.kaldat, a.nachname & ", " & a.vorname As lehrkraft, a.datvon, a.datbis
FROM t_kalender AS k, t_ausfallzeiten AS a
WHERE k.kaldat BETWEEN a.datvon AND a.datbis


Du kannst auch in der Abfrage bereits das Kalenderdatum auf den Monat reduzieren.
Freundliche Grüße
MaggieMay

gromax

Hallo MaggieMay,

danke für Deine Rückmeldung!
Ich kann Deinen Ansatz nicht umsetzen; ich hirne und hirne und stelle fest, mir fehlt der logische Zugang zu einer Kalendertabelle und dann wüsste ich gar nicht, welche Felder ich nachmals mit der Tabelle [tbl_LEH_KAT] verknüpfen sollte. In dieser Tabelle sind die Beginn- [LeK_Beginn] und End-Felder [LeK_Ende] hinterlegt.

Hat diese Kalendertabelle [tbl_KALENDER] etwa folgernde Felder:
KAL_PS (Primärschlüssel)
KAL_Datum (Bsp. 01.09.2014)
KAL_Monat (Month([KAL_Datum]) ?

Muss ich dann händisch alle 365 Tagesdaten eingeben?
Was mache ich dann nächstes Jahr?
Kann ich denn die Daten abhängig von Datum (Date) automatisieren?

Wenn Du mich noch ein wenig anleiten könntest?

Danke vorab!
gromax

MaggieMay

Hi,
ZitatHat diese Kalendertabelle [tbl_KALENDER] etwa folgernde Felder
hier wäre ausnahmsweise mal nur das Datumsfeld als einziges Datenfeld ausreichend.
ZitatMuss ich dann händisch alle 365 Tagesdaten eingeben?
Händisch sicher nicht, dazu könntest du dir bspw. eine kleine VBA-Prozedur schreiben, mit der die Tabelle gefüllt wird.
ZitatWas mache ich dann nächstes Jahr?
Die Tabelle muss natürlich fortlaufend gepflegt werden.
Freundliche Grüße
MaggieMay

gromax

Hallo MaggieMay,

danke für die Rückmeldung, aber dieses Vorhaben scheint mir aufwendiger zu sein, als dass ich dies in der noch gebotenen Zeit umsetzen könnte; ich muss meine DB morgen vorstellen und dann kann ich eben nur vorstellen, was ich bislang habe!
Ich lege dies trotzdem mal auf die Seite und muss den Kolleginnen/Kollegen eben die monatsbezogenen Ausfälle "zumuten".

Dir trotzdem vielen Dank!
Ihr habt mir alle sehr viel geholfen!
gromax

MaggieMay

Die Tabelle zu erstellen und in die Abfrage einzubinden ist eine Sache von max. 10 Minuten, und wenn es eine halbe Stunde wäre, die hast du hiermit praktisch schon vertan. ;-)
Freundliche Grüße
MaggieMay