Call selection screen from DYNPRO

I created a report with std selection screen 1000...
From this selection screen we reach Dynrpro 9000 with a table control etc etc
Once a line has been selected and the user click on a specific button a selection screen is called...
SELECTION-SCREEN BEGIN OF SCREEN 9005.
SELECTION-SCREEN: FUNCTION KEY 1.
SELECT-OPTIONS : SO_PERSA FOR L_PERSA,
                 SO_BTRTL FOR L_BTRTL,
                 SO_PERSG FOR L_PERSG,
                 SO_PERSK FOR L_PERSK.
SELECTION-SCREEN END OF SCREEN 9005.
Unfortunatly when I try to fill in the range but pressing mutliple line button nothing happens...
Do you have any clue to solve this issue ?

what is the purpose of defining a func which is triggered for eac selection field ??
what is the function of it that you need it and don't want the user to use the available searchoptions  ??
kind regards
arthur de smidt

Similar Messages

  • Back on a CALL SELECTION-SCREEN from an ALV

    Hi all,
    I have created a program with a normal selection-screen (1000).
    According to the selected values, when I press "Execute" I go to a next selection-screen (2000) with instruction CALL SELECTION-SCREEN 2000.
    Then I display an ALV.
    When I press the back button, I want to go back to screen 2000, but actually I go directly to screen 1000.
    PARAMETERS : p_choic1 RADIOBUTTON GROUP cho DEFAULT 'X'.
    PARAMETERS : p_choic2 RADIOBUTTON GROUP cho.
    SELECTION-SCREEN BEGIN OF SCREEN 2000.
    PARAMETERS : p_table TYPE char10.
    SELECTION-SCREEN END OF SCREEN 2000.
    START-OF-SELECTION.
      IF NOT p_choic1 IS INITIAL.
        CALL SELECTION-SCREEN 2000.
        PERFORM alv_process.
      ENDIF.
    Have you got any idea of what I can do to return to screen 2000 from the ALV after pressing Back button ?
    Thanks.

    Hi,
    Follow below sample code...
    SELECTION-SCREEN BEGIN OF SCREEN 2000.
    PARAMETERS p_mat  TYPE matnr.
    PARAMETERS p_enam TYPE ernam.
    SELECTION-SCREEN END OF SCREEN 2000.
    START-OF-SELECTION.
    set PF-STATUS 'STATUS'.
      WRITE:/ p_mat,
              p_enam.
    AT USER-COMMAND.
      CASE SY-UCOMM.
      WHEN 'S2000'.
          CALL SELECTION-SCREEN 2000.
      WHEN 'EXIT'.
          EXIT.
      ENDCASE.
    Ram.

  • Reg: calling selection screen from the second list

    Hi all,
    How can we call the selection screen from the second screen.
    Can any one help me to solve this problem.

    HI RJ,
    Try .....
    case sy-ucomm.
    WHEN '&F03'.
    LEAVE TO SCREEN '0'.
    endcase.
    after the FM for grid-display
    i m using the same .....
    i hav selection-screen..then alv grid screen 1  then again another screen with alv grid display..
    bt in my code for first alv grid ...i m using REUSE_ALV_GRID_DISPLAY_LVC
    as
        CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
          EXPORTING
            i_callback_program       = sy-repid
            i_callback_pf_status_set = 'SET_PF_STATUS'(303)
            i_callback_user_command  = 'USER_COMMAND'(304)
            i_grid_title             = 'Reconcilation Report'(305)
            is_layout_lvc            = it_layout
            it_fieldcat_lvc          = gt_fieldcat3[]
          TABLES
            t_outtab                 = gt_msg[].
    here i musing set_pf_status to add one pushbutton to the screen. in ur case u can avoid that...
    after that
    *&      Form  set_pf_status
          text
         -->EXTAB      text
    FORM set_pf_status USING extab TYPE slis_t_extab.           "#EC NEEDED
      SET PF-STATUS 'STANDARD_FULLSCREEN'.
    *get back to Selection Screen
      case sy-ucomm.
        WHEN '&F03'(328).
          LEAVE TO SCREEN '0'.
      endcase.
    ENDFORM.                    "set_pf_status
    its working for me..
    Thnx
    Rohit...
    Edited by: Rohit Kumar on Oct 29, 2008 3:20 PM

  • Calling selection screen from another selecton screen.

    Hi guys,
    I want to call default selection screen of one program from default selection screen of another program.
    Is that possible . would appreciate some helpful answers.
    Thanks,
    Venkat.

    it is possiable.
    1.submit
    2. call transcation t_code.
    Syntax
    SUBMIT <prog>.
    For more information about the SUBMIT statement, see Calling Executable Programs (Reports)
    Assume the following simple report:
    REPORT ZDYN3.
    WRITE / 'Dynamic Program!'.
    The following executable program (report) starts, modifies, and restarts ZDYN3:
    REPORT ZMASTER1.
    DATA CODE(72) OCCURS 10.
    DATA LIN TYPE I.
    READ REPORT 'ZDYN3' INTO CODE.
    SUBMIT ZDYN3 AND RETURN.
    DESCRIBE TABLE CODE LINES LIN.
    MODIFY CODE INDEX LIN FROM
    'WRITE / ''Dynamic Program Changed!''.'.
    INSERT REPORT 'ZDYN3' FROM CODE.
    SUBMIT ZDYN3.
    The output of this program is displayed on two subsequent output screens. The first screen displays:
    Dynamic Program!
    The second screen displays:
    Dynamic Program Changed !
    When you use the SUBMIT statement, all modifications made to a program during runtime take immediate effect before they are submitted. In the above example, ZDYN3 is submitted from ZMASTER1 first in its original and then in its modified form, generating different results.
    This is not the case if you change the codes of include programs or subroutines dynamically.
    Assume the following include program:
    INCLUDE ZINCLUD1.
    WRITE / 'Original INCLUDE program!'.
    and an executable program (report) for modifying and including it:
    REPORT ZMASTER2.
    DATA CODE(72) OCCURS 10.
    DATA LIN TYPE I.
    READ REPORT 'ZINCLUD1' INTO CODE.
    DESCRIBE TABLE CODE LINES LIN.
    MODIFY CODE INDEX LIN FROM
                'WRITE / ''Changed INCLUDE program!''.'.
    INSERT REPORT 'ZINCLUD1' FROM CODE.
    INCLUDE ZINCLUD1.
    If you run ZMASTER2, the source code of include program ZINCLUD1 is changed and replaced in the system. However, the last line of ZMASTER2 executes the older version since the runtime object of ZMASTER2 is generated before ZINCLUD1 is modified. Only when ZMASTER2 is run a second time, does the system determine that ZINCLUD1 has been changed. Exactly the same is true if you dynamically modify the source code of a subroutine and call it from within the same program.
    One way to solve this problem is to use the INCLUDE statement within an external subroutine that is called by the program. This allows you to create or modify include programs or subroutines and use the updated versions directly in the same program.
    Assume the following include program:
    INCLUDE ZINCLUD1.
    WRITE / 'Original INCLUDE program!'.
    and an external subroutine:
    PROGRAM ZFORM1.
    FORM SUB1.
         INCLUDE ZINCLUD1.
    ENDFORM.
    The following program reads the include program, modifies it, enters it back into the system, and calls the subroutine.
    REPORT ZMASTER3.
    DATA CODE(72) OCCURS 10.
    READ REPORT 'ZINCLUD1' INTO CODE.
    APPEND 'WRITE / ''Extension of INCLUDE program!''.' TO CODE.
    INSERT REPORT 'ZINCLUD1' FROM CODE.
    PERFORM SUB1(ZFORM1).
    This produces the following output:
    Original INCLUDE program!
    Extension of INCLUDE program!
    In this case, the updated version of the include program is used in the subroutine because its time stamp is checked when the subroutine is called, and not when the calling program is generated.

  • Call selection screen from normal screen of modulpool

    Hey gurus,
    I would like to call a selectionscreen when I press a button on my normal screen in modulpool, but it doesn't work.
    I made a modulpool with a normal screen where is that button. In the top include I made a selection screen followingly:
    SELECTION-SCREEN BEGIN OF SCREEN 1001 as SUBSCREEN.
       PARAMETERS: rb1 RADIOBUTTON GROUP ab MODIF ID bl2,
                 rb2 RADIOBUTTON GROUP ab MODIF ID bl2.
    SELECTION-SCREEN END OF SCREEN 1001.
    but it writes out an error when i try to call subscreen 1001.
    What's wrong? How could I achieve my goal?
    Thank you very much.
    Regards,
    Robert

    Hi,
    *& Include ZSELOPT_IN_MP_TOP                                 Module Pool      ZSELOPT_IN_MP
    PROGRAM  zselopt_in_mp.
    TABLES ekko.
    SELECTION-SCREEN BEGIN OF SCREEN 9001 AS SUBSCREEN.
    SELECT-OPTIONS so_ebeln FOR ekko-ebeln.
    SELECTION-SCREEN END OF SCREEN 9001.
    -->Normal Screen(9000) with Subscreen Area 'sub'.
    PROCESS BEFORE OUTPUT.
    * MODULE STATUS_9000.
    call SUBSCREEN sub INCLUDING sy-cprog '9001'.    (Here is your problem, use quotas )
    PROCESS AFTER INPUT.
    * MODULE USER_COMMAND_9000.
    CALL SUBSCREEN sub.

  • Can we call a selection screen from List output

    Hi Folks,
    Can we call a selection screen from the list output?
    I mean for ex:-
    i am getting the data from MAKT and displaying it in the list output having a button EMAIL.
    When I press that button it should call a selection screen asking the user to enter EMAIL id .
    Thanks,
    K.Kiran.

    Hi
    U can create a dynpro as SELECTION SCREEN and call it using CALL SELECTION-SCREEN statament:
    SELECTION-SCREEN BEGIN OF SCREEN 100.
    PARAMETERS: P_MAIL(80) TYPE C.
    SELECTION-SCREEN END    OF SCREEN  100.
    AT USER-COMMAND.
       CASE SY-UCOMM.
          WHEN 'MAIL'.
              CALL SELECTION-SCREEN 100.
              IF SY-SUBRC = 0. "User press F8
              ELSE.
                " User press exit or back
              ENDIF.
    U can use the addition STARTING AT ..... ENDING AT ..... if you need to show the selection-screen as popup
    Max

  • Calling a Selection Screen from a Function Module/Method

    Hi,
      I would like to call a selection screen from a function module or method. I understand it is not possible by the definition. Are there any alternative options as I am looking for the Variants Save option on the screen. Any thoughts?
    Thanks
    Raghav

    Since i don't know your exact requirements (standard SAP selection screen? your own selection screen?) the onl;y thing i can come up with is:
    1. in your function pool create your own screen with a subscreen area
    2. create your own selection screen as a subscreen.
    3. include the selection subscreen in the first screen
    4. call the first screen in your function.

  • Problem in creating selection screen from screen painter

    hi ,
          i am working with screens i have created a screen and in that wehn i click report button it has to ask for select options for dates.from there i will write a select quesry based on selection dates ...how to call a selection screen from screen.i created an include and in that include i used select options.but it is showing error message .guide me how to do it ?

    Hi..
    Here for your problem,
    I have created a button with function code 'CLICK' in screen no 1000.
    when I click on the button I am capturing the ok_code and displaying the selection screen.
    ok_code = sy-ucomm.
    case:ok_code.
    when 'CLICK'.
             SELECTION-SCREEN BEGIN OF SCREEN 500 TITLE title.
             SELECT-OPTIONS: P_DATE for sy-datum.
             SELECTION-SCREEN END OF SCREEN 500.
    title = 'Input Date'.
    CALL SELECTION-SCREEN '0500'.
    endcase.
    You can also have them as subscreen by providing the required parameters in the selection screen.
    Hope this solves your problem.
    Warm Regards,
    Bhuvaneswari.

  • Calling selection screen of a standard table

    Hi All,
    I want to call KNA1 table's Selection Screen' from a customized program. Can anyone let me know how to do this.
    Customer program-->KNA1 table selection screen
    Thank you

    Hi,
    goto se16 and give the table name, then execute it.
    it will display the selection screen. Then GOto System in the menu entry. select the status. then will all information like program name and screen name and screen number.
    <REMOVED BY MODERATOR>
    Edited by: subas  Bose on Apr 10, 2008 5:42 PM
    Edited by: Alvaro Tejada Galindo on Apr 10, 2008 11:44 AM

  • Calling selection screen of another  program

    Hi all,
         Am trying to call a program from a enhancement section of IW3K transaction using the following statement.But the selection screen of the program is not getting displayed.
    but the screen is dispalyed when i run the statement in debug mode.
    Can anyone help me on this...
    useful answers will be rewarded.
    submit Z XXXXX            via selection-screen
                                       WITH s_ispla =  'BEKD'
                                       WITH p_rsnum =  CAUFVD-rsnum
                                       WITH s_rspos in   i_range_tab
                                       and RETURN.

    hi,
    You can call one selection screen from other selection screen program using SUBMIT command.
    The syntax is as follows -
    codeSUBMIT... VIA SELECTION-SCREEN
    USING SELECTION-SET <var>
    WITH <sel> <criterion>
    WITH FREE SELECTIONS <freesel>
    WITH SELECTION-TABLE <rspar>.[/code]
    e.g.
    The following executable program (report) creates a selection screen containing the parameter PARAMET and the selection criterion SELECTO:
    codeREPORT demo_program_submit_rep1.
    DATA number TYPE i.
    PARAMETERS paramet(14) TYPE c.
    SELECT-OPTIONS selecto FOR number.[/code]
    The program DEMO_PROGRAM_SUBMIT_REP1 is called by the following program using various parameters:
    codeREPORT demo_program_submit_sel_screen NO STANDARD PAGE HEADING.
    DATA: int TYPE i,
    rspar TYPE TABLE OF rsparams,
    wa_rspar LIKE LINE OF rspar.
    RANGES seltab FOR int.
    WRITE: 'Select a Selection!',
    SKIP.
    FORMAT HOTSPOT COLOR 5 INVERSE ON.
    WRITE: 'Selection 1',
    / 'Selection 2'.
    AT LINE-SELECTION.
    CASE sy-lilli.
    WHEN 4.
    seltab-sign = 'I'. seltab-option = 'BT'.
    seltab-low = 1. seltab-high = 5.
    APPEND seltab.
    SUBMIT demo_program_submit_rep1 VIA SELECTION-SCREEN
    WITH paramet eq 'Selection 1'
    WITH selecto IN seltab
    WITH selecto ne 3
    AND RETURN.
    WHEN 5.
    wa_rspar-selname = 'SELECTO'. wa_rspar-kind = 'S'.
    wa_rspar-sign = 'E'. wa_rspar-option = 'BT'.
    wa_rspar-low = 14. wa_rspar-high = 17.
    APPEND wa_rspar TO rspar.
    wa_rspar-selname = 'PARAMET'. wa_rspar-kind = 'P'.
    wa_rspar-low = 'Selection 2'.
    APPEND wa_rspar TO rspar.
    wa_rspar-selname = 'SELECTO'. wa_rspar-kind = 'S'.
    wa_rspar-sign = 'I'. wa_rspar-option = 'GT'.
    wa_rspar-low = 10.
    APPEND wa_rspar TO rspar.
    SUBMIT demo_program_submit_rep1 VIA SELECTION-SCREEN
    WITH SELECTION-TABLE rspar
    AND RETURN.
    ENDCASE.[/code]
    => To leave a called program, you can use SUBMIT .... AND RETURN. by choosing F3 or F15 from list level 0 of the called report.

  • Going back to selection screen from ALV

    Hi there,
    I have scenario: program -> selection screen -> ALV
    In the 'BACK' button I have put: LEAVE TO SCREEN 0. It should go back to selection screen. But it does not and exits the program. I also tried to call the selection screen like CALL SELECTION-SCREEN 1000. But in this case if I hit BACK on selection screen, it goes back to previous screen, the ALV not the program. Can you please assist any other way to use the back button from
    ALV -> Selection screen. Thanks.
    Regards,

    Hi Johnny
    Previously i got the same requirement according to that i had developed a report just go through this hope it may helpfull very much
    *& Report  ZALVDEMO                                                    *
    REPORT  ZALVDEMO.
    TABLES : J_1IEXCHDR, " header table
    J_1IEXCDTL, " item table
    J_1IPART2, " Excise Part II details
    LFA1, " vendor master table
    J_1IMOVEND, " vendor excise details table
    MSEG, " Document Segment: Material
    MKPF, " Header: Material Document
    DD07T, " domain text table
    T001W. " Plant and Branch Details
    DATA : BEGIN OF IT_CHDR OCCURS 100,
    DOCNO LIKE J_1IEXCHDR-DOCNO,
    DOCYR LIKE J_1IEXCHDR-DOCYR,
    EXNUM LIKE J_1IEXCHDR-EXNUM,
    EXDAT LIKE J_1IEXCHDR-EXDAT,
    WERKS LIKE J_1IEXCHDR-WERKS,
    EXBED LIKE J_1IEXCHDR-EXBED,
    EXCCD LIKE J_1IEXCHDR-EXCCD,
    ECS LIKE J_1IEXCHDR-ECS,
    END OF IT_CHDR.
    DATA : BEGIN OF IT_CDTL OCCURS 100,
    DOCYR LIKE J_1IEXCDTL-DOCYR,
    DOCNO LIKE J_1IEXCDTL-DOCNO,
    EXNUM LIKE J_1IEXCDTL-EXNUM,
    EXDAT LIKE J_1IEXCDTL-EXDAT,
    LIFNR LIKE J_1IEXCDTL-LIFNR,
    MATNR LIKE J_1IEXCDTL-MATNR,
    MAKTX LIKE J_1IEXCDTL-MAKTX,
    CHAPID LIKE J_1IEXCDTL-CHAPID,
    EXBAS LIKE J_1IEXCDTL-EXBAS,
    EXBED LIKE J_1IEXCDTL-EXBED,
    ECS LIKE J_1IEXCDTL-ECS,
    MENGE LIKE J_1IEXCDTL-MENGE,
    MEINS LIKE J_1IEXCDTL-MEINS,
    RDOC2 LIKE J_1IEXCDTL-RDOC2,
    END OF IT_CDTL.
    DATA TEXT(10).
    DATA : BEGIN OF IT_OUT OCCURS 0,
    SERIALNO LIKE J_1IPART2-SERIALNO,
    TEXT1 LIKE TEXT,
    EXNUM LIKE J_1IEXCDTL-EXNUM,
    EXDAT LIKE J_1IEXCDTL-EXDAT,
    NAME LIKE LFA1-NAME1,
    DDTEXT LIKE DD07T-DDTEXT,
    EXCCD LIKE J_1IEXCHDR-EXCCD,
    BUDAT LIKE MKPF-BUDAT,
    EXBAS LIKE IT_CDTL-EXBAS,
    EXBED LIKE IT_CDTL-EXBED,
    ECS LIKE IT_CDTL-ECS,
    MATNR LIKE IT_CDTL-MATNR,
    MAKTX LIKE IT_CDTL-MAKTX,
    CHAPID LIKE IT_CDTL-CHAPID,
    MENGE LIKE IT_CDTL-MENGE,
    MEINS LIKE IT_CDTL-MEINS,
    DEL_IND(1),
    END OF IT_OUT.
    DATA IT_PART2 LIKE J_1IPART2 OCCURS 0 WITH HEADER LINE.
    DATA S_NO(4) .
    DATA DB_CNT LIKE SY-TABIX.
    DATA EBELN_T LIKE MSEG-EBELN .
    TYPE-POOLS : SLIS.
    DATA : AFIELD TYPE SLIS_FIELDCAT_ALV.
    DATA : LIST_HEADER TYPE SLIS_T_LISTHEADER,
    FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,
    LS_FTCAT TYPE LVC_S_FCAT,
    SORTCAT TYPE SLIS_T_SORTINFO_ALV,
    SORTCAT_LN LIKE LINE OF SORTCAT,
    G_REPID LIKE SY-REPID,
    G_BACK_GROUND(70), "like bapibds01-objkey,
    GS_VARIANT LIKE DISVARIANT,
    G_SAVE ,
    GT_EVENTS TYPE SLIS_T_EVENT,
    ALV_EVENT TYPE SLIS_ALV_EVENT,
    EVENTCAT TYPE SLIS_T_EVENT,
    EVENTCAT_LN LIKE LINE OF EVENTCAT,
    LAYOUT_IN TYPE SLIS_LAYOUT_ALV,
    LAYOUT_IN1 TYPE SLIS_LAYOUT_ALV.
    CONSTANTS : GC_FORMNAME_TOP_OF_PAGE TYPE SLIS_FORMNAME VALUE
    'TOP_OF_PAGE',
    GC_FORMNAME_USER_COMMAND TYPE SLIS_FORMNAME VALUE
    'USER_COMMAND',
    GC_FORMNAME_BEFORE_OUTPUT TYPE SLIS_FORMNAME VALUE
    'BEFORE_OUTPUT'.
    * ALV_EVENT TYPE SLIS_ALV_EVENT,
    DATA EX_NO LIKE IT_CHDR-EXNUM VALUE 0.
    DATA REGTYP_1 LIKE J_1IPART2-REGTYP.
    SELECTION-SCREEN BEGIN OF BLOCK B WITH FRAME.
    PARAMETERS WERKS TYPE J_1IEXCHDR-WERKS.
    SELECT-OPTIONS : BUDAT FOR J_1IEXCHDR-EXDAT.
    PARAMETERS : R1 RADIOBUTTON GROUP GRP DEFAULT 'X',
    R2 RADIOBUTTON GROUP GRP.
    SELECTION-SCREEN END OF BLOCK B.
    INITIALIZATION.
    G_REPID = SY-REPID.
    G_SAVE = 'A'.
    * PERFORM BUILD_EVENT USING GT_EVENTS[].
    PERFORM ALV_EVENT_INIT.
    AT SELECTION-SCREEN.
    REFRESH LIST_HEADER.
    PERFORM TOP_OF_PAGE_LIST_HEADER USING LIST_HEADER.
    START-OF-SELECTION.
    * PERFORM ALV_EVENT_INIT.
    G_REPID = SY-REPID.
    G_BACK_GROUND = ' ' .
    IF R1 = 'X'.
    CLEAR R2. CLEAR : REGTYP_1.
    REGTYP_1 = 'A'.
    * set titlebar 'BALAJI' with DB_CNT.
    ELSEIF R2 = 'X'.
    CLEAR R1.CLEAR : REGTYP_1.
    REGTYP_1 = 'C'.
    * set titlebar 'BALAJI1' with DB_CNT.
    ENDIF.
    SELECT * FROM J_1IPART2
    INTO CORRESPONDING FIELDS OF TABLE IT_PART2
    WHERE REGTYP = REGTYP_1 AND
    TRNTYP = 'GRPO' AND
    BUDAT IN BUDAT.
    * DOCYR = IT_CDTL-DOCYR AND
    * DOCNO = IT_CDTL-DOCNO.
    LOOP AT IT_PART2.
    SELECT SINGLE * FROM J_1IEXCHDR
    INTO CORRESPONDING FIELDS OF IT_CHDR
    WHERE TRNTYP = 'GRPO' AND
    DOCYR = IT_PART2-DOCYR AND
    DOCNO = IT_PART2-DOCNO AND
    WERKS = WERKS AND
    exdat IN BUDAT.
    * ORDER BY EXDAT.
    IF SY-SUBRC = 0.
    APPEND IT_CHDR.
    ELSE.
    CONTINUE.
    ENDIF.
    * IF SY-SUBRC <> 0.
    * MESSAGE E084.
    * ENDIF.
    ENDLOOP.
    LOOP AT IT_CHDR.
    SELECT * FROM J_1IEXCDTL
    INTO CORRESPONDING FIELDS OF IT_CDTL
    * FOR ALL ENTRIES IN IT_CHDR
    WHERE
    TRNTYP = 'GRPO' AND
    DOCNO = IT_CHDR-DOCNO AND
    DOCYR = IT_CHDR-DOCYR AND
    EXNUM = IT_CHDR-EXNUM AND
    EXDAT = IT_CHDR-EXDAT AND
    WERKS = IT_CHDR-WERKS.
    IF SY-SUBRC = 0.
    APPEND IT_CDTL.
    ELSE.
    CONTINUE.
    ENDIF.
    ENDSELECT.
    ENDLOOP.
    LOOP AT IT_CDTL.
    CLEAR TEXT.
    DB_CNT = DB_CNT + 1.
    READ TABLE IT_CHDR WITH KEY EXNUM = IT_CDTL-EXNUM.
    READ TABLE IT_PART2 WITH KEY DOCNO = IT_CDTL-DOCNO .
    IT_OUT-SERIALNO = IT_PART2-SERIALNO.
    SELECT SINGLE NAME1 FROM LFA1
    INTO IT_OUT-NAME
    WHERE LIFNR = IT_CDTL-LIFNR.
    SELECT SINGLE * FROM LFA1
    WHERE LIFNR = IT_CDTL-LIFNR.
    IF LFA1-LAND1 EQ 'IN'.
    TEXT = 'INVOICE'.
    IT_OUT-TEXT1 = TEXT.
    ELSE.
    TEXT = 'BOE'.
    IT_OUT-TEXT1 = TEXT.
    ENDIF.
    SELECT SINGLE * FROM J_1IMOVEND
    WHERE LIFNR = IT_CDTL-LIFNR.
    SELECT SINGLE * FROM DD07T
    * INTO IT_OUT-DDTEXT
    WHERE DOMNAME = 'J_1IVTYP' AND
    DDLANGUAGE = 'EN' AND
    DOMVALUE_L = J_1IMOVEND-J_1IVTYP.
    IF DD07T-DDTEXT = 'First Stage Dealer of indigenous excisable goods'
    OR
    DD07T-DDTEXT = 'Second Stage Dealer of indigenous excisablegoods'.
    DD07T-DDTEXT = 'Dealer'.
    ENDIF.
    IT_OUT-DDTEXT = DD07T-DDTEXT.
    * ELSEIF DD07T-DDTEXT = 'Second Stage Dealer of indigenous excisable
    *goods'.
    * DD07T-DDTEXT =
    CLEAR EBELN_T.
    SELECT SINGLE LFBNR FROM MSEG
    INTO EBELN_T
    WHERE MBLNR = IT_CDTL-RDOC2 .
    SELECT SINGLE * FROM MSEG
    WHERE BWART = '106' AND
    LFBNR = EBELN_T ."and
    * ebeln = ebeln_t.
    IF SY-SUBRC = 0.
    IT_OUT-DEL_IND = 'X'.
    ELSE.
    IT_OUT-DEL_IND = ' '.
    ENDIF.
    SELECT SINGLE BUDAT FROM MKPF
    INTO IT_OUT-BUDAT
    WHERE MBLNR = EBELN_T ."MSEG-LFBNR.
    IT_OUT-EXNUM = IT_CDTL-EXNUM.
    IT_OUT-EXDAT = IT_CDTL-EXDAT.
    IT_OUT-EXCCD = IT_CHDR-EXCCD.
    IT_OUT-EXBAS = IT_CDTL-EXBAS.
    IT_OUT-EXBED = IT_CDTL-EXBED.
    IT_OUT-ECS = IT_CDTL-ECS.
    IT_OUT-MATNR = IT_CDTL-MATNR.
    IT_OUT-MAKTX = IT_CDTL-MAKTX.
    IT_OUT-CHAPID = IT_CDTL-CHAPID.
    IT_OUT-MENGE = IT_CDTL-MENGE.
    IT_OUT-MEINS = IT_CDTL-MEINS.
    APPEND IT_OUT.
    * EX_NO = IT_CDTL-EXNUM.
    ENDLOOP.
    * Title Portion
    IF REGTYP_1 = 'A'.
    SET TITLEBAR 'BALAJI' WITH DB_CNT.
    ELSEIF REGTYP_1 = 'C'.
    SET TITLEBAR 'BALAJI1' WITH DB_CNT.
    ENDIF.
    AFIELD-COL_POS = 1.
    AFIELD-FIELDNAME = 'SERIALNO'.
    AFIELD-SELTEXT_L = 'INPUTS'.
    AFIELD-JUST = 'L'.
    APPEND AFIELD TO FIELDCAT.
    AFIELD-COL_POS = 2.
    AFIELD-FIELDNAME = 'TEXT1'.
    AFIELD-SELTEXT_L = 'TYPE OF DOC'.
    AFIELD-JUST = 'L'.
    AFIELD-DECIMALS_OUT = '0'.
    AFIELD-NO_ZERO = 'X'.
    APPEND AFIELD TO FIELDCAT.
    AFIELD-COL_POS = 3.
    AFIELD-FIELDNAME = 'EXNUM'.
    AFIELD-SELTEXT_L = 'DOC.NO'.
    AFIELD-JUST = 'L'.
    APPEND AFIELD TO FIELDCAT.
    AFIELD-COL_POS = 4.
    AFIELD-FIELDNAME = 'EXDAT'.
    AFIELD-SELTEXT_L = 'DOC.DATE'.
    AFIELD-JUST = 'C'.
    APPEND AFIELD TO FIELDCAT.
    AFIELD-COL_POS = 5.
    AFIELD-FIELDNAME = 'NAME'.
    AFIELD-SELTEXT_L = 'NAME OF THE SUPPLIER'.
    AFIELD-NO_ZERO = 'X'.
    AFIELD-JUST = 'L'.
    APPEND AFIELD TO FIELDCAT.
    AFIELD-COL_POS = 6.
    AFIELD-FIELDNAME = 'DDTEXT'.
    AFIELD-SELTEXT_L = 'TYPE-OF-SUPPLIER'.
    AFIELD-JUST = 'L'.
    APPEND AFIELD TO FIELDCAT.
    AFIELD-COL_POS = 7.
    AFIELD-FIELDNAME = 'EXCCD'.
    AFIELD-SELTEXT_L = 'ECC OF THE SUPPLIER'.
    AFIELD-NO_ZERO = 'X'.
    AFIELD-JUST = 'L'.
    APPEND AFIELD TO FIELDCAT.
    AFIELD-COL_POS = 8.
    AFIELD-FIELDNAME = 'BUDAT'.
    AFIELD-SELTEXT_L = 'INPUT RECV DATE'.
    AFIELD-JUST = 'C'.
    APPEND AFIELD TO FIELDCAT.
    AFIELD-COL_POS = 9.
    AFIELD-FIELDNAME = 'EXBAS'.
    AFIELD-SELTEXT_L = 'ASSESSABLE-VALUE'.
    AFIELD-DO_SUM = 'X'.
    AFIELD-JUST = 'R'.
    AFIELD-DECIMALS_OUT = '2'.
    APPEND AFIELD TO FIELDCAT.
    AFIELD-COL_POS = 10.
    AFIELD-FIELDNAME = 'EXBED'.
    AFIELD-SELTEXT_L = 'DET OF CREDIT TAKEN CENVAT'.
    AFIELD-JUST = 'R'.
    APPEND AFIELD TO FIELDCAT.
    AFIELD-COL_POS = 11.
    AFIELD-FIELDNAME = 'ECS'.
    AFIELD-SELTEXT_L = 'DET OF CREDIT TAKEN E-CESS'.
    AFIELD-JUST = 'R'.
    APPEND AFIELD TO FIELDCAT.
    AFIELD-COL_POS = 12.
    AFIELD-FIELDNAME = 'MATNR'.
    AFIELD-SELTEXT_L = 'MATERIAL-CODE'.
    AFIELD-JUST = 'L'.
    APPEND AFIELD TO FIELDCAT.
    AFIELD-COL_POS = 13.
    AFIELD-FIELDNAME = 'MAKTX'.
    AFIELD-SELTEXT_L = 'DESCRIPTION'.
    AFIELD-JUST = 'L'.
    APPEND AFIELD TO FIELDCAT.
    AFIELD-COL_POS = 14.
    AFIELD-FIELDNAME = 'CHAPID'.
    AFIELD-SELTEXT_L = 'TARIFF-ID'.
    AFIELD-JUST = 'L'.
    APPEND AFIELD TO FIELDCAT.
    AFIELD-COL_POS = 15.
    AFIELD-FIELDNAME = 'MENGE'.
    AFIELD-SELTEXT_L = 'QUANTITY'.
    AFIELD-JUST = 'R'.
    AFIELD-DO_SUM = ' '.
    APPEND AFIELD TO FIELDCAT.
    AFIELD-COL_POS = 16.
    AFIELD-FIELDNAME = 'MEINS'.
    AFIELD-SELTEXT_L = 'UOM'.
    AFIELD-JUST = 'C'.
    APPEND AFIELD TO FIELDCAT.
    AFIELD-COL_POS = 17.
    AFIELD-FIELDNAME = 'DEL_IND'.
    AFIELD-SELTEXT_L = 'Deleted'.
    AFIELD-JUST = 'C'.
    APPEND AFIELD TO FIELDCAT.
    * * LAYOUT FOR ZEBRA CATLOG
    LAYOUT_IN-COLWIDTH_OPTIMIZE = 'X'.
    LAYOUT_IN-ZEBRA = 'X'.
    LAYOUT_IN-GET_SELINFOS = 'X'.
    LAYOUT_IN-CONFIRMATION_PROMPT = 'X'.
    LAYOUT_IN-DETAIL_POPUP = 'X' .
    * SORTCAT-decimals = '0'.
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
    I_CALLBACK_PROGRAM = G_REPID
    I_CALLBACK_USER_COMMAND = 'USER_COMMAND'
    I_SAVE = G_SAVE
    IS_VARIANT = GS_VARIANT
    IT_FIELDCAT = FIELDCAT
    IT_SORT = SORTCAT
    IS_LAYOUT = LAYOUT_IN
    IT_EVENTS = EVENTCAT
    * I_BACKGROUND_ID = g_back_ground
    TABLES
    T_OUTTAB = IT_OUT.
    *& Form TOP_OF_PAGE_LIST_HEADER
    * text
    * -->LIST_HEADERtext
    FORM TOP_OF_PAGE_LIST_HEADER USING LIST_HEADER TYPE SLIS_T_LISTHEADER.
    DATA : HLINE TYPE SLIS_LISTHEADER,
    TEXT(60) TYPE C.
    CLEAR : HLINE,TEXT.
    HLINE-TYP = 'H'.
    * WRITE 'ROOTS INDUSTRIES LTD' TO TEXT.
    HLINE-INFO = TEXT.
    APPEND HLINE TO LIST_HEADER.
    SELECT SINGLE * FROM T001W WHERE WERKS = WERKS.
    CLEAR : HLINE,TEXT.
    HLINE-TYP = 'H'.
    WRITE 'PLANT :' TO TEXT.
    WRITE WERKS TO TEXT+8.
    HLINE-INFO = TEXT.
    APPEND HLINE TO LIST_HEADER.
    CLEAR : HLINE,TEXT.
    HLINE-TYP = 'H'.
    WRITE T001W-NAME1 TO TEXT.
    HLINE-INFO = TEXT.
    APPEND HLINE TO LIST_HEADER.
    CLEAR : HLINE,TEXT.
    HLINE-TYP = 'H'.
    WRITE T001W-STRAS TO TEXT.
    HLINE-INFO = TEXT.
    APPEND HLINE TO LIST_HEADER.
    CLEAR : HLINE,TEXT.
    HLINE-TYP = 'H'.
    WRITE T001W-ORT01 TO TEXT.
    HLINE-INFO = TEXT.
    APPEND HLINE TO LIST_HEADER.
    CLEAR : HLINE,TEXT.
    HLINE-TYP = 'H'.
    WRITE 'DATE :' TO TEXT.
    WRITE BUDAT-LOW TO TEXT+7.
    IF BUDAT-HIGH NE ''.
    WRITE 'TO' TO TEXT+18.
    WRITE BUDAT-HIGH TO TEXT+22.
    ENDIF.
    HLINE-INFO = TEXT.
    APPEND HLINE TO LIST_HEADER.
    ENDFORM. "TOP_OF_PAGE_LIST_HEADER
    *& Form ALV_EVENT_INIT
    * text
    FORM ALV_EVENT_INIT .
    CLEAR ALV_EVENT.
    ALV_EVENT-NAME = SLIS_EV_TOP_OF_PAGE.
    ALV_EVENT-FORM = 'ALV_TOP_OF_PAGE'.
    APPEND ALV_EVENT TO EVENTCAT.
    CLEAR ALV_EVENT.
    ALV_EVENT-NAME = SLIS_EV_TOP_OF_LIST.
    ALV_EVENT-FORM = 'ALV_TOP_OF_LIST'.
    APPEND ALV_EVENT TO EVENTCAT.
    * CLEAR ALV_EVENT.
    * ALV_EVENT-NAME = SLIS_EV_END_OF_LIST.
    * ALV_EVENT-FORM = 'ALV_END_OF_LIST'.
    * APPEND ALV_EVENT TO GT_EVENTS.
    * CLEAR ALV_EVENT.
    * ALV_EVENT-NAME = SLIS_EV_END_OF_PAGE.
    * ALV_EVENT-FORM = 'ALV_END_OF_PAGE'.
    * APPEND ALV_EVENT TO GT_EVENTS.
    ENDFORM. "ALV_EVENT_INIT
    *& Form ALV_TOP_OF_PAGE
    * text
    FORM ALV_TOP_OF_PAGE.
    CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
    EXPORTING
    IT_LIST_COMMENTARY = LIST_HEADER
    I_LOGO = 'ENJOYSAP_LOGO'.
    ENDFORM. "ALV_TOP_OF_PAGE
    *& Form BUILD_EVENT
    * text
    * -->P_GT_EVENTS[] text
    FORM BUILD_EVENT USING P_EVENTS TYPE SLIS_T_EVENT.
    CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
    EXPORTING
    I_LIST_TYPE = 0
    IMPORTING
    ET_EVENTS = P_EVENTS
    EXCEPTIONS
    LIST_TYPE_WRONG = 1
    OTHERS = 2.
    READ TABLE P_EVENTS WITH KEY NAME = SLIS_EV_USER_COMMAND INTO
    ALV_EVENT.
    IF SY-SUBRC = 0.
    MOVE GC_FORMNAME_USER_COMMAND TO ALV_EVENT-FORM.
    APPEND ALV_EVENT TO P_EVENTS.
    ENDIF.
    READ TABLE P_EVENTS WITH KEY NAME = SLIS_EV_BEFORE_LINE_OUTPUT INTO
    ALV_EVENT.
    IF SY-SUBRC = 0.
    MOVE GC_FORMNAME_BEFORE_OUTPUT TO ALV_EVENT-FORM.
    APPEND ALV_EVENT TO P_EVENTS.
    ENDIF.
    ENDFORM. " BUILD_EVENT
    Reward if helpfull
    Regards
    Pavan

  • Go back selection-screen from level2 of cl_salv_hierseq_table

    Hi,
    Problem is to go back on selection screen in one go using BACK , CANCEL or EXIT button
    cl_salv_hierseq_table is being called to display output list.
    Same class cl_salv_hierseq_table is being used to display new list if user wants to see.
    All output list goes into ABAP stack.
    Neither a single standard button BACK , CANCEL or EXIT allow me to go back on selection-screen directly from 2 level onwards . it goes one by one level
    Copied GUI-status to use on_user_command and tried to use LEAVE TO TRANSACTION / CALL TRANSACTION but selection screen values in select-options / parameters not retrived
    How to back on selection-screen from level2 onwards and see all values which are entered initially
    Thanks
    ammonin

    Hi,
    No custom screen is created in my program for displaying result.
    Calling METHOD display of CL_SALV_HIERSEQ_TABLE ,
    So every time each DISPLAY method goes into stack .
    In degug , I found FM REUSE_ALV_HIERSEQ_LIST_DISPLAY is being called
    As per your suggestion it happens only when I am on first level of display result
    If I am calling same METHOD display for another output without distroying exsiting one. it stores in ABAP stack
    I do not know how to initializie existing / Kill CL_SALV_HIERSEQ_TABLE session before calling it again
    Standard button BACK/EXIT/CANCEL does
    SET SCREEN 0
    LEAVE SCREEN and goes back to only one level back not on directly on selection screen.
    If it is on first level then only selection-screen comes with values.
    Thanks
    Amy

  • Call selection screen in fm

    Hi all!
    I have a report, and i have a selection screen in a fm. Report call fm, and it bring me selection parameters.
    However i need run report in background, but option (F9) for do this, not visible. Somebody have any idea
    for resolve this ?
    pd: i should use fm. not using selection screen in traditional way.
    Thanks for ur answer.

    I'm not sure if anyone is looking for an answer here still, but I'll attempt an answer.
    Class Based exceptions cannot be propogated from a section of code that does not have a local memory area. This means Event (START-OF-SELECTION, AT SELECTION-SCREEN, etc) and Dialog Processing. Since the exception cannot be propogated, it hits the system and the system treats it as a dump scenario. In addition, due to the way Class Based Event Handling is processed, an exception cannot be propogated past an event handler.
    I am not sure if there is a work around for your problem though. One way may be to use a variable to store the exception that occurred; then when the Function Module itself has control again, check to see if that variable contains a value, it will raise the exception to the application that called the function. Using this and checks against this variable, you would be able to prevent further processing after the exceptions actual occurance.
    Global Data Definition
    DATA iException TYPE I VALUE 0 .
    Function Module
    CALL SELECTION-SCREEN 1234
    CASE iException .
      WHEN 0 .
       " do nothing, no exception occurred on selection screen.
      WHEN 1 .
         RAISE EXCEPTION CX_Your_Exception_Name .
    ENDCASE .
    AT SELECTION-SCREEN OUTPUT .
      IF [some condition] .
        iException = 1 . "If your exception occurred.
      ENDIF .
    This would allow you to use a global variable to log the exception and report it back to the function module; this will then allow the function module to propogate the correct exception back to the calling procedure.

  • CALL SELECTION SCREEN problem

    Hello!
    I have a problem. In my riport I have a selection screen (1000), a main screen (2000), and a screen (400) this is called inside a loop, to fill some datas when you hit the print button.
      CLEAR L_TOTAL.
      SORT LT_EBAN BY BNFPO.
      LOOP AT LT_EBAN.
        GT_ITEM2-FIELD01 = SY-TABIX.
        GT_ITEM2-FIELD02 = LT_EBAN-MATNR.
    *---Part name, Type, Maker
        SPLIT LT_EBAN-TXZ01 AT ',' INTO GT_ITEM2-FIELD03 GT_ITEM2-FIELD04 GT_ITEM2-FIELD05.
         CONCATENATE GT_ITEM2-FIELD03 '/' GT_ITEM2-FIELD04 INTO DESCR.
         ITEM = LT_EBAN-BNFPO.
         CALL SCREEN 400 STARTING AT 20 7 ENDING AT 60 18.
    *---Machine
        GT_ITEM2-FIELD06 = ST_400-MACHINE.
    After this, i could not use the LEAVE TO SCREEN 0, because it's not going back to secreen '2000' , I'm getting a blank 400 screen.
    Thatswhy I used CALL SCREEN '2000', and it's fine.
    But in the case of the Selection screen (1000) something is wrong.
    On the screen 2000 I using this logic.
    MODULE EXIT_2000 INPUT.
      CASE OK_CODE.
        WHEN 'BACK' OR 'EXIT'.
          CLEAR OK_CODE.
           CALL SELECTION-SCREEN '1000'.
           LEAVE PROGRAM.
        WHEN 'CANC'.
          PERFORM EXIT_PROGRAM.
          LEAVE PROGRAM.
      ENDCASE.
      CLEAR OK_CODE.
    ENDMODULE.                 " exit_2000  INPUT
    With this logic, the program is going to the SELECTION-SCREEN, when I hit the back button, and when we are already on the SELECTION-SCREEN, it's leaving the program. This is also ok.
    But when I hit the back button, and on the SELECTION-SCREEN I want to run the program again, it's not going to the program logic, it's jumping to this CALL SELECTION-SCREEN '1000', and leaving of course.
    START-OF-SELECTION.
      PERFORM DSP1_PROC.
      IF GT_DISPLAY[] IS INITIAL.
        MESSAGE S208(00) WITH 'No data.'.
        EXIT.
      ENDIF.
      IF S_RET = '1'.
        MESSAGE I208 WITH 'Document not found'.
        S_RET = ' '.
      ELSE.
        S_RET = ' '.
        CALL SCREEN '2000'.
      ENDIF.
    So my question is, that the above logic, when I running the program first time It's working good, at the START-OF-SELECTION, but when I trying to runnig from the SELECTION-SCREEN "second time", from the   START-OF-SELECTION it's jumping to the CALL SELECTION-SCREEN '1000'. How can I avoid this. I want that from the  START-OF-SELECTION, never go to the CALL SELECTION-SCREEN '1000'.
    Thank You
    Edited by: Roland on Dec 5, 2011 11:27 AM

    Hi Max!
    Yeah, I was thinking the same, that the problem is with that loop.
    But I don't know, how can I solved in a different way, because when we hit the print button, we getting all the items from a table, and we starting looping on them. In the loop we passing the values to a GT_ITEM table, later this table is connected with an excell, so it will be printed out in an excell form.
    So I have to call this screen so many times, how many items we have. Sometimes just 1, sometimes 4, 6, 9, and so on.
    For this items I have to add 2 more fields, wich are uploaded by the user. ( The other fields are coming from the table)
    So if I going out from the loop after the CALL SCREEN 400, I think the next item wont be get the values. Or maybe any of them, because this is before the APPEND GT_ITEM. So this methode wont be called, no data would be in the table, nothing will be printed.
    *-Item
      SELECT BNFPO MATNR TXZ01 MENGE MEINS ERNAM PREIS BEDNR EBELN EBELP
        INTO CORRESPONDING FIELDS OF TABLE LT_EBAN
        FROM EBAN
       WHERE BANFN  =  GT_DISPLAY-BANFN
         AND LOEKZ  =  ' '.
      CLEAR L_TOTAL.
      SORT LT_EBAN BY BNFPO.
      LOOP AT LT_EBAN.
        GT_ITEM2-FIELD01 = SY-TABIX.
        GT_ITEM2-FIELD02 = LT_EBAN-MATNR.
    *---Part name, Type, Maker
        SPLIT LT_EBAN-TXZ01 AT ',' INTO GT_ITEM2-FIELD03 GT_ITEM2-FIELD04 GT_ITEM2-FIELD05.
         CONCATENATE GT_ITEM2-FIELD03 '/' GT_ITEM2-FIELD04 INTO DESCR.
         ITEM = LT_EBAN-BNFPO.
         CALL SCREEN 400 STARTING AT 20 7 ENDING AT 60 18.
    *---Machine
        GT_ITEM2-FIELD06 = ST_400-MACHINE.
    *---Using Qty
        WRITE ST_400-USING UNIT LT_EBAN-MEINS TO GT_ITEM2-FIELD08.
    *---Now Stock
        CLEAR L_LABST.
        SELECT SUM( LABST ) INTO L_LABST
          FROM ZMM0460T
         WHERE MATNR = LT_EBAN-MATNR
           AND WERKS = '3A10'.
        WRITE L_LABST UNIT LT_EBAN-MEINS TO GT_ITEM2-FIELD09.
        WRITE LT_EBAN-MENGE UNIT LT_EBAN-MEINS TO GT_ITEM2-FIELD10.
        IF NOT LT_EBAN-EBELN IS INITIAL.
          CLEAR LS_EKPO.
          SELECT SINGLE NETPR WAERS PEINH
            INTO CORRESPONDING FIELDS OF LS_EKPO
            FROM EKPO AS A INNER JOIN EKKO AS B ON A~EBELN EQ B~EBELN
           WHERE A~EBELN = LT_EBAN-EBELN
             AND A~EBELP = LT_EBAN-EBELP.
          IF LS_EKPO-WAERS <> 'HUF'.
            CALL FUNCTION 'CONVERT_TO_LOCAL_CURRENCY'
              EXPORTING
                DATE             = SY-DATUM
                FOREIGN_AMOUNT   = LS_EKPO-NETPR
                FOREIGN_CURRENCY = LS_EKPO-WAERS
                LOCAL_CURRENCY   = 'HUF'
              IMPORTING
                LOCAL_AMOUNT     = LS_EKPO-NETPR.
          ENDIF.
          IF LS_EKPO-PEINH IS INITIAL. LS_EKPO-PEINH = 1. ENDIF.
          LT_EBAN-PREIS = LS_EKPO-NETPR / LS_EKPO-PEINH.
        ENDIF.
        WRITE LT_EBAN-PREIS CURRENCY 'HUF' TO GT_ITEM2-FIELD11.
        CONDENSE GT_ITEM2-FIELD11.
        CONCATENATE GT_ITEM2-FIELD11 'Ft' INTO GT_ITEM2-FIELD11
          SEPARATED BY SPACE.
        L_NETWR = LT_EBAN-MENGE * LT_EBAN-PREIS.
        WRITE L_NETWR CURRENCY 'HUF' TO GT_ITEM2-FIELD12.
        CONDENSE GT_ITEM2-FIELD12.
        CONCATENATE GT_ITEM2-FIELD12 'Ft' INTO GT_ITEM2-FIELD12
          SEPARATED BY SPACE.
        L_TOTAL = L_TOTAL + L_NETWR.
    *---Unit
        SELECT SINGLE UNIT INTO GT_ITEM2-FIELD13
          FROM ZMM0500T
         WHERE PERNR = LT_EBAN-BEDNR.
    *---Name
        SELECT SINGLE SNAME INTO GT_ITEM2-FIELD14
          FROM PA0001
         WHERE PERNR = LT_EBAN-BEDNR
           AND ENDDA = '99991231'.
    *---Append
        GT_ITEM2-CNTR01 = ''.
        APPEND GT_ITEM2. CLEAR: GT_ITEM2, ST_400, DESCR, ITEM.
      ENDLOOP.
      GT_ITEM2-FIELD11 = 'Total'.
      WRITE L_TOTAL CURRENCY 'HUF' TO GT_ITEM2-FIELD12.
      CONDENSE GT_ITEM2-FIELD12.
      CONCATENATE GT_ITEM2-FIELD12 'Ft' INTO GT_ITEM2-FIELD12
        SEPARATED BY SPACE.
      GT_ITEM2-CNTR01 = 'B'.
      APPEND GT_ITEM2. CLEAR GT_ITEM2.
    ANy idea?
    Thank You
    Edited by: Roland on Dec 5, 2011 1:36 PM
    Edited by: Roland on Dec 5, 2011 1:50 PM

  • Call Selection Screen

    Hi,
    can any one give me good links for
    All variants of at selection screen..
    some thing on call selection screen
    Thx,
    Shashi

    ·     AT SELECTION-SCREEN
    You should only perform very expensive checks with AT SELECTION-SCREEN if the program is then started. Here, you can read the system field SSCRFIELDS-UCOMM (provided a statement TABLES SSCRFIELDS exists). If the field has one of the values 'ONLI' (= Execute) or 'PRIN' (= Execute and Print), the report is then started, i.e. the selection screen is closed and the processing continues with START-OF-SELECTION.
         Additions:
    ·     ... ON psel
    Effect
    This event is assigned to the selection screen fields corresponding to the report parameter or selection criterion psel.
    If the report starts an error dialog at this point, precisely these fields become ready for input.
    ·     ... ON END OF sel
              For each selection criterion sel on the selection screen, you can call a further screen by pressing a pushbutton. On this screen, you can enter any number of single values and ranges for the selection criterion sel..
    When this screen has been processed (i.e. at the end of PAI for this screen), the event AT SELECTION-SCREEN ON END OF sel is executed.
    At this point, all the values entered are available in the internal table sel.
    ·     ... ON VALUE-REQUEST FOR psel_low_high
    Effect
    In this addition, the field psel_low_high is either the name of a report parameter or of the form sel-LOW or sel-HIGH, where sel is the name of a selection criterion. The effect of this is twofold:
    1.     The possible entries pushbutton for F4 appears beside the appropriate field.
    2.     When the user activates this pushbutton or presses F4 for the field, the event is executed. You can thus implement a self-programmed possible entries routine for the input/output fields of the selection screen. If the program contains such an event and the user presses F4, the system processes this rather than displaying the check table or the fixed values of the Dictionary field.
    ·     ... ON HELP-REQUEST FOR psel_low_high
    Effect
    As with the addition ON VALUE-REQUEST the field psel_low_high is either the name of a report parameter or of the form sel-LOW or sel-HIGH, where sel is the name of a selection criterion. When the user presses F1 on the relevant field, the subsequent processing block is executed. You can thus implement a self-programmed help for the input/output fields of the selection screen. If the program contains such an event and the user presses F1, the system processes this rather than displaying the documentation of the Dictionary field - even if the report parameter or the selection option with LIKE or FOR points to a Dictionary field.
    ·     ... ON RADIOBUTTON GROUP radi
    Effect
    This event is assigned to the radio button groups on the selection screen defined by PARAMETERS par RADIOBUTTON GROUP radi.  If the report starts at an error  dialog at this point ,precisely these fields of the radio button group
    radi become ready for input again.
    ·     ... ON BLOCK block
    Effect
    This event is assigned to the blocks on the selection screen defined by SELECTION-SCREEN BEGIN/END OF BLOCK block. If the report starts at an error
    dialog at this point, precisely these fields of the block block become ready for input again.
         The events assigned to the radio button groups are executed according to the first parameter of the radio button group.
    The events assigned to the blocks are executed "from the inside to the outside".
    ·     ... OUTPUT
    Effect
    This event is executed at PBO of the selection screen every time the user presses ENTER - in contrast to INITIALIZATION. Therefore, this event is not suitable for setting selection screen default values. Also, since AT SELECTION-SCREEN OUTPUT is first executed after the variant is imported (if a variant is used) and after adopting any values specified under SUBMIT in the WITH clause, changing the report parameters or the selection options in AT SELECTION-SCREEN OUTPUT would destroy the specified  values. Here, however, you can use LOOP AT SCREEN or MODIFY SCREEN to change the inout/output attributes of selection screen fields. 
    ·     ... ON EXIT-COMMAND
    Effect
    This event is executed at the exit command of the selection screen - that is, at Back, Cancel, or End,events executed after the screen is sent that do not cause the system to check the input and execute the PAI.
    plz reward if useful
    vivek

Maybe you are looking for

  • Error message while releasing to accounting

    hi guys I created sales order, delivery and pgi and invoice and after that when i release to accounting this following error message coming. Error Message Error in account determination: table T030K key INT EXD Message no. FF709 Diagnosis In the char

  • My HP Pavillion w/Windows XP will not recognize my new External HDD

     HP Pavillion w/Windows XP Media Center   m7267c Desktop PC Is it necessary to pay a outside Driver manager to restor the ability of my PC to instal Driver Software for devices that the specific Mfg states should already have present on my OS? I purc

  • How do i create a new Event in the new Photos?

    I have imported some photos into my new Photos library but unlike before they don't show up as an Event. How do i create a new Event and move them into this Event?

  • Problem with the the file sharing

    I have iTunes version 11.0.2 nad I can't find the file sharing, I tried to look for it in Apps but I couldn't find it. Please help me.

  • DVD Menu distorted on playback and finished copy

    The last several projects I have worked on in Premiere Elements 9 seem to have an issue with the DVD Menu being distorted on preview and playback as well as when I burn them to DVD .  I noticed it several months ago on a short 20 minute video.  The D