Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Version conflits on ABAP changes

Former Member
0 Likes
983

Hi,

Sometimes it happens to be that a developer A makes a change to standard SAP program and moved the changes to QAS and the test was successful. Mean while another developer B has changed the same program and moved the changes to QAS. As the changes done by developer A was successful changes are moved to Production but changes done by developer B are not tested yet and it has problems(so not safe to move to production) which are also moved to Production because of A's changes.

I am sure every organization has faced this problem, but I would like to know what steps you have taken to avoid this problems? Could you please share your thoughts?

Thank you,

Jagadish

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
855

Hi

Yes you are right

there will be a lot of changes occuring for a single program by different developers.

especially this we have faced in real time for the Sales Order user exit program MV45AFZZ

because different developers are working on different logics and using the same program.

so that's why there will be a strict governing on the release and transport of requests into other clients. and this has to be governed by a project manager , every developer simpaly can't move his request as he wish.

so there should be strict vigilence on it and there should ne no dependencies for that request or changes. then only it should be transported.

and it is always a best practice for each developer such that end of every day he should have a copy of his developments when muliple people are working on the same object.

Reward points if useful

Regards

Anji

7 REPLIES 7
Read only

Former Member
0 Likes
855

First thing, NEVER do a modification to standard program. This is strictly discouraged.

Assuming you are referring to custom objects, I think...

We should always create a separate transport for different changes. A transport request should only consists of the tasks

pertaining to the specific work done.

Never club the tasks under same transport which belong to different work.

Thanks,

SKJ

Read only

ferry_lianto
Active Contributor
0 Likes
855

Hi,

Are both program changes by developer A and B in the same transport request?

If they are ... it would be better to have separate request which can be used to control any object moving to production based on business owner/super user/functional people signoff. Also to avoid any conflict as you describe above.

In our company without QA testing completed and documented as well as signoff, No SAP object(s) can be tranported to production.

Regards,

Ferry Lianto

Read only

Former Member
0 Likes
856

Hi

Yes you are right

there will be a lot of changes occuring for a single program by different developers.

especially this we have faced in real time for the Sales Order user exit program MV45AFZZ

because different developers are working on different logics and using the same program.

so that's why there will be a strict governing on the release and transport of requests into other clients. and this has to be governed by a project manager , every developer simpaly can't move his request as he wish.

so there should be strict vigilence on it and there should ne no dependencies for that request or changes. then only it should be transported.

and it is always a best practice for each developer such that end of every day he should have a copy of his developments when muliple people are working on the same object.

Reward points if useful

Regards

Anji

Read only

Former Member
0 Likes
855

Thanks for such a fast response.

SKJ and Ferry, changes are in different transports. A moved the changes to QAS and then B made the changes and moved to QAS, so both are in separate transport, but A will not notice that there are other changes in his code unless he does version compare between PRD and QAS and sees other code changes apart from his which is totally manual and might be difficult for big projects.

Anji, you are absolutely correct, thats one of the critical program and also it is true that there should be strict monitoring on it, but as I mentioned it is a manual process for Project manager and what I mentioned is a simple scenario. There could be complex scenarios where manual interrogation may not reveal dependencies.

So, is there a Z program or standard program which checks dependencies or any other recommended way by SAP? I am wondering how SAP internal development handles this kind of situations?

Thank you once again,

Jagadish

Read only

0 Likes
855

Different transports should not create a problem.

Ofcourse, there could be many transports with changes done by different people on a single object.

As far as tracking, Utilities->Version Management is always there to show previous and active versions.

I hope i got your point and answered correctly.

Thanks,

SKJ

Read only

0 Likes
855

The transport organiser by itself does some dependency checks like, you cannot move a table definition without moving the data elements and domains .

The developer B's changes shouldn't get transferred without actually testing it.You should transport the changes only after the testing.

As it is better to marj your changes whenever you change the code with some comments:

  • Begin of changes by <user id> on <date> <Request number>

Make changes here..

  • End of changes by <user id> on <date> <Request number>

Regards,

Ravi

Read only

0 Likes
855

Thanks Ravi Kanth. As you said we follow all kinds of standards to keep track of the changes and document it.

We finally came to following conclusion:

When ever there is a change to Standard SAP program before moving the object to PRD developer need to do version compare with PRD to see if the changes done are exactly what that developer has done.

Second, developer A should check the modification log on top of the object to see if there is any other entry after his.

Thank you,

Jagadish