You may see issues in areas such as reports, portlets or on the database (DB) where dates show as one day later than in Clarity. This is because the date is stored in the database with a midnight time stamp, having 00:00 as the hour. Using a database querying tool, a midnight timestamp is treated as the start of the date, but in Clarity, it is interpreted as the day before if this timestamp is used for a Finish Date. This is referred to as a 'midnight rule' for storing dates in the database tables. This article covers the fields impacted by this rule.
Some examples from tables that behave in this manner are below
This type of date, when used straight from the database in custom reports or workflow scripts can produce unexpected results and the Finish Date can show up as one day ahead.
Many of Clarity's dates have timestamps associated with them (for example, the task ends at 5 pm) and many do not. If a date does not have a times stamp associated with it, it is pushed to the very first instance of the next day (midnight) so that any date comparison logic will be fully effective (for example: provide all tasks before 3/7 will get tasks of any timestamp on 3/7). Everything within the application interprets the date stored in the database. If a Finish Date is the first value of a day (midnight) that really means it's the day before.
Some dates have timestamps that cause them to be stored in the DB as 'the next day at midnight; when in reality, they are entered and displayed in the UI as the previous day. The application has code logic that interprets these dates and always shows them as the correct date in the UI.