ODT Screen Development Guide for FLEXCUBE
ODT Screen Development Guide for FLEXCUBE
3
ODT Screen Development
August 2013
1
ODT Screen Development
Contents
1 Preface..................................................................................................................................................................5
1.1 Audience .........................................................................................................................................................5
1.2 Related Documents .........................................................................................................................................5
2 Introduction ..........................................................................................................................................................6
2.1 How to use this Guide .....................................................................................................................................6
3 Overview of Screen Development for Oracle FLEXCUBE .................................................................................6
3.1 Radxml ............................................................................................................................................................7
3.2 Extensible Development..................................................................................................................................7
3.3 Design Steps ....................................................................................................................................................7
4 Header Information ..............................................................................................................................................8
4.1 Action ..............................................................................................................................................................9
4.2 Function Id ......................................................................................................................................................9
4.3 Save Xml Path ............................................................................................................................................... 10
4.4 Function Type ............................................................................................................................................... 11
4.5 Parent Function ............................................................................................................................................. 11
4.6 Parent Xml .................................................................................................................................................... 12
4.7 Function Category ......................................................................................................................................... 12
4.8 Header Template ........................................................................................................................................... 12
4.9 Footer Template ............................................................................................................................................ 12
5 Preferences ......................................................................................................................................................... 13
5.1 Module .......................................................................................................................................................... 14
5.2 Module Description ....................................................................................................................................... 14
5.3 Head office Function ..................................................................................................................................... 14
5.4 Logging Required .......................................................................................................................................... 15
5.5 Auto Authorization ........................................................................................................................................ 15
5.6 Tank Modification ......................................................................................................................................... 15
5.7 Field Log Required ........................................................................................................................................ 15
5.8 Excel Export Required .................................................................................................................................. 15
5.9 Multi Branch Access ..................................................................................................................................... 15
5.10 Txn Block Name ....................................................................................................................................... 16
5.11 Txn Field Name ........................................................................................................................................ 16
5.12 Branch Program ID ................................................................................................................................... 16
5.13 Process Code ............................................................................................................................................ 16
5.14 SVN Repository Url ................................................................................................................................. 16
5.15 Control String ........................................................................................................................................... 17
6 Data Sources ...................................................................................................................................................... 18
6.1 Creating a New Data Source ......................................................................................................................... 18
6.1.1 Data Source Properties ....................................................................................................................... 20
6.1.2 Data source columns ........................................................................................................................... 23
6.2 Guidelines and Best Practices ....................................................................................................................... 25
6.3 Deletion of Data Sources ............................................................................................................................... 27
7 Data Blocks ........................................................................................................................................................ 28
7.1 Creation of a Data block ................................................................................................................................ 28
7.1.1 Data Block Properties ......................................................................................................................... 30
7.1.2 Data Block Fields ................................................................................................................................ 33
7.2 Guidelines and Best Practices ....................................................................................................................... 49
7.3 Deletion of a Data Block ............................................................................................................................... 51
7.4 Renaming of Data Block ............................................................................................................................... 52
8 Screens ............................................................................................................................................................... 54
8.1 Creating a New Screen .................................................................................................................................. 54
8.1.1 Screen Properties ................................................................................................................................. 56
8.1.2 Tabs ..................................................................................................................................................... 58
2
ODT Screen Development
8.2 Multiple Screens in Same Function Id .......................................................................................................... 65
8.3 Guidelines and Best Practices ....................................................................................................................... 67
8.4 Deletion of Screens ....................................................................................................................................... 67
8.4.1 Visible Flag .......................................................................................................................................... 69
8.5 Renaming Of Screens .................................................................................................................................... 69
9 Field Sets ............................................................................................................................................................ 70
9.1 Creating a New Field Set ............................................................................................................................... 70
9.1.1 Field Set Properties ............................................................................................................................. 71
9.1.2 Attaching Field to a Field Set .............................................................................................................. 74
9.2 Guidelines and Best Practices ....................................................................................................................... 75
9.3 Deletion of Field Set ..................................................................................................................................... 76
9.3.1 Visible Flag .......................................................................................................................................... 76
9.4 Renaming of Field Set ................................................................................................................................... 77
10 LOVs .................................................................................................................................................................. 77
10.1 Defining LOVs ......................................................................................................................................... 78
10.1.1 LOV Name ....................................................................................................................................... 79
10.1.2 LOV Query ...................................................................................................................................... 79
10.1.3 LOV Column Details ....................................................................................................................... 79
10.2 Attaching LOV to Block Field ................................................................................................................. 81
10.2.1 LOV name: ...................................................................................................................................... 81
10.2.2 Input By LOV Only: ........................................................................................................................ 81
10.2.3 LOV Validation Reqd: ..................................................................................................................... 82
10.2.4 Bind Variables: ............................................................................................................................... 82
10.2.5 Return Fields ................................................................................................................................... 83
10.3 Guidelines and Best Practices ................................................................................................................... 84
10.4 Deletion and Renaming of LOVs ............................................................................................................. 84
11 Call Forms .......................................................................................................................................................... 84
11.1 Attaching Call Forms................................................................................................................................ 84
11.1.1 Function Id ...................................................................................................................................... 85
11.1.2 Parent Data Block........................................................................................................................... 85
11.1.3 Relation Type .................................................................................................................................. 85
11.1.4 Call form Screen ............................................................................................................................. 85
11.1.5 Display Type ................................................................................................................................... 85
11.1.6 Active .............................................................................................................................................. 86
11.1.7 Screen Arguments ........................................................................................................................... 86
11.1.8 Dependent Fields ............................................................................................................................ 87
11.2 Guidelines and Best Practices ................................................................................................................... 88
12 Launch Forms .................................................................................................................................................... 89
12.1 Attaching Launch Forms .......................................................................................................................... 89
12.1.1 Function Id ...................................................................................................................................... 89
12.1.2 Active .............................................................................................................................................. 89
12.1.3 Screen Arguments ........................................................................................................................... 89
12.1.4 Attaching Launch form to Main Screen Using Button .................................................................... 90
12.2 Guidelines and Best Practices ................................................................................................................... 91
13 Actions ............................................................................................................................................................... 91
13.1 Web Service Information .......................................................................................................................... 91
13.1.1 XSD Type identifier ......................................................................................................................... 91
13.1.2 Service name ................................................................................................................................... 91
13.1.3 Operation Id .................................................................................................................................... 92
13.1.4 Action Code ..................................................................................................................................... 92
13.1.5 Operation Code ............................................................................................................................... 92
13.1.6 Action Stage Type............................................................................................................................ 92
13.2 Amendable Field Information................................................................................................................... 93
13.2.1 All Records ...................................................................................................................................... 93
13.2.2 New Allowed ................................................................................................................................... 93
13.2.3 Delete Allowed ................................................................................................................................ 93
3
ODT Screen Development
13.2.4 Mandatory ....................................................................................................................................... 93
14 Summary ............................................................................................................................................................ 94
14.1 Designing Summary Screen ..................................................................................................................... 95
14.1.1 Title ................................................................................................................................................. 95
14.1.2 Data Block ...................................................................................................................................... 95
14.1.3 Data Source .................................................................................................................................... 95
14.1.4 Summary Type ................................................................................................................................. 95
14.1.5 Summary Screen Size ...................................................................................................................... 95
14.1.6 Default Where Clause ..................................................................................................................... 95
14.1.7 Default Order By ............................................................................................................................. 95
14.1.8 Multi Branch Where Clause ............................................................................................................ 95
14.1.9 Main Summary Screen .................................................................................................................... 96
14.1.10 Summary Web Services Required .................................................................................................... 96
14.1.11 Data Block Fields............................................................................................................................ 96
14.1.12 Fields Ordering ............................................................................................................................... 96
14.1.13 Custom Buttons ............................................................................................................................... 98
14.2 Guidelines and Best Practices ................................................................................................................... 99
15 Generation and Deployment of files .................................................................................................................. 99
16 Appendix ............................................................................................................................................................ 99
16.1 Screen Preview ......................................................................................................................................... 99
16.2 Locate Field ............................................................................................................................................ 101
16.3 Label Code Maintenance ........................................................................................................................ 102
16.3.1 Maintaining a New Label Code .................................................................................................... 103
16.3.2 Maintaining Missing labels ........................................................................................................... 103
16.3.3 Fetch All Label Codes for the Screen............................................................................................ 103
16.3.4 Updating an existing Label ........................................................................................................... 104
16.4 Search Feature ........................................................................................................................................ 104
16.5 Undo Feature .......................................................................................................................................... 104
4
ODT Screen Development
1 Preface
This document describes the process of FLEXCUBE Screen Development using Universal
Banking Development Workbench.
1.1 Audience
This document is intended for FLEXCUBE Application developers/users that use ODT to
develop various FLEXCUBE components.
To Use this manual, you need conceptual and working knowledge of the below:
Proficiency Resources
FLEXCUBE Functional Architecture Training programs from Oracle
Financial Software Services.
5
ODT Screen Development
2 Introduction
2.1 How to use this Guide
ODT assist developers in designing screens with the capability of generating front end
scripting files, PL/SQL Packages, Static data scripts, XSDs, Excel templates and html files.
This generated code performs validations and does some processing which is common across
screens in FLEXCUBE; only the Business logic specific to the screen has to be added by the
Developer in back end and front end units.
Example
6
ODT Screen Development
ODT will generate all files and developers are supposed to add the business logic in designated
units depending on the Release Type.
3.1 Radxml
ODT saves all the activities carried out by the developer in an xml file hereby referred to as
radxml. Persistence of the screens is achieved through radxml. All the units required for the
working of a screen can be generated from its radxml.
If some changes are required on the screen in a future release, the same radxml can be
loaded and changes can be done on this radxml. ODT can segregate the changes done on
different releases and saves the radxml accordingly.
Radxml will adhere to following naming convention
Function Id name + _RAD.xml
Example: FTDTRONL_RAD.xml
ODT can segregate the changes done on different releases and saves the radxml accordingly.
It generates the files depending on the release type and developers can add the business logic to
the release type specific files. Thus the code remains non invasive of the existing code.
7
ODT Screen Development
5. Attaching Call forms and launch forms if any
6. Defining LOVs
7. Designing Summary
8. Defining Actions
Saving Radxml
While Development, save radxml at constant intervals. Click on save icon in the top right for
having the work. Radxml would be saved in the user directory maintained
4 Header Information
Login to the Oracle FLEXCUBE ODT using the credentials maintained (refer 02-
Development_WorkBench_Administration.pdf for creating users)
Map the session to the release and environment as required (Refer 03-
Development_WorkBench_Getting_Started.pdf for detailed explanation)
Click on Function Generation node in the browser tree found in the Landing page of ODT.
8
ODT Screen Development
Function Generation window gets launched.
While creating a new function in ODT, below information needs to be provided in the
Header section
Fig 5.2 ODT Function Generation page highlighting the header section
The Header portion of the Function Generation screens consists of the following fields:
4.1 Action
New and Load options are provided for this field.
For a new screen development, select the action as New; if an existing screen radxml
has to be loaded for customization select Load option.
If the action is load then corresponding radxml has to be loaded using browser option in
Save Xml Path; all the header information will get populated.
4.2 Function Id
If the Action is selected as New, the function Id name needs to be specified. Function Id
is the unique name with which a screen is identified.
9
ODT Screen Development
First 2 characters should specify the module name for which the particular function id is
used(recommended)
Example:
For Funds Transfer Contract Input Screen name can be given as FTDTRONL
Here FT is the module (Funds Transfer), third letter D denotes it is a normal detail screen, and
Length of the function Id is 8.
If the action selected is Load, function Id field will be disabled. It will be picked up from
the radxml which is loaded.
10
ODT Screen Development
Fig 5.4 Loading of existing radxml in ODT in Google Chrome
If the action is New, save xml path is optional. If provided, then the generated units will be
saved in the path mentioned. Note that the value in the Save Xml Path will be used only if the
Save Format is Client Path and if the User has given “CURRENT_DIRECTORY” in the User
PreferencesWork Directory.
11
ODT Screen Development
4.6 Parent Xml
This field is also applicable only if the Function type is child/screen child. If the Function Type
is child/screen child user has to load the radxml of the Parent Function using browse button
provided to this field.
It is non editable field if the action is “Load”.
12
ODT Screen Development
Maint Audit: This template can be used for maintenance screens. Ensure that master
data source has the standard audit columns.
Maintenance audit column names and the corresponding block field names created
by ODT is provided in the table below:
BLOCK FIELD
COLUMN NAME NAME
MAKER_ID MAKER
MAKER_DT_STAMP MAKERSTAMP
CHECKER_ID CHECKER
CHECKER_DT_STAMP CHECKERSTAMP
MOD_NO MODNO
RECORD_STAT RECSTAT
ONCE_AUTH ONCEAUTH
AUTH_STAT AUTHSTAT
Audit block field names are reserved filed names and hence cannot be used as the name
of any other block field.
Note that when template is selected, ODT automatically adds the fields to Data Source and
Blocks and adding these fields manually to data blocks results in erroneous behavior.
Maint Process: In this template along with maintenance audit fields System would
automatically add a control block and Process related fields. This template can be used for
workflow maintenance screens.
Process: Only process related Fields will be added to the Footer. This can be used for
workflow transaction screens. As part of process template; previous remarks, remarks, outcome
and audit block will be created in the footer.
5 Preferences
Function id level preferences like module, logging required, tanking modification Main menu,
Sub-Menu1, Sub-Menu2 is maintained through Preferences screen in ODT.
The data maintained in Preferences Screen will be used for generating static data script for
tables SMTB_MENU, SMTB_FUNCTION_DESCRIPTION, SMTB_ROLE_DETAIL and
SMTB_FCC_FCJ_MAPPING.
13
ODT Screen Development
Fig 6.1 Preferences Screen in ODT Function Generation
5.1 Module
It captures the Module of the function id. Developer can choose module name from the list of
values provided. List of values is populated based on the modules maintained in
SMTB_MODULE table of the business schema (current FLEXCUBE environment to which tool
is mapped).
Module Code has to be provided mandatorily. Module name provided would be reflected in
the script for SMTB_MENU generated by ODT (in module column).This will also be considered
while naming the packages generated by the tool. First two characters of the packages
generated will be taken from the module code maintained.
14
ODT Screen Development
5.4 Logging Required
It captures whether logging is required for the function or not. This will also be reflected in
script generated for SMTB_MENU (column LOGGING_REQD).
If this option is selected, all the request and response for the functionId will be logged in
CSTB_MSG_LOG. This is used for View Change option.
15
ODT Screen Development
5.10 Txn Block Name
It captures the transaction Block Name. This is applicable only if multi branch access is allowed
for the screen. Select the block from the select list which contains the field for branch code
In the multiple entry block , developer needs to maintain all the related function Id names for
the screen. ODT will default the name of the function Id to the first row of the multiple entry
along with the module maintained earlier.
If any other function id is required for the particular screen, developer has to add the row.
Example: For FTDTRONL screen, developer designs a detail screen. He also wants to add one summary
screen to the screen as well as gateway function Id for web services.
For this, he can add two new columns FTSTRONL (for summary) and FTGTRONL (for gateway
operations) to the block as shown below.
16
ODT Screen Development
Fig 6.2 Maintaining menu details of a Function Id
17
ODT Screen Development
Fig 6.3 Maintaining control String for the function Ids
6 Data Sources
First step in developing Functions is to identify the tables and views involved in the Function
being developed. Relations among these data sources and the types of these data sources have
to be identified based on the functionality.
ii) Left click on the data source node in the tree. On the data source screen click Add Data
Source icon on the top right of the screen.
18
ODT Screen Development
Fig 7.1 Adding a New Data Source
A new screen will prompt you to enter the name of the data source. Data source name can be
selected from the list of values provided. List of values will fetch all objects from business
19
ODT Screen Development
schema.
Alias Name: If same table is used more than once in the design, developer can differentiate the
same using different alias names.
Data source name will have table name appended with the alias name separated by __.
Example : If table name is CSTB_UI_COLUMNS and alias name is A
Data source name will be CSTB_UI_COLUMNS__A
20
ODT Screen Development
[Link] Data Source
This is a read only field. Data source name will be defaulted to this field.
[Link] Master
This filed identifies whether this data source is the master data source for the screen.
Every screen should have one (and only one) master data source.
Select the field value “Yes” or “No” accordingly. Master Data source cannot be of multi
record type.
[Link] Parent
Parent data source has to be mentioned for all data sources except the master data
source.
Select List provides all the data sources created till that point .Developer can choose the data
source from the list. For master data source, parent should not be provided.
[Link] Relation
Relation with parent has to be specified for all data sources except master data source. Keep
the parent data source in the left side of the relation.
Example:
If parent is STTM_CUSTOMER and child is STTM_CUST_ACCOUNT; and relationship is based on
CUSTOMER_NO and BRANCH_CODE, it has to be provided as
STTM_CUSTOMER.CUSTOMER_NO= STTM_CUST_ACCOUNT.CUSTOMER_NO AND
STTM_CUSTOMER.BRANCH_CODE= STTM_CUST_ACCOUNT.BRANCH_CODE
21
ODT Screen Development
Note that relationship can be only with parent maintained and the current data source; a third
table cannot be introduced in the relationship. Only simple Relational operators and ‘equal to’
can be used in the relationship.
[Link] Type
Data source can be selected depending on the Type requirement of the screen design.
Query: The data source can be used for only querying the data; ODT will generate
packages without insert or update statements on this data source.
InOnly : Tool will generate the packages without insert and update on this data
.Request xml will contain the data source while response won’t contain it.
Summary: This data source can be used for summary and this data source will not be
considered while generating the packages.
[Link] Mandatory
If at least one record has to be provided for this data source, then the data source can be
provided as mandatory.
22
ODT Screen Development
Fig 7.3 Data Source Properties
23
ODT Screen Development
Fig 7.4 Adding Fields to created Data Source
Column Name
This is an information column; tool will not allow the user to change the value.
Max Length
The max length of column will be defaulted while adding a column and it can be overwritten.
This value will be considered for the field max length of the designed screen. It means, at the
run time system will not allow the user to enter the text more than this length.
Data Type
This shows about data type of the column selected and value will be populated while adding
the column, this is a non editable field.
Block Name
It is an information field, if the field is added to a block, that block name will be populated here.
Field Name
It is an information field. This displays the data block field to which the column is mapped
24
ODT Screen Development
Upload Table Column
If adapter upload package is required, column name in the upload table to which this column
is mapped has to be provided. If the field is left blank, then the column name in upload table
will be assumed to be same as the data source column name.
2. Establish the hierarchy, Relation and Relation Types among these Data Sources.
3. Ensure that the correct and full relation is mentioned in the Relation.
4. Identify the type of Data Source. It could be Normal, Summary, In Only or Query
Source.
25
ODT Screen Development
5. Ensure that there is only one master Data source for the Function.
6. Based on the number of records that the data source might have for the functionId,
set Multi Record to Y/N.
8. If the data source is mandatory, i.e. if it is a multi record data source and have to
have at least one record or if it’s a single record data source and is mandatory to
have the record, check the mandatory flag.
9. In case there is a need to have a default where clause or order by clause, mention the
same in the respective fields.
Follow the below practices while creating data sources for the screen.
26
ODT Screen Development
Parent data source has to be above all of its child data sources in the tree.
When a data source is deleted, all the references to that data source or its columns will
also be deleted from the radxml, i.e. Data block fields referring to the particular data
source column and all the references to those data block fields.
Note that deletion of any element from radxml is allowed only if that element has been
created in the current release. If the data source has been created in a previous release,
then developer won’t be allowed to delete the data source.
Similarly data source column alone can be deleted from the data source subjected to the
condition mentioned above.
Proper care has to be done while designing data sources as redesigning would be
impossible in a later release.
27
ODT Screen Development
Fig 7.7 Deleting Field from Data Source
7 Data Blocks
Data block is a logical grouping of fields from one or more data sources. In general, one data
block will have only one data source; but in cases where the data in tables is logically related
multiple data sources can be grouped into a single data block.
Once the Data source definition is complete, Block structure of the function id has to be
determined based on the functionality of the screen.
28
ODT Screen Development
Fig 8.1 Adding a New Data Block
Block Name has to provided in the Add block screen which pops up . Click on Ok after
giving the block name..Block Name has to adhere to following conventions.
i) It has to start with BLK_
ii) Block Name should not contain the table names which will be attached to the
block .This is of high importance from security point of view as block name will
be exposed in request and response xml.
Example: if data source name is FTTB_CONTRACT_MASTER, block name can be
BLK_MASTER; but not BLK_FTTB_CONTRACT_MASTER
29
ODT Screen Development
Fig 8.2 Add Block Screen
[Link] Parent
Select the parent block from the select list. All the data blocks will be available in the Select list.
All data blocks except master data block needs to have a parent data block.
30
ODT Screen Development
[Link] Xsd Node
This field captures the xsd node name. ODT will use this name for generation of node in Xsd’s.
This field will be defaulted based on block Name (by removing BLK_ and replacing _ with -). If
developer wishes to modify, he may do so.
Control: If the block is used only for UI purpose, and it is not required for processing in
the backend, then the block can identified as Control type. Only control fields can be
added to the Control block.
Normal: This block will be used for normal processing .Request and response xml will
contain this data block information.
Summary: Block which is used for creating the summary screen. For normal request
xml, this block won’t be present in the request or response xml.
31
ODT Screen Development
Fig 8.3 Data Block Properties
While attaching Data Sources to Blocks, multiple data sources should be selected only if such
data Sources can be functionally clubbed .Example: CSTM_PRODUCT and
LCTM_PRODUCT_DEFINITION. Clubbing should not be arbitrary.
A single entry data source can be mapped to more than one data block while a multi record
data source can be attached to only a single data block.
This list shows the data sources which can be attached to the particular data block. The
data source shown depends on the value of multi record field.
From the available data sources, developer can add data sources he want to be part of this data
block. Those will come under the list “Data source Added”. He can also remove them from the
data block. The buttons with arrow symbol are used for this addition and removal.
Note that one data source can be attached to more than one data block; but each data source
column can be mapped to single data block field.
Data Sources added in one release would not be allowed to be removed in any future releases.
32
ODT Screen Development
Fig 8.4 Attaching Data Source to a Data Block
33
ODT Screen Development
Fig 8.5 Adding Block Field to a Data Block
34
ODT Screen Development
Fig 8.6 Adding Data Source Fields to Data Block
35
ODT Screen Development
Fig 8.7 Adding UI fields to Data Block
Example: if data source column name is CONTRACT_REF_NO, block field name can be
CONTREFNO
36
ODT Screen Development
[Link] Data Block Field Properties
Provide the properties for the block field added.
37
ODT Screen Development
Fig 8.8 Defining an Amount Data Block Field
Button
If the display type for the field is a button, display type has to be selected as button.
Action to be performed on clicking the button should be provided in the events tab
Button can launch a sub screen, launch form, call form or invoke a user defined
JavaScript function.
38
ODT Screen Development
Fig 8.9 Defining Field as button
Checkbox
Checkbox is used for displaying checkboxes. Attribute Name will be ON and OFF.
Attribute values can be provided as per design
In the figure shown below:
ON (checked) corresponds to Y in table and OFF to N
Default value is selected as N
Date
If the field is of date type display type can be selected as Date.
39
ODT Screen Development
Fig 8.11 Defining Field as Date
Date Time
If the field displays both date and time, it can be selected as Date Time.
File
If browser option is required for the field, then field has to be selected as file type.
Example: If an excel sheet from the local machine needs to be selected, browser button has to be
provided, so that user can browse the folders and select the file required.
Label
If the field is required only for displaying image or Label, it can be selected as Label.
Normally UI fields are used for label display purpose.
LOV
If field value has to be selected through a LOV, display type has to be selected as LOV.
LOV’s have to be defined as explained in respective section.
LOV which has to be linked to the field has to be selected from the LOV Name select
list.
Return Fields and Bind Variables has to be mapped as shown in the figure below
If input to field has to be done only through LOV, Input By LOV Only fields can be
checked.
If validation for the value entered by the user is required in server, (validating whether
the value selected is part of the values fetched by LOV); LOV validation Reqd can be
checked.
40
ODT Screen Development
Fig 8.13 Defining Field as LOV
Mask
If the field has to be masked on tab out, then the display type can be selected as Mask
Mask ID has to be selected which identifies the pattern of the mask applied
Password
If the display type has to be in Password form, display type can be selected as
Password.
Radio
If the display type has to be radio button, it can be selected as Radio.
All the options for the Radio button have to be provided in the Custom Attributes.
Label which should be displayed in the screen should be provided in attribute name
and its corresponding storage value to attribute value.
Default value can also be provided.
41
ODT Screen Development
Fig 8.13 Defining Field as Radio button
Restricted Text
This is similar to normal Text field but special characters(non alpha numeric) won’t be
allowed to be input in a restricted Text field.
Text
For a normal text field, display type can be selected as Text .This is the default display
type.
Text Area
If data to be entered for the field is large (>100 characters);it can be defined as Text
Area type.
Number of rows and columns required for the text area can be specified in Text Area
Rows and Text Area Cols.
42
ODT Screen Development
Fig 8.14 Defining Field as Text Area
Select
If a select list is required for field, display type can be selected as Select.
All the options for the Select List have to be provided in the Custom Attributes. Label
which should be displayed in the screen should be provided in attribute name and its
corresponding storage value to attribute value.
43
ODT Screen Development
[Link].1.6 Item type
The value of this field will be defaulted to DATABASE item, if the field has taken from the
data source.
If the field is a UI field, item type can be either CONTROL or DESC.
Item type can be provided as CONTROL for non data fields like buttons, labels etc.
Item Type can be provided as DESC for control fields used for display of data.
Example: description of another data source column field
If the type is DESC parent field should be attached and the selected parent field should have a
LOV attached to it. And the current field should be one of the return fields of the attached LOV.
The field will be generated in the package and front end ([Link]) only if the item type is
Database item.
CONTROL and DESC types are UI fields; hence won’t be present in the generated packages.
44
ODT Screen Development
[Link].1.9 Related Block
This field is applicable if display type is amount. An amount field can be related to a
particular currency field, and this field captures the block name where the currency field is
present.
Global LOV can be maintained across function id and same can be attached to a field. This
will reduce development time. LOV can be selected from list of values attached to the field.
These LOV are handled by the FLEXCUBE Infra.
Global LOVs are stored in CSTB_LOV_INFO with function id as COMMON.
45
ODT Screen Development
Both offline and online LOV can be maintained for the same field.
The value of the field can be changed from data source column properties which will reflect in
block field level as well.
[Link].1.25 Mask Id
This is used for enforcing some restrictions on the values that can be entered in some fields.
The ids are present in sttb_field_mask. This is applicable only if the display type is Mask.
46
ODT Screen Development
[Link].1.26 Popup Edit Reqd
This can be checked for long text entries. A pop up edit screen would come along with the
field.
Popup edit will be provided for all fields whose field size is larger than 20 by FLEXCUBE
Infra
[Link].1.27 Required
If the field is mandatory, this checkbox can be checked .This will force the user to enter
value in this field. Asterisk (*) character would come along with the field in the screen.
[Link].1.28 Visible
If the field is required for processing; but not to be shown in the screen .then it can be made
invisible.
47
ODT Screen Development
Active ODT does not allow the deletion of attribute elements if created in an earlier
release. Hence if an attribute is no longer required, the attribute can be made inactive
Position: Ordering of the attributes in the list can be manipulated using Position field.
Position numbers can be modified. After changing the position values, position button has to be
clicked; which will arrange all attributes in the new order
[Link].1.37 Events
Events tab needs to be input if the field type is BUTTON.
Event Name: A pre-defined java script event can be attached to the field and same can be
selected.
Usually, onclick event is selected.
Function Name:
A function name should be mentioned for event, same function should be maintained in
the function id java script or in the infra java script files. This function will be invoked on the
event mentioned earlier on the field.
Note: Function Name needs to be mentioned only if event type is either NORMAL or
SUBFUNCTION.
Event Type:
Event Type can be
i) Call form: If on click of the button a call form has to be launched
ii) Launch form: : If on click of the button a launch form has to be launched
iii) Sub screen: If on click of the button a Sub Screen has to be launched
iv) Normal: if on click of the button, a JavaScript function has to be invoked which is
mentioned in Function Name field. Normal buttons have to be placed in a field set
for them to appear in the screen.
48
ODT Screen Development
v) Sub Function: This is used in Process Flow screens to invoke sub functions.
Button Screen: it specifies in which screen button is to be placed. This is not required for
Normal buttons.
Call Form Name: If the button is of Call form/Launch form type, the name of the call
form/launch form which has to be launched should be mentioned here.
All the attached call forms .Launch forms which are active will appear in the Select List
Screen Name: For Sub Screen, call form, Launch Form type buttons; this field specified the
name of the screen which will be launched.
3. Block Types are similar to data source types with an additional type ‘Control’.
4. After adding a block, ODT defaults the XSD node. Node name would be Block name
without BLK_ and in Sentence case. Also ‘_’ will be replaced with’-‘.
5. Parent block should be chosen from the list based on the hierarchy.
6. Similar to data sources, block also can be either Multi Record or single record type.
49
ODT Screen Development
1. The same data source can be selected in multiple blocks. However in case of Multi
record data sources, ODT allows the developer to attach the data source to only one
block.
2. One Multi Record block can have multiple data sources provided all of these data
sources have strict one to one relation.
3. In case of multiple data sources in a single data block, it is important to ensure that
the data in the attached data sources is functionally related and more importantly, a
row in one table would definitely have a row in other attached data sources as well.
Otherwise the generated code inserts records in all the tables always and this would
result in lot of dummy records in the database.
4. Parent data block has to be above its child data block in the browser tree. Developer
has the option to rearrange the order of the blocks in the tree (by drag and drop).
Note that if block or block fields are re arranged, all units will have to be
regenerated
Below are some of the important points to be noted while giving field properties:
1. Avoid using UI fields as LOV bind variables.
2. Avoid using separate Query data sources for single description fields. Use
Description type UI fields for Description fields.
50
ODT Screen Development
3. Ensure that Related Block and Field are given for Amount Fields. Ensure that related
currency fields are placed above the amount fields in the browser tree.
4. In case the field is not required in XSD, check not Required XSD. There are cases
where the field is a primary key field in a child block and does not need to be
repeated in Child block. For example, the field PRODUCT_CODE in Product forms
is not required in any Block other than once in the master block.
Deletion of data block will also delete all the references to any of its block fields.
I.e. it may remove any of its fields attached to a field set; or the block fields used in the
summary screen.
Note that ODT will allow deleting the data block only if it is created in the same release
.Data blocks created in any previous release cannot be deleted.
51
ODT Screen Development
Deletion of Block Field:
Block field can also be deleted provided it satisfied the condition above.
The process is similar to the deletion of data source columns.
All the references to the deleted block field will also be deleted.
Since deletion of data block or block fields is not allowed in later releases, it is advised to
take proper care while designing data blocks for the screen
All the units needs to be regenerated after deletion of a data block or a block field
52
ODT Screen Development
Fig 8.21 Renaming a Data Block
Renaming of data block will also rename all the references to the data block.
Example: Summary data block if renamed will reflect in the summary node also
Note that ODT will allow renaming the data block only if it is created in the same release.
Data blocks created in any previous release cannot be renamed.
53
ODT Screen Development
Fig 8.22 Renaming of Block Field
Since renaming of data block or block fields is not allowed in later releases, it is
advised to take proper care while designing data blocks for the screen.
All the units need to be regenerated after renaming of a data block or a block field.
8 Screens
After designing Data sources and Blocks, Design the screen layout based on the
requirement.
54
ODT Screen Development
Fig 9.1 Adding a New Screen
55
ODT Screen Development
8.1.1 Screen Properties
Provide the properties of the screen as required:
[Link] Visible
Screens can be made invisible if it not intended to be used.
The screens created in any previous release cannot be deleted. Hence visible flag has
to be unchecked to achieve the same.
56
ODT Screen Development
Fig 9.3 Screen Properties
Screen Arguments are parameters that can be passed to the screen on launching the
screen.
If on launch of the screen, some of the fields needs to be populated based on the
screen from which it is launched, screen arguments can be used.
57
ODT Screen Development
Source Field identifies the field name whose value will be passed as the screen
argument to the screen. Select List provides list of all fields in the source block
selected.
[Link].4 Arg Value
If the argument value is hard coded, then this can be specified in this field. If
argument value is specified, then source block and source field is not required.
For example: action codes can be passed as screen arguments which will be hardcoded like
EXECUTEQUERY.
[Link].5 Target Block
Target block represents the block containing the field to which argument value is
assigned .This block should be part of the screen. Select list provides the list of all
data blocks defined in the function Id.
[Link].6 Target Field
Target Filed identifies the field to which the argument will be passed. Select List
provides the list of all fields in the target block.
[Link].7 Active
Screen Arguments defined in an earlier release cannot be deleted. Instead,
developer can make it as inactive which serves the same purpose.
8.1.2 Tabs
58
ODT Screen Development
When a developer creates a screen in the ODT, Tool will create three default portions in the
screen:
Header
Body
Footer
FLEXCUBE screens are divided into three portions, Header, Body and Footer and the all
portions can have tabs.
Each portion will have default tabs. Along with these default tabs developer can create more
tabs as required.
59
ODT Screen Development
ii) Clicking on add tab icon on the top right portion of screen portion screen.
60
ODT Screen Development
Tab type as data or service. Tab Type is Data for Normal case. If any call form
has to be embedded in the tab (example : Branch Screens),this can be selected as
Service
[Link].5 Visible
Tabs can be made invisible if it is not intended to be used.
Note: The tabs created in any previous release cannot be deleted, so visible flag
has to be unchecked to achieve the same.
[Link].6 Dependent Fields
If the tab type is service, this comes into picture. This is used to map the fields in
the main screen to which this field is dependent.
61
ODT Screen Development
Fig 9.8 Preview of a Sample Screen illustrating Sections and Partitions
62
ODT Screen Development
Fig 9.9 Adding a Section to a Tab
63
ODT Screen Development
Section Name
This field will be defaulted based on the section name provided while creation.
It is a non editable field.
Collapse
If the section has to be made collapsible, this option can be checked
Visible
If the sections are not required in the screen, it can be made invisible.
Note: sections created in previous releases cannot be deleted. Hence it can be
made invisible to achieve the same.
[Link].1 Partitions
Partitions can be added to the section.
The number of partitions allowed on a section depends on screen type and screen
portion.
i) For Large screen, a section in the body or header can have a maximum of 3
partitions.
ii) For Large Screens, a section in the footer can have a maximum of 4
partitions.
iii) For all medium and small screens, a maximum of 2 partitions is allowed.
64
ODT Screen Development
Number of partitions mentioned above is including any sub partitions if defined;
i.e. if partition is divided into 2 sub partitions; it will be treated as 2 partitions by
the system.
Partition Sl No
This will used to identify the partition by the system. It will be defaulted by the
tool. Numerical value which increments by one.
Partition Name
This can be provided by the developer.
Width
Width of the partition will be defaulted by the Tool depending on the number of
partitions.
Example: If 2 partitions, width of each will be defaulted to 50.
Sub Partitions
Each partition can be subdivided into sub partition provided it does not breach
the maximum partitions allowed.
While launching the function Id from FLEXCUBE; the main screen will be launched.
65
ODT Screen Development
Fig 9.13 Preview of a Sample Screen illustrating Multiple Screens linked by Buttons
Buttons has to be placed in the main screen. Button Events to be maintained such that on
clicking the button, sub screens will be launched. The button events maintained for the
button can be seen in the below figure. Screen name is mentioned as the screen to be
launched and the button screen is the screen where button is placed.
66
ODT Screen Development
8.3 Guidelines and Best Practices
Follow the below practices while designing screens:
A function Id should have one main screen.
67
ODT Screen Development
Fig 9.15 Deleting a Screen
Any reference to the particular screen in any field set will also be reset to null.
Note that ODT will allow deletion of elements only if it is created in the same release.
Otherwise tool will throw error as show below:
68
ODT Screen Development
8.4.1 Visible Flag
If in a future release, if the screen/tab/section needs to be removed, it can be made
invisible; i.e. uncheck the visible flag.
Visible flag is available at Screen, Tab and Section level.
Note the following when making a screen invisible.
If a screen is made invisible, all its tabs and sections will also be made invisible.
Any field set which is placed in the particular screen will also be made invisible.
If the same screen is again made visible, tabs and sections still remain invisible.
Developer has to manually change the tabs and sections to visible.
Field sets also have to be made visible manually.
This is done so that so that if the fields attached to invisible field sets was attached
to some other field set, then the particular field set should not be made visible as it
will result in more than one field set containing same field.
Similarly when a section is made invisible, all the field sets placed in the section
will also become invisible. But when it is again made visible, field sets till remain
invisible. Section can be made visible only if the corresponding screen and tab is
visible.
69
ODT Screen Development
Fig 9.16 Renaming of Screen
Renaming of the screen will also be reflected in any reference to the particular screen in the
Radxml.
Note that renaming of screens would be allowed only if they were created in the same release.
9 Field Sets
Field set is a logical set of fields which would appear together in one partition of the screen
layout. The blocks in a Field should be grouped as Field sets to make them appear on specific
locations on the screen.
70
ODT Screen Development
Fig 10.1 Adding a New Field Set
Standard naming convention for field sets is FST_< Descriptive Code of the Field Set>.
Example: FST_VERSION
71
ODT Screen Development
Provide the Field Set properties as required.
[Link] No Of rows
If view type is multiple, then number of rows in the multiple tables can be decided
using ‘No of rows’ field. This is optional field, Tool will default to 15 rows, if the
field value is null.
72
ODT Screen Development
[Link] Screen Name
This field captures the name of the screen where the particular field set to be
added.
Select List provides the list of all Screens created in the Radxml.
[Link] Visible
If a field set is no longer required, it can be made invisible.
Note that ODT does not allow developer to delete a field set if it is created in a
previous release. Instead the same functionality can be achieved by making it
invisible.
73
ODT Screen Development
Fig 10.3 Field Set Properties
74
ODT Screen Development
Fig 10.4 Preview of a Sample Screen illustrating different Fields Sets
2. Select the Screen, Section and partition and the Block from which the field set as to
be created.
3. Select the fields into field set from the left text area (data block fields) to right and
give the appropriate Sub partition number wherever applicable.
4. In case the field set has to be horizontal, check the Horizontal Field set Check box.
5. For multi record field sets (either single view or multiple entry view), check the Read
only Check box to avoid +/- buttons. Note that checking this check box would only
stop the user from adding and deleting records. System would still allow modifying
the fields of a row based on whether or not they are read only.
75
ODT Screen Development
9.3 Deletion of Field Set
Field Set can be deleted either by
i) Selecting the delete option from right click of menu of the field set node or
ii) By clicking on delete field set icon in top right corner of the field set screen.
Note that deletion of field set is allowed only if the field set is created in the same release.
76
ODT Screen Development
When the field set is made visible, system checks whether any of the fields attached to
this field set has been re used in any other field set . If any fields are found to be
attached to any other visible field set, it won’t allow making the field set visible.
Note that renaming of field set is allowed only if the field set is created in the current
release.
10 LOVs
FLEXCUBE supports two type of List of Values (LOVs):
i) Global LOVs
These are LOVS defined in the system which can be used across all the functions.
Global LOVs are stored in CSTB_LOV_INFO with function id as COMMON.
77
ODT Screen Development
These are defined particular to the function Id. They are defined in the function Id
and can be attached to any field in the function Id as per requirement.
78
ODT Screen Development
Fig 11.2 Add LOV window
79
ODT Screen Development
[Link] Reduction Fld
A field can be made as reduction of non reduction by using this flag.
If the field is a reduction field, then in the LOV screen in FLEXCUBE, user will have to
filter the list of values based on the reduction fields.
[Link] Reduction Fld Type
Display type of the reduction field can be specified here .Display type of the reduction
field can be either of the below given values:
TEXT
CHECK BOX
RADIO
SELECT
80
ODT Screen Development
Fig 11.3 Sample LOV Screen illustrating Reduction Fields
Select List will contain both Local and Global LOVs. Developer has to select the LOV as
required for the field.
81
ODT Screen Development
10.2.3 LOV Validation Reqd:
If validation for the entered value is required against the values fetched from LOV
query, this checkbox can be checked.
If more than one bind variable is present in the LOV query, bind variables has to be
provided in the same order as it appears in the LOV query.
82
ODT Screen Development
10.2.5 Return Fields
Information regarding the return fields has to be provided in the Return Fields Tab.
Developer has to map the block fields to which the selected values from LOV should be
assigned.
Click on button Default from LOV Definition. All Query Cols will be defaulted based on
the LOV definition.
Query Column:
This will be defaulted by the system based on the LOV definition on clicking default
button.
Block Name:
Provide the Block Name which contains the field to which the particular coulmn value has
to assigned.
In the figure below AC_GL_NO is mapped to CRACC field. Therefore the value of result column
AC_GL_NO from the selected record will be defaulted to CRACC field.
LOV Details will be generated in the script for CSTB_LOV_INFO which needs to compiled in
the FLEXCUBE schema for functioning of LOVs.
83
ODT Screen Development
10.3 Guidelines and Best Practices
Note the following points while defining LOVs:
Avoid using in line views.
Avoid order by clause, as the same can be chosen by the user at run time.
Select proper Label Codes and ensure that the same are available in CSTB_LABELS.
11 Call Forms
Call forms are function Id’s that do processing which is common across many screens. Call
forms cannot be launched independently. They need to be launched from another function
Id. Third letter of the function id will be C for a call form.
Most of the sub systems of contract screens are designed as call forms. Example: Settlement
Screen, tax details etc.
84
ODT Screen Development
11.1.1 Function Id
Provide the call form name which has to be attached to the main screen here.
Fig 12.2 Maintaining button events for launching Call form screens
Tab type of call form is currently for Branch screens only and in which case no button is
required and Oracle FLEXCUBE infra would handle the same and embeds the call form under
the mentioned tab.
85
ODT Screen Development
11.1.6 Active
Call forms from previous releases cannot be deleted. So, if they are not required, the Active
can be turned off.
The window allows user to enter Screen Argument Name, and select Source block and field
from which the value has to be taken. The user also has an option to directly give the value for
the Screen Argument in the Argument value field.
Click on the Populate button. This will default the screen arguments for the call form as
maintained in CSTB_CALL_FORM_NODES table for the particular call form.
Reset button takes the screen to the initial state. All the entries made will be deleted.
Argument Name:
This will be defaulted based on the screen arguments specified for call form main screen
maintained in CSTB_CALL_FORM_NODES.
Source Block & Source Field:
Provide the block Name and source field of the function id whose value will be passed to the
screen argument mentioned.
Arg Value:
86
ODT Screen Development
If the screen argument value is to be hard coded, then value can be mentioned in this field. In
this scenario, source block and source field need not be mentioned.
Hence if dependent fields are changed, subsystem needs to be defaulted based on the latest
values yet again before saving.
This can be achieved by maintaining the dependent fields and subsystems for a particular
subsystem in Dependent On screen. FLEXCUBE Infra will handle the subsystem to be picked
up accordingly.
As shown in the below figure, dependent fields in the main function id has to be mentioned in
Fields table. Block Name and Filed Name has to be mentioned to identify the exact field.
Any other subsystems (call forms) on which it is dependent can be mentioned in Services table.
87
ODT Screen Development
Fig 12.4 Maintaining Dependent Fields Information for a Call Form
88
ODT Screen Development
Therefore ensure that data is present in CSTB_CALL_FOR_NODES and SMTB_MENU
for all the attached call forms.
12 Launch Forms
Launch Forms are function ids which can be launched from another screen for data view
purpose. No processing can be done on Launch Form screen data as done in Call form. Launch
Form is like any other normal function id and it can be launched independently.
Example: Screen for viewing accounting entries for a transaction
12.1.1 Function Id
Name of the Launch Form function id to be attached has to be specified here.
12.1.2 Active
Launch Forms attached in one release cannot be removed in a future release. Instead,
active flag can be set as NO to achieve the same.
89
ODT Screen Development
Fig 13.2 Passing Screen Arguments to Launch Form
Click Populate button to default the screen arguments. Note that the Screen arguments for the
Launch Form have to be maintained in CSTB_CALL_FORM_NODES table.
Argument Name:
This will be defaulted based on the screen arguments specified for Launch Form main screen
maintained in CSTB_CALL_FORM_NODES.
Source Block & Source Field:
Provide the block Name and source field of the function id whose value will be passed to the
screen argument mentioned.
Arg Value:
If the screen argument value is to be hard coded, then value can be mentioned in this field. In
this scenario, source block and source field need not be mentioned.
Launch forms can be launched by clicking on button placed in the main screen.
Button events have to be maintained such that Launch Form will be launched on clicking
it. Refer the below figure for reference:
90
ODT Screen Development
Fig 13.3 Maintaining Button Event for launching Launch Form screen
13 Actions
Web Service related information and FLEXCUBE amendable fields details are captured in
the actions screen.
91
ODT Screen Development
Appropriate Web service name should be selected here. LOV will fetch the service names
maintained in gwtm_operation_master
13.1.3 Operation Id
This is the key using which the Web service operation code would be derived. For example of
Operation Id is ‘Product’ Operation Code for ‘QUERY’ would be ‘QueryProduct’.
Note that this should be given in Sentence case and should be unique within the service. Ensure
that correct operation id is given i.e. in case of LC Product Operation id can be ‘Product’. It need
not be ‘LCProduct’. In case of multiple products/contracts there under the same service, for
example in Exchange traded derivates module, Operation Id for Deal product can ‘DealProd’
and for Margin product ‘MarginProd’ etc.
92
ODT Screen Development
Fig 14.1 Maintaining Web Services Information for a Function Id
Button amendable against each action would capture the amendable information for each
action. It is mandatory to give the amendable information for applicable actions for web
services to function normally.
Amendable information is not just for ‘Modification’ and for all the applicable actions. For
example in a transaction screen, for QUERY action amendable information could be Oracle
FLEXCUBE Reference number, User Reference Number and External reference Number. It is
not necessary to just have the Primary key in the XSD as external systems might query contracts
based on any of these reference numbers.
At a block level user has to specify All Records, Delete allowed, New allowed and Mandatory.
This information is used by the Tool to generate scripts and code accordingly.
13.2.4 Mandatory
This flag indicates whether the node is mandatory to be sent from external systems. This flag
would be used to set the Min Occurs Flag in XSDs for that operation.
93
ODT Screen Development
Generated code also would perform validations based on the above preferences.
14 Summary
Summary screen can be designed using ODT if applicable.
94
ODT Screen Development
14.1 Designing Summary Screen
14.1.1 Title
Summary screen title can be maintained here using a label code, and label code can be
selected from the list of values attached to the field.
95
ODT Screen Development
14.1.9 Main Summary Screen
Specifies the main form to be launched on clicking on a record from Summary Result . This is
applicable only for Dashboard screens
All the block fields present in the summary data block will appear in the text area to the left.
Developer can select the block fields required in the summary screen and move it to the right.
Field name:
The required fields in the summary grid result can be moved to the right from data block
fields.
Query Field:
Check the ‘Query’ for fields that need to appear in Query portion of the Summary screen.
Note that maximum number of Query fields for any screen is 12.
LOV Name:
If the query option is checked, the LOV name will be enabled. For all fields coming in
query portion of the summary screen, LOV name can be specified. The particular LOV would
be attached to that query field.
96
ODT Screen Development
Preview of the Summary screen with different ordering of query fields and result set fields
are shown below.
97
ODT Screen Development
14.1.13 Custom Buttons
Buttons can be added to summary screen using “Custom Buttons” Tab of the summary
screen of Oracle FLEXCUBE Universal Banking Development Workbench, same is shown
below:
Number of Rows:
Adding buttons to the summary screen can be of any number, and buttons can be
arranged in more than one row.
Max number of rows is 5.
Number of Buttons/Row
Number of Buttons per row can be maintained.
Field Name:
This refers to the button name which is placed in the summary screen.
Label:
Label Code for the button.
Function Name:
JavaScript function which would be invoked on clicking the particular button is maintained
here. Normally, this function would be written in the release specific JavaScript file.
98
ODT Screen Development
Fig 15.2 Adding Custom buttons to a Screen
16 Appendix
99
ODT Screen Development
Fig 17.1 Previewing a Screen
100
ODT Screen Development
By double clicking on any field in the Preview, developer can navigate directly to the
particular data block field.
Preview of the screen containing the field will be launched and the position of the particular
fiedl will be highlighted in green background colour.
101
ODT Screen Development
Fig 17.4 Preview of the Screen with the field located
102
ODT Screen Development
Fig 17.5 Label Code Maintenance Screen
Label Codes can be maintained through this screen. Screen provides option to deploy the label
codes directly to FLEXCUBE schema.
103
ODT Screen Development
16.3.4 Updating an existing Label
Fetch all Labels used in the function Id. Change the Label Description of the label codes for
which update has to be done. Change the Operation to Update. Check the checkbox and click
on Deploy. The selected label codes will be updated.
104
ODT Screen Development
Represents undo icon. On clicking of Undo icon the field values will be restored to
the values before visiting the screen.
105
ODT Screen Development
ODT Screen Development
August 2013
Oracle Corporation
World Headquarters
500 Oracle Parkway
Redwood Shores, CA 94065
U.S.A.
Worldwide Inquiries:
Phone: +1.650.506.7000
Fax: +1.650.506.7200
[Link]/ financial_services/
Copyright © 2011 - 2012 Oracle Financial Services Software Limited. All rights reserved.
No part of this work may be reproduced, stored in a retrieval system, adopted or transmitted in any form
or by any means, electronic, mechanical, photographic, graphic, optic recording or otherwise, translated
in any language or computer language, without the prior written permission of Oracle Financial Services
Software Limited.
Due care has been taken to make this document ODT Screen Development and accompanying software
package as accurate as possible. However, Oracle Financial Services Software Limited makes no
representation or warranties with respect to the contents hereof and shall not be responsible for any loss
or damage caused to the user by the direct or indirect use of this ODT Screen Development and the
accompanying Software System. Furthermore, Oracle Financial Services Software Limited reserves the
right to alter, modify or otherwise change in any manner the content hereof, without obligation of Oracle
Financial Services Software Limited to notify any person of such revision or changes.
All company and product names are trademarks of the respective companies with which they are
associated.
106
ODT Screen Development
Inappropriate clubbing of multiple data sources into a single data block may lead to complex system interactions, reduced performance, and potential data conflicts. Strategically, it's critical to aggregate only functionally related data sources, ensuring that each source adds value to the block's purpose without introducing unnecessary dependencies. Establishing a clear relational logic prior to clubbing and adhering to guidelines about matching data types and logical relationship types can mitigate these risks and optimize both functionality and maintainability .
A 'Master Block' is mandatory when designing a screen in ODT Screen Development. It is used to define one block as the primary data block in a screen's overall structure. This designation is made using a flag, distinguishing it from other blocks that require a parent. The master block holds the core data from which related data blocks may derive their parent relationships .
The View Type property in a Field Set specifies how records are presented and navigated. If set to 'Single', only one record is displayed at a time, with navigation buttons provided for moving between records. If 'Multiple' is selected, records are displayed in a table grid format, allowing multiple entries to be viewed simultaneously. This setting directly influences the user interface design, affecting usability and user interaction with the data .
Deletion of a field set in ODT is only permissible within the same release it was created to maintain backward compatibility and avoid disrupting existing system configurations. If a field set is no longer needed, making it invisible is an alternative. This approach retains the field set for reference and potential future use while disabling its properties. Visibility settings allow developers to hide a field set effectively without removing it from the system, ensuring stability across software versions .
In ODT, handling Primary Key (PK) fields involves listing all fields involved in the PK, separated by '~' if multiple fields comprise it. This method is vital for accurately building a screen's change log. Proper specification of PK fields ensures the uniqueness and integrity of each record in data blocks, aiding in consistent data processing and reducing the risk of errors during screen updates or data modifications .
Attaching a single entry data source to multiple data blocks is permissible and often necessary when the data logically serves multiple functions. However, care must be taken to ensure that each data source column is mapped to a single data block field. This mapping constraint prevents data redundancy and ensures that data integrity is maintained across the application's architecture, facilitating simpler maintenance and adaptation of the system's data structures .
'Control' type data blocks are used exclusively for UI purposes and do not involve backend processing. Unlike 'Normal' blocks, which are included in request and response XML and used for regular data processing, 'Control' blocks only contain UI fields, such as buttons and labels. 'Summary' blocks, on the other hand, are used for generating summary screens and are not included in regular request or response XML, differentiating them from Normal blocks primarily in terms of data processing and XML output .
The 'Multi Record' flag determines whether a data block behaves as a single entry or multiple entry entity. If set to 'Yes', the system only populates data sources with a 'Multi Record' flag of 'Yes' and a 'Relation Type' of 'One to One'. Conversely, if the 'Multi Record' flag is 'No', it limits the available data sources to those configured for single entry. This designation ensures that the block's design is consistent with its functional requirements, affecting both data integrity and application functionality by properly mapping data sources according to the relationship type .
The naming convention for block names requires them to start with 'BLK_' and prohibits the inclusion of table names attached to the block. This practice is crucial for security because block names are exposed in request and response XML documents. By avoiding table names in block names, sensitive internal database structure details are concealed, reducing the risk of information disclosure to unauthorized users .
The hierarchy of screens, tabs, and sections significantly impacts field set configuration in ODT by dictating where and how field sets are displayed. When creating a field set, it must be associated with specific screens, tabs, and sections, which determine its placement and visibility. This hierarchy ensures that the layout is organized logically, enhancing user navigation and accessibility while maintaining a cohesive interface structure .