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

dates

Former Member
0 Likes
726

in d code below everything is gettin done like in d top of page am getting the header data todays date and number of records.d problem is am taking d data for a period i.e from range of dates using th code

SELECT-OPTIONS DATE FOR VBRP-FBUDA OBLIGATORY.

SELECT * FROM VBRP INTO CORRESPONDING FIELDS OF TABLE IT_VBRP WHERE FBUDA IN DATE .

but am not able to print d dates sat am giving as period.i,e:imagine am giving in output i need data from 1.1.2006 and 1.1.2007 am getting d data but am not getting the two dates dat i gav(1.1.2006 to 1.1.2007)..please help me out

REPORT ZMATERIALS.

TABLES:VBRP,VBRKUK,VBRK,KNA1,MAKT.

TYPE-POOLS:SLIS.

DATA:x type i.

DATA: FIELDCATALOG TYPE SLIS_T_fieldcat_alv with header line,

gd_tab_group type slis_t_sp_group_alv,

gd_layout type slis_layout_alv,

gd_repid like sy-repid.

DATA: it_event TYPE slis_t_event,

wa_event TYPE slis_alv_event,

it_sort TYPE SLIS_T_SORTINFO_ALV,

wa_sort TYPE slis_sortinfo_alv.

  • IT_EVNENTS LIKE .

TYPES:BEGIN OF T_VBRP,

WERKS TYPE VBRP-WERKS,

FBUDA TYPE VBRP-FBUDA,

VBELN TYPE VBRP-VBELN,

MATNR TYPE VBRP-MATNR,

PSTYV TYPE VBRP-PSTYV,

FKLMG TYPE VBRP-FKLMG,

MAKTX TYPE MAKT-MAKTX,

END OF T_VBRP.

DATA: IT_VBRP TYPE STANDARD TABLE OF t_VBRP INITIAL SIZE 0 WITH HEADER LINE,

wa_ekko TYPE t_VBRP.

DATA IT_VBRKUK TYPE STANDARD TABLE OF VBRKUK WITH HEADER LINE.

DATA IT_KNA1 TYPE STANDARD TABLE OF KNA1 WITH HEADER LINE.

DATA IT_MAKT TYPE STANDARD TABLE OF MAKT WITH HEADER LINE.

DATA: BEGIN OF IT_FINAL OCCURS 1,

WERKS LIKE IT_VBRP-WERKS,

VBELN LIKE IT_VBRP-VBELN,

KUNAG LIKE IT_VBRKUK-KUNAG,

MATNR LIKE IT_VBRP-MATNR,

FBUDA LIKE IT_VBRP-FBUDA,

PSTYV LIKE IT_VBRP-PSTYV,

FKLMG LIKE IT_VBRP-FKLMG,

MAKTX LIKE IT_MAKT-MAKTX,

NAME1 LIKE IT_KNA1-NAME1,

END OF IT_FINAL.

SELECT-OPTIONS DATE FOR VBRP-FBUDA OBLIGATORY.

SELECT * FROM VBRP INTO CORRESPONDING FIELDS OF TABLE IT_VBRP WHERE FBUDA IN DATE .

CLEAR VBRP.

START-OF-SELECTION.

SELECT * FROM VBRP INTO CORRESPONDING FIELDS OF TABLE IT_VBRP WHERE FBUDA IN DATE .

IF NOT IT_VBRP[] IS INITIAL.

SELECT * FROM VBRKUK INTO CORRESPONDING FIELDS OF TABLE IT_VBRKUK

FOR ALL ENTRIES IN IT_VBRP WHERE vbeln EQ IT_VBRP-VBELN .

SELECT * FROM MAKT INTO CORRESPONDING FIELDS OF TABLE IT_MAKT

FOR ALL ENTRIES IN IT_VBRP

WHERE MATNR EQ IT_VBRP-MATNR.

ENDIF.

IF NOT IT_VBRKUK[] IS INITIAL.

SELECT * FROM KNA1 INTO CORRESPONDING FIELDS OF TABLE IT_KNA1

FOR ALL ENTRIES IN IT_VBRKUK

WHERE KUNNR EQ IT_VBRKUK-KUNAG.

ENDIF.

END-OF-SELECTION.

IF NOT IT_VBRP[] IS INITIAL.

LOOP AT IT_VBRP.

IF it_VBRP-PSTYV = 'TAN' OR it_VBRP-PSTYV = 'TANN'.

IF it_VBRP-PSTYV = 'TAN'.

X = 0 .

ENDIF.

IF it_VBRP-PSTYV = 'BVN'.

X = 0 .

ENDIF.

IF it_VBRP-PSTYV = 'BVNN'.

X = 0 .

ENDIF.

IF it_VBRP-PSTYV = 'TAS'.

X = 0 .

ENDIF.

IF it_VBRP-PSTYV = 'ZDLP'.

X = 0 .

ENDIF.

IF it_VBRP-PSTYV = 'TANN'.

X = it_VBRP-FKLMG.

*ADD X TO Y.

ENDIF.

*ADD VBRP-FKLMG TO Z.

read table IT_VBRKUK with key vbeln = it_vbrp-vbeln.

IF SY-SUBRC EQ 0.

read table it_kna1 with key kunnr = it_vbrkuk-kunag.

if sy-subrc eq 0.

read table it_makt with key matnr = it_vbrp-matnr.

IF SY-SUBRC EQ 0.

IT_FINAL-WERKS = IT_VBRP-WERKS.

IT_FINAL-FBUDA = IT_VBRP-FBUDA.

IT_FINAL-VBELN = IT_VBRP-VBELN.

IT_FINAL-KUNAG = IT_VBRKUK-KUNAG.

IT_FINAL-MATNR = IT_VBRP-MATNR.

IT_FINAL-PSTYV = IT_VBRP-PSTYV.

IT_FINAL-FKLMG = IT_VBRP-FKLMG.

IT_FINAL-MAKTX = IT_MAKT-MAKTX.

IT_FINAL-NAME1 = IT_KNA1-NAME1.

APPEND IT_FINAL.

endif.

endif.

endif.

ENDIF.

ENDLOOP.

ENDIF.

IF NOT IT_FINAL[] IS INITIAL.

SORT IT_FINAL BY WERKS.

LOOP AT IT_FINAL.

AT NEW WERKS.

  • WRITE:/(7) IT_FINAL-WERKS.

ENDAT.

CLEAR IT_FINAL-WERKS.

*WRITE:/11(10) IT_FINAL-FBUDA,27(18) IT_FINAL-VBELN,49(10) IT_FINAL-KUNAG,62(25) IT_FINAL-NAME1,100(10) IT_FINAL-MATNR,112(25) IT_FINAL-MAKTX,140(10) IT_FINAL-PSTYV,155(20) IT_FINAL-FKLMG .

ENDLOOP.

ENDIF.

*perform data_retrieval.

perform build_fieldcatalog.

perform build_layout.

perform display_alv_report.

PERFORM top-of-page.

FORM build_fieldcatalog.

fieldcatalog-FIELDNAME = 'WERKS'.

fieldcatalog-seltext_m = 'PLANT'.

fieldcatalog-col_pos = 0.

fieldcatalog-tabname = 'it_final'.

APPEND fieldcatalog TO fieldcatalog.

CLEAR fieldcatalog.

fieldcatalog-FIELDNAME = 'FBUDA'.

fieldcatalog-seltext_m = 'DATE'.

fieldcatalog-tabname = 'it_final'.

fieldcatalog-col_pos = 1.

APPEND fieldcatalog TO fieldcatalog.

CLEAR fieldcatalog.

fieldcatalog-FIELDNAME = 'VBELN'.

fieldcatalog-seltext_m = 'DOCUMENT NUMBER'.

fieldcatalog-tabname = 'it_final'.

fieldcatalog-col_pos = 2.

APPEND fieldcatalog TO fieldcatalog.

CLEAR fieldcatalog.

fieldcatalog-FIELDNAME = 'KUNAG'.

fieldcatalog-seltext_m = 'CUSTOMER NUMBER'.

fieldcatalog-tabname = 'it_final'.

fieldcatalog-col_pos = 3.

APPEND fieldcatalog TO fieldcatalog.

CLEAR fieldcatalog.

fieldcatalog-FIELDNAME = 'NAME1'.

fieldcatalog-seltext_m = 'CUSTOMER DESCRIPTION'.

fieldcatalog-tabname = 'it_final'.

fieldcatalog-col_pos = 4.

APPEND fieldcatalog TO fieldcatalog.

CLEAR fieldcatalog.

fieldcatalog-FIELDNAME = 'MATNR'.

fieldcatalog-seltext_m = 'MATERIAL NUMBER'.

fieldcatalog-col_pos = 5.

fieldcatalog-tabname = 'it_final'.

APPEND fieldcatalog TO fieldcatalog.

CLEAR fieldcatalog.

fieldcatalog-FIELDNAME = 'MAKTX'.

fieldcatalog-seltext_m = 'MATERIAL TEXT'.

fieldcatalog-tabname = 'it_final'.

fieldcatalog-col_pos = 6.

APPEND fieldcatalog TO fieldcatalog.

CLEAR fieldcatalog.

fieldcatalog-FIELDNAME = 'PSTYV'.

fieldcatalog-seltext_m = 'ITEM TEXT'.

fieldcatalog-tabname = 'it_final'.

fieldcatalog-col_pos = 7.

APPEND fieldcatalog TO fieldcatalog.

CLEAR fieldcatalog.

fieldcatalog-FIELDNAME = 'FKLMG'.

fieldcatalog-seltext_m = 'BILLING QUANTITY'.

fieldcatalog-tabname = 'it_final'.

fieldcatalog-col_pos = 8.

APPEND fieldcatalog TO fieldcatalog.

CLEAR fieldcatalog.

ENDFORM.

form build_layout.

gd_layout-no_input = 'X'.

gd_layout-colwidth_optimize = 'X'.

gd_layout-totals_text = 'Totals'(500).

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'

is_layout = gd_layout

it_fieldcat = FIELDCATALOG[]

I_SAVE = 'X'

TABLES

t_outtab = it_final

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.

*i_callback_top_of_page = 'TOP-OF-PAGE'.

ENDFORM.

Form top-of-page.

*ALV Header declarations

data: t_header type slis_t_listheader,

wa_header type slis_listheader,

t_line like wa_header-info,

ld_lines type i,

ld_linesc(10) type c.

  • Title

wa_header-typ = 'H'.

wa_header-info = 'BILLING QUANTITY vs FREE QUANTITY'.

append wa_header to t_header.

clear wa_header.

  • Date

wa_header-typ = 'S'.

wa_header-key = 'Date: '.

CONCATENATE sy-datum+6(2) '.'

sy-datum+4(2) '.'

sy-datum(4) INTO wa_header-info. "todays date

append wa_header to t_header.

clear: wa_header.

  • Total No. of Records Selected

describe table IT_FINAL lines ld_lines.

ld_linesc = ld_lines.

concatenate 'Total No. of Records Selected: ' ld_linesc

into t_line separated by space.

wa_header-typ = 'A'.

wa_header-info = t_line.

append wa_header to t_header.

clear: wa_header, t_line.

call function 'REUSE_ALV_COMMENTARY_WRITE'

exporting

it_list_commentary = t_header.

  • i_logo = 'Z_LOGO'.

endform.

5 REPLIES 5
Read only

Former Member
0 Likes
685

wa_header-typ = 'S'.

wa_header-key = 'Date: '.

CONCATENATE <b>date-low 'to' date-high</b> INTO wa_header-info.

append wa_header to t_header.

clear: wa_header.

Read only

Former Member
0 Likes
685
  • Date

wa_header-typ = 'S'.
wa_header-key = 'Date: '.

<b>CONCATENATE date-low+6(2) '.'

date-low+4(2) '.'

date-low(4) 'To' date-high+6(2) '.'

date-high+4(2) '.'

date-high(4)</b>

INTO wa_header-info. "todays date
append wa_header to t_header.
clear: wa_header.

hope this helsp.

Read only

Former Member
0 Likes
685

See you need to do this first

CALL FUNCTION 'REUSE_ALV_EVENTS_GET'

EXPORTING

i_list_type = 0

IMPORTING

et_events = gi_events.

READ TABLE gi_events INTO wa_event

WITH KEY name = slis_ev_top_of_page.

IF sy-subrc EQ 0.

MOVE gc_formname_top_of_page TO wa_event-form.

APPEND wa_event TO gi_events .

ENDIF.

then you need to pass in the FM REUSE_ALV_GRID_DISPLAY

the parameters it_events = gi_events[]

others thisng is that you need to remove the i callback_top_of_page parameter. this ios not required

Message was edited by:

Ravikumar P

Read only

Former Member
0 Likes
685

HI Vijay Krishna,

Use the following code in your TOP-OF-PAGE section:

*-To display the select-option screen

CALL FUNCTION 'RS_REFRESH_FROM_SELECTOPTIONS'

EXPORTING

CURR_REPORT = C_PRG

TABLES

SELECTION_TABLE = IT_VARI_TAB

EXCEPTIONS

NOT_FOUND = 1

NO_REPORT = 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.

SORT IT_VARI_TAB BY SELNAME .

*-Generates list according to values in selection table(RSPARAMS)

CALL FUNCTION 'RS_LIST_SELECTION_TABLE'

EXPORTING

REPORT = C_PRG

SELTEXT = 'X'

TABLES

SEL_TAB = IT_VARI_TAB.

REgards,

Ravi

Read only

Former Member
0 Likes
685

thanks