Tivoli 服务台 6.0 开发工具包脚本语言参考

日期和时间处理

返回主页


$Now

说明

由系统定义的函数,返回当前时间。

语法

 FUNCTION $Now: TIME;

实例

 VARIABLES
 t: Time;
ACTIONS
 t:=$Now;

$Today

说明

由系统定义的函数,返回当前日期。

语法

 FUNCTION $Today: DATE;

实例

 VARIABLES
 d: Date;
ACTIONS
 d:=$Today;

DateAdd

说明

向日期添加日、月或年。

语法

FUNCTION DateAdd (VAL d: DATE, VAL n: INTEGER [,$DAYS|$MONTHS|$YEARS] ): DATE;

自变量说明

自变量名称 说明
d 向其添加 n 个单位的日期。
n 要添加的数值。它必须是所定义的单位之一。
$DAYS
$MONTHS
$YEARS
$DAYS, $MONTHS, $YEARS 用于表达 n 的单位。如果省略了此自变量,则缺省值为 $DAYS

注释

该函数返回一个日期,它是 d 自变量日期以后的 n 自变量数值的日、月、年日期。如果 n 自变量是正值,则结果就是在给定的日期之后。如果 n 自变量是负值,则结果位于给定日期之前。

结果可以调整,以产生有效的日期。当单位参数是 $MONTHS 时,就会对结果进行调整,以允许月份具有 28 天和 30 天。

当单位参数是 $YEARS 时,就会对结果进行调整,以允许闰年。例如,如果在日期 1999 年 1 月 31 日的基础上增加一个月,结果就是 1999 年 3 月 3 日,而不是 1999 年 2 月 31 日。

实例

dueDate := DateAdd(billingDate, 30);

返回码

返回计算结果。

另见


DateDif

说明

计算两个日期之差。

语法

FUNCTION DateDif (VAL day1: DATE,
                  VAL day2: DATE [,$DAYS|$MONTHS|$YEARS]
                    ): INTEGER;

自变量说明

自变量名称 说明
day1 一个日期表达式。
day2 一个日期表达式。
$DAYS$MONTHS$YEARS 用于表达日期之差的单位。如果省略了此自变量,那么缺省值就是 $DAYS

注释

DateDif 计算两个日期之差,方法是从 day1 自变量减去 day2 自变量,并返回以日、月或年为单位的整数结果。

注:如果 day2 自变量比 day1 自变量离现在更近,将返回一个负数。

实例

VARIABLES
  i: INTEGER;
ACTIONS
i:= DateDif ($Today,{1,1,1998}:
             DATE,$Days);
(* calculates how many days it is since 1/1/1998 *)

另见

DateAdd


DateFormat

说明

检查或更改日期值的缺省文本格式。

语法

FUNCTION DateFormat [ ( VAL format: INTEGER ) ] : INTEGER;

自变量说明

自变量名称 说明
格式 如果提供这个自变量,它将替换缺省格式。

注释

在将日期值转换成文本格式时,使用此函数来检查和更改缺省格式。如果在没有自变量的情况下调用 DateFormat,它将返回当前缺省日期格式。

如果提供了自变量,该值将变成新的缺省日期格式。DateFormat 返回原来的缺省日期格式。

注:关于显示格式常量的列表,请参见"数据类型格式标志"。

实例

   CONSTANTS
oracleDate IS $FmtDateYearMonthDay
 + $FmtDateTruncateCentury
 + $FmtDateDashSeparators
 + $FmtDateNamedMonth
 + $FmtDateShortNames
 + $FmtDateAllCaps
 + $FmtZeroPad;
VARIABLES
oldFormat: INTEGER;

ACTIONS
oldFormat := DateFormat
(oracleFormat);

...

DateFormat (oldFormat);
   END;

另见


TimeAdd

说明

以指定单位向时间添加秒钟、分钟或小时。

语法

FUNCTION TimeAdd (VAL t: TIME,
                  VAL n: INTEGER [, $SECONDS|$MINUTES|$HOURS]
                  ): TIME;

自变量说明

自变量名称 说明
t 原始时间。
n 要增加的时间量。选择范围是:
  • $SECONDS
  • $MINUTES
  • $HOURS

返回 t+n 之和的缺省单位是 $SECONDS

返回码

TimeAdd 按指定的单位返回新时间。


TimeDif

说明

以小时、分钟或秒钟为单位返回两个时间之差。

语法

FUNCTION TimeDif (VAL t1, t2: TIME
                  [,$SECONDS|$MINUTES|$HOURS]
                    ): INTEGER;

自变量说明

自变量名称 说明
t1 一个时间表达式。
t2 一个时间表达式。选择范围是:
  • $SECONDS
  • $MINUTES
  • $HOURS

返回差的缺省单位是 $SECONDS

注释

TimeDif 计算并返回两个时间表达式的差。从第一个自变量减去第二个自变量 (time_1-time_2),并按小时、分钟或秒钟表达,这取决于作为第三自变量而传送的系统常量。

当第三自变量是 $MINUTES$HOURS时,结果将被截断。因此{7,0,0}:TIME 和{8,59,59}:TIME 之差是 7199 秒、119 分或 1 小时。

实例

VARIABLES
  i: INTEGER;
ACTIONS
 i:=TimeDif($Now,{8,30,0}: TIME,$Minutes);
 (* i = number of minutes since 8:30 this morning *)
 i:=TimeDif ($Now, TimeAdd({8,30,0}:TIME, 30, $MINUTES),
$HOURS);
 (* i=number of hours since 8:30 this morning, rounded to *)
 (* the nearest hour *)

返回码

返回码 说明
任意值 时间差。

TimeFormat

说明

检查或更改时间值的缺省文本格式。

语法

FUNCTION TimeFormat [ ( VAL format: INTEGER ) ] : INTEGER;

自变量说明

自变量名称 说明
format 如果提供此自变量,它将替换缺省格式。

注释

只要将这种类型的值转换成文本格式,TimeFormat 就会检查或更改缺省格式。

如果不带自变量调用 TimeFormat,它将返回现存的缺省时间格式。如果提供了自变量,该值将变成新的缺省时间格式。(返回原来的缺省格式。)

实例

VARIABLES
oldFormat: INTEGER;
ACTIONS
oldFormat :=
TimeFormat(BitOr($FmtTimeAMPM,
 $FmtTimeWithoutSeconds));

...

TimeFormat(oldFormat);
   END;

另见

关于显示格式的解释,请参见数据类型格式标志


Tivoli 服务台 6.0 开发工具包脚本语言参考

返回主页

版权所有