Consultor Eletrônico



Kbase P156594: Time portion of a DateTime field is displayed as 0:00:00 when updated using the NOW function with Da
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   11/30/2009
Status: Unverified

SYMPTOM(s):

Time portion of a DateTime field is displayed as 0:00:00 when updated using the NOW function with DataServer for MS SQL Server

Field is listed as having type DATETIME in MS SQL Server

Field is listed as having type DATE in Data Dictionary

FACT(s) (Environment):

NOW function returns a DATETIME-TZ value
OpenEdge Category: DataServer
OpenEdge DataServer Category: SQL Server
OpenEdge 10.2A
Windows
MS SQL DataServer

CAUSE:

This is expected behaviour. The field in the schema holder has defaulted to type DATE so the time portion of the value returned by the NOW function is removed.

FIX:

Option #1
Modify the field properties of the field using Data Dictionary. Open the Field Properties dialog and then set the Data Type to Timestamp (datetime).

Option #2
If doing a schema pull using Create DataServer Schema then the option "Default to OE Datetime" will be available in the Pre-Selection Criteria For Schema Pull dialog. Checking this box causes Progress to generate Datetime fields instead of Date fields. This option is available from 10.2A onwards.

Option #3
Dump the .DF file of an existing schema holder and manually (or with Find/Replace) change the data-type of Date fields to DateTime, before reloading the .DF into a new empty database.