Data not transferred or replicated between systems

Data is not successfully being transferred or replicated between systems. Therefore, raise the number of RETRY ATTEMPTS in the PrismMQService.ini file.

Issue: Data is not correctly replicating from one system to another. For example, a new inventory item is created on the head office system, but the new inventory item is not transferred into the system at the cash wrap / point of sale area. Therefore, this new item cannot be sold on the system at the cash wrap / point of sale area.

Possible Cause: Retail Pro Prism uses Data Replication Services (DRS) to exchange data between stations and update store databases. If you are familiar with relational database structure, you'll know that sometimes one data record is the "parent" of another data record. Without going into too much detail, the "child" data record cannot exist in the database without a related "parent" data record. If the "child" data record is transferred into the other system's database before the "parent" data record, this will result in the "child" data record failing to be entered into the database. 

For example, perhaps a user would like to create a new inventory item. But first, the user needs to create a new inventory department, because the new merchandise will be part of a new department at the retail store. Therefore, the user first creates a new department called "Soccer Department". The department, in this example, is the "parent" data record. The new inventory item is the "child" data record. Once the new inventory department and new inventory item is created on the back office computer, those data records are transferred to the Point of Sale station in the store in nearly real-time. Sometimes, the system attempts to transfer the child data record first, and it cannot be entered into the database without the existence of the parent data record in the database. The child data record will, by default, retry 5 times to be entered into the database, and if the parent data record is not transferred into the database before the 5 retry attempts are over, the child data record will fail to be transferred into the Point of Sale station's database. If we raise the retry attempts to 60, this should provide sufficient time for the parent data record to input into the Point of Sale station's database. 

Solution: Raise the number of "Retry Attempts" by adjusting the PrismMQService.ini file.

The change can be done in the following file:
ProgramData\RetailPro\Server\Conf\ PrismMQService.ini

Step 1: Open the PrismMQService.ini file using Notepad
Step 2: Change the "D2DMAXRETRIES" to 60

3. Once the change has been made, click Save

For more information regarding best practices for replication, see this link:
Best Practices: Data Replication Services / RabbitMQ / PrismMQ

Ahmed Lotfy 
Senior Technical Support Engineer
Retail Pro International LLC

Published on Jul 25, 2016 in Data Replication, Backup & Recovery


Find Another Article