DBi Warehouse Shipments Scheduling Framework




Resources



Application
Building Blocks




DBiWSF Objects



Developer
Resources




Developer documentation



Smart Client
Web Demo




Designing with
DBiWSF
Movies



DBiWSF Intro




Data binding



DBiWSF Objects



Business Rules



Reporting



User Interface



Integration

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.














































       
      DBI .NET Warehouse Scheduling Framework on CodePlex
    Introductory movies
    Developer Resources
    Review - developing with the Framework, a documented guide
   
Contact DBi
           
           
           
      all rights reserved  |  copyright  2017   |  Terms of Use    
           
      http://www.dbi-tech.com