How can we record part consumption


We are using Navision for Warehouse/Inventory management. We want to integrate Navision with our custom-build Manufacturing system (.Net web-application) in order to record parts consumption.

We have set up NAS, MSMQ and managed to get it all working. We now need to develop a function in Navision which takes a list of Item No. with quantities and bin code and records the fact given items were consumed from the given bin. How can we do that?

Should we post an entry into Item Journal?

Should we post an entry into Physical inventory Journal?

What entry type should we use? Negative Adjustment?

We do not have Production Orders in Navision and our Bins require picks.

Thank you for you attention and we would appreciate any advice/comment/information


Welcome to the Dynamics User Group.

If you do not use Nav production orders then Item Journal are probably best (as Negative Adjustments). The two main issues I can see for you is

  1. Validating that the correct Bins have been used

  2. Costing of materials and the cost of the production return.

I think the biggest problem from my point of view is related to output item costing. Since you are using item journals to produce output you can’t have correct costing.

You could make a transfer to another location and try to use BOM Journal

Thank you very much for your input.

We do not expect costing to be an issue since we are using Navision only for parts inventory management. Costing is done outside of Navision.

I am trying to use the following code to post Item Journal Entry:

// journal template selection
ItemJournalTemplate.SETRANGE (Recurring, FALSE);
ItemJournalTemplate.SETRANGE (Type, ItemJournalTemplate.Type::Item);
ItemJournalTemplate.FIND (’-’);

// journal batch selection
ItemJournalBatch.SETRANGE (“Journal Template Name”, ItemJournalTemplate.Name);
ItemJournalBatch.FIND (’-’);

// new journal line
ItemJournalLine.“Journal Template Name” := ItemJournalTemplate.Name;
ItemJournalLine.“Journal Batch Name” := ItemJournalBatch.Name;
ItemJournalLine.“Line No.” := 10000;
ItemJournalLine.VALIDATE (“Item No.”, ItemNo);
ItemJournalLine.VALIDATE (“Location Code”, LocationCode);
ItemJournalLine.VALIDATE (“Bin Code”, BinCode);
ItemJournalLine.VALIDATE (“Document No.”, DocumentNo);
EVALUATE (qty, Quantity);
ItemJournalLine.VALIDATE (“Posting Date”, TODAY);
ItemJournalLine.VALIDATE (Quantity, qty);
// 3 = Negative Adjustment
ItemJournalLine.VALIDATE (“Entry Type”, 3);

// post the newly created journal line
ItemJnlLinePost.RUN (ItemJournalLine);

However when this code is executed I see error saying “Directed Put-away and pick” must be No in Location=LOC1".

We have Directed Put-aways and picks enabled on this location. Am I missing some data or is there any other way to make Navision happy and accept this journal entry?

You are using advanced warehouse features so you can use an item journal to increase items but you should use and warehouse journal.

I guess you mean that you are using Production Costing outside on NAvision?

But there will alwyas be costs posted in Navision when there are stock movements…

How will you reconcile your proposed consumption and I presume the output with the standard inventory costing in Navision?

I don’t know exactly this case but I know many implementations that are used to implemented 3PL. In those case don’t matter costing since products all have zero value cost. Probably this one of the cases. I guess [^o)]

Like Nuno, I have had a lot of clients that never even look at inventory valuation in Navision, they have the Post Cost to G/L switched off, and never run the batch.

Thank you for your input.

I have managed to modify the code to post into Warehouse Journal and now it all seems to work. I have created 2 procedures - one to post part consumption and another to get item quantity using Warehouse entry. When I record part consumption using one procedure I can observe correct quantity decrement using another procedure.

However adjustments made in Warehouse Journal are not registered in the Item Ledger automatically. I am not quite sure what is affected as a result of that. Should I extend my procedure to register warehouse adjustments in item ledger when part is consumed? Or should these adjustments be registered manually?

Regarding costing. We repair phones and the cost of the repair does not depend on which parts were used. There are fixed prices for different repair types and some of the more expensive repairs have to be authorised with the customer first. Navision is not involved in that. We use Navision to keep track of parts and order new parts when necessary.