on 03-12-2008 2:56 PM
hi friends this is rajesh
i want realtime alv programs for analysing purpose so plz send me some real time programs
thank you very much
*******************************************************************************
* Report Z_PP_REP_000161 *
* *
* *
*-----------------------------------------------------------------------------*
*
* *
*******************************************************************************
REPORT z_pp_rep_000161 MESSAGE-ID zpp.
*------------------------------------------------------------------------------*
* T Y P E S D E C L A R A T I O N *
*------------------------------------------------------------------------------*
TYPE-POOLS :slis.
TYPE-POOLS:abap. "Type Pool Declaration
* Structure FOR AFKO
TYPES: BEGIN OF t_afko,
plnbez TYPE afko-plnbez,
aufnr TYPE aufnr, "Article
gamng TYPE gamng, "Total order quantity
END OF t_afko.
*Structure for Mara
TYPES: BEGIN OF t_mara,
matnr TYPE matnr, "Material Number
mtart TYPE mtart, "Size/fit
pstat TYPE pstat_d, "Variant
END OF t_mara.
*Structure for Final
TYPES: BEGIN OF t_final,
aufnr TYPE aufnr, "Production Order
gamng TYPE gamng, "Move Number
mtart TYPE mtart, "Size/fit
pstat TYPE pstat_d, "Variant
quantity TYPE meng8, "Quantity
barcode(40) TYPE c,
END OF t_final.
*------------------------------------------------------------------------------*
* INTERNAL TABLE,WORK AREA and variable DECLARATION *
*------------------------------------------------------------------------------*
*Internal Table Declaration
data: gi_final TYPE STANDARD TABLE OF t_final, "Final Internal Table
gi_mara TYPE STANDARD TABLE OF t_mara, "Internal Table for MARA
gi_afko TYPE STANDARD TABLE OF t_afko, "Internal Table for AFKO
gi_fieldcat TYPE STANDARD TABLE OF slis_fieldcat_alv. "Internal Table for fieldcat ALV
* WORK Area Declaration.
DATA: gwa_final TYPE t_final, "Work Area for FINAL
gwa_mara TYPE t_mara, "Work Area for MARA
gwa_afko TYPE t_afko, "Work Area for AFKO
gwa_fieldcat TYPE slis_fieldcat_alv, "Work Area For Fieldcat Structure
wa_variant TYPE disvariant,
wa_variant1 TYPE disvariant.
* Local variable Declaration
DATA: v_aufnr TYPE caufvd-aufnr, "Variable for production order
v_txt04 TYPE tj02t-txt04, "Variable for production order Status
v_plnbez TYPE afko-plnbez, "variable for Article
lv_aufnr TYPE aufnr, "Local Variable for production order
lv_txt04 TYPE j_txt04, "Local Variable for production order Status
lv_plnbez TYPE matnr. "Local Variable for Article
*------------------------------------------------------------------------------*
* CONSTANT DECLARATION *
*------------------------------------------------------------------------------*
CONSTANTS:c_x(1) TYPE c VALUE'X',
lc_a(1) TYPE c VALUE 'A',
c_p2(2) TYPE c VALUE 'P2',
c_dir TYPE string VALUE 'C:\',
c_ext TYPE string VALUE 'XLS'.
*------------------------------------------------------------------------------*
* S E L E C TI O N S C R E E N *
*------------------------------------------------------------------------------*
*First Block
SELECTION-SCREEN: BEGIN OF BLOCK blk1 WITH FRAME TITLE text-001.
SELECT-OPTIONS : s_po FOR v_aufnr, "Production Order.
s_pos FOR v_txt04, "Production Order Status.
s_art FOR v_plnbez . "Article
SELECTION-SCREEN: END OF BLOCK blk1.
*Second Block
SELECTION-SCREEN : BEGIN OF BLOCK blk2 WITH FRAME TITLE text-002.
PARAMETER : rd1 RADIOBUTTON GROUP g1 DEFAULT 'X' USER-COMMAND change, "Radio Button For Display
rd2 RADIOBUTTON GROUP g1. "Radio Button for generate
SELECTION-SCREEN:END OF BLOCK blk2.
*Third Block
SELECTION-SCREEN : BEGIN OF BLOCK blk3 WITH FRAME TITLE text-003.
PARAMETER:p_var TYPE disvariant-variant MODIF ID p2. "Variant Part
SELECTION-SCREEN:END OF BLOCK blk3.
*------------------------------------------------------------------------------*
* VARIANT PART *
*------------------------------------------------------------------------------*
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_var.
*Creating Variant for ALV
PERFORM alv_variant.
*------------------------------------------------------------------------------*
* SELECTION SCREEN VALIDATION *
*------------------------------------------------------------------------------*
AT SELECTION-SCREEN.
*Validating Selection Screen Entries
PERFORM validate_entries.
AT SELECTION-SCREEN OUTPUT.
*Perform To Hide the Selection Screen Variant block after clicking generate button
PERFORM hide_block.
*------------------------------------------------------------------------------*
* Start Of Selection *
*------------------------------------------------------------------------------*
*Perform for populating Internal table
START-OF-SELECTION.
PERFORM data_fetch.
*------------------------------------------------------------------------------*
* End Of Selection *
*------------------------------------------------------------------------------*
END-OF-SELECTION.
* TO Check Which radio button is pressed
IF rd1 = c_x.
PERFORM build_catalog. "Build Catalog
PERFORM alv_display. "Alv display
ELSE.
*For dynamic Internal Table
* perform dynamic_table.
*For download of file
PERFORM sub_export_error. "File transfer
ENDIF.
*------------------------------------------------------------------------------*
* S C R E E N D E S I G N *
*------------------------------------------------------------------------------*
SET TITLEBAR 'TITLE'. "Burberry Linen ticket Output
*----------------------------------------------------------------------*
* Form alv_variant
*----------------------------------------------------------------------*
* To Create variant and display the ALV according to it
*----------------------------------------------------------------------*
FORM alv_variant .
wa_variant-username = sy-uname.
wa_variant-report = sy-repid.
*Constants
CONSTANTS: lv_a(01) TYPE c VALUE 'A'.
*For variant Part
CALL FUNCTION 'REUSE_ALV_VARIANT_F4'
EXPORTING
is_variant = wa_variant
i_save = lv_a
IMPORTING
es_variant = wa_variant1
EXCEPTIONS
not_found = 1
program_error = 2
OTHERS = 3.
IF sy-subrc <> 0.
p_var = wa_variant-variant.
ELSE.
p_var = wa_variant1-variant.
ENDIF.
ENDFORM. " alv_variant
*----------------------------------------------------------------------*
* Form validate_entries
*----------------------------------------------------------------------*
* Validating The selection Screen input
*----------------------------------------------------------------------*
FORM validate_entries .
*Validation For Production Order
IF s_po[] IS NOT INITIAL.
SELECT aufnr UP TO 1 ROWS
FROM aufk
INTO lv_aufnr
WHERE aufnr = s_po-low.
ENDSELECT.
IF lv_aufnr IS INITIAL.
MESSAGE e001. "Production order does not exist
ENDIF.
ENDIF.
*Validation For Production order Status
IF s_pos[] IS NOT INITIAL.
SELECT txt04 UP TO 1 ROWS
FROM tj02t
INTO lv_txt04
WHERE txt04 = s_pos-low.
ENDSELECT.
IF lv_txt04 IS INITIAL.
MESSAGE e002. "Production Order status not Found
ENDIF.
ENDIF.
*Validation for article Number
IF s_art[] IS NOT INITIAL.
SELECT matnr UP TO 1 ROWS
FROM mara
INTO lv_plnbez
WHERE matnr IN s_art.
ENDSELECT.
IF lv_plnbez IS INITIAL.
MESSAGE e003. "Article not found
ENDIF.
ENDIF.
ENDFORM. "Validate_entries
*----------------------------------------------------------------------*
* Form hide_block
*----------------------------------------------------------------------*
*Form To Hide the Selection Screen block after clicking generate button
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM hide_block .
IF rd2 EQ c_x.
LOOP AT SCREEN.
IF screen-group1 NE c_p2.
screen-invisible = 0.
screen-active = 1.
ELSE.
screen-invisible = 1.
screen-active = 0.
ENDIF.
MODIFY SCREEN.
ENDLOOP.
ENDIF.
ENDFORM. " hide_block
*----------------------------------------------------------------------*
* Form data_fetch
*----------------------------------------------------------------------*
* Populating The Internal Table
*----------------------------------------------------------------------*
FORM data_fetch .
*Fetching data from MARA and populating gi_mara
IF s_art[] IS INITIAL.
MESSAGE i008 DISPLAY LIKE 'E'.
LEAVE LIST-PROCESSING.
ELSE.
SELECT matnr "Material Number
mtart "Size/Fit
pstat "Variant
FROM mara
INTO TABLE gi_mara
WHERE matnr IN s_art.
ENDIF.
*Fetching DATA from AFKO and Populating gi_afko
SELECT plnbez "Article
aufnr "Production order
gamng "Move Number
FROM afko
INTO TABLE gi_afko
WHERE plnbez IN s_art AND aufnr IN s_po.
*Looping at Internal Table of afko
IF sy-subrc <> 0.
MESSAGE i007 .
LEAVE LIST-PROCESSING.
ELSE.
LOOP AT gi_afko INTO gwa_afko.
READ TABLE gi_mara INTO gwa_mara WITH KEY matnr = gwa_afko-plnbez. "Read internal table for mara for each record in internal table of afko
* Checking for record in gi_mara
IF sy-subrc = 0.
MOVE gwa_mara-mtart TO gwa_final-mtart.
MOVE gwa_mara-pstat TO gwa_final-pstat.
MOVE gwa_afko-aufnr TO gwa_final-aufnr.
MOVE gwa_afko-gamng TO gwa_final-gamng.
APPEND gwa_final TO gi_final.
CLEAR gwa_final . "Clear Work Area for final
ENDIF.
CLEAR gwa_afko. "Clear Work Area for afko
ENDLOOP.
*Loop ing At final internal table
LOOP AT gi_final INTO gwa_final.
gwa_final-quantity = '1'.
MODIFY gi_final FROM gwa_final INDEX sy-tabix TRANSPORTING quantity.
*Concatenate two field AUFNR and PSTAT to generate barcode
CONCATENATE gwa_final-aufnr gwa_final-pstat INTO gwa_final-barcode .
MODIFY gi_final FROM gwa_final INDEX sy-tabix TRANSPORTING barcode.
CLEAR gwa_final.
ENDLOOP.
ENDIF.
ENDFORM. " data_fetch
*----------------------------------------------------------------------------*
* Form sub_export_error
*----------------------------------------------------------------------------*
* Form for data tranfer to excel
*----------------------------------------------------------------------------*
FORM sub_export_error .
DATA: fullpath TYPE string, "Full path of the file
filename TYPE string, "Name of the excel file
path TYPE string, "Path where the file will be stored
user_action TYPE i , "To catch User Action
l_title TYPE string. "To display title
* encoding TYPE abap_encoding.
l_title = 'Save File'(006).
* Open the save dialog
CALL METHOD cl_gui_frontend_services=>file_save_dialog
EXPORTING
window_title = l_title
default_extension = c_ext
initial_directory = c_dir
CHANGING
filename = filename
path = path
fullpath = fullpath
user_action = user_action
EXCEPTIONS
cntl_error = 1
error_no_gui = 2
not_supported_by_gui = 3
OTHERS = 4.
IF sy-subrc <> 0.
EXIT.
ENDIF.
** Check which button is pressed
IF user_action <> cl_gui_frontend_services=>action_ok.
MESSAGE i006. "Action Cancelled By User
EXIT.
ENDIF.
* Download error data collected from the internal table
CALL METHOD cl_gui_frontend_services=>gui_download
EXPORTING
filename = fullpath
filetype = 'ASC'
write_field_separator = '#'
CHANGING
data_tab = gi_final "dy_table
EXCEPTIONS
file_write_error = 1
no_batch = 2
gui_refuse_filetransfer = 3
invalid_type = 4
no_authority = 5
unknown_error = 6
header_not_allowed = 7
separator_not_allowed = 8
filesize_not_allowed = 9
header_too_long = 10
dp_error_create = 11
dp_error_send = 12
dp_error_write = 13
unknown_dp_error = 14
access_denied = 15
dp_out_of_memory = 16
disk_full = 17
dp_timeout = 18
file_not_found = 19
dataprovider_exception = 20
control_flush_error = 21
not_supported_by_gui = 22
error_no_gui = 23
OTHERS = 24.
* If selection is successful
IF sy-subrc EQ 0.
MESSAGE s004 . " File created successfully
ELSE.
MESSAGE i005 . " File is not created successfully
ENDIF.
ENDFORM. " sub_export_error
*&---------------------------------------------------------------------*
*& Form dynamic_table
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM dynamic_table .
FIELD-SYMBOLS:
<dyn_table> TYPE STANDARD TABLE.
TYPES: BEGIN OF lt_tarfc,
intlen TYPE i,
decimals TYPE i,
datatype TYPE abap_typekind,
inttype TYPE abap_typekind,
fieldname TYPE abap_compname,
END OF lt_tarfc.
DATA:
lt_fdetails TYPE abap_compdescr_tab,
lt_tarfc TYPE lvc_t_fcat,
wa_fdetails TYPE abap_compdescr,
wa_tarfc TYPE lvc_s_fcat,
* li_tarfc type standard table of lt_tarfc,
wa_dd04 TYPE dd04v,
dy_table TYPE REF TO data,
lp_ref_table_des TYPE REF TO cl_abap_structdescr.
DATA: fullpath TYPE string, "Full path of the file
filename TYPE string, "Name of the excel file
path TYPE string, "Path where the file will be stored
user_action TYPE i , "To catch User Action
l_title TYPE string. "To display title
* encoding TYPE abap_encoding.
l_title = 'Save File'(006).
** Get the structure of the table.
lp_ref_table_des ?=
cl_abap_typedescr=>describe_by_name('MARA').
lt_fdetails[] = lp_ref_table_des->components[].
* Making internal table compitable for Function module
LOOP AT lt_fdetails INTO wa_fdetails.
CLEAR wa_tarfc.
wa_tarfc-fieldname = wa_fdetails-name .
wa_tarfc-datatype = wa_fdetails-type_kind.
wa_tarfc-inttype = wa_fdetails-type_kind.
wa_tarfc-intlen = wa_fdetails-length.
wa_tarfc-decimals = wa_fdetails-decimals.
APPEND wa_tarfc TO lt_tarfc.
ENDLOOP.
* Create dynamic internal table and assign to FS
CALL METHOD cl_alv_table_create=>create_dynamic_table
EXPORTING
it_fieldcatalog = lt_tarfc
IMPORTING
ep_table = dy_table.
* Open the save dialog
CALL METHOD cl_gui_frontend_services=>file_save_dialog
EXPORTING
window_title = l_title
default_extension = c_ext
initial_directory = c_dir
CHANGING
filename = filename
path = path
fullpath = fullpath
user_action = user_action
EXCEPTIONS
cntl_error = 1
error_no_gui = 2
not_supported_by_gui = 3
OTHERS = 4.
IF sy-subrc <> 0.
EXIT.
ENDIF.
** Check which button is pressed
IF user_action <> cl_gui_frontend_services=>action_ok.
MESSAGE i006. "Action Cancelled By User
EXIT.
ENDIF.
* <dyn_table> = dy_table.
** Download error data collected from the internal table
* CALL METHOD cl_gui_frontend_services=>gui_download
* EXPORTING
* filename = fullpath
* filetype = 'ASC'
* write_field_separator = '#'
* CHANGING
* data_tab = dy_table
* EXCEPTIONS
* file_write_error = 1
* no_batch = 2
* gui_refuse_filetransfer = 3
* invalid_type = 4
* no_authority = 5
* unknown_error = 6
* header_not_allowed = 7
* separator_not_allowed = 8
* filesize_not_allowed = 9
* header_too_long = 10
* dp_error_create = 11
* dp_error_send = 12
* dp_error_write = 13
* unknown_dp_error = 14
* access_denied = 15
* dp_out_of_memory = 16
* disk_full = 17
* dp_timeout = 18
* file_not_found = 19
* dataprovider_exception = 20
* control_flush_error = 21
* not_supported_by_gui = 22
* error_no_gui = 23
* OTHERS = 24.
*
** If selection is successful
* IF sy-subrc EQ 0.
* MESSAGE s004 . " File created successfully
* ELSE.
* MESSAGE i005 . " File is not created successfully
* ENDIF.
ENDFORM. " dynamic_table
*----------------------------------------------------------------------*
* Form alv_display *
*----------------------------------------------------------------------*
* Form for Alv_display *
*----------------------------------------------------------------------*
FORM alv_display .
DATA : lwa_layout TYPE slis_layout_alv. " optimize column width
* Optimize the column width so that all contents are displayed
lwa_layout-colwidth_optimize = c_x.
* display variant
wa_variant-report = sy-repid.
IF NOT p_var IS INITIAL.
wa_variant-variant = p_var.
ENDIF.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = sy-repid
i_callback_pf_status_set = 'PF_STATUS'
i_callback_user_command = 'USER_COMMAND'
is_layout = lwa_layout
it_fieldcat = gi_fieldcat
is_variant = wa_variant
i_default = c_x
i_save = lc_a
TABLES
t_outtab = gi_final
EXCEPTIONS
program_error = 1
OTHERS = 2.
IF sy-subrc <> 0.
ENDIF.
ENDFORM. " alv_display
************************************************************************
* PF_STATUS FORM *
************************************************************************
FORM pf_status "#EC *
USING p_extab TYPE slis_t_extab.
SET PF-STATUS 'STAT1' EXCLUDING p_extab.
ENDFORM. "PF_STATUS
*-----------------------------------------------------------------------*
* Form user_command
*-----------------------------------------------------------------------*
* Form For user Command
*-----------------------------------------------------------------------*
* -->R_UCOMM Input parameter
* -->RS_SELFIELD Input parameter
*-----------------------------------------------------------------------*
FORM user_command USING p_ucomm TYPE sy-ucomm
p_selfld TYPE slis_selfield. "#EC *
CASE p_ucomm.
WHEN 'GENERATE'.
perform dynamic_table.
PERFORM sub_export_error.
ENDCASE.
ENDFORM. "USER_COMMAND
*----------------------------------------------------------------------*
* Form build_catalog
*----------------------------------------------------------------------*
* For bulding field Catalog
*----------------------------------------------------------------------*
FORM build_catalog .
CONSTANTS:lc_aufnr(5) TYPE c VALUE 'AUFNR',
lc_table(8) TYPE c VALUE 'gi_final',
lc_color(4) TYPE c VALUE 'C210',
lc_gamng(5) TYPE c VALUE 'GAMNG',
lc_mtart(5) TYPE c VALUE 'MTART',
lc_pstat(5) TYPE c VALUE 'PSTAT',
"lc_pstat_head(8) TYPE c VALUE 'Variant',
lc_quantity(8) TYPE c VALUE 'QUANTITY',
lc_barcode(7) TYPE c VALUE 'BARCODE'.
gwa_fieldcat-fieldname = lc_aufnr.
gwa_fieldcat-seltext_l = text-013."lc_aufnr_head.
gwa_fieldcat-tabname = lc_table.
gwa_fieldcat-emphasize = lc_color.
APPEND gwa_fieldcat TO gi_fieldcat.
CLEAR gwa_fieldcat.
gwa_fieldcat-fieldname = lc_gamng.
gwa_fieldcat-seltext_l = text-015."lc_gamng_head.
gwa_fieldcat-tabname = lc_table.
gwa_fieldcat-emphasize = lc_color.
APPEND gwa_fieldcat TO gi_fieldcat.
CLEAR gwa_fieldcat.
gwa_fieldcat-fieldname = lc_mtart.
gwa_fieldcat-seltext_l = text-005."lc_mtart_head.
gwa_fieldcat-tabname = lc_table.
gwa_fieldcat-emphasize = lc_color.
APPEND gwa_fieldcat TO gi_fieldcat.
CLEAR gwa_fieldcat.
gwa_fieldcat-fieldname = lc_pstat.
gwa_fieldcat-seltext_l = text-009."lc_pstat_head.
gwa_fieldcat-tabname = lc_table.
gwa_fieldcat-emphasize = lc_color.
APPEND gwa_fieldcat TO gi_fieldcat.
CLEAR gwa_fieldcat.
gwa_fieldcat-fieldname = lc_quantity.
gwa_fieldcat-seltext_l = text-011."lc_quantity_head.
gwa_fieldcat-tabname = lc_table.
gwa_fieldcat-emphasize = lc_color.
APPEND gwa_fieldcat TO gi_fieldcat.
CLEAR gwa_fieldcat.
gwa_fieldcat-fieldname = lc_barcode.
gwa_fieldcat-seltext_l = text-017."lc_barcode_head.
gwa_fieldcat-tabname = lc_table.
gwa_fieldcat-emphasize = lc_color.
APPEND gwa_fieldcat TO gi_fieldcat.
CLEAR gwa_fieldcat.
ENDFORM. " build_catalog
This is a real Time ALV Program
Go through It.
Regards
Sandipan
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
HI,
REPORT ZALVINTER.
&----
*& tables declaration
&----
TABLES: VBRK,VBRP.
&----
*& type-pools declaration
&----
TYPE-POOLS: SLIS.
&----
*& data declaration
&----
DATA: G_REPID TYPE SY-REPID.
DATA : IT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV, "mara
WA_FIELDCAT TYPE SLIS_FIELDCAT_ALV,
WA_LAYOUT TYPE SLIS_LAYOUT_ALV,
WA_EVENT TYPE SLIS_ALV_EVENT,
T_EVENT TYPE SLIS_T_EVENT.
DATA: V_VBELN LIKE VBRK-VBELN,
V_MATNR LIKE VBRP-MATNR.
DATA: BEGIN OF IT_VBRK OCCURS 0,
VBELN LIKE VBRK-VBELN,
WAERK LIKE VBRK-WAERK,
VKORG LIKE VBRK-VKORG,
FKDAT LIKE VBRK-FKDAT,
BUKRS LIKE VBRK-BUKRS,
NETWR LIKE VBRK-NETWR,
END OF IT_VBRK.
DATA: BEGIN OF IT_VBRP OCCURS 0,
VBELN LIKE VBRP-VBELN,
POSNR LIKE VBRP-POSNR,
FKIMG LIKE VBRP-FKIMG,
VRKME LIKE VBRP-VRKME,
NETWR LIKE VBRP-NETWR,
MATNR LIKE VBRP-MATNR,
ARKTX LIKE VBRP-ARKTX,
END OF IT_VBRP.
&----
*& selection screen
&----
SELECTION-SCREEN BEGIN OF BLOCK B WITH FRAME TITLE TEXT-001.
SELECT-OPTIONS: S_VBELN FOR VBRK-VBELN,
S_FKDAT FOR VBRK-FKDAT,
S_MATNR FOR VBRP-MATNR.
SELECTION-SCREEN END OF BLOCK B.
**INITIALIZATION.
INITIALIZATION.
G_REPID = SY-REPID.
S_FKDAT-LOW = SY-DATUM - 200.
S_FKDAT-HIGH = SY-DATUM.
APPEND S_FKDAT.
***AT SELECTION-SCREEN.
AT SELECTION-SCREEN.
IF NOT S_VBELN IS INITIAL.
SELECT SINGLE VBELN FROM VBRK
INTO V_VBELN
WHERE VBELN IN S_VBELN.
IF SY-SUBRC <> 0.
MESSAGE E001(ZZ2).
ENDIF.
ENDIF.
IF NOT S_MATNR IS INITIAL.
SELECT SINGLE MATNR FROM MARA
INTO V_MATNR
WHERE MATNR IN S_MATNR.
IF SY-SUBRC <> 0.
MESSAGE E001(ZZ2).
ENDIF.
ENDIF.
***START-OF-SELECTION.
START-OF-SELECTION.
PERFORM GET_DATA_VBRK.
&----
*& Form GET_DATA_VBRK
&----
text
----
--> p1 text
<-- p2 text
----
FORM GET_DATA_VBRK .
SELECT VBELN
WAERK
VKORG
FKDAT
BUKRS
NETWR
INTO TABLE IT_VBRK
FROM VBRK
WHERE VBELN IN S_VBELN
AND FKDAT IN S_FKDAT.
ENDFORM. " GET_DATA_VBRK
&----
*& Form GET_DATA_VBRP
&----
text
----
--> p1 text
<-- p2 text
----
FORM GET_DATA_VBRP .
SELECT VBELN
POSNR
FKIMG
VRKME
NETWR
MATNR
ARKTX
FROM VBRP
INTO TABLE IT_VBRP
WHERE VBELN = IT_VBRK-VBELN.
ENDFORM. " GET_DATA_VBRP
***END-OF-SELECTION.
END-OF-SELECTION.
PERFORM EVENT_LIST.
PERFORM GET_FIELD_CATALOG.
PERFORM LIST_DISP .
&----
*& Form list_disp
&----
text
----
FORM LIST_DISP .
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = ' '
I_BYPASSING_BUFFER = ' '
I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = G_REPID
I_CALLBACK_PF_STATUS_SET = 'POPUP'
I_CALLBACK_USER_COMMAND = 'USER_COMMAND'
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 = WA_LAYOUT
IT_FIELDCAT = IT_FIELDCAT
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
IT_ALV_GRAPHICS =
IT_HYPERLINK =
IT_ADD_FIELDCAT =
IT_EXCEPT_QINFO =
I_HTML_HEIGHT_TOP =
I_HTML_HEIGHT_END =
IMPORTING
E_EXIT_CAUSED_BY_CALLER =
ES_EXIT_CAUSED_BY_USER =
TABLES
T_OUTTAB = IT_VBRK
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. " LIST_DISP
&----
*& Form GET_FIELD_CATALOG
&----
text
----
--> p1 text
<-- p2 text
----
FORM GET_FIELD_CATALOG .
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
I_PROGRAM_NAME = G_REPID
I_INTERNAL_TABNAME = 'IT_VBRK'
I_STRUCTURE_NAME =
I_CLIENT_NEVER_DISPLAY = 'X'
I_INCLNAME = G_REPID
I_BYPASSING_BUFFER =
I_BUFFER_ACTIVE =
CHANGING
CT_FIELDCAT = IT_FIELDCAT
EXCEPTIONS
INCONSISTENT_INTERFACE = 1
PROGRAM_ERROR = 2
OTHERS = 3
.
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. " GET_FIELD_CATALOG
&----
*& Form event_list
&----
text
----
--> p1 text
<-- p2 text
----
FORM EVENT_LIST .
CLEAR WA_EVENT.
WA_EVENT-NAME = 'USER_COMMAND'.
WA_EVENT-FORM = 'USER_COMMAND'.
APPEND WA_EVENT TO T_EVENT.
CLEAR WA_EVENT.
ENDFORM. " event_list
&----
*& Form user_command
&----
text
----
-->R_UCOMM text
-->RS_SELFIELDtext
----
FORM USER_COMMAND USING R_UCOMM LIKE SY-UCOMM
RS_SELFIELD TYPE SLIS_SELFIELD.
CASE R_UCOMM.
WHEN '&IC1'.
READ TABLE IT_VBRK INDEX RS_SELFIELD-TABINDEX.
PERFORM GET_DATA_VBRP.
PERFORM BUILD_FIELDCATALOG_VBRP .
PERFORM DISPLAY_ALV_VBRP.
ENDCASE.
ENDFORM. "user_command
&----
*& Form BUILD_FIELDCATALOG_VBRP
&----
text
----
--> p1 text
<-- p2 text
----
FORM BUILD_FIELDCATALOG_VBRP .
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
I_PROGRAM_NAME = G_REPID
I_INTERNAL_TABNAME = 'IT_VBRP'
I_STRUCTURE_NAME =
I_CLIENT_NEVER_DISPLAY = 'X'
I_INCLNAME = G_REPID
I_BYPASSING_BUFFER =
I_BUFFER_ACTIVE =
CHANGING
CT_FIELDCAT = IT_FIELDCAT
EXCEPTIONS
INCONSISTENT_INTERFACE = 1
PROGRAM_ERROR = 2
OTHERS = 3
.
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. " BUILD_FIELDCATALOG_VBRP
&----
*& Form DISPLAY_ALV_VBRP
&----
text
----
--> p1 text
<-- p2 text
----
FORM DISPLAY_ALV_VBRP .
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_INTERFACE_CHECK = ' '
I_BYPASSING_BUFFER = ' '
I_BUFFER_ACTIVE = ' '
I_CALLBACK_PROGRAM = G_REPID
I_CALLBACK_PF_STATUS_SET = ' '
I_CALLBACK_USER_COMMAND = ' '
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_FIELDCAT
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
IT_ALV_GRAPHICS =
IT_HYPERLINK =
IT_ADD_FIELDCAT =
IT_EXCEPT_QINFO =
I_HTML_HEIGHT_TOP =
I_HTML_HEIGHT_END =
IMPORTING
E_EXIT_CAUSED_BY_CALLER =
ES_EXIT_CAUSED_BY_USER =
TABLES
T_OUTTAB = IT_VBRP
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_ALV_VBRP
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi,
Please check out with the following standard programs:
BALVSD01
BALVSD02
BALVHT01
BALVHD01_GROUP
BALVEX01
BALVBT01
Reward if useful.
Regards,
Sayee
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
90 | |
10 | |
10 | |
10 | |
7 | |
7 | |
6 | |
5 | |
4 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.