I have faced the retail sales sync issue multiple time for our various client where some sales of retail store not synchronized completely, therefore missing in AX headquarter, these missing sales may create a serious issues. In retail generally, we calculate our daily sales through retail statements and then post these sales transactions to achieve inventory and financial impact on retail headquarter at day end.
Here I am also going to explain this issue technically. In Retail Channel store, Async client checks that which records have been uploaded by P-job by checking Commerce run time table named ‘crt.TABLERAPLICATIONLOG’.
SELECT ISNULL(MAX(FilterMax), 0) FROM crt.TABLEREPLICATIONLOG WHERE TABLENAME=’ax.RETAILTRANSACTIONSALESTRANS’ AND FILTERFIELDNAME = ‘REPLICATIONCOUNTERFROMORIGIN’
The above mentioned query is representing the check for sales transactions synchronization between store and headquarter, similarly, This check is done with all the tables that is sent to the Headquarter from store.
In such circumstances to bring our all missing transactions back at headquarter a thing we could do is to force the Store Channel Database to realize that the records haven’t been uploaded to Async Server. If that table was cleared out it would ‘reset’ the store channel database and it would re-upload all records into a new RPF file.
This should be safe since any duplicate transactions would be ignored by AX at Headquarter.
Follow the steps in the same order mentioned below:
1) Stop the AsyncClient service in the Store Database machine
2) Take a backup of the Store Channel Database
3) Delete all records from table crt.TABLEREPLICATIONLOG
4) Start the Async Client service
5) Run the P-job
Verify your sales on Headquarter by opening retail sales form.