Alv CC

You might also like

Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 4

REPORT ZALV_CC.

TABLES : KNA1.
TYPE-POOLS : SLIS.
*--- ALV Grid instance reference
DATA GR_ALVGRID TYPE REF TO CL_GUI_ALV_GRID.
*--- Name of the custom control added on the screen
DATA GC_CUSTOM_CONTROL_NAME TYPE SCRFNAME VALUE 'CUSTOM_CONTROL_NAME'.
*--- Custom container instance reference
DATA GR_CCONTAINER TYPE REF TO CL_GUI_CUSTOM_CONTAINER.
*--- Field catalog table
DATA GT_FIELDCAT TYPE LVC_T_FCAT.

TYPES : BEGIN OF TY_KNA1,


KUNNR LIKE KNA1-KUNNR,
NAME1 LIKE KNA1-NAME1,
ORT01 LIKE KNA1-ORT01,
REGIO LIKE KNA1-REGIO,
END OF TY_KNA1.

DATA : IT_KNA1 TYPE TABLE OF TY_KNA1,


WA_KNA1 TYPE TY_KNA1.

SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-000.


SELECT-OPTIONS : P_KUNNR FOR KNA1-KUNNR OBLIGATORY.
SELECTION-SCREEN END OF BLOCK B1.

SELECT KUNNR
NAME1
ORT01
REGIO
FROM KNA1 INTO TABLE IT_KNA1
WHERE KUNNR IN P_KUNNR .

IF NOT IT_KNA1[] IS INITIAL.


CALL SCREEN '2000'.
ELSE.
MESSAGE 'NO DATA FETCH' TYPE 'I'.
ENDIF.

PERFORM DISPLAY_ALV.
*&---------------------------------------------------------------------*
*& Form DISPLAY_ALV
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM DISPLAY_ALV .

CREATE OBJECT GR_CCONTAINER


EXPORTING
* PARENT =
CONTAINER_NAME = 'CUSTOM_CONTROL_NAME'
* STYLE =
* LIFETIME = lifetime_default
* REPID =
* DYNNR =
* NO_AUTODEF_PROGID_DYNNR =
* EXCEPTIONS
* CNTL_ERROR = 1
* CNTL_SYSTEM_ERROR = 2
* CREATE_ERROR = 3
* LIFETIME_ERROR = 4
* LIFETIME_DYNPRO_DYNPRO_LINK = 5
* others = 6
.
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

CREATE OBJECT GR_ALVGRID


EXPORTING
* I_SHELLSTYLE = 0
* I_LIFETIME =
I_PARENT = GR_CCONTAINER
* I_APPL_EVENTS = space
* I_PARENTDBG =
* I_APPLOGPARENT =
* I_GRAPHICSPARENT =
* I_NAME =
* I_FCAT_COMPLETE = SPACE
* EXCEPTIONS
* ERROR_CNTL_CREATE = 1
* ERROR_CNTL_INIT = 2
* ERROR_CNTL_LINK = 3
* ERROR_DP_CREATE = 4
* others = 5
.
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

PERFORM PREPARE_FIELD_CATLOG CHANGING GT_FIELDCAT.

CALL METHOD GR_ALVGRID->SET_TABLE_FOR_FIRST_DISPLAY


* EXPORTING
* I_BUFFER_ACTIVE =
* I_BYPASSING_BUFFER =
* I_CONSISTENCY_CHECK =
* I_STRUCTURE_NAME =
* IS_VARIANT =
* I_SAVE =
* I_DEFAULT = 'X'
* IS_LAYOUT =
* IS_PRINT =
* IT_SPECIAL_GROUPS =
* IT_TOOLBAR_EXCLUDING =
* IT_HYPERLINK =
* IT_ALV_GRAPHICS =
* IT_EXCEPT_QINFO =
* IR_SALV_ADAPTER =
CHANGING
IT_OUTTAB = IT_KNA1
IT_FIELDCATALOG = GT_FIELDCAT
* IT_SORT =
* IT_FILTER =
* 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.

ENDFORM. " DISPLAY_ALV


*&---------------------------------------------------------------------*
*& Module STATUS_2000 OUTPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE STATUS_2000 OUTPUT.
SET PF-STATUS 'ZSTATUS'.
* SET TITLEBAR 'xxx'.

PERFORM DISPLAY_ALV.
ENDMODULE. " STATUS_2000 OUTPUT
*&---------------------------------------------------------------------*
*& Form PREPARE_FIELD_CATLOG
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* <--P_GT_FIELDCAT text
*----------------------------------------------------------------------*
FORM PREPARE_FIELD_CATLOG CHANGING P_GT_FIELDCAT TYPE LVC_T_FCAT.

data m_fieldcat type lvc_s_fcat .

clear m_fieldcat .
m_fieldcat-col_pos = '1'.
m_fieldcat-fieldname = 'KUNNR'.
m_fieldcat-tabname = 'KNA1'.
append m_fieldcat to P_GT_FIELDCAT.

clear m_fieldcat .
m_fieldcat-col_pos = '2'.
m_fieldcat-fieldname = 'NAME1'.
m_fieldcat-tabname = 'KNA1'.
m_fieldcat-edit = 'X'.
append m_fieldcat to P_GT_FIELDCAT.
clear m_fieldcat .
m_fieldcat-col_pos = '3'.
m_fieldcat-fieldname = 'ORT01'.
m_fieldcat-tabname = 'KNA1'.
append m_fieldcat to P_GT_FIELDCAT.

clear m_fieldcat .
m_fieldcat-col_pos = '4'.
m_fieldcat-fieldname = 'REGIO'.
m_fieldcat-tabname = 'KNA1'.
append m_fieldcat to P_GT_FIELDCAT.

ENDFORM. " PREPARE_FIELD_CATLOG


*&---------------------------------------------------------------------*
*& Module USER_COMMAND_2000 INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE USER_COMMAND_2000 INPUT.

CASE SY-UCOMM.

WHEN 'BACK'.
LEAVE TO SCREEN 0.
ENDCASE.
ENDMODULE.

You might also like