Delivery Policy

From ADempiere
Jump to: navigation, search
This Wiki is read-only for reference purposes to avoid broken links.

Table of Contents{{#if: | | [[{{{2}}}]] }}{{#if: | | [[{{{3}}}]] }}{{#if: | | [[{{{4}}}]] }}{{#if: | | [[{{{5}}}]] }} | Delivery Policy{{#if: | | [[{{{next}}}]] }} ⇒

Note.gif Note:

The Functional Team is preparing to release the 3.70 software and is considering including the Delivery Policy feature, created by Daniel Tamm, as part of the application. Our testing of this feature has raised a few questions and the Functional Team would appreciate your opinions before we make the decision to include the feature or not. Please comment on discussion page or in the Source Forge forum post. The decision will be made on 29 July 2011.

The Delivery Policy is a method to control the reservation and allocation of stocked products to customer orders before they are shipped. See the discussion page for details.

The Delivery Policy only applies to Order Documents that do not create indirect invoices and shipments such as Point Of Sale orders.

Delivery Policy Options

No Hold

The default Delivery Policy is called "No Hold" meaning that no items are held for a specific customer and orders or partial orders are shipped as soon as enough material is available.

For simple inventory management, the No Hold policy is adequate as the orders can be managed by hand. Orders can be shipped as soon as sufficient material is available in inventory as there is usually always enough inventory to handle the volume of orders.

In more complex environments where items flow in and out of a warehouse quickly, there may never be "enough" material available at one time to satisfy all the outstanding orders. In this case, the No Hold policy can create situations where some larger orders might never be fulfilled as the material available is consumed by smaller orders. This can result in "order starvation". The risk of starvation increases if there are many orders for similar items and the orders have several different line items.

Strict order

The Delivery Policy "Strict order" means that material must be allocated to the order before it is shipped. Only material on hand can be allocated. The allocation can be done manually or automatically by the software.

The automatic process allocates material to orders according to the:

  • Priority of the order
  • Date of the order line (ie when it was created)

Set Up

The Delivery Policy is activated in the {{#if: |{{{2}}}|Client }} Window, {{#if: Client Info|Client Info|Client_Info }} Tab.

The Client Delivery Policy is the "Master" policy. It is possible to define other delivery policies for different organizations in the {{#if: |{{{2}}}|Organization }} Window, {{#if: Organization Info|Organization Info|Organization_Info }} Tab. For Example the Postal Order organization can have a different delivery policy than the Product Order organizations.

Default delivery policy is "No Hold". This means that orders are shipped as soon as they can be completed. No regard is taken to order date.

Placing an Order

When an order is prepared or completed, physical items are reserved. The number of items reserved can be higher than the number of items physically in stock at the time the order is entered. Normally, the reserved quantity will equal the ordered quantity. During the reservation process, the delivery policy tries to allocate physical items as well. Physical items can only be allocated if they are in stock.

When Allocation Takes Place

When Orders Are Prepared or Completed

Allocation initially takes place when items are reserved. This occurs when the order is prepared or completed.

If orders exist that have not been fully allocated (called "starved" orders) and a new order is placed before the starved orders have been allocated but after new items have arrived to stock, the starved orders are allocated before the new order.

When Material Receipts Are Completed

If you don't want to think about allocating orders manually there's a possibility to activate a validator that is called when material receipts are completed.

When the receipts are completed the products received are checked if they should be allocated to any orders waiting.

If the allocation is not made at this point it will be made when a sales order is prepared or completed or when the allocation process is run manually.

The validator is called:

org.adempiere.validator.MaterialReceiptModelValidator


Note.gif Note:

Need to add pointers to instruction on calling the validator.

Manual Process

If you want to make sure all allocatable items are allocated you can run the allocation process manually before you do your shipments.

The allocation process is found under in the Quote-to-Invoice{{#if: Shipments |  » Shipments }}{{#if: Allocate Sales Orders |  » Allocate Sales Orders }}{{#if: |  »  }}{{#if: |  »  }}.