Consultor Eletrônico



Kbase P128734: DATETIME field does not validate date on leave
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   19/01/2010
Status: Verified

SYMPTOM(s):

Entering invalid date in field with DATETIME(-TZ) data type

Leaving field

Following errors are NOT seen as expected:

** The month of a date must be from 1 to 12. (80)

** Day in month is invalid. (81)

Errors are raised when attempting to assign field

FACT(s) (Environment):

OpenEdge 10.x
All Supported Operating Systems
OpenEdge Category: Language (4GL/ABL)

CAUSE:

Bug# OE00164872

FIX:

Upgrade to OpenEdge 10.2A or later


A workaround is to manually check the date using a LEAVE trigger on the DATETIME field, for example:

ON 'leave':U OF myDatetime
DO:
DEFINE VARIABLE dCheck AS DATETIME NO-UNDO.

dCheck = DATETIME(SELF:SCREEN-VALUE) NO-ERROR.

IF ERROR-STATUS:ERROR THEN DO:
MESSAGE ERROR-STATUS:get-message(1)
VIEW-AS ALERT-BOX ERROR BUTTONS OK.
RETURN NO-APPLY.
END.

RETURN.
END.