2012 Aug 17 6:28 AM
Hi,
I need help in extension to transaction EA60.
My requirement is like this : -
I need the printing data in an internal table so that I could sent to vendor for printing from outside.
where in EA60, I can transfer the whole printing informations in an internal table so that I could prepare a flat file and send it to third party vendor.
Is there any Exit / Badi available for it or I need to enhance the standard program of EA60 , If yes, where the I need to enhace the code.
Please suggest the relevent steps.
Regards
Rajeev Shrivastava
2012 Aug 18 6:37 AM
Hi Rajeev:
I think that for your requirement you can use the event R394.
I hope this helps.
Regards,
David
2012 Aug 21 7:44 AM
Hi David,
Thanks for your reply !!!
I have checked this event (R394) in debug, it is not having all the lineitems data (Meter/Reading information/Consumprtton related information/arrears and other charges).It only contains the ERDK header items.
Thanks & regards,
Rajeev
2012 Aug 21 9:11 PM
Hi Rajeev,
Please check the import parameter: <X_PRINT_OBJ-T_PRINT_DOC-T_ERDZ>. Here you can read the line items.
Regards,
David
2012 Aug 20 8:52 AM
Hi Rajeev,
Your requirement can be met by enhancing application form's user exit( t-code: EFRM, option: user exit include).
Hope its useful.
Regards,
Rajesh
2012 Aug 21 7:48 AM
Hi Rajesh,
I can do the enhancement in efrm - user exit but this is also not collecting all the data at single time.I need all invoice related information at single time in an internal table so that I could thow it to third party vendor.
Thanks & regards,
Rajeev
2012 Aug 21 9:04 AM
Hi Rajeev,
Please try the below custom solution.
Step 1: Create a new custom table(XYZ) with fields invoice, Status(char 1) and XML (string).
Step 2: During printing of individual invoice, convert the invoice data from internal table into XML format using FM CALL TRANSFORMATION, insert a new entry into table XYZ with invoice number, status 'N' (not printed) and xml file. This should be done at efrm- user exit. After completion of EA60 bill print job, you will get all invoice details in the table XYZ with status 'N'.
Step 3: Create a new program to create the flat file which will send to third party vendor for print. This program will pick all records from table XYZ based on status N and then again convert XML data into internal table using FM CALL TRANSFORMATION. Now create the flat file using internal table data and change invoice status to 'P' (printed). At the end, you will all invoice details into single flat file.
This is how we handled this requirement in some utility companies.
Hope its useful.
Regards,
Rajesh
2012 Aug 21 10:00 AM
Hi Rajesh,
This FM : TRANSFORMATION is not available.
Also, the steps, you have suggested is already being followed in my existing custom solution.The only difference is, I am updating all the information in the custom table and then sending it to third party vendor.but my requirement is to donot use any intermediate table.
Can you suggest any other solution.
Regards
Rajeev Shrivastava
2012 Aug 21 1:17 PM
Hi Rajeev,
Please see the below thread for XML conversion.
http://scn.sap.com/thread/1448173
I guess efrm user exit is the only place you can capture the all invoice details. Other than this I could not find any exits or badi's to fit your requirement.
Regards,
Rajesh
2012 Aug 21 10:24 PM
Hey Rajeev ...
Is XML what the vendor would like to use? Some of the print vendors prefer the SAPscript external interface (RDI). While others use XML ... another way to pass the data via XML is to use the Smartforms external interface (which is XML). Then other vendors require the data in a format of their choice so you'd could populate a z table in that format and send from there.
Are you printing invoices internally now? Formating with what, SAPscript, Smartform, PDF?
If you can give me a little more background of how your printing now, how many invoices a night are we talking about, what format is the vendor expecting, are they expecting all the invoices to be in 1 file, etc ... I could give a more detailed direction.
One more comment for now. Usually the print vendors require the data to be cleaned up a little before sending it on to them. For instance, the line items in the DOC_ITEM level are all the billing and open FICA line items (FICA if configured as such). Usually the print vendor will want the lines targeted for charges grouped and rolled as they are to print and the same with the meter reading lines. All this is done in the application form exit code via txn EFRM.
Joe