‎2005 Sep 23 10:22 AM
Dear Forum,
I'd like to perform a code comparison between two systems programatically similar to what I can do manually in
SE80 -> Utilities -> Version Management...
Does anybody know a function module providing this functionality, in the best case even with RFC functionality?
Best regards & Thanks in advance
Wolfgang
‎2005 Sep 23 10:26 AM
try transaction SE39
here u can compare progs over two different systems by specifying an RFC destination
rgds,
PJ
‎2005 Sep 23 10:26 AM
try transaction SE39
here u can compare progs over two different systems by specifying an RFC destination
rgds,
PJ
‎2005 Sep 23 10:28 AM
Hi ralf,
Check SE39 transaction code.
Also have a look at program RSVRSRS3
Thanks
Lakshman
‎2005 Sep 23 10:42 AM
Thanks for your answers, they helped already.
However, it would be nice to have some module just telling that the programs differ or not. I want to perform a mass comparison - let's say I get all DDIC objects for one user from TADIR - then I'd like to get a list telling me whic objects differ in coding and which not.
‎2005 Sep 23 11:02 AM
well this might sound a bit silly but u can try this...
there is an option to download ur program source code in a local text file....u can do so for the two programs u want to compare...
Utilities -> More Utilities->Upload/Download->download
then u can read the two files in two internal tables in another program and then compare the two internal tables for equality.
using something like
if itab1[] = itab2[].
....<your code here>...
endif.
Note : u can create internal tables as
data : itab1 type table of edpline with header line,
itab2 type table of edpline with header line.
and fill them using GUI_UPLOAD to read file
Message was edited by: Priyank Jain
‎2005 Sep 23 10:43 AM
hi,
I don't thing there is such a function module. you create on custom function module with rfc enabled.
using READ_TEXT we can read program lines (i'm not sure )
Name - program name and Id = TXT
sasi
‎2005 Sep 23 11:05 AM
‎2005 Sep 23 12:29 PM
For other system use RFC_READ_REPORT .
You may use the same FM for Logon system also
or READ REPORT ......into itab .
Later compare the entries in QTAB . You may put logic to compare only executable statements .
Cheers .
‎2005 Sep 23 12:54 PM
Hi Sanjay,
your hint was helpful, but the output length is limited to 72 characters. Our coding often has lines with more characters.
In the moment I'm favoring the idea of using modules of func group SVRR. It provides modules to read coding into internal tables.
‎2005 Sep 23 1:40 PM
Hi,
sorry i've fogot:
1) get version with fm SVRS_GET_VERSION_DIRECTORY_46
2) get program with fm SVRS_GET_VERSION_REPO_40
both ate available in 4.6 and 6.2
Andreas
‎2005 Sep 23 2:28 PM
Dear All,
thanks to your ideas. I'll do the following now:
1) read TADIR
2) Loop at TADIR and
3) Get coding of most recent version by using
SVRS_GET_VERSION_*
in local and remote system
4) Compare coding using
SVRS_COMPUTE_DELTA_REPT
Thanks again to all. Best regards
Wolfgang