Shared Top Border

Enterprise Resource
Planning Portal

 

Advertise | Founder BLOG

ERPGenie.COM ABAP Tips and Tricks Database

THE ultimate
ERP website

 

Forums | Vote for us |

Google    Other Search Options

Home arrow Tips and Tricks arrow ABAP Reports arrow ALV report to find the list of infotypes configured in a SAP System
ALV report to find the list of infotypes configured in a SAP System PDF Print E-mail
User Rating: / 11
PoorBest 
Written by Swarna S   
Wednesday, 27 February 2008

ALV report to find the list of infotypes configured in a SAP System

*&---------------------------------------------------------------------*
*& Report  ZINFOTYPE                                                   *
*& Author : Swarna.
S                                                                     *
*&---------------------------------------------------------------------*
*&                                                                     *
*&   AS: This program lists all the infotypes maintained in SAP system *
*&---------------------------------------------------------------------*
 
REPORT  zinfotype                               .
  TYPE-POOLS : slis.
 
*Structure declaration for Infotypes for customer
TYPES : BEGIN OF ty_table,
       
infty TYPE infty,
       
pnnnn TYPE pnnnn_d,
       
END OF ty_table.
 
*Structure for infotype text
TYPES : BEGIN OF ty_itext,
       
infty TYPE infty,
       
itext TYPE intxt,
        sprsl TYPE sprsl,
        END OF ty_itext.
 
*Structure for output display
TYPES : BEGIN OF ty_output,
        infty TYPE infty,
        itext TYPE intxt,
        pnnnn TYPE pnnnn_d,
       END OF ty_output.
 
*internal table and work area declarations
DATA : it_table TYPE STANDARD TABLE OF ty_table INITIAL SIZE 0,
       it_output TYPE STANDARD TABLE OF ty_output INITIAL SIZE 0,
       it_ittext TYPE STANDARD TABLE OF ty_itext INITIAL SIZE 0,
       wa_table TYPE ty_table,
       wa_output TYPE ty_output,
       wa_ittext TYPE ty_itext.
 *Data declarations for ALV 
DATA: c_ccont TYPE REF TO cl_gui_custom_container,
   "Custom container object
     
c_alvgd         TYPE REF TO cl_gui_alv_grid,
   "ALV grid object
     
it_fcat            TYPE lvc_t_fcat,
            "Field catalogue
     
it_layout          TYPE lvc_s_layo.
            "Layout

 INITIALIZATION.
 START-OF-SELECTION.
 
*select the infotypes maintained
 
SELECT infty          pnnnn
         
FROM t582a
         
INTO TABLE it_table.
 
*Select the infotype texts
  IF it_table[] IS NOT INITIAL.
     SELECT itext           infty           sprsl
          
FROM t582s
          
INTO CORRESPONDING FIELDS OF TABLE it_ittext
          
FOR ALL ENTRIES IN it_table
          
WHERE infty = it_table-infty
          
AND sprsl = 'E'.
   ENDIF.
*Apppending the data to the internal table of ALV output
   LOOP AT it_table INTO wa_table.
     wa_output-infty = wa_table-infty.
    wa_output-pnnnn = wa_table-pnnnn.
 
* For texts
    READ TABLE it_ittext INTO wa_ittext WITH KEY infty = wa_table-infty.
    wa_output-itext = wa_ittext-itext.
     APPEND wa_output TO it_output.
    CLEAR wa_output.
   ENDLOOP.
 
* Calling the ALV screen wiht custom container
   CALL SCREEN 0600.
 
*On this statement double click  it takes you to the screen painter SE51.
Enter the attributes
*Create a Custom container and name it CC_CONT and OK code as OK_CODE.
*Save check and Activate the scren painter.
*NOw a normal screen witn number 600 is created which holds the ALV grid.
 * PBO of the actual screen ,
Here we can give a title and customized menuss
*&---------------------------------------------------------------------*
*&      Module  STATUS_0600  OUTPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*

module STATUS_0600 output.
*  SET PF-STATUS 'xxxxxxxx'.
*  SET TITLEBAR 'xxx'.
 endmodule.
                 " STATUS_0600  OUTPUT 

* calling the PBO module ALV_GRID.
*&---------------------------------------------------------------------*
*&      Module  ALV_GRID  OUTPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*

MODULE alv_grid OUTPUT.
    CREATE OBJECT c_ccont       EXPORTING          container_name = 'CC_CONT'.
   CREATE OBJECT c_alvgd      EXPORTING        i_parent = c_ccont.
 
* Set field for ALV  
PERFORM alv_build_fieldcat.
* Set ALV attributes FOR LAYOUT  
PERFORM alv_report_layout.
   CHECK NOT c_alvgd IS INITIAL.
 
* Call ALV GRID
 
CALL METHOD c_alvgd->set_table_for_first_display
   
EXPORTING      is_layout                     = it_layout
   
CHANGING      it_outtab                     = it_output
     
it_fieldcatalog               = it_fcat
   
EXCEPTIONS
     
invalid_parameter_combination = 1
     
program_error                 = 2
     
too_many_lines                = 3
     
OTHERS                        = 4.
  IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
              
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.
 ENDMODULE.
                 " ALV_GRID  OUTPUT
*&---------------------------------------------------------------------*
*&      Form  alv_build_fieldcat
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      <--P_IT_FCAT  text
*----------------------------------------------------------------------*

FORM alv_build_fieldcat.
   DATA lv_fldcat TYPE lvc_s_fcat.
   CLEAR lv_fldcat.
    lv_fldcat-row_pos   = '1'.
  lv_fldcat-col_pos   = '1'.
  lv_fldcat-fieldname = 'INFTY'.
  lv_fldcat-tabname   = 'IT_OUTPUT'.
  lv_fldcat-outputlen = 8.
  lv_fldcat-scrtext_m = 'Infotype'.
  lv_fldcat-icon = 'X'.
  APPEND lv_fldcat TO it_fcat.
   CLEAR lv_fldcat.
    lv_fldcat-row_pos   = '1'.
  lv_fldcat-col_pos   = '2'.
  lv_fldcat-fieldname = 'PNNNN'.
  lv_fldcat-tabname   = 'IT_OUTPUT'.
  lv_fldcat-outputlen = 15.
  lv_fldcat-scrtext_m = 'Structure'.
  lv_fldcat-icon = ''.
  APPEND lv_fldcat TO it_fcat.
   CLEAR lv_fldcat.
   lv_fldcat-row_pos   = '1'.
  lv_fldcat-col_pos   = '3'.
  lv_fldcat-fieldname = 'ITEXT'.
  lv_fldcat-tabname   = 'IT_OUTPUT'.
  lv_fldcat-outputlen = 60.
  lv_fldcat-scrtext_m = 'Description'.
  lv_fldcat-icon = ''.
  APPEND lv_fldcat TO it_fcat.
   CLEAR lv_fldcat.
  ENDFORM.
                    " alv_build_fieldcat

*&---------------------------------------------------------------------*
*&      Form  alv_report_layout
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      <--P_IT_LAYOUT  text
*----------------------------------------------------------------------*
FORM alv_report_layout.
  it_layout-cwidth_opt = 'X'.
  it_layout-zebra = 'X'.
ENDFORM.
                    " alv_report_layout  

* PAI module of the screen created.
In case we use an interactive ALV or
*for additional functionalities we can create OK codes and based on the user command
*we can do the coding.
*&---------------------------------------------------------------------*
*&      Module  USER_COMMAND_0600  INPUT
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
module USER_COMMAND_0600 input.
endmodule.
                 " USER_COMMAND_0600  INPUT
  

Steps to be done for creation of a screen 0600 with custom container.

  1. Create the screen 0600 for the above program and place a custom container on the same.
  2. Create a Custom container
  3. Name the custom container CC_CONT and give ok code as OK_CODE.
  4. In the Flow Logic enter a PBO Module as ALV_GRID.
  5. Activate and Execute the Code.

 

 


Related Items:

Last Updated ( Wednesday, 27 February 2008 )
 
< Prev   Next >

Google Search

Google Ads

Shared Bottom Border

Contact Us | Polls | Add URL | Contribute | Privacy | Terms | Feedback

Discussion Forum | BLOG | Consultants: Post your resume | Companies: Advertise on ERPGenie.COM | Post Job
Financials Consultant | Consultant Review | Gallia Consulting | Supply Chain Project | SAP Financials Forum
GenieHoldings.COM, Inc. | Genie Press | WorkflowGenie | ESAGenie | ERPTopSites | ABAP Tips and Tricks | SAP Solutions Database

EDIGenie | Searching Survivor