During the full load inventory process, EOF (End Of File) is used to indicate the completion of item inventory information for particular node.

The SAP system drops the inventory information into the queue as batches, with each batch containing a unique YantraMessageGroupID. When updating multiple batches for a single ship node, the same YantraMessageGroupID must be maintained across all batches.

Once all item inventory information has been sent, an EOF message is dropped into the Queue with the same YantraMessageGroupID. When the integration server fetches the EOF message, it waits for a specified time (default is 5 minutes, but it is configurable). This wait time allows the OMS to assume that item inventory information for the one Ship Node is completely received when the YantraMessageGroupID of batches matches with the EOF message.


The PLT_EOF_STATUS table gets an entry once Integration server reads the EOF Message. After wait time is over, Inserted record will be removed and Inventory sync process will get started.

1.Allowing Running Threads to complete its process:

Configuring a specific time for EOF messages which leads to delay in the EOF Processing. It allows all the threads to process the batch messages that may not have been completed and ensures that any pending reprocessable messages are handled before proceeding with the synchronization process.

  1. By default OMS will wait for 300 seconds (5Mins)
  2. However this can be updated by declaring the EOF wait time properties in the Customer Override Properties. This time will be calcualted based on the batch size and thread count.
2.Reprocess Integration exception for the Batch message

During the Inventory Load process, each ship node pushes the inventory picture of the products as a batch along with an EOF (End of File) message into the queue. After the Integration Server retrieves these messages from the queue, upon identifying the EOF message, it will initially look for any exceptions related to the same YantraMessageGroupID and service.

If there are any pending exceptions, the EOF message will be errored out as a ‘Reprocessable errors exist’ message in the YFS_REPROCESS_ERROR table. This ensures that the complete inventory information of the ship node is not updated in the OMS until the issues are resolved.

Lets see with an example

    Organization code is updated wrongly. So Batch 2 will throw an Exception

    EOF Message

    After dropping the EOF message into the Queue for the ship node, the inventory update will not be occur because the 2nd batch message had an exception in the OrganizationCode.

    Reprocess Exception:

    Exceptions will be raised, one for that batch and another one is for EOF Message which identifies ‘one of its batch had an exception based on the YantraMessageGroupID and service name’.

    Batch Exception details page.  If the Exception is resolved manually by modifying the Input, it will move to Fixed state.

    EOF mesasge exception has to be reprocessed manually after the batch exception gets fixed. After reprocessing the exception, error got fixed and moved to fixed state.

    Once all the exception are resolved, OMS will trigger the inventory synchronization process.

    3.Triggering Inventory Sync process

    By reading EOF file, Integration server will look up the configuration within the service. Once it matches with root element, It will invoke synchronous service configured within it.

    Configuration details are following below.

    Service To Execute On EOF Message  –  Provide the Sync Service Name Root Node Name Of EOF Message  –  EOF message Root Element name

    After completing the wait time & Exception reprocessing the inventory sync process will triggered within OMS. In YFS_INVENTORY_SUPPY and YFS_INVENTORY_ITEM table gets updated.

    #LetsTalkOMS #SpicaTech

    Leave a Reply

    Your email address will not be published. Required fields are marked *

    × Chat with Us