M3 Business Engine Administrator's Guide for Warehouse Management Interfaces

This document provides general information for consultants and customers on Warehouse Management Interfaces (WHI). To fully understand the concepts in this document, you must have experience using M3 BE.

This document does not describe the details on M3 Interface (MI) programs and their transactions, such as which files and fields are required and how they are used.

For a detailed description of MI programs and their transactions, see the programs 'MI Repository. Open' (MRS001), 'MI Transaction. Open' (MRS002), and 'MI Transaction Layout. Open' (MRS003).

Overview

Warehouse Management Interfaces (WHI) is primarily used to manage material flow and logistics within a warehouse. WHI is a set of gates in and out of M3 that supports integration to Warehouse Management Systems (WMS) and material handling equipment (MHE).

MHE includes scanners, bar code readers, hand-held devices, conveyors, and more.

The communication can be through APIs. This communication can be asynchronous for managing large volumes or synchronous, for example, from and to a bar code reader.

WHI is divided into these parts:

  • Warehouse Integration
    • WMS integration
    • MHE client integration
    • MHE online integration
  • Warehouse Collaboration
    • Third-party logistics (3PL)
    • Vendor-managed inventory (VMI)
    • Point of sales (POS)
    • Electronic data interchange (EDI)

These business processes are supported:

  • Basic data: download item, alias, vendor information.
  • Warehouse receipts: download expected receipts and preallocations.

Upload goods receipt/put away of purchase orders, distribution orders, requisition orders, manufacturing orders, and customer order returns.

  • Warehouse shipments: download picking list. Upload picking list reporting and shipment packaging.
  • Inventory management: download aggregated on-hand balance. Upload stock inventory transactions.

Warehouse Integration Architecture (WHI)

Upload batch programs architecture

The auto jobs MMS855 and MHS855 with the corresponding trigger files MMM855 and MHM855 process incoming messages without a call from an external system. The autojob is executed if an external system sends a request towards M3. This is done by setting the value of the process flag (PRFL) in the MI transaction to *AUT.

This figure illustrates the architecture of the MHS850 batch entry.

* Autojobs are reading their respective workfile.

MHS855 reads MHM855

MHS855T1 reads MHMT01

MHS855T2 reads MHMT02

MHS855T3 reads MHMT03

MHS855T4 reads MHMT04

MHS855T5 reads MHMT05

MHS855T6 reads MHMT06

MHS855T7 reads MHMT07

MHS855T8 reads MHMT08

MHS855T9 reads MHMT09

MHS855TA reads MHMT0A

This figure describes the architecture of the MMS850 batch entry.

MHE integration architecture

The material handling equipment (MHE) software simulates a user and uses the graphical interface to execute changes in M3. This diagram illustrates the main approaches for MHE integration:

The MHE software uses MI programs to execute changes in M3.

MHE interface download using WHI

The MHE software uses MI programs to populate the WHI interface files. Validations are done on and execution of transactions are based on the data in the interface files.

MHE interface upload using WHI

Using warehouse management interfaces

The WHI concept works for interfacing to larger WMS, 3PL concepts, and MHE, but the following needs to be considered when using Warehouse Management Interfaces:

  • The concept of qualifiers that follow the transaction types makes it easy to follow the M3 logic. If the user or consultant is unsure of the functionality, we recommended to first try the core M3 function. If it does not work, it will not work using the WHI programs either.
  • The MI test is a tool that can be used to simulate an external system for test and examples. Another way is to manually create example and test transactions in MHS850 and MMS850, which can be uploaded to M3. If the external system writes the same way as the examples, the flow should be secure.
  • The unique keys from the download files are mandatory for the upload side. M3 must be supplied with the unique key in order to process the data since WHI uses core functions.
  • For the download of expected receipts, the command field can sometimes differ depending on the transaction (order type). This is because MMS910 works differently with different transaction types. The status field can sometimes be used to add additional filter logic.

Use the APIs provided in M3 API Toolkit to download and upload data

The APIs provided with M3 BE are used to download and upload data.

  • The download APIs are MHS630MI, MHS635MI, MHS640MI, MHS800MI, and MHS805MI, MHS810MI, and MHS820MI.
  • The upload APIs are MMS850MI and MHS850MI.

The upload APIs have specific transactions with logic for how to populate the intermediate files as well as generic transactions defined. This approach is strongly recommended rather than writing directly to the files.

For a detailed description of MI programs and their transactions, see the programs (MRS001), (MRS002), and (MRS003).

There are MI transactions per MI program that set the download flag (DOWN) to 1 on the records in the download file. This will make the list transactions exclude these records next time they are run.

Process flag (PRFL):

  • *EXE – execute online – Error messages are returned to the clients
  • *AUT – execute using auto job
  • blank – data is specified in the interface but will not be uploaded to M3. Can be processed using a process transaction or using option 25 in MMS850/MHS850.

UTC mode in API transactions

Most of the order-initiated stock transactions in API MHS850MI can receive date and time expressed as UTC time by inputting the value “1” in the field 'UTC Mode' (UTCM). With that mode activated, the provided date and time is considered being provided as UTC and is converted to local warehouse time before being saved in the interface tables.

In the interface files MHIHED, MHIPAC MHILIN, the date and time are always considered as local warehouse time. If UTCM is activated in the Get and List transactions, MHS850MI will convert the date and time found in interface files from local warehouse time to UTC, before returning the values to the API output.

Note: The date and time must both be available for the conversion to succeed. Depending on the transaction, certain date and time combinations can or cannot be converted. That is, RPDT RPTM (reported date and time) can be converted while EXPI (expiration date), having no time, cannot be converted.