Screen field invisible...
Hi all,
My requirment is as follows:
I have two radiobuttons...
one input parameters...
...the reqmnt is ..whn we select rad1 the input parameter must be mandatory...
and for rad2 the input parameter should be invisible...
i hav to do validation for input parameter also.....
so plz let me know under which event i should write and wt shld i write..
thnx
Rohit
Check this sample code:
PARAMETERS: pa_logic RADIOBUTTON GROUP e1 USER-COMMAND inv DEFAULT 'X',
pa_equip RADIOBUTTON GROUP e1,
pa_ob RADIOBUTTON GROUP e1.
PARAMETERS: pa_zpms AS CHECKBOX MODIF ID i1.
PARAMETERS :
pa_pex1 TYPE rlgrap-filename MODIF ID i2, " buyers list PC
pa_uex1(200) LOWER CASE MODIF ID i2. " buyers list Unix
AT SELECTION-SCREEN OUTPUT.
IF pa_equip <> 'X'.
LOOP AT SCREEN.
IF screen-group1 = 'I1'.
screen-active = 0. " raise a error message to enter the value in field
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ENDIF.
IF pa_logic <> 'X'.
LOOP AT SCREEN.
IF screen-group1 = 'I2'.
screen-active = 0.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
ENDIF.
Similar Messages
-
Module Pool Programming - Radio Buttons & Screen Field Invisible or Display
Hi,
I have 2 radio buttons in my screen and both of them are checked or on. Not sure how to make one of them is on and other is off at a time. If A is off, i need to make few screen fields invisible or display. if A is on, i need to make the screen field invisible or input enabled.
Can you please suggest me a suitable way to accomplish this task.
Appreciate Your Help in Advance.
Thanks,
Kannanhi
try this
go to SE38 create a program of type M
go to SE51,give a screen no (ex : 0800) and click on create
then click on Layout in se51
in the Layout select the Radiobutton icon and drag/drop it on the layout
Define them as by double clicking on the radiobutton icon
First Radiobutton name : RB1, Groups : u can see 4 boxes,in the first box give group as G1
do the same for the Second Radiobutton RB2.
Now select both the radiobuttons RB1,RB2 both at a time and right click the cursor
Radiobutton - Define.
Then drag and drop a i/o field name : wk_name. save & activate the layout.
in se51
PBO
Module_status_0800.
Module_screen_modif.
PAI
Module_user_command_0800.
in se38
data : wk_name(10) type c.
data : rb1,rb2.
Module_screen_modif_o/p.
if RB1 = 'X'.
LOOP AT SCREEN.
IF SCREEN-NAME = 'WK_NAME'.
SCREEN-INPUT = '1'.
SCREEN-INVISIBLE = '0'.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
if RB2 = 'X'.
LOOP AT SCREEN.
IF SCREEN-NAME = 'WK_NAME'.
SCREEN-INPUT = '0'.
SCREEN-INVISIBLE = '1'.
MODIFY SCREEN.
ENDIF.
ENDLOOP.
endmodule.
Module_user_command_0800.
case sy-ucomm.
when 'EXIT' or 'BACK' or 'CANCEL'.
LEAVE PROGRAM.
endcase.
Endmodule.
Regards -
How to make a screen field invisible?
Hi
My problem is the following one : I use th screen painter to create a screen.
I would like one of the screen fields to be invisible for the user but I would like to be able to write and read values in this field using 'C14Z_DYNP_READ_FIELD' and 'DYNP_VALUES_UPDATE'
I tried to set the value of screen-active to 0 in the PBO module but it doesn't solve the problem cause if I do it, I can't specify a value for the field.
Please help,
Kind Regards
Morganhi
good
ACTIVE, INPUT, OUTPUT, and INVISIBLE
There are certain hierarchy rules between the components ACTIVE, INPUT, OUTPUT, and INVISIBLE. They also have different effects depending on their respective static settings.
The ACTIVE component has no equivalent in the element attributes. Instead, it changes the components INPUT, OUTPUT, and INVISIBLE.
At the beginning of the PBO, ACTIVE is always set to 1, regardless of the static attribute settings. Setting ACTIVE to 0 automatically sets INPUT = 0, OUTPUT = 0, and INVISIBLE = 1. Any other changes to the settings of INPUT; OUTPUT, and INVISIBLE to the current screen element are ignored. Conversely, setting INPUT = 0, OUTPUT = 0, and INVISIBLE = 1 automatically sets ACTIVE to 0, and any further assignment to ACTIVE for the current screen element will be ignored. The setting ACTIVE = 1 has no other effect on the attributes. The only purpose of the ACTIVE component is to allow you to make a screen field inactive through a single assignment. You should particularly note that a module call linked to a FIELD statement in the screen flow logic is always executed, even when SCREEN-ACTIVE = 0 for the field in question. If you want to prevent a module from being processed for an inactive field, you must specify the FIELD- and MODULE statements separately.
go through this link
http://help.sap.com/saphelp_nw2004s/helpdata/en/9f/dbab6f35c111d1829f0000e829fbfe/content.htm
http://www.sts.tu-harburg.de/teaching/sap_r3/ABAP4/loop_a03.htm
thanks
mrutyun^ -
How to make the Selection Screen fields Invisible..?
Hi All,
I have a selection screen in which I have 2 Radio Buttons and 2 Blocks(with input fields).
The requirement is when the Radiobutton1 is selected, it should display the BLOCK1 and the BLOCK2 should be Invisible. The same way, when the Radiobutton2 is selected, it should display the BLOCK2 and the BLOCK1 should be Invisible.
Could someone help me how to do this. Please share your valuable inputs. If anyone has some sample code, that would be greatful.
Thanks in advance.
Thanks & Regards,
Paddu.Please search the forum. This question has been asked and answered many times before.
Rob -
Making field invisible on screen shifts rest of the fields Up..
Hi All,
I am facing a problem that when i make one of my screen fields invisible the rest of the fields shifts up and fill up the space.
Can this be avoided...
please suggest
thanks in advance,
kushagra sharmaHi,
Try to make that field with different block and then make them as invisible. it will solve ur problem
Thanks
kishore -
Dear Sir,
Can any body pls tell me how to pass screen field values generically in dialogue programming...the screen field values like input,output, group...
Can we use the table 'SCREEN' in dialogue programming..?? & how???
Regards,
RushikeshHi Rushikesh,
What exactly is your requirement....?
You can use the table SCREEN for modifying the screen element attributes at runtime...
Suppose for example , when I click on a button, I want a button to be displayed...It can be done , but only in the PBO event....
Initially , go to the screen attributes and make it invisible...
Now in the program, you can do like this
1) Declare a global variable (say flag initialized to zero).
2) In PBO event
LOOP AT SCREEN.
IF SCREEN-NAME = 'FIELD1' and FLAG = 1.
screen-invisible = 0.
modify screen.
endif.
endloop.
3) In PAI event.
case sy-ucomm.
when 'CLICK'.
flag = 1.
endcase.
This is one example , you can have any number of situations.
Regards,
SP. -
Make fields invisible in SAPLBBP_MON_SC 1200
Dear SRM-gurus,
for making fields unvisible in Shopping Cart Detail you can go to SE51 --> SAPLBBP_SC_UI_ITS --> e.g. 100 and set fields whether "Invisible" or in Screen Painter double-click on the specific field and enter "MOR" in the 4th group field.
This works perfectly for SAPLBBP_SC_UI_ITS.
Now we'd like make the same restriction of fields in "Monitor Shopping Cart" transaction.
--> SE51 --> SAPLBBP_MON_SC --> 1200
Here when I click on Layout and set the field as "Invisible" this works alright for the description of the fields (e.g. Description) BUT for all the fields where values can be entered there is no way to make them invisible in transaction BBP_MON_SC. No matter if I set Invisible and/or the value MOR in 4th group field.
Do you have any idea how I can also make the dropdown and value fields invisible (not available)?
Thanks a lot for your help.Points will be given!
Best regards,
HenningHi Henning,
The trick cannot work in SAPLBBP_MON_SC_1200, because in the application there is no handling for the modification group. That is the difference with SAPLBBP_SC_UI_ITS / 0100. We used the trick there to avoid modifications in HTML because HTML has no modification-assistent and ABAP does.
In your case I would suggest to modify the HTML-template (service BBP_MON_SC, template SAPLBBP_MON_SC 1200 ) to hide the unwanted fields simply by deleting or commenting the unwanted tablerows.
Regards,
Hendrik-Jan -
How to change the attributes of screen fields dynamically
<b></b>
well i have created a table by name empmaster_data with following fields.
*emp_id.
*emp_fname.
*emp_lname
*dob.
*doj.
*dept.
*desig.
now using a single screen i want to create,change and display the information.even i am using save and exit button.
now i want to change the attributes of screen fields dynamically like active,input,output,invisible.Hi,
Have Different Radio Buttons for the purposes what you have and use AT Selection Screen Output, Under the event Use loop at screen and with continue with your requirement.
Hope This Info Helps YOU.
<i>Reward Points If It Helps YOU.</i>
Regards,
Raghav -
Hiding selection screen fields upon clicking a button
Hi .
I have a requirement like we need to hide and bring back the selection screen fields upon clicking a button( Expand and collapse in the same button) .
in ABAP Query,we can maintain this, for the variant we created.
We need this functionality on the selection-screen presently.
How to achieve this in the selection -screen?
Valuale pointers are desparately needful.
Regards,
SSR.Hi,
SELECTION SECREEN (P_) Parameter
(S_) Select Options
SELECTION-SCREEN : BEGIN OF BLOCK BLK1 WITH FRAME TITLE TEXT-001,
BEGIN OF LINE,
COMMENT (26) C1 MODIF ID XYZ.
SELECT-OPTIONS : S_MATNR FOR MARA-MATNR MODIF ID XYZ NO-EXTENSION .
SELECTION-SCREEN : END OF LINE,
BEGIN OF LINE,
COMMENT (26) C2 MODIF ID XYZ.
SELECT-OPTIONS : S_MATKL FOR MARA-MATKL MODIF ID XYZ NO-EXTENSION .
SELECTION-SCREEN : END OF LINE.
PARAMETERS : R_MATNR RADIOBUTTON GROUP RAD1 DEFAULT 'X'
MODIF ID ABC USER-COMMAND MAT,
R_MATKL RADIOBUTTON GROUP RAD1.
SELECTION-SCREEN END OF BLOCK blk1.
INITIALIZATION.
C1 = 'Product Code'.
c2 = 'Product Group'.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF SCREEN-NAME0(7) = 'S_MATNR' OR SCREEN-NAME0(7) = 'S_MATKL'.
SCREEN-INPUT = '0'.
SCREEN-INVISIBLE = '1'.
ENDIF.
CASE SCREEN-NAME+0(7).
WHEN 'S_MATNR'.
IF R_MATNR = 'X'.
SCREEN-INPUT = '1'.
SCREEN-INVISIBLE = '0'.
ENDIF.
WHEN 'S_MATKL'.
IF R_MATKL = 'X'..
SCREEN-INPUT = '1'.
SCREEN-INVISIBLE = '0'.
ENDIF.
ENDCASE.
IF R_MATNR = 'X'.
IF SCREEN-NAME = 'C1'.
C1 = 'Product code'.
C2 = SPACE.
ENDIF.
ENDIF.
IF R_MATKL = 'X'.
IF SCREEN-NAME = 'C2'.
C2 = 'Product Group'.
C1 = SPACE.
ENDIF.
ENDIF.
MODIFY SCREEN.
ENDLOOP.
Hope it helps.
best regards,
Nagaraj Kalbavi -
How to make screen elements invisible ??
Hi,
In my selection-screen, I can add no-display attribute to Parameter data but how can i make screen elements invisible which are declared as follows ??
PARAMETERS: SMALLLOG as checkbox .
thanksPARAMETERS: SMALLLOG as checkbox user-command abc.
at selection-screen output.
***if it is input disable
loop at screen.
case screen-field.
**if input disable
when 'SMALLOG'.
screen-input = '0'.
clear smalllog.
endcase.
modify screen.
endloop.
loop at screen.
case screen-field.
**if inivisible
when 'SMALLOG'.
screen-invisible = '1'.
clear smalllog.
endcase.
modify screen.
endloop.
Message was edited by: Vijay Babu Dudla -
Hiding screen fields at an event
hi,
assume that i am having 3 fields in a screen.
after antering the values on the first field and if i place the cursor on the second or third fields then these fields (second and third ) should be disabled.
can anyone help me out in this. For me it works only by pressing the enter key. I want that to work if the cursor has been placed on other fields.is there any event available for that.
or pls tell me how to do this.
regards,
Phyrose.Hi,
check the below.
*& Report ZHAR_DYN_SELSCR.
*& This program demonstrates how easy it is to set selection screen
*& element properties dynamically
*& The program uses 3 radio buttons to set the display and input
*& properties of selection screen fields dynamically
*& URL: http://allaboutsap.blogspot.com
REPORT ZHAR_DYN_SELSCR.
DATABASE TABLES
tables : mara.
SELECTION SCREEN
selection-screen begin of block b1 with frame.
*--- Radio buttons to set properties
PARAMETERS:
rad1 RADIOBUTTON GROUP rad default 'X' USER-COMMAND radio,
rad2 RADIOBUTTON GROUP rad,
rad3 RADIOBUTTON GROUP rad.
*--- Selection Screen fields
SELECT-OPTIONS:
s_matnr FOR mara-matnr MODIF ID MI1,
s_mtart FOR mara-mtart MODIF ID MI1,
s_mbrsh FOR mara-mbrsh MODIF ID MI2,
s_matkl FOR mara-matkl MODIF ID MI2.
selection-screen end of block b1.
AT SELECTION SCREEN
at selection-screen output.
loop at screen.
*--- If Radio Button 1 is checked
IF rad1 = 'X'.
IF screen-group1 = 'MI2'.
*--- Fields with MODIF ID MI2 disappear from the screen
screen-input = 0.
screen-invisible = 1.
ENDIF.
*--- If Radio Button 2 is checked
ELSEIF rad2 = 'X'.
IF screen-group1 = 'MI1'.
*--- Fields with MODIF ID MI1 are input-disabled
screen-input = 0.
ENDIF.
*--- If Radio Button 3 is checked
ELSEIF rad3 = 'X'.
IF screen-group1 = 'MI1' or screen-group1 = 'MI2'.
*--- All fields will appear input-enabled
screen-input = 1.
ENDIF.
ENDIF.
*--- MODIFY SCREEN mandatory addition to apply changes to the screen
Modify screen.
endloop.
Reward if helpful.
Regards,
Harini.S -
Changing Screen field position dynamically
Hi,
Is there a way to change the position of screen fields dynamically in a module pool program?
My requirement is that based on the value of a variable, I need to arrange a few input and text fields on a subscreen in different order.
Points will be rewarded for helpful answers..
Regards
AbhishekHi,
For this what I can think of is that u need to create the fields multiple times on the same screen and then using SCREEN variables, u need to make them visible/invisible.
e.g. Say, u want Matnr at first position at one time and 6th position at another. In that case, what u can do is create the field MATNR twice and them hide/unhide it depending upon the condition.
Hope this helps.
Regards,
Himanshu -
Table for Screen Field Properties
Hi Guys,
I have strange requirement.
Lets say i have designed 5 fields in the Dialog Program. 2 fields belongs to Group1,another 2 fields belongs to Group2 and 3rd field is belongs to group3.
Where can i find those values (I mean which table). I belive it should be Program,screen no and data type.
Note : Groups you can set in Attributes of the field in Dialog Program.
Thanks
PoornaSetting Screen Field Attributes
Every screen field has attributes that you set in the Screen Painter when you define the
screen. At runtime, you may want to change these attributes, depending on what
functions the user has requested in the previous screen. At runtime, attributes for each
screen field are stored in a memory table called SCREEN. You do not need to declare
this table in your program. The system maintains the table for you internally and updates
it with every screen change.
The memory table SCREEN contains the following fields:
Name Length Description
NAME 30 Name of the screen field
GROUP1 3 Field belongs to field group 1
GROUP2 3 Field belongs to field group 2
GROUP3 3 Field belongs to field group 3
GROUP4 3 Field belongs to field group 4
ACTIVE 1 Field is visible and ready for input
REQUIRED 1 Field input is mandatory
INPUT 1 Field is ready for input
OUTPUT 1 Field is for display only
INTENSIFIED 1 Field is highlighted
INVISIBLE 1 Field is suppressed
LENGTH 1 Field output length is reduced
DISPLAY_3D 1 Field is displayed with 3D frames
VALUE_HELP 1 Field is displayed with value help
To activate a field attribute, set its value to 1. To deactivate it, set it to 0. When you set
the ACTIVE attribute to 0, the system suppresses the field and turns off the ready for
input attribute. The user can neither see the field nor enter values into it.
Note
You can define values for each of these attributes in the Attribs. for 1 field section in
the field list of the Screen Painter. If you need more information about attribute
meanings, see BC ABAP/4 Workbench Tools.
Modifying the Screen SAP AG
Setting Screen Field Attributes
32u20134 May 1997
As an example of modifying the screen dynamically, start with transaction tz50
(development class SDWA).
The transaction consists of two screens. In the first screen the user can enter flight
identifiers and either request flight details (by pressing a Display pushbutton) or press the
Change pushbutton to change the data of screen 200.
The field attributes are now set dynamically, according to whether the Display button or
the Change button was selected. In both cases the same screen is now called, but with
different field attributes.
If the same attributes need to be changed for several fields at the same time, these fields
can be grouped together. For example, in order to change the fields in screen 200
dynamically, we assign these fields in the Screen Painter to the group MOD. You can
specify up to four modification groups for each field. The contents of the Groups field
are stored in the SCREEN table.
The changes to the attributes of the fields in this group can be implemented in a PBO
module:
SAP AG Modifying the Screen
Setting Screen Field Attributes
May 1997 32u20135
MODULE MODIFY_SCREEN OUTPUT.
CHECK MODE = CON_SHOW.
L0OP AT SCREEN.
CHECK SCREEN-GROUP1 = u2019MODu2019.
SCREEN-INPUT = u20190u2019.
MODIFY SCREEN.
ENDLOOP.
ENDMODULE.
The memory table SCREEN contains each field of the current screen together with its
attributes.
The LOOP AT SCREEN statement puts this information in the header line of this system
table.
In this example taken from transaction tz50, if the user chooses Display then SCREENINPUT
is set to u20190u2019 and all fields belonging to the MOD group thus become display-only
fields.
Because attributes have been changed, the MODIFY SCREEN statement is used to write
the header line back to the table.
Modifying the Screen SAP AG
Changing Screen Field Attributes with the Function Field Selection -
How to make a field invisible using t-code SHDG
Hi Experts,
I got a requirement to disable a field Business unit in all transactions of Plant maintainance. I heard that it can be done with the help of transaction SHDG.
I am not aware of this transaction. So anyone please provide some information or the material related to this transaction.
Also let me know. If i make this field invisible using this transaction. If the same field business unit is used in other modules such as SD, FICO then there also will it get invisible?
If that is the case how to overcome the above scenario.
Useful answers are rewarded....
Thanks
Kiran.Hi,
I think its not shdg but shd0.
the best way to do it is Screen Variant and Transcation Variant.
Tcode for it is SHD0 and you can disable, make any field invisible, make screen invisible , can have default value can be done through SHD0.
Try it. It will be helpful for you.
http://help.sap.com/saphelp_47x200/helpdata/en/7d/f639f8015111d396480000e82de14a/frameset.htm
Regards -
How to identify relevant BADIs to hide a screen field from specific users
We have a business requirement to hide a document item field (BSEG-XREF3) from specific users (i.e make the field invisible if the userid does not exist in a Z table) during FI invoice entry/maintenance/display via transactions FB01, FB02, FB03, FV50, FV60, FBV0, etc.. We know that it would be possible to do this via modification to the Process Before Output sections of LF040O00, LFDCBFM0, MF05AO00_DYNPRO_MODIFIZIEREN, MF05LO00, but would prefer to avoid modification if possible.
I believe that BADIs could possibly be used for screen enhancements, but have not had any previous exposure to BADIs, so I'm really not sure whether it's possible to use BADIs for our specific requirement. For example, using the advice given in the 2nd post in thread BADI for contract, I've searched SAPMF05A for all 'CALL METHOD cl_exithandler=>get_instance' statements, and have found that a single BADI (FBAS_CIN_MF05AFA0 - EWT - Downpayment Clearing - Tax transfer for CIN) seems to exist for FB01. The description of this BADI sounds completely inappropriate for our requirement. However, subsequent posts in that thread suggest far more BADIs for the relevant transaction than were given when searching the ABAP for all 'CALL METHOD cl_exithandler=>get_instance' statements, so I'm not convinced that the procedure I'm following will provide me with all the relevant BADIs for the transaction.
Please can you advise me how to identify which BADIs - if any - can be used to control screens before output for FB01 screen SAPMF05A/332 (SAP R/3 4.6C)?
Many thanks in anticipation,
JulesHi Kuntal,
Thank you very, very much for your prompt response and very useful alternative suggestion.
The screen variant solution would be invaluable under different circumstances, but would be too complex to administer for this particular issue because we're trying to hide the field from unauthorised users in over 100 invoice entry/maintenance/display transactions.
We can make a Process Before Output modification to 4 SAP standard programs (LF040O00, LFDCBFM0, MF05AO00_DYNPRO_MODIFIZIEREN, MF05LO00) to make the field invisible for unauthorised users (i.e. whose user-ids are not in a Z* table), but would prefer to avoid modification if we could use BADIs instead. You've said that you're not sure how we can identify the relevant BADIs, but I very much appreciate the suggestion you've made anyway - it might be useful to others who find themselves in a similar situation for a more limited number of transactions.
Please can someone advise me how to identify which BADIs - if any - can be used to control screens before output for FB01 screen SAPMF05A/332 (SAP R/3 4.6C)?
Many thanks,
Jules
Maybe you are looking for
-
Hi, My IPhone 5 doesn't turn on at all. I wanted to sell this BUT I have important data on it such as Pictures, chats and I was signed into social networks. Is there a special way to delete my data as my phone doesn't turn on at all?
-
Hi All, I would like to implement resource manager via oracle service. Code is as follows: exec DBMS_RESOURCE_MANAGER.CREATE_PENDING_AREA(); exec DBMS_RESOURCE_MANAGER.CREATE_PLAN(PLAN => 'my_plan',COMMENT => 'Resource plan/method for ERP Database');
-
PLEASE HELP!!!I'M GOING CRAZY!!!
for my little brothers birthday we bought him a ipod mini. i bought one in june and nearly tore my hair out tring to install it and the same problem is happening and i don't remember how to solve it. i tried to do something nice for him and set it up
-
Hi, I am still new to indesign plugin development. I am not able to build a sample project created using Dollyxs on windows for Indesign CS4. I am getting error as Error spawning cmd.exe . Am I missing some settings to be made for the project. Can an
-
Mass disconnection : Error 44 in SM21
Hi<BR> <BR> I have a mass disconnection for my Japan users with the System Log (SM21) showing Error 44, and Error 5.<BR> <BR> Error 44 is Error in SNC layer (Secure Network Communication). I have checked the documentations and forums, it is usually c