|
On Fri, 2004-04-23 at 17:27, Hatzenbeler, Tim wrote:
> When I do a timestamp operation I get a field like this...
> 2004-04-23-08.41.56.119000
>
> Is there ay way to get values in the smallest three places? I
> remember a C function that Scott posted, but I can't seem to find it in the
> archive...
There are two ways that immediately come to mind:
1. Convert the timestamp to a string (26a) and substring out the last
three:
d myString s 26a
d mySmallString s 3a
/free
myString = %char( %timestamp() );
mySmallString = %subst( myString : 24 );
/end-free
2. Retrieve the *microseconds time element and divide by 1000:
d micros s 6s 0
d subMicros s 3s 0
/free
micros = %subdt( %timestamp() : *ms );
subMicros = %div( micros : 1000 );
/end-free
If there is a specific C function I'm not aware of it...
Joel
http://www.rpgnext.com
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.