Dynamic changing of FPM screen property like invisible/disable/mandatory
Hi Experts,
Can anyone tell me how can i change the screen property in custom BOPF determination?
I tried this class ' /BOBF/CL_LIB_H_SET_PROPERTY' but couldnt make the field mandatory.
Regards,
Bob.
Hi ,
Add to the above post.
I have enhanced a business object 'EHHSS_INCIDENT' and created a determination for node 'BASIC_INFO_ALL'. So within this method I need to dynamically set property as mandatory for a field.
How can I achieve it?
Regards,
Bob.
Similar Messages
-
On the login screen on my mac says a property name, the laptop changed hands and I'd like to change the property line name to my own, how do I do that?
Open Accounts preferences. Create a new user account with the name and username of your choosing as well as your own password. Be sure to give the new account Admin status. Log out of the old account and log into your new account. Now, delete the old account.
-
Dynamic selection screen change in Selection Screen.
Hi Experts,
I am not getting dynamic screen change on selection screen. can you give solution for the following scenario.
I have 3 radio buttons on selection screen. Example: R1, R2, R3.
I have 5 fields on selection screen. Example : F1, F2, F3, F4, F5.
When i select radio button 1 i will get F1 field screen only.
When i select radio button 2 or 3 i will get F2 and F3 fields screen only.
When i select radio button 3 i will get F4 and F5 fields screen only.
Any one give me solution for the above scenario very much thankful.
Thanks in advance,
SaiHi
try this code,
REPORT ZTEST_3RB.
TABLES : KNA1,EKKO,VBRK.
PARAMETERS : SALES RADIOBUTTON GROUP VIJJ USER-COMMAND VJY ,
PUR RADIOBUTTON GROUP VIJJ ,
BILL RADIOBUTTON GROUP VIJJ ,
TOTAL AS CHECKBOX.
SELECT-OPTIONS : S_CUSTNO FOR KNA1-KUNNR MODIF ID AKP DEFAULT 1000 TO 1033,
S_PONO FOR EKKO-EBELN MODIF ID VKP,
S_BNO FOR VBRK-VBELN MODIF ID PKP.
INITIALIZATION.
AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF SALES = 'X'.
IF SCREEN-GROUP1 = 'VKP'.
SCREEN-INPUT = 0.
SCREEN-ACTIVE = 0.
MODIFY SCREEN.
ENDIF.
IF SCREEN-GROUP1 = 'PKP'.
SCREEN-INPUT = 0.
SCREEN-ACTIVE = 0.
MODIFY SCREEN.
ENDIF.
ELSEIF PUR = 'X'.
IF SCREEN-GROUP1 = 'PKP'.
SCREEN-INPUT = 0.
SCREEN-ACTIVE = 0.
MODIFY SCREEN.
ENDIF.
IF SCREEN-GROUP1 = 'AKP'.
SCREEN-INPUT = 0.
SCREEN-ACTIVE = 0.
MODIFY SCREEN.
ENDIF.
ELSEIF BILL = 'X'.
IF SCREEN-GROUP1 = 'AKP'.
SCREEN-INPUT = 0.
SCREEN-ACTIVE = 0.
MODIFY SCREEN.
ENDIF.
IF SCREEN-GROUP1 = 'VKP'.
SCREEN-INPUT = 0.
SCREEN-ACTIVE = 0.
MODIFY SCREEN.
ENDIF.
ENDIF.
ENDLOOP.
i think this will help your problem,
Regards,
Vijay -
Dynamically change a partner link config property via the BPEL Consle
Is it possible to dynamically change a configuration property
for a partnerlink in the BPEL Console?
From Help in Jdev:
- Double click Partner Link
- Property tab
-- Help
--- "Property Tab"
Partner link properties are simple name-value pair properties that
are defined and can be accessed at runtime by the BPEL process.
The value of a property can be changed from Oracle BPEL Console
at runtime without having to redeploy the BPEL process.
Steps to reproduce:
1. Set the configuration property retryMaxCount on a partnerlink
2. Enter the BPEL Console, click on the process and then the descriptor tab.
3. Not seeing a utility to change the value in the BPEL Console.Hi Dave,
the console only allows changes to activation agent properties.
There are two kinds of partnerlinks. Those associated with a receive (inbound, activation), and those associated with an invoke (outbound, webservices invoke). Only the former polling process properties can be configured from the console.
Outbound there are only a handfull of properties and the lifecycle management is not the same.
Thanks
Steve -
Changing the Alert style Property Dynamically
hI..
Is there any way to change the Alert Style Property Dynamically.... if there please tell me its urgent
thnks in advance
Regards
Yashavanthyes, u can change properties dynamically through set_alert_property and set_alert_button_property
here is an example
DECLARE
err_txt VARCHAR2(80) := Error_Text;
al_id Alert;
al_button Number;
BEGIN
al_id := Find_Alert('My_Error_Alert');
Set_Alert_Property(al_id, alert_message_text, err_txt );
al_button := Show_Alert( al_id );
END; -
Dynamically changing break order property
I have a report that has four different fields that the user can break on. Does anyone know how to dynamically change the break order depending on which field the user choses as a parameter.
ThanksAlias the break columns.
select &p_col1 break, col2...
from tablename
then send to the report the name of the break group column.
The initial value of p_col1 should be set to 'xxxxxxxxxxxxxxxxx' enclose in quotes. Take care at the length of the string. This is the only thing that determines the length of the field. -
How to dynamically change the text of a TextObject with embedded DataField?
Hi
I'm trying to dynamically change the text of a TextObject at runtime, by using the .NET library. My problem is that if one or more DatabaseFieldDefinition is embedded inside my text, I'm unable to change the "static text" only, by keeping the field, e.g. I have :
Text1 => "Contact Name: {Contact.Name}"
and I'd like to change it to anything else like:
Text1 => "Nom du Contact: {Contact.Name}"
Half of my TextObject is static text while second part comes from the dataset.
(of course the translation is dynamic - it is called at run-time and the new value to be set depends on the calling application language)
If I simply modify the Text property of my TextObject, the {Contact.Name} embedded field is not evaluated anymore by the Crystal Engine, but considered as a single text.
Using formulas or parameters looks quite difficult, because it means having many ones just for translation needs - I cannot control the way my users will create their reports and "force them" to use complex methods just in order to put a text and a value together...
Anyone knows how to deal with that ?Only way I can think of doing this:
1) Create a formula (call it lang) and enter the string "Contact Name" in it
2) Place the {Contact.Name} field next to the string
3) So now you have:
ContactName: {Contact.Name}
4) Check what localization you are after. If you need "Nom du Contact", change the lang formula so it shows "Nom du Contact" using the code below:
Imports CrystalDecisions.CrystalReports.Engine
Imports CrystalDecisions.Shared
Public Class Form1
Inherits System.Windows.Forms.Form
Dim Report As New CrystalReport1()
Dim FormulaFields As FormulaFieldDefinitions
Dim FormulaField As FormulaFieldDefinition
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
FormulaFields = Report.DataDefinition.FormulaFields
FormulaField = FormulaFields.Item(0)
FormulaField.Text = "[formula text]"
CrystalReportViewer1.ReportSource = Report
End Sub
I realize this may not give you consistent spacing as the translations may have strings of differnt length. Perhaps someone has other idea(s)... -
Dynamically changing internal table in 'gui_download'
Hi Experts,
i have to download 4 internal tables, each with different structures, to the presentation server using 'gui_download', based on which radio-button is selected in the selection screen. I am hoping to use a single 'form' and 4 'perform' calls. how can I dynamically change the tables in the 'gui_download' function modules.
plz help.....................Hi ,
Build the field catalog dynamically based on the internal table structure based on the radio button selected.Use the dynamic internal table generated from the filedcatalog and use in GUI_DOWNLOAD.
See the below code:
*& Report ZRAJESH02
REPORT zrajesh02.
Dynamic internal table
TYPE-POOLS: slis.
FIELD-SYMBOLS: <dyn_table> TYPE STANDARD TABLE,
<dyn_wa>.
DATA: alv_fldcat TYPE slis_t_fieldcat_alv,
it_fldcat TYPE lvc_t_fcat.
DATA: lv_monate TYPE f,
lv_months TYPE i,
lv_date TYPE sy-datum,
p_check1 type n value '1'.
lv_date = sy-datum + 360.
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-001.
PARAMETERS: p_check TYPE c.
SELECTION-SCREEN END OF BLOCK b1.
START-OF-SELECTION.
CALL FUNCTION 'MONTHS_BETWEEN_TWO_DATES'
EXPORTING
i_datum_bis = lv_date
i_datum_von = sy-datum
i_kz_incl_bis = ' '
IMPORTING
e_monate = lv_monate.
lv_months = lv_monate.
PERFORM f_fcat USING 'AUFNR' 'CHAR' '12'.
PERFORM f_fcat USING 'POSNR' 'CHAR' '06'.
while p_check1 LE p_check.
PERFORM f_fcat USING p_check1 'CHAR' '1'.
p_check1 = p_check1 + 1.
endwhile.
PERFORM build_dyn_itab.
LOOP AT <dyn_table> INTO <dyn_wa>.
WRITE:/ <dyn_wa>.
ENDLOOP.
FORM f_fcat USING fieldname dattyp length.
DATA:wa_it_fldcat TYPE lvc_s_fcat.
CLEAR wa_it_fldcat.
wa_it_fldcat-fieldname = fieldname.
wa_it_fldcat-datatype = dattyp.
wa_it_fldcat-intlen = length.
APPEND wa_it_fldcat TO it_fldcat .
ENDFORM. "f_fcat
*& Form build_dyn_itab
text
FORM build_dyn_itab.
DATA: new_table TYPE REF TO data,
new_line TYPE REF TO data.
wa_it_fldcat TYPE lvc_s_fcat.
CLEAR wa_it_fldcat.
wa_it_fldcat-fieldname = 'AUFNR'.
wa_it_fldcat-datatype = 'CHAR'.
wa_it_fldcat-intlen = 12.
APPEND wa_it_fldcat TO it_fldcat .
CLEAR wa_it_fldcat.
wa_it_fldcat-fieldname = 'POSNR'.
wa_it_fldcat-datatype = 'CHAR'.
wa_it_fldcat-intlen = 6.
APPEND wa_it_fldcat TO it_fldcat .
Create dynamic internal table and assign to FS
CALL METHOD cl_alv_table_create=>create_dynamic_table
EXPORTING
it_fieldcatalog = it_fldcat
IMPORTING
ep_table = new_table.
ASSIGN new_table->* TO <dyn_table>.
Create dynamic work area and assign to FS
CREATE DATA new_line LIKE LINE OF <dyn_table>.
ASSIGN new_line->* TO <dyn_wa>.
ENDFORM. "build_dyn_itab
Thanks,
Rajesh. -
Dynamically change the db and server in execute sql task
Pkg 2: Moves data from B_STG (Staging DB) to B_Det_STG (Staging DB) ---- option1
Pkg 3: Moves data from B_STG (Staging DB) to B_Det (PC DB) ---- option2
This part is duplicating in both the packages
So they want me to merge both of them into in execute sql task and dynamically change between option1 and option2 depending on a pkg level variable.
So, I create a pkg level variable called ExecutionVariable: 'ANALYSIS' or 'LOADING'
If 'ANALYSIS' it needs to do option1 else option2.
So, I ma trying to create a dynamic connection string in execute sql task.
I change the connection property in execute sql task editor dynamically my giving the expression: @[User::ExecutionVariable] == "ANALYSIS"? @[User::STAGINGDBConnectionString] : @[User::PCDBConnectionString]
which evaluates to : Data Source=AW-ETL-D1;Initial Catalog=Staging;Integrated Security=SSPI;Provider=sqloledb
But when I run the sql task, its giving me an error:
ERROR:
TITLE: Microsoft Visual Studio
Nonfatal errors occurred while saving the package:
Error at PC_DataLoad: The connection "Data Source=AW-ETL-D1;Initial Catalog=Staging;Integrated Security=SSPI;Provider=sqloledb" is not found. This error is thrown by Connections collection when the specific connection element is not found.
Error at PC_DataLoad: The connection "Data Source=AW-ETL-D1;Initial Catalog=Staging;Integrated Security=SSPI;Provider=sqloledb" is not found. This error is thrown by Connections collection when the specific connection element is not found.
Can u please help me.Hi ,
Don't try to make the "Execute Sql" task as dynamic.
Try to make OLEDB connection Manager as "Dynamic".
Steps:
1. Create OLE DB Connection pointing to any database then set expression to connection string variables like below.
Provider=SQLNCLI10.1;Integrated Security=SSPI;Initial Catalog=YourDBname;Data Source=YourServerName.
2. Make Delayed Validation property to "True".
3. Set the created dynamic OLE DB connection to your Execute SQL task.
4. Change the connection string variable accordingly before running the "Execute SQL" task.
Hope it will help you.
Regards,
Nandhu -
Dynamic program on selection screen
hi friends i want to add one insert button on selection screen and when someone click that insert button a new parameter field should gets add on the screen.
Hi,
Chk this code.But here i took radio buttons instead of pushbuttons.Hope it will help you out.
*& 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 -
Alle experts:
In ALV layout report, how to dynamic change the layout int ABAP porgram?
e.g. I have save 5 layout, I need to change them base the my selection in ABAP program? How to do this?
Thanks in advance!Try to call fieldcatlog dymnamically. Refer tofollowing code. Reward if helpful.
REPORT zfir0001 MESSAGE-ID ztax.
Tables
TABLES : glt0, t001, skat.
Internal Tables
DATA: BEGIN OF itab OCCURS 0,
racct LIKE glt0-racct, "Account number
txt20 LIKE skat-txt20, "G/L account short text
co_1000 LIKE glt0-hslvt, "Balance carried forward for company code 1000
co_1100 LIKE glt0-hslvt, "Balance carried forward for company code 1100
co_1200 LIKE glt0-hslvt, "Balance carried forward for company code 1200
DATA : BEGIN OF itab1 OCCURS 0,
bukrs LIKE glt0-bukrs,
waers LIKE t001-waers,
END OF itab1.
DATA : BEGIN OF it_itab1 OCCURS 0.
INCLUDE STRUCTURE glt0.
DATA : END OF it_itab1.
Data Declarations
DATA : w_total LIKE glt0-hslvt,
w_count LIKE glt0-bukrs,
w_flg TYPE c,
lv_count TYPE i.
w_slash TYPE c VALUE ' '.
Selection screen
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE tit1.
SELECT-OPTIONS : s_bukrs FOR glt0-bukrs OBLIGATORY,
s_racct FOR glt0-racct OBLIGATORY,
s_ryear FOR glt0-ryear OBLIGATORY,
s_rldnr FOR glt0-rldnr OBLIGATORY.
SELECTION-SCREEN END OF BLOCK b1.
INITIALIZATION.
tit1 = 'Please select:'(004).
TYPE-POOLS: slis. "ALV Declarations
DATA: i_fieldcat TYPE slis_t_fieldcat_alv WITH HEADER LINE,
gd_tab_group TYPE slis_t_sp_group_alv,
gd_layout TYPE slis_layout_alv,
gd_repid LIKE sy-repid.
********Geting the selected company code in table itab1****
START-OF-SELECTION.
IF NOT s_bukrs-high IS INITIAL.
itab1-bukrs = s_bukrs-low.
APPEND itab1.
w_count = s_bukrs-low.
DO.
IF s_bukrs-high = w_count.
EXIT.
ELSE.
w_count = w_count + 1.
ENDIF.
SELECT SINGLE * FROM t001
WHERE bukrs = w_count.
IF sy-subrc = 0.
itab1-bukrs = w_count.
APPEND itab1.
CLEAR itab1.
ENDIF.
ENDDO.
ELSE.
itab1-bukrs = s_bukrs-low.
APPEND itab1.
ENDIF.
SELECT * FROM glt0 INTO CORRESPONDING FIELDS OF TABLE it_itab1
WHERE rldnr IN s_rldnr
AND bukrs IN s_bukrs
AND ryear IN s_ryear
AND racct IN s_racct.
SORT it_itab1 BY bukrs.
LOOP AT it_itab1.
AT END OF racct.
w_flg = 'X'.
ENDAT.
SELECT SINGLE txt20 INTO (itab-txt20) FROM skat
WHERE spras = sy-langu
AND saknr = it_itab1-racct.
PACK it_itab1-racct TO it_itab1-racct.
itab-racct = it_itab1-racct.
w_total = it_itab1-hsl01 + it_itab1-hsl02 + it_itab1-hsl03 + it_itab1-hsl04 +
it_itab1-hsl05 + it_itab1-hsl06 + it_itab1-hsl07 + it_itab1-hsl08 +
it_itab1-hsl09 + it_itab1-hsl10 + it_itab1-hsl11 + it_itab1-hsl12 +
w_total + it_itab1-hslvt.
IF w_flg = 'X'.
READ TABLE itab1 WITH KEY bukrs = it_itab1-bukrs.
IF sy-subrc = 0.
SELECT SINGLE * FROM t001
WHERE bukrs = itab1-bukrs.
IF t001-waers = 'JPY' OR
t001-waers = 'HUF'.
w_total = w_total * 100.
ENDIF.
CASE it_itab1-bukrs.
WHEN '1000'.
itab-co_1000 = w_total.
WHEN '1100'.
itab-co_1100 = w_total.
WHEN '1200'.
itab-co_1200 = w_total.
ENDCASE.
COLLECT itab.
CLEAR: itab, w_flg, w_total.
ENDIF.
ENDIF.
ENDLOOP.
SORT itab BY racct.
IF NOT itab[] IS INITIAL.
PERFORM field_cat1.
lv_count = 1.
LOOP AT itab1.
PERFORM field_cat USING itab1-bukrs.
ENDLOOP.
PERFORM display_alv_report .
ELSE.
MESSAGE s000 WITH 'No records Found'(003).
ENDIF.
*& Form display_alv_report
text
FORM display_alv_report .
gd_repid = sy-repid.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = gd_repid
is_layout = gd_layout
it_fieldcat = i_fieldcat[]
i_save = 'X'
TABLES
t_outtab = itab
EXCEPTIONS
program_error = 1
OTHERS = 2.
ENDFORM. "display_alv_report
*& Form field_cat1
text
FORM field_cat1 .
i_fieldcat-col_pos = 0.
i_fieldcat-fieldname = 'RACCT'.
i_fieldcat-seltext_m = 'Account'(001).
i_fieldcat-fix_column = 'X'.
i_fieldcat-emphasize = 'X'.
APPEND i_fieldcat TO i_fieldcat.
CLEAR i_fieldcat.
i_fieldcat-col_pos = 1.
i_fieldcat-fieldname = 'TXT20'.
i_fieldcat-seltext_m = 'Description'(002).
APPEND i_fieldcat TO i_fieldcat.
CLEAR i_fieldcat.
ENDFORM. "field_cat1
*& Form field_cat
text
-->XV_BURKS text
FORM field_cat USING xv_burks TYPE char4.
lv_count = lv_count + 1.
i_fieldcat-col_pos = lv_count.
CONCATENATE 'CO_' xv_burks INTO i_fieldcat-fieldname.
i_fieldcat-seltext_m = xv_burks.
i_fieldcat-just = 'C'.
i_fieldcat-no_zero = 'X'.
i_fieldcat-do_sum = 'X'.
APPEND i_fieldcat TO i_fieldcat.
CLEAR i_fieldcat.
ENDFORM. "field_cat
Edited by: dhanashree wadkar on Apr 30, 2008 6:00 AM -
Dynamically Change UIBBs in GAF. Is it possible ?
Hello,
I have a query in FPM to which I would like to draw your attention to.
Can I dynamically change my UIBBs within a single mainstep in FPM GAF ? if so, which method can help me do this ?
I created a single Web dynpro Component with 5 component configurations.
I am controlling the visibility of several UI elements within this single component through these component configurations.
Each configuration refers to a business scenario.
I configured this single interface view at the UIBB level with the configuration name for a main step.
I was able add multiple uibbs at this level with different configuration names.
Now, I do not know how to toggle between these UIBBs?. I do not want to create multiple variants
because all the other main steps are same for all the business scenarios.
Thanks for your time.
Regards,
KiranHello Kiran,
This is achieveable. You need to implement the IF_FPM_GAF_CONF_EXIT WD interface in your AppCC. This interface provides a method OVERRIDE_EVENT in the component controller of your AppCC. This method has an importing parameter IO_GAF which has various methods to help you change the configuration of the application at runtime and also the UIBB's on a particular mainstep.
Regards
Rohan -
How to dynamically changes items properties
How to dynamically changes items properties likes position order in tabular view, width, prompt
Many object properties can be set programmatically at runtime. For example, each window object has a Visible property that can be set to either Yes or No to show and hide the window. At runtime, you can call the built-in procedure SET_WINDOW_PROPERTY to show or hide the window dynamically, as shown here:
Set_Window_Property('my_window',VISIBLE, PROPERTY_ON);
The following built-in procedures are available for setting object properties at runtime:
- SET_BLOCK_PROPERTY
- SET_CANVAS_PROPERTY
- SET_FORM_PROPERTY
- SET_ITEM_PROPERTY
- SET_LOV_PROPERTY
- SET_MENU_ITEM_PROPERTY
- SET_PARAMETER_ATTR
- SET_RADIO_BUTTON_PROPERTY
- SET_RECORD_PROPERTY
- SET_RELATION_PROPERTY
- SET_VIEW_PROPERTY
- SET_WINDOW_PROPERTY
The built-in procedure SET_ITEM_PROPERTY can be used to set the properties of any type of item, including buttons, text items, check boxes, radio groups, etc.
Note: Radio group items include individual radio buttons; use SET_ITEM_PROPERTY to set the properties of the radio group, and SET_RADIO_BUTTON_PROPERTY to set the properties of the individual buttons in the group.
Each built-in SET procedure has a corresponding GET function that allows you to programmatically determine the current setting of an object's properties. The following example uses GET_WINDOW_PROPERTY to determine if a window is currently hidden (VISIBLE = FALSE). If the window is hidden, SET_WINDOW_PROPERTY is called to show the window.
If Get_Window_Property('my_window',VISIBLE) = 'FALSE' THEN
Set_Window_Property('my_window',VISIBLE,PROPERTY_ON);
To determine if a particular property can be set programmatically, refer to the property descriptions in online Help. -
Dynamically change icon name of push button
Hi,
I would like to ask how to dynamically change the icon name attribute of a push button in dialog programming. What is the syntax for assigning an icon name during runtime?
I am currently doing a multiple selection function for KNA1-KUNNR.
Initially, the icon name is ICON_ENTER_MORE. When the user picks up more than one customer, it should automatically change to ICON_DISPLAY_MORE. How can I do this?
here's the code i currently have:
DESCRIBE TABLE kunnr_ran LINES l_kunnr.
IF l_kunnr > 1.
g_add_multiple = 'X'.
BT_MULT_CUST-icon_name = 'ICON_DISPLAY_MORE'.
ELSEIF l_kunnr = 1.
CLEAR g_add_multiple.
BT_MULT_CUST-icon_name = 'ICON_ENTER_MORE'.
ENDIF.
The name of my pushbutton is BT_MULT_CUST.
The code in ** is not correct. I don't know the syntax in SAP. But that is how it is done in VB for example.
Thank you.
che =)If you have not found your answer already, please try the following:
1) In screen layout painter: for the pushbutton in question (i.e. pb_multi_select), mark the "Output field" on the program attributes tab in the attributes window for the pushbutton. Make sure that its visible length is at least 2 too. This will "gray out" the "Text" and other fields.
2) In the TOP INCLUDE of the module program: add a variable for the pushbutton that is of type "icons-text" and don't forget to include <icons>. Below is an example
INCLUDE <icon>
DATA: pb_multi_select TYPE icons-text.
3) In a module called in the PBO modules for the screen that needs its button changed, call the function "ICON_CREATE" and pass at minimum the name of the icon and the field that you specified in step 2. Below is an example using the icon "ICON_DISPLAY_MORE", "ICON_ENTER_MORE", and a flag variable "MULTI_SEL_INFO_EXISTS" that indicates if any multiple selection information has already been entered. It would be set by the program (not automatically, but by coding) prior to the "IF" statement:
IF multi_sel_info_exists = 'X'.
CALL FUNCTION 'ICON_CREATE'
EXPORTING
name = 'ICON_DISPLAY_MORE'
IMPORTING
result = pb_multi_select.
ELSE.
CALL FUNCTION 'ICON_CREATE'
EXPORTING
name = 'ICON_ENTER_MORE'
IMPORTING
result = pb_multi_select.
ENDIF.
You can change the button as you see fit with multiple different calls inside of "IF" or "CASE" statements. Please see documentation for "ICON_CREATE" for other parameters.
Hope this helps,
Brian -
Dynamically changing width of web form
Folks,
I'm sure someone must have come up with the same problem as me.
We have a forms 6i system running on the intranet (IE5). The forms fill the whole of the browser window if the client PC has a resolution of 800 X 640, but for larger resolutions (like 1024 X 768), the form only occupies part of the browser window. Now, I know that this is dependent on the 'WIDTH=' and 'HEIGHT=' parameters on the formsweb.cfg file. Indeed, if I increase these values, and then run the system on PC's that have resolutions of 1024 X 768, then the forms now look OK. But of course, this now causes a problem where the PC's have lower resolutions! What I want to do, is to dynamically change the WIDTH and HEIGHT parameter values dependent on the users machine settings. I can use javascript to get the users' PC details - no problem. But when I try to code this into the BASEJINI.HTM file, then I cannot run the system at all. I don't think I can use javascript directly in the FORMSWEB.CFG file, as it isn't a 'html' file.
Has anyone else had this problem ? - you must have if you develop forms on the web with different resolutions settings. And how did you guys get around it?
Please help!
Harry
nullthanx for help, Samir! what I want exactly is: vary the width of controls on the screen. for example, if I have two buttons named "assignment" and "help", I want the width of the buttons to be different (and be proportionate to) as per the length of the caption. what kind of JavaScript code shoud I write to achive this? Pls help out... thanks,Girish
Maybe you are looking for
-
Every time I've had to upgrade itunes I get an error that states: "There is a problem with this Microsoft Installer package. A program required for this install to complete could not be run. Contact your support personnel or package vendor" To get a
-
HT1933 cant find out email receipt of purchase order
i cant receive email reply with purchased order code even thought my bank recorded patment
-
Answer machine spool wont clear N73
Hi, my answer machine spool wont clear Nokia N73. Orange dont seem to have a clue as to what the problem is! When i turn my phone off and back on my phone says that i have a message on line 1. when i connect to the answer machine it says that i have
-
Hi: I would like to add points to a group of LineSeries in a LineChart. I would like the graph line to increase to the right as the points are added. For example if I have 10 points presently, they fill the entire x axis, and as I add points the gaps
-
Opening last opened sessions when its start, no thumbnails in the new tabs,
my firefox always opening all last opened sessions when its start, no thumbnails in the new tabs, its really blank tab, there is no toogle to open thumbnails i try to "restore to default" in option menu, its only fixed the "opening last opened sessio