V5 Integration with Microsoft Business Central

Your Guide to V5 Integration!

Business Central V5 Traceability

SG Systems are pleased to be able to offer our customers full integration services with Microsoft Business Central (BC), including customizable features and functions to suit a wide variety of requirements.

Integrating BC with V5 Traceability offers several benefits that we will explore throughout this piece, including:

  • Real-Time Data Exchange: Enhances accuracy and efficiency in managing manufacturing and supply chain processes.
  • Batch Consistency and Audit Compliance: Ensures consistency in food manufacturing and upholds strict compliance standards.
  • Paperless Operations: Facilitates warehouse management and reduces paperwork.
  • Error Prevention: Reduces manual traceability errors, enhancing data accuracy.
  • End-to-End Traceability: Provides comprehensive traceability across the entire production cycle.
  • Operational Flexibility: Customizable to various business needs and scalable for growing businesses.

Table of Contents

1. Overview of Microsoft Business Central Integration with V5 Traceability

An overview of how the V5 Traceability integrates with BC can be seen below:

In this discussion we will be taking a look at all major aspects of integrating BC with V5 Traceability, looking at case studies on production, purchase and sales orders.

Internal material Transfer Order integration will be available soon!

1.1. Purpose & Scope of the Integration

The purpose of the V5 integration with Microsoft BC is to allow customers who are accustomed to working within BC’s workflow to be able to easily create purchase and sales orders, as well as making use of BoMs held within BC to schedule production from V5 Traceability using materials held within BC’s inventory

The scope of this integration covers all major aspects of a customer’s production facility, including:

As we can see above, this allows BC to continue to act as a customer’s master location for BoM templates/raw material codes/inventory levels/ordering etc., with any updates to orders to be sent instantaneously to V5. In this instance, V5 would be passing back shipped/received/production consumption data back to BC, updating inventory levels and order statuses in real time.

2. System Configuration

2.1 Hardware Setup

For an on-site deployment of the V5 Traceability system, SG Systems require access to a validated server (hardware or virtual) to install the V5 database and required middleware (V5 Connect) to enable the integration with BC.

Production Terminals and Warehouse Management System (WMS) tablets can then be installed as needed throughout the production facility. In this document we will take a look at both production and shipping/receiving, which features V5 software applications installed on the following:

  • Industrial Terminals (15” Touchscreen)
    • V5 Terminal – processes work orders sent from BC.
  • Industrial Tablets
    • V5 WMS – receives/picks items for orders sent from BC.

Each V5 device here can then be connected to:

  • Scales – either networked (for Terminal and WMS) or by direct serial connection (for Terminal)
  • Label Printers – to print labels at any stage of the production process, from printing stock labels for incoming goods, through batch labels when processing work orders, to shipping labels for outgoing finished goods. Labels can be fully customized to a customer’s needs.
  • Barcode Scanners – allows the scanning of raw materials and WiP batches to ensure that the correct items are used at the correct point in the manufacturing process.

2.2. Software Requirements

The requirements to install required software to facilitate the running of the V5 Traceability system can be viewed here.

Communication between BC and V5 Traceability is facilitated by the additional installation of V5 Connect.

3. BC Data Integration Using Custom Endpoints

3.1. Custom Endpoints

In BC, custom endpoints are created by SG Systems and the uploaded directly to the Business Central API for each customer, enabling the V5 Traceability system to directly interface with BC via V5 Connect.

These custom endpoints are created using AL (Application Language) and are used to define objects, including pages, reports, and codeunits, within BC. Each endpoint can be customized to interact with a number of datafields within BC for each particular function (Orders/BoMs etc.).

3.2. JSON Data Exchange

Once custom endpoints are in place, data exchange can occur via JSON file exchange, using V5 Connect as the REST client to perform GET and POST requests to facilitate instantaneous data exchange.

3.3. Advantages of Using JSON for Data Exchange

There are several advantages to using JSON for our data exchange:

  • Simplicity and Readability: JSON features a simple syntax that is easily human readable, with a clean and concise structure.
  • Language Independence: JSON is language independent, meaning it is compatible with a wide variety of different programming languages, making it ideal for data exchange between different platforms.
  • Easy Integration with Web APIs: JSON is the de facto standard for most modern web APIs and is compatible with most backend technologies.
  • Lightweight: JSON is a lightweight and compact format, using fewer characters than other formats such as XML, resulting in smaller data payloads, leading to improved performance/speed when communicating over networks.
  • Flexibility & Support for Nested Data: JSON is capable of representing complex data structures, including objects, arrays, and nested objects, making it suitable for handling a wide variety of different data.
  • Compatibility: JSON is easy to parse and generate, with built-in parsers and serializers available in most programming languages. For example, JavaScript has native JSON.parse() and JSON.stringify() functions to handle JSON, making it straightforward to convert between JSON strings and JavaScript objects. Other languages such as Python also support JSON functions.
  • Wide Adoption and Community Support: JSON has gained widespread adoption in the developer community, making it a well-supported and well-documented format that is used by many popular web services, databases, and messaging systems like REST APIs. This wide adoption ensures plenty of tools, libraries, and support for working with JSON in virtually any development environment.

4. Integration Process

4.1. Step-by-Step

  • The V5 API will be installed – this provides the initial link to and from the V5 database.
  • V5 Connect will then be installed – this acts as the middleware between the V5 API and BC and facilitates JSON file exchange.
  • Custom endpoints will be uploaded to a customer’s BC API.
  • V5 Connect with then be configured to connect to these custom endpoints.

4.2. Configuration Settings

From the customer’s point of view, to enable connectivity with V5, they would need to:

  • Enable the Business Central API using OAuth2 for secure access.
  • Provide the tenant and credentials for authentication for the BC API

5. Benefits of Integration

So what are the major benefits of choosing V5 Traceability integration with BC for your business?

  • Familiar Working Environment – Integration with V5 Traceability allows BC users to interact with V5 from the familiar BC environment, reducing the need for additional training for employees that often comes with the incorporation of new software to a business.
  • Real-Time Data Exchange – Ensure seamless and instantaneous data sharing between BC and V5 Traceability. This integration keeps your manufacturing and supply chain operations synchronized, enhancing overall efficiency and accuracy.
  • Batch Consistency and Compliance – Maintain impeccable batch consistency and meet stringent audit standards effortlessly. This integration is crucial for food manufacturing industries, where regulatory compliance is non-negotiable. The system provides precise control over production batches, ensuring every product meets the required standards.
  • Paperless Operations – Transform your warehouse management with a paperless approach. This feature drastically reduces administrative tasks and paperwork, leading to a more streamlined, efficient, and error-free operation. Imagine a digital workspace where all information is readily accessible and easy to manage.
  • Error Prevention – Eliminate the risk of manual errors with automated traceability and integrated label/barcode scanning. The integration captures data accurately, ensuring that your traceability records are precise and reliable. This reduces the risk of costly mistakes and enhances the trustworthiness of your processes.
  • End-to-End Traceability – Achieve complete visibility across your production cycle, from raw materials to finished products. This comprehensive traceability ensures that you can monitor every step of the process, providing transparency and accountability. It’s a critical feature for industries where tracking product history is essential for safety and quality.
  • Operational Flexibility – Benefit from a highly adaptable system that can be customized to meet the unique needs of your business. Whether you’re expanding operations or tailoring specific processes, the integration supports your growth and adaptability. It scales with your business, ensuring that your systems evolve as you do.

6. Operational Workflow

6.1. Purchase Order Workflow

We can now take a look at an example workflow for a purchase order utilizing BC and V5 Traceability.

  • Purchase Orders are scheduled within BC
    • Material codes to be ordered are held within BC and synchronized with V5 Traceability
    • Registered suppliers are managed by BC and synchronized with V5 Traceability
  • Purchase Orders are then sent to V5 Control Center and scheduled automatically within V5 Control Center.
  • The order, along with expected order lines and quantities, are sent to V5 WMS tablets to receive.
  • V5 WMS receives the order. Configurable options are available here to enter information against received lots such as:
    • Manufacturing & expiry dates
    • Lot Numbers (can be automatically assigned or manually entered)
    • BoL/CoA numbers & image capture
    • Custom QA responses that can be viewed on generated reports
  • Stock labels can also be printed by V5 WMS automatically upon receipt.
  • Data is then returned to BC to account for:
    • Quantities of order line items received
    • Lot numbers

A simplified top-down view of this process can be seen below:

6.2. Batch Execution Workflow

We can take a look at an example workflow where a batch formula can be produced from raw materials.

  • RM (raw material) codes & inventory, along with work orders/jobs, are all held in BC.
  • BoM codes are held in BC, along with their step order and RM requirements.
    • BoM’s are created and held within BC as base 1 (i.e. all steps are calculated based on 1 unit being the default size of the formula (in the example we will look at below the BoM is structured so that all steps add up to 1kg, and then greater amounts are then scheduled from this).
    • Additional step types for events such as ‘container changes’ or messages to batch operators can be manually inserted in V5 via the Control Center.
  • Work orders using BoM codes stored in BC are sent to V5 Control Center and scheduled automatically within V5 Traceability using the V5 BoM setup and requested amount.
  • Batch production occurs at V5 Terminals. Customization options are available here for:
    • Batch size calculation
    • Use of bulk and remainder
    • Integration of bulk dispensers
    • Assigning production based on physical locations
    • Custom label fields
    • And much more!
  • Batches are then mixed and processed using the V5 Terminal
  • Data is then returned to BC to account for:
    • Raw material consumption for batches (lot numbers and quantities)
    • Produced batches data (total produced quantity and a final lot number for the batch)

A simplified top-down view of this can be seen below:

 
  

6.3. Sales Order Workflow

Sales order integration between V5 and BC works in a very similar manner to what we saw above with purchase orders. So first let’s take a look at the workflow for a sales order.

  • Sales orders are scheduled in BC.
    • Product codes for ordered items are held in BC & synced with V5.
    • Customer information is also held within BC and is then synced with V5
  • Sales Orders are then sent to V5 Control Center and scheduled automatically.
  • Order lines and required quantities to be picked are sent to V5 WMS tablets.
  • V5 WMS ships the order. Configurable options are available here to ensure that:
    • Correct items are picked/scanned onto the order by connected barcode scanners
    • FEFO/FIFO rules are enforced
  • Shipping pallet labels and order delivery notes can be printed here to attach to the order.
  • Data is then returned to BC to account for:
    • Quantities of items shipped
    • Order line status updates

A simplified top-down view of this process can be seen below:

  

6.4. Transfer Order Workflow

Coming Soon!

6.5. Hardware & Software Interaction

As we can see in the flow diagrams above, once V5 Traceability has the required data from BC (PO/SO/Work Order etc.), there are several instances where the V5 software will interact with SG supplied/customer hardware. These interactions are:

  • Scales – V5 Traceability provides full connectivity with a variety of scales and balances from a wide variety of manufacturers. These can either be connected via the local network, or via a direct serial connection. This allows floor operators to be able to accurately weigh raw material requirements using the V5 Terminals built in weighing dial.
  • Label Printers – Labels can be printed at all stages of the production process, including:
    • Labels for raw materials, printed at receipt, that are scanned at the batching Terminals when processing work orders
    • Batch labels that are scanned at the finished product Terminals
    • Finished product labels to meet a wide variety of requirements for product distribution
  • Barcode Scanners – Whether wired or wireless, barcode scanners can be connected to the Terminals to ensure that floor operators are always selecting the correct item for:
    • Batching ingredients.
    • WiP components and labels that are used for finished products.
    • Products for shipping.
    • Internal transfers.

7. Case Studies

7.1. Case Study – Purchase Orders

Let’s start our case studies at the beginning of the production process, purchasing raw materials that we can then use for production later.

Purchase Order synchronization from BC to V5 Traceability starts with the order being scheduled within BC.

We would start in BC by creating a new order in the ‘Purchase Orders’ section of BC:

 

On the resulting page to create the order we can select from our list of stored Vendors within BC, either by typing in the ‘Vendor Name’ box:

 

Or by using the ‘…’ button to bring up a list of Vendors to select from:

 

Note that once we select a Vendor here, the order number will automatically be generated by BC:

 

We can then add lines to the order by typing into the table below where we entered the Vendor information. Here we can find items by either typing item codes into the table, or by selecting from a list of items within the system:

 

We can keep adding items, along with required quantities and costs to complete our order:

 

We can also enter more data in the fields below the orders lines, such as the ‘Requested Receipt Date’, which will import to V5. Other date fields here are purely for internal use in BC:

 

Once we have completed the setup of the order we can then use the release controls at the top of the page to release to order to V5.

 

Once ‘Released’ the PO will be sent to the V5 Control Center.

 

Once imported to V5, the order will appear on the ‘Purchase Orders’ tab, under the ‘Ordering’ header within Control Center:

 

We can see here that we’ve imported the following information from BC:

  • PO Number
  • Vendor Information
  • Requested Receipt Date
  • Document Date
  • Order line items + required quantities and costs

Note that the order status is automatically set to ‘Pending’, meaning that this order will be immediately viewable to the relevant WMS devices that are connected to the V5 system.

If we open WMS now we will be able to see this order under ‘Ordering’ > ‘Purchase Orders’:

  

Note that costs can be hidden from WMS operators if required.

Opening this order will trigger any QA events assigned to the ‘PO Start’ event trigger, and after answering these, we will see our order lines for RM032 and RM036 waiting to be received:

 

Selecting an order line here will start the receiving process. QA processes can be assigned to this part too by using the ‘Goods In’ event trigger.

We can set WMS to request manual input of various bits of information, such as lot number, supplier lot number, expiry/manufacturing dates, and location to receive into (or these can be set to populate automatically). In this case we will allow the operator to enter the lot number and set the shipment’s expiry date:

 
 

 

We can then enter the amount to receive. Weighing options with an integrated scale are also available here:

 

After which the system can print a label (or multiple labels) for the newly received item:

 

Note that label design can be completely customized to individual customer requirements.

We can receive the second order line in a similar fashion, after which we will see that both order lines are complete, indicated by the green lines.

 

The order can then be completed using the green check in the lower right corner.

 

If we hit ‘yes’ here, we will be shown any QA messages with the ‘PO Complete’ event assigned to them, after which the order will complete, shown in a message in WMS’s banner.

 

Returning to Control Center we will then see the order status is now ‘Received’ and we can see the received lot information (quantities received and lot numbers etc.) in the lower right panel:

 

Returning to BC we can see that the ‘Quantity Received’ has now been updated to reflect what we have just received.

 

If we then look at ‘Item Tracking Lines’ under the ‘Line’ subheading for each item (viewable or the highlighted order line – in this case the Aspirin powder):

 

We will see the information that we applied to the received lots, such as the lot number and the expiry date:

  

7.2. Case Study – Production

In this case study we will be looking at how work orders for particular BoM codes sent from BC are produced within V5 Traceability, as well how data return to BC is handled.

We can start by looking at our BoM setup within BC. These can be found under the ‘Production BOMs’ section within BC. The formula we will be looking at here is the ‘F010 – Aspirin Powder (Batch)’ example, which we can see here in BC:

 

So we can see information stored here such as the step order, units of measure for both the formula itself and the formula lines, target quantities (quantity per), as well as upper and lower tolerances. We can sync formulas from BC with V5, and once in the V5 Control Center the BoM will look like this:

 

Note here that we have manually added a ‘Message’ for the operator to aid in production.

Once we have our BoMs synced, we can then head to the ‘Released Production Orders’ section of BC to schedule this formula for production.

Starting by clicking the ‘New’ button in this area of BC:

 

This will automatically create a new work order within BC (101019 in this case), and we can begin to set this up by first selecting a BoM to produce. As with vendors for POs above, the BoM can be found by typing into the appropriate box and selecting our desired BoM:

 

Once the BoM is selected we can then add the required amount, so in this case 100kg.

 

Once we have added the required quantity, and any other information that we might want to add, we can release the work order by clicking ‘Refresh Production Order’ in the controls at the top of the page, selecting ‘Released’ and confirming our choice.

 

Once we have released this work order, the job line will be added to the order within BC:

 

We can use ‘Line’ and then click ‘Components’ to see the total requirements for this particular work order:

 

So we can see after opening this that, since we have requested 100KG and our formula is created based on 1KG, our requirements (or ‘Expected Quantity’ here) here are 100x the amount:

 

Releasing the work order from BC also then syncs it with V5 Control Center, and automatically schedules the job for production at the V5 Terminals connected to the system. We can see the work order in the Production Plan below.

 

Since this job is automatically scheduled within V5’s Production Plan, if we go to one of the system’s V5 Terminals we will see the job ready for production.

 

Starting the job here will show any allergen/hazard warnings, as well as any QA that we may have set to be asked at the job/batch start (such as cleaning checks/notifications, scale calibration checks etc.).

We will then be asked to start by selecting a suitable lot for our first ingredient. Here the system can be set to allow the Terminal operator free choice of lot, select automatically based on FEFO/FIFO rules, or require a valid stock label to be scanned to select the lot. Here we are allowed free choice so we will select the first to expire.

 

Depending on the settings applied to the V5 Terminal, we can be asked to add whole bags of an ingredient into the mixer, followed by any remainder. So in this example, the system knows that we receive this first ingredient in 20kg bags, and our step requirement is for 33.513kg, so we will first be asked for 1 bag:

 

Before being asked for the remaining 13.513kg. Note that we have a choice here to select a different lot, or the Terminal can continue to consume the same lot. This depends on a Terminal setting.

 

The operator would then weigh up to the green zone, which represents the prescribed tolerance for each step. Note that tolerances can be set to scale with the requirements i.e. a tolerance of 10g for the original formula based upon 1kg of powder will scale to 1000g/1kg for 100kg of powder. In this case however, the tolerances are not scaling, forbidding the operator from weighing more than 10g over/under the target. So we can see here that the operator weighed 3g over the target.

 

The formula would then proceed according to the BoM setup, weighing each ingredient in turn:

 

Until the process is complete. Note that V5 Traceability can be set to require a single or double (supervisor verification required) signoff can be implemented if required for regulatory compliance purposes.

 

Once the batch and signoff are complete, Terminal will display a message to this effect:

 

And a batch label will print with the batch’s unique code. Label design here can be completely customized based on individual requirements.

 

We can then see this newly created batch within Control Center’s inventory.

 

And returning to the released production order in BC we can see that the finished vs remaining quantity has updated to reflect the job that we just completed within V5 Traceability.

 

If we then use the ‘Line > Components’ controls for the work order’s line items:

 

We can see each individual ingredient consumption vs the expected amount, updated with live information from the batch we just processed:

 

And similarly, if we use the ‘Line > Item Tracking Lines’ controls in the same place:

 

To see the lot information for the batch we have just produced. So as we can see the lot number produced within V5 Traceability has been transferred to BC.

  

7.3. Case Study – Sales Orders

As with purchases, sales orders are first created in BC by using the ‘New’ button at the top of the Sales Order page.

 

This will then create a new order which we can assign a customer to, either by typing directly into the relevant field:

 

Or use the ‘…’ button indicated above to select from a list of suppliers that is synced with V5 Traceability.

 

Fields such as Document/Posting/Order Date will be autofilled, and we can change these if desired. The requested delivery date can be manually entered and this will fill the ‘Shipping Date’ field once the order is imported to V5 Traceability.

 

Once we have entered the information we can then start to populate our order lines in the ‘Lines’ section below. We can start adding items by simply typing our item codes into the ‘No.’ box here, or use the ‘Select From Full List’ option to bring up a full list of items held within the system.

Here we will select ‘Aspirin Tablets’ for this order line.

 

We can add further information to the line item here, such the quantity ordered and the units of the item to sell.

 

We can also see further along the line the amount waiting to be shipped, which will be updated as the order is shipped from V5 Traceability.

 
We can continue to add order lines in the same way as above. For this example however we will just look at this one line, and once we have set this up, we can release the Sales Order to V5 Traceability by using the controls at the top of the order page.

 

This will change the order’s status from ‘Open’ to ‘Released’:

 

After which point, the order will be synced with V5 Traceability, and appear in the V5 Control Center like so.

 

So we can see all the order information that we entered in BC has been transferred to the V5 Control Center. Note also that they order is already ‘Scheduled’, meaning that it is automatically available to any V5 WMS devices that are attached to the system.

If we head to our shipping WMS device, we can see how we can process the order further from here.

Once logged in to WMS, we can navigate to the Sales Order menu (‘Ordering’ > ‘Sales Orders’), where we will see our order from BC ready to be shipped.

 

Selecting this order and advancing using the green check in the lower right corner will begin the shipping process. Here the WMS operator will be asked any QA questions assigned to the ‘Shipping Start’ event, after which the order lines will be available for fulfillment.

 

Once we select the line for our scheduled aspirin tablets, then we will see a list of available lots and their quantities. We can choose to fulfil the order from any of these, or WMS can be set to force a FEFO/FIFO selection.

 

We will select lot 27282 here, after which we will be asked to assign the stock from this lot. We could potentially source the 5 required packs from different lots, but in this case we are going to take 5 packs from the 10 in this lot.

 

Once the order line is fulfilled the operator will be returned to the order line view where we can see that the line for Aspirin Tablets has been fulfilled, indicated by the green line.

 

And once all lines are complete the order can be shipped by using the green check in the lower right corner of the screen.

 

Upon hitting complete here, the operator will be asked any QA questions that are assigned to the ‘Dispatch’ event.

Once complete, WMS will display a message in the message banner at the top of the screen to tell the operator that the order is complete.

 

If we then return to Control Center we can see that the order status has now updated to ‘Shipped’ and we can see the lot information for the chosen lot(s) in the bottom right panel of this screen.

 

Returning to BC from here, we can see on the main order view that the ‘Qty. to Ship’ vs ‘Quantity Shipped’ fields have been updated accordingly.

 

We can find more information on the items that were shipped by using the ‘Order > Shipments’ dialogue above the line items.

 

This will open the shipments menu and show us the shipments associated with this order. Since we just performed a single shipment there is only 1 entry to view here.

 

We can then open this shipment to view information about the line items that were shipped as part of the order. We can see in the ‘Lines’ section the amount of the tablets that we shipped on the order.

 

And if we use the ‘Line’ > ‘Item Tracking Entries’ controls:

 

We will be shown the lot information for the tablets, sent back from V5 Traceability, that were picked for the order.

 

7.4. Case Study – Transfers

Coming Soon!

8. Conclusion

In summary, integrating Microsoft Business Central with V5 Traceability can benefit your business by ensuring real-time data exchange, maintaining batch consistency and compliance, and enabling paperless operations. It prevents manual errors, offers end-to-end traceability, and provides operational flexibility, adapting to your growing business needs. This integration enhances efficiency, accuracy, and scalability, making it an indispensable asset for modern enterprises.

Discover more about this transformative solution at SG Systems Global.

9. Appendices

For further information on using BC’s API please click here.

For more information on using the BC API with integrated REST services, please click here.

Was this page helpful?
YesNo