CEELOCT: 获取当前本地日期或时间

CEELOCT 以 Lilian 日期 (自 1582 年 10 月 14 日以来的天数) , Lilian 秒数 (自 1582 年 10 月 14 日 00:00:00 以来的秒数) 和 Gregorian 字符串 (YYYYMMDDHHMISS999) 返回当前本地日期或时间。

这些值与其他 日期和时间 可调用服务以及现有内部函数兼容。

CEELOCT 执行与单独调用 CEEGMT , CEEGMTO 和 CEEDATM 服务相同的功能。 然而,调用 CEELOCT 要快得多。

CALL CEELOCT 语法

读取语法图跳过可视语法图CALL"CEELOCT"USING输出 Lilian,输出秒数,外格雷戈里安,FC.
output_Lilian (输出)
32 位二进制整数,以 Lilian 格式表示当前本地日期,即第 1 天等于 1582 年 10 月 15 日,第 148,887 天等于 4 1990 年 6 月。

如果本地时间在系统中不可用,那么 output_Lilian 将设置为 0 ,并且 CEELOCT 将终止并带有 non-CEE000 符号反馈代码。

output_seconds (输出)
64 位长浮点数,表示当前本地日期和时间为自 1582 年 10 月 14 日 00:00:00 以来的秒数,不计入闰秒。 例如, 1582 年 10 月 15 日的 00:00:01 是第二个数字 86,401 (24 * 60 * 60 + 01)。 19:00:01.078 于 4 1990 年 6 月是第二个数字 12,863,905 ,201.078。

如果本地时间在系统中不可用,那么 output_seconds 将设置为 0 ,并且 CEELOCT 将终止,并带有 non-CEE000 符号反馈代码。

output_Gregorian (输出)
格式为 YYYYMMDDHHMISS999 的 17 字节固定长度字符串,表示本地年,月,日,小时,分钟,秒和毫秒。

如果 output_Gregorian 的格式不满足您的需要,那么可以使用 CEEDATM 可调用服务将 output_seconds 转换为其他格式。

fc (输出)
指示此服务结果的 12 字节反馈代码 (可选)。

表 1. CEELOCT 符号条件
符号反馈代码 严重性 消息号 消息文本
CEE000 0 -- 服务已成功完成。
CEE2F3 3 2531 本地时间在系统中不可用。

使用说明

  • 您可以使用 CEEGMT 可调用服务来确定格林威治标准时间 (GMT)。
  • 您可以使用 CEEGMTO 可调用服务来获取从 GMT 到本地时间的偏移量。
  • CCEELOCT 返回的字符值旨在与现有内部函数生成的字符值相匹配。 返回的数字值可用于简化日期计算。

示例


************************************************
**                                            **
** Function: Call CEELOCT to get current      **
**           local time                       **
**                                            **
** In this example, a call is made to CEELOCT **
** to return the current local time in Lilian **
** days (the number of days since 14 October  **
** 1582), Lilian seconds (the number of       **
** seconds since 00:00:00 14 October 1582),   **
** and a Gregorian string (in the form        **
** YYYMMDDMISS999). The Gregorian character   **
** string is then displayed.                  **
**                                            **
************************************************
 IDENTIFICATION DIVISION.
 PROGRAM-ID. CBLLOCT.
 DATA DIVISION.
 WORKING-STORAGE SECTION.
 01  LILIAN                  PIC S9(9) BINARY.
 01  SECONDS                 COMP-2.
 01  GREGORN                 PIC X(17).
 01  FC.
     02  Condition-Token-Value.
     COPY  CEEIGZCT.
         03  Case-1-Condition-ID.
             04  Severity    PIC S9(4) COMP.
             04  Msg-No      PIC S9(4) COMP.
         03  Case-2-Condition-ID
                   REDEFINES Case-1-Condition-ID.
             04  Class-Code  PIC S9(4) COMP.
             04  Cause-Code  PIC S9(4) COMP.
         03  Case-Sev-Ctl    PIC X.
         03  Facility-ID     PIC XXX.
     02  I-S-Info            PIC S9(9) COMP.
 PROCEDURE DIVISION.
 PARA-CBLLOCT.
     CALL 'CEELOCT' USING LILIAN, SECONDS,
                          GREGORN, FC.
************************************************
** If CEELOCT runs successfully, display      **
**     Gregorian character string             **
************************************************
     IF CEE000 of FC  THEN
         DISPLAY 'Local Time is ' GREGORN
     ELSE
         DISPLAY 'CEELOCT failed with msg '
             Msg-No of FC UPON CONSOLE
         STOP RUN
     END-IF.

     GOBACK.