Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Alv_GRID BAR

Former Member
0 Likes
1,205

Hello Abap experts,

I need to create an alv_grid with a bar at the very beginning of the columns as it is in IW28. I use REUSE_ALV_GRID_DISPLAY.

Thanks in advance.

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
1,177

Is your Problem solved?

Rgds,

Mayank

Hello Abap experts,

I need to create an alv_grid with a bar at the very beginning of the columns as it is in IW28. I use REUSE_ALV_GRID_DISPLAY.

Thanks in advance.

9 REPLIES 9
Read only

Former Member
0 Likes
1,177

Do u mean ,bar by which you can select all the lines of the grid?

Rgds,

mayank

Read only

0 Likes
1,177

yes. I mean exactly that bar which you can select the line.

Read only

0 Likes
1,177

Add first columnto your final structure :

TYPES: begin of ty_final,

SEL type c,

than all your output fields.

end of ty_final.

in layout for grid, fill this gd_layout-box_fieldname = 'SEL'.

Rgds,

Mayank

Read only

0 Likes
1,177

Im using REUSE_ALV_GRID_DISPLAY.

Not OOP.:(

Read only

0 Likes
1,177

it has nothing to do with Oops..

in the reuse_alv_grid_display we can use it.

Let us know how you have coded.

Rgds,

Mayank

Read only

0 Likes
1,177

*&----


*

*& Report ZREP_IW28

*&

*&----


*

*&

*&

*&----


*

REPORT ZREP_IW28.

TABLES: VIQMEL.

TYPE-POOLS : slis.

DATA: BEGIN OF object_tab OCCURS 0.

DATA: QMNUM type QMNUM,

QMTXT type QMTXT,

TPLNR type TPLNR,

EQUNR type EQUNR,

AUSVN TYPE AUSVN,

AUSBS type AUSBS,

AUZTV type AUZTV,

AUZTB type AUZTB,

MSAUS type MSAUS,

MZEIT type MZEIT,

QMDAT type QMDAT,

QMDAB type QMDAB,

QMZAB type QMZAB,

ERDAT type ERDAT,

AEDAT type AEDAT,

ERZEIT type ERZEIT,

AEZEIT type AEZEIT,

ZZTIMEDIFF1 type zdtdiff,

ZZTIMEDIFF2 type zdtdiff_2,

ZZTIMEDIFF3 type zdtdiff_3. "497622

DATA END OF object_tab.

"**********************************************

Data:gs_object_tab like LINE OF object_tab.

Data:gt_object_tab like object_tab OCCURS 0.

"***********************************************

SELECTION-SCREEN BEGIN OF BLOCK choice WITH FRAME TITLE text-003.

SELECTION-SCREEN BEGIN OF LINE.

SELECTION-SCREEN POSITION 15.

PARAMETERS: rb1 RADIOBUTTON GROUP rb.

SELECTION-SCREEN COMMENT 20(30) text-001.

SELECTION-SCREEN END OF LINE.

SELECTION-SCREEN BEGIN OF LINE.

SELECTION-SCREEN POSITION 15.

PARAMETERS: rb2 RADIOBUTTON GROUP rb.

SELECTION-SCREEN COMMENT 20(30) text-002.

SELECTION-SCREEN END OF LINE.

SELECTION-SCREEN END OF BLOCK choice.

SELECTION-SCREEN BEGIN OF BLOCK choice2 WITH FRAME TITLE text-004.

SELECTION-SCREEN BEGIN OF LINE.

SELECTION-SCREEN POSITION 25.

SELECT-OPTIONS:

tplnr for viqmel-tplnr.

SELECTION-SCREEN COMMENT 5(15) text-005.

SELECTION-SCREEN END OF LINE.

SELECTION-SCREEN BEGIN OF LINE.

SELECTION-SCREEN POSITION 25.

SELECT-OPTIONS:

equnr for viqmel-equnr.

SELECTION-SCREEN COMMENT 5(15) text-006.

SELECTION-SCREEN END OF LINE.

SELECTION-SCREEN END OF BLOCK choice2.

INITIALIZATION.

START-OF-SELECTION.

  • IF rb1 eq 'X'.

"WRITE:/ 'Ilk Radio Button seçili'.

"""""""""""""""""""""""""""""""""""""""""""""

Select

QMNUM QMTXT AUSVN AUSBS AUZTV

AUZTB MSAUS MZEIT QMDAT QMDAB

QMZAB TPLNR ERDAT AEDAT ERZEIT

AEZEIT ZZTIMEDIFF1 ZZTIMEDIFF2 ZZTIMEDIFF3

from VIQMEL

into CORRESPONDING FIELDS OF TABLE object_tab

WHERE tplnr in tplnr AND equnr in equnr.

DATA: zaman2 TYPE i,

zaman1 TYPE i,

zaman3 TYPE i,

deger TYPE f,

deger2 TYPE f,

deger3 TYPE f.

IF rb1 eq 'X'."*******************************************************************

LOOP AT object_tab into gs_object_tab.

"***************************************************

deger = 0.

deger2 = 0.

deger3 = 0.

*************************************************"BAKIM SURESI

CALL FUNCTION 'SWI_DURATION_DETERMINE'

EXPORTING

START_DATE = gs_object_tab-ERDAT

END_DATE = gs_object_tab-AEDAT

START_TIME = gs_object_tab-ERZEIT

END_TIME = gs_object_tab-AEZEIT

IMPORTING

DURATION = zaman1.

deger = zaman1 / 60 / 60.

gs_object_tab-ZZTIMEDIFF2 = deger.

**********************************************

CALL FUNCTION 'SWI_DURATION_DETERMINE' "BEKLEME SURESI

EXPORTING

START_DATE = gs_object_tab-QMDAT

END_DATE = gs_object_tab-ERDAT

START_TIME = gs_object_tab-MZEIT

END_TIME = gs_object_tab-ERZEIT

IMPORTING

DURATION = zaman2.

deger2 = zaman2 / 60 / 60.

gs_object_tab-ZZTIMEDIFF1 = deger2.

""""""""""""""""""""""""""""""""""""" Toplam Arıza Suresi

gs_object_tab-ZZTIMEDIFF3 = deger + deger2.

""""""""""""""""""""""""""""""""""""".

MODIFY object_tab from gs_object_tab.

ENDLOOP.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

I_CALLBACK_PROGRAM = 'ZREP_IW28'

I_CALLBACK_USER_COMMAND = 'USER_COMMAND2'

I_STRUCTURE_NAME = 'ZBKMTKPTRH'

TABLES

T_OUTTAB = object_tab

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.

ELSE.""HEPSİ SEÇİLİ DEĞİLSE*******************************************************

LOOP AT object_tab into gs_object_tab.

"***************************************************

deger = 0.

deger2 = 0.

deger3 = 0.

*************************************************"BAKIM SURESI

CALL FUNCTION 'SWI_DURATION_DETERMINE'

EXPORTING

START_DATE = gs_object_tab-ERDAT

END_DATE = gs_object_tab-AEDAT

START_TIME = gs_object_tab-ERZEIT

END_TIME = gs_object_tab-AEZEIT

IMPORTING

DURATION = zaman1.

deger = zaman1 / 60 / 60.

gs_object_tab-ZZTIMEDIFF2 = deger.

*****************************************************"BEKLEME SURESI

CALL FUNCTION 'SWI_DURATION_DETERMINE'

EXPORTING

START_DATE = gs_object_tab-QMDAT

END_DATE = gs_object_tab-ERDAT

START_TIME = gs_object_tab-MZEIT

END_TIME = gs_object_tab-ERZEIT

IMPORTING

DURATION = zaman2.

deger2 = zaman2 / 60 / 60.

gs_object_tab-ZZTIMEDIFF1 = deger2.

*****************************************"Toplam Arıza Suresi

gs_object_tab-ZZTIMEDIFF3 = deger + deger2.

DATA : WA_TIME TYPE IMRG-ITIME.

WA_TIME = gs_object_tab-auztv + 59.

if ( gs_object_tab-qmdat ne '00000000' and gs_object_tab-ausvn ne '00000000').

if ( gs_object_tab-qmdat > gs_object_tab-ausvn ) or

( gs_object_tab-qmdat eq gs_object_tab-ausvn and gs_object_tab-mzeit > WA_TIME ).

APPEND gs_object_tab to gt_object_tab.

endif.

endif.

ENDLOOP.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

I_CALLBACK_PROGRAM = 'ZREP_IW28'

I_CALLBACK_USER_COMMAND = 'USER_COMMAND2'

I_STRUCTURE_NAME = 'ZBKMTKPTRH'

TABLES

T_OUTTAB = gt_object_tab

EXCEPTIONS

PROGRAM_ERROR = 1

OTHERS = 2.

ENDIF.

FORM USER_COMMAND2 USING R_UCOMM LIKE sy-ucomm

RS_SELFIELD TYPE SLIS_SELFIELD.

CASE R_UCOMM.

when '&IC1'.

ENDCASE.

ENDFORM.

Read only

0 Likes
1,177

See the same code:

TABLES: ekko.

type-pools: slis.                                 
TYPES: BEGIN OF t_ekko,
  SEL   type c,
  ebeln TYPE ekpo-ebeln,
  ebelp TYPE ekpo-ebelp,
  statu TYPE ekpo-statu,
  aedat TYPE ekpo-aedat,
  matnr TYPE ekpo-matnr,
  menge TYPE ekpo-menge,
  meins TYPE ekpo-meins,
  netpr TYPE ekpo-netpr,
  peinh TYPE ekpo-peinh,
 END OF t_ekko.

form build_layout.
  gd_layout-no_input          = 'X'.
  gd_layout-colwidth_optimize = 'X'.
  gd_layout-totals_text       = 'Totals'(500).
*  gd_layout-totals_only        = 'X'.
*  gd_layout-f2code            = 'DISP'.  
*  gd_layout-zebra             = 'X'.
*  gd_layout-group_change_edit = 'X'.
  gd_layout-box_fieldname = 'SEL'.                               "Add this here
endform.                  

form display_alv_report.
  gd_repid = sy-repid.
  call function 'REUSE_ALV_GRID_DISPLAY'
       exporting
            i_callback_program      = gd_repid
*            i_callback_top_of_page   = 'TOP-OF-PAGE'  
*            i_callback_user_command = 'USER_COMMAND'
*            i_grid_title           = outtext
            is_layout               = gd_layout                           "Add it here
            it_fieldcat             = fieldcatalog[]
*            it_special_groups       = gd_tabgroup
*            IT_EVENTS                = GT_XEVENTS
            i_save                  = 'X'
*            is_variant              = z_template

       tables
            t_outtab                = it_ekko
       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_REPORT


form data_retrieval.

select ebeln ebelp statu aedat matnr menge meins netpr peinh

  from ekpo
  into CORRESPONDING FIELDS OF TABLE  it_ekko.
endform.

Hope this wil help you..

Rgds,

Mayank

Edited by: mayank verdia on Sep 2, 2010 2:22 PM

Read only

Former Member
0 Likes
1,178

Is your Problem solved?

Rgds,

Mayank

Read only

0 Likes
1,177

Yes, Thank you so much. I appreciate it.:)