DBI Warehouse Shipments Scheduling
Framework -
Using Recurrences
Providing Developer flexibility
Recurrence defines scheduled events that
re-occur on a regular basis. A recurrence may be scheduled
daily, weekly, monthly, quarterly or on a yearly basis.
Using recurrence, exceptions may be created once and then
used to assure the shipping and receiving processes are
managed appropriately.
Rapid Application Development
Recurrences provide for the
scheduling of recurring loading dock exceptions (coded in
the dbiWSF) or recurring shipments ( not coded as the rules
surrounding them are specific to data integration).
A recurring exception can be created by setting the objRecurrence.ObjectType to RecurrenceObjectType = DockException. The recurrence object can then be set to use a recurring algorithm to determine the recurrence dates or a specific set of custom dates. The algorithm used can be determined by setting the objRecurrence.RecurrenceType:
-
Daily - Recurs daily based on Frequency.
-
Weekly - Recurs weekly based on the DaysOfWeek and Frequency.
-
Monthly - Recurs monthly based on the Frequency.
-
Custom - Allows the developer to add a collection of dates to the Recurrence object and use those accordingly.
When using the Weekly type the
objRecurrence.DaysOfWeek property needs to be set to
indicate which days of the week are to be included. This
property is an array of type byte. This array is based on
the
System.Globalization.DateTimeFormatInfo.CurrentInfo.FirstDayOfWeek
that is set on the application and each byte added should
correspond to the day of the week.
The dbiWSFUserInterface contains a
DaysOfWeek control that will generate a checkbox display of
the days of the week and convert the check-boxed days into
an array and conversely parse that property back out for
display. The objectstartdate and objectenddate are the
physical times on which to create the exception, while the
RecurringStartDate and RecurringEndDate indicate the
timespan for the recurrence.
For Example - a lunch time
exception
So to set a daily lunch time exception you would set the ObjectStartDate = 12:00 pm and the ObjectEndDate to 1:00pm. Then set the RecurrenceStartDate = Jan 1, 2010 and the RecurrenceEndDate = Dec 31, 2010. Don�t forget the RecurrenceType = Daily.
The RecurringObjects property has been designed generically so that other recurrence types can be added, but as the framework ships with LoadingDockExceptions enabled, the RecurringObjects property would be a collection of loading dock ID GUIDs to which this recurrence object will apply.
Otherwise the Recurring Exceptions behave the same as LoadingDockExceptions (more information
is provided in the Using dbiWSF � Exceptions documentation).
Loading dock Exceptions and
Recurring Exceptions
When used in combination with the LoadingDockExceptions there is a requirement to generalize the loadingdockexceptions and recurringexceptions especially in regard to business rules and general usage which is addressed by a special object called dbiWSF.FrameworkObjects.GenericException. This object is handled by methods on the dbiWSF.FrameworkObjects.objWSFObjects (the parent host container for the dbiWSF) called GetGenericExceptions. These methods give the developer a collection of the GenericExceptions with several overloads (by loading dock for example, and by date ranges) to provide the developer flexibility when using the exceptions.
|