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
GoviThanks 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,
JerryI 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...
HelmutI 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 ReportsHi 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 shaikHi 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 repliesI 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 reddyHi,
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
-
Basic Functionality Questions - Is a computer required to serve content, etc?
I'm sorry if these are no-brainers. I ask them because I thought I had understood how an AppleTV worked, and had planned on buying one, until a friend who owns one insisted that the device functions differently than I had understood it to. I think he
-
Programmed vs measured voltage on Keithley 2400 and other things
Hello everyone, I have two issues with our Keithley 2400, which we control through Labview, and I would be very grateful for some help/advice. The issues are listed below: 1) We use the 2400 for 4-point probe measurements, so we plot graphs of curren
-
Can I switch phone numbers between two iPhones?
I have ordered a 3GS, replacing my wife's 2G model. She will now get my 3G model. Do we have to change phone numbers or is there a way to move my 3G number with the 3GS and vice versa. It would be much better if that was possible.
-
Cant get rid of a popup redirect window in Safari
Im trying to help a fellow Mac friend remove a redirect popup in Safari ( http://premium_.s3.amazonaws.com ). We've tried resetting Safari with all check boxes selected ( cache, history, and cookies ) with no luck. Any ideas?? The full URL of the pop
-
HT4623 how to solve the error 1015
hi how to solve error 1015 that i got during updating