Hi ABAP friends,

after reading the BlogABAP Editor Cherries! i had the idea of giving you some tools that might power up your applications or will help you writting performant and

high-quality

ABAP code .

Code Inspector

The Code Inspector can be configured/started via the transaction SCI/SCII. It is a powerful tool to provide checks for your ABAP applications. For example a company wide development guide line can be customized. If you define all global variables begin with gf (global field) all deviations will be pointed out.

It’s duties are:

  • check development guide lines
  • advanced programm check
  • perfomrance & security checks

Also it can be started directly from the ABAP Editor to be runned with the default variant.

Screenshot_codeIns.png
Screenshot_codeIns2.png

Running the Code Inspector definitely improves your coding, and helps you standardizing your programms which will be blessing if someone tries to  comprehend your thoughts.

I think this tutorial SAP Code Inspector (SCI) – Tutorial is quite useful.

Coverage Analyzer

You can call the Coverage Analyzer via the transaction SCOV. This tool can be used to check if single code areas get called or see how often they have been processed. Also you can evaluate how often programm, function modules oder classes have been called. It can be used for example to find dead code or see running time for single code areas to improve specifial sections.

It has to be started first and starts recording from this point. If you record all programm calls system wide, be aware of the performance loss which might not be huge but noticeable.

Screenshot_coverAnaly.png

In the screenshot above the all methods, forms and modules and their percentage of processing are displayed. Also the active calls in number.

Workload Monitor

The workload monitor is a very powerful tool to analyse the workload of several resources or your whole system in detail. You can compare calls and runtime (CPU & DB) of transactions and much more. Transaction (ST03n).

Runtime Analysis

Duties of the Runtime Analysis:

  • measure running time
  • evaluate Measurements
  • examples to compare techniques in ABAP

You can start the runtime analysis via the T-code SAT. After that you have the fill in several parameters and a programm/transaction or a funtion module you want to analyse. The result is an detailed list of inormation about your selection. You can now start analysing and optimzing your applications. One thinkable scenario is finding extremely long running reports and optimize them by little modifications (using hashed tables instead of standard table for example).

Screenshot_SAT.png

Splitscreen Editor

The last of the tools i want to introduce to you is the not very common SplitScreen Editor (SE39) that can be used to compare Sourcecodes either of function modules reports or classes with each other.This might be useful if you want to compare or copy code or functionality to your new apllication.

Screenshot_Splitscreen.png

I hope i could show use some standard transactions that might be useful for you and that help you improve your devolopment skillz to build qualitive better applications and make development a little bit more comfortable to you.

My personal experience was that it some of the tools above were very useful for my company and all the devolopers in many cases.

Kind regards Tobi

To report this post you need to login first.

9 Comments

You must be Logged on to comment or reply to a post.

    1. Tobias Steuder Post author

      Sorry i thougt it would be clear , i will provide them ASAP. I just wanted to to introduce this tools to you, to use them efficiently you need to do further research anyway.

      (0) 
  1. Peter Inotai

    Nice collection.

    Instead of SCI I would suggest to use ATC (if you have the right SAP release, which already contains it), it’s nicely integrated to SE80 and SE09.

    And for performance I prefer to use ST12 (Single transaction analysis), which contains all functionality in a single transaction.

    Peter

    (0) 
    1. Tobias Steuder Post author

      What exactly is the purpose of ATC or the benefit? Don’t really understand which features are provided incept of the integration of the code inspector.

      ST12 seems pretty good to do analyse single tansaction. Tahnk you for the tip!

      (0) 
      1. Vijayan Balasubramanian

        ATC not only contains SCI check, it also runs Aunit if the object contains any. Moreover, i can configure to run my checks periodically. Since it is integrated into Workbench, it is really handy to just say check->Atc which does both static check and runs Aunit in one step and gives me the result together based on priority with detailed information.

        (0) 
      2. Peter Inotai

        Apart what was already mentioned by Vijayan, that you can configure your own check (in our case the DEFAULT checks + some custom checks + some HANA checks), I like the following features:

        • if it’s activated for transports, from SE09 when you perform a check, it gives you the ATC results (which is usually more checks than SCI and more details)
        • from SE80 you can check the results easily (via ATC result Browser)
        • from the error list, you can correct the error and immediately trigger a recheck to get the delta error list
        • the layout is nicer than SCI, it has more details, more explanation
        • you can also schedule run time to time and see the progress (eg from SE80)

        Which I don’t use yet, but have seen, that it has nice integration to ABAP Eclipse.

        (0) 
        1. Tobias Steuder Post author

          The integration into eclipse would be a nice benefit! Thank you for the detailied explanation, it seems like a useful tool which rahter can be used by the SAP basis to monitor the system and could be kind of useful for test scenarios before system upgrades!

          Is theere a scenario i don’t get at the moment to run SCI on the same reports periodically? In my opnion after finishing your development it makes no sense, beacuse there will always be the same results?

          (0) 
          1. Peter Inotai

            “useful tool which rahter can be used by the SAP basis to monitor the system and could be kind of useful for test scenarios before system upgrades!”

            Unit tests are more for developers (and QA), so I still believe ATC is a very useful tool for developers.

            “Is theere a scenario i don’t get at the moment to run SCI on the same reports periodically? In my opnion after finishing your development it makes no sense, beacuse there will always be the same results?”

            True for smaller developments or separated development objects.

            We develop an ABAP Add-on, where there are lots of object with lot of dependency. For us it makes sense to run it time-to-time to see if the number of errors are actually going down or up.

            We upgraded the system recently, so had old checks for old codes, so now we have the possibility to have the newer checks to check old code and correct/improve them.

            BTW if you also get some new checks via BASIS SP, you can also adjust your variant and get some new improvement possibilities (eg HANA compatibility checks – See 1935918 – Downport Code Inspector Check Variants for HANA Migration).

            (0) 

Leave a Reply