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

regarding performance issue

Former Member
0 Likes
552

hi experts

suppose one program performance will take 12 hour,regarding performance tunning technique used i minimised 12 hr to 8 hr.

the main question is again what r the methods/performance that we have to use

that decreases 8 hr to 2 hr.i faced recently this question from ibm.

thanks

subhasis

4 REPLIES 4
Read only

Former Member
0 Likes
531

1) Dont fire select query on same DB more than one time.

2) Check if itab is not initial when using FOR ALL ENTRIES.

3) Avoid two if condition for the radiobuttons having common radiobutton group like LIST & FORM in this case.

4) before creating field ALV stuff check output itab is not inital.

1. Before selecting sort the internal tables by the key fields.

2. Might be the internal table data is more use BINARY SEARCH when reading a table with key.

3. Use workareas instead getting data into internal table header.

4. For MODIFY statement give the row no. to modify with the values.

e.g: INDEX row_no TRANSPORTING FROM wa.

5. Clear fields, workareas whenever there is no use. FREE the tables which u don't require for further processing.

6. Give as many conditions while selecting data from database tables in WHERE conditions.

7. Don't use System variables directly like SY-INDEX while modifying or any process instead assign this value to ur local variable and use it.

8. Before selecting data from database tables using FOR ALL ENTRIES OF TABLE itab check whether the internal table u r using contains any data.

9. Instead of MOVE-CORRESPONDING assign the values directly to the fields of internal table and append

Regards

suresh.D

Read only

Former Member
0 Likes
531

hi,

first we have to minimise code redundency.

->avoid inner joins and use FOR ALL ENTRIES.

Always check the driver internal tables is not empty, while using FOR ALL ENTRIES

->if u are using Database frequently i.e if u want to retrive the data more than one time from the same table depending on conditionthen first write one select statement using all the conditions and store the data into internal table.

make use of READ statement to retrieve data from that internal table ,this will decrese the database utilization.

->avoid nested looping.

-> if u want o get data depending on checking radio boxes etc,selec the data depending n the condition.i.e

for example if u want to display vendor information when ven check box is clicked,display customer information when cust check box is clicked,instead of retrieving data from all the relavent tables write coding

if ven = 'X'.

write select statement to retrive vendor data.

elseifcust = 'X'.

write select statement to retrive customer data.

endif.

this will decrese performance very well.

->make sure u dont have any unused variable declarations etc.

Avoid having multiple Selects from the same table in the same object.

Try to minimize the number of variables to save memory.

The sequence of fields in 'where clause' must be as per primary/secondary index ( if any)

Avoid creation of index as far as possible

Avoid operators like <>, > , < & like % in where clause conditions

Avoid select/select single statements in loops.

Try to use 'binary search' in READ internal table. Ensure table is sorted before using BINARY SEARCH.

Avoid using aggregate functions (SUM, MAX etc) in selects ( GROUP BY , HAVING,)

Avoid using ORDER BY in selects

Avoid Nested Selects

Try to use FIELD SYMBOLS.

Try to avoid into Corresponding Fields of

Avoid using Select Distinct, Use DELETE ADJACENT

Performance Tuning

https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/5d0db4c9-0e01-0010-b68f-9b1...

http://www.sap-img.com/abap/performance-tuning-for-data-selection-statement.htm

http://www.thespot4sap.com/Articles/SAPABAPPerformanceTuning_PerformanceAnalysisTools.asp

https://www.sdn.sap.com/irj/sdn/wiki?path=/display/home/abapPerformanceand+Tuning&

http://www.erpgenie.com/abap/performance.htm

http://www.sap-img.com/abap/performance-tuning-for-data-selection-statement.htm

https://www.sdn.sap.com/irj/sdn/wiki?path=/display/home/abapPerformanceand+Tuning&

http://help.sap.com/saphelp_nw2004s/helpdata/en/c6/617cafe68c11d2b2ab080009b43351/frameset.htm

http://help.sap.com/saphelp_nw2004s/helpdata/en/d1/801f7c454211d189710000e8322d00/frameset.htm

Read only

Former Member
0 Likes
531

HI,

If u r question is answred close the question as answered and reward points if help full answered .

Regards,

Suresh.D

Read only

Former Member
0 Likes
531

hi subhasis,

there are many ways by which u can tune ur program...

1) try to avoid nested select statements..

2) insetad of select sinlge use READ command inside loop.

3) use FOR ALL ENTRIES in select queries..before that ....

sort the internal table...and delete adjacent duplicates from that internal table...

4) before for all entries query check whether the internal table is not initial...

5) u can also use inner joins on queries...

6) whenever u use select single ..the where clause should be a key field..otherwise it will return a garbage value...

hope this will some wat help u out..

please reward points in case usefull....

regards,

prashant