Hallo gfaw,
deine Datenbank sollte den Primärschlüssel MANr (Mitarbeiternummer) + Datum haben, da ja pro Mitarbeiter und Datum maximal ein Eintrag vorkommen kann. Wenn du den Kalender darstellst, solltest du mit FindNearest den Eintrag suchen, der als erstes im angezeigten Zeitbereich liegt:
Table1.FindNearest([aktMA, StartDatum]);
Dann kannst du in einer Schleife die Daten auslesen:
Delphi-Quellcode:
while Not Table1.EOF and
(Table1MANr.Value = aktMA) and
(Table1Datum.Value <= EndDatum) do
begin
{ Zelle finden }
{ Werte eintragen }
Table1.Next;
end;
Suchst du nur einen speziellen Eintrag, kannst du FindKey benutzen:
Delphi-Quellcode:
if Table1.FindKey([aktMA, SuchDatum]) then
{ Eintrag existiert und ist ausgewählt }
else
{ Kein Eintrag für diesen MA für dieses Datum };