Skip to Content
Technical Articles
Author's profile photo Preeti Bhat

Automation of Functional Checkouts


Whenever we have an important event in the system (like an upgrade or a big deployment), we need to perform a list of necessary checks to ensure that system is fine and everything works as expected.


Earlier these system checkouts were done manually, but now we have created an SAP ABAP Module pool program that will automatically check and provide status report on how the system is. With this program we can check different aspects of the system with minimal time and effort. Also, in case of issues, we will be able to identify and correct them quickly.



    Baselines will be taken prior to actual system checkouts in order to capture the image of the system. In this process we will save the status of all the active objects, roles and access of the users, backup content of the important tables and system settings.

    A few standard tables used for taking the baselines are:

    1. RSTRAN –               For Transformations
    3. RSUPDINFO –       For Active Update Rules
    4. AGR_USERS –       For User Roles

    After the deployment or upgrade, we will execute the program again. However, in this case, the program will compare the results with the baselines taken before. In case of discrepancies, it will list the results, like objects that were inactivated, roles and access that users lost, tables that for some reason changed the content.

    For instance, on click of Transformation button:

    1. Select Active transformations in the system from table RSTRAN.
    2. Select Transformations taken in the Pre-Baseline step.
    3. Compare both tables and save the discrepancies.

    Info package path checkbox: It will update the new path for flat files.                            Report variants checkbox: It will save updated variants’ values.We have templates for both IP and Program variants which we will upload after clicking on Execute button. The check will happen for those objects mentioned in the template. Dependent Process chain(Z**) for Info package check will run automatically and finally a log file will get generated/saved on our local machine.


    The program will check the connectivity of system with another systems and display the success or error message.

    1. Using table RSBASIDOC to fetch source system and its corresponding connected system details on the basis of source system type.
    2. Using Function module RSAR_LOGICAL_SYSTEM_CHECK to get the source system connection status.



Executing this tab will activate Data sources and Transfer Structures by triggering below 2 programs for 3 source systems(R3, BW, FLATFILE) in background mode:

    1. RSDS_DATASOURCE_ACTIVATE_ALL  – Program for 7x flows
    2. RS_TRANSTRU_ACTIVATE_ALL            – Program for activating 3x flows

Variants are passed automatically to above 2 programs based on their corresponding source systems.


Another important feature is we can schedule the process to run the baselines and checkouts automatically, without human intervention, and send the result via email. This helps us in case we want to execute the process during the weekend, we can monitor the result directly from our cellphones:


This used to be a 3-4 person jobs of 2 hours at least each time. It required a separate KT session for new joiners to go through all the steps of validation for different tasks as it involved following various steps using multiple t-codes.

But now the process is much simpler. Just 1 resource can handle all these tasks as it is clubbed in a single program. We are saving at least 8 hours per month and no one needs to be online during weekends reducing the overtime needed improving work-life balance of our team.

Thanks for reading!!  Please leave your comments below….

Preeti Bhat

Assigned Tags

      Be the first to leave a comment
      You must be Logged on to comment or reply to a post.