Das kommt ein wenig darauf an, wie groß die zu messenden Zeit erwartungsgemäß werden sollen, und welche Genauigkeit am Ende verlangt ist.
Wenn es sich um eine Zeiterfassung handelt (wovon ich mal ausgehe da du von Industrieminuten spricht), kann ich dir mal sagen wie ich das mache.
Bei einer Zeiterfassung, bei der ein Minutenzeitraum erfasst werden soll, kann man nicht grundsätzlich davon ausgehen, dass die eigene Anwendung ohne Unterbrechung vom Start der Erfassung bis zum Ende der Erfassung läuft. Es kann durch aus sein, dass der Anwender diese auch mal kurz beendet bzw. ein anderes Problem auftritt.
Deswegen erfasse ich einen TDAteTime-Wert bei Start der Erfassung und lege mit diesen in einem Feld in einer Datenbank (kann natürlich auch irgendein anderer Speicherort sein) ab. Wenn nun das Ender der Erfassung signalisiert wird, dann erfasse ich den TDatetime-Wert erneut und lege ihn aber in einem anderen Feld ab. Jetzt habe ich 2 TDateTime-Werte, von denen ich z.B. per MinutesBetween die Differenz in Minuten errechnen kann, die ich dann (wenn ich denn will, als Integer in der
DB ablegen kann. Aus diesen Minuten kann ich natürlich ohne Probleme in Industrieminuten umrechnen oder das ganze in Stunden/Minuten aufteilen. Es gibt natürlich auch die Funktion SecondsBetween, wenn's Sekundengenau sein soll.
Beide Funktionen liefern einen Int64 zurück, das entspräche dem BigInt in
MSSQL.
Da man nun Integerwerte hat, kann die natürlich beliebig addieren oder sonst was mit machen.