Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 6 Current »


When an App loads it may be necessary to default some data. There are three ways of doing this.
 

  • providing default values for the Fields in the FAB Workbench 
  • implementing methods DETERMINE_INITIAL_FIELD_VALUES or DETERMINE_FIELD_VALUES_ON_LOAD
  • setting the values during load of the App

           1. Providing default values using the FAB Workbench

 
Using the Fields editor, enter the default value in the 'Default' column


2. Implement method DETERMINE_INITIAL_FIELD_VALUES


Note: default values set in DETERMINATE_INITIAL_FIELD_VALUES overrides any default set in the workbench.

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


In the code editor you can code your logic for determining the default values for fields when the Form is opened for the first time.
Note: for defaulting field values after a form has already been submitted at least once (ie as part of a workflow), implement method DETERMINE_FIELD_VALUES_ON_LOAD
Important: always call the SUPER method in this implementation so that system fields such as the current user name will be determined correctly at run-time.
 
A typical implementation would be as follows:

 


The procedure is to read parameter CT_FIELD_VALUES with the key ZFIELD_NAME equal to the Form field which is to be modified, then set the attribute ZFIELD_VALUE to the desired value.
 
Save and Activate.

3. Implement method 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 App

On the function defined in the OnLoad of the Page, the values can be set.




  • No labels