Domino 9 und frühere Versionen > ND6: Entwicklung
Differenz zwischen zwei Datumswerten auswerten
Pidray:
Hallo @all !
ich habe im Forum die Möglichkeit o.g. Differenz zu ermitteln gefunden (danke @koehlerbv):
diff := @If(@IsTime(Endtag) & @IsTime(Starttag); (@Date (Endtag) - @Date (Starttag)) / 86400; 0);
Nun will ich auswerten, ob diff >20:
@if(diff>20; then ; else);
aber es wird immer then ausgeführt, egal ob diff=9 oder diff=190 !
also habe ich mir das mal ausgeben lassen:
@Prompt([Ok]; "diff >20 ?"; @Text(diff>20));
@Prompt([Ok]; "diff <=20 ?"; @Text(diff<=20));
in beiden Fällen ist das Ergebnis = 1 ! Was mache ich falsch ?
@isNumber(diff) liefert ebenfalls 1, dann sollte diff>20 doch machbar sein, oder ?
Schon mal Danke im Voraus !
Gruß
Katrin
Axel:
Ich hab das mal auf die Schnelle nachgestellt und es funktioniert so wie es soll. Ich habe diese Formel verwendet:
diff := @If(@IsTime(Endtag) & @IsTime(Starttag); (@Date (Endtag) - @Date (Starttag)) / 86400; 0);
@Prompt([Ok]; "Diff"; @Text(diff));
@if(diff>20; @Prompt([Ok]; "Diff"; "Diff > 20") ; @Prompt([Ok]; "Diff"; "Diff<=20"));
Sind die beiden Felder vom Typ Datum/Zeit? Lass dir mal direkt nach der Berechnung den WErt von diff ausgeben.
Axel
Pidray:
Danke für die schnelle Antwort !
--- Zitat von: Axel am 17.06.10 - 11:18:28 ---Wert von diff ?
--- Ende Zitat ---
@Prompt([Ok]; "diff ="; @Text(diff));
Ergebnis für Dok1 = 9
Ergebnis für Dok2 = 190
Starttag := @TextToTime(@Unique(t1 : t2 : t3));
Endtag := @Now;
t1,t2,t3 = Substrings je eines Textfeldes (welches Datum und Text enthält - oder leer ist),
um nur das Datum zu ermitteln
@IsTime(Starttag) liefert 1 also TRUE
@IsTime(Endtag) liefert 1
@IsNumber(diff) liefert 1
diff>20 UND diff<=20 liefern beide 1
Also egal, ob ich @if(diff>20; then ; else);
oder @if(diff<=20; then ; else);
schreibe, es wird in beiden Fällen then ausgeführt ...
Gruß + Dank
Katrin
ascabg:
Hallo,
Was steht denn in t1, t2, t3 drin?
Andreas
Pidray:
--- Zitat von: ascabg am 17.06.10 - 12:31:52 ---Was steht denn in t1, t2, t3 drin?
--- Ende Zitat ---
z.B:
wenn Feld_T1 = "OK 09.12.2009 13:41:54 Vorname Name"
dann t1 := @Middle( Feld_T1;"OK ";10)
also = "09.12.2009"
(Feld_T1 war ursprünglich nur als LOG-Feld geplant, nun brauche ich daraus das Datum;
es kann aber auch leer/ungefüllt sein)
oder liegt es irgendwie an meinem Liste-bilden (t1:t2:t3)? Muss ich vorher noch ein @implode drumlegen ?
Aber mein Starttag := @TextToTime(@Unique(t1 : t2 : t3)) wird mir korrekt als @isTime=TRUE angezeigt ...
Gruß
Katrin
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln