Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

performance in ABAP

Former Member
0 Likes
1,039

Dear Friends,

Plz explain what is T code to check performance tunig

can u plz explain me what important points 2 improve performance

reddy

1 ACCEPTED SOLUTION
Read only

former_member585060
Active Contributor
0 Likes
992

Hi,

Use TCode : SE30, give ur program name and execute it.

regards

Krishna

8 REPLIES 8
Read only

former_member585060
Active Contributor
0 Likes
993

Hi,

Use TCode : SE30, give ur program name and execute it.

regards

Krishna

Read only

Former Member
0 Likes
992

Hi,

Check se30 for Runtime analysis.

ST05 for SQL trace.

THanks,

Keerthi.

Read only

former_member585060
Active Contributor
0 Likes
992

Hi,

After executing click on analyse, it gives u

ABAP

DATABASE

SYSTEM

check the time taken to execute in ABAP, it gives the time taken by our code to execute.

and for further details click on Tips & Tricks on SE30 Tcode

Regards

Krishna

Read only

Former Member
0 Likes
992

hi,

There r mant things which you have to take care for performance issues.

First, plz avoid using SELECT * query as it put extra pressure on the Database.

Check the load and runtime analysis from SE30 which will give u a clear idea of Load on Database and improves the performance.

Hope this will help.

\[removed by moderator\]

Sumit Agarwal

Edited by: Jan Stallkamp on Jul 30, 2008 4:24 PM

Read only

Former Member
0 Likes
992

Hi Karthik,

Check the following link. You can get all the ways to improve performance.

http://www.sapbrainsonline.com/ARTICLES/TECHNICAL/optimization/optimization.html

Hope this helps you.

Regards,

Chandra Sekhar

Read only

former_member251078
Participant
0 Likes
992

Hello Karthik,

I feel you are talking about overall performance tuning of a transaction/program. In the sense, you have to take care of both ABAP as well as database side. You can use ST05 for taking sql trace for a transaction/program. From there you can find out in which statement most of the time is being spent. There could be various reasons for high database time for a transaction ( database bug, optimizer statistics, missing indexes, storage quality of the index (if optimizer chooses proper index in the explain plan), database parameters, user inputs are not optimal). Only do ST05 trace if you are finding database time is high for a program/transaction. Based on the previous history (ST03N), you can decide which trace you want to take. If the CPU time is high, then it could be problem with the ABAP code, For taking the ABAP trace you can use SE30 transaction. Also there are tips & tricks button where you can see the examples of ABAP program as well as you can compare the time measurement. This is a good guide. One more option is you can create variant and dig into one program in detail. However as of now. both of these tools are i would say some what obsolete. You can use new ST12 trace tool, which is having enhanced features as well as you will get both ABAP and sql trace in this.

Hope this helps.

Yours Sincerely

Dileep

Read only

Former Member
0 Likes
992

hi,

Go throught this link & pfd of werner schwarz u get all

details of performace tuning..

http://www.esnips.com/doc/d4aea974-b8ff-49f5-8fa1-977c90c5cdbf/Performance-Problems-in-ABAP-Programs...

http://help.sap.com/saphelp_nw04s/helpdata/en/c6/617d2ae68c11d2b2ab080009b43351/frameset.htm

\[removed by moderator\]

Edited by: Jan Stallkamp on Jul 30, 2008 4:24 PM

Read only

0 Likes
992

in most cases performance issue is caused by select query.... most common mistake being.. imagin there is a report with the following fields on the selection screen

bukrs,belnr,gjahr,werks,matnr...and u have to make a select on BSEG table

select * from bseg into tb_bseg

where bukrs in s_bukrs and

belnr in s_belnr and

gjahr in s_gjahr and

werks in s_werks and

matnr in s_matnr.

if u do it this way ur program will get killed... always use key fields on the where clause of select query. and delete the reset using delete statament as follows.

select * from bseg where bukrs in s_bukrs and

belnr in s_belnr and

gjahr in s_gjahr .

delete tb_bseg where not werks in s_werks or

not matnr in s_matnr.

above method will have a tremendous impact on the performance of the program.