New user
Beiträge: 3
| Hallo Karl,
danke für Deine schnelle Antwort.
Ich habe den Code entsprechend Deines Vorschlages auf eine Abfrage umgebaut.
strSQL = "SELECT ID, Betriebsdatum, Startzeit, Endezeit FROM Betriebskalender ORDER BY Betriebsdatum"
Set rst_bk = db.OpenRecordset(strSQL, dbOpenDynaset)
Auch damit funktioniert das movenext nicht.
Diesen Teil des Code konnte ich ja unverändert lassen:
kriterium = "Startzeit = " & CLng(dlz_start_date) 'Bau einer SQL Anweisung
rst_bk.FindFirst kriterium 'Erster DS mit gleichem Datum finden
bk_ende_zeit = rst_bk("Endezeit") 'EndeZeit des Starttages ermitteln
dlz_summe = dlz_summe + (bk_ende_zeit - dlz_start_time) 'Zeitdiff zur DLZ addieren
' *************************************************************
' nächster Tag BK auswerten und addieren (ganz oder teilweise)
' *************************************************************
rst_bk.MoveNext 'Hier läuft er noch zum zweiten Datensatz von BK - nicht zum Datensatz NACH FindFirst
Er findet mit .FindFirst beispielsweise den 22. Datensatz im Betriebskander (BK) da dieser das gleiche Datum hat wie mein Auftragsstart. Dann berechnet er die Start und Endezeit korrekt.
Jetzt soll er den nächsten Tag des Betriebskalenders auch auswerten - mit movenext erwarte ich also: er springt zum 23. Datensatz in meinem Beispiel. Stattdessen springt er zum zweiten Datensatz.
Egal ob Tabelle oder Abfrage als Domäne genommen wird.
Frage also: Wird der Datensatzzähler bei einer .FindFirst aktion auch mit versetzt und falls nicht: wie kann ich etwas einbauen dass er nach .FindFirst auf dem 22. DS steht und ich ihn dann schrittweise weiterbewegen kann bis ich das Endedatum meines Auftrages im BK erreicht habe?
Danke für Deine Hilfe.
Gruß
Friedhelm
|