Joined: 06 Jun 2008 Posts: 8237 Location: Dubuque, Iowa, USA
In C, use EXEC CICS ASKTIME ABSTIME(field) to return the 8-byte unsigned character variable field. Call a COBOL or Assembler subroutine that takes this packed decimal field and unpacks it into a 15-byte unsigned character field (which is PIC 9(15) in COBOL). The EXEC CICS FORMATTIME formats the hours, minutes, and seconds. The returned value from the subroutine call provides the milliseconds. However, be aware that the milliseconds are rounded to the nearest 10 (i.e., hundredths of a second) by CICS.
Joined: 14 Jan 2008 Posts: 2504 Location: Atlanta, Georgia, USA
If your C~CICS program is LE enabled, then issue a call to the LE Callable Service routine "CEELOCT", which will return the current-date as an 8-byte value of CCYYMMDD and the current-time as a 9-Byte value of HHMMSSTHM, with the last 3-Bytes representing tenths, hundreths and milliseconds.