0% found this document useful (0 votes)
199 views41 pages

Sap Query

The document provides tutorials and information on SAP Query, including: 1) A tutorial on setting expiry dates for SAP queries so that expired queries cannot be run in production. It describes maintaining expiry dates in a custom table and using a function module to check the expiry date when a query runs. 2) A tutorial for creating an SAP query to get hourly background job status updates from table TBTCO. It provides code examples for selecting, filtering and formatting the job status data. 3) A brief description of another tutorial on building an SAP query using ABAP code.

Uploaded by

Carlos
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
199 views41 pages

Sap Query

The document provides tutorials and information on SAP Query, including: 1) A tutorial on setting expiry dates for SAP queries so that expired queries cannot be run in production. It describes maintaining expiry dates in a custom table and using a function module to check the expiry date when a query runs. 2) A tutorial for creating an SAP query to get hourly background job status updates from table TBTCO. It provides code examples for selecting, filtering and formatting the job status data. 3) A brief description of another tutorial on building an SAP query using ABAP code.

Uploaded by

Carlos
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 41

QUERY Tutorials

sbado, 27 de junio de 2009 10:18

SAP Query
Step-by-Step Tutorials Setting the Expiry date in SAP Query SAP Query for getting hourly background job Building an SAP Query using ABAP Code Creating a simple list using SAP Query Configuring SAP Query Working with Infosets, User Groups, Query in detail What is SAP Query? Purpose and Advantages of SAP Query?

SAP-QUERY pgina 1

Setting the Expiry date in SAP Query


sbado, 27 de junio de 2009 10:20

Business Requirement: The client wants to maintain expiry dates to each and every SAP queries that are running in production. The expired query will not be allowed to run in production. Design Logic: 1. Maintain a custom table with two fields query name and query expiry date. 2. Design a custom function module which will collect the current SAP query name at run time (i.e. during query execution); check the expiry date of that query from the custom table and generate an error message if the query is expired or work as per the code in the infoset if its not expired. 3. Put that custom function module in the infosets of all the queries. Keep all the executable codes of the infosets in the ELSE part of the sy -subrc check. Explanations: Step 1: Create a Z-table ZQUERY_E XP IRE along with a table maintenance generator.

For more details on user group, infoset and query name, refer to table AQLQCAT.

Step 2: Maintain query names along with their expiry dates in the Z-table ZQUERY_EXPIRE via SM30.

Step 3: Design a custom function module ZQUERY_E XP_CHE CK with an exception QUERY_EXPIRE D (Query has expired). FUNCTION zquery_exp_check. *"--------------------------------------------------------------*"*"Local Interface: *" EXCEPTIONS *" QUERY_EXPIRED *"---------------------------------------------------------------

SAP-QUERY pgina 2

*"--------------------------------------------------------------TABLES: zquery_expire. CONSTANTS: c_fill TYPE c VALUE '='. DATA: v_sycprog LIKE sy-cprog, v_user_grp1(30) TYPE c, v_user_grp2(14) TYPE c, v_query_name1(14) TYPE c, v_rest(14) TYPE c, v_query_name TYPE aqs_quname. TYPES: BEGIN OF ty_query, qnum TYPE aqs_quname, exp_date TYPE datum, END OF ty_query. DATA: wa_query TYPE ty_query, i_query TYPE STANDARD TABLE OF ty_query INITIAL SIZE 0. v_sycprog = sy-cprog. v_user_grp1 = v_sycprog+4(26). v_user_grp2 = v_user_grp1+12(14). SPLIT v_user_grp2 AT c_fill INTO v_query _name1 v_rest. v_query_name = v_query_name1. SELECT qnum exp_date FROM zquery_expire INTO TABLE i_query WHERE qnum EQ v_query_name. LOOP AT i_query INTO wa_query. * If the query expires, generate the error message IF wa_query-exp_date LT sy-datum. MESSAGE e000(zbasis_msg) RAISING query_expired. * If the expiary date is today or yet to come, don't do anything ELSE. MESSAGE i002(zbasis_msg). ENDIF. ENDLOOP. ENDFUNCTION. Step 4: Call this custom function module from the START-OF-SELECTION code sections of all the infosets of the queries that are maintained in the custom table ZQUERY_EXP IRE. Here weve added the following code in all the infosets of the 3 queries maintained in the custom table. CALL FUNCTION 'ZQUERY_EXP_CHECK' EXCEPTIONS query_expired = 1 OTHERS = 2. IF sy-subrc <> 0. MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. ELSE. WRITE: /5 'Hello1'. ENDIF. Test: Suppose todays date is 20/03/2009. The expiry date of the query BEJ_QRY_TEST1 was 18.03.2009 (as maintained in the Z-table). The expiry date of the query QRY_TEST3 is today (20/03/2009). Scenario 1: Execute the query BEJ_QRY_TEST1 (expiry date is less than the current date) from SQ01.

Execute; the following error message will be generated.

SAP-QUERY pgina 3

Execute; the following error message will be generated.

Scenario 2: Execute the query QRY_TEST3 (expiry date is equal to the current date) from SQ01.

Execute; the actual code of the infoset will be executed.

SAP-QUERY pgina 4

sbado, 27 de junio de 2009 10:22

SAP Query for getting hourly background job status


By Jayanta Bej, Capgemini India This SAP query is designed to get the hourly background job status updates, which are running in production. Step 1: Create user group. a. Using t-code SQ03, create one user group ZPROD_BEJ (Jayanta Bej's User Group).

b. Assign user ids to this user group.

Step 2: Create infoset. a. Using t-code SQ02, create one infoset BATCH_JOBLIS T_REP ORT with the direct read from the table TBTCO and including key field only.

b.

Add two selection criterion S_JOBNAM (Job Name) & S_STRTDT (Start Date) and one parameter P_ENDTIM (Time) in the Selections tab.

SAP-QUERY pgina 5

P_ENDTIM (Time) in the Selections tab.

Details: S_JOBNAM.

Details: S_STRTDT.

Details: P_ENDTIM.

c. Go to Code tab. In the DATA section, write the following code: DATA : FLAG(1), FLAG1(1), FLAG2(1), status(15). DATA: begin of gt_TBTCO occurs 0, JOBNAME type TBTCO-JOBNAME, SDLSTRTDT type TBTCO-SDLS TRTDT,

SAP-QUERY pgina 6

SDLSTRTDT type TBTCO-SDLS TRTDT, SDLSTRTTM type TBTCO-SDLS TRTTM, ENDTIME type TBTCO-ENDTIME, STATUS type TBTCO-STA TUS. DATA: end of gt_TBTCO. DATA: begin of gt_TBTCO1 occurs 0, JOBNAME type TBTCO-JOBNAME, SDLSTRTDT type TBTCO-SDLS TRTDT, SDLSTRTTM type TBTCO-SDLS TRTTM, ENDTIME type TBTCO-ENDTIME, stat(15). DATA: end of gt_TBTCO1. DATA: begin of gt_TBTCO2 occurs 0, JOBNAME type TBTCO-JOBNAME, SDLSTRTDT type TBTCO-SDLS TRTDT, SDLSTRTTM type TBTCO-SDLS TRTTM, ENDTIME type TBTCO-ENDTIME, stat(15). DATA: end of gt_TBTCO2. DATA : gt_tbtco3 like gt_tbtco occurs 0 with header line. DATA : gt_tbtco4 like gt_tbtco occurs 0 with header line. d. In the START-OF-SELE CTION section, write the following code: select JOBNAME SDLSTRTDT SDLSTRTTM ENDTIME STATUS from TBTCO into corresponding fields of table gt_tbtco3 where jobname in s_jobnam and status = 'P'. refresh gt_tbtco[]. clear gt_tbtco[]. select JOBNAME SDLSTRTDT SDLSTRTTM ENDTIME STATUS from TBTCO into corresponding fields of table gt_tbtco where jobname in s_jobnam and SDLSTRTDT in s_strtdt. check sy-subrc = 0. sort gt_tbtco by JOBNAME SDLSTRTTM. gt_tbtco4[] = gt_tbtco[]. delete gt_tbtco where ENDTIME < P_ENDTIM and ( status = 'F' or status = 'A' ). sort gt_tbtco by JOBNAME SDLSTRTTM. Loop at gt_tbtco. at new jobname. flag = 'X'. endat. if flag = 'X'. MOVE-CORRESPONDING gt_tbtco to gt_tbtco1. if gt_tbtco-status = 'F' . if ( gt_tbtco-SDLSTRTTM le P_ENDTIM ) . gt_tbtco1-stat = 'Active'. append gt_tbtco1. clear gt_tbtco1. else. gt_tbtco1-stat = 'Released'. append gt_tbtco1. clear gt_tbtco1. endif. elseif gt_tbtco-status = 'F' and gt_tbtco-SDLSTRTTM ge P_ENDTIM. gt_tbtco1-stat = 'Cancelled'. append gt_tbtco1. clear gt_tbtco1. else. status = gt_tbtco-status.

SAP-QUERY pgina 7

case status. when 'R'. if ( gt_tbtco-SDLSTRTTM le P_ENDTIM ) . gt_tbtco1-stat = 'Active'. else. gt_tbtco1-stat = 'Released'. endif. when 'Z'. gt_tbtco1-stat = 'Suspended'. when 'A'. gt_tbtco1-stat = 'Cancelled'. when 'P'. gt_tbtco1-stat = 'Scheduled'. when 'S'. gt_tbtco1-stat = 'Released'. when 'Y'. gt_tbtco1-stat = 'Released'. endcase. append gt_tbtco1. clear gt_tbtco1. endif. endif. CLEAR FLAG. clear status. endloop. sort gt_tbtco1 by jobname. sort gt_tbtco3 by jobname. Loop at s_jobnam. read table gt_tbtco1 with key jobname = s_jobnam-low. if sy-subrc = 0. flag1 = 'X'. move-corresponding gt_tbtco1 to gt_tbtco2. append gt_tbtco2. clear gt_tbtco2. else. read table gt_tbtco3 with key jobname = s_jobnam-low. if sy-subrc = 0. flag2 = 'X'. move-corresponding gt_tbtco3 to gt_tbtco2. gt_tbtco2-stat = 'Scheduled'. append gt_tbtco2. clear gt_tbtco2. else. read table gt_tbtco4 with key jobname = s_jobnam-low. if sy-subrc = 0. flag2 = 'X'. move-corresponding gt_tbtco4 to gt_tbtco2. if gt_tbtco4-status = 'F'. gt_tbtco2-stat = 'Finished'. else. gt_tbtco2-stat = 'Canceled'. endif. append gt_tbtco2. clear gt_tbtco2. endif. endif. endif. if flag1 <> 'X' and flag2 <> 'X'. gt_tbtco2-jobname = s_jobnam-low. gt_tbtco2-stat = 'Not Scheduled'. append gt_tbtco2. clear gt_tbtco2. endif. clear : flag1,flag2. endloop. if not gt_tbtco2[] is Initial. * Display List of Cases to be Cancelled CALL FUNCTION 'RS_COMPLEX_OB JECT_EDIT' EXPORTING object_name = 'RESULTS' changing object = GT_TBTCO2[]

SAP-QUERY pgina 8

object = GT_TBTCO2[] EXCEPTIONS OBJECT_NOT_SUPPORTE D =1 OTHERS = 2. endif. EXIT. Generate the infoset and then attach it to the user group ZPROD_BEJ. Step 3: Create the query. Using t-code SQ01, create one query BATCH_JOBLIS T for the infoset BATCH_JOBLIS T_REP ORT. Step 4: Execute the query from SQ01 with proper variant for the list of background jobs whose hourly status needs to be found out.

Select the variant. Suppose we want to find out the background status at 2 PM for the below list of jobs: PROC_CHGPNTRS_E NERGY CARE PROCESS_CP_ACTIVITY PROCESS_CP_CONTA CT PROCESS_CP_CONTRACT PROCESS_CP_SALESORDER PROCESS_IDOC_IN_A CTIV ITY PROCESS_IDOC_IN_A DDRSYNCH PROCESS_IDOC_IN_BPCAME RGE PROCESS_IDOC_IN_OAMUPDA TE PROCESS_IDOC_IN_PARTNRUP D PROCESS_IDOC_IN_P REPAY PROCESS_IDOC_IN_SALESORDR PROCESS_IDOC_OUT_ACTIV ITIES PROCESS_IDOC_OUT_AQS ND0055 PROCESS_IDOC_OUT_CONTACTS PROCESS_IDOC_OUT_CONTRA CT PROCESS_IDOC_OUT_OB JSD0064 PROCESS_IDOC_OUT_SOS TA TUS PROCESS_CP_FILES PROCESS_IDOC_OUT_FILES SWWERRE SWEQSRV SWWDHEX ZUBC_DELETE_WORK ITEMS ZZ_IDOC_DISPA TCH Z_APP_LOG_DEL_DA ILY ZUBC_DELETE_IDOCS EMMA_AUTOPROC_SB61 ZUUBI_REPLACEMENT_BILLING_01 ZUBC_DELETE_APP_LOGS SAP_ARCH_RETHIS T SAP_ARCH_PAYLOTS SAP_ARCH_RETLOTS SAP_APURG_MDR1 Put all these job names in the select option for job name. In the variant, the date should be equal to current date and time should be current time and should be done as follows:

SAP-QUERY pgina 9

Now selecting the variant JOBLIST (JOB LIST STATUS), execute the query.

Now we execute the query. The following report will be displayed.

This is the status update of all the listed background jobs for the hour 14 i.e. 2 PM.

SAP-QUERY pgina 10

Building an SAP Query using ABAP Code


sbado, 27 de junio de 2009 10:23 There are 4 different ways to write SAP queries depending on the approach of data retrieval strategy: 1. Using table join 2. Directly reading from tables 3. Using logical databases (LDB) e.g. PNP 4. Using some programs

Here in this document, well demonstrate building SAP query using 2nd method (Direct read of table). 1. Create InfoSet by using t-code SQ02:

2.

Press Create button.

SAP-QUERY pgina 11

2.

Press Create button.

Press enter.

Press enter. 3. Press Code.

3.

Select the DATA coding section.

SAP-QUERY pgina 12

4. Write the following code in this section. TYPE-POOLS: slis. TABLES: scarr. * Type for taking data from tables SFLIGHT and SCARR TYPES: BEGIN OF ty_flight, carrid TYPE s_carr_id, connid TYPE s_conn_id, fldate TYPE s_date, seatsmax TYPE s_seatsmax, seatsocc TYPE s_seatsocc, carrname TYPE s_carrname, currcode TYPE s_currcode, END OF ty_flight. * Internal table and work area declaration DATA: wa_flight TYPE ty_flight, i_flight TYPE STANDARD TABLE OF ty_flight INITIAL SIZE 0, i_fldcat TYPE slis_t_fieldcat_alv, wa_fldcat TYPE slis_fieldcat_alv.

5.

Now go to START-OF-SELECTION section

SAP-QUERY pgina 13

And write the following code in START-OF-SELE CTION section to display a few field data in ALV grid display report format. * Retrieve data from tables SFLIGHT and SCARR SELECT m1~carrid m1~connid m1~fldate m1~seatsmax m1~seatsocc m2~carrname m2~currcode INTO TABLE i_flight FROM sflight AS m1 INNER JOIN scarr AS m2 ON m1~carrid = m2~carrid. CLEAR: wa_flight. * Populate the field catalogs wa_fldcat-col_pos = 1. wa_fldcat-fieldname = 'CARRID'. wa_fldcat-seltext_l = 'Airline carrier ID'. APPEND wa_fldcat TO i_fldcat. CLEAR: wa_fldcat. wa_fldcat-col_pos = 2. wa_fldcat-fieldname = 'CONNID'. wa_fldcat-seltext_l = 'Flight connection Id'. APPEND wa_fldcat TO i_fldcat. CLEAR: wa_fldcat. wa_fldcat-col_pos = 3. wa_fldcat-fieldname = 'FLDATE'. wa_fldcat-seltext_l = 'Flight date'. APPEND wa_fldcat TO i_fldcat. CLEAR: wa_fldcat. wa_fldcat-col_pos = 4. wa_fldcat-fieldname = 'SEATSMAX'. wa_fldcat-seltext_l = 'Maximum capacity'. APPEND wa_fldcat TO i_fldcat. CLEAR: wa_fldcat. wa_fldcat-col_pos = 5. wa_fldcat-fieldname = 'SEATSOCC'. wa_fldcat-seltext_l = 'Occupied seats'. APPEND wa_fldcat TO i_fldcat. CLEAR: wa_fldcat. wa_fldcat-col_pos = 6. wa_fldcat-fieldname = 'CARRNAME'. wa_fldcat-seltext_l = 'Airline name'. APPEND wa_fldcat TO i_fldcat. CLEAR: wa_fldcat. wa_fldcat-col_pos = 7. wa_fldcat-fieldname = 'CURRCODE '. wa_fldcat-seltext_l = 'Local currency of airline'. APPEND wa_fldcat TO i_fldcat. CLEAR: wa_fldcat. * ALV grid display report CALL FUNCTION 'REUSE_ALV_GRID_DISP LAY' EXPORTING it_fieldcat = i_fldcat TABLES t_outtab = i_flight EXCEPTIONS program_error = 1 OTHERS = 2. IF sy-subrc <> 0. MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4. ENDIF. EXIT. 6. 7. Generate the InfoSet. Now create a user group.

SAP-QUERY pgina 14

8. Now assign the user group ZUGRP_BEJ to the InfoSet ZINFOSET_BE J. Ive assigned two users in my user group.

SAP-QUERY pgina 15

Save it. 9. Now create the query.

SAP-QUERY pgina 16

10. Now execute the query from SQ01.

The following selection screen will appear where we need to put the flight date.

Enter the flight date as 11.06.2008 and execute the query; well get the following ALV grid display report.

SAP-QUERY pgina 17

SAP-QUERY pgina 18

Creating a simple list using SAP Query


sbado, 27 de junio de 2009 10:24

1. 2.

Go to Transaction SQ01. The title bar shows you the query group you are currently in.

3.

Ensure that you are in the correct SAP Query area by navigating to Environment Query Areas

4.

In the field Query, enter the name of the query you want to create and press CREATE.

5.

The InfoSets of the user group ZSAPTECH_GRP is displayed.

6. 7.

Select the InfoSet ZSAPTECH_IS and click ENTER. Enter the title and any other notes that are required.

SAP-QUERY pgina 19

Click on Next screen button as shown in the above screenshot. 8. All the field groups available with the InfoSet are listed above. We can select the field groups that need to be listed in the report.

9. Click on Next screen. 10. All the fields in the selected Field groups appear in this screen. We can select any particular fields we would like to have in our report.

SAP-QUERY pgina 20

would like to have in our report.

11. Click on Next screen. 12. In this screen, we can select the fields to appear on the selection screen during execution of the report.

13. Click on the Basic List button to create a SAP Basic list query. 14. For each field, specify the line number and sequence number as you would like to appear on the report. You can also use this screen to indicate sort order, totals and counts (as necessary).

SAP-QUERY pgina 21

report. You can also use this screen to indicate sort order, totals and counts (as necessary).

As shown above, the line structure would display the appearance of fields on the selection-screen. 15. Click on SAVE. 16. Click on EXECUTE button to execute the report. As it is seen on normal reports, here also the selection-screen appears.

SAP-QUERY pgina 22

SAP-QUERY pgina 23

Configuring SAP Query


sbado, 27 de junio de 2009 10:26

SAP R/3 Query tools (SAP Query) are based on the following four main components: Query Areas Query Groups InfoSets Administrative Decisions (Company-specific) Configuration of the Query tools is done in the following manner: Create Query Groups Assign Users to Query Groups Create InfoSets Assign each InfoSet to a Query Group. Create Query Groups Go to Transaction SQ03.

Ensure that you are in the correct SAP Query area by navigating to Environment Query Areas

Select the Standard Area (Client -specific). Now in the main screen, enter the name of the Query Group in the User Group field and click on CREATE

Enter the description of the User Group in the next popup that appears.

SAP-QUERY pgina 24

User Group ZSAPTECH_GRP is created. Assign Users to Query Groups Click on the Assign Users and InfoSets button

Enter the SAP User-Ids of all the users you wish to include in the test group.

Click on SAVE to save your entries.


Create InfoSets Go to transaction SQ02 Ensure that you are in the correct SAP Query area by navigating to Environment Query Areas

Enter the name of the InfoSet you wish to create and click on CREATE.

SAP-QUERY pgina 25

Enter the title and the logical database on the popup screen that appears.

We have used the LDB F1S (Flight bookings related) for our demo purpose. Change InfoSet screen appears.

Expand the tree on the left hand side to view the fields in each table. As seen on the screen, the left side of the screen shows the tables and the fields. The right side displays the field groups. Now we need to assign fields to the field groups. These field groups will display in the SAP Query tool during reporting. Please note that only the fields that are included here will be available for field selection

SAP-QUERY pgina 26

during reporting. Please note that only the fields that are included here will be available for field selection in the SAP Query Tool that uses this infoSet as a data source. Select the field group on the right side and then drag and drop the fields from the left side to this field group.

When all the required fields are added, click on SAVE. Now generate the InfoSet by clicking on GENERATE. Attach each InfoSet to a Query Group Go to transaction SQ02 Enter the InfoSet name created above and click on User Group Assignment button.

Select the query group ZSAPTECH_GRP from the above list and click on SAVE.

SAP-QUERY pgina 27

SAP-QUERY pgina 28

Working with Infosets, User Groups, Query in detail


sbado, 27 de junio de 2009 10:27

In this document we shall cover Topic#2. For topic#1, click here.

Infosets Components InfoSets are special views of data sources. An InfoSet describes which fields of a data source can be reported on in queries. InfoSets are assigned to user groups. End-users are able to work only with those InfoSets that are relevant to their particular area, as designated by the role or user group that they are assigned to. Eg: Vendor master data can be important in purchasing as well as in accountancy. The relevant InfoSet is assigned to both roles/user groups. This means that queries based on this InfoSet can be copied and executed by both groups. Creating and changing Infosets Creating Infosets Prerequisites Assign Data sources

Infoset Display/Change

SAP-QUERY pgina 29

Infoset Display/Change Definition of field groups Obtaining additional information Creating Selections

Further Codes
Application Specific Enhancements Creating Infosets Prerequisites The following questions help in meeting the prerequisites of creating an infoset. Which data source corresponds to the requirements? For example: Material reports in Materials Management Document reports in Financial Accounting Which fields do you need to include in the InfoSet? Do you need additional information which is not available in the data source? (This means you are going to have to connect additional tables and the definitions of additional fields.) Do you need parameters and selection criteria? (Parameters and selection criteria appear on the selection screens of queries that are created using the InfoSet). Do you need to include any particular measures such as access protection? Do you need to be able to change the long texts and headers for the selected fields? Assign Data sources 1. Name 2. Authorization group: This means that only users authorized to execute programs from this authorization group are able to execute these queries. Use Tcode: AUTH_DISPLAY_OBJECTS 3. Choose Data Source: Table join using a table: Is used when Query is prepared for retrieving data from more than one database tables having relationships. Reading tables directly: Is used when Query is prepared for retrieving data from one table. Logical databases: Is used when Query is prepared for retrieving data based on a Logical database (LDB) 4. Using programs to retrieve data: Here a program can be written with own logic. Declaration in data section of the program will help the query to select the elements of data to be retrieved from database. As per the logic, data is validated, processed. The selection screen can be prepared in Query and data is retrieved for output. Sequential datasets 4. Options No Automatic Text Recognition Fixed Point Arithmetic Display/Change Infoset The InfoSet display allows you to examine or change the structure of the InfoSet. Assigning additional tables Creating additional fields Creating additional Structures Extras Selections Further Code Application Specific Enhancements Definition of field groups A field group combines related fields together into a meaningful unit. Fields must be assigned to a field group before they can be used in queries. Include all table fields Include key fields Create empty field groups Note: Logical Database having more than 4 structures has different way of creating field groups.Eg: PNP User Groups Components The User Groups component is used to maintain user groups. The system administrator uses it to set up the work environment for end-users. Every user assigned to the user group is able to execute the query. Users are not allowed to modify queries from other user groups, although they may, under certain circumstances, copy and execute

SAP-QUERY pgina 30

1.Creating infosets or functional areas Tcode-SQ02

SAP-QUERY pgina 31

SAP-QUERY pgina 32

SAP-QUERY pgina 33

2. To create user groups and assign to infosets Tcode-SQ03

SAP-QUERY pgina 34

3. To create a query Tcode-SQ01

SAP-QUERY pgina 35

SAP-QUERY pgina 36

Steps to create selection criteria to the query Tcode-SQ01

SAP-QUERY pgina 37

SAP-QUERY pgina 38

SAP-QUERY pgina 39

What is SAP Query? Purpose and Advantages of SAP Query?


sbado, 27 de junio de 2009 10:28 SAP Query is SAPs tool to define and execute once own reports without knowing ABAP programming language. Let us see the key topics to explore SAP Query. Topic # 1 Topic What is Query? Purpose of Query. Advantages of Query Infosets/UserGroups/Query in Detail Practical session covering important working models - I Practical session covering important models-II Various Lists and Background Scheduling

2 3 4

In this document we shall cover Topic#1. What is SAP query and why do we need queries? Many times a need arises for SAP Users and Functional Consultants to generate quick reports without getting any ABAP coding done time taken to complete the coding in development, transport and test it in QA system and then transport to production is sometimes too long. In such cases, SAP query is a tool provided by SAP for generating these kinds of reports. Purpose The SAP Query application is used to create reports not already contained in the default. It has been designed for users with little or no knowledge of the SAP programming language ABAP. SAP Query offers users a broad range of ways to define reports and create different types of reports such as basic lists, statistics, and ranked lists. These outputs can include lists on screens in table format, ALV grids, downloadable spreadsheets, and downloadable flat files. The internal report generator creates an ABAP program corresponding to the definition of the list. Features: The SAP Query comprises five components: Queries InfoSet Query InfoSets User Groups Translation/Query Classic reporting- the creation of lists, statistics and ranked lists- are covered by the InfoSet Query and Queries components. Other components range of functions cover the maintenance of InfoSets, the administration of user groups and also the translation of texts created in the SAP Query. All data required by a user for a report can be read from various tables. To define a report, you first have to enter individual texts, such as titles, and select the fields and options, which determine the report layout. In the WYSIWYG (What You See Is What You Get) mode, you can edit the lists using Drag & Drop and various toolbars. Overview: The following sections describes the individual SAP Query components and provides general information about query areas, transport and authorizations Menu Path Used For Transaction Code

SAP Query Queries SAP Query InfoSets


SAP Query User Groups Translation Query

Maintaining Queries Maintaining InfoSets


Maintaining User Groups Language Comparision

SQ01 SQ02
SQ03 SQ07

Query Components The Queries component is used by end users to maintain queries. You can carry out the following tasks: Execute Queries and Generate Lists Define Queries Change Queries Infosets Components InfoSets are special views of data sources. An InfoSet describes which fields of a data source can be reported on in queries. InfoSets are assigned to user groups. End-users are able to work only with those InfoSets that are relevant to their particular area, as

SAP-QUERY pgina 40

designated by the role or user group that they are assigned to. Eg: Vendor master data can be important in purchasing as well as in accountancy. The relevant InfoSet is assigned to both roles/user groups. This means that queries based on this InfoSet can be copied and executed by both groups. User Groups Components 1. The User Groups component is used to maintain user groups. The system administrator uses it to set up the work environment for end-users. 2. Every user assigned to the user group is able to execute the query. 3. Users are not allowed to modify queries from other user groups, although they may, under certain circumstances, copy and execute Translation/Query Component A great deal of text is generated when defining queries, InfoSets, and user groups. The SAP Query displays these texts in the language that you chose when you logged on to the SAP system. You can compare the text languages using the component Translation/Query. A related text in one or more additional languages is made available for each of the texts created when defining the query. Query Areas A query area contains a set of query objects (queries, InfoSets, and user groups) that are discrete and consistent. There are the following query areas: Standard area Global area Standard Area 1.Client specific 2.Query objects are not attached to the Workbench Organizer Advantage :-End users can develop queries (ad-hoc reports) in their own client that are not meant for use in the rest of the system. Global Area 1.Cross client 2.Query objects are attached to workbench organizer Advantage:-The global query area is well suited for centrally developing queries meant for use and distribution throughout the system. Authorizations End-users, system administrators, and translators must all be assigned the appropriate authorizations allowing them to work with the SAP Query. In order to give individual users targeted, specific rights, the following options are available: Roles/user groups Authorizations Steps to create a Query Step 1 2 3 Description Create a infoset or functional area Assignment of user group to infoset Creation of query based on infoset TCODE SQ02 SQ03 SQ01

Tools for Queries The following are the tools to manage, create and change queries. Infoset Query Queries Quick viewer

SAP-QUERY pgina 41

You might also like