At Selection-screen output event

Hi
can any one give me some examples for at selection-screen output event
with regards
nagaraj
Moderator message: please search for available information/documentation.
Edited by: Thomas Zloch on Nov 8, 2011 12:13 PM

Thanks Benedict
Creating Module %_S_KOSTL and write our own logic to bring the parameter id value of Cost center from User profiles is NOT possible in program RM06BF00,  screen 1000.
We can do that in Copied program of RM06BF00 ..which is the very last option.
I wanted to do that with User-exits or BADI or Enhancement spot etc...which i Couldn't do it so far...
The alternate might be Zprog and Ztcode or an SNOTE..
if you ALL think its NOT possible with User-exits or BADI or Enhancement spot or SNOTE etc..Then i will close this Thread...
Please let me know ASAP...
Thanks
Govi

Similar Messages

  • AT SELECTION-SCREEN OUTPUT event of standard tcode

    Hi
    I need User-exit or BADI or Enhancment spot in AT SELECTION-SCREEN OUTPUT event of ME55.
    I need to populate the default cost center into the cost center field from user parameters with pid 'KOS' when i execute the ME55.
    I maintained the PID in user parameters but the value is not getting populated in ME55.
    Please let me know
    Govi

    Thanks Benedict
    Creating Module %_S_KOSTL and write our own logic to bring the parameter id value of Cost center from User profiles is NOT possible in program RM06BF00,  screen 1000.
    We can do that in Copied program of RM06BF00 ..which is the very last option.
    I wanted to do that with User-exits or BADI or Enhancement spot etc...which i Couldn't do it so far...
    The alternate might be Zprog and Ztcode or an SNOTE..
    if you ALL think its NOT possible with User-exits or BADI or Enhancement spot or SNOTE etc..Then i will close this Thread...
    Please let me know ASAP...
    Thanks
    Govi

  • Enforcing event AT-SELECTION-SCREEN OUTPUT

    Hi Gurus
    Does anybody know how to force event AT-SELECTION-SCREEN OUTPUT ?
    What I'm aiming for is changing screen somewere outside of this event. For example.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_param.
      IF p_param = 'change'.
        changes_in_screen = 'X'.
        *???*   "forcing AT-SELECTION-SCREEN OUTPUT event
      ENDIF.
    AT-SELECTION-SCREEN OUTPUT.
      IF changes_in_screen = 'X'.
        LOOP AT SCREEN.
          "do something
        ENDLOOP.
      ENDIF.
    I would be grateful for any hints.

    One alternative to define two selection screens.  First selection screen (default selection screen of report #1000) having Client_type.  After user hits execute (F8) then show the second selection screen with corresponding parameters.
    PARAMETERS: p_client(1).
    SELECTION-SCREEN BEGIN OF SCREEN 9000 AS WINDOW.
    PARAMETERS: p_name(20),
                p_lname(20),
                p_cname(20),
                p_oname(20).
    SELECTION-SCREEN END OF SCREEN 9000.
    AT SELECTION-SCREEN OUTPUT.
      CHECK sy-dynnr = '9000'.
    *  Hide corresponding fields on second selection screen
    *  based on values of P_CLIENT.
    *  Also should make key parameters obligatory!
    START-OF-SELECTION.
      CALL SELECTION-SCREEN 9000 STARTING AT 5 5.
    Another alternative is to use a dialog/module pool program to handle this.  Such screen field controlling can easily be done in dialog programs because you have full PAI/PBO control, unlike report program selection screen 1000.  Unfortunately in a dialog program it is not easy to reproduce the functionality of a select-option.

  • Help Needed in At selection screen output

    Hi Experts,
    I need your help in AT SELECTION SCREEN OUTPUT event. My issue is i have 4 radio button and with each radio button couple of parameters that need to be filled in selection screen of report. My requirement is that sometimes user enters details in second radio button parameters but forgot to change the radio button to second one so kindly suggest a solution so that radio button gets selected as per user input in parameter like if user clicks on certain parameter to enter value then automatically corresponding radio button gets selected.
    Thanks in advance for all your help.

    example from a checkbox in one of my progs..but you can do same approach with radio butts
    parameters p_test as checkbox default abap_on user-command test.
    at selection-screen.
        if sy-ucomm = 'TEST'.
          perform birth_mnth_chck.
        endif.

  • Tabbed selection screen with AT SELECTION-SCREEN ON events does not work

    I have a selection screen with 3 tabs fields on each tab have AT SELECTION-SCREEN ON field events.  
    If you are on tab 1 and select a variant that populates fields on all tabs and then click the execute button ABAP does not seem to recognize that the field has changed when it executes AT SELECTION-SCREEN ON field event unless you physically go to each tab.
    I can work around this by:
    1) moving all of the AT SELECTION-SCREEN ON field events in a AT SELECTION-SCREEN OUTPUT event.  This is not efficient and it potentially opens me up to other problems.
    2) changing the selection screen to remove the tabs and have all of the fields on 1 screen.  This makes for a very long screen.
    Is there any way to have ABAP check all tabs?
    Thanks,
    Jerry

    I finally got it to start.   Let it sit and tried and it wouldn't but then I tried again and it did.  How do I blow the dust out?   I think it must be something with the heat since that comes up alot. 
    I will do it, I love my Mac.

  • At selection- screen output issue

    Hi,
    I have a issue regarding at selection-screen output event with radio buttons, 
    Fields are like,
    Block B1
      RB1
    Block B2
    RB2
       field 1 (Check box)
       field 2 (Check box)
    User can select one radio button at a time. If the user clicks on radio button RB1 then fields under Block B2 will be disabled. If user click on RB2 field 1 and fields 2 will be input enabled. Could you please give the solution asap
    Note: Radio buttons are in different selection screen blocks.

    Check this code -
    *SELECTION-SCREEN BEGIN OF BLOCK B WITH FRAME.
    *PARAMETERS:
    *Pi1 TYPE C  RADIOBUTTON GROUP G1 DEFAULT 'X',
    *Pi2 TYPE CHAR25,
    *Pi3 TYPE C  RADIOBUTTON GROUP G1,
    *Pi4 TYPE CHAR25.
    *SELECTION-SCREEN END OF BLOCK B.
    *PARAMETERS check AS CHECKBOX.
    *PARAMETERS show_all AS CHECKBOX USER-COMMAND flag.
    *SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME.
    *PARAMETERS: ip1(10) TYPE c,
               ip2(10) TYPE c,
               ip3(10) TYPE c.
    *SELECTION-SCREEN END OF BLOCK b1.
    *SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME.
    *PARAMETERS: ip4(10) TYPE c MODIF ID bl2,
               ip5(10) TYPE c MODIF ID bl2,
               ip6(10) TYPE c MODIF ID bl2.
    *SELECTION-SCREEN END OF BLOCK b2.
    *AT SELECTION-SCREEN OUTPUT.
    LOOP AT SCREEN.
       IF show_all <> 'X' AND
          screen-group1 = 'BL2'.
          screen-active = '0'.
       ENDIF.
       MODIFY SCREEN.
    ENDLOOP.
    Regards,
    Amit Khare
    reward all helpful replies.

  • At selection-screen output in batch job

    Hi guys,
    is at selection-screen output event being triggered in batch job?
    Thanks!

    Yes it will, We set the value using a variant during scheduling the job but that values can also be false. You can check that yourself and look for job log then.
    Thanks,
    Jayant

  • Problems in at selection-screen output - setting pushbutton invisible

    Hello,
    I hope I can get some help here
    I have a problem with setting a pushbutton invisible
    i have a field (long-text) in my screen - and behind this a pushbutton for calling the editor
    if in a variant the parameters field is set invisible i also want to set the pushbutton invisible
    i have no idea why in the at selection-screen output event screen-invisible is always 0 - but in the variant the field is set invisible.
    i need to know if the parameters field is invisible to set the pushbutton the same
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(31) S_TXB_L1.
    PARAMETERS S_TXT_L1 TYPE ZHR_FC_STRING.
    SELECTION-SCREEN PUSHBUTTON 79(15) P_LTX_1 USER-COMMAND YLTXT1.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(31) S_TXB_L2.
    PARAMETERS S_TXT_L2 TYPE ZHR_FC_STRING.
    SELECTION-SCREEN PUSHBUTTON 79(15) P_LTX_2 USER-COMMAND YLTXT2.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(31) S_TXB_L3.
    PARAMETERS S_TXT_L3 TYPE ZHR_FC_STRING.
    SELECTION-SCREEN PUSHBUTTON 79(15) P_LTX_3 USER-COMMAND YLTXT3.
    SELECTION-SCREEN END OF LINE.
    AT SELECTION-SCREEN OUTPUT.
    LOOP AT SCREEN.
        IF SCREEN-NAME(7) = 'S_TXT_L'.
          MERK_INVISIBLE = SCREEN-INVISIBLE.
        ENDIF.
        IF SCREEN-NAME(6) = 'P_LTX_'.
         SCREEN-INVISIBLE = MERK_INVISIBLE.
          MODIFY SCREEN.
        ENDIF.
      ENDLOOP.
    Thanks very much...
    Helmut

    I agree - there seems to be some confusion here. In the variant the field can only be "hidden" while in the code it is possible to make the field completely invisible. 'Hiding' the field in the variant merely hides it by default and adds a 'plus' button to the toolbar, by clicking which the hidden elements can be exposed.
    As far as changing the screen fields goes, I find it usefull to use MODIF ID. Perhaps this blog could be helpful:
    http://friendlyabaper.blogspot.com/2009/07/my-super-awesome-selection-screen.html
    P.S. Please use the code tags for the code, per Forum Rules.

  • Model program of at selection screen output

    hi frends
    pls giv me the model code of at selection-screen output event in Reports

    Hi Vishnu,
    Follow this code.
    SELECT-OPTIONS: DATE FOR SY-DATUM NO INTERVALS MODIF ID A.
    PARAMETERS: P_DATE1 LIKE SY-DATUM DEFAULT SY-DATUM.
    PARAMETERS: P_DATE2 LIKE SY-DATUM DEFAULT SY-DATUM.
    PARAMETERS CH1 AS CHECKBOX USER-COMMAND UR1.
    AT SELECTION-SCREEN OUTPUT.
      LOOP AT SCREEN.
        IF CH1  = 'X' .
          IF SCREEN-group1 = 'A'.
          SCREEN-ACTIVE = '0'.
          endif.
          IF SCREEN-NAME = 'P_DATE2'.
            SCREEN-INPUT = '0'.
          ENDIF.
          MODIFY SCREEN.
        ENDIF.
      ENDLOOP.
    if ch1 = 'X'.
    p_date1 = p_date1 - 3.
      endif.
    Rewards if useful.
    Vijay.

  • Initialization & at selection-screen output difference

    i think what we are handling in INITIALIZATION also we can handle same in  AT SELECTION SCREEN OUTPUT also. can any one give example where we can handle things only in INITIALIZATION instead of AT SELECTION-SCREEN OUTPUT.

    hi
    good
    INITIALIZAION->
    This event occurs before the standard selection screen is called. During this event block, the input fields of the standard selection screen can only be initialized once after the program has been started.
    INITIALIZATION.
      airp_fr-sign = 'I'.
      airp_fr-option = 'EQ'.
      airp_fr-low = 'JFK'.
      APPEND airp_fr.
      airp_to-sign = 'I'.
      airp_to-option = 'EQ'.
      airp_to-low = 'FRA'.
      APPEND airp_to.
      carrid-sign   = 'I'.
      carrid-option = 'BT'.
      carrid-low    = 'AA'.
      carrid-high   = 'LH'.
      APPEND carrid.
      datum+6(2) = '01'.
    AT SELECTION-SCREEN OUTPUT->
    In the PBO of the selection screen, the
    AT SELECTION-SCREEN OUTPUT
    event is triggered. This event block allows you to modify the selection screen and its fields directly before it is displayed.
    AT SELECTION-SCREEN OUTPUT.
      LOOP AT SCREEN.
        IF screen-group1 = 'SC1'.
          screen-intensified = '1'.
          MODIFY SCREEN.
          CONTINUE.
        ENDIF.
        IF screen-group1 = 'SC2'.
          screen-intensified = '0'.
          MODIFY SCREEN.
        ENDIF.
      ENDLOOP.
    if you go through this you ll find both are completely difference and they do different job at different point.
    thanks
    mrutyun^

  • Event at selection-screen output

    Hi all,
    we have common include for all the reports. Now i need to add few selects to all screens based upon some conditions.so i added the seletions to the common include. Based upon some conditions ,i need to activate or deactivate these selections. this can be done at the event at seleciton-screen output. so i did that but few programs are giging dump as these programs already have the above mentioned event(ie at selection-screen output) now how to solve this issue.
    Please suggest me .
    Thanks
    Jaffer Vali shaik

    Hi Jaffer,
    The conditions to display the additional selection, are they based on user input data? If not, you could try to put the logic in the initialization event. Check the 'where-used list' to see whether all programs accessing this common include already has initialization event or not.
    If the display for selection are based on other selection criteria, then you need to evaluate the common include. Based on your project standard, does the include should have events processing in it? If yes, maybe the few programs that cause shortdump should move their logic to this common include (using the SY-REPID condition).
    Regards,
    Dewi

  • Query related to at selection screen event & at selection-screen output

    Hi all,
    thanks in advance
    i have two radio buttons say rd1 & rd2
    on my selection screen i have date,period,year and these fields r mandatory fields
    when i try to select the radio button rd2 then it is not disabling the fields period and year rather it is checking the fields for mandatory and vicevesr
    here is the code plz help me out
    AT SELECTION-SCREEN OUTPUT.
    LOOP AT SCREEN.
        IF rd1 = 'X'.
          IF screen-group1  = 'GR1'.
            screen-input  = '0'.
            MODIFY SCREEN.
          ENDIF.
        ENDIF.
        IF rd2 = 'X'.
          IF screen-group1  = 'GR2'.
            screen-input  = '0'.
            MODIFY SCREEN.
          ENDIF.
        ENDIF.
      ENDLOOP.
    AT SELECTION-SCREEN.
    blank period is not allowed
        IF monat[] IS INITIAL.
          MESSAGE e008.
        ENDIF.
    blank fiscal year is not allowed
        IF gjahr[] IS INITIAL.
          MESSAGE e009.
        ENDIF.
    blank document date is not allowed
        IF bldat[] IS INITIAL.
          MESSAGE e020.
        ENDIF.
    awiting for all u r replies

    I UNDERSTOOD Y U HAVE GIVE ERROR MESSAGE,
    WHEN U R DECLARING THE VALUES AS OBLIGATORY BEFORE, THEN NO NEED TO GIVE MESSAGES IN AT SELECTION SCREEN.
    BUT BASED ON SOME CONDITIONS, IF U WANT TO MAKE THEM OBLIGATORY DYNAMICALLY THEN GIVE THE CONDITION ALSO
    EXAMPLE
    AT SELECTION-SCREEN OUTPUT.
      LOOP AT SCREEN.
        IF a = 'X'.
          IF screen-group1 = 'GR2'.
            screen-input = 0.
                 ELSE.
           SCREEN-INPUT = 1.
          ENDIF.
          MODIFY SCREEN.
        ENDIF.
        IF c = 'X'.
          IF screen-group1 = 'GR1'.
            screen-input = 0.
         ELSE.
           SCREEN-INPUT = 1.
          ENDIF.
          MODIFY SCREEN.
        ENDIF.
      ENDLOOP.
    AT SELECTION-SCREEN.
    IF  d is initial.
    MESSAGE e009.
    ENDIF.
    start-of-selection.
    write b.
    2ND EXAMPLE:
    AT SELECTION-SCREEN OUTPUT.
      LOOP AT SCREEN.
        IF a = 'X'.
          IF screen-group1 = 'GR2'.
            screen-input = 0.
                 ELSE.
           SCREEN-INPUT = 1.
          ENDIF.
          MODIFY SCREEN.
        ENDIF.
        IF c = 'X'.
          IF screen-group1 = 'GR1'.
            screen-input = 0.
         ELSE.
           SCREEN-INPUT = 1.
          ENDIF.
          MODIFY SCREEN.
        ENDIF.
      ENDLOOP.
    AT SELECTION-SCREEN.
    IF B = 5 AND d is initial.
    MESSAGE e009.
    ENDIF.
    start-of-selection.
    write b.
    I HAVE SENT U TWO EXAMPLES, IN THE SEOND EXMAPLE, IT WORKS FINE AS U HAVE GIVEN SOME OTHER CONDITION.
    IN THE FIRST EXAMPLE, AS IT WILL NOT WORK AS IAM CHECKING ONLY INITIAL CONDITION.
    FOR CHECKING ONLY INITIAL CONDITION, NO NEED TO WRITE IT AT SELECTION SCREEN , U CAN DIRECTLY DECLARE AS OBLIGATORY IN THE BEGINING IT SELF.
    JUST COPY AND PASTE MY TWO PROGRAMS AND FIND OUT THE DIFFERENCE IAM EXPLAINING
    Message was edited by: Hymavathi Oruganti

  • At selection screen output dialog

    how i can make
    i have customer i want when i click enter to get the description.
    the program is dialog , i get always err,and when i put in PBO or PAI.

    Hi Little ,
      What i understand is that you are working on a report and not a module pool.
    If it is a report then you will first have to modify the selection screen , go to SE51 , put in the program name and the screen number ( which is generally 1000) , on the screen add a new I/O box which is for Output only let it be KNA1-NAME1 .
    Now you need to write the code in the event AT SELECTION-SCREEN OUTPUT .
    Here is the sample code for the same
    tables : kna1.
    parameter : kunnr type kna1-kunnr.
    at selection-screen output.
    if not kunnr is initial.
      select single name1 into kna1-name1
        from kna1
        where kunnr =  kunnr.
    endif.
    Hope this helps.
    Regards
    Arun

  • At selection-screen output probelm

    Hi ,
    I am using 4 parameters in the selection screen . I am entering data in the 3 input fields. Then I am doing concatenate 3 fileds data into the 4 th field in the event AT SELECTION-SCREEN OUTPUT, bur my problem is  When ever i click ENTER , then only 4th field is updating. With out ENTER key , Is it possible update 4th filed.
    regards,
    ramajay reddy

    Hi,
    This is not possible without a user action on the screen, unless your fields are drop down lists, check box or radiobutton respectively, Reason is that the SAP Screen processing will not trigger the PAI event unless there is a user action on the screen like pushing a button, radiobutton , checkbox or selecting a value from a dropdown list. And hence PBO will not get triggered either. Thus entering value in input fields and pressing the tab key is not enough. The user must press 'Enter' if the PAI--PBO should be triggered.
    Pressing 'Enter' is much more user friendly and convinient than adding a button/radiobutton/checkbox on the selection screen to update other fields on the selection screen as in your scenario.
    regards,
    Advait

  • At selection-screen output and  at selection-screen on

    Hi Experts,
    I had coded in both at selection-screen output for disabling input of certain fields and at selection-screen for validation like this:
    AT SELECTION-SCREEN output.
      IF p_amt = 'X'.
        LOOP AT SCREEN.
          CASE screen-name.
            WHEN 'P_AMT'.
              screen-input = '1'.
            WHEN 'P_TST'.
              screen-input = '1'.
            WHEN 'P_B4C'.
              screen-input = '1'.
            WHEN 'P_AFC'.
              screen-input = '1'.
            WHEN 'P_COM'.
              screen-input = '1'.
            WHEN 'P_COM1'.
              screen-input = '1'.
            WHEN 'P_COM2'.
              screen-input = '1'.
            WHEN OTHERS.
              screen-input = '0'.
          ENDCASE.
          MODIFY SCREEN.
        ENDLOOP.
      ENDIF.
      IF p_amt = 'X'.
        LOOP AT SCREEN.
          CASE screen-name.
            WHEN 'P_AMT'.
              screen-input = '1'.
            WHEN 'P_TST'.
              screen-input = '1'.
            WHEN 'P_B4C'.
              screen-input = '1'.
            WHEN 'P_AFC'.
              screen-input = '1'.
            WHEN 'P_COM'.
              screen-input = '1'.
            WHEN 'P_COM1'.
              screen-input = '1'.
            WHEN 'P_COM2'.
              screen-input = '1'.
            WHEN OTHERS.
              screen-input = '0'.
          ENDCASE.
          MODIFY SCREEN.
        ENDLOOP.
      ENDIF.
      IF p_pdf = 'X'.
        LOOP AT SCREEN.
          CASE screen-name.
            WHEN 'P_PDF'.
              screen-input = '1'.
            WHEN 'P_TST'.
              screen-input = '1'.
            WHEN 'P_PATH'.
              screen-input = '1'.
            WHEN OTHERS.
              screen-input = '0'.
          ENDCASE.
          MODIFY SCREEN.
        ENDLOOP.
      ENDIF.
      IF p_afc = 'X'.
        LOOP AT SCREEN.
          CASE screen-name.
            WHEN 'P_TST'.
              screen-input = '1'.
            WHEN 'S_FID-LOW' OR 'S_FID-HIGH'.
              screen-input = '0'.
            WHEN 'S_ORG-LOW' OR 'S_ORG-HIGH'.
              screen-input = '0'.
            WHEN 'S_OFF-LOW' OR 'S_OFF-HIGH'.
              screen-input = '0'.
            WHEN 'S_DAT-LOW' OR 'S_DAT-HIGH'.
              screen-input = '0'.
          ENDCASE.
          MODIFY SCREEN.
        ENDLOOP.
      ENDIF.
    AT selection-screen on block b5.
    if p_tst is initial.
      message text-016 type 'E'.
    endif.
    AT selection-screen on block b2.
    if p_amt ne 'X' and p_pdf ne 'X'.
    if s_fid is initial and s_org is initial.
    message text-000 type 'E'.
    endif.
    if s_dat is initial.
    message text-000 type 'E'.
    endif.
    endif.
    when i comment out at selection-screen validations the input is disabled for the screen fields as set, else the validations are executed first.
    Any solution for this???
    Thanks in advance.

    AT SELECTION-SCREEN
    Syntax
    AT SELECTION-SCREEN selscreen_event.
    Effect
    This statement defines event blocks for different events selscreen_event that are triggered by the ABAP runtime environment during selection screen processing.
    Selection screen events occur immediately before sending a selection screen and after certain user actions on a displayed selection screen. They assist in selection screen processing in the ABAP program.
    AT SELECTION-SCREEN is triggered at least twice during actions on selection screens that are linked into another selection screen as a subscreen - first for the linked selection screen itself, and then for the linking selection screens.
    Note
    The event blocks after AT SELECTION-SCREEN are implemented internally as procedures. Declarative statments in these event blocks create local data.

Maybe you are looking for