Charles Mills,
Here is an idea.
1. Get the GMT time using LE callable service CEEGMT which returns the
current Greenwich Mean Time (GMT) as both a Lilian date and as the number
of seconds since 00:00:00 14 October 1582.
2. Now you want an offset of 9 hours which is 9*60*60 = 32,400 secs. so
subtract 32,400 from the secs from the output of CEEGMT
3. Get the date and time format using LE callable service CEEDATM which
converts a number representing the number of seconds since 00:00:00 14
October 1582 to a character string format.
Now you have the required date and time. (the output will be 2012-09-11
06:19:10 AM )
Sample Program. You should find the copylib for CEEIGZCT in CEE.SCEESAMP
CBL LIB
IDENTIFICATION DIVISION.
PROGRAM-ID. IGZTGMT.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 LILIAN PIC S9(9) BINARY.
01 SECS COMP-2.
01 CHRDATE PIC X(80).
01 FC.
02 CONDITION-TOKEN-VALUE.
COPY CEEIGZCT.
03 CASE-1-CONDITION-ID.
04 SEVERITY PIC S9(4) BINARY.
04 MSG-NO PIC S9(4) BINARY.
03 CASE-2-CONDITION-ID
REDEFINES CASE-1-CONDITION-ID.
04 CLASS-CODE PIC S9(4) BINARY.
04 CAUSE-CODE PIC S9(4) BINARY.
03 CASE-SEV-CTL PIC X.
03 FACILITY-ID PIC XXX.
02 I-S-INFO PIC S9(9) BINARY.
01 PICSTR.
02 VSTRING-LENGTH PIC S9(4) BINARY.
02 VSTRING-TEXT.
03 VSTRING-CHAR PIC X
OCCURS 0 TO 256 TIMES
DEPENDING ON VSTRING-LENGTH
OF PICSTR.
PROCEDURE DIVISION.
CALL 'CEEGMT' USING LILIAN, SECS, FC
IF CEE000 OF FC THEN
COMPUTE SECS = SECS - 32400
MOVE 22 TO VSTRING-LENGTH
MOVE 'YYYY-MM-DD HH:MI:SS AP' TO
VSTRING-TEXT(1:22)
CALL 'CEEDATM' USING SECS, PICSTR, CHRDATE, FC
IF CEE000 OF FC THEN
DISPLAY CHRDATE
ELSE
DISPLAY 'CEEDATM FAILED WITH MSG '
MSG-NO OF FC
END-IF
ELSE
DISPLAY 'CEEGMT FAILED WITH MSG '
MSG-NO OF FC
STOP RUN
END-IF
GOBACK.
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN