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

Interactive report

Former Member
0 Likes
724

Hi,

I have an issue, will appriciate your help. I am tring to write a report.

The output of the report will be data from file and data from table. And I need to give check box besides each item. The user will select few of this check box.

In the next screen only the once selected should be displayed with more details.

My question here is 1. How can I do this report, wether I should use interactive reports or is there any other way.

If interactive then how can i give check boxs for each item in output of first screen and how can i show that in output in 2nd screen.

Thanks.

Oscar.

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
696

Hi,

first it will ask for EBELN.

If give EBELN, then it will give you one ALV LIST.(which shows purchase order header details).

that list has check boxes also.

In the menu bar, there will be one push button calld DISPLAY.

If select any of the check boxes, and if yu press that DISPLAY Button, then one POPUP LIST will come which contains Purchase Organization data related selected EBELN thru check box.

And If you double click on any EBELN, in the next screen, it will display Purchase Order Itemm details related to that EBELN.

Regards

Sandeep Reddy

6 REPLIES 6
Read only

Former Member
0 Likes
696

Hi,

Try to do this as ALV.

Here I am giving you the code.

First execute this, you wil get an idea.

How it luks and how it works.

REPORT z50871_alv_griddisplay message-id z50871msg.

----


  • STRUCTURE DECLARATIONS

  • INTERNAL TABLE DECLARATIONS

  • WORKAREA DECLARATIONS

  • TYPE-POOLS DECLARATION

----


TYPE-POOLS : slis.

TYPES : BEGIN OF st_ekko,

ebeln TYPE ekko-ebeln, "Purchasing Document Number

bstyp TYPE ekko-bstyp, "Purchasing Document Category

bsart TYPE ekko-bsart, "Purchasing Document Type

aedat TYPE ekko-aedat, "record created on

ernam TYPE ekko-ernam, "Person who Created the Object

check(1),

END OF st_ekko.

TYPES : BEGIN OF st_ekpo,

ebeln TYPE ekko-ebeln,

ebelp TYPE ekpo-ebelp, "Item Number of Purchasing Document

ematn TYPE ekpo-ematn, "Material number

matkl TYPE ekpo-matkl, "Material group

netpr TYPE ekpo-netpr, "Net price in purchasing document

END OF st_ekpo.

TYPES : BEGIN OF st_ebeln,

ebeln TYPE ekpo-ebeln,

END OF st_ebeln.

TYPES : BEGIN OF st_eine,

ebeln TYPE ekko-ebeln,

ekorg TYPE eine-ekorg,

ekgrp TYPE eine-ekgrp,

END OF st_eine.

TYPES : BEGIN OF st_check,

check(1),

END OF st_check.

DATA : it_ekpo TYPE STANDARD TABLE OF st_ekpo,

it_ekko TYPE STANDARD TABLE OF st_ekko,

wa_ekko LIKE LINE OF it_ekko,

it_fieldcat TYPE slis_t_fieldcat_alv,

wa_fieldcat LIKE LINE OF it_fieldcat,

wa_layout TYPE slis_layout_alv,

it_events TYPE slis_t_event,

st_event LIKE LINE OF it_events,

it_listheadr TYPE slis_t_listheader ,

wa_listheadr LIKE LINE OF it_listheadr,

st_printparams TYPE slis_print_alv,

it_sortinfo TYPE slis_t_sortinfo_alv,

wa_sortinfo LIKE LINE OF it_sortinfo,

it_ekposortinfo TYPE slis_t_sortinfo_alv,

wa_ekposortinfo LIKE LINE OF it_ekposortinfo,

it_filter TYPE slis_t_filter_alv,

it_ebeln TYPE STANDARD TABLE OF st_ebeln,

it_eine TYPE STANDARD TABLE OF st_eine,

wa_eine TYPE st_eine,

it_popup TYPE STANDARD TABLE OF st_eine,

wa_popup TYPE st_eine,

it_check TYPE STANDARD TABLE OF st_check,

wa_check TYPE st_check.

DATA : v_ebeln TYPE ekko-ebeln.

----


  • SELECTION-SCREEN

----


SELECTION-SCREEN BEGIN OF BLOCK b WITH FRAME TITLE tit.

SELECT-OPTIONS: so_ebeln FOR v_ebeln OBLIGATORY.

SELECTION-SCREEN END OF BLOCK b.

----


  • INITIALIZATION

----


INITIALIZATION.

tit = text-000.

----


  • AT SELECTION-SCREEN ON

----


AT SELECTION-SCREEN ON so_ebeln.

PERFORM validate_ebeln.

----


  • START-OF-SELECTION

----


START-OF-SELECTION.

PERFORM get_ekko_data.

PERFORM get_eine_data.

----


  • END-OF-SELECTION

----


END-OF-SELECTION.

PERFORM populate_fieldcat1.

PERFORM populate_layout.

PERFORM get_eventlist.

PERFORM get_ekkosortinfo.

PERFORM ekkodisplay_onalv.

&----


*& Form POPULATE_FIELDCAT1

&----


FORM populate_fieldcat1.

wa_fieldcat-fieldname = 'EBELN'.

wa_fieldcat-seltext_l = text-004.

wa_fieldcat-no_zero = 'X'.

APPEND wa_fieldcat TO it_fieldcat.

wa_fieldcat-fieldname = 'BSTYP'.

wa_fieldcat-seltext_l = text-005.

APPEND wa_fieldcat TO it_fieldcat.

wa_fieldcat-fieldname = 'BSART'.

wa_fieldcat-seltext_l = text-006.

APPEND wa_fieldcat TO it_fieldcat.

wa_fieldcat-fieldname = 'AEDAT'.

wa_fieldcat-seltext_l = text-007.

APPEND wa_fieldcat TO it_fieldcat.

wa_fieldcat-fieldname = 'ERNAM'.

wa_fieldcat-seltext_l = text-008.

APPEND wa_fieldcat TO it_fieldcat.

ENDFORM. "POPULATE_FIELDCAT1

&----


*& Form populate_fieldcat2

&----


FORM populate_fieldcat2 .

CLEAR wa_fieldcat.

CLEAR it_fieldcat.

REFRESH it_fieldcat.

wa_fieldcat-fieldname = 'EBELN'.

wa_fieldcat-seltext_l = text-004.

wa_fieldcat-hotspot = 'X'.

  • wa_fieldcat-no_zero = 'X'.

APPEND wa_fieldcat TO it_fieldcat.

wa_fieldcat-fieldname = 'EBELP'.

wa_fieldcat-seltext_l = text-009.

APPEND wa_fieldcat TO it_fieldcat.

wa_fieldcat-fieldname = 'EMATN'.

wa_fieldcat-seltext_l = text-010.

APPEND wa_fieldcat TO it_fieldcat.

wa_fieldcat-fieldname = 'MATKL'.

wa_fieldcat-seltext_l = text-011.

APPEND wa_fieldcat TO it_fieldcat.

wa_fieldcat-fieldname = 'NETPR'.

wa_fieldcat-seltext_l = text-012.

wa_fieldcat-datatype = 'CURR'. "Obligatory to perform SUM

wa_fieldcat-do_sum = 'X'.

APPEND wa_fieldcat TO it_fieldcat.

ENDFORM. "populate_fieldcat2

&----


*& Form GET_EVENTLIST

&----


FORM get_eventlist.

CALL FUNCTION 'REUSE_ALV_EVENTS_GET'

EXPORTING

i_list_type = 0

IMPORTING

et_events = it_events[]

EXCEPTIONS

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

READ TABLE it_events WITH KEY name = slis_ev_pf_status_set INTO st_event.

IF sy-subrc EQ 0.

st_event-form = 'SET_PF_STATUS1'.

APPEND st_event TO it_events.

CLEAR st_event.

ENDIF.

READ TABLE it_events WITH KEY name = slis_ev_end_of_page INTO st_event.

IF sy-subrc EQ 0.

st_event-form = 'END_OF_PAGE'.

APPEND st_event TO it_events.

CLEAR st_event.

ENDIF.

ENDFORM. "GET_EVENTLIST

&----


*& Form ekpodisplay_onalv

&----


FORM ekpodisplay_onalv .

IF it_ekpo[] IS INITIAL.

MESSAGE 'NO DATA FOUND' TYPE 'I'.

ELSE.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'

EXPORTING

i_callback_program = sy-repid

i_callback_pf_status_set = 'SET_PF_STATUS'

i_callback_user_command = 'AT_USER_COMMAND1'

i_callback_top_of_page = 'TOP_OF_PAGE'

  • I_CALLBACK_HTML_TOP_OF_PAGE = ' '

  • I_CALLBACK_HTML_END_OF_LIST = ' '

  • I_STRUCTURE_NAME = I_STRUCTURE_NAME

  • I_BACKGROUND_ID = ' '

  • I_GRID_TITLE = I_GRID_TITLE

  • I_GRID_SETTINGS = I_GRID_SETTINGS

is_layout = wa_layout

it_fieldcat = it_fieldcat

  • IT_EXCLUDING = IT_EXCLUDING

  • IT_SPECIAL_GROUPS = IT_SPECIAL_GROUPS

it_sort = it_ekposortinfo[]

  • IT_FILTER = IT_FILTER

  • IS_SEL_HIDE = IS_SEL_HIDE

  • I_DEFAULT = 'X'

  • I_SAVE = ' '

  • IS_VARIANT = IS_VARIANT

  • it_events = it_events

  • IT_EVENT_EXIT = IT_EVENT_EXIT

  • IS_PRINT = IS_PRINT

  • IS_REPREP_ID = IS_REPREP_ID

  • I_SCREEN_START_COLUMN = 0

  • I_SCREEN_START_LINE = 0

  • I_SCREEN_END_COLUMN = 0

  • I_SCREEN_END_LINE = 0

  • I_HTML_HEIGHT_TOP = 0

  • I_HTML_HEIGHT_END = 0

  • IT_ALV_GRAPHICS = IT_ALV_GRAPHICS

  • IT_HYPERLINK = IT_HYPERLINK

  • IT_ADD_FIELDCAT = IT_ADD_FIELDCAT

  • IT_EXCEPT_QINFO = IT_EXCEPT_QINFO

  • IR_SALV_FULLSCREEN_ADAPTER = IR_SALV_FULLSCREEN_ADAPTER

  • IMPORTING

  • E_EXIT_CAUSED_BY_CALLER = E_EXIT_CAUSED_BY_CALLER

  • ES_EXIT_CAUSED_BY_USER = ES_EXIT_CAUSED_BY_USER

TABLES

t_outtab = it_ekpo

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.

ENDIF.

ENDFORM. "ekpodisplay_onalv

&----


*& Form SET_PF_STATUS1

&----


FORM set_pf_status1 USING rt_extab TYPE slis_t_extab.

SET PF-STATUS 'MENU' excluding rt_extab. "Copy from SALV .

ENDFORM. "SET_PF_STATUS1

&----


*& Form SET_PF_STATUS

&----


FORM set_pf_status USING rt_extab TYPE slis_t_extab.

SET PF-STATUS 'STANDARD' excluding rt_extab. "Copy from SALV .

ENDFORM. "SET_PF_STATUS

&----


*& Form AT_user_command

&----


FORM at_user_command USING r_ucomm LIKE sy-ucomm

rs_selfield TYPE slis_selfield.

CASE r_ucomm.

WHEN '&IC1'.

IF rs_selfield-fieldname EQ 'EBELN'.

READ TABLE it_ekko INTO wa_ekko INDEX rs_selfield-tabindex.

SELECT ebeln ebelp ematn matkl netpr

FROM ekpo

INTO TABLE it_ekpo

WHERE ebeln EQ wa_ekko-ebeln.

PERFORM populate_fieldcat2.

PERFORM populate_layout2.

PERFORM get_ekposortinfo.

PERFORM ekpodisplay_onalv.

ELSE.

MESSAGE i020(z50871msg) WITH text-013.

ENDIF.

WHEN 'SE16'.

CALL TRANSACTION 'SE16'.

WHEN 'SE37'.

CALL TRANSACTION 'SE37'.

WHEN 'DISP'.

PERFORM get_popupdata.

PERFORM get_popupfcat.

PERFORM display_popup.

ENDCASE.

ENDFORM. "AT_user_command

&----


*& Form TOP_OF_PAGE

&----


FORM top_of_page.

REFRESH it_listheadr.

wa_listheadr-typ = 'H'.

wa_listheadr-info = text-001.

APPEND wa_listheadr TO it_listheadr.

CLEAR wa_listheadr.

CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'

EXPORTING

it_list_commentary = it_listheadr[]

i_logo = 'ENJOYSAP_LOGO'. "From OAER transaction

ENDFORM. "TOP_OF_PAGE

&----


*& Form build_print_params

&----


FORM build_print_params.

st_printparams-reserve_lines = '3'. "Lines reserved for footer

st_printparams-no_coverpage = 'X'.

ENDFORM. "build_print_params

&----


*& Form end_of_page

&----


FORM end_of_page.

REFRESH it_listheadr.

wa_listheadr-typ = 'H'.

wa_listheadr-info = sy-pagno.

APPEND wa_listheadr TO it_listheadr.

CLEAR wa_listheadr.

CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'

EXPORTING

it_list_commentary = it_listheadr[].

ENDFORM. "end_of_page

&----


*& Form GET_EKPOSORTINFO

&----


FORM get_ekposortinfo.

wa_ekposortinfo-up = 'X'.

wa_ekposortinfo-spos = 1.

wa_ekposortinfo-fieldname = 'EBELP'.

wa_ekposortinfo-tabname = 'EKPO'.

APPEND wa_ekposortinfo TO it_ekposortinfo.

CLEAR wa_ekposortinfo.

wa_ekposortinfo-up = 'X'.

wa_ekposortinfo-spos = 2.

wa_ekposortinfo-fieldname = 'EMATN'.

wa_ekposortinfo-tabname = 'EKPO'.

APPEND wa_ekposortinfo TO it_ekposortinfo.

CLEAR wa_ekposortinfo.

ENDFORM. "GET_EKPOSORTINFO

*

&----


*& Form POPULATE_LAYOUT

&----


FORM populate_layout.

wa_layout-colwidth_optimize = 'X'. "column width

wa_layout-zebra = 'X'.

  • wa_layout-no_hline = 'X'.

  • wa_layout-no_vline = 'X'.

  • wa_layout-cell_merge = 'X'.

wa_layout-box_fieldname = 'CHECK'.

wa_layout-box_tabname = 'IT_EKKO'.

wa_layout-window_titlebar = 'PURCHASE ORDER HEADER DETAILS'.

ENDFORM. "POPULATE_LAYOUT

&----


*& Form get_EKKOsortinfo

&----


FORM get_ekkosortinfo.

wa_sortinfo-up = 'X'.

wa_sortinfo-spos = 1.

wa_sortinfo-fieldname = 'EBELN'.

wa_sortinfo-tabname = 'EKKO'.

APPEND wa_sortinfo TO it_sortinfo.

CLEAR wa_sortinfo.

wa_sortinfo-up = 'X'.

wa_sortinfo-spos = 2.

wa_sortinfo-fieldname = 'BSTYP'.

wa_sortinfo-tabname = 'EKKO'.

APPEND wa_sortinfo TO it_sortinfo.

CLEAR wa_sortinfo.

wa_sortinfo-up = 'X'.

wa_sortinfo-spos = 3.

wa_sortinfo-fieldname = 'AEDAT'.

wa_sortinfo-tabname = 'EKKO'.

APPEND wa_sortinfo TO it_sortinfo.

CLEAR wa_sortinfo.

ENDFORM. "get_EKKOsortinfo

&----


*& Form EKKODISPLAY_ONALV

&----


FORM ekkodisplay_onalv.

CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'

EXPORTING

i_callback_program = sy-repid

i_callback_pf_status_set = 'SET_PF_STATUS1'

i_callback_user_command = 'AT_USER_COMMAND'

is_layout = wa_layout

it_fieldcat = it_fieldcat

it_sort = it_sortinfo[]

it_filter = it_filter

it_events = it_events[]

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. "EKKODISPLAY_ONALV

&----


*& Form validate_ebeln

&----


FORM validate_ebeln.

SELECT ebeln

FROM ekpo

INTO TABLE it_ebeln

WHERE ebeln IN so_ebeln.

IF sy-subrc NE 0.

MESSAGE e020(z50871msg) WITH text-014.

ENDIF.

ENDFORM. "validate_ebeln

&----


*& Form populate_layout2

&----


FORM populate_layout2 .

CLEAR wa_layout.

wa_layout-colwidth_optimize = 'X'. "column width

  • wa_layout-zebra = 'X'.

  • wa_layout-no_hline = 'X'.

  • wa_layout-no_vline = 'X'.

  • wa_layout-cell_merge = 'X'.

wa_layout-window_titlebar = 'PURCHASE ORDER DETAILS SECOND SCREEN'.

ENDFORM. " populate_layout2

&----


*& Form GET_POPUPDATA

&----


FORM get_popupdata .

LOOP AT it_ekko INTO wa_ekko WHERE check = 'X'.

READ TABLE it_eine INTO wa_eine WITH KEY ebeln = wa_ekko-ebeln.

IF sy-subrc NE 0.

MESSAGE i020(z50871msg) WITH text-015 wa_ekko-ebeln .

ELSE.

wa_popup-ebeln = wa_eine-ebeln.

wa_popup-ekorg = wa_eine-ekorg.

wa_popup-ekgrp = wa_eine-ekgrp.

APPEND wa_popup TO it_popup.

ENDIF.

ENDLOOP.

ENDFORM. " GET_POPUPDATA

&----


*& Form GET_POPUPFCAT

&----


FORM get_popupfcat .

CLEAR wa_fieldcat.

REFRESH it_fieldcat.

wa_fieldcat-fieldname = 'EBELN'.

wa_fieldcat-seltext_l = text-004.

wa_fieldcat-hotspot = 'X'.

APPEND wa_fieldcat TO it_fieldcat.

wa_fieldcat-fieldname = 'EKORG'.

wa_fieldcat-seltext_l = text-016.

APPEND wa_fieldcat TO it_fieldcat.

wa_fieldcat-fieldname = 'EKGRP'.

wa_fieldcat-seltext_l = text-017.

APPEND wa_fieldcat TO it_fieldcat.

ENDFORM. " GET_POPUPFCAT

&----


*& Form DISPLAY_POPUP

&----


FORM display_popup .

LOOP AT it_ekko INTO wa_ekko WHERE check EQ 'X'.

wa_check-check = wa_ekko-check.

APPEND wa_check TO it_check.

ENDLOOP.

IF it_check[] IS INITIAL.

MESSAGE i020(z50871msg) WITH text-018.

ENDIF.

IF NOT it_popup[] IS INITIAL.

CALL FUNCTION 'REUSE_ALV_POPUP_TO_SELECT'

EXPORTING

i_title = text-003

i_allow_no_selection = 'X'

i_scroll_to_sel_line = 'X'

i_tabname = 'IT_POPUP'

it_fieldcat = it_fieldcat

i_callback_program = sy-repid

TABLES

t_outtab = it_popup

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.

ENDIF.

REFRESH it_check.

REFRESH it_popup.

ENDFORM. " DISPLAY_POPUP

&----


*& Form get_ekko_data

&----


FORM get_ekko_data .

SELECT ebeln bstyp bsart aedat ernam

FROM ekko

INTO CORRESPONDING FIELDS OF TABLE it_ekko

WHERE ebeln IN so_ebeln.

IF sy-subrc NE 0.

MESSAGE e020(z50871msg) WITH text-019.

ENDIF.

ENDFORM. " get_ekko_data

&----


*& Form get_eine_data

&----


FORM get_eine_data .

SELECT ebeln ekorg ekgrp

FROM eine

INTO TABLE it_eine

WHERE ebeln IN so_ebeln.

ENDFORM. " get_eine_data

&----


*& Form at_user_command1

&----


FORM at_user_command1 USING r_ucomm LIKE sy-ucomm

rs_selfield TYPE slis_selfield.

CASE r_ucomm.

WHEN 'SE16'.

CALL TRANSACTION 'SE16'.

WHEN 'SE37'.

CALL TRANSACTION 'SE37'.

ENDCASE.

ENDFORM. "at_user_command1

If u hav any questions please revert back.

Regards

Sandeep Reddy

Read only

0 Likes
696

Thanks Sandeep.

I am HR system, so we dont have data relevant to SD or MM and athorisations too. Can you please explain me what ur code does. Or if you can send screen shots of screens that would help me. it is asking for ebeln first then what does it do.

Thanks.

Oscar

Read only

Former Member
0 Likes
696

Hi,

here i am giving you the classical report code with check box.

"Table declarations...................................................

TABLES:

spfli, " Flight schedule

sflight. " Flight

*"Selection screen elements............................................

SELECTION-SCREEN BEGIN OF BLOCK blck WITH FRAME TITLE text-001.

SELECT-OPTIONS:

s_carrid FOR spfli-carrid OBLIGATORY.

SELECTION-SCREEN END OF BLOCK blck.

*" Type declarations...................................................

"----


  • Type declaration of the structure to hold flight schedule details *

"----


TYPES:

BEGIN OF type_s_spfli,

carrid LIKE spfli-carrid, " Airline Code

connid LIKE spfli-connid, " Flight Connection Number

airpfrom LIKE spfli-airpfrom, " Departure city

airpto LIKE spfli-airpto, " Arrival city

deptime LIKE spfli-deptime, " Departure time

arrtime LIKE spfli-arrtime, " Arrival time

END OF type_s_spfli.

"----


  • Type declaration of the structure to hold flight details *

"----


TYPES:

BEGIN OF type_s_sflight,

carrid LIKE sflight-carrid, " Airline Code

connid LIKE sflight-connid, " Flight Connection Number

fldate LIKE sflight-fldate, " Flight date

seatsmax LIKE sflight-seatsmax, " Maximum capacity

seatsocc LIKE sflight-seatsocc, " Occupied seats

END OF type_s_sflight.

data: no type i.

*" Data declarations..................................................

"----


  • Header line to hold flight details *

"----


DATA

fs_spfli TYPE type_s_spfli.

"----


  • Header line to hold flight details *

"----


DATA

fs_sflight TYPE type_s_sflight.

"----


  • Internal table to hold flight details *

"----


DATA

t_spfli TYPE

STANDARD TABLE

OF type_s_spfli.

"----


  • Internal table to hold flight details *

"----


DATA

t_sflight TYPE

STANDARD TABLE

OF type_s_sflight.

*"Variable Declarations................................................

DATA :

w_lines TYPE i,

w_checkbox TYPE c.

"----


  • START-OF-SELECTION EVENT *

"----


START-OF-SELECTION.

SET PF-STATUS 'PFS'.

PERFORM get_data_spfli.

"----


  • END-OF-SELECTION *

"----


END-OF-SELECTION.

PERFORM display_spfli.

"----


  • AT USER-COMMAND *

"----


AT USER-COMMAND.

PERFORM get_data_sflight.

&----


*& Form get_data_spfli *

&----


  • This subroutine retrives necessary data from floght schdule table. *

-


  • There are no interface parameters to be passed to this subroutine. *

-


FORM get_data_spfli .

SELECT carrid

connid

airpfrom

airpto

deptime

arrtime

FROM spfli

INTO TABLE t_spfli

WHERE carrid IN s_carrid.

CHECK sy-subrc NE 0.

MESSAGE e012(zmsg9) .

ENDFORM. " get_data_spfli

&----


*& Form display_spfli *

&----


  • This subroutine display necessary data from flight schdule table. *

-


  • There are no interface parameters to be passed to this subroutine. *

-


FORM display_spfli .

LOOP AT t_spfli INTO fs_spfli.

WRITE : / w_checkbox AS CHECKBOX,

fs_spfli-carrid,

fs_spfli-connid,

fs_spfli-airpfrom,

fs_spfli-airpto,

fs_spfli-deptime,

fs_spfli-arrtime.

HIDE : fs_spfli-carrid,

fs_spfli-connid.

ENDLOOP. " LOOP AT t_spfli INTO fs_spfli.

ENDFORM. " display_spfli

&----


*& Form get_data_sflight *

&----


  • This subroutine retrives necessary data from sflight table. *

-


  • There are no interface parameters to be passed to this subroutine. *

-


FORM get_data_sflight .

CASE sy-ucomm.

WHEN 'SELECTALL'.

DESCRIBE TABLE t_spfli LINES w_lines.

DO w_lines TIMES.

READ LINE sy-index FIELD VALUE w_checkbox.

w_checkbox = 'X'.

MODIFY LINE sy-index FIELD VALUE w_checkbox.

ENDDO. " DO w_lines TIMES.

WHEN 'DESELECT'.

DESCRIBE TABLE t_spfli LINES w_lines.

DO w_lines TIMES.

READ LINE sy-index FIELD VALUE w_checkbox.

w_checkbox = ' '.

MODIFY LINE sy-index FIELD VALUE w_checkbox.

ENDDO. " DO w_lines TIMES

WHEN 'F2'.

DESCRIBE TABLE t_spfli LINES w_lines.

DO w_lines TIMES.

READ LINE sy-index FIELD VALUE sy-lisel.

IF sy-lisel+0(1) = 'X'.

SELECT carrid

connid

fldate

seatsmax

seatsocc

FROM sflight

INTO TABLE t_sflight

WHERE carrid = fs_spfli-carrid

AND connid = fs_spfli-connid.

IF sy-subrc EQ 0.

PERFORM display_sflight.

ELSE.

MESSAGE i015(zmsg9).

ENDIF. " IF sy-subrc EQ 0.

sy-lisel+45(1) = '*'.

MODIFY LINE sy-index FIELD VALUE sy-lisel

LINE FORMAT INPUT OFF.

ENDIF. " IF sy-lisel+0(1) = 'X'.

ENDDO. " DO w_lines TIMES

ENDCASE. " CASE sy-ucomm.

ENDFORM. " get_data_sflight

&----


*& Form display_sflight *

&----


  • This subroutine displays the sflight data. *

-


  • There are no interface parameters to be passed to this subroutine. *

-


FORM display_sflight .

LOOP AT t_sflight INTO fs_sflight.

WRITE : / fs_sflight-carrid,

fs_sflight-connid,

fs_sflight-fldate,

fs_sflight-seatsmax,

fs_sflight-seatsocc.

ENDLOOP. " LOOP AT t_sflight into...

ENDFORM. " display_sflight

Regards

Sandeep Reddy

Read only

Former Member
0 Likes
696

Hi,

Gimme ur mail id.

I wil send screen-shots.

and In the same mail, i wil explain indetail.

Here, i can't paste the scrren-shots.

regards

Sandeep Reddy

Read only

0 Likes
696

oscar.miak at gmail.com

Read only

Former Member
0 Likes
697

Hi,

first it will ask for EBELN.

If give EBELN, then it will give you one ALV LIST.(which shows purchase order header details).

that list has check boxes also.

In the menu bar, there will be one push button calld DISPLAY.

If select any of the check boxes, and if yu press that DISPLAY Button, then one POPUP LIST will come which contains Purchase Organization data related selected EBELN thru check box.

And If you double click on any EBELN, in the next screen, it will display Purchase Order Itemm details related to that EBELN.

Regards

Sandeep Reddy