When an App loads it may be necessary to default some data. There are four ways of doing this.
- Providing default values for the Fields in the FAB Workbench
- Assigning a User Parameter ID (e.g. Parameter ID WRK from the User Master record)
- Implementing methods DETERMINE_INITIAL_FIELD_VALUES or DETERMINE_FIELD_VALUES_ON_LOAD
- Setting the values during load of the Application using Javascript
1. Providing default values for the fields in the FAB Workbench
Using the Fields editor, enter the default value in the 'Default' column
2. Assigning a User Parameter ID
Default values set in #1 is overwritten by this setting.
Default initial values onto the form specific to a user
Setup a PID in your user profile.
Use SAP tcode SU01 and go to Parameters tab.
In this example the PID for WRK for this user has been set to 1000.
In your App assign the PID name to you variable. It will automatically assign the value of the PID to the field.
3. Implementing methods DETERMINE_INITIAL_FIELD_VALUES or DETERMINE_FIELD_VALUES_ON_LOAD
A. DETERMINE_INITIAL_FIELD_VALUES
Values set using methods #1 and #2 are overwritten by this implementation
If you haven't already, create an Implementation Class for your project. Either press the "Code" button or edit the implementation class directly using transaction SE24. It is useful to press the "Display Object List" button of SE24 to obtain a tree view of the class.
Expand the tree to Methods->Inherited Methods
Locate the method DETERMINE_INITIAL_FIELD_VALUES, then right-click, Redefine
B. DETERMINE_FIELD_VALUES_ON_LOAD
This method is used to provide default data and to overwrite existing Form data at various stages through out the Form life-cycle.
This method provides a parameter I_HEADER_INSTANCE which allows the method to determine the current state of the Form via fields such as
- CURRENT_APPROVAL_LEVEL
- CURRENT_LEVEL_ACTION
- SUBMITTED_BY_UNAME
- SUBMITTED_BY_PERNR
This method is called once for each field in the form via parameter I_FIELD_NAME and the method may set the value of each field using the parameter E_FIELD_VALUE.
A typical implementation is as follows:
4. Set values on load of the Application using Javascript
Values set using methods #1, #2 and #3 are overwritten by this implementation
On the function defined in the OnLoad of the Page, the values can be set.
Related articles