Upgrading D365 Business Central On-premise to D365 Business Central Online.


Hi Buddies!  Hope you are well ?

My last blog was on Can we upgrade NAV to Business Central Online directly? If you haven’t seen it yet, please click here

This article covers the steps of how to upgrade from D365 Business Central On-premise to D365 Business Central Online.

Upgrade from NAV to Business Central online process consists of three parts:

  • Upgrade from Dynamics NAV to Business Central using the tools described in Upgrading to Business Central on-premises.
  • Convert non-standard functionality and customizations to apps and per-tenant extensions. For more information, see Deploying a Tenant Customization.
  •  Connect to the intelligent cloud, and then switch to use the Business Central online tenant going forward.

Read More »

Capacity Planning in NAV/D365 BC – Part 1

What is Capacity Planning ?

Capacity planning is creating a production plan which includes all of the operations required to fulfil the customer demand.

Who uses Capacity Planning? – Manufacturing and warehouse companies

Benefits of Capacity Planning

• Capacity planning allows your company to identify bottlenecks from the work centre load, streamline & manage operations, and minimize the risk of failure to meet the supply chain demand.

• Capacity planning helps the business understand the current capacity, maximum load that can be assigned meet the demands of the customer in the stipulated period of time.

Key aspects of capacity planning in NAV

•Shop Calendar

•Work Centres/Machine Centres


•Released Production


  1. Shop Calendar – On the NAV/D365 BC, type Shop Calendar. A shop calendar is a setup used for entering the work shifts and holidays.
We have 3 shifts starting from 5 a.m. on Monday and working 24 hrs everyday.

1.2 Click on Holidays to add the holidays so that capacity and load is not added to the work/ machine centres.

2. Work centres
  • A work centre can consist of a single machine with an operator who performs a specific task, such as assembly, machining, or casting.
  • Work centres helps us identify the capacity load, allocated load and available after orders.

2.1. On your search bar, type work centres and click on New.

2.2. Add the Name and a work centre group code. You can create a group code of your choice.

Work Centre Group Code-This group code is used to for reporting purpose where suppose we assign all operations like assembly, machining, packing for a product under a group code we can run the report and check for allocated load etc.

Direct Unit Cost– This is the labour rate for a single operator to run the machine.

Indirect Cost % – It’s the general operation cost %

Overhead rate– This includes the non-operational cost like maintenance cost.

Unit Cost– Its the summation of Direct Unit Cost+ Indirect Cost %+ Overhead rate.

Unit Cost Calculation – This can be either time/units. If the work centre is internally used then we generally use it as time and if it’s sent out to a subcontractor then we set it up as Units.

Specific unit cost – Select the Specific Unit Cost field if you want to define the work centre’s unit cost on the routing line.

Flushing Method – Add the flushing method to the work centre. We have 3 flushing methods, please choose wisely depending on your requirement.

  • Manual Flushing- The components of the BOM will be consumed when production/output journal is posted.
  • Forward Flushing- The components of the BOM will be consumed when the production order is released.
  • Backward Flushing – The components of the BOM will be consumed when production order is Finished

Gen. Prod Posting Group – Enter the Gen. Prod Posting group for the accounting ledger entries.

Unit of measure code – It’s the unit measure of time where capacity planning and cost calculations will be done. It can be in minutes, hours, days where 1 day =24 hours

Capacity – This can be either the operators or the machines. e.g. if you have 2 operators working on the machine then the capacity is 2 or if you have 3 machining machines that can run simultaneously then the capacity is 3.

Efficiency– Enter the percentage of standard output expected. By default 100 is the standard efficiency.

Consolidated Calendar– Enable consolidated calendar when you are using machine centres.

Shop Calendar code – Attach the shop calendar code you have setup in step 1. In my example it’s 3S

Queue Time– It’s a fixed time that must pass before task is assigned to the work centre

Queue time Unit of Measure code – Unit of measure for the queue time which can be minutes, hours, days.

Location code– Enter the location code if work centre is assigned to a specific location

Hierarchy of Work and Machine centres

  • Work centre group code is assigned to many work centre working under the same group e.g. 3 machines working in the day shift where day shift can be a group code.
  • There can be one to many work centres working serially or in parallel with each other.
  • There can be one to more machine centres assigned to a work centre.
Work centre – Machining

2.3 Once the work centre is setup, click on calculate work centre calendar to load the capacity to it.

Work centre -List

2.4. Click on Load to check if Capacity is assigned to the work centre. Please note the allocated Qty and load is still 0 as we have not assigned any task to the work centre which is explained further in the blog.

This marks end of part -1. We’ll look at Routing and Production order in part 2 with allocated qty, load management, balance and costing.

Thank you for reading! Part 2 releasing on 11/10/22

Let’s talk Data Efficiency in Business Central

Hi Everyone,

Performance speed isn’t the only factor that determines Business Central’s pleasant user experience

Business Central provides numerous features that increase data efficiency when exploring, navigating, and entering data

Key factors for data efficiency:

• Keyboard Shortcuts
• Focusing on lists
• Quick Entry
• Finding Pages and information with Tell Me
• Finding Pages and Reports with the Role Explorer
• Optimize your workspace for data entry
• Entering or editing using Microsoft Excel

  1. Keyboard Shortcuts – Keyboard shortcuts aid accessibility and can make it easier and more efficient to navigate to different areas and elements on a page. They’re supported by most web browsers
  2. Focusing on lists – When data is viewed in a list page, we can simply use the Focus on and off to switch your view to focus only on the line items. To focus on lines items, select anywhere in the line-item part, and then choose Focus Mode icon. in the upper right corner or press Ctrl+Shift+F12.
    To switch back to the normal view, choose Focus Mode icon. or press Ctrl+Shift+F12 again.
  3. Quick Entry – Accelerate your data entry using Quick Entry. With Quick Entry, you use the Enter key to navigate through only those fields that you’re interested in. Quick Entry skips non-editable fields and fields that you typically don’t fill in.
    You can customize Quick Entry by personalizing your workspace and optimizing how you enter data on each page.
  4. Finding Pages and information with Tell Me – Tell Me can help you quickly go to things like actions, pages, or reports, find information about how to complete a particular task, and discover additional apps and consulting services for Business Central
  5. Finding Pages and Reports with the Role Explorer – Each element on the role explorer is an action that opens a page. Accordingly, you can also use the role explorer to navigate in Business Central. On your Role Centre or any list page, choose the button to the right of the navigation bar, or press Shift+F12.
  6. Optimize your workspace for data entry – You can personalize your workspace to suit your work and preferences. Change pages so that they display only the information you need, where you need it. The personalization changes will only affect what you see, not what other users see.
  7. Entering or editing using Microsoft Excel – With pages that display a list of records in rows and columns, like a list of customers, sale orders, or invoices, you can export the list to Microsoft Excel, and view it there. Depending on the page, you have two options for viewing in Excel. Both options are available from the Share icon at the top of a page. You can either select the Open in Excel action or the Edit in Excel action on the page

Data which loads faster…

Business Central has numerous mechanisms that make the user interface more responsive and help pages load faster.

Caching for Data Efficiency!!

The overall structure of a page (but not business data) is cached on the client device when a page is accessed the first time. The next time that same page is accessed, the layout of the page will be immediately displayed, while the latest data is fetched from the Business Central service.

How to copy File contents using InStreams and File Operations in NAV/D365 Business Central?


Working with streams is fun and also tricky if we don’t get it right. I’ll be going through an example of how to read a file and copy some part of a file to another file using Instream and file operations.

The InStream (input stream) and OutStream (output stream) data types are generic stream objects that you can use to read from or write to files and BLOBs


  1. Firstly I will explain the file and the contents I would like to copy to another File.
  • The First line describes the header of the file
  • The second line describes the product attributes
  • The DELIVERY section describes the schedule of the product for daily, weekly and monthly

2. My aim is to copy only the daily schedule of the file to another file using the below approach

  • Firstly, I’ll have to create a file and read the contents using Instream
  • Use string functions and file operation to copy the contents of the file for daily and skip the weekly and monthly schedule.

3. Declare the variables a below

4. The below code opens a file using the file path and creates instream



Fileread.OPEN(Partner.”Source Details”+’\’+Filename);

Here, I have stored the File path in the a table Partner on field Source Details.

  • TEXTMODE Sets whether a file should be opened as an ASCII file or a binary file. true if the file is open for reading and writing; otherwise, false, if the file is open only for reading.
  • WRITEMODE Use this function before you use OPEN Function (File) to set or test whether you can write to a file in later calls.
  • READTEXT reads the specified number of bytes, the maximum length of the string, or until the end of the line.
  • COPYSTR Copies a substring of any length from a specific position in a string (text or code) to a new string
  • DELCHR Deletes one or more characters in a string.
  • SELECTSTR Retrieves a substring from a comma-separated string.

5. Use a While loop to read the file and do the following operations

  • Read the max length of current line using READTEXT
  • Copy the file contents of the current line using COPYSTR
  • Search for ‘ ‘ and delete them using DELCHR
  • If Current line is INTERCHG or PRODUCT write directly to file
  • If Current line is DELIVERY then check if the 6th word in a comma separated string is D then write to file else skip it.
  • Close the File writing – You can find your file in your destination path.
  • Close the File reading
  • Copy the source file to archived
  • Erase the source file.

Thanks for reading! Have a lovely weekend.

Importance of stock keeping units in MPS/MRP Process in NAV/D365 Business Central


For every manufacturing company, the MPS/MRP process engine plays a vital role in the production and supply of their inventory by creating Production orders, Purchase orders, Assembly orders and Transfer order based on the forecast demand, sales orders etc.

If you have more than one warehouse where one warehouse makes the raw material and the other warehouse assembles it and completes it to a finish product, you not only will require to transfer your inventory back and forth between the warehouses but also you will require two replenishment systems in NAV/D365 Business central, one for Producing the part and the other for transferring it to another warehouse if you wish to use MPS/MRP process.

Normally, we only have one replenishment system for each item on the Item card but we can easily have more than one replenishments using stock keeping units. As for MPS/MRP, we require the planning engine to automatically prompt us in creating a Production/Purchase order and transfer it to another warehouse we need to set up the Stock keeping units for the Item.


  1. Make sure you have transfer routes setup on NAV/D365 BC
  2. Inventory postings is setup for the locations


  1. Navigate to the Item card by typing Items on the search bar. Select the item you wish to create stock keeping units.
2. Select the Item and click on Actions.
3. Click on create Stock keeping units

4. Enter the location code if the location filter else NAV will create the stockkeeping units for all the locations available in NAV.

Repeat step 4 for the second location code.

5. Click on Navigate tab and click on Stock keeping units.

6. I have created the stock keeping unit for two locations: COV MAIN and KID MAIN and as the Item card has replenishment system as Prod. order, the same setup will be copied to both stock keeping units.

7. Select the line whose Stock keeping you would like to change to transfer order.

8. Enter the new replenishment system as transfer and the from location code from where you would like to transfer the item.

9. After you have entered the above details, click on OK. You can view the changes in the stock keeping unit list as below.

10. Once you run the MPS/MRP engine, it will suggest you both Production and transfer orders based on your demand and inventory levels. Please click here to learn more about MPS/MRP

Thank you for reading my blog! Have a lovely day!