Optimizing Strategies for Standard SAP® R/3 Reports
Article Intention
This brief article offers real-life tips and strategies to assist R/3 report users.
Introduction
Using R/3 reports can be challenging. We've brought together some Lessons Learned and strategies to make your use of R/3 reports more productive.
For example, did you know when you execute an R/3 report, the R/3 System reads the transactional data records and creates an internal data table (to facilitate easier navigation by the end user)?
This data resides within the R/3 System's RAM memory – and can equate to a large volume of data (which may be a primary cause of extended response times).
For example, in order to read 100,000 records of a length of 500 bytes from the R/3 System's hard-drive, the R/3 System will typically require about three minutes processing and presentation time – and having larger quantities of data is very common.
However, there are some ways around these dilemmas.
We will examine three optimizing methods: Background Processes, Saved Data and Summarization Levels – and we encourage end users and developers to experiment with each method – but please, test these strategies on your DEV box!
Finally, we present several odds-and-ends; processes and information which may be helpful - including some R/3 procedures to assist the user with their R/3 reporting tasks.
Knowledge learned in this article can be used by:
Any user of R/3 reports
Anyone requiring an understanding of how R/3 reports interact within the R/3 environment
Trimming the Fat
A basic rule of SAP reporting: limit the amount of data the System needs to manage – making it as small as possible. So as a general rule, it makes sense to execute reports of up to 20,000 records online (or via a Dialog process). This amount may be marginally expanded by increasing the underlying database buffer and/or creating special indices.
If the amount of data exceeds 20k records – another approach should be considered: executing the report via a Background Process.
You can execute a report as a Background Process and save the result set data within the R/3 main memory.
This technique is known as using saved data.
This approach is best when the end user doesn't need to have immediate access to the report. The disadvantage of this method is the inherent requirement for the end user to create a variant for each variable combination. If a large number of variable combinations are required, these variants can be summarized in one variant group and executed together in the background.
Note: The next article will discuss using variants with your R/3 reports.
Remember: reports using saved data may not contain the most up-to-date data within the R/3 system. However, if used judiciously, saved data is a very useful means of improving R/3 reporting response times.
Summing it Up
The final R/3 report optimizing tip we will discuss is Summarization Levels.
R/3 reports are typically designed in such a way that the end user will 'drill-down' from a highly summarized level (also known as a 'roll-up') down to the detail level.
Please note: in processing a report, R/3 stores the report's result-set data in the R/3 RAM memory. However, the end user can control to a great degree how much data will be stored by way of telling the R/3 System to 'summarize' or aggregate the result-set data.
These summarized datasets are called Summarization Levels. Developers and end users have the ability to determine the total number of levels (the drill-down levels) required and thereby the degree of detailed data.
Result-set data, which is accessed from these Summarization Levels, can be accessed very quickly. In addition, compared to saved data, result-set data is always up-to-date. The only caveat would be that the greater the number of Summarization Levels. Data transfer times are increased as well.
Finally, use of Summarization Levels is advantageous when similar result-set data is required by several reports.
Various Reporting-Related Transactions for Version 4.6C/D
Transaction
Usage
ABAPDOCU
ABAP Documentation & Examples
ABSO
Miscellaneous FI Transactions
AC06
Display Service Master: Selection of Services (PM)
AL21
ABAP Program Analysis
AM03
Display Asset Class
BAPI
BAPI Explorer
BAPI45 and BAPIW
BAPI Explorer
BC_TOOLS_USER
Create/Maintain SAP Training Participants
BD11
Get Material
BD13
Get Customers from Customer Master
BD17
Request (Get) Cost Center Master Data
BD19
Get G/L Account
C203
Display Master Recipe
DGP3
Display Dangerous Goods Material Master
DGR1
Display Dangerous Goods Master Data
EWF3
Display Critical Euro Conversion Documents (FI)
F.01
ABAP Report – Balance Sheet
F.10
G/L – Chart of Accounts
F.20
A/R – Account List
F.30
A/R – Evaluate Info System
F.42
A/P – Account Balances
F.51
G/L – Open Items
F.97
G/L – Report Selection
F.98
Vendors – Report Selection
F.99
Customers – Report Selection
GAR5
Display Structure of Local LDBs for FI
GCAN
Analysis of FI-SL Database Contents
GCD2
List of FI-SL Direct Posting Tables
GCD3
Graphical Navigation in FI-SL
GCD6
Graphical Display of FI-SL Tables
GRR3
Report Painter - Display Reports
GR23
Display Report Library
GR37
Report Writer - Export Reports
GR39
Report Writer - Copy Reports From Source Client
GR3L
Report Directory
GR53
Display Report Group
HR00
HR Reporting Tree
HRBEN0001
HR Benefit Plan Enrollment
HRBEN0046
HR Benefit Plan Cost Summary
HRBEN0056
HR Benefit Standard Plans Overview
IB03
Display Equipment: BOM
IE03
Display Equipment: PM
IH09
Display Material: PM
IL07
Functional Location List (Multi-List)
KA23
Display Cost Elements
KAH3
Display Cost Element Groups
KCD4
Display EIS Data Mining (Drill-down) Report
KCH3
Display Profit Center Hierarchy
LAST_SHORTDUMP
Displays Last ABAP Runtime Error Report (Short Dump)
LS03N
Display Warehouse Master Records
MARA
Materials Master – Master Data
MB03
Display Material Document
MB51
Material Document List
M/05
Display Purchasing Conditions Table
P01A_RE03
Display Incorrect Personnel Numbers
PAAH
Call Ad-Hoc Query (InfoSet HR PA)
PAR2
Display Employee List
PAT1
HR-PA Report Tree
PAW1
“Who is Who” HR Report
PBA4
Applicants by action
PBAN
Ad-Hoc Queries
PBAO
ABAP Queries
QK02
QM Overview Order Usage in Material Master
RCCMREP07
Display Document Flow Report
RE_RHINFAW0
InfoType Reporting
RE_RHXSTR04
Report Structures with Persons
REL3
Display LIS Drilldown Reports
RKACGRID
CO Table Display
SEARCH_SAP_MENU
Search for a Transaction Code or Menu Title
SA38
ABAP: Execute Program
SD11
Data Modeler
SE11
ABAP Dictionary - Table Maintenance
SE15
ABAP/4 Repository Information System
SE16
Data Browser
SE30
ABAP Runtime Analysis
SE36
Logical Database Builder
SE37
Function Builder
SE38
ABAP Editor
SE39
ABAP Splitscreen Editor
SE81
ABAP Application Hierarchy Display
SE84
ABAP Repository Info System
SE93
Transaction Maintenance
SEM_BEX
Start Business Explorer Analyzer
SERP & SARP
Report Tree Builder & Viewer
SM50
SAP Process Overview – Process Cancellation
SQ01
Query Maintenance
SQ02
InfoSet Maintenance
SQ03
Query User Group Maintenance
ST05
Trace Request - SQL / RFC / Enqueue / Buffer
TBM3
Treasury: Display Master Agreement
V.00
List of Incomplete Documents (SD/FI)
V-40
Display Taxes (Export)
V-52
Display Customer Price
V-96
Display Domestic Taxes
WA23
Allocation Rule Display
WA30
Display Allocation Tables for Objects
WAK3
Display Promotions
WB03
Display Plant (MM)
WBL3
Display Posting Lists (FI)
XD03
Display Customer (Centrally) FI/SD
XK03
Display Vendor (Centrally)
XKN1
Display Number Ranges (Vendor)
Y_ID3_68000005
mySAP.com e-Business Developer’s Corner
Y_ID3_68000014
P&L Cost of Sales accounting
Y_ID3_68000017
Profits According to COS accounting
Y_ID3_68000022
Customer Line Item Display
Y_ID3_68000029
mySAP.com e-Business Solutions
YIDESA
IDES Local Tools
ZABS
Employee Attendance / Absences
ZBAS
Employee Basic Pay
ZBEN
Benefit Reporting
ZCLU
Payroll Detail by Employee
ZEMP
Basic Employee Listing
ZFBL5N
Customer Line Item Display
ZGA2
Active Garnishments
ZGAR
Garnishment History
0KEB
EC-PCA: Generate Reports
0KEH
EC-PCA: Report List
0KW7
Master Data Report – Cost Objects
1KE1
EC-PCA: Display Settings
2KEE
Profit Center: Totals Records
2KEL
EC-PCA: Display Profit Center Document
6KEA
Profit Center: Display Changes
8KEV
CO-PA Pricing
8KEW
EC-PCA / CO-PA Pricing
9KE2
Display Cost / Revenue Balances
9KE4
Display Balance Sheet – Account Balances
9KE6
Display Statistical Key Figure Balances
9KE8
Display Actual Document
9KE9
Display Profit Center Document
Useful R/3 Procedures
User File Capture of SAP Print Spool Output
Run an SAP program that creates a report and spool the report output
Examine the spool retained files
Save the spool file to local storage
The "Print Preview for Local Printer" screen displays
Select the "System / List / Save / Local File" menu item
Select "unconverted" in the "Save List in File..." dialog
Enter a file name in the "Transfer List to a Local File" dialog, i.e., "C:\SAPworkdir\PA0001.txt"
Click the Transfer button
Determining Where a Field is Used
Locate the field definition via the Data Dictionary (T/C SE16, SE11 or SE84)
Click on the Where-used list icon
Select the type of structure in the Where-Used List Data Database Tables dialog (i.e., DB tables)
Click the Execute button
The list of tables/structures using the field is displayed
System Access to Logical Databases
Log on to the SAPGUI
Follow the menu path; or use T/C SE36:
Tools - ABAP Workbench - Development - Programming Environment - Logical Databases
to open the "Logical Database Builder" screen (T/C SE36)
At the Logical Database Selection screen, enter a logical database such as "PNP"
Select the "Structure" or "Database program" subobjects and click Display. In this instance, select "Structure".
In the "Display Logical Database PNP" screen, select a data line (Node type = Table) such as "PERNR"
Click the Display structure button. Review this screen.
Now follow the menu path: Utilities - Runtime object - Display. Review this screen.
Return to previous screen. Reselect the data line PERNR and choose the Source Code button and review this screen.
Listing Standard SAP Reports Listing Reports by Group
Log on to the SAPGUI
Enter T/C SA38 -- or follow the menu paths below
From the main SAPGUI page (T/C S000), follow the menu path:
System - Services - Reporting
The "ABAP: Execute Program" screen appears (T/C SA38)
Follow the menu path:
Utilities - Find Program. The "ABAP Program Directory" screen appears
Enter "RP*" in the left Program entry box (enter an extra character plus the wildcard, such as "RPL*" for List Reports)
Click the Execute icon
The "ABAP Program Directory" screen appears
To save the list, follow the menu path: System - List - Save - Local file
Select an output format (such as "Spreadsheet"); click the Continue icon
Enter the local file name and Save the file
You can also view any available documentation and/or execute the report
Select "RPLCMP01" (Display Pay Grade Structure)
Check its documentation and then execute the report
Return to the "ABAP Program Directory" screen and enter "GP4QL*" and Execute
Select the first line and click on the F7 key
Review the list of includes for this program
Listing the Reports Tree
Log on to the SAPGUI
Enter T/C SARP to search for specific report trees
Return to the main SAPGUI screen (T/C S000)
Enter T/C HR00
The Level 0 hierarchy of HR reports are displayed
Navigate the tree by clicking on the outline graphics
Double click a report name to run the report
Make a Text File of an ABAP Program
Log on to the SAPGUI
Enter the T/C SE38
The "ABAP Editor: Initial Screen" displays
Enter the ABAP program name in the Program line
Click the Display button
Instructions continued below…
Copy the ABAP Program Source File to a Local Text File (Continued from previous tip)
With the ABAP program source code in view within the ABAP Editor, follow the menu path:
Utilities - More utilities - Upload/Download - Download...
A standard Windows "Save As" pop-up window appears
Enter a local text file name (i.e., "C:\SAPworkdir\RPARlW00.txt")
Click the Save button
Exporting a Report Writer Report
Log on to the SAPGUI
Enter T/C GR37
Enter the appropriate Library, i.e., 1VK
Enter the appropriate Report name, i.e., 0F-PER
Under the Further details section, select "Export to presentation server"
In the Export file line, enter a local text file name (i.e., "C:\SAPworkdir\0F-PER.txt") or use the drop-down arrow and select an location and file name
Click on the Execute button
Written by Geoffry Houze, Data Management Group Practice Manager
Call 888.394.1664 to find out how Data Management Group can help you with all your business intelligence needs.