Domino 9 und frühere Versionen > ND6: Entwicklung

arbeitszeit berechnen

(1/4) > >>

comet:
für eine arbeitszeitberechnung verwende ich folgende formel

Min := ( End - Start ) / 60 ;
RestMin := @Modulo ( Min ; 60 ) ;
Std := @Hour ( End ) - @Hour ( Start );

StdAnzeige := @If (
@Hour ( End ) <= @Hour ( Start ) & @Minute ( End ) < @Minute ( Start ) ; Std +23 ;
@Hour ( End ) < @Hour ( Start ) & @Minute ( End ) >= @Minute ( Start ) ; Std +24 ;
@Hour ( End ) > @Hour ( Start ) & @Minute ( End ) < @Minute ( Start ) ; Std -1 ;
Std ) ;

RestMinAnzeige := @If (
@Hour ( End ) <= @Hour ( Start ) & RestMin > -60 & RestMin < -50 ; "0" + @Text ( RestMin + 60 ) ;
RestMin < 0 ; @Text ( RestMin + 60 ) ;
RestMin < 10 ; "0" + @Text ( RestMin ) ;
@Text ( RestMin ) ) ;

@If ( Start = "" | End = "" ; "" ;
@Text ( StdAnzeige ) + ":" + RestMinAnzeige )

leider zieht diese formel lediglich die startzeit von der endzeit ab.
nun soll jedoch ein weiteres feld "Pause" hinzukommen. kann mir jmd nen tipp geben, wie ich das einbinden kann.

diali:
Rechne doch alles in Minuten um und rechne mit den Minutenwerten weiter - ist einfacher und weniger Code.

_start := @Hour(Start) * 60 + @Minute(Start);
_end := @Hour(end) * 60 + @Minute(end);

_AZ_brutto := _end - _start;
_AZ_netto := _AZ_brutto - Pause;

_AZ_netto_Stunden := @Integer(_AZ_netto / 60);
_AZ_netto_Minuten := _AZ_netto - _AZ_netto_Stunden *60;

_txt_AZ_netto := @Text(_AZ_netto_Stunden) + ":" + @right("00" + @Text(_AZ_netto_Minuten);2)

comet:
dein code funzt aber nicht

der code ist schon sinnvoll, da dieser auch arbeitszeiten von 22.00 bis 6.15 uhr berücksichtigt.
sonst müsste man 21.59-23.59 und 0-6.15h eingeben, dass wollten wir ja nicht haben

umi:
Ist die Pause ein Zeit, ( 30min ) oder eine Zeitspanne ( 12:30 - 13:30) ?

gruss

umi

comet:
format 01:00 oder 00:30 oder 00:45 z.b.

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln