Skip to Content
author's profile photo Former Member
Former Member

report prog

Hi all,

I have a req in report programming where i have 4 selection screens in all.

The 3rd selection screen should appear only after I select values from 1st and 2nd selection screens

and the 4th selection screen should appear after value selection from the 3rd selection screen is done.

any pointers how to do that?

do i need dialog prog to do this?

Add a comment
10|10000 characters needed characters exceeded

Assigned Tags

Related questions

8 Answers

  • author's profile photo Former Member
    Former Member
    Posted on Nov 11, 2008 at 11:28 AM

    Hi,

    You have to define Screen Group Id then after you have to do coding at Selection-screen....event.

    Where you can able to diable at a time any of the screen display....

    Regards

    Ricky.

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Nov 11, 2008 at 11:29 AM

    use SELECTION-SCREEN: BEGIN OF TABBED BLOCK...using this u can control 4 selection screen in single screen

    SELECTION-SCREEN BEGIN OF SCREEN 100 AS SUBSCREEN.

    SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME.

    PARAMETERS: p1(10) TYPE c,

    p2(10) TYPE c,

    p3(10) TYPE c.

    SELECTION-SCREEN END OF BLOCK b1.

    SELECTION-SCREEN END OF SCREEN 100.

    • SUBSCREEN 2

    SELECTION-SCREEN BEGIN OF SCREEN 200 AS SUBSCREEN.

    SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME.

    PARAMETERS: q1(10) TYPE c OBLIGATORY,

    q2(10) TYPE c OBLIGATORY,

    q3(10) TYPE c OBLIGATORY.

    SELECTION-SCREEN END OF BLOCK b2.

    SELECTION-SCREEN END OF SCREEN 200.

    • STANDARD SELECTION SCREEN

    SELECTION-SCREEN: BEGIN OF TABBED BLOCK mytab FOR 10 LINES,

    TAB (20) button1 USER-COMMAND push1,

    TAB (20) button2 USER-COMMAND push2,

    TAB (20) button3 USER-COMMAND push3

    DEFAULT SCREEN 300,

    END OF BLOCK mytab.

    INITIALIZATION.

    button1 = text-010.

    button2 = text-020.

    button3 = text-030.

    mytab-prog = sy-repid.

    mytab-dynnr = 100.

    mytab-activetab = 'BUTTON1'.

    AT SELECTION-SCREEN.

    CASE sy-dynnr.

    WHEN 1000.

    CASE sy-ucomm.

    WHEN 'PUSH1'.

    mytab-dynnr = 100.

    mytab-activetab = 'BUTTON1'.

    WHEN 'PUSH2'.

    mytab-dynnr = 200.

    mytab-activetab = 'BUTTON2'.

    ENDCASE.

    WHEN 100.

    MESSAGE s888(sabapdocu) WITH text-040 sy-dynnr.

    WHEN 200.

    MESSAGE s888(sabapdocu) WITH text-040 sy-dynnr.

    ENDCASE.

    MODULE init_0100 OUTPUT.

    LOOP AT SCREEN.

    IF screen-group1 = 'MOD'.

    CASE flag.

    WHEN 'X'.

    screen-input = '1'.

    WHEN ' '.

    screen-input = '0'.

    ENDCASE.

    MODIFY SCREEN.

    ENDIF.

    ENDLOOP.

    ENDMODULE.

    MODULE user_command_0100 INPUT.

    MESSAGE s888(sabapdocu) WITH text-050 sy-dynnr.

    CASE sy-ucomm.

    WHEN 'TOGGLE'.

    IF flag = ' '.

    flag = 'X'.

    ELSEIF flag = 'X'.

    flag = ' '.

    ENDIF.

    ENDCASE.

    ENDMODULE.

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Nov 11, 2008 at 11:30 AM

    hi,

    I feel dialog programing would be a better case in this type of requirements.

    while calling the screen you can put those four screens in a better sequence easily through dialog prog.

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Nov 11, 2008 at 11:31 AM

    Rahul,

    Your report will be something in between a dialogue and report program.

    1. Create a report

    2. You can create the screens by going to SE80 transaction give the report name there.

    3. Call the screens based on at selection screen events.

    4. You can also do some dialogue programming events in the report.

    Sojan

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Nov 11, 2008 at 11:31 AM

    Hi,

    In Report Programming if you are selecting/entering some fields on selection screen then it will be stored in some of the internal table.

    In the consequent fields of the selection screen use that fields of that internal table by making inner/outer join of the two or more tables depending upon your requirements.

    Dialog programming will also be a option but I think it will work.

    Thanks,

    Nitesh Jain

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Nov 11, 2008 at 11:32 AM

    hi Rahul,

    there is no need of dialog programing u can do in report as well

    use group id highlighted below.

    selection-screen BEGIN OF block b1 WITH frame title text-001.

    SELECTION-SCREEN SKIP 1.

    PARAMETERS:p_cov RADIOBUTTON GROUP rad1 DEFAULT 'X' USER-COMMAND rusr,

    p_covid TYPE char7 MODIF ID bl1 ,

    p_tab RADIOBUTTON GROUP rad1.

    TRANSLATE p_covid TO UPPER CASE.

    SELECT-OPTIONS : s_tabn FOR wa_tabn-tabn <b> MODIF ID </b> bl2 NO INTERVALS.

    " Table Name

    PARAMETERS: p_deltab TYPE char2 DEFAULT '^' OBLIGATORY .

    "Delimiter

    SELECTION-SCREEN SKIP 1.

    PARAMETERS:p_loc TYPE rlgrap-filename.

    SELECTION-SCREEN END OF BLOCK b1.

    use the above code according to ur requirment for other screens.

    Regards

    Amit

    Edited by: Amit Kumar on Nov 11, 2008 12:32 PM

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Nov 11, 2008 at 11:34 AM

    hi you write condition as..

    at selection-screen.

    **take the fields of both screen ***

    if a is not initial and b is not initial.

    call selection-screen '3000'.

    endif.

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Nov 11, 2008 at 11:37 AM

    Try going for a TABSTRIP control.

    Regards

    Karthik D

    Add a comment
    10|10000 characters needed characters exceeded

Before answering

You should only submit an answer when you are proposing a solution to the poster's problem. If you want the poster to clarify the question or provide more information, please leave a comment instead, requesting additional details. When answering, please include specifics, such as step-by-step instructions, context for the solution, and links to useful resources. Also, please make sure that you answer complies with our Rules of Engagement.
You must be Logged in to submit an answer.

Up to 10 attachments (including images) can be used with a maximum of 1.0 MB each and 10.5 MB total.