Zeit berechnung geht ins Minus
Hallo,
ich möchte den Arbeitsbeginn festlegen wenn er noch nicht eingetragen wurde, dazu habe ich das hier geschrieben:
let myAB := Arbeitsbeginn;
let myABd := Datum;
let myAE := Arbeitsende;
let myAEd := Datum;
let myZeit := time(10, 0);
if myAB = null then
myAB := myAE - myZeit;
if myAB < substr(text(myAB), 0, 2) = "0-" then
myAB + time(24, 0)
end;
Arbeitsbeginn := myAB
else
if myAB >= myAE then myAEd := myAEd + 1 end
end;
Termin := appointment(datetime(myABd + myAB), datetime(myAEd, myAE))
wenn ich jetzt das Arbeitsende auf 7 Uhr setze sollte er mir 3Uhr als Beginn eintragen er schreibt aber immer 0-3:00 Uhr wie bekomme ich das weg? hab es mit string und plus time(24,0) versucht aber ohne Erfolg.
6 Antworten
-
vielleicht eine Blöde Frage, aber du hast dort ein Zeitfeld ausgewählt?
Um genau zu sein Uhrzeit?
Gruß Sven
-
so sieht das bei mir aus, allerdings brauche ich auch keinen wechsel über 24 Uhr hinaus, da ich immer nur Tags unterwegs bin
-
Hallo,
Ich verstehe es mit time(10,0) nicht ganz. Angenommen du arbeitest 4 Stunden. Dann wäre die Formel als Trigger bei Felder Datum und Arbeitsende:
---
if Datum and Arbeitsende then
let myEndDateTime:=(Datum,Arbeitsende);
let myStartDateTime:=datetime(number(myEndDateTime)-4*60*60*1000);
Arbeitsbeginn:=time(myStartDateTime);
Termin:=appointmet(myStartDateTime,myEndDateTime)
end
---
Leo
-
Hi Leo,
anke der Hilfe das war's "-4*60*60*1000)" den rest hab ich mir noch drum rum gebaut.
Danke -
Statt "4*60*60*1000" geht auch "number(time(4,0))".
-
wieder was gelernt. Vielen Dank!
Leo
Content aside
- vor 5 JahrenZuletzt aktiv
- 6Antworten
- 1540Ansichten