Genesys Rules System Rules Authoring Tool Release Notes
New in This Release
This is a hot fix for this product. This release contains the following new features or functionality:
- Business Calendars Dynamic Timezone Support—Business calendars have been enhanced to allow the timezone to be provided at rule-evaluation time.
When the GRAT user configures a business calendar, a timezone is chosen along with the other attributes of the calendar (normal work week, exceptions, holidays). In some cases, you might want to have the same calendar reused for different timezones.
In this release, the standard methods that can be accessed from within the rule template have been extended to allow the timezone ID to be passed in at rule evaluation time. If the timezone ID is not passed in in this way, then the "saved" timezone is used. If the timezone ID is passed in, then it overrides the saved timezone and the calculations will be done using the passed-in timezone.
The following new method signatures have been added to the BusinessCalendar object, and can be invoked from within a rule function:
- public boolean isWorkingDay(Date theDate, String timeZoneID);
- public boolean isHoliday(Date theDate, String timeZoneID);
- public boolean isException(Date theDate, String timeZoneID);
- public boolean isWorkingTime(Date theTime, String timeZoneID);
- public int diffWorkingDays(Date date1, Date date2, String timeZoneID);
- public int diffWorkingHours(Date date1, Date date2,String timeZoneID);
- public int diffWorkingMinutes(Date date1, Date date2, String timeZoneID);
- public long diffWorkingSeconds(Date time1, Date time2, String timeZoneID);
- public Date beginningOfWorkingDay (Date time, String timeZoneID);
- public Date endOfWorkingDay (Date time, String timeZoneID);
- Business calendars have been enhanced to distinguish between holidays and non-working days. Four new methods have been added to the business calendar object:
- isHoliday()—Returns whether this calendar day is a holiday. Holidays are always non-working days.
- isHoliday(date)—As for isHoliday() but allows you to specify the date to check.
- isException()—Returns whether the day is an exception to the standard work schedule. An exception includes either a time change or a holiday.
- isException(date)—As for isException() but for a specified day.
- Timezone names are now prefixed with their UTC offset to enable easier sorting and display in drop-down lists. For example; (UTC-5) Eastern Standard Time.
- A new role privilege—Business Rule - Edit Only—allows a user to edit and save only the parameter values of a rule. (No other permissions are granted with this role privilege—such as adding new conditions or actions, moving rules or changing their order, adding, deleting or copying rows, making changes to the rule summary.) If Business Rule - Modify has value false and Business Rule - Edit Only has value true, this behavior is enabled. If Business Rule - Modify has value true, then Business Rule - Edit Only is ignored.
- In order to enable users to control whether either the name or the display name of a Configuration Server list object is encoded in the DROOLS rule file, a new configuration option has been implemented:
Option name: list-object-use-name
Valid values: true/false
When parameters are used that reference Configuration Server list objects, this option controls whether the name or display name is encoded in the rule file. Specify true to use the Name field or false (default) to use the display name.
- You can now choose to either show or hide the ID and NAME columns in individual Decision Tables. The user interface now displays the 'hide' option (X) on both ID and Name columns of a Decision Table body. (Previously this was displayed only for Conditions/Actions.) Click X to hide the column for any Decision Table. This preference is saved, so it will persist.
When the ID or NAME column is hidden, under Add Condition you will also see new entries—Show ID Column and/or Show Name Column—at the top of the list. These options allow you to show a previously hidden column.
Corrections and Modifications
This release also includes the following corrections or modifications:
In certain situations, the order of execution of the rows within a decision table can be unpredictable, especially when using wildcards. This has been corrected by forcing all rows of a decision table to have a unique salience (priority) value. For this to take effect, any rule package where this is occurring must be re-deployed to GRE. (GRS-2520)
An incorrect message that was generated when deleting a scheduled snapshot has been corrected. The correct message now displays. (GRS-2447)
Incorrect parsing of Web Service parameters that could occur if the web service returned a character set encoding (for example, UTF-8) has been fixed. (GRS-2440)
Business calendars can now support a 24-hour workday. To specify a 24-hour workday, specify midnight for both start/end times. (GRS-2439)
The full list of time zones is now available in both Business Calendars and Test Scenarios. Previously, the list of time zones in the business calendars was inconsistent with the time zones visible in Test Scenarios. (GRS-2438)
GRAT has been modified to resolve an internal error (ArrayOutOfBoundsException) which could occur if a linear rule exceeded the maximum number of parameter columns because of a bug in the rule template. (GRS-2410)