ALV-INTERACTIVE-3

*&---------------------------------------------------------------------*
*& Report  ZMANI_POC
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*

REPORT  ZMANI_POC.

TYPE-POOLSSLIS.

TYPESBEGIN OF TY_VBAK,
        VBELN 
TYPE VBAK-VBELN,
        ERNAM 
TYPE VBAK-ERNAM,
        NETWR 
TYPE VBAK-NETWR,
        WAERK 
TYPE VBAK-WAERK,
        VKORG 
TYPE VBAK-VKORG,
      
END OF TY_VBAK.


TYPESBEGIN OF TY_VBAP,
                VBELN 
TYPE VBAP-VBELN,
                POSNR 
TYPE VBAP-POSNR,
                MATNR 
TYPE VBAP-MATNR,
                MEINS 
TYPE VBAP-MEINS,
              
END OF TY_VBAP.

 
TYPESBEGIN OF TY_MARA,
         MATNR 
TYPE MARA-MATNR,
         ERNAM 
TYPE MARA-ERNAM,
         MTART 
TYPE MARA-MTART,
         MEINS 
TYPE MARA-MEINS,
       
END OF TY_MARA.



DATAIT_VBAK TYPE TABLE OF TY_VBAK,
        WA_VBAK 
TYPE TY_VBAK.

  
DATAIT_VBAP TYPE TABLE OF TY_VBAP,
        WA_VBAP 
TYPE TY_VBAP.
  
DATAIT_MARA TYPE TABLE OF TY_MARA,
         WA_MARA 
TYPE TY_MARA.


DATAIT_FCAT TYPE  SLIS_T_FIELDCAT_ALV ,
      WA_FCAT 
LIKE LINE OF IT_FCAT.
DATAIT_FCAT1 TYPE  SLIS_T_FIELDCAT_ALV ,
      WA_FCAT1 
LIKE LINE OF IT_FCAT1.

DATAIT_FCAT2 TYPE  SLIS_T_FIELDCAT_ALV ,
      WA_FCAT2 
LIKE LINE OF IT_FCAT2.

DATAWA_LAYOUT TYPE  SLIS_LAYOUT_ALV.

SELECT-OPTIONSS_VBELN FOR WA_VBAK-VBELN.



START-OF-SELECTION.


PERFORM FETCH_DATA USING S_VBELN[] CHANGING IT_VBAK.

PERFORM FIELD_CATLOG.

PERFORM DISPLAY_DATA CHANGING IT_VBAK.

*&---------------------------------------------------------------------*
*&      Form  FETCH_DATA
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      -->P_S_VBELN[]  text
*      <--P_IT_VBAK  text
*----------------------------------------------------------------------*
FORM FETCH_DATA  USING    P_S_VBELN LIKE S_VBELN[]
                 
CHANGING P_IT_VBAK LIKE IT_VBAK.

SELECT VBELN
ERNAM
NETWR
WAERK
VKORG 
FROM VBAK
  
INTO TABLE P_IT_VBAK
    
WHERE VBELN IN  P_S_VBELN.


ENDFORM.                    " FETCH_DATA
*&---------------------------------------------------------------------*
*&      Form  FIELD_CATLOG
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM FIELD_CATLOG .


WA_FCAT
-COL_POS 1.
WA_FCAT
-FIELDNAME 'VBELN'.
WA_FCAT
-SELTEXT_M ' SALES DOC NO'.
WA_FCAT
-KEY 'X'.
WA_FCAT
-HOTSPOT 'X'.

APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT
-COL_POS 2.
WA_FCAT
-FIELDNAME 'ERNAM'.
WA_FCAT
-SELTEXT_M ' CREATER'.


APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT
-COL_POS 3.
WA_FCAT
-FIELDNAME 'NETWR'.
WA_FCAT
-SELTEXT_M ' NET VALUE'.
WA_FCAT
-DO_SUM 'X'.

APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.

WA_FCAT
-COL_POS 4.
WA_FCAT
-FIELDNAME 'WAERK'.
WA_FCAT
-SELTEXT_M ' TAX'.


APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.


WA_FCAT
-COL_POS 4.
WA_FCAT
-FIELDNAME 'VKORG'.
WA_FCAT
-SELTEXT_M 'SALES ORG'.


APPEND WA_FCAT TO IT_FCAT.
CLEAR WA_FCAT.


WA_LAYOUT
-ZEBRA ='X'.
WA_LAYOUT
-COLWIDTH_OPTIMIZE ='X'.
WA_LAYOUT
-NO_HLINE 'X'.
WA_LAYOUT
-NO_VLINE 'X'.
WA_LAYOUT
-EDIT 'X'.


ENDFORM.                    " FIELD_CATLOG
*&---------------------------------------------------------------------*
*&      Form  DISPLAY_DATA
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      <--P_IT_VBAK  text
*----------------------------------------------------------------------*
FORM DISPLAY_DATA  CHANGING P_IT_VBAK LIKE IT_VBAK.


CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
 
EXPORTING
*   I_INTERFACE_CHECK                 = ' '
*   I_BYPASSING_BUFFER                = ' '
*   I_BUFFER_ACTIVE                   = ' '
   I_CALLBACK_PROGRAM                
SY-CPROG
*   I_CALLBACK_PF_STATUS_SET          = ' '
   I_CALLBACK_USER_COMMAND           
'MANI'
*   I_CALLBACK_TOP_OF_PAGE            = ' '
*   I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
*   I_CALLBACK_HTML_END_OF_LIST       = ' '
*   I_STRUCTURE_NAME                  =
*   I_BACKGROUND_ID                   = ' '
*   I_GRID_TITLE                      =
*   I_GRID_SETTINGS                   =
*   IS_LAYOUT                         =
   IT_FIELDCAT                       
IT_FCAT
*   IT_EXCLUDING                      =
*   IT_SPECIAL_GROUPS                 =
*   IT_SORT                           =
*   IT_FILTER                         =
*   IS_SEL_HIDE                       =
*   I_DEFAULT                         = 'X'
*   I_SAVE                            = ' '
*   IS_VARIANT                        =
*   IT_EVENTS                         =
*   IT_EVENT_EXIT                     =
*   IS_PRINT                          =
*   IS_REPREP_ID                      =
*   I_SCREEN_START_COLUMN             = 0
*   I_SCREEN_START_LINE               = 0
*   I_SCREEN_END_COLUMN               = 0
*   I_SCREEN_END_LINE                 = 0
*   I_HTML_HEIGHT_TOP                 = 0
*   I_HTML_HEIGHT_END                 = 0
*   IT_ALV_GRAPHICS                   =
*   IT_HYPERLINK                      =
*   IT_ADD_FIELDCAT                   =
*   IT_EXCEPT_QINFO                   =
*   IR_SALV_FULLSCREEN_ADAPTER        =
* IMPORTING
*   E_EXIT_CAUSED_BY_CALLER           =
*   ES_EXIT_CAUSED_BY_USER            =
  
TABLES
    T_OUTTAB                          
P_IT_VBAK
 
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.


ENDFORM.                    " DISPLAY_DATA



FORM MANI USING RCOMM TYPE SY-UCOMM
           SEL 
TYPE SLIS_SELFIELD.

CALL FUNCTION 'CONVERSION_EXIT_AINLT_INPUT'
  
EXPORTING
    
INPUT         SEL-VALUE
 
IMPORTING
   
OUTPUT        WA_VBAK-VBELN
          
.


  
PERFORM FETCH_DATA2.
 
PERFORM FIELDCAT_OPERATION.

  
PERFORM DISPLAY_DATA2.

  
ENDFORM.
*&---------------------------------------------------------------------*
*&      Form  FETCH_DATA2
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM FETCH_DATA2 .


SELECT VBELN
POSNR
MATNR
MEINS  
FROM VBAP
    
INTO TABLE IT_VBAP
  
WHERE VBELN WA_VBAK-VBELN.

ENDFORM.                    " FETCH_DATA2
*&---------------------------------------------------------------------*
*&      Form  FIELDCAT_OPERATION
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM FIELDCAT_OPERATION .

   WA_FCAT1
-COL_POS 1.
   WA_FCAT1
-FIELDNAME 'VBELN'.
   WA_FCAT1
-SELTEXT_M ' SALES DOC NO'.
   WA_FCAT1
-KEY 'X'.

   
APPEND WA_FCAT1 TO IT_FCAT1.
   
CLEAR WA_FCAT1.



  WA_FCAT1
-COL_POS 2.
  WA_FCAT1
-FIELDNAME 'POSNR'.
  WA_FCAT1
-SELTEXT_M ' SALES ITEM'.


  
APPEND WA_FCAT1 TO IT_FCAT1.
  
CLEAR WA_FCAT1.


  WA_FCAT1
-COL_POS 3.
  WA_FCAT1
-FIELDNAME 'MATNR'.
  WA_FCAT1
-SELTEXT_M 'MATERIAL NO'.
  WA_FCAT1
-HOTSPOT 'X'.

  
APPEND WA_FCAT1 TO IT_FCAT1.
  
CLEAR WA_FCAT1.


  WA_FCAT1
-COL_POS 4.
  WA_FCAT1
-FIELDNAME 'MEINS'.
  WA_FCAT1
-SELTEXT_M 'BASE OF UNIT'.


  
APPEND WA_FCAT1 TO IT_FCAT1.
  
CLEAR WA_FCAT1.

ENDFORM.                    " FIELDCAT_OPERATION
*&---------------------------------------------------------------------*
*&      Form  DISPLAY_DATA2
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM DISPLAY_DATA2 .


CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
 
EXPORTING
*   I_INTERFACE_CHECK                 = ' '
*   I_BYPASSING_BUFFER                = ' '
*   I_BUFFER_ACTIVE                   = ' '
   I_CALLBACK_PROGRAM                
SY-CPROG
*   I_CALLBACK_PF_STATUS_SET          = ' '
   I_CALLBACK_USER_COMMAND           
'MANIV'
*   I_CALLBACK_TOP_OF_PAGE            = ' '
*   I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
*   I_CALLBACK_HTML_END_OF_LIST       = ' '
   I_STRUCTURE_NAME                  
'VBAP'
*   I_BACKGROUND_ID                   = ' '
*   I_GRID_TITLE                      =
*   I_GRID_SETTINGS                   =
*   IS_LAYOUT                         =
   IT_FIELDCAT                       
IT_FCAT1
*   IT_EXCLUDING                      =
*   IT_SPECIAL_GROUPS                 =
*   IT_SORT                           =
*   IT_FILTER                         =
*   IS_SEL_HIDE                       =
*   I_DEFAULT                         = 'X'
*   I_SAVE                            = ' '
*   IS_VARIANT                        =
*   IT_EVENTS                         =
*   IT_EVENT_EXIT                     =
*   IS_PRINT                          =
*   IS_REPREP_ID                      =
*   I_SCREEN_START_COLUMN             = 0
*   I_SCREEN_START_LINE               = 0
*   I_SCREEN_END_COLUMN               = 0
*   I_SCREEN_END_LINE                 = 0
*   I_HTML_HEIGHT_TOP                 = 0
*   I_HTML_HEIGHT_END                 = 0
*   IT_ALV_GRAPHICS                   =
*   IT_HYPERLINK                      =
*   IT_ADD_FIELDCAT                   =
*   IT_EXCEPT_QINFO                   =
*   IR_SALV_FULLSCREEN_ADAPTER        =
* IMPORTING
*   E_EXIT_CAUSED_BY_CALLER           =
*   ES_EXIT_CAUSED_BY_USER            =
  
TABLES
    T_OUTTAB                          
IT_VBAP
 
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.


ENDFORM.                    " DISPLAY_DATA2


FORM MANIV USING RCOMM TYPE SY-UCOMM
      SEL 
TYPE SLIS_SELFIELD.

  
CALL FUNCTION 'CONVERSION_EXIT_AINLT_INPUT'
  
EXPORTING
    
INPUT         SEL-VALUE
  
IMPORTING
    
OUTPUT        WA_VBAP-MATNR
    
.


  
PERFORM FETCH_DATA3.
  
PERFORM FIELDCAT_OPERATION1.

  
PERFORM DISPLAY_DATA3.

ENDFORM.
*&---------------------------------------------------------------------*
*&      Form  FETCH_DATA3
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM FETCH_DATA3 .

SELECT MATNR ERNAM MTART MEINS FROM MARA
    
INTO TABLE IT_MARA
     
WHERE MATNR WA_VBAP-MATNR.

ENDFORM.                    " FETCH_DATA3
*&---------------------------------------------------------------------*
*&      Form  FIELDCAT_OPERATION1
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM FIELDCAT_OPERATION1 .



  WA_FCAT2
-COL_POS 1.
  WA_FCAT2
-FIELDNAME 'MATNR'.
  WA_FCAT2
-SELTEXT_M ' MATERIAL NO'.
  WA_FCAT2
-KEY 'X'.
  WA_FCAT2
-HOTSPOT 'X'.

  
APPEND WA_FCAT2 TO IT_FCAT2.
  
CLEAR WA_FCAT2.


  WA_FCAT2
-COL_POS 2.
  WA_FCAT2
-FIELDNAME 'ERNAM'.
  WA_FCAT2
-SELTEXT_M ' MATERIAL CREATER'.
*  WA_FCAT2-KEY = 'X'.

  
APPEND WA_FCAT2 TO IT_FCAT2.
  
CLEAR WA_FCAT2.


  WA_FCAT2
-COL_POS 3.
  WA_FCAT2
-FIELDNAME 'MTART'.
  WA_FCAT2
-SELTEXT_M ' MATERIAL TYPE'.
*  WA_FCAT2-KEY = 'X'.

  
APPEND WA_FCAT2 TO IT_FCAT2.
  
CLEAR WA_FCAT2.

  WA_FCAT2
-COL_POS 4.
  WA_FCAT2
-FIELDNAME 'MEINS'.
  WA_FCAT2
-SELTEXT_M ' MATERIAL UNIT'.
  WA_FCAT2
-HOTSPOT 'X'.

  
APPEND WA_FCAT2 TO IT_FCAT2.
  
CLEAR WA_FCAT2.

ENDFORM.                    " FIELDCAT_OPERATION1
*&---------------------------------------------------------------------*
*&      Form  DISPLAY_DATA3
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM DISPLAY_DATA3 .


CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
 
EXPORTING
*   I_INTERFACE_CHECK                 = ' '
*   I_BYPASSING_BUFFER                = ' '
*   I_BUFFER_ACTIVE                   = ' '
   I_CALLBACK_PROGRAM                
SY-CPROG
*   I_CALLBACK_PF_STATUS_SET          = ' '
   I_CALLBACK_USER_COMMAND           
'SHIVA'
*   I_CALLBACK_TOP_OF_PAGE            = ' '
*   I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
*   I_CALLBACK_HTML_END_OF_LIST       = ' '
   I_STRUCTURE_NAME                  
'MARA'
*   I_BACKGROUND_ID                   = ' '
*   I_GRID_TITLE                      =
*   I_GRID_SETTINGS                   =
*   IS_LAYOUT                         =
   IT_FIELDCAT                       
IT_FCAT2
*   IT_EXCLUDING                      =
*   IT_SPECIAL_GROUPS                 =
*   IT_SORT                           =
*   IT_FILTER                         =
*   IS_SEL_HIDE                       =
*   I_DEFAULT                         = 'X'
*   I_SAVE                            = ' '
*   IS_VARIANT                        =
*   IT_EVENTS                         =
*   IT_EVENT_EXIT                     =
*   IS_PRINT                          =
*   IS_REPREP_ID                      =
*   I_SCREEN_START_COLUMN             = 0
*   I_SCREEN_START_LINE               = 0
*   I_SCREEN_END_COLUMN               = 0
*   I_SCREEN_END_LINE                 = 0
*   I_HTML_HEIGHT_TOP                 = 0
*   I_HTML_HEIGHT_END                 = 0
*   IT_ALV_GRAPHICS                   =
*   IT_HYPERLINK                      =
*   IT_ADD_FIELDCAT                   =
*   IT_EXCEPT_QINFO                   =
*   IR_SALV_FULLSCREEN_ADAPTER        =
* IMPORTING
*   E_EXIT_CAUSED_BY_CALLER           =
*   ES_EXIT_CAUSED_BY_USER            =
  
TABLES
    T_OUTTAB                          
IT_MARA
 
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.





CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
 
EXPORTING
*   I_INTERFACE_CHECK                 = ' '
*   I_BYPASSING_BUFFER                = ' '
*   I_BUFFER_ACTIVE                   = ' '
   I_CALLBACK_PROGRAM                
SY-CPROG
*   I_CALLBACK_PF_STATUS_SET          = ' '
   I_CALLBACK_USER_COMMAND           
'BANGALORE'
*   I_CALLBACK_TOP_OF_PAGE            = ' '
*   I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
*   I_CALLBACK_HTML_END_OF_LIST       = ' '
*   I_STRUCTURE_NAME                  =
*   I_BACKGROUND_ID                   = ' '
*   I_GRID_TITLE                      =
*   I_GRID_SETTINGS                   =
*   IS_LAYOUT                         =
   IT_FIELDCAT                       
IT_FCAT2
*   IT_EXCLUDING                      =
*   IT_SPECIAL_GROUPS                 =
*   IT_SORT                           =
*   IT_FILTER                         =
*   IS_SEL_HIDE                       =
*   I_DEFAULT                         = 'X'
*   I_SAVE                            = ' '
*   IS_VARIANT                        =
*   IT_EVENTS                         =
*   IT_EVENT_EXIT                     =
*   IS_PRINT                          =
*   IS_REPREP_ID                      =
*   I_SCREEN_START_COLUMN             = 0
*   I_SCREEN_START_LINE               = 0
*   I_SCREEN_END_COLUMN               = 0
*   I_SCREEN_END_LINE                 = 0
*   I_HTML_HEIGHT_TOP                 = 0
*   I_HTML_HEIGHT_END                 = 0
*   IT_ALV_GRAPHICS                   =
*   IT_HYPERLINK                      =
*   IT_ADD_FIELDCAT                   =
*   IT_EXCEPT_QINFO                   =
*   IR_SALV_FULLSCREEN_ADAPTER        =
* IMPORTING
*   E_EXIT_CAUSED_BY_CALLER           =
*   ES_EXIT_CAUSED_BY_USER            =
  
TABLES
    T_OUTTAB                          
IT_MARA
 
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.

ENDFORM.                    " DISPLAY_DATA3

FORM SHIVA USING RCOMM TYPE SY-UCOMM
             SEL 
TYPE SLIS_SELFIELD.

  
CALL FUNCTION 'CONVERSION_EXIT_AINLT_INPUT'
    
EXPORTING
      
INPUT         SEL-VALUE
   
IMPORTING
     
OUTPUT        WA_MARA-MATNR
            
.

 
PERFORM CALL_TRAN_MM01.

ENDFORM.






*                    " GOTO_TRANSACTION_MM03
*&---------------------------------------------------------------------*
*&      Form  CALL_TRAN_MM01
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM CALL_TRAN_MM01 .



DATAFNAME(20TYPE C.
  
DATAFVALU TYPE MARA-MATNR.

*DATA: S_MATNR TYPE C.
*
*   S_MATNR =  FVALU.

  
GET CURSOR FIELD FNAME VALUE FVALU.

  
SET PARAMETER ID 'MAT' FIELD FVALU.

  
CALL TRANSACTION 'MM01' AND  SKIP FIRST SCREEN.


ENDFORM.                    " CALL_TRAN_MM01




FORM BANGALORE USING RCOMM TYPE SY-UCOMM
      SEL 
TYPE SLIS_SELFIELD.

  
CALL FUNCTION 'CONVERSION_EXIT_AINLT_INPUT'
  
EXPORTING
    
INPUT         SEL-VALUE
  
IMPORTING
    
OUTPUT        WA_MARA-MEINS
    
.

  
PERFORM CALL_TRANSACTION_SE11.

ENDFORM.

*&---------------------------------------------------------------------*
*&      Form  CALL_TRANSACTION_SE11
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  -->  p1        text
*  <--  p2        text
*----------------------------------------------------------------------*
FORM CALL_TRANSACTION_SE11 .



  
DATAFNAME(20TYPE C.
  
DATAFVALU TYPE MARA-MEINS.

*DATA: S_MATNR TYPE C.
*
*   S_MATNR =  FVALU.

  
GET CURSOR FIELD FNAME VALUE FVALU.

  
SET PARAMETER ID 'ABAP DIC' FIELD FVALU.

  
CALL TRANSACTION 'SE11' AND  SKIP FIRST SCREEN.




ENDFORM.                    " CALL_TRANSACTION_SE11

Comments

Popular posts from this blog

FOR ALL ENTRIES (FAE) -4 TABLES USING ALV_GRID_DISPLAY

RADIO-BUTTONS IN BASIC REPORT