When you running a report it takes long time for execution. what steps will you do to reduce the execution time

Showing Answers 1 - 7 of 7 Answers

Nagendra

  • Jan 26th, 2007
 

Check code if there is any select statements in side loop or nested select then remove from loop and try to increase program performance.

  Was this answer useful?  Yes

Podi

  • Feb 8th, 2007
 

If you want to reduce the execution time of a report.
1. use For all entries instead of using Joins.
2. use select f1 f2 from table into table itab.
instead of select * from table into corresponding fields.
3. perform sorting.

  Was this answer useful?  Yes

krishna

  • Feb 23rd, 2007
 

Use ST05 transaction to trace the program , and check any select query is taking more time,and then check program contains loops inside loops .

  Was this answer useful?  Yes

Lakshmandr

  • Mar 13th, 2007
 

Try to reduce the estimated cost for that perticular program by using some precualtions.

  Was this answer useful?  Yes

suresh

  • Nov 21st, 2007
 

Avoid nested looping,
Dont write SELECT statement with IN loop and END loop.
If you are fetching data from database table use selected fields list instead of
SELECT * .
Use refresh, clear statements after the data retrieval.
Use for all entries rather than inner join.
If you are using inner join dont join more than two tables.
Use binary search for fetching data from database tale.

  Was this answer useful?  Yes

hi fnd,
          Follow the below procedure and steps..

STEPS:
1.OPEN UR REPORT IN SE38 TRANSACTION.

2.SELECT THE MENU PATH
  UTILITIES---->MORE UTILITIES---->RUNTIME ANALYSIS

3.SELECT THE PROGRAM RADIO BUTTON AND GIVE UR REPORT NAME THERE.AND CLICK [b]EXECUTE[/b] BUTTON

4.IT WILL TAKE U TO ANOTHER SCREEN THERE U CAN EXECUTE UR REPORT AND COME BACK.

5.CLICK ON ANALYZE BUTTON.(PRESENT IN BELOW OF THE SCREEN).
THEN U WILL GET ONE GRAPH

NOTE:
1.IF IT IS RED UR PROGRAM IS HAVING VERY POOR PERFORMANCE

2.IF IT IS GREEN IT IS OK.

ABAP GRAPH : TELLS UR CODING IN THE REPORT.
DATABASE  GRAPH : U R RETREIVE DATA FROM DATABASE IN UR REPORT..


SOME STEPS USED TO IMPROVE UR PERFORMANCE:

1. Avoid using SELECT...ENDSELECT... construct and use SELECT ... INTO TABLE.


2. Use WHERE clause in your SELECT statement to restrict the volume of data retrieved.


3. Design your Query to Use as much index fields as possible from left to right in your WHERE statement


4. Use FOR ALL ENTRIES in your SELECT statement to retrieve the matching records at one shot.


5. Avoid using nested SELECT statement, SELECT within LOOPs.


6. Avoid using INTO CORRESPONDING FIELDS OF TABLE. Instead use INTO TABLE.


7. Avoid using SELECT * and Select only the required fields from the table.


8. Avoid nested loops when working with large internal tables.


9. Use assign instead of into in LOOPs for table types with large work areas


10. When in doubt call transaction SE30 and use the examples and check your code


11. Whenever using READ TABLE use BINARY SEARCH addition to speed up the search. Be sure to sort the internal table before binary search. This is a general thumb rule but typically if you are sure that the data in internal table is less than 200 entries you need not do SORT and use BINARY SEARCH since this is an overhead in performance.


12. Use "CHECK" instead of IF/ENDIF whenever possible.


13. Use "CASE" instead of IF/ENDIF whenever possible.


14. Use "MOVE" with individual variable/field moves instead of "MOVE-
CORRESPONDING", creates more coding but is more effcient.

Regards,
Kiran Kumar.G


Give your answer:

If you think the above answer is not correct, Please select a reason and add your answer below.

 

Related Answered Questions

 

Related Open Questions