1 2 3 10 Previous Next

SAP NetWeaver Administrator

148 Posts
Fredrik Borlie

Awstats for SAP systems

Posted by Fredrik Borlie Aug 18, 2014

I have always lacked the feature of eg apache where the web server generated an accesslog which I then could attach to an awstats server.


But one day I decided to dig down to the logging feature and realized that it might be possible to have the ICM to generate an access log.

As I see it, it is not the import of the log that is the problem, it is the generation of the log that is cumbersome.

To make sure that all relevant fields are added to the log entry.



Authorization to change system parameters

Web server that contains awstats (http://www.awstats.org/)


Step 1:

Analyse logging parameters.



Quite straight forward.

Compare the SAP standard with the Apache standard log settings.



No real default, but CLF and CLFMOD are proposed:

CLF - %h %l %u %t "%r" %s %b

CLFMOD - %h %l %u %t "%r2" %s %b




LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined



LogFormat = "%host %other %logname %time1 %methodurl %code %bytesd %refererquot %uaquot"


Step 2:

Decide on parameters to include.

I am very interested in the referrer and User agent so that must be included.


That means to enhance the SAP string with more parameters.

Comparing the name with wanted feature gave me following list of parameters.

LOGFORMAT=%h %l %u %t "%r" %s %b "%{referer}i" "%{user-agent}i"


Step 3:

Activate Logging


Activate logging is done by adding the logging parameter to the instance profile via RZ10.

This is my setting:



I also want the log file name to change name everyday .

Now the server needs to be restarted. (Eventually just restarting ICM is enough).


And the log file is generated.



Step 4:

Generate awstats

With the logs present we can now generate our awstats page.

And since I replicated another log I had for another server I could easily clone the config and automate the generation.



I have attached an example HTML which unfortunately have image and other links broken.

But feel encouraged that it is possible to generate awstats from an SAP-system and do return with your comments and improvements.

Both the ABAP system as well the Java system has this logging feature. I have only tested the ABAP server, yet.


Good luck


Hi All,


Few days back, I was in a strange situation where availability checks of MSSQL databases were required to be set from Solution Manager which was running on AIX. Request was to monitor availability, even when the applications(SAP) are down.


I tried with some basic setup, but all failed from SAP level. Querying MSSQL database directly was not working in my case.I went through some KBAs and notes.

Like 1601608 and 1458291.


So, Issue now was:

Whenever, we access any remote database from any SAP system, perhaps we should say a central system like SOLMAN, we have to provide 'Database Shared Library', abbreviated as DBSL and Microsoft SQL Server SNAC Client Library on that SAP system. This DBSL is used to connect SAP processes, it's database counterparts to query and manipulate data residing in databases. MS-SQL is a product of Microsoft and it's supported DBSLs are also provided by them. Microsoft has only made DBSLs for Linux X86_64 and it's own Windows Operating systems. SNAC is Microsoft's SQL Server Native Client is a stand-alone data access application programming interface (API) that is used for both OLE DB and ODBC so a mandatory requirement to take advantages of Solution Manager DBA Cockpit and it's counterparts.


I raised this wtih SAP but nothing worked


Because of no supported DBLS, every attempt to connect would fail -

the connection failed *** ERROR => DlLoadLib()==DLENOACCESS - dlopen("/usr/sap/<SID>/DVEBMGSXX/exe/dbmssslib.o") FAILED


Finally, one work around to monitor MS-SQL availability was to listen to a port 1433 which MSSQL instantiates whenever it goes live.

So, we prepared a script and tested on test system, and that worked.

We also checked bi-directional ports 1433 and 1434 to be opened with MS-SQL hosts and our Solution Manager system.


But now, the protocol/program used to do this test was telnet.

Whenever, we started a telnet test from script, a connection was established and seen on MSSQL host.

Also, on our AIX, a new process was created for every test and existed even after terminating the script.

The connection remained active on MSSQL host unless telnet process was removed from OS level.


So, we took things further, we prepared two scripts, 1st script for doing telnet and the other, 2nd script, for killing the processes.

Now, question was how would the script know when to kill the process, and importantly which processes are to be killed.


What we did, every connection from telnet was redirected to a log file.

Now, the 2nd script reads the current system processes, filter all telnet processes on for MSSQL host and 1433 ports, and prefix the output with 'kill -9' before the OS process which is now written to a 3rd dynamic-temp 3rd script.

We further added one more test system to observer the behavior. Now, when the 1st script was executed, we made it wrote the output to a DB-SID specific log file, but the next telnet for new system was not executed, as the connection was established for the 1st system and connection didn't exit.

So, we started the 2nd scripts, using FOR loop based on DB-SIDs, and filter the process, as written above, in the 3rd script and executed it, read the telnet DB-SID specific log file. If we found "connected" word in the log file for this system, that means the DB is available and emailed from OS level to the required users and distribution list.


This all was tested and worked well for us, there were no pending telnet connection on remote databases left.


Taking this further, we used around 20 MSSQL systems and modified the script further which read DB information from a flat file and triggered email when DB was not available. We scheduled scripts in cron for every 10 mins, with 2nd scripts using SLEEP function in loop, giving 1st script few seconds to test connection.


I cannot share that script, but the algorithm is almost here.

Hope, this will help others if they face similar situation in near future.




DISCLAIMER: Please do not take 'Throughput' as we all know. For me, and here, it's a measure of performance in terms of GC.
All you see below was an idea that I wrote on paper and I thought of sharing it.
I will try to make this idea more viable and realistic.
Readers and Moderators - Forgive me for something that you don't like and this effort.



This weekend, I was thinking of some way to calculate the 'Throughput' in terms of Garbage Collection for a Server Node.

So, I started related Java with basic mathematics - and came down to derive an equation for 'Throughput'.


Here we have some terms - Two Variables - Non GC Time and GC Time, with the help of which I have written the first equation:

Non GC Time + GC Time = Total Time = Start to current up time


or we can say,

Non GC Time = (Total Time - GC Time)

Now, if I want the throughput, I have to do.....

(Non GC Time/Total Time) *100 = Throughput -- this should me maximum

And hence, my motive is to increase the Throughput

((Total Time - GC Time)/Total Time) * 100 = Throughput -- this should me maximum  > much high

To calculate this GC Time, I have included a new function to find it

i.e.  GC TIme = (N * avgGC Time ), where avgGC Time is what  you calculate from few random  GC runs and  N is the number of GC runs , which again you can get from std_server logs 

So, now I have a new modified equation:

((Total Time - (N * avgGC Time ))/Total Time) * 100 = Throughput(N)

Now if we include the number of core per CPU

Throughput(N,P) = avg [(Total Time - (N *avgGC Time ))/Total Time) * 100] / P

where P stands for processors number of cores on multiprocessor.

Throughput(N,P) = avg [(Total Time - (N *{Pause Time }))/Total Time) * 100] / P

I then thought of delay, that all I included.

Throughput(N,P) = [(Total Time - (N *{avgGCTime + X(delay)}))/Total Time) * 100] / P

Now, this delay also can be used to include CMS mark times

Also, mark - X is directly proportional to P - one example is delay between polls in a multiprocessing architecture

So, finally I derived an equation to measure GC performance, which I call as Throughput for GC for a server node.

  • Throughput(N,P) = [(Total Time - (N *{avgGCTime + X(delay)}))/Total Time) * 100] / P

Any suggestion for improvement for this novice efforts are always welcome.

I am trying to automate this, and future improved versions, equation on test system, and if it works I will share with you all. My own Wily



The following method describes the procedure of performing a Kernel Upgrade on IBM i-Series /DB2. Since the AS/400 specific procedure is different from any other OS platforms. Kernel upgrade can be performed successfully using the APYSIDKRN command which takes care of all manual actiions – like checks, backups, permissions etc., from versions 7.20 and above. In the past, various commands were used for performing this single activity, now SAP has simplified the procedure with the introduction of a single command APYSIDKRN. Have documented this for beginners who are new to i-series, any inputs or feedback is highly appreciated. Various projects might have followed different approaches, but we have been practicing the following method without any issues.


Reference SAP Notes:  1) Note 1632755 for more information on APYSIDKRN command

                                     2) Note 1432807 for restore old kernel back again

Technical Steps

Step 1: Downloading the Kernel Copying Media to your IBM i

Step 2: Stop SAP System

Step 3: Upgrade kernel using APYSIDKRN

Step 4: Start SAP System and validate

1) Download the OS/400 kernel files from market place and copy to you IBM i



Copying the files manually to IBM i

The required installation media has to be copied from your Windows PC to your IBM i. To copy the media, you have to use a binary share ROOTBIN. This guarantees that the content of the media is copied correctly from the Windows PC to your IBM i. No copied content is corrupted, and no copied files with longer file names are shortened by a converting share. Binary Share – ROOTBIN will be created during an initial installation, if not please refer to i-series installation guide on creating a ROOTBIN directory.



Create a folder kernel_741U_43 under ROOTBIN for example and place the SAR files in the directory (Don’t have to extract them – the tool will take care of the uncar)



2) Stopping the SAP System

Log on to the VM for i-series and connect to the server using Emulator (All i-series tools will be installed under IBM i Access for windows)



Soon after we log in, the system prompts for specific operation we want to perform.


Stop the SAP system


Step 3: Upgrade kernel using APYSIDKRN

Check the existing kernel version of the system


Run disp+work -v from kernel directory (/sapmnt/SID/exe/uc/as400_pase_64)


(To run user friendly UNIX commands like other operating systems – we can use Q SHELL, simply enter the following command at the initial screen CALL QP2TERM – which will take you to terminal, general commands can be run from there like cd, ls, cp, rf etc.,)




RUN the program APYSIDKRN from command line




Just give the path of the kernel dump which we gave in Step 1 in the field Archives to be applied : /kernel_741U_43/*

The program will automatically look for files in ROOTBIN and under that the dump we mentioned.


The APYSIDKRN will automatically prepare the environment, take back up of the existing kernel, check the Archive SAR files, kernel compatibility; it will also give options for Mode of Operation to ADD the files to the existing kernel, TEST, FULLY – to upgrade kernel versions directly also (ex from 720 to 721)


ADD is option is to OVERWRITTEN existing files

TEST option is to Simulate, no changes will be applied but we can identify and analyze any problems to be expected when applying patches

FULLY – Program directly is completely emptied before it is filled with new kernel files.


Old kernel automatically backed up to /sapmnt/SID/patches/saved/xxx.SAR


Once kernel upgrade is finished the program automatically exits.

Check the newly upgraded patch level same as above


Step 4: Start SAP System and validate





It took 15 minutes for the complete procedure and to bring up PI 7.4 system.



I had the necessity to check up all the jobs canceled, on the environment that we administer, in a fastest way. So I developed this report, that check which jobs was canceled in the last 24 hours and, in case of had one of it, it sends me an email. It fulfills my need.


You can schedule it to run once a day, or customize as you like.


I would like to share this report, in case of someone else need something similar.












REPORT  zmailjobscancel.



* data jobs


   job_name TYPE tbtco-jobname,

   run_date TYPE tbtco-strtdate,

   run_time TYPE tbtco-strttime,

   job_stat TYPE tbtco-status,

   END OF wa.





TYPES: BEGIN OF gty_s_tbtco,

   job_name TYPE tbtco-jobname,

   run_date TYPE tbtco-strtdate,

   run_time TYPE tbtco-strttime,

   job_stat TYPE tbtco-status,

   END OF gty_s_tbtco.



DATA: gs_tbtco TYPE gty_s_tbtco.

**  gt_tbtco TYPE TABLE OF t005t.



DATA: new_date TYPE sy-datum,

       l_str TYPE string.

       new_date = sy-datum - 1.




   gv_sender TYPE string, " Sender Email Address

   gv_recipient TYPE string, " Recipients Email Address

   gv_title TYPE string, " Email Subject

   gv_soli_tab TYPE soli_tab, " Email Body

   gv_soli_tab_line TYPE LINE OF soli_tab.



gv_title     = 'TITLE'.

gv_sender    = 'sender@mail.com.br'.

gv_recipient = 'recipient@mail.com.br'.



**  Select Canceled Jobs from the last 24 hours.

SELECT jobname strtdate strttime status FROM tbtco INTO TABLE itab WHERE

strtdate >= new_date AND status IN ('A').


IF sy-subrc <> 0.

   gv_soli_tab_line = 'None'.

   APPEND gv_soli_tab_line TO gv_soli_tab.




**gv_soli_tab_line = '----------------------------------------------------------------------------'.

**APPEND gv_soli_tab_line TO gv_soli_tab.



LOOP AT itab INTO gs_tbtco.

**  WRITE:/ gs_tbtco-run_date.



   CONCATENATE gs_tbtco-run_date(4) gs_tbtco-run_date+4(2) gs_tbtco-run_date+6(2) INTO l_str SEPARATED BY '.'.

   CONCATENATE gs_tbtco-job_name' - ' l_str INTO gv_soli_tab_line.


   APPEND gv_soli_tab_line TO gv_soli_tab.









     i_title                   = gv_title

     i_sender               = gv_sender

     i_recipient            = gv_recipient

     i_flg_send_immediately = 'X'


     i_tab_lines            = gv_soli_tab

**    I_TAB_RECIPIENTS     =

       "i_flg_commit        = 'X'


     not_qualified            = 1

     failed                      = 2

     OTHERS                 = 3.


Richard W. L. Brehmer

A large variety of custom VB functions can be created and used in BEx analyzer. That method may be useful especially when somebody don’t know ABAP.  


As an example creating VB functions converting 0fiscper value into full date is described here.


First, we have to be sure that macros can be saved in the workbook we use. Standard MS workbook .xlsx can’t do that. On such occasions I save the workbook as The Excel 97 - Excel 2003 file format.


After doing this you have to save the workbook on the server again



Now we can add macros to the workbook. We can do this in VB editor (Alt-F11)  

If we want to store our macros locally (as in this example) we should add a new module


vb creating module.png

and write down the code for the macro

vb writting a code.png

If we have the code stored in .bas file it can be imported here (we can do this when we want to use the same code in many workbooks).

vb importing module.png

  After writing or importing the code the workbook should be saved on the server with the “Save workbook” button.



Now function we stored in workbook can be used like this:

vb function usage.png

Please find attached file containing the code that was used here (the extention of the file has been changed to .txt so that the file could be stored in SCN server).


Regards, Leszek


Sum and Sum with DMO

Posted by V V Jul 7, 2014


I started the upgrade of 7.3 portal system and sum is expecting <sid>adm password, and due to audit restriction we were not able use the <sid>adm in sum for the upgrade.  I checked couple of documents about sum and I didn’t see any workaround for the same.

I checked one document which talks about  DMO for HANA , observed that there was option where we can skip <sid>adm user/password(by changing the sumstart.conf file) and tried that option  we moved forward but unfortunately started several issues with schema user and  and several other issues(Even though I have given full permission and groups to the user) and ultimately resulted the restart of the upgrade with JSPM with the help of note 1563660 .

I checked with sap and they told that it is not meant for normal upgrade and it’s is only meant for DMO and it was not tested for other scenarios


I spent several hours for investigating the workaround and picking the wrong tool again wasted several more working hours in solving the actual issue. I checked several blogs in SDN and here I would like summarize few points which gives idea when to use sum and sum with DMO  ,   this is not new blog with entirely new content but I would like differentiate both the tools .

Software Update Manager:

    • Release uprade (major release change)
    • System update (EHP installation)
    • applying Support Packages (SPs) / Support Package Stacks
    • applying Java patches
    • correction of installed software information

  SUM is used for all SAP NetWeaver based systems, so systems either based on AS ABAP, or AS Java, or based on a dual-stack system. 


http://<host name>:4239.

SUM with DMO

Database migration option (DMO) is an option in SUM - DMO is not a separate tool and this build is only using the ABAP part of SUM, called SAPup

  1. 1. Although DMO is based on the "standard" SUM, a new user interface (UI) is used - but only for the DMO procedure. The UI is based on SAPUI5, so it's running in a browser, and offers some comfortable features like checking the log files without having to log on to the OS of the application server.

   2.  Different start procedure

SUM is started in a different way: a browser request to the SAPHostAgent is used to start SUM, instead of starting SUM from the prompt/console. This allows you to start the SAPup process without having an additional server window open

Different UI

   3. SUM shows a new user interface which is based on SAPUI5, which is currently exclusively available for DMO only.

   4. The new UI is currently only available for the DMO procedure, but in the long run, it may become available for other use cases as well.

Where we can use


  • You want to migrate your existing SAP ABAP system to the SAP HANA database
  • Your SAP release needs to be upgraded prior to migration
  • MO for SAP NetWeaver BW and for SAP Business Suite systems
  • DMO is available with Software Update Manager 1.0 SP09, and can be used for systems based on AS ABAP. It can be used for SAP NetWeaver BW systems from 7.0 SP17 (and higher) to migrate to 7.31 (and higher). And it can be used for systems part of the SAP Business Suite 7.0 (and higher) to migrate to a level corresponding to SAP BASIS 7.40 (for example "SAP enhancement package 7 for SAP ERP 6.0").

How to start SUM with DMO option

Run the command /usr/sap/<SID>/SUM/abap/SUMSTART confighostagent to create the file sumstart.conf in

Start the DMO Frontend with the following URL – (HTTP/HTTPS)



Using proper tools as suggested by sap will save your time And always it is  recommend to use sap prefered tools and follow release notes and guides before planning any upgrade .





1600846 - JSPM/SUM Calls sapcontrol without user credentials

1563660 - sapcontrol, <sid>adm authorization issues (SUM)


SAP First Guidance - migrate BW on HANA with the

database migration option (DMO)

Hi Techies,


I have performed Migration using Oracle Golden Gate. Please find the High level Steps.


Would be sharing the detailed Documentation.


Advantages of Oracle Golden Gate is there no down time for the source system. only down time is during the switch over.



  • Initialize the Oracle Advanced Customer Service (ACS) for SAP O2O (Oracle to Oracle) package which includes all functionality to create a complete set of migration scripts including a new source user creation, target database and related tablespace creation, and the OGG source and target configurations.
  • Install the Oracle GoldenGate software on source and target
  • Run the O2O package on the source system 4. Start GoldenGate change data extract and pump processes on the source system, which will being capturing and queuing change data and DDL (as needed).

Note: All tables in the SAPR3 schema will be included and will contain a SCN/CSN token so that later each table can be filtered by SCN/CSN. A code snippet to add such as token is:\

Table SAPR3.*, Tokens (tk-csn = @GETENV ("TRANSACTION", "CSN"));

  • Start the initial database load to copy the database objects from the source to target database.
  • Validate initial database load.
  • Start GoldenGate replicat apply processes on the target system, which will be applying captured change data and DDL (as needed). Note: While the replicat process(es) will be started using the AFTERCSN option, tables within a single replicat will be configured to skip transactions based on the table grouping of the initial loads. This automatically configured by the O2O scripts. Transaction filter by table will be done with something similar to the following code snippet:\

Map SAPR3.MYTABLE, Target SAPR3.MYTABLE, Filter ( @NUMSTR (@TOKEN ("TK-CSN")) > 1234567);

  • Switch over. Once both system are in sync the source SAP system may be stopped. After the last changes is applied to the target the SAP system can be started
  • on the target system. The source SAP shutdown and target SAP startup will typically take approximately 10 minutes regardless of the system size.



Sandeep Singh

Many a times CMS database in Business Objects can become inconsistent resulting in issues while logging in. While repository diagnostic tool can be used to point out the inconsistencies, some of them need to be resolved by query designer tool. One such issue and it's resolution has been described below having exceptions related to SI_APPLIED_PROPERTIES at the time of logging in.


Encountering below error while trying to login into BO BI 4.0. Issue happened during login into CMC as well as launchpad. Please find below the snap-shot of the error,


The CMS database somehow got inconsistent. Firing the following query in the Business Objects Query Builder,



This resulted in the following 3 infoobjects being returned




Make a note of the SI_CUID value for each of the three returned info-objects. Then use these SI_CUID to delete the entries from the database


delete from cms_infoobjects7 where si_cuid in

The stale entries in the CMS database pointing to DFO files are removed. Now you can successfully login into CMC and launchpad.

Please Note :

1. The url for query builder is http://[ServerIP]:[Port]/AdminTools/querybuilder/ie.jsp You can give host name also instead of server IP if you are using the local terminal server. Also you can check what all files are present in you Tomcat directory structure inside the host where the Tomcat web application server is installed for BO.

2. This issue is not release specific as CMS database can become inconsistent irrespective of product releases.

3. SAP was supposed to release a KBA for this issue, though I didn't found any. Somewhat identical issue has been captured in SAP KBA# 1563662.

4. While firing the delete query you might need the owner of the table name cms_infoobjects7. Use the query, select owner from dba_tables where table_name=''ÇMS_INFOOBJECTS7'

Once owner is retrieved you can use the CMS schema name in front of the table name to fire the delete query in oracle.

Finally, COMMIT is a strong word. Don't forget to communicate the same to Oracle.




This blog is about installing SAP NetWeaver Application Server ABAP 7.03 64-bit Trial on SAP Process Orchestration 7.31 SP 11 Trial in Amazon Web Services (AWS) Public Cloud (described in ‘Try SAP NetWeaver Process Orchestration in Public Cloud!’ blog - http://scn.sap.com/docs/DOC-33765). The target is to have two working systems in one cloud – SAP NetWeaver ABAP and SAP PO.

1. Make sure that your AWS cloud instance with SAP Process Orchestration 7.31 SP 11 Trial is installed and running (as described in ‘Try SAP NetWeaver Process Orchestration in Public Cloud!http://scn.sap.com/docs/DOC-33765).

2. Using Remote Desktop log into your virtual operating system.

3. Go to https://store.sap.com/ web and look for SAP NetWeaver 7.03 64-bit trial.

4. Click on ‘Trial Version’


5. Fill the form and click on ‘Submit’

6. Go to email that you used in form in point 5. There should be a link to the SAP NetWeaver Trial. Choose ABAP_7_03_SP04_64_bit_Trial_3_9_2_GB and download it. You have in this package SAP GUI also.

7. To unpack SAP Netweaver Trial download and install any program that unpacks archives for example 7-zip ( http://www.7-zip.org/ ). Unpack the SAP NetWeaver Trial.

8. If your hostname is longer than 13 characters you need to change for shorter one. To do that go to system properties (right click on computer -> properties), click ‘Change settings’ and then ‘Change…’  button. Change the computer name and save it. Computer needs to restart and it may take a few minutes.

9. After hostname changes your pi license might stop to be valid. To check this out go to http://localhost:50000/nwa Configuration -> Infrastructure -> Licenses.  If it is not valid  you need to install new license on your PI system. To do that go to https://websmp130.sap-ag.de/sap(bD1lbiZjPTAwMQ==)/bc/bsp/spn/minisap/minisap.htm, fill the form and click ‘Submit’, go to mail that you used in form and download new license key. To install it go again to http://localhost:50000/nwa Configuration -> Infrastructure -> Licenses, click ‘Install from File’, find the file and add it. You should see now license with valid license status. The old license with not valid status you may delete by selecting it and clicking on ‘Delete License’

10. Install loopback adapter. Press ‘Start’-> cmd. Run hdwwiz.exe. Click ‘Next’. Set ‘Install the hardware that I manually select from a list (Advanced)’ and click ‘Next’. Choose ‘Network adapters’ and click ‘Next’. Then set as below:


Click twice ‘Next’ and then ‘Finish’.

Go to network properties. Click ‘Change adapter settings’. Right click on loopback adapter that you just added and click ‘Properties’.

Go to IPv4 Properties


Set the IP address and Subnet mask and save it. You will use this ip address in point 16.

Go to C:\Windows\System32\drivers\etc and edit file ‘hosts’.

Add line (with defined by you values from points 8 and 10 instead of these variables) to the end of a file

<ip_address_that_you_added_to_loobpack_adapter> <hostname>

For example: Host1


and save it.

11. Now you can start the installing. Go to folder:

NWABAPTRIAL70304_64\SAP_NetWeaver_703_Installation_Master\DATA_UNITS\BS2011_IM_WINDOWS_X86_64 and run sapinst.exe

12. Choose Central System as below and click ‘Next’.


13. Accept the license, enter master password (only ‘Abcd1234’ password worked for me. Other password that I tried were causing errors further steps of      installation) and set your installation drive to C.


if in prerequisites checker you will have condition ‘Swap Size’ not met then change your swap space to the recommended one and start installation again from point 11. To change swap size go to system properties, click ‘Advanced system settings’


Press ‘Settings...’


tab Advanced and press ‘Change…’. Change size to the recommended one and save it.

14. In Parameter Summary there might be one thing needed to be changed. If any of your installing locations there is set on Temporary Storage drive (had it as drive Z) then you have to change it on other not temporary drive like C.


Like above data volume is set to Z. If it will not be changed after installing system end restarting it might not start because of lack data volume (due to installing it on temporary storage). That is why you need to select ‘MaxDB Data Volumes’, click ‘Revise’ button and change all locations to other drive, for example on C:\sapdb\NSP\sapdata. Remember SAP System ID and Central Instance Number because it will be needed in point 16.


15. If you don’t want to change parameters go next. Installation should begin and after few hours should be finished. After that in SAP Management Console there should be your abap server in green color. That means installation was successful. If it is grey then right click on it and press ‘Start’. Log in if needed and after a moment server should be working (green color). Actually both – PI system and ABAP server should be green to be sure that they are both working well. To be sure that they are working you may restart computer and start them again.


16. To connect with server you need to install SAP GUI. It is in package that you unpacked in point 7. Install it. Run ‘SAP Logon’ icon from desktop and create new entry (right click -> add new entry). In application server use the ip address from point 10 and in Instance Number and System ID fields use values from point 14. Then click ‘Finish’. Now you should be able to connect to ABAP Server and log in there.




VB coding in BEx Analyzer.

In some situations MS Visual Basic coding may be used to transform data displayed in BEx Analyzer.
Let’s suppose we have to create a report that presents service costs with respect to the country of vendor and the code of service.  

The problem is that two queries should be used in this case. First query where we can see country associated with vendor (0vendor__0country) and second query using 0pcompany__0counry (as we have no data in 0vendor in some records ). 

Now we have two tables that we have to combine into one to see the data in a proper way.
First: based on 0vendor_0country:

SERVICE (code and text); 0VENDOR__COUNTRY (code); AMOUNT (rounded); AMOUNT
232 service group 1  DE 100 100,01 
232 service group 1  GB 200 200,01
236 service group 1  DE 150 150,02


Second (based on 0pcompany_0country)

SERVICE (code and text); 0PCOMPANY__COUNTRY (code); AMOUNT (rounded); AMOUNT
232 service group 1  DE 300 300,01 
232 service group 1  GB 100 100,01
236 service group 1  DE 50 50,02


We need combine data from both tables into:

SERVICE (code and text); COUNTRY (code); AMOUNT (rounded); AMOUNT
232 service group 1  DE 400 400,02 
232 service group 1  GB 300 300,02
236 service group 1  DE 200 200,02


Here is the moment when we may use VB coding. 

What should be done in this case is:
1. data from the first table should be copied to another location.
2. data from the second table should be copied to the same location just below the last row from first table
(here we have one table containing the data from both tables)
3. data in the new table should be sorted by service and country
4. data should be aggregated by service and country

Copying the data from first table may be realized by code:

   Sheets("0VENDOR SHEET").Select   
    r = 2
    t = Cells(r, 1).Value
    While t <> ""
        r = r + 1
        t = Cells(r, 1).Value
    RwMax = r
    Range(Cells(3, 1), Cells(RwMax - 2, 7)).Select
    Cells(2, 1).Select
Copying the data from the second table is slightly more difficult because the first row of that table have to be just under the last row of the first table.

   Sheets("0PCOMPANY SHEET").Select   
    r = 2
    t = Cells(r, 1).Value
    While t <> ""
        r = r + 1
        t = Cells(r, 1).Value
    RwMax2 = r
    Range(Cells(3, 1), Cells(RwMax2 - 2, 7)).Select
    last_row = Selection.SpecialCells(xlCellTypeLastCell).Row
    Cells(last_row + 1, 1).Select
    Application.CutCopyMode = False


To sort the data we use code like this 

    ActiveWorkbook.Worksheets("OdbRazem").Sort.SortFields.Add Key:=Range( _
        "A2:A300"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
    ActiveWorkbook.Worksheets("OdbRazem").Sort.SortFields.Add Key:=Range( _
        "C2:C300"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
    With ActiveWorkbook.Worksheets("OdbRazem").Sort
        .SetRange Range("A1:F100")
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
    End With


Aggregation of records is not very complicated 

    serviceCode = ""
    serviceText = ""
    vCountry = ""
    roundedValue = 0
    myValue = 0
    sumRow = last_row + 7
    cRow = 2
    serviceCode = Cells(cRow, 1).Value
    serviceText = Cells(cRow, 2).Value
    vCountry = Cells(cRow, 3).Value
    roundedValue = Cells(cRow, 4).Value
    myValue = Cells(cRow, 5).Value
    For row = 3 To last_row + 1
        If Cells(cRow, 1).Value <> serviceCode Or Cells(cRow, 3).Value <> vCountry Then
            sumRow = sumRow + 1
            Cells(sumRow, 1).Value = serviceCode
            Cells(sumRow, 2).Value = serviceText
            Cells(sumRow, 3).Value = vCountry
            Cells(sumRow, 4).Value = roundedValue
            Cells(sumRow, 5).Value = value
            serviceCode = Cells(cRow, 1).Value
            serviceText = Cells(cRow, 2).Value
            vCountry = Cells(cRow, 3).Value
            roundedValue = Cells(cRow, 4).Value
            myValue = Cells(cRow, 5).Value
            roundedValue = roundedValue + Cells(cRow, 4).Value
            myValue = myValue + Cells(cRow, 5).Value
        End If


Now we have aggregated data that may be used in a beautiful report.

The program of course may be associated with a button that we create in one of the sheets.


This is only an example of a method. The program may be much more elaborated. Using VB we can do everything in what we need.


Hope it encouraged you to use VB coding in analyzer.

Regards, Leszek

We were using SUM 1.0 SP10 Patch 3 for upgrading the JAVA system/DUAL System. We got an error in Execution phase in step Import cr-sda models.


The ERROR which was recorded in IMPORT-CR-SDA-MODELS_01



<!--HELP[Manual modification of the header may cause parsing problem!]/-->




<!--FORMATTER[com.sap.tc.logging.TraceFormatter(%d [%6s]: %m)]/-->



Apr 23, 2014 11:47:28 AM [Info  ]: About to process archive G:/SUM_xxx/SJL_Download/LMMODELNW04_0-20009684.SCA. The CR-SDA content will be extracted first.

Apr 23, 2014 11:47:28 AM [Info  ]: About to import archive G:\SUM_xxx\SUM\sdt\tmp\sap.com~product~lm-model-nw.sda.

Apr 23, 2014 11:48:17 AM [Error ]: The following problem has occurred during step execution: com.sap.sdt.j2ee.tools.feimport.FunctionalElementsImporterException: Cannot import file G:\SUM_xxx\SUM\sdt\tmp\sap.com~product~lm-model-nw.sda. See next messages for details.

com.sap.sdt.sldeploymentlib.SLDeploymentException: CIM_ERR_FAILED: CIM model version insufficient, version in <local>, namespace active is 1.6.17, but should be greater or equal to 1.6.37

com.sap.sld.api.wbem.exception.CIMException: CIM_ERR_FAILED: CIM model version insufficient, version in <local>, namespace active is 1.6.17, but should be greater or equal to 1.6.37



We have upgrade the CR Content and CIM Model to latest patch , but error was not resolved.

Searched in SCN :

We have looked for the error in SCN community and found that its a bug in SUM 1.0 SP 10 patch 3.

1. Re: CIM_ERR_FAILED: CIM model version insufficient

2. SUM Netweaver 7.4 Java SP update error





Reset the upgrade and start the upgrade with SUM 1.0 SP8 patch (X) or SUM 1.0 SP9 patch (X).



Hope this will help you all



With Regards

Ashutosh Chaturvedi

Moderator note: This event is only available in German. The blog is therefore only in German. Please ignore if you are not German.


Sicherheit in Ihren Prozessen und Abläufen ist von größter Bedeutung für Ihr Unternehmen. Doch wie gelingt es Ihnen die Anforderungen aus dem Bereich Security optimal umzusetzen? SAP Education Services unterstützt Sie professionell mit den SAP Security Days 2014. Das Programm deckt in kompakter und praxisnaher Form  aktuelle SAP Security Themen ab und Sie haben zwei Tage lang die Möglichkeit, in verschiedenen Sessions ihre Qualifikationen zu erweitern und aktuelles Wissen zu sammeln. Von SAP Infrastruktur und Kommunikationssicherheit über Compliant und Identity Management bis hin zu GRC (Governance, Risk & Compliance) Themen.


Die Highlights im Überblick:

Mit hochkarätigen Plenumsvorträgen zu den Themen Produktsicherheit der SAP Produkte sowie einer Live Hacking Demo eröffnen wir die SAP Security Days 2014 am 15. Mai. Insgesamt stehen  15 unterschiedliche Vorträge zur Verfügung, aus denen Sie idealerweise fünf frei wählen können. Sämtliche Vorträge werden Ihnen im Anschluss der Veranstaltung zur Verfügung gestellt.



§   Security in unterschiedlichen SAP HANA Szenarien

§   SAP NetWeaver Identity Management 7.2

§   Fraud Indikatoren mit  SAP Fraud Management

§   Einschränkung des Zugangs von Cloud Apps zu On-Premise

§   Compliant Identity Management

§   SAP Audit Management 1.0 on HANA.

§   RFC Schnittstellensicherheit  – Good Bye für SAP_ALL

§   Finding the Leak – Nutzung von Read Access

§   SAP NetWeaver Identity Management 7.2 New Features

§   Identity Management und GRC for SAP HANA

§   Re-Design von Rollenkonzepte im SAP ERP.

§   SAP GRC Smart Business App / SAP FIORI Access Request

§   Access Request Management und Segregation of Duties Checks

Weitere Informationen sowie Agenda zu den SAP Security Days 2014 finden Sie hier.

Hi all,
I hope this helps.
ADS Installation and Configuration
Introduction: Adobe Document Services (ADS) enable form-based processing of business data triggered by both ABAP- and Java-based applications. It is an additional SAP NetWeaver solution extension included in the SAP NetWeaver usage type AS Java
Installation checks:
  1. Check whether ADS is installed on PI Java Stack
http://<AS Java hostname>:<port>/monitoring/ComponentInfo

    2. If it is installed, Configure the communication between PI and ECC

If it’s not installed follow below steps to install it.
      • Download support package ADSSAP07_0-10009589.SCA (SP07for ADOBE DOCUMENT SERVICES 7.31) from SAP support portal.
      • Upload SCA file to AS Java server (any temp location).
      • Logon to AS Java server console via SSH with <sapsid>adm user.
      • Execute telnet localhost <telnet port> and login with administrator of AS Java user (Administrator or similar).
      • Execute lsc (refer to SAP Note 1715441)
      • Deploy SP07 for ADOBE DOCUMENT SERVICES 7.31
        (refer to
        with command:

        deploy /tmp/ADSSAP07_0-10009589.SCA on_deploy_error=stop
        Note: during deployment of ADSSAP component AS Java server instance is restarted.


  • Execute
  • telnet localhost <telnet port> and login with administrator of AS Java user to re-connect to Deploy ControllerTelnet.
  • Execute get_result to view results of deployment.
  • Open http://<AS Java hostname>:<port>/monitoring/ComponentInfo and verify that ADSSAP is listed under System information: Components Info.
  • 1.jpg

Configuration: As ADS
are running on an AS Java (PI) and form processing is performed in an ABAP (ECC) environment, we have to configure the communication
between the Form Processing Framework running on AS ABAP and the ADS running on
AS Java.
Note: Refer to SAP Note 925741
AS ABAP configuration:

  1. Log on to the ABAP system, call transaction SM59,and select 'ADS' from 'HTTP connection to ext. server'.
  2. Specify the server name and http port number of the additional stand-alone AS Java.
  3. You also need to update the corresponding user and password information on the 'Logon/Security' tab.


4. Make sure that create the user ADS_AGENT with the
corresponding role SAP_BC_FP_ICF and SAP_BC_FPADS_ICF exist in AS ABAP. If this
user does not exist, create it according to the steps in ADS Configuration



When you do connection test for ADS destination in SM59 the result can be “HTTP
response: (405) Method not allowed”. This is normal.

5. Open transaction SICF.

6. Choose default_host →  sap  → bc →  fp in the tree.

7.Choose Service/Virt.Host  →  Activate

8. If AS ABAP and AS Java (with ADS) are installed in different systems, and you want to bundle your forms to
     improve performance, you also have to activate the fpads ICFservice.



AS Java configuration:       


  1. Log on to the NetWeaver Administrator of your additional standalone AS Java.
  2. Select Server -> Service -> destination -> HTTP.
  3. Create an entry 'FP_ICF_DATA_<SID>',   where <SID> is the ABAP backend System ID.
  4. Enter the ABAP HTTP port (http://<servername>:<port>) in the 'URL' field.
  5. Enter the user 'ADS_AGENT' in the User name field, and the corresponding password of ABAP backend system.
  6. Save your entries.


Note: When
you do ping test for the destination the result can be “Error 404: Not found”.
This is normal.


As Java configuration for WebDynpro Application:


1.    Log on to the NetWeaver Administrator of your additional standalone AS Java.


2.    Select SOA Management -> Technical Configuration -> Destination Template


3.    Management


4.    Select'Create Destination' and Enter following entry:


5.    Destination Type: WSIL


6.    Destination Name: ConfigPort_Document


7.    URL:http://<standalone AS Java server name>:<http port>/inspection.wsil


8.    SecurityTab


9.    Select Authentication 'HTTP Authentication' and 'User ID/Password (Basic)'


10.  Select 'Details' and enter the user ADSUser and the corresponding password.


11.  Select 'Save


Testing ADS Configuration:


·       Checking ADS Configuration in an ABAP Environment


1.  Log on to the AS ABAP system.


2.  Start the transaction SA38.


3.  Enter the program name FP_TEST_00.


4.  Choose Program Execute (F8)


5.  Make sure, that the following default values are entered in the respective fields:




ADS Connection:
ADS or the RFC Destination name specified in your system (if it does not
correspond to the default entry)


6.  Choose Program Execute (F8)


7.  Enter the Output Device.


8.  Choose Print Preview.


9.  If the system displays a form containing several lines on two pages, the ADS configuration is correct. Otherwise, perform the
tests described below.



·       Checking the ABAP Connection to ADS
  1. Log on to your SAP system.
  2. Start the transaction SA38.
  3. Enter the name of the test report FP_PDF_TEST_00.
  4. Enter the name of the connection. Enter the default name ADS, or, if you have specified another name, the one you are using in your system.
  5. Choose Execute (F8).
  6. If the configuration is correct, the system displays the version number of the Adobe Document Services.



        ·       Checking the Destination Service and the ICF Service

          1. Log on to your SAP NetWeaver AS ABAP system.
          2. Call transaction SA38.
          3. Enter the name of the test report
          4. Execute the test without choosing the option With
            Destination Service.
          5. The system renders a test form in the background
            without using the destination service and displays the size of the created PDF.
          6. Execute the test again. Now select the option With
            Destination Service.
          7. If the settings of the destination service are
            correct, the system displays the same message as before (see step 5).


Note: Please refer to SAP Note 944221 for Adobe Document Services troubleshooting.

Dear All,


I would like to share below checklist which helped me to remind of doing things before starting SUM tool while working with multiple systems in a upgrade project. After reading ECC EHP6 master guide, SUM guide, Upgrade guide and recommended SAP notes from service marketplace which is obvious separate guides and notes which I have downloaded on my disk for reference. But I needed something handy for each phase which I can print and stick it to my desk so I have created a master document in which I have created multiple sheets like below :


Master Document :

- High Level Technical Plan - Sharing / Updating this sheet weekly and sending across client steering committee for Project update

- Detail Technical Plan - A pure tech plan sheet mixed of above mentioned guides & SAP Notes

- Planning & Preparation - Checklist before starting SUM tool

- Solman Specific - Technical steps from adding system to LMDB/SMSY till STACK file generation

- Execution & Postwork - Execution phases are actual SUM phases like Initialization, Extraction, Configuration etc., and Postwork steps

- SAPNotes for reference & Monitoring log files path - Details from SAP notes like keyword from note: 1790828, Increase DB process in case of error in Preprocessing phase refer note : 34432.


Below is the example of Planning & Preparation sheet I will try correct and post remaining sheets from above document soon.


Source : SAP ECC 6.0 EHP2 with Oracle 11g on RHEL 6

Target : SAP ECC 6.0 EHP6 with Oracle 11g on RHEL6


1SAP - Kernel upgrade to patch levelUpgrade kernel to 700/353 to avoid errors in Welcome Phase
2SAP - BRTOOLS UpgradeFor 11g it's recommended to use BRTOOLS 740 to avoid errrors in Configuration Phase
3SAP - Invalid temp tablesCheck for invalid temp tables & delete if require
4SAP - Open requests checkCheck for open requests in SE03 & release or delte unwanted requests
5SAP - Update requests checkDelete old / cancelled update requests from SM13
6SAP - Lock entries checkDelete old held locks from SM12
7SAP - Missing index checkCheck for missing indexes in DB02
8SAP - Update DB statistics for allUpdate DB statistics using BRTOOLS
9SAP - Gather all SAP user passwordCheck and update all SAP admin user password in 000 & master client
10SAP - Keyword check1736483 - Use this keyword for SUMSAPNote - 1790828
11SAP - Cehck SPAM versionAtleast SPAM level 50 require for Extraction Phase
12SAP - guides reviewCheck SAP Update, Upgrade, SUM, Master guides and their respective checklist
13SAP - notes reviewCheck SAP Central SUM Notes, Oracle specifics for know problem and solution
14SAP - Customize RFC creationCreate a RFC-Destination & update FINB_TR_DESTSAPNote -  912369
15SAP - check the structural requirementsparameter should be - rdisp/mshost =SID & rdisp/wp_no_vb=3
16SAP - check BG workprocess
17SAP - Install or update SAP Host Agent
18SAP - Backup of tableBackup of table -T512W using report -RPU12W03S
1DB - user checkCheck account of all users in dba_users SAP DB users set to unlock
2DB - user password checkUpdate DB user - SYSTEM password
3DB - user privilage checkcheck dba_sys_privs for SAPSR3
4DB - check missing indexes
5DB - archive status checkSet to NOARCHIVE Mode
1OS - Space check/usr/sap -> should have 50 GB free space
2OS - Free space check in tablespacesCheck using DB02 for sufficient free space for all tablespaces
3OS - UUID Daemon startstart service from root user - (1) service uuidd start (2) chkconfig uuidd on1391070 - Linux UUID solutions
4OS - Directory creationCreate SUM directory under /usr/sap/SID
5OS - Host selection for SUMCopy all software (SUM/EHP) to SID CI host
6OS - Check hardwareCheck for CPU, RAM, Mount points, Freespace
7OS - Check VNC serverCheck for Display variable by login thrugh VNC
8OS - Gather all user/passwordCheck password for sidadm, orasid, root


Thanks & Regards,



Filter Blog

By author:
By date:
By tag: