1. Literals

Formula language has been extended to support date, time, timestamp and duration literals.

Date, time and timestamp literals are enclosed in pound signs.

To specify date constant write the date separated by dashes in year-month-day format, for example #2010-12-06#.

Time literals use 24 hour clock, with optional seconds, for example #9:59# or #23:55:57#.

Timestamp literals combine the format of of the date and time literals, for example #2010-12-06 23:59#

Duration literals are decimal numbers followed by the unit: d for days, h for hours, m for minutes or s for seconds. For example 0.25d, 6h, 360m or 21600s represent the same value – six hours.

Date(), Time() and other functions are still available to allow constructing values from variable parts.

2. Role References

To check whether the user is a member of a certain role you are probably using the construct such as Role() = "Project Manager". The drawback of this approach is that if you eventually modify the name of the role you’ll need to update all the formulas to reflect new name.

Now you can check whether the "current user" is a member of a certain role by specifying role name in square brackets – the syntax is identical to column or variable reference. The example above could be rewritten as[Project Manager]. We are keeping track of such a constructs and when the role name changes, all formulas using role check are auto-updated.

3. Filter Editor

Filter editor now supports both literals and role references. Wizard mode understands old functional format of value specifications and translates values to a literal format on save.

4. Formula Viewer

Formula viewer decorates column/variable/role references as links to corresponding setup pages.