ACIDateTimeCheck()

ACIDateTimeCheck()

作用:

检查所给日期时间是否有效

语法:

sword ACIDateTimeCheck ( void                *hndl,
                         ACIError            *err,
                         const ACIDateTime   *date,
                         ub4                 *valid );

参数:

  • hndl (IN)

    会话句柄或者环境句柄

  • err (IN/OUT)

    错误句柄,该接口调用失败时,错误信息会存在该句柄上 ,调用 ACIErrorGet 获得错误信息。

  • date (IN)

    要检查的日期时间

  • valid (OUT)

    指向返回值的指针,返回0为有效日期

说明:

返回零表示有效日期; 否则,其他返回值对应信息如下表:

宏定义 对应错误信息
ACI_DATE_INVALID_DAY 0x1 错误的天数
ACI_DATE_DAY_BELOW_VALID 0x2 错误的天数且小于1
ACI_DATE_INVALID_MONTH 0x4 错误的月数
ACI_DATE_MONTH_BELOW_VALID 0x8 错误的月数且小于1
ACI_DATE_INVALID_YEAR 0x10 错误的年份
ACI_DATE_YEAR_BELOW_VALID 0x20 错误的年份且小于1
ACI_DATE_INVALID_HOUR 0x40 错误的小时数
ACI_DATE_HOUR_BELOW_VALID 0x80 错误的小时数且小于1
ACI_DATE_INVALID_MINUTE 0x100 错误的分钟数
ACI_DATE_MINUTE_BELOW_VALID 0x200 错误的分钟数且小于1
ACI_DATE_INVALID_SECOND 0x400 错误的秒数
ACI_DATE_SECOND_BELOW_VALID 0x800 错误的秒数且小于1
ACI_DATE_DAY_MISSING_FROM_1582 0x1000 天数是从1582开始丢失的
ACI_DATE_YEAR_ZERO 0x2000 年不等于0
ACI_DT_INVALID_TIMEZONE 0x4000 错误的时区
ACI_DATE_INVALID_FORMAT 0x8000 输入日期格式错误

例如,如果传入的日期是2/0/1990 25:61:10(月/日/年 时:分:秒格式),则返回的错误是:

ACI_DT_INVALID_DAY | ACI_DT_DAY_BELOW_VALID | ACI_DT_INVALID_HOUR | ACI_DT_INVALID_MINUTE