You are on page 1of 3

Smartform Version Comparison

Posted by Sajid P P Kunhabdulla Apr 8, 2016

There has long been a requirement, where we need to compare 2 Smartform versions.

In SAP there is no feature for this, there are no past versions maintained and also certainly no
remote comparison.

This makes comparison and version management of smartforms a tedious task.

I was faced with such a task too. There were multiple complex smartforms and due to
multiple activities and phases of my project working simultaneously, it was very difficult to
trace what went wrong and definitely made it a lot of effort to maintain and revert changes in
case of any issues.

Thus began my journey down the lane on how to overcome this problem.

My initial research "Google" shed no fruitful results. All I got was it is not possible in SAP to
compare the smartforms and we will need to download the XML files and save locally in
order to do version management.

And in case we need to compare, we will need to upload and create a temporary version and
then compare each window and element.

Well, to me it did not make a lot of sense. Since it would be way easier to create new in a lot
of cases and yes, I believe that is what must have been done in most cases.

So I started with my own utility program for Smartform Version Comparison.

I noticed that always on Download and XML file is generated and this remains more or less
of a similar structure.

There are tags which we can traverse and identify to compare the smartforms.
And also the entire data in the smartform is present in the XML.

So, why not automate this and voila now I have a working program to compare smartforms.

I have uploaded the source code of the same on Github at https://github.com/sajid-


a/SmartformVersionCompare

This is currently a working version with a known bug that it can only compare smartforms
upto a certain size. The reason is that currently we are not able to process the complete string
provided by the XML in the file. Other than that this can be used to compare smartforms.

The process for comparison is as follows:

1. Download and Maintain the XMLs of the smartform before making any change. This will
act as your repository of version management. Alternatively an SVN can be used for this
purpose

2. Execute the program and provide the two XML files that you want to compare.

3. On execution, the changes in the two versions will be displayed.


The program is currently in the Alpha Phase and hence any suggestions or improvements are
welcome.

Also all are welcome to collaborate on the source code and help in the development of a
comprehensive tool.

The features to be added in the current program are as follows:

1. Only Code Comparison

2. Remote System Comparison

3. Automatic Version Management and Comparison

4. Auto generation of XML by just entering the Smartform Name

5. Bug fixes

Hope this post proves useful to all who are in need for a way to compare smartforms.