11-21-2014 10:09 AM
Hi,
I got a requirement for which i need to copy MIRO to ZMIRO.
I have copied all the includes, screens to a new function group "ZMR1M" and added the new tcode "ZZMIRO" to T169 and T169F table.
Even after doing all these things i am getting error "Program " " not found.".
Trigger Location of Runtime Error
Program SAPLMR1M
Include LMR1MO1W
Row 22
Module type (MODULE PBO)
Module Name MOVE_DATA_TO_TAX
Request your help.
Regards,
Pankaj
11-21-2014 11:55 AM
No. You don't have a requirement to copy MIRO. Copying MIRO is your proposed solution for the business requirement.
Copying standard SAP objects is not only sometimes difficult, as you have found, but also
1. You don't get the benefit of any fixes or enhancements to the original
2. Is equivalent to modifying data in standard SAP tables directly with all the support consequences of that
3.In 99.9% of cases, not necessary, as the BUSINESS requirement can be achived through user exits, enhancements, or, in worst case, by changing the standard object.
Changing the standard object is vastly preferable to making a copy.
Now. What is the business requirement? What are you attempting to achieve with your copy?
11-21-2014 11:55 AM
No. You don't have a requirement to copy MIRO. Copying MIRO is your proposed solution for the business requirement.
Copying standard SAP objects is not only sometimes difficult, as you have found, but also
1. You don't get the benefit of any fixes or enhancements to the original
2. Is equivalent to modifying data in standard SAP tables directly with all the support consequences of that
3.In 99.9% of cases, not necessary, as the BUSINESS requirement can be achived through user exits, enhancements, or, in worst case, by changing the standard object.
Changing the standard object is vastly preferable to making a copy.
Now. What is the business requirement? What are you attempting to achieve with your copy?
11-24-2014 8:14 AM
Hi Matthew,
I totally agree with you.
My Business requirement is:
http://scn.sap.com/thread/3655133
I analyzed standard program. in that, in the PAI module of screen 6310, there is a module "module berechne_position". In this module, value of invoice amount( rbwwr ) is getting changed.
Now my requirement is not only putting vendor amount into invoice amount field but i have to add some columns also. MRP, rate difference columns are also required on that screen. So my functional colleagues suggested me to make a copy and do the required changes.
Request your help.
Regards,
Pankaj
11-24-2014 8:19 AM
I can't help you with the specifics, since I do not know MIRO. However,copying and making adjustments is always the worst way of dealing with requirements, and your functional colleagues need to understand this. The cost of copied programs can be immense.
Maybe someone with expertise on MIRO here will be able to assist you.
11-24-2014 9:22 AM
Hi Pankaj,
There are few BADIs to validate / manipulate the data.
MRM_HEADER_CHECK - Checks on document header data.
I had used this BADI to set ZLSPR (payment block indicator) using call stack [(PROGRAM NAME)Internal table].
. May be you could also try if this badi matches your requirement.
INVOICE_UPDATE:
This BADI will be triggered before the invoice data is saved to database.
Check if the BADIs/Customer Exit/BTE available for MIRO could satisfy your requirement.
Thanks,
Karthikeyan
11-24-2014 9:46 AM
Thanks Matthew for your response..
will discuss this with my team members and revert to you.
Thanks..
11-24-2014 9:50 AM
Hi Karthikeyan,
Yes i agree, there may be few enhancements available for this kind of requirement. I'll check and get back to you..
But again, my team doesn't want to play with this complex transaction... so they are saying to create a copy and then do the required changes..
Thanks for your response...
11-24-2014 10:15 AM
Hi Pankal,
Unless you are working with a ECC 5.0 or earlier version you always can use an implicit enhancement as Matthew has suggested.
Regards.
JCD
11-24-2014 11:04 AM
Go back to them and explain that copying this complex transaction is more risky than changing the original. It is in fact more likely to screw up their data, and with no comeback with SAP.
Seriously, this is well discussed globally. It is a STUPID thing to do, and can actively HARM the business.
I've been working in SAP for 17 years and I know from experience that this kind of idiocy - no, I'm not mincing words, it is short-sighted ignorance and idiocy - costs businesses a huge amount over the years
When your ZMIRO becomes critical to the business and then it stops working after an upgrade it will cost a fortune to fix. Not just the cost to reengineer, but also the potential cost of not being able to process invoices any more. Or,worst case, it still works, but gradually introduces errors into your database.
Seen it, fixed it and earned $$$$$$ out of the processes. I hope the people who recommend it are still working there when the horror starts.
If someone were to tell me to do this, I'd quit. Full stop.
11-24-2014 10:38 PM
Listen to what the man said.
Pankaj, don't take technical advice from functional consultants. They don't know.
cheers
Paul
11-24-2014 11:52 PM
Hello There,
I see we have a thread of good humor. Regarding the requirement
I am slightly puzzled, after the option to reduce the invoice amount has been chosen,
the fields circled in blue are "Invoice Amount according to Vendor" and "Quantity according to Vendor".
This is used to enter the amount and quantity of the incorrect invoice (so in other words the vendor amount and quantity) and by default populated by the data from the PO line item.
=> The vendor amount (that is on the invoice paper) is entered here by the accountant (or a machine).
So, what is meant by the sentence "but my requirement is to have vendor amount in this field."... ?
If the requirement is to populate automatically the values from the vendor invoice coming from a scan or similar, please use some enhancement techniques (I will not say a word, because as a functional consultant...
Cheers,
Alex
11-25-2014 5:56 AM
The trick is to only take advice from functional consultants when they're right.
Something I've observed happening over the years is that functional consultants have tended to move away from specs that specify the requirement, to specifying the solution to be applied. I think this is a direct consequence of the drive to offshore. The guys I work with understand that I only accept specs scribbled on the back of a cigarette carton - I'm old school developer.
11-25-2014 10:13 AM
Oh I agree - they give plenty of good advice. But it's not their place to give direction on technical issues.
Their job is to tell us what the solution should do, not how it does it.
As in Pankaj's case above, developers should feel free to build the solution as they see fit - as long as it meets the specified functionality.
cheers
Paul
11-25-2014 10:18 AM
Hello Matthew,
I tend to agree, although, in my opinion, the size of a cigarette carton may leave too much space for creativity from the ABAP side like copying half of SAP_APPL to kill a fly ... , it depends on who is going to code in the end.
Personally, I try to have 1 or 2 sessions with the developer, FS -> lecture -> technical proposal -> discussion of pros/cons/high-level program design -> validation !
Alex
11-25-2014 12:06 PM
I only all developers and functional consultants were competent, everything would be so much easier.
11-25-2014 12:12 PM
Eheh, certainly. So much less fun however !! My preferred pieces of code are :
1) nested loops
2) wait statements
We are drifting away from helping the OP, though.