Delivery Type Maintenance

From Portal

This page allows the user to maintain available delivery types on the system. To create a delivery type the user should enter a Delivery Type Code e.g. NEXD and a Description e.g. Next Day Delivery into the relevant boxes in the 'Create New Delivery Type' section of the page, and then click the 'Create Delivery Type' button.

WMS-DELTYPE-6.png

Once this is done, the details for the delivery type can be maintained:

WMS-DELTYPE-7.png

The Edit Delivery Type section allows the user to select/edit/delete a delivery type. The delivery type drop-down contains all of the available delivery types, and the availability drop-down can be used to make a delivery type available, restricted (not currently used) or unavailable on the system. The 'No Days' field will be described in the Delivery Type Calculation section below.

Day Type - This specifies whether the day is 'normal' i.e. non-delivery or 'delivery' i.e. deliveries can be made on this day.

Cut Off Day / Time - Only available for delivery days, this specifies if there is a cut-off day/time prior to this day for the end of the delivery e.g. a cut-off off for Wednesday set to Monday 4:00pm means that for delivery on Wednesday, an order must be placed before 4:00pm on Monday.

See the next section for details of the delivery type calculation.


Delivery Type Calculation

The delivery date will be calculated whenever an order is created or the delivery type is changed. The calculation below appears complex, but once understood gives great flexibility to setup any number of delivery/service levels.

The process will be as follows:

  1. Check the delivery type associated with the order. If a delivery type has not been set then set the delivery date can be selected from a calendar.
  2. Set the delivery date to the current date.
  3. Store the number of delivery days ('No Days' field) for this delivery type in a temporary value
  4. If the delivery date is a delivery day and it does not have an associated cut-off day, then reduce the No Days by one.
  5. If the delivery date is a delivery day and it does have an associated cut-off day then calculate the cut-off date/time for this particular delivery date (see below) and compare to the current date/time. If the current date/time is before the cut-off date/time then reduce the 'No Days' by one. Note: If the current date/time is not before the cut-off date/time then do nothing, i.e. ignore the fact that is a delivery day as the cut-off was missed.
  6. If the Num days is zero then quit, delivery date calculation is complete
  7. Add one day to the delivery date and go back to step 4.

If a delivery date represents a day of the week that is a delivery day with an associated cut-off day of the week and time then the following steps will be followed to determine the cut-off date/time for that particular delivery date.

  1. Set the cut-off date to the delivery date.
  2. Set the cut-off time to the cut-off time for the delivery day (i.e. from delivery type data).
  3. If the day of the week the cut-off date represents is the same as the cut-off day for the delivery date then quit, cut-off date calculation is complete.
  4. Reduce the cut-off date by one day and go back to step 3.

In this way the delivery date will start with the current date and then be moved forward until the specified number of delivery days has been met, ignoring any delivery day for which the cut-off has been missed, i.e. if number of delivery days is set to 3 the date will be moved forward to the third delivery day.