Sales Invoice Print Functionality in AX 2012 R3

Dear All,

We are implementing AX2012 R3 system as a DMS (Dealer Management System) for one of our client in the electronics industry. The basic idea is to manage the inventory of the trade partners of our client and maintain the secondary sales information.

Our requirement is: while the trade partner uses AX system for managing the sales, there is a need to print the invoice and later generate actual invoice through batch processing on the basis of same details like SO Number, Item, Quantity, Packing slip, Invoice number etc… on which the print had taken.

The reason we can’t use the standard AX invoice functionality is that it takes high level license (Enterprise CAL) and practically it is very costlier affair to provide the same to trade partners who are huge in numbers. Also the system is not building up as dealer ERP so we do not need financial liability here.

Couple of customizations that I have thought of as below but have some challenges as described.

Proforma Invoice: We can use the standard proforma invoice to achieve this requirement but the data which is generated during the print is in temporary tables and removed right afterwards. We need to capture this data for the purpose of posting the actual invoice through batch based on the sales order status which I feel is difficult as system does not maintain any track of proformas raised.

Also the number sequence reference which is used for the proforma invoice is the same number sequence as that of Customer invoice so when the proforma is generated the number is consumed and the actual invoice takes the next number sequence.

Print Invoice: We can build a new functionality replicating the proforma, where in we can generate it based on the SO, packing slip and other details etc… and store the details in the customized tables while generating the print. When the actual invoice is generated through batch the details will be picked up directly from these tables and invoice is posted with the correct reference. The challenge here is that we need to develop whole of this and might come across multiple functional cases to verify.

Has anyone faced such kind of requirement or implemented anything of that sort. Please through some lights into this and suggest the work arounds for this.

Regards,
Kiran Kumar.B