Would you like to compare your program with other programs or the same program in other systems ?
Or maybe compare table contents between systems/clients ? Here's how...
Version management for programs (from transaction
SE38 Program Editor / Menu -> Utilities -> Versions -> Version management, compare your version with previous versions or compare whichever version you like with versions on other systems via "REMOTE comparison". Note:This also works with the main program of a workflow business object, so version management is available on changes to methods as well.
The split screen editor Compare programs on the same system via transaction
SE39 ABAP Splitscreen Editor, which is not just to compare programs, but (as stated) it is an editor as well... This can be very very very handy indeed !
Comparing function modules ? Just use the tools above on the include which holds your function module. This include is very easy to find: from your program editor (on transaction
SE37 Function builder) go to: Goto > Main program, which will bring you to the main program of your function module. Now find the include which holds function module includes (each function module is held on an include). It is an include with comment line:
" Function Modules. From here a list of includes is shown followed by the function module name in comments. Pick up the include name and feed it to transaction
SE39) to do your thing...
View/table comparison transaction
SCMP between (clients in) systems (or rather: over R/3 connections). This can be a very effective way to pinpoint e.g. differences in customizing or control tables, and also to check how tables are used elsewhere.
Interface comparison (comparing program menu's) can also be done, from the menu painter (transaction
SE41) goto Utilities -> Interface comparison.
Upgrade utilities to help upgrade - split in 2 major chunks:
SPDD- Data dictionary compare and
SPAU- Program compare.
Highly rated - although I do not know how they work....
Version management and deleting reports When you delete a custom program (which has already been transported before) it's good to realize that the versions are not deleted as well. Thus if you recreate the report (with the exact same name), the version history of this old report becomes available again.