Marc's Place

OTYD2 - Bereken het verschil van twee tijden




Aanroep
 
xcall otyd2 (datum1, tijd1, datum2, tijd2, duur)
 
Common velden vóór aanroep
*N/A
Parameters te vullen bij aanroep
datum1 (d6 | d8)
Een geldige datum in de vorm JJMMDD of JJJJMMDD.
Voor een correcte berekening wordt bij een D6 datum intern de huidige eeuw toegevoegd: de eerste twee posities van e$_date. De parameters worden daardoor niet beïnvloed.
Is de waarde van de parameter NUL, dan wordt intern de systeemdatum genomen.
tijd1 (d4)
Een geldige tijd.
Een tijd ligt tussen 00:00 uur en 23:59. 24:00 is géén geldige tijd.
datum2 (d6 | d8)
Een geldige datum in de vorm JJMMDD of JJJJMMDD.
Voor een correcte berekening wordt bij een D6 datum intern de huidige eeuw toegevoegd: de eerste twee posities van e$_date. De parameters worden daardoor niet beïnvloed.
Is de waarde van de parameter NUL, dan wordt intern de systeemdatum genomen.
tijd2 (d4)
Een geldige tijd.
Een tijd ligt tussen 00:00 uur en 23:59. 24:00 is géén geldige tijd.
Parameters gevuld bij terugkeer
verschil (d12)
Een aantal dagen, uren en/of minuten.
Dit aantal kan positief of negatief zijn. De routine rekent van laag naar hoog. Dus het laagste tijdstip in de eerste parameter, het hogere tijdstip in de tweede. Draai je dit om dan wordt het resultaat negatief.
Het veld wordt als volgt gevuld: DDDDDDDDUUMM
    pos 01 - 08 = Aantal dagen verschil.
    pos 09 - 10 = Aantal uren verschil.
    pos 11 - 12 = Aantal minuten verschil.
Common velden gevuld bij terugkeer
*N/A
Voorbeelden
 

xcall otyd2 (19981226, 1230, 19990101, 1440, verschil)

verschil bevat na terugkeer de waarde 000000060210, dus 6 dagen, 2 uur en 10 minuten.


Indien je gewoon het verschil tussen twee tijdstippen wilt berekenen die alleen uit uren en minuten bestaaan, geef dan voor de beide data de waarde nul mee:


xcall otyd2 (0, 1230, 0, 1440, verschil)

verschil bevat na terugkeer de waarde 000000000210, dus géén dagen, 2 uur en 10 minuten.


En als je wilt weten hoeveel dagen, uren en minuten tot 1 januari 2000, 00:00 uur:


xcall otyd2 (0, (%time/100), 20000101, 0, verschil)

verschil bevat na terugkeer op 19981008-23:26 de waarde 000004490034, dus 449 dagen, 0 uur en 34 minuten.

© 1997- Marc Vos (and others) Contact Me