--- title: "Direct Replenishment" slug: "direct-replenishment" description: "Streamline your supply orders with Direct Replenishment, a manual journal for efficient purchase and production order creation without MRP calculations." status: "update" updated: 2026-09-03T09:16:00Z published: 2026-09-03T09:38:47Z canonical: "docs.abakion.com/direct-replenishment" --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.abakion.com/llms.txt > Use this file to discover all available pages before exploring further. # Direct Replenishment ## Feature Overview Direct Replenishment gives a purchasing planner a fast, context-rich journal for creating supply manually — without waiting for an MRP-style calculation to trigger it. Instead of the app deciding which items need attention, the planner brings their own list of items (and quantities, if they already know them) into the journal, and the app fills in everything else: current inventory, demand on sales/production/transfer orders, existing supply, and lead-time-aware order and supply dates. The journal is built on the same calculation engine and Planning Template infrastructure as Simple MRP, so a planner still benefits from safety stock, reorder point, and lead-time-aware dating even when placing an ad hoc order — they just aren't limited to items the system flags as short. The **Suggest Quantity to Order** action (driven by an Order Quantity Template and a linked Date Template) can auto-fill both the quantity and the date the same way it does in Simple MRP, or the planner can enter both manually and let the calculation just enrich the line with context. Once lines are ready, **Carry Out Action Message** sends accepted lines to the Planning Worksheet, where BC's standard Carry Out Action Message mechanism creates the actual purchase, production, or transfer orders. Direct Replenishment also supports converting lines to a demand forecast (if Flexible Forecast is installed) and viewing a graphical inventory profile per item (if Graphical Inventory Profile is installed). | | | | --- | --- | | **Pages involved** | Reverse Planning – Direct Replenishment, Reverse Planning – Planning Templates, Reverse Planning – Worksheet Setup | | **Entity types supported** | Items and Stockkeeping Units, at a specific location and variant | | **Key configuration fields** | Planning Feature (on the Planning Template, fixed to Direct Replenishment), Default Start/End Date, Include Purchase/Production/Transfer Orders, Calculation Period | | **Integrates with** | Planning Worksheet (destination for accepted lines); Sales Order Handling (can use its proposed dates instead of actual sales order dates); Rolled Up Lead Time (feeds the lead-time calculation); Flexible Forecast (Convert to Forecast); Graphical Inventory Profile (visual inventory curve); Assign Quantity (assigned quantities instead of order quantities) | ## Getting Started 1. Open **Reverse Planning – Worksheet Setup** and confirm your user has a Journal Batch Name configured — Direct Replenishment requires one before it will open. 2. Open **Reverse Planning – Planning Templates**, filtered to the Direct Replenishment feature, and create (or use **Refresh Standard Templates** to load) at least one template. Set the Default Start Date/End Date and which demand and supply types to include. 3. If you want automated quantity suggestions, set up an **Order Quantity Template** and a linked **Date Template**. 4. Open the **Reverse Planning – Direct Replenishment** journal. 5. Add a line for the item (and location/variant, if applicable) you want to order. 6. Run **Calculate Direct Replenishment** to enrich the line with inventory, demand, and supply context. 7. Optionally run **Suggest Quantity to Order** to auto-fill the quantity and date. 8. Mark **Accept Action Message** on the lines you want to proceed with, then run **Carry Out Action Message** to send them to the Planning Worksheet. ## Related Features Direct Replenishment shares its underlying calculation engine, Planning Templates, and the Planning Worksheet with **Simple MRP** and **Move Demand Dates** — the difference is that Direct Replenishment starts from a planner-chosen item, not a system-flagged shortage. It can pull proposed dates from **Sales Order Handling** instead of the sales order's own date, and from **Rolled Up Lead Time** for assembled/produced items. It integrates with **Flexible Forecast** (convert journal lines to forecast entries) and **Graphical Inventory Profile** (visual inventory curve per line), when those apps are installed. ## User Stories ****Manually adding an item to order**** **As a** purchasing planner **I want to** add a specific item, location, and variant to the Direct Replenishment journal myself **So that** I can place an order for something I already know needs replenishing, without waiting for a system-triggered suggestion **Setup:** 1. Open **Reverse Planning – Direct Replenishment**. 2. Add a new line and enter the Item No. (and Location Code / Variant Code, if applicable). ****Enriching a manually-added line with inventory and demand context**** **As a** purchasing planner **I want to** see current inventory, demand, and supply information for the item I added **So that** I can decide how much to order and when, based on real data rather than guesswork **Setup:** 1. With the line's Journal Batch Name set, run **Calculate Direct Replenishment**. 2. Review the Inventory, End Inventory, Lowest Inventory, and demand/supply quantity fields that populate on the line. ****Auto-filling the order quantity and date**** **As a** purchasing planner **I want to** let the app suggest the order quantity and date based on an Order Quantity Template **So that** I don't have to calculate safety stock and reorder point math by hand **Setup:** 1. Ensure the Planning Template used has an Order Quantity Template (and linked Date Template) configured. 2. On the journal line, run **Suggest Quantity to Order**. > **Note:** The suggested quantity and date depend entirely on the Order Quantity Template and Date Template configuration — different templates can produce very different results for the same item. ****Reviewing item availability before deciding on a quantity**** **As a** purchasing planner **I want to** see the lowest projected inventory, first date below zero, and first date below safety stock or reorder point **So that** I can judge urgency and choose a sensible order date even if I set the quantity manually **Setup:** 1. Run **Calculate Direct Replenishment** on the line. 2. Review the First date below zero / Safety Stock / Reorder Point fields. ****Viewing a graphical inventory profile for an item**** **As a** purchasing planner **I want to** see a visual chart of projected inventory over time for the selected line **So that** I can spot the shape of a shortage at a glance instead of reading individual date fields **Setup:** 1. Select a line in the journal. 2. Run **Graphical Inventory Profile** (requires the Graphical Inventory Profile app to be installed and enabled). ****Splitting a large order across the maximum order quantity**** **As a** purchasing planner **I want to** have a large suggested order automatically split into multiple lines respecting a maximum order quantity **So that** each resulting order stays within vendor or packaging limits **Setup:** 1. Enable the "Split by Max Order Quantity" preview feature for the environment. 2. Run **Suggest Quantity to Order** on a line where the calculated quantity exceeds the item's/SKU's maximum order quantity. > **Note:** This is a preview feature — the "Is Split Line" column is only visible when the feature is enabled. ****Accumulating supply into lot-sized orders**** **As a** purchasing planner **I want to** have proposed supply accumulated into lot-sized quantities over a defined period **So that** I don't create many small orders when a single larger, less frequent order is more efficient **Setup:** 1. Enable the "Split by Lot Accumulation Period" preview feature for the environment. 2. Run **Suggest Quantity to Order** — accumulated lines are marked as lot accumulation lines. > **Note:** This is a preview feature — the "Is Lot Accumulation Line" column is only visible when the feature is enabled. ****Choosing which lines to send to the Planning Worksheet**** **As a** purchasing planner **I want to** mark only some of the calculated lines for further processing **So that** I control exactly which proposed orders actually get created, rather than acting on every line at once **Setup:** 1. Review the calculated lines and their Action Message field. 2. Set **Accept Action Message** individually per line, or use **Set Action Message** to batch-update it across selected lines. ****Creating the actual purchase, production, or transfer order**** **As a** purchasing planner **I want to** turn my accepted Direct Replenishment lines into real orders **So that** the replenishment I planned actually gets executed in Business Central **Setup:** 1. Ensure the relevant lines have **Accept Action Message** marked. 2. Run **Carry Out Action Message** — accepted lines move to the Reverse Planning – Planning Worksheet as requisition lines. 3. In the Planning Worksheet, run BC's standard Carry Out Action Message to create the purchase, production, or transfer order. ****Ordering from a specific transfer-from location instead of a vendor**** **As a** purchasing planner **I want to** replenish an item by transfer from another location rather than by purchasing **So that** I can use existing stock elsewhere in the company instead of buying more **Setup:** 1. On the journal line, ensure the item/SKU's Replenishment System supports Transfer. 2. Set the **Transfer-from Code** field on the line to the source location. ****Keeping a line in the journal after carrying it out**** **As a** purchasing planner **I want to** keep a processed line visible in my journal instead of having it removed after Carry Out Action Message **So that** I retain a record of what I already ordered directly from this journal **Setup:** 1. On the line, before running Carry Out Action Message, set **Keep Line After Carry Out** to Yes. ****Converting Direct Replenishment lines to a demand forecast**** **As a** purchasing planner **I want to** convert quantities I entered in Direct Replenishment into forecast entries **So that** anticipated future demand is reflected in forecast-driven planning elsewhere in the app **Setup:** 1. Ensure the Flexible Forecast app is installed and enabled. 2. Select one or more lines with a Quantity to Order filled in. 3. Run **Convert to Forecast**. > **Note:** Only lines with a Quantity to Order value are considered by this action. ****Using assigned sales quantities instead of full order quantities**** **As a** purchasing planner working with allocated demand **I want to** have the calculation use the Assigned Quantity field on sales, transfer, or production/assembly component lines instead of the full order quantity **So that** replenishment reflects only the portion of demand actually allocated to this scenario **Setup:** 1. Ensure the Assign Quantity app is installed and enabled. 2. On the Planning Template used by Direct Replenishment, enable the relevant "Use Assigned … Quantity" option(s) for sales, transfer, production component, or assembly lines. ****Using proposed dates from Purchase Order Management instead of actual order dates**** **As a** purchasing planner **I want to** have the calculation consider the proposed new date from the Purchase Order Management journal rather than the date currently on the purchase order **So that** my replenishment planning reflects realistic, up-to-date expected receipt dates **Setup:** 1. Ensure the Purchase Order Management app is installed and enabled. 2. On the Planning Template, enable **Use Purchase Order Handling**. ****Reviewing rolled-up lead time before ordering an assembled or produced item**** **As a** production planner **I want to** see the cumulative lead time through an item's BOM structure before I place a Direct Replenishment order **So that** the order date I choose is realistic for a multi-level item, not just its own top-level lead time **Setup:** 1. Run **Calculate Rolled up Lead Time** for the item (via the journal action or the Rolled up Lead Time page) before ordering. 2. On the Planning Template, set Calculation Period to Rolled up Lead Time if you want the calculation itself to use it. ****Restricting a template to a specific worksheet template and batch**** **As a** planning administrator **I want to** limit a Direct Replenishment template's view of existing planning lines to one worksheet template and journal batch **So that** the calculation doesn't pick up unrelated planning lines from other journals sharing the same worksheet **Setup:** 1. On the Planning Template, set **Worksheet Template Name** and **Journal Batch Name** to the specific worksheet/batch you want considered. ****Setting a default location for direct replenishment calculations**** **As a** planning administrator **I want to** configure a default location filter for Direct Replenishment **So that** planners calculating without specifying a location automatically get results scoped to the right site **Setup:** 1. Open the availability setup for the Direct Replenishment feature and set the **Default Location** field. ## Field Reference | Field name | Where to find it | What it does | Default value | | --- | --- | --- | --- | | Journal Batch Name | Reverse Planning – Direct Replenishment | Identifies the personal journal batch the planner is working in. | Set per user in Worksheet Setup | | Quantity to Order | Reverse Planning – Direct Replenishment | The quantity to be ordered on this line, manually entered or filled in by Suggest Quantity to Order. | (blank) | | Transfer-from Code | Reverse Planning – Direct Replenishment | Source location to transfer from, when replenishing by transfer instead of purchase. | (blank) | | Accept Action Message | Reverse Planning – Direct Replenishment | Marks a line to be included when Carry Out Action Message is run. | No | | Keep Line After Carry Out | Reverse Planning – Direct Replenishment | Keeps the line in the journal after it has been carried out, instead of removing it. | No | | Default Start Date / Default End Date | Reverse Planning – Planning Templates | The date range the calculation covers by default. | (blank) | | Calculation Period | Reverse Planning – Planning Templates | Determines the horizon used to decide which demands to include (End Date, Lead Time, or Rolled up Lead Time). | End Date | | Include Purchase/Production Orders, Include Transfer Demand/Supply | Reverse Planning – Planning Templates | Controls which existing order types are counted as supply or demand in the calculation. | Varies by field | | Use Purchase Order Handling | Reverse Planning – Planning Templates | Uses proposed dates from Purchase Order Management instead of actual purchase order dates. | No | | Use Sales Order Handling | Reverse Planning – Planning Templates | Uses proposed dates from Sales Order Handling instead of actual sales order dates. | No | | Default Location | Direct Replenishment availability setup | Default location filter applied when calculating without an explicit location. | (blank) |