Inventory and Assembly Item Support
Advanced Inventory Management supports inventory and assembly items. Transactions using kits or item groups are used in AIM, but only for member items. AIM is not run for kit/group parent items.
AIM runs for all items when you select Reorder Point as the replenishment method. On each item record, you can choose whether to run AIM for each variable: Preferred Stock Level, Reorder Point, and Lead Time. Check the Auto-calculate box next to the field.
You can also set the item record values for Safety Stock Level Days, Expected Demand Change, and whether to use Seasonal Demand.
AIM calculations are typically scheduled to run weekly. It is not a real-time calculation. Transactions are entered after the AIM calculations complete, and they aren't included. You can start a calculation manually from the Day of Week To Perform Calculation and Time of Day to Perform Calculation preferences.
If Preferred Stock Level, Reorder Point, and Lead Time are set to Auto-calculate, calculations proceed as follows:
-
Date of First Sale / Date of First Order – This is a hidden variable. It checks if there's enough information to process an item. NetSuite uses the first sale or first order date, based on your Transaction to Consider preference. If you use Multi-Location Inventory, NetSuite calculates this for each item and location. If not, it calculates it for each item.
-
Demand per Day – This is also a hidden variable and is a key value for other AIM calculations. If you use Multi-Location Inventory, NetSuite calculates this for each active location.
NetSuite considers transactions based on the Transactions to Consider preference and the analysis interval. If seasonal demand is on, the starting point is today minus 365 days. The end point is the starting point plus the number of days in the Seasonal Analysis Interval. The system expects seasonal demand to be similar each year. The size of the seasonal “window” depends on the Seasonal Analysis Interval.
If seasonal demand is off, the starting point is today minus the Order Analysis Interval in days. The end point is today.
NetSuite adds up the item quantities from Transactions to Consider during the analysis interval. It then divides that by the number of days in the interval to get demand per day. If an order is closed, NetSuite uses only the quantity that's been fulfilled or built. If the order isn't closed, NetSuite uses the original item line quantity.
NetSuite checks if the Date of First Sale / Date of First Order is before the start of the analysis interval to ensure there's enough data. For example, you can't run a seasonal demand calculation if the Date of First Sale / Date of First Order was last week.
-
Auto-Calculate Lead Time – Respects the preference Use Lead Time and Safety Stock per Location.
NetSuite sets lead time to the average of the three most recent fully received Purchase Orders. You need to have at least three Purchase Orders with corresponding Item Receipts. If the Bill in Advance of Receipt preference is enabled, you can also have corresponding Vendor Bills.
For each set of three purchase orders, NetSuite finds the difference between the Purchase Order transaction date and the final receipt date. Then, it averages these three lead times.
Note:Note that this value is for purchasing lead time, not work order lead time (build time). For assembly items, you need to turn on the Allow Purchase of Assembly Items preference for automatic calculations to work. Go to Setup > Accounting > Accounting Preferences > Order Management > Work Orders. AIM doesn't support auto-calculation of the work order lead time.
-
Auto-Calculate Reorder Point – Respects the preference Use Lead Time and Safety Stock per Location.
The reorder point is a rounded value of the following:
(Demand per Day × Estimated Demand Change × (Lead Time days+Safety Stock days)) + Safety Stock units
Example
If your Demand per Day is 20 units and your Estimated Demand Change is 5%, then your demand per day is 20 units × 1.05 = 21 units. If your lead time is 5 days, this means it takes 5 days from placing a Purchase Order to receiving it. Therefore, you'll need at least 21 units × 5 days = 105 units on hand to avoid running out. If you place your Purchase Order when you have 21 units, you can fill orders for one day, but you'll have to wait another 4 days for your order to arrive.
Safety stock in days means that you want an additional n days as a buffer. In the previous example, if you set Safety Stock to 2 days, you add that to your lead time days. So, you want 21 units × (5 days + 2 days) = 147 units. Your final reorder point is 147 units.
You can also set your safety stock in units instead of days. If you set your safety stock to 30 units, your safety stock in days is now blank. Therefore, the formula process this as: (21 units × (5 days + 0 days)) + 30 units. In this case, your final reorder point is 135 units.
In the preceding formula, if Estimated Demand Change, Lead Time days, or Safety Stock days are blank, NetSuite uses the default value from Inventory Management Preferences. If values for Demand per Day or Safety Stock units are blank, NetSuite uses zero.
-
Auto-Calculate Preferred Stock Level – Respects the preference Use Lead Time and Safety Stock per Location.
The preferred stock level is the greater of two values, the Reorder Point or the following rounded value:
Demand per Day × Estimated Demand Change × Preferred Stock Level days
Example
If your item has a Demand per Day of 20 units and your Estimated Demand Change is 5%, then your “true” demand per day of 20 units × 1.05 = 21 units. Your Reorder Point is 147 units.
If you want to keep enough stock for 10 days, set Preferred Stock Level days to 10. NetSuite takes 10 days × 21 units = 210 units. This amount is more than your Reorder Point of 147 units, so your final Preferred Stock Level is 210 units.
If your Preferred Stock Level days is instead 5 days, then 5 days × 21 units = 105 units. This amount is less than your Reorder Point of 147 units, so your final Preferred Stock Level is 147 units. You can't have a Preferred Stock Level lower than your Reorder Point or you'll run out of stock.
If the Estimated Demand Change or Preferred Stock Level days are blank, NetSuite uses the default value from Inventory Management Preferences. If Demand per Day is blank, NetSuite uses zero.
Best Practice Using Auto-Calculation
After you turn on the Advanced Inventory Management feature, when setting up inventory records, don't immediately set up auto-calculation for stock levels and demand for ordering items. This is a best practice because if you don't have enough sales history when you start auto-calculation, the data might not be accurate.
Auto-calculation uses the full interval only if there are sales for the item before the interval starts. If not, it tries using half the interval. If there's still not enough data, the reorder point and preferred stock level stay the same. Later, you can enter manual metrics, or auto-calculations can run at a later date when there's enough sales data.
Avoid entering a set value for the inventory level at first. Later, you can turn on auto-calculation for item records using a mass update. For more information about mass updates, see Mass Updates.