‎2006 Nov 01 7:46 AM
i need to add check boxes in alv report and send the data selected to another report and do nedd so how to
‎2006 Nov 01 7:50 AM
HI,
look into following program.
REPORT ZWA_FI_ANNUAL_REPORT .
TYPE-POOLS: slis.
TABLES: BKPF, BSIS, PAYR.
TYPES: begin of itab_post_type,
bukrs type bkpf-bukrs,
belnr type bkpf-belnr,
gjahr type bkpf-gjahr,
blart type bkpf-blart,
bstat type bkpf-bstat,
hkont type bsis-hkont,
shkzg type bsis-shkzg,
wrbtr type bsis-wrbtr,
end of itab_post_type.
DATA: begin of itab_post occurs 0,
bukrs like bkpf-bukrs,
belnr like bkpf-belnr,
gjahr like bkpf-gjahr,
blart like bkpf-blart,
bstat like bkpf-bstat,
hkont like bsis-hkont,
shkzg like bsis-shkzg,
wrbtr like bsis-wrbtr,
flag(1),
end of itab_post.
*DATA: itab_post type standard table of itab_post_type INITIAL SIZE 0
*with header line.
data: fm_name TYPE rs38l_fnam.
data v_repid like sy-repid.
DATA: it_fieldcat TYPE slis_t_fieldcat_alv WITH HEADER LINE,
heading TYPE slis_t_listheader,
gs_layout TYPE slis_layout_alv,
gx_variant LIKE disvariant,
g_variant LIKE disvariant,
g_exit(1) TYPE c,
g_save(1) TYPE c,
gt_list_top_of_page TYPE slis_t_listheader,
gt_events TYPE slis_t_event,
olen TYPE i,
pageno TYPE n,
filename LIKE sy-repid.
DATA: IT_EXCL_BUTT type SLIS_T_EXTAB.
data: wa_excl_buttons type SLIS_EXTAB.
data: header type slis_keyinfo_alv.
data: wa_header type slis_keyinfo_alv.
v_repid = sy-repid.
"-----------------------------------------------"
" Selection screen for entering search criteria "
"-----------------------------------------------"
select-options:bukrs for bsis-bukrs,
gjahr for bkpf-gjahr,
prctr for bsis-prctr,
kostl for bsis-kostl,
belnr for bsis-belnr,
budat for bsis-budat,
bldat for bkpf-bldat,
hkont for bsis-hkont,
blart for bkpf-blart,
uname for bkpf-usnam.
SELECT bk~bukrs bk~belnr
bk~gjahr bk~blart
bk~bstat bs~hkont
bs~shkzg bs~wrbtr
*INTO TABLE itab_post
INTO (itab_post-bukrs, itab_post-belnr,
itab_post-gjahr, itab_post-blart,
itab_post-bstat, itab_post-hkont,
itab_post-shkzg, itab_post-wrbtr )
FROM bkpf as bk
JOIN bsis as bs
ON ( bk~belnr = bs~belnr AND
bk~bukrs = bs~bukrs AND
bk~gjahr = bs~gjahr )
WHERE bk~belnr IN belnr AND
bk~gjahr IN gjahr AND
bk~bukrs IN bukrs AND
bk~blart IN blart AND
bk~bldat IN bldat AND
bk~usnam IN uname AND
bs~hkont IN hkont AND
bs~kostl IN kostl.
append itab_post.
ENDSELECT.
PERFORM field_catalog.
<b>
gs_layout-box_fieldname = 'FLAG'.</b>
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
i_callback_program = v_repid
i_callback_user_command = 'ITAB_USER_COMMAND'
is_layout = gs_layout
i_background_id ='CGA'
i_grid_title ='Employee Cheque Advice'
it_fieldcat = it_fieldcat[]
i_save = g_save
is_variant = g_variant
it_events = gt_events[]
TABLES
t_outtab = itab_post
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.
**
**ENDLOOP.
*&---------------------------------------------------------------------*
*& Form field_catalog
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM field_catalog.
*There are other fields in this structure and can be used accordingly
*for different purposes like no_zero, round, no_sign etc.
DATA: wa_fieldcat TYPE slis_fieldcat_alv.
call function 'REUSE_ALV_FIELDCATALOG_MERGE'
exporting
i_program_name = v_repid
i_internal_tabname = 'ITAB_POST'
* I_STRUCTURE_NAME =
* I_CLIENT_NEVER_DISPLAY = 'X'
i_inclname = v_repid
* I_BYPASSING_BUFFER =
* I_BUFFER_ACTIVE =
changing
ct_fieldcat = it_fieldcat[] .
ENDFORM. " field_catalog
*---------------------------------------------------------------------*
* FORM itab_user_command *
*---------------------------------------------------------------------*
* ........ *
*---------------------------------------------------------------------*
* --> WHATCOMM *
* --> WHATROW *
*---------------------------------------------------------------------*
FORM itab_user_command USING whatcomm TYPE sy-ucomm whatrow TYPE
slis_selfield.
<b>data: msg(100).
LOOP AT itab_post.
if itab_post-flag = 'X'.
msg = sy-tabix.
condense msg.
concatenate 'Row Number ' msg ' ' into msg
separated by space.
message i000(su) with msg.
endif.
ENDLOOP.</b>
ENDFORM.
REgards,
‎2006 Nov 01 7:56 AM
Declare a field ckh(1) type C in ur final internal table whihc u r passing to ALV.
And at output using these statements
loop at itab where chk = 'X'.
move itab to itab2
endloop.
then use itab2 to generate another report.
Regards
- Gopi
‎2006 Nov 01 7:59 AM
Hi Rakhee,
It would be better if you can give a slightly better title (for eg. "Adding checkboxes in ALV report" ). It would attract the people who are experts in that particular area than have a generic titles like "ABAP". Also it would much useful for people who search for similiar requirements in archives. Just a suggestion to make things better :-).
Thanks,
Prasath N
‎2006 Nov 01 8:03 AM
ok see i will have two fields which i need to send another report selection screen.
now what ever the selected values are there through check boxes i need to check first checkbox values and do the cal in next report ,if it does not meet then i should go to next cheeck box value and do.
so how to do plz tel