fe115trm

882
Oracle Financial Services Technical Reference Manual Release 4.5 April 2001 Part No. A87511-01

Transcript of fe115trm

Page 1: fe115trm

Oracle Financial Services

Technical Reference Manual

Release 4.5

April 2001

Part No. A87511-01

Page 2: fe115trm

Oracle Financial Services Technical Reference Manual, Release 4.5

Part No. A87511-01

Copyright © 1999, 2001 Oracle Corporation. All rights reserved.

Contributing Authors: Sue Bernstein, Kyle Duckers, Rob Flippo, Kielley Fon-Ndikum, Greg Hall, Greg Jones, John Lightfoot, Chris Livingston, Geoff Potts, Claudia Roberts-Hawkins, Steven Roepke, and Steven Wasserman.

The Programs (which include both the software and documentation) contain proprietary information of Oracle Corporation; they are provided under a license agreement containing restrictions on use and disclosure and are also protected by copyright, patent, and other intellectual and industrial property laws. Reverse engineering, disassembly, or decompilation of the Programs is prohibited.

The information contained in this document is subject to change without notice. If you find any problems in the documentation, please report them to us in writing. Oracle Corporation does not warrant that this document is error free. Except as may be expressly permitted in your license agreement for these Programs, no part of these Programs may be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose, without the express written permission of Oracle Corporation.

Program Documentation is licensed for use solely to support the deployment of the Program and not for any other purpose.

If the Programs are delivered to the U.S. Government or anyone licensing or using the programs on behalf of the U.S. Government, the following notice is applicable:

Restricted Rights Notice Programs delivered subject to the DOD FAR Supplement are “commercial computer software” and use, duplication, and disclosure of the Programs, including documentation, shall be subject to the licensing restrictions set forth in the applicable Oracle license agreement. Otherwise, Programs delivered subject to the Federal Acquisition Regulations are “restricted computer software” and use, duplication, and disclosure of the Programs shall be subject to the restrictions in FAR 52.227-19, Commercial Computer Software - Restricted Rights (June, 1987). Oracle Corporation, 500 Oracle Parkway, Redwood City, CA 94065.

The Programs are not intended for use in any nuclear, aviation, mass transit, medical, or other inherently dangerous applications. It shall be the licensee's responsibility to take all appropriate fail-safe, backup, redundancy, and other measures to ensure the safe use of such applications if the Programs are used for such purposes, and Oracle Corporation disclaims liability for any damages caused by such use of the Programs.

Oracle is a registered trademark, and Oracle Financial Services Balance and Control, Oracle Budgeting and Planning, Oracle Financial Services Data Dictionary, Oracle Financial Services/Discoverer Integrator, Oracle Financial Services System Administration, Oracle Market Manager, Oracle Performance Analyzer, Oracle Portfolio Analyzer, Oracle Risk Manager, and Oracle Transfer Pricing are trademarks or registered trademarks of Oracle Corporation. All other company or product names mentioned are used for identification purposes only and may be trademarks of their respective owners.

Page 3: fe115trm

iii

Notice of Use, Duplication, and Disclosure

The Oracle Financial Services Applications Technical Reference Manual (in any form, whether software or printed matter) contains proprietary, confidential information that is the exclusive property of Oracle Corporation. If you do not have a valid contract with Oracle for the use of the Oracle Financial Services Applications Technical Reference Manual or have not signed a non-disclosure agreement with Oracle Corporation covering the Oracle Financial Services Applications Technical Reference Manual, then you received this document in an unauthorized manner and are not legally entitled to possess or read it.

Use, duplication, and disclosure are subject to restrictions stated in your contract with Oracle Corporation.

Page 4: fe115trm

iv

Page 5: fe115trm

v

Contents

Notice of Use, Duplication, and Disclosure ............................................................................. iii

Send Us Your Comments ............................................................................................................... xxix

Preface........................................................................................................................................................ xxxi

1 High-Level Design

Overview of the High-Level Design ............................................................................................... 1-1 Oracle Financial Services Overview .............................................................................................. 1-3

Oracle Budgeting & Planning ..................................................................................................... 1-3Oracle Financial Data Manager .................................................................................................. 1-4

Financial Data Model............................................................................................................ 1-4FDM Data Mart...................................................................................................................... 1-4FDM Standard Reports......................................................................................................... 1-8Oracle Balance & Control ..................................................................................................... 1-8Discoverer Integrator ............................................................................................................ 1-8Oracle Financial Data Manager Administration............................................................... 1-8Oracle Financial Data Manager Rate Manager ................................................................. 1-9

Oracle Performance Analyzer..................................................................................................... 1-9Oracle Risk Manager.................................................................................................................... 1-9Oracle Transfer Pricing ................................................................................................................ 1-9

Database Diagram Conventions .................................................................................................... 1-10Relationships ............................................................................................................................... 1-10Objects .......................................................................................................................................... 1-10

Page 6: fe115trm

vi

Types of Relationships ............................................................................................................... 1-11Summary Database Diagram .......................................................................................................... 1-12Database Diagrams ........................................................................................................................... 1-14

Diagram 1: Accounts .................................................................................................................. 1-18Diagram 2: Codes and Descriptions......................................................................................... 1-19Diagram 3a: Collateral (Part One) ............................................................................................ 1-20Diagram 3b: Collateral (Part Two) ........................................................................................... 1-21Diagram 4: Customer ................................................................................................................. 1-22Diagram 5: FDM Security .......................................................................................................... 1-23Diagram 6: FDM System............................................................................................................ 1-24Diagram 7: Hierarchies and Leaves ......................................................................................... 1-25Diagram 8: Messages.................................................................................................................. 1-26Diagram 9: Performance Analyzer Results ............................................................................. 1-27Diagram 10: FDM Rate Manager.............................................................................................. 1-28Diagram 11: Risk Manager Results Scenario Based............................................................... 1-29Diagram 12: Risk Manager Results Stochastic........................................................................ 1-30Diagram 13: Transfer Pricing Results ...................................................................................... 1-31Diagram 14: Transformation Processing ................................................................................. 1-32

Table List............................................................................................................................................. 1-33

2 Detail Design

Table Components .............................................................................................................................. 2-1Columns.................................................................................................................................. 2-1Indexes .................................................................................................................................... 2-2Sequences................................................................................................................................ 2-2Column Code Values ............................................................................................................ 2-2

FDM Database Tables ........................................................................................................................ 2-2ACCOUNT_COLLATERAL ....................................................................................................... 2-3ACCOUNT_GUARANTOR_RELATION................................................................................. 2-8ACCT ............................................................................................................................................ 2-11BUS................................................................................................................................................ 2-13COLLATERAL_BOATS............................................................................................................. 2-14COLLATERAL ............................................................................................................................ 2-15COLLATERAL_ASSESSMENT_HISTORY............................................................................. 2-21COLLATERAL_AUCTION_DETAILS.................................................................................... 2-23

Page 7: fe115trm

vii

COLLATERAL_INSURANCE_DETAILS............................................................................... 2-25COLLATERAL_OTHER_INSTITUTIONS ............................................................................. 2-27COLLATERAL_OWNERS ........................................................................................................ 2-29COLLATERAL_REAL_ESTATE .............................................................................................. 2-30COLLATERAL_SHARES .......................................................................................................... 2-32COLLATERAL_VEHICLES ...................................................................................................... 2-33CONS_DTL_XXXXXX................................................................................................................ 2-34CUST............................................................................................................................................. 2-36CUST_ADDR............................................................................................................................... 2-38EAR_LEAF_AVG_XXXXXX...................................................................................................... 2-39EAR_LEAF_DTL_XXXXXX....................................................................................................... 2-40EAR_TOTAL_AVG_XXXXXX .................................................................................................. 2-41EAR_TOTAL_DTL_XXXXXX ................................................................................................... 2-42HH ................................................................................................................................................ 2-43IND ............................................................................................................................................... 2-44Instrument Tables....................................................................................................................... 2-45LEDGER_STAT........................................................................................................................... 2-47OFSA_ACTION_ASSIGNMENT ............................................................................................. 2-49OFSA_ACTIONS ........................................................................................................................ 2-51OFSA_APP_ASSIGNMENT...................................................................................................... 2-53OFSA_APPLICATION_CONSTRUCTS.................................................................................. 2-55OFSA_APPLICATIONS ............................................................................................................ 2-57OFSA_AUDIT_TRAIL ............................................................................................................... 2-59OFSA_CATALOG_OF_IDS ...................................................................................................... 2-62OFSA_CATALOG_OF_LEAVES.............................................................................................. 2-66OFSA_COL_PROPERTY_REQUIREMENTS ......................................................................... 2-68OFSA_COLUMN_PROPERTIES.............................................................................................. 2-70OFSA_COLUMN_PROPERTY_CD ......................................................................................... 2-72OFSA_COLUMN_REQUIREMENTS...................................................................................... 2-74OFSA_COLUMN_REQUIREMENTS_MLS............................................................................ 2-78OFSA_CONSOLIDATED_MASTER ....................................................................................... 2-80OFSA_CONSTRUCT_ACTIONS ............................................................................................. 2-84OFSA_CONSTRUCTS ............................................................................................................... 2-86OFSA_CURRENCIES................................................................................................................. 2-87OFSA_CURRENCY_MLS.......................................................................................................... 2-90

Page 8: fe115trm

viii

OFSA_DATA_IDENTITY.......................................................................................................... 2-91OFSA_DATA_TYPE_DSC......................................................................................................... 2-94OFSA_DB_INFO ......................................................................................................................... 2-98OFSA_DB_OBJ_PRIV_ASSIGNMENT.................................................................................. 2-100OFSA_DB_SYS_PRIV_ASSIGNMENT.................................................................................. 2-102OFSA_DESCRIPTION_TABLES............................................................................................. 2-103OFSA_DETAIL_ELEM_B ........................................................................................................ 2-105OFSA_DETAIL_ELEM_MLS .................................................................................................. 2-108OFSA_DETAIL_GL_ACCOUNT_ID ..................................................................................... 2-109OFSA_DETAIL_LEAVES ........................................................................................................ 2-110OFSA_DETAIL_ORG_UNIT................................................................................................... 2-113OFSA_DETAIL_OTHER_COA............................................................................................... 2-114

Special Use of DETAIL_OTHER_COA for Risk Manager........................................... 2-114OFSA_DYN_TAB_CLASS_PRIV_ASSIGN........................................................................... 2-116OFSA_DYN_TABLE_PRIV_ASSIGN .................................................................................... 2-118OFSA_EAR_LEAF_AVG ......................................................................................................... 2-120OFSA_EAR_LEAF_DTL .......................................................................................................... 2-121OFSA_EAR_TOTAL_AVG...................................................................................................... 2-122OFSA_EAR_TOTAL_DTL....................................................................................................... 2-123OFSA_EXCHANGE_RATE_HIST.......................................................................................... 2-125OFSA_EXCHANGE_RATES_AUDIT.................................................................................... 2-128OFSA_EXCHNG_RATE_CONV_FORMULA...................................................................... 2-130OFSA_EXCHNG_RATE_DIRECT_ACCESS ........................................................................ 2-132OFSA_FISCAL_YEAR_INFO.................................................................................................. 2-134OFSA_FIXED_CURRENCIES ................................................................................................. 2-136OFSA_ID_FOLDER_ACCESS................................................................................................. 2-139OFSA_ID_FOLDERS ................................................................................................................ 2-140OFSA_IDT_CONFIGURE........................................................................................................ 2-142OFSA_IDT_RESULT_DETAIL................................................................................................ 2-146OFSA_IDT_RESULT_HEADER ............................................................................................. 2-149OFSA_IDT_ROLLUP................................................................................................................ 2-154

Balanced Trees ................................................................................................................... 2-154OFSA_IDT_SUBTOTAL........................................................................................................... 2-160OFSA_IDT_VIEW_FILTER...................................................................................................... 2-162OFSA_INDEX_STORAGE_DEFAULTS................................................................................ 2-164

Page 9: fe115trm

ix

OFSA_INSTRUMENT_ACCOUNT_CUST .......................................................................... 2-165OFSA_INSTRUMENT_TYPE_CD.......................................................................................... 2-168OFSA_INSTRUMENT_TYPE_MLS ....................................................................................... 2-169OFSA_INTEREST_RATES_AUDIT ....................................................................................... 2-170OFSA_IRC_RATE_HIST.......................................................................................................... 2-173OFSA_IRC_RATE_TERMS...................................................................................................... 2-175OFSA_IRC_TS_PARAM_HIST............................................................................................... 2-176OFSA_IRCS................................................................................................................................ 2-178OFSA_JOBS_RUN .................................................................................................................... 2-181OFSA_LEAF_DESC.................................................................................................................. 2-186OFSA_LEDGER_STAT_INSTRUMENT ............................................................................... 2-188OFSA_LEDGER_STAT_RECON............................................................................................ 2-189OFSA_LEVEL_DESC ............................................................................................................... 2-191OFSA_MESSAGE_LOG........................................................................................................... 2-192OFSA_MLS ................................................................................................................................ 2-195OFSA_NODE_DESC................................................................................................................ 2-196OFSA_PRIVILEGE_RECIPIENTS .......................................................................................... 2-198OFSA_PROCESS_CASH_FLOWS ......................................................................................... 2-200OFSA_PROCESS_ERRORS ..................................................................................................... 2-203OFSA_PROPERTY_COLUMNS............................................................................................. 2-206OFSA_PROPERTY_STP........................................................................................................... 2-209OFSA_REQUEST_QUEUE...................................................................................................... 2-212OFSA_RESULT_BUCKET ....................................................................................................... 2-215OFSA_RESULT_MASTER....................................................................................................... 2-217OFSA_RESULT_QUEUE ......................................................................................................... 2-221OFSA_RESULT_SCENARIO .................................................................................................. 2-223OFSA_ROLE_ASSIGNMENT................................................................................................. 2-224OFSA_ROLES............................................................................................................................ 2-226OFSA_SEC_PROFILE_ASSIGNMENT ................................................................................. 2-227OFSA_SECURITY_PROFILES ................................................................................................ 2-229OFSA_TAB_COLUMNS.......................................................................................................... 2-230OFSA_TAB_COLUMNS_MLS ............................................................................................... 2-233OFSA_TABLE_CLASS_ASSIGNMENT................................................................................ 2-235OFSA_TABLE_CLASS_PROPERTIES................................................................................... 2-237OFSA_TABLE_CLASSIFICATION........................................................................................ 2-239

Page 10: fe115trm

x

OFSA_TABLE_CLASSIFICATION_MLS.............................................................................. 2-241OFSA_TABLE_PROPERTIES.................................................................................................. 2-243OFSA_TABLE_STORAGE_DEFAULTS................................................................................ 2-245OFSA_TABLE_TRACKING .................................................................................................... 2-246OFSA_TABLES.......................................................................................................................... 2-249OFSA_TABLES_MLS ............................................................................................................... 2-251OFSA_TEMP_OBJECTS........................................................................................................... 2-253OFSA_TM_STOCH_MKT_VAL ............................................................................................. 2-254OFSA_TM_STOCH_RATES.................................................................................................... 2-255OFSA_TM_STOCH_TOT_VAR.............................................................................................. 2-256OFSA_TM_STOCH_VAR........................................................................................................ 2-257OFSA_TRANSFORM_LS_TEMPLATE ................................................................................. 2-258OFSA_TRANSFORM_RMC_TEMPLATE ............................................................................ 2-260OFSA_TRANSFORM_RMG_TEMPLATE ............................................................................ 2-262OFSA_TRANSFORM_ROLLUP_TEMPLATE ..................................................................... 2-265OFSA_USER_GROUP_ASSIGNMENT................................................................................. 2-267OFSA_USER_GROUPS............................................................................................................ 2-268OFSA_USERS ............................................................................................................................ 2-269RELATE...................................................................................................................................... 2-270RES_DTL_XXXXXX .................................................................................................................. 2-272SERV ........................................................................................................................................... 2-274Services Tables .......................................................................................................................... 2-277Transaction Tables .................................................................................................................... 2-279

3 Process Flow

Allocation Processing ......................................................................................................................... 3-1Allocation Processing Diagram–Preparation Phase ................................................................ 3-2Allocation Processing Diagram–Execution Phase ................................................................... 3-3Allocation Processing Steps......................................................................................................... 3-4Additional Allocation Processing Notes ................................................................................... 3-7

Data Correction Processing ............................................................................................................... 3-7Data Correction Processing Diagram ........................................................................................ 3-8Data Correction Processing Steps............................................................................................... 3-9Additional Data Correction Processing Notes ....................................................................... 3-11

Market Manager Processing ........................................................................................................... 3-12

Page 11: fe115trm

xi

Customerization Processing Diagram..................................................................................... 3-14Customerization Processing Steps ........................................................................................... 3-15Merge Customers Processing Diagram................................................................................... 3-17

Merge Business Customers Diagram ............................................................................... 3-18Merge Business Customers Processing Steps.................................................................. 3-19Merge Individual Customers Diagram ............................................................................ 3-20Merge Individual Customers Processing Steps .............................................................. 3-22

Householding Processing Diagram ......................................................................................... 3-24Householding Processing Steps ............................................................................................... 3-25Promotion Tracking by Product Processing Diagram .......................................................... 3-26Promotion Tracking by Product Processing Steps................................................................. 3-27Promotion Tracking by Query Processing Diagram ............................................................. 3-29Promotion Tracking by Query Processing Steps ................................................................... 3-30Promotion Generation Processing Diagram........................................................................... 3-31Promotion Generation Processing Steps ................................................................................. 3-32Promotion Results (Release 4.0) Processing Diagram........................................................... 3-34Promotion Results (Release 4.0) Processing Steps ................................................................. 3-35Promotion Rollup Processing Diagram................................................................................... 3-36Promotion Rollup Processing Steps......................................................................................... 3-37

Risk Manager Processing ................................................................................................................ 3-38Risk Manager Processing Diagram.......................................................................................... 3-39Risk Manager Processing Steps ................................................................................................ 3-40Additional Risk Manager Processing Notes........................................................................... 3-44

Stochastic-Based Processing .............................................................................................. 3-44Scenario-Based Processing ................................................................................................. 3-44

Transfer Pricing Processing............................................................................................................. 3-46Transfer Pricing Processing Diagram...................................................................................... 3-47Transfer Pricing Processing Steps ............................................................................................ 3-48

Transformation Processing.............................................................................................................. 3-50Transformation Processing Diagram....................................................................................... 3-51Transformation Processing Steps ............................................................................................. 3-52Additional Transformation Processing Notes........................................................................ 3-56

Page 12: fe115trm

xii

4 Oracle Budgeting & Planning Data Transformation

Execution Environment ..................................................................................................................... 4-2Data Loading Routines ...................................................................................................................... 4-2Loading Dimensions and Hierarchies ............................................................................................ 4-3

RDBMS Tables............................................................................................................................... 4-3Dimensions and Hierarchies Data Loading Processing Diagram ......................................... 4-4Dimensions and Hierarchies Data Loading Processing Steps ............................................... 4-5

Loading Ledger_Stat Data ................................................................................................................. 4-7RDBMS Tables............................................................................................................................... 4-7LEDGER_STAT Data Loading Processing Diagram ............................................................... 4-8LEDGER_STAT Data Loading Processing Steps ..................................................................... 4-9

Loading Risk Manager Data ............................................................................................................. 4-9RDBMS Tables............................................................................................................................. 4-10Risk Manager Data Loading Processing Diagram................................................................. 4-11Risk Manager Data Loading Processing Steps ....................................................................... 4-12Summary of Financial Element Processing............................................................................. 4-13

Loading Maturity Mix Data ............................................................................................................ 4-16RDBMS Tables............................................................................................................................. 4-16Maturity Mix Data Loading Processing Diagram.................................................................. 4-17Maturity Mix Data Loading Processing Steps........................................................................ 4-18....................................................................................................................................................... 4-18

5 Batch/Scheduling Tool Kit

OFSA Concepts ................................................................................................................................... 5-1OFSA Client-Server Architecture ............................................................................................... 5-1Level of Integration ...................................................................................................................... 5-2

OFSA Enabled ........................................................................................................................ 5-2Shared OFSA Data................................................................................................................. 5-2Extended OFSA Data Model................................................................................................ 5-2Code Sharing .......................................................................................................................... 5-2

Automated Processing ................................................................................................................. 5-3Process Flow .................................................................................................................................. 5-3

OFSA Process Flow Diagram............................................................................................... 5-4UNIX Signals ................................................................................................................................. 5-5

Page 13: fe115trm

xiii

Adapters................................................................................................................................................ 5-5Application Request Parameter Interface Adapter Specification.......................................... 5-6

Purpose ............................................................................................................................ 5-6Function ........................................................................................................................... 5-6Level of Integration........................................................................................................ 5-6

Requirements ......................................................................................................................... 5-6Environment Management Requirements ................................................................. 5-6OFSA Environment Management ............................................................................... 5-7Output Management ..................................................................................................... 5-7

Process Requirements ........................................................................................................... 5-7Parameter Management ................................................................................................ 5-7Parameter Format Management .................................................................................. 5-7SQL Query Capabilities................................................................................................. 5-7Spawned Process Control ............................................................................................. 5-8

Security Requirements.......................................................................................................... 5-8Password Security.......................................................................................................... 5-8Temporary Secured Files .............................................................................................. 5-8Secured Directory........................................................................................................... 5-8

System Design........................................................................................................................ 5-8ARPI Adapter ................................................................................................................. 5-9Process Spawn Manager ............................................................................................... 5-9OFSA Knowledge Engine ............................................................................................. 5-9FDM Database ................................................................................................................ 5-9Output Manager............................................................................................................. 5-9

System Structure.................................................................................................................. 5-10Decomposition of ARPI Adapter............................................................................... 5-10ARPI Interface Subcomponent ................................................................................... 5-11Data Interface Subcomponent .................................................................................... 5-11Output Manager Interface Subcomponent............................................................... 5-11OFSA Environment Subcomponent .......................................................................... 5-11OFSA Job Number Interface Subcomponent ........................................................... 5-11Security Subcomponent............................................................................................... 5-12

System Interactions ............................................................................................................. 5-12ARPI External Interactions ......................................................................................... 5-13Spawn Manager Interactions...................................................................................... 5-13

Page 14: fe115trm

xiv

FDM database Interactions ......................................................................................... 5-14OFSA Knowledge Engine Interactions............................................................................. 5-15

Configuration................................................................................................................ 5-15Inputs to ARPI...................................................................................................................... 5-15

Application Request Parameter Interface ................................................................. 5-15Purpose .......................................................................................................................... 5-15ARPI Command-line Method..................................................................................... 5-15ARPI Protocol Definition............................................................................................. 5-15

Product-Specific Parameter Interfaces..................................................................................... 5-16Balance & Control, Risk Manager and Transfer Pricing Parameter Interfaces .......... 5-16

Oracle Balance & Control ARPI Examples ............................................................... 5-17Example of a Balance & Control ARPI Correctly Ordered and Formatted ......... 5-17Example of a Balance & Control ARPI Incorrectly Formatted .............................. 5-18Example of a Balance & Control ARPI Incorrectly Ordered.................................. 5-18

Oracle Performance Analyzer ARPI Example Using the ARPI Command-line ........ 5-19Example of the Oracle Performance Analyzer Parameter Interface ..................... 5-20Example of a Performance Analyzer ARPI Correctly Ordered and Formatted.. 5-20

Additional Parameter Information ................................................................................... 5-21Multiple Type Enabled Parameters ........................................................................... 5-21System ID Number Value ........................................................................................... 5-21ID Name Value ............................................................................................................. 5-21Example of an ID Name .............................................................................................. 5-22

Outputs from ARPI ............................................................................................................. 5-23Error Conditions........................................................................................................... 5-23Server Application Return Codes .............................................................................. 5-23Required Action Return Codes .................................................................................. 5-24Bad Usage ...................................................................................................................... 5-24Cancelled ....................................................................................................................... 5-24

Output Manager Interactions ............................................................................................ 5-24Registered Application Output .................................................................................. 5-24

Internal Interactions ................................................................................................................... 5-25ARPI Adapter Internal Interactions.................................................................................. 5-25Data Interface Interactions ................................................................................................. 5-25

Secured Variables ......................................................................................................... 5-26OFSA Job Number........................................................................................................ 5-26

Page 15: fe115trm

xv

Prepared Parameters ................................................................................................... 5-26Physical Data Models....................................................................................................................... 5-26

Process Data Model .................................................................................................................... 5-26SYS_ID_NUM ...................................................................................................................... 5-27ID_DESC_SHORT ............................................................................................................... 5-27ID_TYPE ............................................................................................................................... 5-27FOLDER_NAME ................................................................................................................. 5-28

Request Data Model ................................................................................................................... 5-28JOB_NUM............................................................................................................................. 5-29

6 Boundaries and Limitations

Oracle Balance & Control.................................................................................................................. 6-1Correction Rules .................................................................................................................... 6-1

Oracle Budgeting & Planning .......................................................................................................... 6-1Product Tree ........................................................................................................................... 6-1Organizational Unit Tree...................................................................................................... 6-1Currency Values .................................................................................................................... 6-2Consolidation/Elimination Limits ..................................................................................... 6-2Time Periods .......................................................................................................................... 6-2Balances and Spreads............................................................................................................ 6-2Fiscal Year............................................................................................................................... 6-2

Common Dialogs ................................................................................................................................ 6-2Tree Rollup ............................................................................................................................. 6-2Transformation ID................................................................................................................. 6-3SQL Talk ................................................................................................................................. 6-3Data Filter ID.......................................................................................................................... 6-3Formula ID ............................................................................................................................. 6-3Request Queue....................................................................................................................... 6-3

Database Configuration .................................................................................................................... 6-3Users and Groups.................................................................................................................. 6-3OFSA ID Names .................................................................................................................... 6-3Number of IDs ....................................................................................................................... 6-4SQL Statements in All Processes ......................................................................................... 6-4Instrument Table ID Numbers ............................................................................................ 6-4User Interface Display of Dates........................................................................................... 6-4

Page 16: fe115trm

xvi

Leaf Set Up.............................................................................................................................. 6-4Balances................................................................................................................................... 6-4Rates ........................................................................................................................................ 6-4Terms and Frequencies ......................................................................................................... 6-4

Oracle Performance Analyzer........................................................................................................... 6-5Allocation ID .......................................................................................................................... 6-5Table ID................................................................................................................................... 6-5

Reporting .............................................................................................................................................. 6-5Stratification ID...................................................................................................................... 6-5Report ID................................................................................................................................. 6-5Standard Risk Manager Reports.......................................................................................... 6-6

Oracle Risk Manager .......................................................................................................................... 6-6Modeling Buckets .................................................................................................................. 6-6Dynamic Buckets ................................................................................................................... 6-6Leaf Characteristics ID.......................................................................................................... 6-6Transaction Strategies ID...................................................................................................... 6-7Rate Index ID.......................................................................................................................... 6-7Term Structure ID.................................................................................................................. 6-7Processing ............................................................................................................................... 6-7Formula Leaves ID ................................................................................................................ 6-7Forecast Balance ID ............................................................................................................... 6-7Forecast Rates ID ................................................................................................................... 6-8Prepayment Table ID ............................................................................................................ 6-8Prepayment ID ....................................................................................................................... 6-8User-defined Patterns ........................................................................................................... 6-8Cash Flow Calculations ........................................................................................................ 6-8Monte Carlo Processing........................................................................................................ 6-8

Oracle Transfer Pricing ...................................................................................................................... 6-8Prepayment ID ....................................................................................................................... 6-8Prepayment Table ID ............................................................................................................ 6-8User-defined Patterns ........................................................................................................... 6-8Cash Flow Generation........................................................................................................... 6-9Transfer Pricing Calculations............................................................................................... 6-9

Page 17: fe115trm

xvii

7 Consolidation of Results

Check the Processing IDs.................................................................................................................. 7-2Create a New Processing ID for Your Consolidated Results ..................................................... 7-2

Pre-Populate the Supporting Result Files ................................................................................. 7-2Consolidate Results Data............................................................................................................. 7-3

Detail Results Tables (Cash Flow and Gap Results) ........................................................ 7-3Two Approaches to Consolidating Results.................................................................................... 7-4Columns in the Result Detail Table ................................................................................................ 7-5Result_Master Table (Market Value Results) ................................................................................ 7-6

8 Detail Cash Flow Audit Options

The Detail Cash Flow Process .......................................................................................................... 8-2Determining the Value of Result Sys ID ................................................................................... 8-3Creating a Data Filter ID.............................................................................................................. 8-3Creating a Data Verification ID .................................................................................................. 8-4

Data Verification ID Results............................................................................................................. 8-6Financial Elements........................................................................................................................ 8-6Cash Flow Codes .......................................................................................................................... 8-7

Data Verification ................................................................................................................................. 8-8

9 Cash Flow Calculations

Instrument Level Modeling .............................................................................................................. 9-2Modeling Flexibility Defined by Instrument Data...................................................................... 9-2Daily Cash Flows ................................................................................................................................ 9-2Event Driven Logic ............................................................................................................................. 9-2Financial Elements.............................................................................................................................. 9-3Multicurrency Accounting and Consolidation ............................................................................. 9-3Terminology Used in This Chapter ................................................................................................. 9-3

Non-Currency-Based versus Currency-Based Processing ..................................................... 9-3Local Currency versus Reporting Currency............................................................................. 9-4

Default Currency (Code 000) ............................................................................................... 9-4[m] Forecast (in memory) versus [r] Actual (on record).................................................. 9-4

Cash Flow Calculation Process ........................................................................................................ 9-5Initialization of Data..................................................................................................................... 9-5

Page 18: fe115trm

xviii

Determine Account Type of Instrument ................................................................................... 9-6Initialize Interface Data................................................................................................................ 9-7

Model with Gross Rates........................................................................................................ 9-7Interest Credited .................................................................................................................... 9-7Percent Taxable ...................................................................................................................... 9-8Currency Gain/Loss Basis ................................................................................................... 9-8Pay-Equivalent Compounding Convention ...................................................................... 9-8User-Defined Payment Patterns .......................................................................................... 9-8User-Defined Repricing Patterns ........................................................................................ 9-8

Initialize Cash Flow Data............................................................................................................. 9-9Static Characteristics ............................................................................................................. 9-9Dynamic Characteristics..................................................................................................... 9-10Triggers ................................................................................................................................. 9-11Translation (Non-Currency-Based Processes)................................................................. 9-11

Initializing Schedule Records.................................................................................................... 9-12Amortization Code 800....................................................................................................... 9-12Amortization Code 801....................................................................................................... 9-12Amortization Code 802....................................................................................................... 9-12

Initializing Pattern Records....................................................................................................... 9-13Single Timeline Patterns ..................................................................................................... 9-13Example................................................................................................................................. 9-13Multiple Timeline Patterns (Payment Patterns Only).................................................... 9-14

Modeling Start and End Dates.................................................................................................. 9-15Additionally Derived Data........................................................................................................ 9-15

Initialization of Adjustable Rate Instruments for Transfer Pricing.............................. 9-15Percent Sold Adjustment .................................................................................................... 9-16Forecast Balance assumptions ........................................................................................... 9-16

Process Modeling Events........................................................................................................... 9-17Payment Calculation Event ....................................................................................................... 9-17

Static Information - Conventional Adjustable and Payment Patterns......................... 9-17Additional Information - Adjustable Neg-Am:............................................................... 9-18Event Trigger - Transfer Pricing ....................................................................................... 9-18Event Triggers - Conventional Adjustable and Conventional Payment Patterns.. 9-18Event Triggers - Adjustable Neg Am .............................................................................. 9-18

Payment Calculation Steps........................................................................................................ 9-18

Page 19: fe115trm

xix

Payment Event ............................................................................................................................ 9-21Static Information ................................................................................................................ 9-21Dynamic Information ......................................................................................................... 9-22Event Triggers...................................................................................................................... 9-22Additional Assumption Information ............................................................................... 9-22

Payment Event Steps.................................................................................................................. 9-22Rate per Payment -- Accrual Adjustment ........................................................................ 9-23Accrual Factor Codes.......................................................................................................... 9-23Rate per Payment -- Compounding Adjustment............................................................ 9-23Rate per Payment - Stub and Extended Payment Adjustment..................................... 9-24Percent of Original Payment.............................................................................................. 9-24Percent of Current Payment .............................................................................................. 9-25Percent of Current Balance................................................................................................. 9-25Percent of Original Balance................................................................................................ 9-26Absolute Value .................................................................................................................... 9-26

Interest in Advance Calculations ............................................................................................. 9-28Prepayment Event ...................................................................................................................... 9-30

Static Information ................................................................................................................ 9-30Dynamic Information ......................................................................................................... 9-30Additional Assumption Information ............................................................................... 9-30Event Trigger ....................................................................................................................... 9-30

Prepayment Event Steps............................................................................................................ 9-30Reprice Event .............................................................................................................................. 9-37Notes About Reprice Event....................................................................................................... 9-38Reprice Steps ............................................................................................................................... 9-38

Additional Processing Events......................................................................................................... 9-43Deferred Amortization Calculation Steps............................................................................... 9-43

Accounting for Exchange Rate Fluctuations................................................................................ 9-46Definition of Currency Methods .............................................................................................. 9-46

Examples of Exchange Rate Fluctuations ........................................................................ 9-47Effect of Exchange Rate Forecasts on Cash Flows................................................... 9-49

Market Value Calculation ............................................................................................................... 9-50Market Value Calculation Steps ............................................................................................... 9-51

Consolidation of Results ................................................................................................................. 9-53Currency-Based Gap Modeling ..................................................................................................... 9-54

Page 20: fe115trm

xx

Detail Cash Flow Data ..................................................................................................................... 9-55Event Use Code Values....................................................................................................... 9-59

Rule of 78’s Example......................................................................................................................... 9-59

10 Cash Flow Dictionary

Cash Flow Columns.......................................................................................................................... 10-2Cash Flow Columns Listed ....................................................................................................... 10-2Field Definitions.......................................................................................................................... 10-5Accrual Basis Code (ACCRUAL_BASIS_CD) ........................................................................ 10-5Adjustable Type Code (ADJUSTABLE_TYPE_CD) .............................................................. 10-8Amortization Type Code (AMRT_TYPE_CD) ....................................................................... 10-9Amortization Term (AMRT_TERM)...................................................................................... 10-15Amortization Term Multiplier (AMRT_TERM_MULT) ..................................................... 10-16As of Date (AS_OF_DATE) ..................................................................................................... 10-17Compounding Basis Code (COMPOUND_BASIS_CD) ..................................................... 10-19Current Book Balance (CUR_BOOK_BAL)........................................................................... 10-20Current Gross Rate (CUR_GROSS_RATE) ........................................................................... 10-21Current Net Rate (CUR_NET_RATE).................................................................................... 10-23Current Option-Adjusted Spread (CUR_OAS) .................................................................... 10-24Current Par Balance (CUR_PAR_BAL) ................................................................................. 10-25Current Payment (CUR_PAYMENT) .................................................................................... 10-27Current Static Spread (CUR_STATIC_SPREAD)................................................................. 10-31Current Transfer Pricing Period Average Daily Balance (CUR_TP_PER_ADB) ............ 10-31Deferred Current Balance (DEFERRED_CUR_BAL)........................................................... 10-33Deferred Original Balance (DEFERRED_ORG_BAL) ......................................................... 10-35Gross Margin (MARGIN_GROSS) ......................................................................................... 10-35Historic Option-Adjusted Spread (HISTORIC_OAS) ......................................................... 10-36Historic Static Spread (HISTORIC_STATIC_SPREAD)...................................................... 10-37ID Number (ID_NUMBER) ..................................................................................................... 10-38Identity Code (IDENTITY_CODE)......................................................................................... 10-38Instrument Type Code (INSTRUMENT_TYPE_CD)........................................................... 10-39Interest Type Code (INT_TYPE)............................................................................................. 10-40Interest Rate Code (INTEREST_RATE_CD) ......................................................................... 10-42Issue Date (ISSUE_DATE) ....................................................................................................... 10-43Last Payment Date (LAST_PAYMENT_DATE)................................................................... 10-44

Page 21: fe115trm

xxi

Last Repricing Date (LAST_REPRICE_DATE) .................................................................... 10-45Last Reprice Date Balance (LRD_BALANCE)...................................................................... 10-47Margin (MARGIN) ................................................................................................................... 10-48Market Value (MARKET_VALUE_C) ................................................................................... 10-49Matched Spread (MATCHED_SPREAD_C)......................................................................... 10-50Maturity Date (MATURITY_DATE)...................................................................................... 10-52Negative Amortization Amount (NEG_AMRT_AMT) ...................................................... 10-54Negative Amortization Equalization Date (NEG_AMRT_EQ_DATE) ............................ 10-56Negative Amortization Equalization Frequency (NEG_AMRT_EQ_FREQ)................... 10-57Negative Amortization Equalization Frequency Multiplier (NEG_AMRT_EQ_MULT) ........... 10-58Negative Amortization Limit (NEG_AMRT_LIMIT).......................................................... 10-58Net Margin Code (NET_MARGIN_CD) ............................................................................... 10-59Next Payment Date (NEXT_PAYMENT_DATE)................................................................. 10-61Next Repricing Date (NEXT_REPRICE_DATE) .................................................................. 10-64Original Market Value (ORG_MARKET_VALUE) ............................................................. 10-66Original Payment Amount (ORG_PAYMENT_AMT)........................................................ 10-66Original Par Balance (ORG_PAR_BAL) ................................................................................ 10-69Original Term (ORG_TERM).................................................................................................. 10-70Original Term Multiplier (ORG_TERM_MULT) ................................................................. 10-71Origination Date (ORIGINATION_DATE) .......................................................................... 10-72Payment Adjustment Date (PMT_ADJUST_DATE) ........................................................... 10-74Payment Change Frequency (PMT_CHG_FREQ) ............................................................... 10-75Payment Change Frequency Multiplier (PMT_CHG_FREQ_MULT) .............................. 10-76Payment Decrease Limit - Cycle (PMT_DECR_CYCLE) .................................................... 10-77Payment Decrease Limit - Life (PMT_DECR_LIFE)............................................................ 10-78Payment Frequency (PMT_FREQ)......................................................................................... 10-79Payment Frequency Multiplier (PMT_FREQ_MULT) ........................................................ 10-83Payment Increase Limit - Cycle (PMT_INCR_CYCLE) ...................................................... 10-83Payment Increase Limit - Life (PMT_INCR_LIFE) .............................................................. 10-84Percent Sold (PERCENT_SOLD)............................................................................................ 10-86Prior Transfer Pricing Period Average Daily Balance (PRIOR_TP_PER_ADB).............. 10-87Rate Cap Life (RATE_CAP_LIFE) .......................................................................................... 10-88Rate Change Minimum (RATE_CHG_MIN)........................................................................ 10-89Rate Change Rounding Code (RATE_CHG_RND_CD)..................................................... 10-91Rate Change Rounding Factor (RATE_CHG_RND_FAC)................................................. 10-92

Page 22: fe115trm

xxii

Rate Decrease Limit - Cycle (RATE_DECR_CYCLE) .......................................................... 10-94Rate Floor Life (RATE_FLOOR_LIFE)................................................................................... 10-95Rate Increase Limit - Cycle (RATE_INCR_CYCLE) ............................................................ 10-96Rate Set Lag (RATE_SET_LAG) ............................................................................................. 10-98Rate Set Lag Multiplier (RATE_SET_LAG_MULT)........................................................... 10-100Remaining Number of Payments (REMAIN_NO_PMTS_C)........................................... 10-100Repricing Frequency (REPRICE_FREQ) ............................................................................. 10-102Repricing Frequency Multiplier (REPRICE_FREQ_MULT)............................................. 10-104Teaser-rate End Date (TEASER_END_DATE) ................................................................... 10-104Transfer Rate Interest Rate Code (T_RATE_INT_RATE_CD) ......................................... 10-105Transfer Rate Margin (MARGIN_T_RATE) ....................................................................... 10-106Transfer Rate (TRANSFER_RATE) ...................................................................................... 10-107Transfer Rate Remaining Term (TRAN_RATE_REM_TERM)......................................... 10-108

11 Distributed Originations

New Business from Rollover .......................................................................................................... 11-2New Originations ............................................................................................................................. 11-2Rollover Accounts ............................................................................................................................. 11-5Current Target Average Approach ................................................................................................. 11-7Rolling between Accounts .............................................................................................................. 11-9Procedures for Implementation ..................................................................................................... 11-9

12 Transfer Pricing Option Cost

Architecture of the Calculations .................................................................................................... 12-2Definitions.................................................................................................................................... 12-2Example........................................................................................................................................ 12-3Process Flow ................................................................................................................................ 12-6Calculate Forward Rates............................................................................................................ 12-7Calculate Static Spread............................................................................................................... 12-7Calculate OAS ............................................................................................................................. 12-8

Theory ................................................................................................................................................. 12-9Equivalence of the OAS and Risk-Adjusted Margin ........................................................... 12-10Equivalence of the Static Spread and Margin....................................................................... 12-15

Model Usage Hints ......................................................................................................................... 12-17Non-Unicity of the Static Spread............................................................................................ 12-17

Page 23: fe115trm

xxiii

Accuracy .................................................................................................................................... 12-17

13 Rate Conversion

Definitions ......................................................................................................................................... 13-1Rate Format Usage ............................................................................................................................ 13-5

Scenario-based Forecast Rates .................................................................................................. 13-5Structured Change .............................................................................................................. 13-5User Input............................................................................................................................. 13-5Change From Base............................................................................................................... 13-5Implied Forward.................................................................................................................. 13-6

Derivation of Exchange Rate Forecasts ................................................................................... 13-6Scenario-based Market Value Calculations ............................................................................ 13-6Monte Carlo Rate Path Generation .......................................................................................... 13-6Rate Index Calculation from Monte Carlo Rate Paths .......................................................... 13-7Transfer Pricing........................................................................................................................... 13-7

Non Cash Flow Methods.................................................................................................... 13-7Cash Flow Methods ............................................................................................................ 13-7

Weighted Average Term............................................................................................. 13-7Duration......................................................................................................................... 13-7Zero Coupon................................................................................................................. 13-8

Rate Conversion Algorithms .......................................................................................................... 13-8Conversion From Yield-to-Maturity to Zero-Coupon Yield ................................................ 13-8Conversion From Zero-Coupon Yield to Yield-to-Maturity ................................................ 13-8

14 Forecast Rate Calculations

Currency Forecasting........................................................................................................................ 14-1Structured Change...................................................................................................................... 14-2Parity ............................................................................................................................................ 14-4Forward........................................................................................................................................ 14-7

Interest Rate Forecasting ................................................................................................................. 14-8Structured Change...................................................................................................................... 14-9Implied Forward......................................................................................................................... 14-9Change From Base.................................................................................................................... 14-10

Page 24: fe115trm

xxiv

15 Monte Carlo Analytics

Overview ............................................................................................................................................ 15-3Architecture of the Rate Generator................................................................................................ 15-4

Computation of Rates and Stochastic Discount Factors ....................................................... 15-5Arbitrage Term Structure Model.................................................................................................... 15-5No-Arbitrage Term Structure Models ........................................................................................... 15-6Yield Curve Smoothing.................................................................................................................... 15-7Calibration.......................................................................................................................................... 15-8Random Number Generation ......................................................................................................... 15-8

Low Discrepancy Sequences ..................................................................................................... 15-9Rate Conversion ................................................................................................................................ 15-9

Timescale Conversion ................................................................................................................ 15-9Compounding Basis Conversion............................................................................................ 15-10

Output from Monte Carlo ............................................................................................................. 15-11VaR Output Including Liabilities ........................................................................................... 15-14

An Example: Product Versus Balance Sheet Level Results ......................................... 15-14Validating Interpretation.................................................................................................. 15-18

Value-at-Risk.................................................................................................................................... 15-20Present Value-at-Risk ............................................................................................................... 15-20

Varying the At-Risk Period ........................................................................................................... 15-22Earnings-At-Risk............................................................................................................................. 15-23Recommended Configuration ...................................................................................................... 15-24Term Structure Models .................................................................................................................. 15-25

Merton Model............................................................................................................................ 15-25Ho and Lee Model .................................................................................................................... 15-26Vasicek Model ........................................................................................................................... 15-26Extended Vasicek (Hull and White) Model .......................................................................... 15-28

Term Structure Parameters Format .............................................................................................. 15-29Estimating Term Structure Parameters ................................................................................. 15-31

Traditional Academic Approach..................................................................................... 15-31Volatility Curve Approach............................................................................................... 15-32Advanced Historical Volatility Approach ..................................................................... 15-33Single-Day Yield Curve Fitting ....................................................................................... 15-34The Best Approach ............................................................................................................ 15-35

Choosing a Smoothing Method ................................................................................................... 15-36

Page 25: fe115trm

xxv

Cubic Spline of Yields .............................................................................................................. 15-37Linear Interpolation ................................................................................................................. 15-38

Defining a Rate Index Formula.................................................................................................... 15-38General Case.............................................................................................................................. 15-39Formula for a Coupon Rate..................................................................................................... 15-39Computation of Duration and Convexity............................................................................. 15-42

References ........................................................................................................................................ 15-43

16 Oracle Risk Manager Financial Elements

Accumulation Methods ................................................................................................................... 16-2Average Method.................................................................................................................. 16-2Accrual Method ................................................................................................................... 16-2Sum Method......................................................................................................................... 16-3At First Method.................................................................................................................... 16-3At Last Method .................................................................................................................... 16-3

Financial Element Listed by Description..................................................................................... 16-4Financial Elements Listed by Number ......................................................................................... 16-8Element Type - Cash Flow Financial Elements: Non-Maturity Accounts ........................... 16-12Element Type - Cash Flow: Income Statement Accounts ........................................................ 16-13Element Type - Cash Flow: Simple Accounts............................................................................ 16-13Element Type - Gap ........................................................................................................................ 16-14Element Type - Market Value ....................................................................................................... 16-15Financial Element Output by Account Type ............................................................................. 16-16Financial Element Calculations ................................................................................................... 16-21Translation Methods for Financial Elements ............................................................................ 16-24

A Insurance Data Model

Property Casualty Insurance............................................................................................................. A-3Home Policies................................................................................................................................ A-3

Table: HOMES_DETAIL ...................................................................................................... A-4Table: HOME_CLAIMS........................................................................................................ A-8Table: HOME_COVERAGES_ENDORSEMENTS ........................................................... A-9Table: HOME_CVRG_ENDRSMNT_CLAIMS ............................................................... A-11Table: HOME_CVRG_ENDRSMNT_DED ...................................................................... A-12Table: HOME_CVRG_ENDRSMNT_DISC ..................................................................... A-13

Page 26: fe115trm

xxvi

Table: HOME_CVRG_ENDRSMNT_SURCH................................................................. A-13Table: HOME_POLICIES.................................................................................................... A-13Table: HOME_POLICY_DEDUCTIBLES......................................................................... A-16Table: HOME_POLICY_DISCOUNTS ............................................................................. A-16Table: HOME_POLICY_SURCHARGES ......................................................................... A-16

Vehicle Policies............................................................................................................................ A-17Table: PL_VEHICLE_CLAIMS .......................................................................................... A-18Table: PL_VEHICLE_COVERAGES ................................................................................. A-19Table: PL_VEHICLE_DISCOUNTS .................................................................................. A-21Table: PL_VEHICLE_OPERATORS_POLICIES.............................................................. A-21Table: PL_VEHICLE_POLICIES........................................................................................ A-21Table: PL_VEHICLE_SURCHARGES .............................................................................. A-24Table: VEHICLES_DETAIL................................................................................................ A-24Table: VEHICLE_OPERATORS ........................................................................................ A-26Table: VEHICLE_OWNERS............................................................................................... A-28Table: VEH_OPERATOR_ACCIDENT_HIST................................................................. A-28Table: VEH_OPERATOR_CITATION_HIST .................................................................. A-29

Floater and Umbrella Policies ................................................................................................... A-30Table: PL_FLOATER_ARTICLES...................................................................................... A-31Table: PL_FLOATER_CLAIMS ......................................................................................... A-33Table: PL_FLOATER_DISCOUNTS ................................................................................. A-34Table: PL_FLOATER_POLICIES....................................................................................... A-34Table: UMBRELLA_CLAIMS ............................................................................................ A-37Table: UMBRELLA_POLICIES.......................................................................................... A-38Table: UMBRELLA_UNDERLYING_POLICIES ............................................................ A-41

Life Insurance .................................................................................................................................... A-42Term Life Policies ....................................................................................................................... A-42

Table: GROUP_TERM_LIFE_POLICIES .......................................................................... A-43Table: TERM_LIFE_COVERAGES.................................................................................... A-45Table: TERM_LIFE_COVERAGE_OPTIONS .................................................................. A-48Table: TERM_LIFE_OPTIONS_SUMMARY ................................................................... A-51Table: TERM_LIFE_POLICIES .......................................................................................... A-52

Whole/Universal Life Policies.................................................................................................. A-56Table: GROUP_WHOLE_UL_POLICIES......................................................................... A-57Table: WHOLE_UL_COVERAGES................................................................................... A-60

Page 27: fe115trm

xxvii

Table: WHOLE_UL_COVERAGE_OPTIONS................................................................. A-65Table: WHOLE_UL_INVESTMENTS............................................................................... A-68Table: WHOLE_UL_INVEST_SUB_ACCOUNTS .......................................................... A-68Table: WHOLE_UL_LIFE_POLICIES............................................................................... A-69Table: WHOLE_UL_LOANS ............................................................................................. A-76Table: WHOLE_UL_OPTIONS_SUMMARY .................................................................. A-77

Life Insurance Participants........................................................................................................ A-79Table: CRIMINAL_CONVICTIONS................................................................................. A-80Table: DRIVER_VIOLATIONS.......................................................................................... A-80Table: FAMILY_ILLNESSES.............................................................................................. A-80Table: LIFESTYLE_ACTIVITIES ....................................................................................... A-81Table: LIFE_PARTICIPANTS ............................................................................................ A-81Table: LIFE_PARTICIPANTS_POLICIES ........................................................................ A-84Table: MEDICAL_CONDITIONS..................................................................................... A-85Table: MEDICAL_PREVENTIONS................................................................................... A-85Table: MEDICAL_TREATMENTS.................................................................................... A-85Table: RACING_COMPETITIONS ................................................................................... A-86Table: SUBSTANCE_USAGES .......................................................................................... A-86

Glossary

Index

Page 28: fe115trm

xxviii

Page 29: fe115trm

xxix

Send Us Your Comments

Oracle Financial Services Technical Reference Manual, Release 4.5

Part No. A87511-01

Oracle Corporation welcomes your comments and suggestions on the quality and usefulness of this publication. Your input is an important part of the information used for revision.

■ Did you find any errors?■ Is the information clearly presented?■ Do you need more information? If so, where?■ Are the examples correct? Do you need more examples?■ What features did you like most about this manual?

If you find any errors or have any other suggestions for improvement, please indicate the chapter, section, and page number (if available). You can send comments to us in the following ways:

■ Electronic mail - [email protected]■ FAX - ■ Postal service:

If you would like a reply, please give your name, address, and telephone number below.

If you have problems with the software, please contact your local Oracle Support Services.

Page 30: fe115trm

xxx

Page 31: fe115trm

xxxi

Preface

The Oracle Financial Services Applications Technical Reference Manual provides information needed to understand the underlying structure, processing, and use of Oracle Financial Services Applications (OFSA).

This manual is divided into two volumes:

■ Volume 1 emphasizes the OFSA system and individual products and provides information on database design, product processing, and technical integration with other tools.

■ Volume 2 emphasizes business analysis and provides information on analytical concepts, processes, and calculations.

This manual also contains an appendix and a glossary.

This preface describes the following information about the manual:

■ Intended Audience

■ Prerequisites

■ Organization

■ Related Documents

■ Conventions

■ How to Use This Manuall

■ How Not to Use This Manual

■ Customer Support Information

Page 32: fe115trm

xxxii

Intended AudienceThe Oracle Financial Services Applications Technical Reference Manual provides useful guidance and assistance to:

■ Technical end users

■ Consultants

■ DBAs

■ Systems Analysts

■ System Administrators

■ Other MIS professionals

PrerequisitesVolume 1 assumes that the user has a basic understanding of:

■ The OFSA suite of products

■ Structured analysis and design of relational databases

Volume 2 assumes that the user has a basic understanding of:

■ The Oracle Financial Services Applications suite of products, particularly Oracle Risk Manager and Oracle Transfer Pricing

■ Associated analytic theory and concepts

Page 33: fe115trm

xxxiii

OrganizationThe Oracle Financial Services Applications Technical Reference Manual contains the following volumes, chapters, appendix, and glossary:

Volume 1 OFSA System and ProductsVolume 1 of the Oracle Financial Services Applications Technical Reference Manual emphasizes the Oracle Financial Services Applications (OFSA) system and individual products. This part provides information on database design, product processing, and technical integration with other tools.

Chapter 1, High-Level Design This chapter presents a high-level design for OFSA. The chapter contains a description of each product within the OFSA suite, database diagrams for each OFSA functional area and lists of database tables and views.

Chapter 2, Detail Design This chapter presents detailed information about the underlying database structure and processes of the OFSA suite of products. This chapter provides a thorough explanation of how the tables included in this chapter function, what they contain and how the OFSA products use these tables to hold and access information.

Chapter 3, Process Flow This chapter presents a process flow description for each of the OFSA Knowledge Engines, including Allocation, Data Correction, Market Manager, Risk Manager, Transfer Pricing and Transformation.

Chapter 4, Oracle Budgeting & Planning Data Transformation This chapter describes the data transformation routines for Budgeting & Planning. It shows how they automate the task of moving information from the Oracle Financial Data Manager (FDM) relational environment (RDBMS) into the multidimensional Budgeting & Planning/Oracle Financial Analyzer (Budgeting & Planning/OFA) environment.

Chapter 5, Batch/Scheduling Tool Kit This chapter provides detailed, technical information about the interaction between the database and the OFSA Knowledge Engines.

Chapter 6, Boundaries and Limitations This chapter lists boundaries and limitations imposed on the database, interface and processing routines of the OFSA suite. This list includes specific OFSA products, where limitations are applicable, as well as report, common dialog and configuration considerations for the database.

Page 34: fe115trm

xxxiv

Volume 2 OFSA AnalyticsVolume 2 of the Oracle Financial Services Technical Reference Manual emphasizes business analysis and provides definitions, analytical concepts, processes, and calculations used in the processing of the Oracle Risk Manager and Oracle Transfer Pricing products.

Chapter 7 Consolidation of Results This chapter describes the Consolidation of Results feature, which is designed to combine the results set from multiple processing runs.

Chapter 8 Detail Cash Flow Audit Options This chapter describes the Detail Cash Flow Audit Options, which enable you to view daily cash flow results.

Chapter 9 Cash Flow Calculations This chapter describes the OFSA cash flow engine, which ensures modeling consistency across OFSA products, and the calculations it performs.

Chapter 10 Cash Flow Dictionary This chapter includes a list of columns required for cash flow processing and a list of columns required to run OFSA cash flow edits.

Chapter 11 Distributed Originations This chapter describes how new business instruments are generated as part of an Oracle Risk Manager or Budgeting & Planning forecast to replace balances that have run off for a particular product.

Chapter 12 Transfer Pricing Option Cost This chapter describes the option cost calculations implemented in Oracle Transfer Pricing, including theoretical overview, the mathematical details of the calculations, and examples.

Chapter 13 Rate Conversion This chapter: defines interest rate formats used within Risk Manager and Transfer Pricing; describes which format is used in a particular process and what type or types of conversion are used; and outlines the algorithms used for such conversions.

Chapter 14 Forecast Rate Calculations This chapter defines forecast assumptions for currency exchange rates and interest rates within the Risk Manager Forecast Rates ID.

Page 35: fe115trm

xxxv

Chapter 15 Monte Carlo Analytical This chapter describes the details of stochastic processing used within Risk Manager and Transfer Pricing. This includes the detailed architecture of the Monte Carlo rate generator that is used for stochastic forecasts of interest rates and calculation of market value, Value_at- Risk, and Earnings-at-Risk.

Chapter 16 Oracle Risk Manager Financial Elements This chapter contains the descriptions and calculation details of Financial Elements used in Risk Manager processing.

Appendix A, Insurance Data Model This appendix chapter describes the Property/Casualty and Life Insurance Data models for insurance profitability and reporting solutions.

Glossary The glossary defines technical names used in the Oracle Financial Services Technical Reference Manual.

Related DocumentsFor more information about using OFSA, see the following related documents:

■ Oracle Financial Data Manager Administration Guide

■ Oracle Financial Data Manager Data Dictionary

■ Oracle Financial Services Installation and Configuration Guide

Page 36: fe115trm

xxxvi

ConventionsThe Oracle Financial Services Applications Technical Reference Manual uses the following text and font characteristics:

Symbols■ Bullets indicate a list of items or topics.

1. Numbered lists are used for sequential steps in completing a procedure.

Notes, Cautions, and WarningsCertain information may be set off in boxes for purposes of emphasis:

■ Note refers to interesting but incidental information about the product or information that may be important but of lesser degree than a Caution or Warning.

■ Caution indicates the possibility of damage to a product, system, or data.

■ Warning refers to a situation that is potentially hazardous to people.

How to Use This ManualThe Oracle Financial Services Applications Technical Reference Manual is a single, centralized source of information about the underlying structure and processing of OFSA. The information provided in this manual can assist you in the understanding and implementation of OFSA features and functions, as well as the integration of OFSA with other tools.

Upper case text connected by underscores

Used to denote table names. For example, OFSA_TABLES table or OFSA_PROCESS_ERRORS table.

Lower case text connected by underscores

This convention is used to designate column names within a table. Examples of this convention include tp_hrates_sys_id and transfer_rate.

Page 37: fe115trm

xxxvii

For example, the Oracle Financial Services Applications Technical Reference Manual can help you:

■ Incorporate additional account instrument data

■ Create custom reports and queries

■ Integrate OFSA with other product systems

■ Integrate additional tools for use with OFSA

Here are several examples of how the this manual can be used:

Example #1Suppose your institution has merged with a separate financial institution and you need to incorporate new instrument account data into your FDM database. The database diagrams and table/column detail provided in this manual can be used to help define the data requirements and any database objects needed for the new accounts. If the instrument requires cash flow processing, appropriate defaults for the OFSA cash flow columns can be researched using the Cash Flow Column Definitions in Chapter 2, "Detail Design". Also, additional OFSA metadata requirements can be evaluated using the information provided about OFSA System tables in Chapter 2, "Detail Design".

Example #2

Suppose you want to automate the input of interest rate and yield curve data into the FDM database. By referencing the Rates database diagram, you can identify the tables required to load rate data. You can then use the individual table descriptions provided in Chapter 2, "Detail Design" to define the formatting and data requirements for loading the rate data outside of the OFSA interface.

Example #3

Suppose you are troubleshooting an OFSA Allocation process. By referencing the Allocation Process Flow diagram in Chapter 3, "Process Flow", you can identify the major steps in the process. The Process Description section then provides further information about each processing step. Any of the tables included in Chapter 2, "Detail Design" can then be referenced for more detailed information about how OFSA stores the data.

Page 38: fe115trm

xxxviii

How Not to Use This Manual

Do not use this manual to plan modifications to OFSA tables.Except for instrument tables and tables that you create for your database (user-defined tables), the structure of the tables in the FDM database should not be altered in any way. Modifying FDM Reserved Objects limits your ability to upgrade to future releases of OFSA. In addition, altering such tables could interfere with problem resolution and assistance from Oracle Support Services.

The OFSA suite of products has been constructed to provide for user customization without altering any of the FDM Reserved Objects. To satisfy your business needs, Oracle Financial Data Manager (FDM) Administration provides the functionality needed to register customized instrument tables and other user-defined objects for use with the OFSA suite.

Do not rely on upward compatibility of the data model.Oracle reserves the right to change the structure of the FDM tables and to change the meaning of, add, or delete codes and other data in future releases. Upward compatibility of the data model is not guaranteed. For example, if you create a report to display metadata information about the FDM database by querying the FDM Metadata tables, you are not guaranteed that the report will work properly after an upgrade.

Customer Support InformationProduct support is available through Oracle Support Services. Contact your project manager for information about using the support options offered in your geographic region. These options may include the following:

■ MetaLink (which provides online access to information about Technical Libraries, Patches, TARs, and Bugs and is available at metalink.oracle.com)

■ Telephone support

Page 39: fe115trm

High-Level Design 1-1

Oracle Proprietary, Confidential Information - Use Restricted by Contract

1High-Level Design

This chapter presents a high-level design for Oracle Financial Services Applications (OFSA). It contains a description of each product within the OFSA suite, database diagrams for each OFSA functional area and lists of database tables and views.

Overview of the High-Level DesignThis chapter provides summary information about the Oracle Financial Data Manager (FDM) database. Use this chapter to quickly acquaint yourself with the tables and functional areas that compose the OFSA product suite and database. You can find additional information about each of these components in Chapter 2, "Detail Design".

OFSA Data Mart The OFSA Data Mart Overview describes the architecture of the OFSA Data Mart. Included in this section is a diagram illustrating the key components comprising the OFSA Data Mart and their relationships.

OFSA Product The OFSA Product Overview section provides a brief description of each of the individual products of the OFSA suite.

Summary Database DiagramThe Summary Database Diagram section graphically represents the most important application tables and the relationships between them. It omits tables and relationships that contribute little to the understanding of the application data model. Typically, a summary database diagram shows tables that contain key reference and transaction data.

Page 40: fe115trm

Overview of the High-Level Design

1-2 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Database DiagramsThis section graphically represents all OFSA tables and the relationships between them, organized by functional area. Use this section to quickly learn what tables each OFSA functional area uses and how these tables interrelate. The table section of Chapter 2, "Detail Design" contains detailed information about each of these tables.

A database diagram for each application has been included in this section. These diagrams contain tables that are specific to the designated application. In addition, database diagrams have also been included for OFSA common functional areas. These are functions that are used commonly within several of the individual applications. In both cases tables may overlap.

The functional areas are identified in the following table as either Common or Application:

Table ListThe Table List section briefly describes each of the OFSA tables. Refer to Chapter 2, "Detail Design" for more detailed information about these tables.

OFSA Product Functional Area Type

Budgeting & Planning Application

Collateral Common

FDM Metadata Common

FDM Security Common

Hierarchies and Leaves Common

Instruments Common

Performance Analyzer Application

FDM Rate Manager Application

Risk Manager Application

Transfer Pricing Application

Transformation Processing Common

Page 41: fe115trm

Oracle Financial Services Overview

High-Level Design 1-3

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Oracle Financial Services OverviewThe Oracle Financial Data Manager is the foundation of the Oracle Financial Services Applications (OFSA) suite of products. Each of the components of the OFSA suite of products is described below:

Oracle Budgeting & PlanningOracle Budgeting & Planning is a comprehensive budgeting and planning tool that is simple to use yet offers the modeling complexity required for accurate forecasting. It uses detailed account-level information to enable sophisticated cash-flow based planning. Data from the Financial Data Manager is transferred to the Budgeting & Planning Express database by way of the BP Data Movement Routines. Cash flow data produced from Oracle Risk Manager can be loaded into

OracleFinancial Data

Manager

Oracle FinancialData ManagerAdministration

Oracle FinancialData Manager

Balance &Control

Oracle TransferPricing

OraclePerformance

Analyzer

Oracle FinancialData ManagerRate Manager

OracleBudgeting &

Planning

Oracle FinancialData Manager/

DiscovererIntegrator

BP DataMovement Routines BP Express

Database

Oracle RiskManager

Page 42: fe115trm

Oracle Financial Services Overview

1-4 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

the budgeting model and used for forecasting. Actual data, including cost and other allocations developed by Oracle Performance Analyzer, is integrated with forecast data to support comparisons of plans versus actual data.

Oracle Financial Data ManagerThe Oracle Financial Data Manager consists of the following components:

■ Financial Data Model

■ FDM Data Mart

■ FDM Standard Reports

■ Oracle Balance & Control

■ Oracle Discoverer Integrator

■ Oracle Financial Data Manager Administration

■ FDM Rate Manager

Financial Data ModelThe Financial Data Model contains an extensive set of data elements, including account, processing results, transaction and statistical, relationship, ledger and historical data. While the data model is designed to support Oracle’s analytical applications, it also supports free-form access by SQL-based reporting and analysis tools from other software vendors.

FDM Data MartThe FDM Data Mart is a centrally located and centrally administered store of an institution’s data from many different data sources. The FDM Data Mart comprises a Processing Data Mart and a Reporting Data Mart.

While information from the Processing Data Mart can be directly queried and accessed, the efficiency of such access can be improved by transforming the data

Page 43: fe115trm

Oracle Financial Services Overview

High-Level Design 1-5

Oracle Proprietary, Confidential Information - Use Restricted by Contract

into the Reporting Data Mart structure. The diagram below graphically illustrates this architecture:

The following sections describe the components of the FDM Data Mart in the order that they appear in the diagram.

Operational SystemsThese systems run the institution’s actual core business. Generally an institution has a specific operational system for each of its main areas of business such as Mortgages, Deposits, Credit Cards and so forth. Each of these operational systems uses a data store containing information specific to its function.

ExtractsThe data for the FDM database is obtained from the operational systems. It is the purpose of the extract process to generate extracted files from the various operational systems and to load these files into the FDM database.

FDMProcess Mart

OperationalSystems

OFSA ProcessingInformation

Access Tools

FDMReport Mart

Loading andSaving Data

QueryGeneration

Extracts Transformations

FDM Data Mart

Page 44: fe115trm

Oracle Financial Services Overview

1-6 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

FDM Processing Data MartThe FDM Processing Data Mart is a centrally located and centrally administered store of an institution’s data from many different data sources. It is designed to support a wide range of analysis from a single, unified source. It contains an extensive set of data elements, including account data, transaction and statistical data, customer and household data, ledger data, processing results and historical data. The data model is extendible, including a flexible schema for the management of historical and aggregated data. While the database is designed to support the analytical modules of the OFSA suite, it also supports free-form access by other SQL-compatible software tools.

Loading and Saving DataThis is the process of loading data into the OFSA Knowledge Engines for processing and then saving the data back to the database after the processing is complete.

OFSA Processing Based on assumptions set by the user, the Knowledge Engines use data in the FDM Processing Data Mart to create additional, value-added information. This group of engines is the core of the OFSA solution. See Chapter 3, "Process Flow" for detailed information on the OFSA Knowledge Engines.

TransformationsThe structure of the FDM Processing Data Mart is optimized for the processing that the suite performs. However, because most information access tools require a different data structure from that used by the FDM Processing Data Mart, the data can be transformed to a structure that is compatible with a variety of information access tools.

This process creates a logically separate data store for reporting. Although in most cases, the same physical database contains both the new data store and the original FDM Processing Data Mart, they could conceptually be stored in separate physical databases.

Query GenerationThe process of generating reports or performing analysis on data requires the data to be “pulled” out of the database into whatever tool is performing the query.

Page 45: fe115trm

Oracle Financial Services Overview

High-Level Design 1-7

Oracle Proprietary, Confidential Information - Use Restricted by Contract

FDM Reporting Data MartThe FDM Reporting Data Mart is a collection of tables that store the FDM data in structures that are optimized for Information Access tools. This is logically a separate collection of structures from the FDM Processing Data Mart, although both typically reside in the same physical database. The Reporting Data Mart enables end users to access and report on the data in the FDM database in a manner consistent with their business needs.

The FDM Report Data Mart functionality is provided by the following Oracle products:

■ Oracle Discoverer

■ Oracle Express

■ Oracle Portfolio Analyzer

■ Oracle Reports

These products provide the ability to transform data from the FDM Process Mart structure to a format optimized for end-user access utilizing various Information Access tools. Because each of the Reporting Data Mart products approach data access from a different perspective, they are generally combined to provide a complete information access solution

Each of these reporting products are described below.

Oracle DiscovererOracle Discoverer is part of Oracle’s suite of decision support tools. It is an intuitive ad hoc query, reporting, exploration and web publishing tool that enables business users at all levels of the organization to gain immediate access to information from relational database warehouses, data marts or online transaction processing systems. Discoverer is a ROLAP (Relational Online Analytical Processing) tool, operating directly against a relational database.

Oracle ExpressOracle Express delivers online analytical processing with advanced decision-support capabilities that include forecasting, what-if scenarios and financial modeling. In addition to analysis, the server supports graphics, communications, database management and data acquisition, especially the acquisition of relational data.

Page 46: fe115trm

Oracle Financial Services Overview

1-8 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Oracle Portfolio AnalyzerOracle Portfolio Analyzer is a product in the OFSA product suite. It is a powerful ad hoc query and analysis tool for complex reporting needs. This product brings the user close to the data and facilitates an easy-to-use view of the database, without requiring knowledge of structured query language (SQL). The product is designed to leverage the Oracle data and business process structures, such as dimensional hierarchies and query structures and meets the needs of sophisticated analysts managing the Oracle core analytical applications.

Oracle ReportsOracle Reports provides a multi-tiered deployment environment with the ability to centralize report execution in a manageable, scalable architecture. Report data is dynamically displayed in the user’s web browser, providing the availability of up-to-the-minute reports from anywhere on your intranet, extranet or even the internet. For global enterprise reporting, Oracle Reports includes Translation Builder, which enables reports to be translated into one of 40 supported languages from any other.

FDM Standard Reports Standard Reports for the OFSA applications are available for both Oracle Discoverer and Oracle Reports. These reports represent a wide range of capabilities of either product, and provide typical reporting needs of financial organizations. You can customize these reports or use them as starting points for your reporting needs.

Oracle Balance & ControlBalance & Control validates, corrects, and aggregates data from the FDM.

Discoverer IntegratorDiscoverer Integrator integrates the FDM database with Oracle Discoverer, which provides ad hoc reporting, analysis, and Web publishing capabilities.

Oracle Financial Data Manager AdministrationFinancial Data Manager Administration manages the FDM database, providing both security and object management capabilities.

FDM Administration provides a comprehensive security framework for administering all aspects of security for the FDM environment. This includes management of both database and application privileges for all of the individual

Page 47: fe115trm

Oracle Financial Services Overview

High-Level Design 1-9

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA applications that attach to the FDM database, as well as privileges for reporting and ad-hoc query access.

FDM Administration also provides functionality for managing the FDM Metadata. The object management functionality in FDM Administration enables you to customize and extend the FDM database for your specific business needs.

Oracle Financial Data Manager Rate ManagerOracle Financial Data Manager (FDM) Rate Manager manages interest rate, exchange rate, and currency information for the FDM.

Oracle Performance AnalyzerOracle Performance Analyzer links ledger, statistical and account-level data to develop comprehensive profitability information at the customer, product and business unit levels. This product supports multiple approaches to the development of costing and other allocations, risk-adjusted capital allocation, risk-adjusted performance and the production of measures such as RAROC (Risk Adjusted Return on Capital), EVA (Economic Value Added) and activity-based costing. Allocations can be applied to ledger and summary results tables, as well as individually to accounts, customers and transactions.

Oracle Risk ManagerOracle Risk Manager is an asset liability management model that employs account-level data to support structured interest rate risk analysis, balance sheet forecasting and market valuation. Every loan, deposit, investment and portfolio security can be measured and modeled individually, using both deterministic and stochastic methods. Oracle Risk Manager makes use of the results delivered by Oracle Transfer Pricing.

Oracle Transfer PricingBased on the same powerful cash flow modeling engine as Oracle Risk Manager, Oracle Transfer Pricing supports the industry’s most comprehensive range of transfer pricing methodologies, including the ability to handle components of transfer rates, such as liquidity and basis risk. It helps managers determine the account-level spread earned on assets and liabilities and the spread earned as a result of interest rate risk exposure. Results and methodologies are also integrated with Oracle Risk Manager and Oracle Budgeting & Planning.

Page 48: fe115trm

Database Diagram Conventions

1-10 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Database Diagram ConventionsThe following notational conventions are used for the FDM database diagrams.

Relationships

Objects

Non-identifying relationship

Identifying relationship (primary key of parent tableis contained in the child table)

LEAF_DESC

INSTRUMENTS

Table

Group of tables related by function

Page 49: fe115trm

Database Diagram Conventions

High-Level Design 1-11

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Types of Relationships

A BFor each row in Table A there are 0 or 1matching rows in Table B. For each row inTable B there is exactly 1matching row in TableA.

For each row in Table A there are 0, 1 or manymatching rows in Table B. For each row inTable B there is exactly 1 matching row inTable A.

A B

A B For each row in Table A there are 0, 1 or manymatching rows in Table B. For each row inTable B there are 0, 1 or many matching rowsin Table A..

INSTRUMENTS

AFor each row in Table A there are 0, 1 or manymatching rows in one or more tables withinGroup B. For one or more tables in Group B,there are many matching rows for a single rowin Table A.

Page 50: fe115trm

Summary Database Diagram

1-12 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Summary Database DiagramThe Summary database diagram graphically represents the most important FDM tables and groups of tables, and the relationships between them. It describes, at a conceptual level, the key information on which the OFSA suite depends.

LEAVES ANDHIERARCHIES

TRANSFER PRICING

RISK MANAGERRESULTS

FDM SYSTEMRATE MANAGER

TRANSFORMATIONPROCESSING

Services

CUSTOMER

LEDGER_STAT

FDM SECURITY

CODES ANDDESCRIPTIONS

Accounts

PERFORMANCEANALYZER

Instruments

Transactions

COLLATERAL

Reporting Data Mart

Reconciliation

Page 51: fe115trm

Summary Database Diagram

High-Level Design 1-13

Oracle Proprietary, Confidential Information - Use Restricted by Contract

The Summary database diagram is meant to convey logical connections between the major functional areas within the FDM database. This diagram does not represent the complete database implementation of FDM tables. Rather, it shows groups of tables that contain key reference and transaction data and omits tables and relationships that contribute little to the understanding of the FDM data model. For example, a foreign key relationship shown between two groups of tables may exist only between a single table in each group.

For a complete graphical representation of FDM tables and relationships between them, see the Database Diagrams section in this chapter.

Page 52: fe115trm

Database Diagrams

1-14 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Database DiagramsThis section graphically represents OFSA tables, and the relationships between them, organized by functional area. Use this section to learn which tables each OFSA functional area uses and how these tables interrelate. Chapter 2, "Detail Design" provides detailed information about each of these tables.

This section contains a database diagram for each of the following OFSA functional areas:

Note: Many tables are not displayed on these diagrams because they are classified as Reserved.

Note: Code Base tables (’_CD’) and MLS Tables (’_MLS’) shown on the diagrams are not always described in Chapter 2, "Detail Design". Any such objects that are used only to provide code descriptions, and have no attributes other than a short name and long description, are not documented individually in this manual. To obtain a list of valid codes and descriptions for these objects, refer either to the Oracle Financial Services Data Dictionary, or query the objects in the FDM database directly.

Diagram Number Description

Diagram 1 Accounts

Diagram 2 Codes and Descriptions

Diagram 3a Collateral (Part One)

Diagram 3b Collateral (Part Two)

Diagram 4 Customer

Diagram 5 FDM Security

Diagram 6 FDM System

Diagram 7 Hierarchies and Leaves

Diagram 8 Messages

Page 53: fe115trm

Database Diagrams

High-Level Design 1-15

Oracle Proprietary, Confidential Information - Use Restricted by Contract

AccountsThis diagram shows the tables and relationships for storing information about financial accounts. Financial account information includes detailed account data stored in the Instrument tables as well as that stored in any of the Services tables. Transaction information for financial accounts is displayed on the diagram.

Multiple connections to the OFSA_LEAF_DESC table because each Instrument, Service or Transaction table has multiple Leaf Columns.

Codes and DescriptionsThis diagram shows examples of how the various Code and Description objects relate to Instrument and Services tables. Because FDM provides for any number of customized Code and Description objects, the entities on the diagram are named’Code1’, ’Code2’ and ’CodeX’.

The diagram presents two examples of MLS enabled Code objects as well as a non-MLS enabled Code object. The ’Code1’ and Code2’ objects are MLS enabled. They are constructed according to the guidelines described in the Oracle Financial Services Installation and Configuration Guide. The Language Compatible Views that are part of the MLS implementation are not shown on the diagram.

The ’CodeX’ object is a non-MLS enabled Description table.

Collateral (Part One and Part Two)The Collateral data model describes the tables that store information about collateral used to secure financial accounts. FDM creates these tables during the database upgrade and database creation processes. The collateral tables are customizable.

Diagram 9 Performance Analyzer Results

Diagram 10 FDM Rate Manager

Diagram 11 Risk Manager Results

Diagram 12 Transfer Pricing Results

Diagram 13 Transformation Processing

Diagram Number Description

Page 54: fe115trm

Database Diagrams

1-16 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

CustomerThis diagram shows the tables that provide Customer information. The CUST table is the primary Customer table for the FDM Data Model. This table links to account information in the FDM database either through the OFSA_INSTRUMENT_ACCOUNT_CUST table or by way of the ACCT table.

FDM SecurityThis diagram shows the tables used to store data relating to Financial Data Manager security. Data for these tables is maintained using the FDM Administration application. All of the OFSA applications, except for Budgeting & Planning, access the FDM Security tables in order to authenticate login and application privileges. This information is separate from any information stored by the Oracle RDBMS in the metadata catalogs.

FDM SystemThe FDM System tables are the tables that store metadata about the FDM database. These objects store information about tables and views registered for the FDM database.This information is separate from any information stored by the Oracle RDBMS in the metadata catalogs.

Hierarchies and LeavesThis diagram shows the tables and relationships that store information for user constructs defining the hierarchical relationship of leaf nodes. Hierarchies are referred to as tree rollups in the OFSA suite. Organizational, Product, Ledger and other user-defined hierarchies can be defined using tree rollups.

MessagesThis diagram shows the tables used to store message and log information from OFSA Knowledge Engine processing.

Performance AnalyzerThis diagram shows the tables and relationships for results of Oracle Performance Analyzer processing.

FDM Rate ManagerThis diagram shows the tables and relationships for key tables used by the Oracle Financial Data Manager (FDM) Rate Manager product. These tables store

Page 55: fe115trm

Database Diagrams

High-Level Design 1-17

Oracle Proprietary, Confidential Information - Use Restricted by Contract

information about rates in the FDM database, including Interest Rates and Exchange Rates.

Risk Manager Results Scenario BasedThis diagram shows the tables and relationships used to store and generate the results of scenario based Risk Manager processes.

Risk Manager Results StochasticThis diagram shows the tables and relationships used to store and generate the results of stochastic (Earnings at Risk and Value at Risk) Risk Manager processes.

Transfer Pricing ResultsThis diagram shows the tables and relationships for the results of Transfer Pricing processing.

Transformation ProcessingThis diagram shows the tables and relationships used by the Oracle Transformation processes. Because the Transformation functionality is used to create output tables, this diagram includes the tables that govern how the output tables are created.

FDM Reserved ObjectsThe remaining tables and database objects provided in the initial installation of the FDM database are categorized as FDM Reserved. Detailed information about these tables and objects is not provided because these tables and objects are a collection of pre-built application components and are used by OFSA to provide application functionality.

Caution: Oracle does not support any customization of OFSA Reserved tables and objects, not even by Oracle consultants. In addition, the data in FDM Reserved tables should be manipulated using the OFSA interfaces only.

Page 56: fe115trm

Database Diagrams

1-18 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Diagram 1: Accounts

Instrument Table Services Table

ACCT

ACCOUNT_COLLATERAL

OFSA_LEAF_DESCone relationship per Leaf Column one relationship per Leaf Column

Transaction Table

one relationship per Leaf Column

OFSA_INSTRUMENT_ACCOUNT_CUST

CUSTOMER

OFSA_LEDGER_STAT_INSTRUMENT

OFSA_DETAIL_GL_ACCOUNT_ID

OFSA_LEDGER_STAT_RECON

one relationship per Leaf Column

Reconciliation Tables

Page 57: fe115trm

Database Diagrams

High-Level Design 1-19

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Diagram 2: Codes and Descriptions

OFSA_MLS

Code1 'Base' Table Code1 'MLS' Table

Instrument orServices Table

Code2 'Base' Table Code2 'MLS' Table

CodeX 'Base' Table CodeX 'MLS' Table

User Def. Code DSC Table

Page 58: fe115trm

Database Diagrams

1-20 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Diagram 3a: Collateral (Part One)

ACCT

ACCOUNT_GUARANTOR_RELATION

OFSA_INSTRUMENT_TYPE_CD

OFSA_INSTRUMENT_TYPE_MLS

OFSA_GUARANTOR_RELATION_CD OFSA_GUARANTOR_RELATION_MLS

OFSA_COLLATERAL_STATUS

OFSA_COLLATRL_DISCHRG_TYPE_CD

ACCOUNT_COLLATERAL

OFSA_COLLATERAL_STATUS_MLS

CUST

OFSA_COLLATRL_DISCHRG_TYPE_MLS

Page 59: fe115trm

Database Diagrams

High-Level Design 1-21

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Diagram 3b: Collateral (Part Two)

COLLATERAL

COLLATERAL_ASSESSMENT_HISTORY

COLLATERAL_AUCTION_DETAILS

COLLATERAL_INSURANCE_DETAILS

COLATERAL_OTHER_INSTITUTIONS

OFSA_COLLATERAL_CD

OFSA_INSURANCE_TYPE_CD

OFSA_INSURANCE_TYPE_MLSOFSA_COLLATERAL_MLS

OFSA_COLLATERAL_SUB_TYPE_CD

OFSA_COLLATERAL_SUB_TYPE_MLS

COLLATERAL_SHARES

COLLATERAL_BOATS

COLLATERAL_REAL_ESTATE

COLLATERAL_VEHICLES

ACCOUNT_COLLATERAL CUST COLLATERAL_OWNERS

Page 60: fe115trm

Database Diagrams

1-22 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Diagram 4: Customer

CUST

RELATE

ACCT

IND

HH

BUSCUST_ADDR

Instruments

LEAVES ANDHIERARCHIES

Services

Accounts

OFSA_INSTRUMENT_ACCOUNT_CUST

Transactions

Page 61: fe115trm

Database Diagrams

High-Level Design 1-23

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Diagram 5: FDM Security

OFSA_TABLE_CLASSIFICATION OFSA_DYN_TAB_CLASS_PRIV_ASSIGN

OFSA_DYN_TABLE_PRIV_ASSIGN

OFSA_ID_FOLDERS

OFSA_CATALOG_OF_IDS

OFSA_ID_FOLDER_ACCESS

OFSA_DB_OBJ_PRIV_ASSIGNMENT

OFSA_PRIVILEGE_RECIPIENTS

OFSA_ROLE_ASSIGNMENT

OFSA_ROLES

OFSA_SEC_PROFILE_ASSIGNMENT

OFSA_SECURITY_PROFILES

OFSA_USERS

OFSA_USER_GROUP_ASSIGNMENT

OFSA_USER_GROUPS

OFSA_APP_ASSIGNMENT

OFSA_ACTION_ASSIGNMENT

OFSA_DB_SYS_PRIV_ASSIGNMENT

OFSA_ACTIONS OFSA_CONSTRUCT_ACTIONS OFSA_CONSTRUCTS

OFSA_RECIPIENT_TYPE_DSC

OFSA_APPLICATIONS

OFSA_APPLICATION_CONSTRUCTS

Page 62: fe115trm

Database Diagrams

1-24 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Diagram 6: FDM System

OFSA_DB_INFO

OFSA_TABLESOFSA_TABLES_MLS

OFSA_TAB_COLUMNSOFSA_TAB_COLUMNS_MLS

OFSA_DATA_TYPE_DSCOFSA_DESCRIPTION_TABLES

OFSA_COLUMN_PROPERTIES

OFSA_COLUMN_PROPERTY_CD

OFSA_TABLE_CLASS_ASSIGNMENT

OFSA_TABLE_CLASSIFICATIONOFSA_TABLE_CLASSIFICATION_MLS OFSA_TABLE_CLASS_PROPERTIES

OFSA_TABLE_PROPERTIES

OFSA_PROPERTY_STP OFSA_PROPERTY_COLUMNS

OFSA_COLUMN_REQUIREMENTS

OFSA_COL_PROPERTY_REQUIREMENTS

OFSA_COLUMN_REQUIREMENTS_MLS

OFSA_FISCAL_YEAR_INFO

Page 63: fe115trm

Database Diagrams

High-Level Design 1-25

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Diagram 7: Hierarchies and Leaves

OFSA_LEAF_DESC

OFSA_DETAIL_ELEM_B

OFSA_CATALOG_OF_LEAVES

OFSA_DETAIL_OTHER_COA

OFSA_DETAIL_ORG_UNIT

OFSA_DETAIL_LEAVES

OFSA_IDT_ROLLUP

OFSA_LEVEL_DESC

OFSA_NODE_DESC

OFSA_CATALOG_OF_IDS

ACCOUNTS

RISK MANAGERRESULTS

OFSA_IDT_SUBTOTAL

OFSA_IDT_VIEW_FILTER

Nodes->

Leav

es->

<-Leaves

Nodes->

LEDGER_STAT

OFSA_DETAIL_ELEM_MLS

Page 64: fe115trm

Database Diagrams

1-26 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Diagram 8: Messages

OFSA_MESSAGES_B

OFSA_MESSAGES_MLS

OFSA_MSG_SEVERITY_CD

OFSA_MSG_SEVERITY_MLS

OFSA_MESSAGE_LOG

OFSA_JOBS_RUN OFSA_APPLICATIONSOFSA_PROCESSES

OFSA_CATALOG_OF_IDS OFSA_PROCESS_ERRORS

Page 65: fe115trm

Database Diagrams

High-Level Design 1-27

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Diagram 9: Performance Analyzer Results

OFSA_DATA_IDENTITY

OFSA_AUDIT_TRAILLEDGER_STAT

Instruments Services

Transactions

RATE MANAGER

Accounts

OFSA_CATALOG_OF_IDS OFSA_IDT_CONFIGURE

Page 66: fe115trm

Database Diagrams

1-28 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Diagram 10: FDM Rate Manager

OFSA_CURRENCIES

OFSA_CURRENCY_MLS

OFSA_CURRENCY_STATUS_CD

OFSA_CURRENCY_STATUS_MLS

OFSA_FIXED_CURRENCIES

OFSA_EXCHANGE_RATE_HIST

OFSA_EXCHANGE_RATE_STATUS_CD

OFSA_EXCHANGE_RATE_STATUS_MLS

OFSA_EXCHNG_RATE_DIRECT_ACCESS

OFSA_EXCHNG_RATE_CONV_FORMULA

OFSA_EXCHNG_RATE_CONV_TYPE_CD

OFSA_EXCHNG_RATE_CONV_TYPE_MLS

OFSA_RATE_DATA_SOURCE_CDOFSA_IRCS

OFSA_ACCRUAL_BASIS_CD

OFSA_ACCRUAL_BASIS_MLS

OFSA_IRC_TS_PARAM_HIST

OFSA_ESTIMATION_SMOOTHING_CD

OFSA_ESTIMATION_SMOOTHING_MLS

OFSA_IRC_RATE_TERMS

OFSA_IRC_RATE_HIST

REFERENCE_IRC

ISO_CURRENCY_CD

Page 67: fe115trm

Database Diagrams

High-Level Design 1-29

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Diagram 11: Risk Manager Results Scenario Based

OFSA_RESULT_MASTER

OFSA_RESULT_TYPE_DSC

OFSA_RESULT_SCENARIO

RES_DTL_xxxxxxx

OFSA_IDT_RESULT_HEADER

OFSA_RESULT_BUCKET

OFSA_PROCESS_CASH_FLOWS

OFSA_PROCESS_ERRORS

LEAVES ANDHIERARCHIES

OFSA_CATALOG_OF_IDS

OFSA_CONSOLIDATED_MASTER

CONS_DTL_xxxxxx

OFSA_EXCHANGE_RATES_AUDIT

OFSA_INTEREST_RATES_AUDIT

RATE MANAGER

OFSA_IDT_RESULT_DETAILOFSA_IDT_RESULT_MASTER

Template Tables

Page 68: fe115trm

Database Diagrams

1-30 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Diagram 12: Risk Manager Results Stochastic

OFSA_CATALOG_OF_IDS

OFSA_EAR_LEAF_AVG OFSA_EAR_LEAF_DTL

OFSA_EAR_TOTAL_AVG OFSA_EAR_TOTAL_DTL

OFSA_IDT_RESULT_HEADER

EAR_LEAF_AVG_xxxxxxx

EAR_LEAF_DTL_xxxxxx

EAR_TOTAL_AVG_xxxxxxx

EAR_TOTAL_DTL_xxxxxxOFSA_TM_STOCH_VAR

OFSA_TM_STOCH_TOT_VAR

OFSA_TM_STOCH_MKT_VAL

OFSA_INTEREST_RATES_AUDIT

RATE MANAGER

LEAVES ANDHIERARCHIES

OFSA_PROCESS_CASH_FLOWS

OFSA_PROCESS_ERRORS

Template Tables

Page 69: fe115trm

Database Diagrams

High-Level Design 1-31

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Diagram 13: Transfer Pricing Results

OFSA_PROCESS_CASH_FLOWS

OFSA_PROCESS_ERRORS

OFSA_CATALOG_OF_IDS

OFSA_IDT_CONFIGURE

OFSA_DATA_IDENTITY

LEDGER_STAT

Instruments Services

RATE MANAGER

Accounts

OFSA_INTEREST_RATES_AUDIT

Page 70: fe115trm

Database Diagrams

1-32 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Diagram 14: Transformation Processing

OFSA_TABLE_TRACKING

OFSA_TABLE_STORAGE_DEFAULTS OFSA_INDEX_STORAGE_DEFAULTS

OFSA_TRANSFORM_LS_TEMPLATE OFSA_TRANSFORM_ROLLUP_TEMPLATE

OFSA_TRANSFORM_RMC_TEMPLATE OFSA_TRANSFORM_RMG_TEMPLATE

Transformation Template Tables

Storage Defaults Tables

Page 71: fe115trm

Table List

High-Level Design 1-33

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Table ListThis section lists the database table names and descriptions of the objects included in the individual database diagrams. A detailed description for these tables is also provided in Chapter 2, "Detail Design" of this manual.

The following tables do not have a detailed description in this manual:

■ CD and MLS tables

■ Instrument Tables

■ Services Tables

■ Transaction Tables

The Oracle Financial Services Data Dictionary provides detailed information on the columns associated with each of the Instrument and Services tables. Detailed descriptions are not needed for the CD and MLS tables because such tables are used only for storing codes and descriptions. Detail descriptions in Chapter 2, "Detail Design" of this manual are provided for tables with a value of ’Y’ in the “Table Detail” column below.

Tables not appearing in this list are FDM Reserved tables. Detailed information for these tables is not provided.

Note: the tables in Chapter 2, "Detail Design" are listed alphabetically.

Table Name Description Table Detail

ACCOUNT_COLLATERAL

Relates financial accounts to collateral. Y

ACCOUNT_GUARANTOR_RELATION

Relates guarantors to accounts Y

ACCT Stores information common to all Services tables.

Y

BUS Stores information on business customers and prospects.

Y

Page 72: fe115trm

Table List

1-34 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

COLLARTERAL_BOATS Provides detail information for water vehicles used as account collateral.

Y

COLLATERAL Identifies items used for securing financial accounts.

Y

COLLATERAL_ASSESSMENT_HISTORY

Stores the market value and assessment date for collateral.

Y

COLLATERAL_AUCTION_DETAILS

Provides detail information for insurance Y

COLLATERAL_INSURANCE_DETAILS

Stores information on insurance of the collateral.

Y

COLLATERAL_OTHER_INSTITUTIONS

Identifies the institutions that have a lien or a position in the collateral.

Y

COLLATERAL_OWNERS Identifies the individual owners that hold a position in the collateral

Y

COLLATERAL_REAL_ESTATE

Provides detail information about real estate used as collateral.

Y

COLLATERAL_SHARES Provides detail information about stock used as collateral.

Y

COLLATERAL_VEHICLES

Provides detail information about vehicles used as collateral.

Y

CONS_DTL_XXXXXX Stores RM Results consolidated to the reporting currency.

Y

CUST Stores information on all customers and prospects.

Y

CUST_ADDR Stores address information for all customers and prospects.

Y

EAR_LEAF_AVG_XXXXXX

Risk Manager Earnings at Risk result table, for Product Leaf results averaged across all rate paths.

Y

EAR_LEAF_DTL_XXXXXX

Risk Manager Earnings at Risk result table, for Product Leaf results for all rate paths.

Y

EAR_TOTAL_AVG_XXXXXX

Risk Manager Earnings at Risk result table, for summary results by date bucket, averaged across all rate paths.

Y

Table Name Description Table Detail

Page 73: fe115trm

Table List

High-Level Design 1-35

Oracle Proprietary, Confidential Information - Use Restricted by Contract

EAR_TOTAL_DTL_XXXXXX

Risk Manager Earnings at Risk result table, for summary results by date bucket, for all rate paths.

Y

HH Stores information on households. Y

IND Stores information on non-business customers. Y

Instrument Tables Client data tables storing information on financial accounts.

Y

LEDGER_STAT The LEDGER_STAT table is the data source for summary financial and statistical data.

Y

OFSA_ACCRUAL_BASIS_CD

Stores the list of valid Accrual Basis Codes. N

OFSA_ACCRUAL_BASIS_MLS

Stores the translatable names and descriptions for Accrual Basis Codes.

N

OFSA_ACTION_ASSIGNMENT

Stores OFSA application task privilege assignments for users, User Groups and Security Profiles.

Y

OFSA_ACTIONS Stores the list of assignable actions for OFSA applications.

Y

OFSA_APP_ASSIGNMENT

Stores OFSA application login privileges for users, Users Groups and Security Profiles.

Y

OFSA_APPLICATION_CONSTRUCTS

Provides the list of valid OFSA application objects, such as OFSA Ids, for each OFSA application.

Y

OFSA_APPLICATIONS Provides the list of OFSA Applications. Y

OFSA_AUDIT_TRAIL Records the operational elements used by an Allocation ID that has been executed.

Y

OFSA_CATALOG_OF_IDS Identifies each OFSA ID, including Rate IDs and Tree Rollup IDs.

Y

OFSA_CATALOG_OF_LEAVES

Identifies each Leaf Column, including user-defined leaves, for the database.

Y

OFSA_COL_PROPERTY_REQUIREMENTS

Designates the required Column Property assignments for Portfolio and FDM Reserved column names.

Y

OFSA_COLLATERAL_CD Provides the list of codes identifying types of items used for collateral.

N

Table Name Description Table Detail

Page 74: fe115trm

Table List

1-36 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_COLLATERAL_MLS

Provides the translatable names and descriptions for Collateral Code values.

N

OFSA_COLLATERAL_STATUS

Provides the list of status codes for Collateral. Status codes identify the current state of the collateral, such as ’Active’, or ’Auctioned’.

N

OFSA_COLLATERAL_STATUS_MLS

Provides the translatable names and descriptions for Collateral Status Code values.

N

OFSA_COLLATERAL_SUB_TYPE_CD

Provides the list of codes used to further categorize a collateral object beyond the initial Collateral Code identification.

N

OFSA_COLLATERAL_SUB_TYPE_MLS

Provides the translatable names and descriptions for Collateral Sub Type Code values.

N

OFSA_COLLATRL_DISCHRG_TYPE_CD

Provides the list of codes for identifying how a collateral object was disposed.

N

OFSA_COLLATRL_DISCHRG_TYPE_MLS

Provides the translatable names and descriptions for Collateral Discharge Type Code values.

N

OFSA_COLUMN_PROPERTIES

Stores column characteristic assignment for columns registered for the FDM database.

Y

OFSA_COLUMN_PROPERTY_CD

Provides the list of properties that can be assigned to columns.

Y

OFSA_COLUMN_REQUIREMENTS

Provides the required field and data type values for column names reserved for FDM.

Y

OFSA_COLUMN_REQUIREMENTS_MLS

Provides translatable names and descriptions for Portfolio and FDM Reserved columns.

Y

OFSA_CONSOLIDATED_RESULT_MASTER

Holds current position summary and market values for Oracle Risk Manager processing results consolidated to a single currency.

Y

OFSA_CONSTRUCT_ACTIONS

Provides the list of valid combinations of OFSA Constructs (such as OFSA IDs) and Actions. These combinations are termed ’functions’ as they represent OFSA Application operational tasks.

Y

OFSA_CONSTRUCTS Provides the list of valid OFSA application objects, such as OFSA IDs.

Y

Table Name Description Table Detail

Page 75: fe115trm

Table List

High-Level Design 1-37

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_CURRENCIES Stores currency codes and information about their usage within the FDM database.

Y

OFSA_CURRENCY_MLS Stores translatable display names for Currency Codes.

Y

OFSA_CURRENCY_STATUS_CD

Stores the list of codes that identify a Currency state.

N

OFSA_CURRENCY_STATUS_MLS

Stores translatable names for Currency Status Codes.

N

OFSA_DATA_IDENTITY Records information about processes that have performed data manipulation functions on the database.

Y

OFSA_DATA_TYPE_DSC List of valid FDM Data Types. Y

OFSA_DB_INFO “Identifies the FDM Schema Owner for the database, as well as additional global parameters.”

Y

OFSA_DB_OBJ_PRIV_ASSIGNMENT

Stores database object privileges assigned from FDM Administration.

Y

OFSA_DB_SYS_PRIV_ASSIGNMENT

Stores database system privileges assigned from FDM Administration.

Y

OFSA_DESCRIPTION_TABLES

Stores the mapping of Code columns to the objects that provide translatable names and descriptions.

Y

OFSA_DETAIL_ELEM_B Stores detail information for financial elements. Y

OFSA_DETAIL_ELEM_MLS

Stores the translatable display names for financial elements.

Y

OFSA_DETAIL_GL_ACCOUNT_ID

Specifies the GL_ACCOUNT_ID to Instrument table name relationship. Used for running reconciliation reports between LEDGER_STAT and Instrument detail account data.

Y

OFSA_DETAIL_LEAVES Stores detail information for Common Chart of Accounts (common_coa_ids).

Y

OFSA_DETAIL_ORG_UNIT

Stores detail information for organizational units.

Y

OFSA_DETAIL_OTHER_COA

Stores detail information for the General Ledger Account leaf (gl_account_id) and user-defined leaves.

Y

Table Name Description Table Detail

Page 76: fe115trm

Table List

1-38 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_DYN_TAB_CLASS_PRIV_ASSIGN

Stores dynamic table classification privileges assigned from FDM Administration.

Y

OFSA_DYN_TABLE_PRIV_ASSIGN

Stores dynamic object privileges (table or view) assign from FDM Administration.

Y

OFSA_EAR_LEAF_AVG Template table for Risk Manager Earnings at Risk Product Leaf results averaged across all rate paths.

Y

OFSA_EAR_LEAF_DTL Template table for Risk Manager Earnings at Risk Product Leaf results for each rate path.

Y

OFSA_EAR_TOTAL_AVG Template table for Risk Manager Earnings at Risk summary results by date bucket, averaged across all rate paths.

Y

OFSA_EAR_TOTAL_DTL Template table for Risk Manager Earnings at Risk summary results by date bucket, for all rate paths.

Y

OFSA_ESTIMATION_SMOOTHING_CD

Not currently used. Provides a list of Estimation Smoothing Codes for term structure parameters estimation.

N

OFSA_ESTIMATION_SMOOTHING_MLS

Not currently used. Provides translatable names and descriptions for Estimation Smoothing Code values.

N

OFSA_EXCHANGE_RATE_HIST

Stores standard (floating) exchange rates history.

Y

OFSA_EXCHANGE_RATE_STATUS_CD

Provides codes for identifying the validity of an Exchange Rate.

N

OFSA_EXCHANGE_RATE_STATUS_MLS

Provides translatable names and descriptions for Exchange Rate Status code values.

N

OFSA_EXCHANGE_RATES_AUDIT

Exchange rate audit table for Risk Manager Scenario Based IDs.

Y

OFSA_EXCHNG_RATE_CONV_FORMULA

Contains the list of currencies that make up the conversion for triangulation, as well as a flag indicating if a direct or inverse rate is used.

Y

OFSA_EXCHNG_RATE_CONV_TYPE_CD

Provides a list of Exchange Rate Conversion Type Codes.

N

OFSA_EXCHNG_RATE_CONV_TYPE_MLS

Provides translatable names and descriptions for Exchange Rate Conversion Type Code values.

N

Table Name Description Table Detail

Page 77: fe115trm

Table List

High-Level Design 1-39

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_EXCHNG_RATE_DIRECT_ACCESS

Stores exchange from rates of all active currencies to reporting currencies at the time of the exchange rate validation.

Y

OFSA_FISCAL_YEAR_INFO

Stores settings designating how the fiscal year is determined for the database.

Y

OFSA_FIXED_CURRENCIES

Stores exchange rates for currencies that are in fixed relationships with each other for a given period of time.

Y

OFSA_GUARANTOR_RELATION_CD

Provides a list of codes for identifying the relationship between the account holder and the account guarantor.

N

OFSA_GUARANTOR_RELATION_MLS

Provides translatable names and descriptions for Guarantor Relation Code values.

N

OFSA_ID_FOLDER_ACCESS

Designates the ID Folders assigned to recipients (Users or User Groups). This relationship controls user access to IDs.

Y

OFSA_ID_FOLDERS Identifies Folders used to group OFSA IDs. Y

OFSA_IDT_CONFIGURE Stores configuration information. Y

OFSA_IDT_RESULT_HEADER

Reference table that stores the basic set of assumptions that make up an Oracle Risk Manager Process ID, as read from the definition of the ID during processing.

Y

OFSA_IDT_ROLLUP Stores information about the structure of user-defined leaf hierarchies (Tree Rollups).

Y

OFSA_IDT_SUBTOTAL Stores data for Subtotal IDs. Y

OFSA_IDT_VIEW_FILTER Stores data for Tree Filter IDs. Y

OFSA_INDEX_STORAGE_DEFAULTS

Enables the DBA to specify physical storage default values for indexes created by the Transformation ID on transformation output tables.

Y

OFSA_INSTRUMENT_ACCOUNT_CUST

Stores the relationships of accounts in the Instrument tables to Customers in the CUST table.

Y

OFSA_INSTRUMENT_TYPE_CD

Provides codes to identify financial instrument categories.

N

Table Name Description Table Detail

Page 78: fe115trm

Table List

1-40 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_INSTRUMENT_TYPE_MLS

Provides translatable names and descriptions for Instrument Type Code values.

N

OFSA_INSURANCE_TYPE_CD

Provides codes to identify the types of insurance of collateral.

N

OFSA_INSURANCE_TYPE_MLS

Provides translatable names and descriptions for Insurance Type Code values.

N

OFSA_INTEREST_RATES_AUDIT

Interest rate audit information for Risk Manager Scenario based IDs and Transfer Pricing processes. Also stores Risk Manager audit information for Monte Carlo rate paths generated when the ’Write One Month Rates’ flag is checked.

Y

OFSA_IRC_RATE_HIST Stores historical interest rates for each Interest Rate Code.

Y

OFSA_IRC_RATE_TERMS Stores term structures for each Interest Rate Code.

Y

OFSA_IRC_TS_PARAM_HIST

Stores historical term structure parameters for each Interest Rate Code.

Y

OFSA_IRCS Stores Interest Rate Code definition and attributes.

Y

OFSA_JOBS_RUN Provides a record of OFSA processes run in the database. Identifies OFSA process for the purposes of logging messages to OFSA_MESSAGE_LOG.

Y

OFSA_LEAF_DESC Designates individual entities as leaf values (Organizational, Product, General Ledger and so forth) and provides a description for each.

Y

OFSA_LEDGER_STAT_INSTRUMENT

Pseudo Instrument table for storing Off Balance Sheet and other LEDGER_STAT entries for which there is no equivalent Instrument detail account data. The OFSA_LEDGER_STAT_INSTRUMENT table provides a mechanism for Transfer Pricing such data.

Y

OFSA_LEDGER_STAT_RECON

Table for storing plug records required to reconcile LEDGER_STAT data with Instrument account detail data.

Y

OFSA_LEVEL_DESC Stores information about hierarchy levels used in Tree Rollup IDs.

Y

Table Name Description Table Detail

Page 79: fe115trm

Table List

High-Level Design 1-41

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_MESSAGE_LOG Stores messages generated during the execution of OFSA processing.

Y

OFSA_MESSAGES_B Provides the list of messages available for OFSA processing.

N

OFSA_MESSAGES_MLS Provides translatable names and descriptions for Message Code values.

N

OFSA_MLS Identifies languages available for use with FDM.

Y

OFSA_MSG_SEVERITY_CD

Provides list of severity codes for OFSA processing messages.

N

OFSA_MSG_SEVERITY_MLS

Provides translatable names and descriptions from Message Severity Code values.

N

OFSA_NODE_DESC Stores information about nodes created in Tree Rollup IDs.

Y

OFSA_PRIVILEGE_RECIPIENTS

Contains a record for each User, User Group, Security Profile or Role registered for FDM.

Y

OFSA_PROCESS_CASH_FLOWS

Stores audit information of individual cash flows processed by either Oracle Risk Manager or Oracle Transfer Pricing.

Y

OFSA_PROCESS_ERRORS Stores the errors generated during the execution of OFSA processes.

Y

OFSA_PROCESSES Identifies types of OFSA processes for the purpose of logging error messages.

Y

OFSA_PROPERTY_COLUMNS

Identifies the column names required for Table Classifications.

Y

OFSA_PROPERTY_STP Identifies stored procedures that FDM Administration executes to validate that a table may be assigned to a Table Classification.

Y

OFSA_RATE_DATA_SOURCE_CD

Provides a list of codes describing the source for exchange rates, interest rates and term structure parameters.

N

OFSA_RECIPIENT_TYPE_DSC

Identifies and describes each of the recipient categories - User, User Group, Security Profile or Role.”

N

OFSA_REQUEST_QUEUE Stores server processing job requests. Y

Table Name Description Table Detail

Page 80: fe115trm

Table List

1-42 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_RESULT_BUCKET Stores bucket start and end dates for each of the cash flow and dynamic modeling buckets used in a Risk Manager process.

Y

OFSA_RESULT_MASTER Holds current position summary and market values for Oracle Risk Manager processing results.

Y

OFSA_RESULT_QUEUE Stores process messages for OFSA server processing jobs. These messages are posted by OFSA Request Query during processing.

Y

OFSA_RESULT_SCENARIO

Stores information on the scenarios used by an Oracle Risk Manager Process ID during processing.

Y

OFSA_RESULT_TYPE_DSC

Code table that provides descriptions of the types of results that can be stored in Oracle Risk Manager Results tables.

N

OFSA_ROLE_ASSIGNMENT

Stores assignments of roles to Users and User Groups.

Y

OFSA_ROLES Identifies roles registered for the FDM database. Y

OFSA_SEC_PROFILE_ASSIGNMENT

Stores the member assignments of Users and User Groups to Security Profiles.

Y

OFSA_SECURITY_PROFILES

Security Profiles are collections of application and function privileges for the OFSA applications.

Y

OFSA_TAB_COLUMNS Analogous to the Oracle RDBMS view ALL_TAB_COLUMNS. Each entry designates a column in a table or view that has been registered for use with the FDM metadata schema.

Y

OFSA_TAB_COLUMNS_MLS

Stores translatable names and descriptions for registered columns.

Y

OFSA_TABLE_CLASS_ASSIGNMENT

Stores assignments of Table Classifications to FDM registered tables.

Y

OFSA_TABLE_CLASS_PROPERTIES

Table Classifications are consist of one or more Table Properties. OFSA_TABLE_CLASS_PROPERTIES stores the Table Properties that are associated together to build each Table Classification.

Y

Table Name Description Table Detail

Page 81: fe115trm

Table List

High-Level Design 1-43

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_TABLE_CLASSIFICATION

Identifies how tables can be used within the OFSA applications. Each Table Classification represents a purpose or use.

Y

OFSA_TABLE_CLASSIFICATION_MLS

Stores translatable names and descriptions for Table Classifications.

Y

OFSA_TABLE_PROPERTIES

Table Properties define groups of characteristics or requirements of OFSA tables. These groups of characteristics are combined to build Table Classifications.

Y

OFSA_TABLE_STORAGE_DEFAULTS

Enables the DBA to specify physical storage default values for output tables created by the Transformation ID.

Y

OFSA_TABLE_TRACKING

Correlates a Transformation output table with its source table and stores other information about the transformation. This table is also used to prevent concurrent transformations from attempting to create or write to the output table.

Y

OFSA_TABLES FDM Metadata catalog identifying all tables and views registered for FDM.

Y

OFSA_TABLES_MLS FDM Metadata catalog storing translatable names and descriptions for tables and views registered for FDM

Y

OFSA_TEMP_OBJECTS Stores information about temporary objects created by OFSA processing.

Y

OFSA_TM_STOCH_MKT_VAL

Stores market value data per product leaf generated in a Oracle Risk Manager stochastic process.

Y

OFSA_TM_STOCH_RATES

Stores audit trail information of Oracle Risk Manager Monte Carlo rate paths.

Y

OFSA_TM_STOCH_TOT_VAR

Stores the rolled up value at risk (value at risk at bank level) generated by an Oracle Risk Manager stochastic process.

Y

OFSA_TM_STOCH_VAR Stores the probability distribution for value at risk (VAR) for each leaf_node/VAR term generated by the Oracle Risk Manager stochastic process.

Y

OFSA_TRANSFORM_LS_TEMPLATE

Template table for Ledger Stat transformation processing.

Y

Table Name Description Table Detail

Page 82: fe115trm

Table List

1-44 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_TRANSFORM_RMC_TEMPLATE

Template table for Risk Manager Cash flow transformation processing.

Y

OFSA_TRANSFORM_RMG_TEMPLATE

Template table for Risk Manager GAP transformation processing.

Y

OFSA_TRANSFORM_ROLLUP_TEMPLATE

Template table for Tree Rollup (Hierarchy) transformation processing.

Y

OFSA_USER_GROUP_ASSIGNMENT

Stores the member assignments for User Groups.

Y

OFSA_USER_GROUPS Identifies groups of users for FDM security management.

Y

OFSA_USERS Identifies users registered for the FDM database.

Y

RELATE Defines the relationship between customers and Services accounts.

Y

RES_DTL_XXXXXX Store detail cash flow and GAP results generated from Risk Manager processing.

Y

SERV Identifies the Services tables available in the FDM database.

Y

Services Tables Client data tables storing detail information on financial accounts, such as credit cards, consumer loan, and so on.

Y

Transaction Tables Client data tables storing transaction information for financial accounts.

Y

Table Name Description Table Detail

Page 83: fe115trm

Detail Design 2-1

Oracle Proprietary, Confidential Information - Use Restricted by Contract

2Detail Design

This chapter presents detailed information about the underlying database structure of the Financial Data Manager (FDM) database. The FDM database serves as the foundation for the Oracle Financial Services Applications (OFSA) product suite. This chapter provides a thorough explanation of how the tables included in this chapter function, what they contain and how they are used within the FDM database.

Organizationally, the chapter presents the FDM database tables in alphabetical order and includes key field and column definitions and system codes.

For each table the following information is provided, in this order:

■ Brief description of the table, including special uses and functions

■ Columns

■ Indexes

■ Sequences

■ Column code values

Table ComponentsThis section discusses each of the four components of the tables presented in this chapter.

Columns This sub-section provides important characteristics for each column in a table or view. These characteristics include whether or not FDM requires a value for this column and the data type of the column. A brief description of how the column is used is also provided.

Page 84: fe115trm

FDM Database Tables

2-2 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Any unused columns are also identified using the following legend:

IndexesIndexes that are provided for the table by the database ’Upgrade’ process or installation routine are listed in this section.

SequencesIf any column of the table uses a sequence to generate unique integer values, the name of the corresponding sequence generator and the name of the column storing the unique integer is listed.

Column Code ValuesColumn code values and descriptions are listed in this section for all columns defined as ’Code’.

FDM Database TablesThe tables included in this chapter consist of tables that can help you understand the FDM database structure. These tables include customizable instrument and account tables, as well as tables for OFSA process and ID tables that cannot be customized.

Not currently used FDM does not use this column, although the column could be used in a future release.

No longer used FDM no longer uses this column. In subsequent versions of FDM, this column will be removed.

Note: The inclusion of a table in this chapter does not mean that the table can be customized. Rather, such tables have been included because understanding how the information is stored in these tables can be useful for understanding an OFSA implementation.

Note: The inclusion of a table within the Detail Design chapter does not mean that it can be customized. Only Instrument or Account tables can be customized.

Page 85: fe115trm

FDM Database Tables

Detail Design 2-3

Oracle Proprietary, Confidential Information - Use Restricted by Contract

ACCOUNT_COLLATERALThe ACCOUNT_COLLATERAL table links collateral objects to individual financial accounts. The table provides for linking of collateral to accounts through any of the following objects:

■ ACCOUNT (via the acct_no and serv fields)

■ Services Tables (via the acct_no and serv fields)

■ Instrument Tables (via the id_number and instrument_type_cd fields)

For each collateral/account link, other information about the relationship is also provided in the ACCOUNT_COLLATERAL table, such as the amount secured by the relationship and the collateral status.

The FDM database installation does not provide a default unique index for the ACCOUNT_COLLATERAL table. Rather, it provides 2 default, non-unique indexes. Modify one of these indexes to be unique to match your implementation of the collateral relationship with financial accounts. If you use Instrument Tables to store account information, modify the ACCOUNT_COLLATERAL_01 index on (ID_NUMBER, COLLATERAL_NUMBER and INSTRUMENT_TYPE_CD) to be unique. If you use the Services Tables to store account information, modify the ACCOUNT_COLLATERAL_02 index (ACCT_NO, COLLATERAL_NUMBER and SERV) to be unique.

Columns

Column Name Null? Type Description

COLLATERAL_NUMBER

NOT NULL

NUMBER(25) Number uniquely identifying the collateral object by which the designated account is secured. Links to the COLLATERAL table.

ID_NUMBER NUMBER(25) In conjunction with the INSTRUMENT_TYPE_CD field, identifies the account being secured by the collateral. If this is null, then the account relationship is provided by the ACCT_NO and SERV fields described below.

INSTRUMENT_TYPE_CD

NUMBER(5) Identifies the type of instrument for the secured account. Instrument Types are retrievable from OFSA_INSTRUMENT_TYPE_DSC. If this is null, then the account relationship is provided by the ACCT_NO and SERV fields described below.

Page 86: fe115trm

FDM Database Tables

2-4 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

ACCT_NO VARCHAR2(30) In conjunction with the SERV field, identifies the account being secured by the collateral. If this is null, then the account relationship is provided by the ID_NUMBER and INSTRUMENT_TYPE_CD fields described below.

SERV VARCHAR2(4) Assigned code that uniquely identifies each of the 18 Services tables. Refer to the SERV table for information about acceptable values for this column. If this is null, then the account relationship is provided by the ID_NUMBER and INSTRUMENT_TYPE_CD fields described below.

ISO_CURRENCY_CD NOT NULL

VARCHAR2(3) Identifies the ISO Currency Code in which the secured collateral amount is held. Refer to the OFSA_CURRENCIES_V view for a list of acceptable currency codes.

CONTRACT_DATE NOT NULL

DATE Identifies the date upon which the collateral amount was secured for the designated account.

ACCT_COLLATERAL_PMT_PRIORITY

NOT NULL

NUMBER(10) Identifies the order in which the collateral is used to satisfy a default account.

COLLATERAL_STATUS_CD

NOT NULL

NUMBER(5) Designates the current status of the Collateral amount. Refer to OFSA_COLLATERAL_DSC for a list of Collateral Status values.

COLLATERAL_STATUS_DATE

NOT NULL

DATE Designates the date for which the Collateral Status is applicable.

AMOUNT_SECURED NOT NULL

NUMBER(14,2) Specifies a monetary amount secured by the collateral. Because a single collateral object can be used to secure multiple accounts, the amount secured is not always equal to the market value of the collateral.

DISCHARGE_TYPE_CD NUMBER(5) Designates how the collateral was discharged. If this column is null, then the collateral relationship has not yet been discharged. Refer to OFSA_COLLATRL_DISCHRG_TYPE_DSC for a list of valid Discharge Type Codes.

DISCHARGE_DATE DATE Designates the date that the collateral was discharged.

Column Name Null? Type Description

Page 87: fe115trm

FDM Database Tables

Detail Design 2-5

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Column Code Values

Collateral_Status_CdCOLLATERAL_STATUS_CD values are defined in OFSA_COLLATERAL_STATUS_CD and OFSA_COLLATERAL_STATUS_MLS. Use the OFSA_COLLETERAL_STATUS_DSC view to retrieve valid codes and descriptions for this column.

Index_Name Index Type

Index Column Sequence Column_Name

ACCOUNT_COLLATERAL_01 Non-unique 1 ID_NUMBER

ACCOUNT_COLLATERAL_01 Non-unique 2 COLLATERAL_NUMBER

ACCOUNT_COLLATERAL_01 Non-unique 3 INSTRUMENT_TYPE_CD

ACCOUNT_COLLATERAL_02 Non-unique 1 ACCT_NO

ACCOUNT_COLLATERAL_02 Non-unique 2 COLLATERAL_NUMBER

ACCOUNT_COLLATERAL_02 Non-unique 3 SERV

Code Description

0 Active

1 Discharge

2 Auctioned

Page 88: fe115trm

FDM Database Tables

2-6 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Discharge_Type_CdDISCHARGE_TYPE_CD values are defined in OFSA_COLLATRL_DISCHRG_TYPE_CD and OFSA_COLLATRL_DISCHRG_TYPE_MLS. Use the OFSA_COLLATRL_DISCHRG_TYPE_DSC view to retrieve valid codes and descriptions for this column.

Iso_Currency_CdISO_CURRENCY_CD values are defined in OFSA_CURRENCIES and OFSA_CURRENCY_MLS. Use the OFSA_CURRENCIES_V view to retrieve valid codes and descriptions for this column.

Refer to the OFSA_CURRENCIES table in this reference manual for more information on valid ISO_CURRENCY_CD values.

Instrument_Type_CdINSTRUMENT_TYPE_CD values are defined in OFSA_INSTRUMENT_TYPE_CD and OFSA_INSTRUMENT_TYPE_MLS. Use the OFSA_INSTRUMENT_TYPE_DSC view to retrieve valid codes and descriptions for this column.

Code Description

0 Redeemed

1 Freed

2 Released

3 Returned

Code Description

110 Commercial Loan

120 Consumer Loan

130 Mortgages

140 Investments

141 MBS

150 Credit Card

210 Deposits

220 Wholesale Funding

Page 89: fe115trm

FDM Database Tables

Detail Design 2-7

Oracle Proprietary, Confidential Information - Use Restricted by Contract

ServThe codes for the SERV column of the ACCOUNT_COLLATERAL table are defined in the SERV table. For the definitions of these codes, refer to the entry for the SERV table in this chapter.

Page 90: fe115trm

FDM Database Tables

2-8 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

ACCOUNT_GUARANTOR_RELATIONThe ACCOUNT_GUARANTOR_RELATION identifies the individual customers acting as the sponsors for financial accounts. Each financial account can have one or more individuals acting as guarantors. The relationship of the guarantor to the account is maintained identically to the ACCOUNT_COLLATERAL table. It is maintained either through the ID_NUMBER and INSTRUMENT_TYPE_CD fields to Instrument tables, or through the ACCT_NO and SERV fields to the Services tables.

Columns

Column Name Null? Type Description

GUARANTOR_NUMBER

NOT NULL

NUMBER(25) Number uniquely identifying the guarantor of the account. Links to the CUST table.

ID_NUMBER NUMBER(25) In conjunction with the INSTRUMENT_TYPE_CD field, identifies the account sponsored by the guarantor. If this is null, then the account relationship is provided by the ACCT_NO and SERV fields described below.

INSTRUMENT_TYPE_CD

NUMBER(5) Identifies the type of instrument for the account sponsored by the guarantor. Instrument Types are retrievable from OFSA_INSTRUMENT_TYPE_DSC. If this is null, then the account relationship is provided by the ACCT_NO and SERV fields described below.

ACCT_NO VARCHAR2(30) In conjunction with the SERV field, identifies the account sponsored by the guarantor. If this is null, then the account relationship is provided by the ID_NUMBER and INSTRUMENT_TYPE_CD fields described below.

SERV VARCHAR2(4) Assigned code that uniquely identifies each of the 18 Services tables. Refer to the SERV table for information about acceptable values for this column. If this is null, then the account sponsored by the guarantor is provided by the ID_NUMBER and INSTRUMENT_TYPE_CD fields described below.

RELATIONSHIP_CD NOT NULL

NUMBER(5) Designates the relationship of the guarantor to the account holder. Valid Relationship Codes are located in OFSA_GUARANTOR_RELATION_DSC.

Page 91: fe115trm

FDM Database Tables

Detail Design 2-9

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Column Code Values

Instrument_Type_CdINSTRUMENT_TYPE_CD values are defined in OFSA_INSTRUMENT_TYPE_CD and OFSA_INSTRUMENT_TYPE_MLS. Use the OFSA_INSTRUMENT_TYPE_DSC view to retrieve valid codes and descriptions for this column.

Index_Name Index Type

Index Column Sequence Column_Name

ACCOUNT_GUARANTOR_01 Non-unique 1 ID_NUMBER

ACCOUNT_GUARANTOR_01 Non-unique 2 COLLATERAL_NUMBER

ACCOUNT_GUARANTOR_01 Non-unique 3 INSTRUMENT_TYPE_CD

ACCOUNT_GUARANTOR_02 Non-unique 1 ACCT_NO

ACCOUNT_GUARANTOR_02 Non-unique 2 COLLATERAL_NUMBER

ACCOUNT_GUARANTOR_02 Non-unique 3 SERV

Code Description

110 Commercial Loan

120 Consumer Loan

130 Mortgages

140 Investments

141 MBS

150 Credit Card

210 Deposits

220 Wholesale Funding

Page 92: fe115trm

FDM Database Tables

2-10 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Relationship_CdRELATIONSHIP_CD values are defined in OFSA_GUARANTOR_RELATION_CD and OFSA_GUARANTOR_RELATION_MLS. Use the OFSA_GUARANTOR_RELATION_DSC view to retrieve valid codes and descriptions for this column.

ServThe codes for the SERV column of the ACCOUNT_COLLATERAL table are defined in the SERV table. For the definitions of these codes, refer to the entry for the SERV table in this chapter.

Code Description

0 Relation

1 Non-Relation

Page 93: fe115trm

FDM Database Tables

Detail Design 2-11

Oracle Proprietary, Confidential Information - Use Restricted by Contract

ACCTThe ACCT table contains information common to accounts of all service types. Account attributes specific to the particular service for each account are held in the corresponding service table.

Accounts are linked to Collateral by way of the ACCOUNT_COLLATERAL table.

ColumnsFor a detailed description of the columns in this table, refer to the Oracle Financial Services Data Dictionary.

Page 94: fe115trm

FDM Database Tables

2-12 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Column Code Values

Serv_typeThe codes for the serv_type column of the ACCT table are defined in the SERV table. For the definitions of these codes, refer to the entry for the SERV table in this chapter.

Index_Name Index Type

Index Column Sequence Column_Name

ACCT Unique 1 IDENTITY_CODE

ACCT Unique 2 ID_NUMBER

ACCT_KEY Unique 1 ACCT_ID

ACCT_2 Non-unique 1 ID_NUMBER

ACCT_4 Non-unique 1 COMMON_COA_ID

ACCT_5 Non-unique 1 ORG_UNIT_ID

ACCT_6 Non-unique 1 GL_ACCOUNT_ID

ACCT_ACCT_NO Non-unique 1 ACCT_NO

ACCT_BAL_AVE Non-unique 1 BAL_AVE

ACCT_BAL_CURR Non-unique 1 BAL_CURR

ACCT_CENSUS Non-unique 1 CENSUS_BLOCK

ACCT_CLOSE_DT Non-unique 1 CLOSE_DT

ACCT_CUS_NO Non-unique 1 CUS_NO

ACCT_OPEN_DT Non-unique 1 OPEN_DT

ACCT_SERV_PROD_SUBPROD Non-unique 1 SERV

ACCT_SERV_PROD_SUBPROD Non-unique 2 PROD

ACCT_SERV_PROD_SUBPROD Non-unique 3 SUBPROD

Page 95: fe115trm

FDM Database Tables

Detail Design 2-13

Oracle Proprietary, Confidential Information - Use Restricted by Contract

BUSThe BUS table contains information specific to business customers and prospects. Attributes common to all customers are held in the CUST table.

ColumnsFor a detailed description of the columns in this table, refer to the Oracle Financial Services Data Dictionary.

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Index_Name Index TypeIndex Column Sequence Column_Name

BUS Unique 1 IDENTITY_CODE

BUS Unique 2 ID_NUMBER

BUS_2 Unique 1 ID_NUMBER

BUS_KEY Unique 1 CUS_NO

BUS_4 Non-Unique 1 COMMON_COA_ID

BUS_5 Non-Unique 1 ORG_UNIT_ID

BUS_6 Non-Unique 1 GL_ACCOUNT_ID

Page 96: fe115trm

FDM Database Tables

2-14 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

COLLATERAL_BOATSThe COLLATERAL_BOATS table provides detail information about water craft used as collateral for a financial account. Such objects are identified in the COLLATERAL table with an appropriate COLLATERAL_TYPE_CD, such as ’Vehicles - Boats’.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

COLLATERAL_NUMBER

NOT NULL

NUMBER(25) Number uniquely identifying the collateral object by which the designated account is secured. Links to the COLLATERAL table.

REGISTRATION_NUMBER

NOT NULL

VARCHAR2(30) Vehicle Registration number for the boat.

BOAT_NAME NOT NULL

VARCHAR2(50) Name of the boat.

BOAT_HORSE_POWER NUMBER(10) Horsepower for the boat.

BOAT_LENGTH NUMBER(10) Length of the boat.

BOAT_TONNAGE NOT NULL

NUMBER(10) Tonnage of the boat.

Index_Name Index Type

Index Column Sequence Column_Name

COLLATERAL_BOATS_PK Unique 1 COLLATERAL_NUMBER

Page 97: fe115trm

FDM Database Tables

Detail Design 2-15

Oracle Proprietary, Confidential Information - Use Restricted by Contract

COLLATERALThe COLLATERAL table identifies items used as collateral to secure loans or other financial accounts. This table links to financial accounts through the ACCOUNT_COLLATERAL table.

Page 98: fe115trm

FDM Database Tables

2-16 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Columns

Indexes

Column Name Null? Type Description

COLLATERAL_NUMBER

NOT NULL

NUMBER(25) Number uniquely identifying the collateral object by which the designated account is secured. Links to the COLLATERAL table.

COLLATERAL_TYPE_CD

NOT NULL

NUMBER(5) Identifies the type of item or thing used as collateral. Collateral Types are listed in OFSA_COLLATERAL_DSC.

ISO_CURRENCY_CD NOT NULL

VARCHAR2(3) Identifies the ISO Currency Code in which the secured collateral amount is held. Refer to the OFSA_CURRENCIES_V view for a list of acceptable currency codes.

COLLATERAL_AMOUNT_PLEDGED

NOT NULL

NUMBER(14,2) Identifies the monetary amount of the collateral used to secure the designated account.

COLLATERAL_SUB_TYPE_CD

NUMBER(5) Identifies the order in which the collateral is used to satisfy a default account.

COLLATERAL_ASSESSOR_NUMBER

VARCHAR2(30) Identifies the assessor which estimated the value of the collateral.

DATE_ASSESSED DATE Designates the date that the collateral was assessed.

REMARKS VARCHAR2(255) This column is for free form comments regarding the collateral.

MARKET_VALUE NUMBER(14,2) Designates the Market Value of the collateral for the specified ISO Currency Code.

FORCED_SALE_VALUE NUMBER(14,2) In the event that the collateral is sold, this column designates the sale value.

NUMBER_OF_INSTITUTIONS

NUMBER(4) Designates the number of institutions with a position or interest in the collateral.

Index_Name Index Type

Index Column Sequence Column_Name

COLLATERAL_PK Unique 1 COLLATERAL_NUMBER

Page 99: fe115trm

FDM Database Tables

Detail Design 2-17

Oracle Proprietary, Confidential Information - Use Restricted by Contract

SequencesNot applicable.

Column Code Values

Iso_Currency_CdISO_CURRENCY_CD values are defined in OFSA_CURRENCIES and OFSA_CURRENCY_MLS. Use the OFSA_CURRENCIES_V view to retrieve valid codes and descriptions for this column.

Refer to the OFSA_CURRENCIES table in this reference manual for more information on valid ISO_CURRENCY_CD values.

Collateral_Sub_Type_CdCOLLATERAL_SUB_TYPE_CD values are defined in OFSA_COLLATERAL_SUB_TYPE_CD and OFSA_COLLATERAL_SUB_TYPE_MLS. Use the OFSA_COLLETERAL_SUB_TYPE_DSC view to retrieve valid codes and descriptions for this column.

Collateral_Type_CdCOLLATERAL_TYPE_CD values are defined in OFSA_COLLATERAL_CD and OFSA_COLLATERAL_MLS. Use the OFSA_COLLETERAL_DSC view to retrieve valid codes and descriptions for this column.

Code Description

0 None

1 One Title Deed

2 Collective Title Deed

Code Description

1 FHA/VA

2 Residential Fixed

3 Residential ARM

4 Multifamily

5 Commercial

Page 100: fe115trm

FDM Database Tables

2-18 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

6 Second TDs

10 Unsecured

20 Endorsed

30 Guaranteed

31 Guaranteed - Student

32 Guaranteed - Other

40 Agency

50 Letters Of Credit

60 SBA

70 Assignments

100 Deed Residential

110 Deed Single Family

120 Deed Multifamily FHA

130 Deed Multifamily Conventional

140 Deed 1-4 Unit FHA

150 Deed 1-4 Unit VA

160 Deed 1-4 Unit Conventional

200 Deed Commercial (> 5 Unit)

210 Deed Commercial (> 5 Unit) Retail

220 Deed Commercial (> 5 Unit) Office

230 Deed Commercial (> 5 Unit) Radio/TV

240 Deed Commercial (> 5 Unit) Industry

250 Deed Commercial (> 5 Unit) Land Developm

260 Deed Commercial (> 5 Unit) Agriculture

300 Securities

310 Securities - Stock - Public

320 Securities - Stock - Private

330 Securities - Bonds - Treasury

Code Description

Page 101: fe115trm

FDM Database Tables

Detail Design 2-19

Oracle Proprietary, Confidential Information - Use Restricted by Contract

340 Securities - Bonds - Municipal

350 Securities - Bonds - Corporate

370 GNMA Securities (Formerly 07)

380 FNMA Securities (Formerly 08)

390 FHLMC Securities (Formerly 09)

400 Deposit

410 Deposit - Savings/Demand - This Institut

430 Deposit - Savings/Demand - Other Institu

440 Deposit - Certificate - This Institution

450 Deposit - Certificate - Other Institutio

500 Business Assets

510 Business Assets - Accounts Receivable

520 Business Assets - Inventory

530 Business Assets - Accounts Receivable &

540 Business Assets - Equipment

600 Vehicles

610 Vehicles - Auto/Pickups

620 Vehicles - Aircraft

630 Vehicles - Boats

640 Vehicles - RVs/Campers

650 Vehicles - Trucks/Trailers

660 Vehicles - Other

700 Agriculture

710 Agriculture - Crops

720 Agriculture - Livestock

730 Agriculture - Equipment

800 State/Municipal Collateral

810 State/Municipal Collateral - Federal Gra

Code Description

Page 102: fe115trm

FDM Database Tables

2-20 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

820 State/Municipal Collateral - Home Admini

830 State/Municipal Collateral - Leases

840 State/Municipal Collateral - Tax

850 State/Municipal Collateral - Other

999 Other

Code Description

Page 103: fe115trm

FDM Database Tables

Detail Design 2-21

Oracle Proprietary, Confidential Information - Use Restricted by Contract

COLLATERAL_ASSESSMENT_HISTORYThe COLLATERAL_ASSESSMENT_HISTORY table stores a record of how collateral value was assessed over time. While the current assessed value of a collateral object is stored in the COLLATERAL table, the COLLATERAL_ASSESSMENT_HISTORY table is a historical account of collateral valuation.

Columns

Indexes

Column Name Null? Type Description

COLLATERAL_NUMBER

NOT NULL

NUMBER(25) Number uniquely identifying the collateral being assessed. Links to the COLLATERAL table.

COLLATERAL_ASSESSOR_NUMBER

NOT NULL

VARCHAR2(30) Identifies the assessor that estimated the value of the collateral.

DATE_ASSESSED NOT NULL

DATE Designates the date that the collateral was assessed.

ISO_CURRENCY_CD NOT NULL

VARCHAR2(3) Identifies the ISO Currency Code in which the secured collateral amount is held. Refer to the OFSA_CURRENCIES_V view for a list of acceptable currency codes.

MARKET_VALUE NUMBER(14,2) Designates the Market Value of the collateral for the specified ISO Currency Code.

REMARKS VARCHAR2(255) This column is for free form comments regarding the collateral assessment.

Index_Name Index Type

Index Column Sequence Column_Name

COLLATERAL_ASSESSMENT_HISTORY_PK

Unique 1 COLLATERAL_NUMBER

COLLATERAL_ASSESSMENT_HISTORY_PK

Unique 2 COLLATERAL_ASSESSOR_NUMBER

COLLATERAL_ASSESSMENT_HISTORY_PK

Unique 3 DATE_ASSESSED

Page 104: fe115trm

FDM Database Tables

2-22 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

SequencesNot applicable.

Column Code Values

Iso_Currency_CdISO_CURRENCY_CD values are defined in OFSA_CURRENCIES and OFSA_CURRENCY_MLS. Use the OFSA_CURRENCIES_V view to retrieve valid codes and descriptions for this column.

Refer to the OFSA_CURRENCIES table in this reference manual for more information on valid ISO_CURRENCY_CD values.

Page 105: fe115trm

FDM Database Tables

Detail Design 2-23

Oracle Proprietary, Confidential Information - Use Restricted by Contract

COLLATERAL_AUCTION_DETAILSThe COLLATERAL_AUCTION_DETAILS table stores information about collateral auctions.

Columns

Indexes

Column Name Null? Type Description

COLLATERAL_NUMBER

NOT NULL

NUMBER(25) Number uniquely identifying the collateral being auctioned. Links to the COLLATERAL table.

ISO_CURRENCY_CD NOT NULL

VARCHAR2(3) Identifies the ISO Currency Code in which the auction bids are reported. Refer to the OFSA_CURRENCIES_V view for a list of acceptable currency codes.

FIRST_SALE_PRICE NUMBER(14,2) Designates the first sale monetary value of the collateral.

MIN_SALE_PRICE VARCHAR2(255) Designates the monetary value of the minimum sale price for the collateral.

LAST_BID_PRICE NUMBER(14,2) Designates the monetary value for the last bid price of the collateral.

LAST_BID_DATE DATE Designates the date of the last bid.

NEXT_AUCTION_DATE

DATE Designates the date of the next auction for the collateral.

SOLD_PRICE NUMBER(14,2) Designates the price that the collateral was sold.

SOLD_DATE DATE Designates the date on which the collateral was sold.

Index_Name Index Type

Index Column Sequence Column_Name

COLLATERAL_AUCTION_DETAILS_PK

Unique 1 COLLATERAL_NUMBER

Page 106: fe115trm

FDM Database Tables

2-24 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

SequencesNot applicable.

Column Code Values

Iso_Currency_CdISO_CURRENCY_CD values are defined in OFSA_CURRENCIES and OFSA_CURRENCY_MLS. Use the OFSA_CURRENCIES_V view to retrieve valid codes and descriptions for this column.

Refer to the OFSA_CURRENCIES table in this reference manual for more information on valid ISO_CURRENCY_CD values.

Page 107: fe115trm

FDM Database Tables

Detail Design 2-25

Oracle Proprietary, Confidential Information - Use Restricted by Contract

COLLATERAL_INSURANCE_DETAILSThe COLLATERAL_INSURANCE_DETAILS table stores insurance information for the collateral.

Columns

Indexes

Column Name Null? Type Description

COLLATERAL_NUMBER

NOT NULL

NUMBER(25) Number uniquely identifying the collateral object insured by the designated insurance policy. Links to the COLLATERAL table.

INSURANCE_TYPE_CD NUMBER(5) Identifies the type of insurance. Refer to OFSA_INSURANCE_TYPE_DSC for a list of Insurance Type Codes.

INSURANCE_COMPANY_NAME

VARCHAR2(30) Identifies the name of the company that issued the insurance policy for the collateral.

ISO_CURRENCY_CD NOT NULL

VARCHAR2(3) Identifies the ISO Currency Code in which the auction bids are reported. Refer to the OFSA_CURRENCIES_V view for a list of acceptable currency codes.

INSURANCE_POLICY_NUMBER

VARCHAR2(30) Designates the Policy number for the insurance.

INSURED_AMOUNT NUMBER(14,2) Designates the monetary value insured.

INSURED_EXPIRY_DATE

DATE Designates the date on which the insurance policy expires.

Index_Name Index Type

Index Column Sequence Column_Name

COLLATERAL_INSURANCE_DTL_PK

Unique 1 COLLATERAL_NUMBER

COLLATERAL_INSURANCE_DTL_PK

Unique 2 INSURANCE_TYPE_CD

COLLATERAL_INSURANCE_DTL_PK

Unique 3 INSURANCE_COMPANY_NAME

Page 108: fe115trm

FDM Database Tables

2-26 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

SequencesNot applicable.

Column Code Values

Insurance_Type_CdINSURANCE_TYPE_CD values are defined in OFSA_INSURANCE_TYPE_CD and OFSA_INSURANCE_TYPE_MLS. Use the OFSA_INSURANCE_TYPE_DSC view to retrieve valid codes and descriptions for this column.

Iso_Currency_CdISO_CURRENCY_CD values are defined in OFSA_CURRENCIES and OFSA_CURRENCY_MLS. Use the OFSA_CURRENCIES_V view to retrieve valid codes and descriptions for this column.

Refer to the OFSA_CURRENCIES table in this reference manual for more information on valid ISO_CURRENCY_CD values.

Page 109: fe115trm

FDM Database Tables

Detail Design 2-27

Oracle Proprietary, Confidential Information - Use Restricted by Contract

COLLATERAL_OTHER_INSTITUTIONSThe COLLATERAL_OTHER_INSTITUTIONS table identifies the institutions that have a lien or a position in the collateral.

Columns

Indexes

SequencesNot applicable.

Column Name Null? Type Description

COLLATERAL_NUMBER

NOT NULL

NUMBER(25) Number uniquely identifying the collateral object. Links to the COLLATERAL table.

INSTITUTION_NAME NOT NULL

VARCHAR2(30) Identifies the name of the company that holds the position in the collateral.

POSITION_PRIORITY NOT NULL

NUMBER(4) Designates the priority of the institution’s position in the collateral.

ISO_CURRENCY_CD VARCHAR2(3) Identifies the ISO Currency Code in position is reported. Refer to the OFSA_CURRENCIES_V view for a list of acceptable currency codes.

COLLATERAL_AMOUNT

NUMBER(14,2) Designates the monetary value of the position.

Index_Name Index Type

Index Column Sequence Column_Name

COLLATERAL_OTHER_INSTITUTIONS_PK

Unique 1 COLLATERAL_NUMBER

COLLATERAL_OTHER_INSTITUTIONS_PK

Unique 3 INSTITUTION_NAME

Page 110: fe115trm

FDM Database Tables

2-28 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Column Code Values

Iso_Currency_CdISO_CURRENCY_CD values are defined in OFSA_CURRENCIES and OFSA_CURRENCY_MLS. Use the OFSA_CURRENCIES_V view to retrieve valid codes and descriptions for this column.

Refer to the OFSA_CURRENCIES table in this reference manual for more information on valid ISO_CURRENCY_CD values.

Page 111: fe115trm

FDM Database Tables

Detail Design 2-29

Oracle Proprietary, Confidential Information - Use Restricted by Contract

COLLATERAL_OWNERSThe COLLATERAL_OWNERS table identifies the individual owners for each distinct collateral item. Detail information about the collateral owner is then stored in the CUST table, as each collateral owner is also a customer.

The collateral owner is not the same as the owner of the account secured by the collateral. The collateral owner is the individual who owns the actual collateral.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

COLLATERAL_NUMBER

NOT NULL

NUMBER(25) Number uniquely identifying the collateral object. Links to the COLLATERAL table.

OWNER_NUMBER NOT NULL

NUMBER(25) Identifies the individual who owns the collateral. Links with the CUS_NO column in the CUST table.

Index_Name Index Type

Index Column Sequence Column_Name

COLLATERAL_OWNERS_PK Unique 1 COLLATERAL_NUMBER

COLLATERAL_OWNERS_PK Unique 3 OWNER_NUMBER

Page 112: fe115trm

FDM Database Tables

2-30 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

COLLATERAL_REAL_ESTATEThe COLLATERAL_OWNERS table identifies the individual owners for each distinct collateral item. Detail information about the collateral owner is then stored in the CUST table, as each collateral owner is also a customer.

The collateral owner is not the same as the owner of the account secured by the collateral. The collateral owner is the individual who owns the actual collateral.

Columns

Column Name Null? Type Description

COLLATERAL_NUMBER

NOT NULL

NUMBER(25) Number uniquely identifying the real estate collateral. Links to the COLLATERAL table.

REAL_ESTATE_LEGAL_NUMBER

NOT NULL

VARCHAR2(30) Legal or contract number identifying the real estate.

ADRESS_LINE_1 VARCHAR2(50) First address line for the real estate.

ADDRESS_LINE_2 VARCHAR2(50) Second address line for the real estate.

TOWN VARCHAR2(50) City or Town.

POST_CODE VARCHAR2(10) Postal Code.

PROVINCE VARCHAR2(50) Province.

DISTRICT VARCHAR2(50) District.

STATE VARCHAR2(50) State.

COUNTRY VARCHAR2(50) Country.

UNIT_NO VARCHAR2(10) Unit number.

FLOOR_NO VARCHAR2(10) Floor number.

AREA NUMBER(6) Area.

Page 113: fe115trm

FDM Database Tables

Detail Design 2-31

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Column Code Values

Iso_Currency_CdISO_CURRENCY_CD values are defined in OFSA_CURRENCIES and OFSA_CURRENCY_MLS. Use the OFSA_CURRENCIES_V view to retrieve valid codes and descriptions for this column.

Refer to the OFSA_CURRENCIES table in this reference manual for more information on valid ISO_CURRENCY_CD values.

Index_Name Index Type

Index Column Sequence Column_Name

COLLATERAL_REAL_ESTATE_PK

Unique 1 COLLATERAL_NUMBER

Page 114: fe115trm

FDM Database Tables

2-32 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

COLLATERAL_SHARESThe COLLATERAL_SHARES table stores detail information regarding stock collateral.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

COLLATERAL_NUMBER

NOT NULL

NUMBER(25) Number uniquely identifying the stock collateral. Links to the COLLATERAL table.

CERTIFICATE_NUMBER

NOT NULL

VARCHAR2(30) Stock certificate number of the collateral.

ISO_CURRENCY_CD VARCHAR2(3) Identifies the ISO Currency Code in position is reported. Refer to the OFSA_CURRENCIES_V view for a list of acceptable currency codes.

NUMBER_OF_SHARES NUMBER(4) The number of stock shares.

LISTED_FLG NUMBER(1) Designates whether the stock is listed in an index.

STOCK_SYMBOL VARCHAR2(30) Stock symbol.

COMPANY_NAME VARCHAR2(50) Name of the company.

PAR_VALUE NUMBER(14,2) Monetary value of the shares.

Index_Name Index Type

Index Column Sequence Column_Name

COLLATERAL_SHARES_PK Unique 1 COLLATERAL_NUMBER

Page 115: fe115trm

FDM Database Tables

Detail Design 2-33

Oracle Proprietary, Confidential Information - Use Restricted by Contract

COLLATERAL_VEHICLESThe COLLATERAL_SHARES table stores detail information regarding automobile collateral.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

COLLATERAL_NUMBER

NOT NULL

NUMBER(25) Number uniquely identifying the automobile collateral. Links to the COLLATERAL table.

REGISTRATION_NUMBER

NOT NULL

VARCHAR2(30) Vehicle registration number.

MAKE NOT NULL

VARCHAR2(30) Identifies the car manufacturer.

MODEL NOT NULL

VARCHAR2(30) Identifies the car model.

YEAR NOT NULL

VARCHAR2(4) Designates the year that the car was manufactured.

Index_Name Index Type

Index Column Sequence Column_Name

COLLATERAL_VEHICLES_PK Unique 1 COLLATERAL_NUMBER

Page 116: fe115trm

FDM Database Tables

2-34 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

CONS_DTL_XXXXXXThese tables store detail cash flow and GAP results consolidated to the Reporting currency. These tables are created during the execution of Risk Manager Process IDs. A different table is created for each specific Risk Manager Process ID. However, if the table already exists with the correct structure, meaning that the structure is the same as that of IDT_RESULT_DETAIL, Risk Manager repopulates or appends to existing data. The XXXXXX portion of the table name is the same as the system identifier for the Process ID that generated the table. The number of CONS_DTL_ XXXXXX tables that exist in an FDM database is dependent on the number of processing IDs that have been executed in a database.

These tables are referred to as Risk Manager Consolidated Result Detail tables. Uses of Risk Manager Consolidated Result Detail tables in OFSA include:

■ Storing Risk Manager process results consolidated to the Reporting Currency.

■ Access by the Budgeting & Planning Data Movement routines to load Risk Manager data.

■ Access by Transformation ID during transformation of Risk Manager results data for FDM Reporting Data Mart

■ Access by reporting operations.

These tables are dropped automatically when the Process ID that created the table is deleted. It is recommended that IDs that are no longer in use be deleted so that their corresponding CONS_DTL_XXXXXXX tables can be dropped. Always unregister such tables from the FDM Administration application prior to manually dropping them from the FDM database.

These tables are created based on the table definition of IDT_RESULT_DETAIL.

ColumnsThe columns for the CONS_DTL_XXXXXX tables are created using the IDT_RESULT_DETAIL as a model. To see what columns are created for new CONS_DTL_XXXXXX tables, see the column definitions for IDT_RESULT_DETAIL.

IndexesThe indexes for the CONS_DTL_XXXXXX tables are created using the IDT_RESULT_TABLE as a model. To see what indexes are created for new CONS_DTL_XXXXXX tables, see the index definitions for IDT_RESULT_DETAIL.

Page 117: fe115trm

FDM Database Tables

Detail Design 2-35

Oracle Proprietary, Confidential Information - Use Restricted by Contract

SequencesNot applicable.

Column Code ValuesNot applicable.

Page 118: fe115trm

FDM Database Tables

2-36 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

CUSTThe CUST table contains information common to all types of customers and prospects. Additional information is held in the BUS table for business customers and in the IND table for non-business customers.

ColumnsFor a detailed description of the columns in this table, refer to the Oracle Financial Services Data Dictionary.

Indexes

SequencesNot applicable.

Index_Name Index TypeIndex Column Sequence Column_Name

CUST Unique 1 IDENTITY_CODE

CUST Unique 2 ID_NUMBER

CUST_2 Unique 1 ID_NUMBER

CUST_CUS_KEY Unique 1 CUS_KEY

CUST_KEY Unique 1 CUS_NO

ADDR_NO Non-unique 1 ADDR_NO

CUST_4 Non-unique 1 COMMON_COA_ID

CUST_5 Non-unique 1 ORG_UNIT_ID

CUST_6 Non-unique 1 GL_ACCOUNT_ID

CUST_CVI Non-unique 1 CVI

CUST_FRST_CONT_DT Non-unique 1 FRST_CONT_DT

CUST_HH_NO Non-unique 1 HH_NO

CUST_PROF_PCT Non-unique 1 CUS_PROF_PCT

CUST_YEARS Non-unique 1 YEARS

NAME Non-unique 1 NAME

TAXIDNO Non-unique 1 TAXIDNO

Page 119: fe115trm

FDM Database Tables

Detail Design 2-37

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Column Code Values

Cus_TypeThe cus_type column has the following values:

Code Description

B Business customer. See the BUS table entry in this chapter for additional information.

I Non-business (individual) customer. See the IND table entry in this chapter for additional information.

Page 120: fe115trm

FDM Database Tables

2-38 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

CUST_ADDRThe CUST_ADDR table contains address information for all customers and prospects.

ColumnsFor a detailed description of the columns in this table, refer to the Oracle Financial Services Data Dictionary.

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Index_Name Index TypeIndex Column Sequence Column_Name

CUST_ADDR_2 Unique 1 ID_NUMBER

CUST_ADDR_KEY Unique 1 ADDR_NO

CUST_ADDR_4 Non-unique 1 COMMON_COA_ID

CUST_ADDR_5 Non-unique 1 ORG_UNIT_ID

CUST_ADDR_6 Non-unique 1 GL_ACCOUNT_ID

CUST_ADDR_CENSUS Non-unique 1 CENSUS_ST

CUST_ADDR_CENSUS Non-unique 2 CENSUS_CNTY

CUST_ADDR_CENSUS Non-unique 3 CENSUS_TRACT

CUST_ADDR_CENSUS Non-unique 4 CENSUS_BLOCK

CUST_ADDR_CITY Non-unique 1 CITY

CUST_ADDR_ZIP Non-unique 1 ZIP

Page 121: fe115trm

FDM Database Tables

Detail Design 2-39

Oracle Proprietary, Confidential Information - Use Restricted by Contract

EAR_LEAF_AVG_XXXXXXThese tables store Product Leaf detail Earnings at Risk processing results averaged across all rate paths. These tables are created during the execution of Risk Manager “Stochastic” Process IDs. A different table is created for each specific Risk Manager Process ID with the table structure based upon the OFSA_EAR_LEAF_AVG template table. However, if the table already exists with the correct structure, meaning that the structure is the same as that of OFSA_EAR_LEAF_AVG, it repopulates or appends to existing data. The XXXXXX portion of the table name is the same as the system identifier for the Process ID that generated the table. The number of EAR_LEAF_AVG_ XXXXXX tables that exist in an FDM database is dependent on the number of Risk Manager “Stochastic” processing IDs that have been executed in a database.

These tables are dropped automatically when the Process ID that created the table is deleted. It is recommended that IDs that are no longer in use be deleted so that their corresponding EAR_LEAF_AVG_XXXXXXX tables can be dropped. Always unregister such tables from the FDM Administration application prior to manually dropping them from the FDM database.

ColumnsRisk Manager processing creates the columns for the EAR_LEAF_AVG_XXXXXX tables using the OFSA_EAR_LEAF_AVG table as a model. To see what columns are created for new EAR_LEAF_AVG_XXXXXX tables, see the column definitions for OFSA_EAR_LEAF_AVG.

IndexesRisk Manager processing creates the indexes for the EAR_LEAF_AVG_XXXXXX tables using the OFSA_EAR_LEAF_AVG table as a model. To see what indexes are created for new EAR_LEAF_AVG_XXXXXXX tables, see the index definitions for OFSA_EAR_LEAF_AVG.

SequencesNot applicable.

Column Code ValuesNot applicable.

Page 122: fe115trm

FDM Database Tables

2-40 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

EAR_LEAF_DTL_XXXXXXThese tables store Product Leaf detail Earnings at Risk processing results for each rate path. These tables are created during the execution of Risk Manager “Stochastic” Process IDs run with the “Leaf Earnings” Detail Earnings Options selected (results for these tables are optional and are output only when the Leaf Earnings options is selected). A different table is created for each specific Risk Manager Process ID with the table structure based upon the OFSA_EAR_LEAF_DTL template table. However, if the table already exists with the correct structure, meaning that the structure is the same as that of OFSA_EAR_LEAF_DTL, Risk Manager repopulates or appends to existing data. The XXXXXX portion of the table name is the same as the system identifier for the Process ID that generated the table. The number of EAR_LEAF_DTL_ XXXXXX tables that exist in an FDM database is dependent on the number of Risk Manager “Stochastic” processing IDs that have been executed in a database.

These tables are dropped automatically when the Process ID that created the table is deleted. It is recommended that IDs that are no longer in use be deleted so that their corresponding EAR_LEAF_DTL_XXXXXXX tables can be dropped. Always unregister such tables from the FDM Administration application prior to manually dropping them from the FDM database.

ColumnsRisk Manager creates the columns for the EAR_LEAF_DTL_XXXXXX tables using the OFSA_EAR_LEAF_DTL table as a model. To see what columns are created for new EAR_LEAF_DTL_XXXXXX tables, see the column definitions for OFSA_EAR_LEAF_DTL.

IndexesRisk Manager creates the indexes for the EAR_LEAF_DTL_XXXXXX tables using the OFSA_EAR_LEAF_DTL table as a model. To see what indexes are created for new EAR_LEAF_DTL_XXXXXXX tables, see the index definitions for OFSA_EAR_LEAF_DTL.

SequencesNot applicable.

Column Code ValuesNot applicable.

Page 123: fe115trm

FDM Database Tables

Detail Design 2-41

Oracle Proprietary, Confidential Information - Use Restricted by Contract

EAR_TOTAL_AVG_XXXXXXThese tables store total Earnings at Risk processing results, summed by date bucket, averaged across all rate paths. These tables are created during the execution of Risk Manager “Stochastic” Process IDs. A different table is created for each specific Risk Manager Process ID with the table structure based upon the OFSA_EAR_TOTAL_AVG template table. However, if the table already exists with the correct structure, meaning that the structure is the same as that of OFSA_EAR_TOTAL_AVG, Risk Manager repopulates or appends to existing data. The XXXXXX portion of the table name is the same as the system identifier for the Process ID that generated the table. The number of EAR_TOTAL_ AVG_XXXXXX tables that exist in an FDM database is dependent on the number of Risk Manager processing IDs that have been executed in a database.

These tables are dropped automatically when the Process ID that created the table is deleted. It is recommended that IDs that are no longer in use be deleted so that their corresponding EAR_TOTAL_AVG_XXXXXXX tables can be dropped. Always unregister such tables from the FDM Administration application prior to manually dropping them from the FDM database.

ColumnsRisk Manager creates the columns for the EAR_LEAF_TOTAL_XXXXXX tables using the OFSA_EAR_TOTAL_AVG table as a model. To see what columns are created for new EAR_TOTAL_AVG_XXXXXX tables, see the column definitions for OFSA_EAR_TOTAL_AVG.

IndexesRisk Manager creates the indexes for the EAR_TOTAL_AVG_XXXXXX tables using the OFSA_EAR_TOTAL_AVG table as a model. To see what indexes are created for new EAR_TOTAL_AVG_XXXXXXX tables, see the index definitions for OFSA_EAR_TOTAL_AVG.

SequencesNot applicable.

Column Code ValuesNot applicable.

Page 124: fe115trm

FDM Database Tables

2-42 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

EAR_TOTAL_DTL_XXXXXXThese tables store total Earnings at Risk processing results, summed by date bucket, for each rate path. These tables are created during the execution of Risk Manager “Stochastic” Process IDs run with the “Portfolio Earnings” Detail Earnings Options selected (results for these tables are optional and are output only when the Portfolio Earnings options is selected). A different table is created for each specific Risk Manager Process ID with the table structure based upon the OFSA_EAR_TOTAL_DTL template table. However, if the table already exists with the correct structure, meaning that the structure is the same as that of OFSA_EAR_TOTAL_DTL, Risk Manager repopulates or appends to existing data. The XXXXXX portion of the table name is the same as the system identifier for the Process ID that generated the table. The number of EAR_TOTAL_DTL_ XXXXXX tables that exist in an FDM database is dependent on the number of Risk Manager “Stochastic” processing IDs that have been executed in a database.

These tables are dropped automatically when the Process ID that created the table is deleted. It is recommended that IDs that are no longer in use be deleted so that their corresponding EAR_TOTAL_DTL_XXXXXXX tables can be dropped. Always unregister such tables from the FDM Administration application prior to manually dropping them from the FDM database.

ColumnsRisk Manager creates the columns for the EAR_TOTAL_DTL_XXXXXX tables using the OFSA_EAR_TOTAL_DTL table as a model. To see what columns are created for new EAR_TOTAL_DTL_XXXXXX tables, see the column definitions for OFSA_EAR_TOTAL_DTL.

IndexesRisk Manager creates the indexes for the EAR_TOTAL_DTL_XXXXXX tables using the OFSA_EAR_TOTAL_DTL as a model. To see what indexes are created for new EAR_TOTAL_DTL_XXXXXXX tables, see the index definitions for OFSA_EAR_TOTAL_DTL.

SequencesNot applicable.

Column Code ValuesNot applicable.

Page 125: fe115trm

FDM Database Tables

Detail Design 2-43

Oracle Proprietary, Confidential Information - Use Restricted by Contract

HHThe HH table groups non-business customers into households and contains attributes specific to each household.

ColumnsFor a detailed description of the columns in this table, refer to the Oracle Financial Services Data Dictionary.

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Index_Name Index TypeIndex Columns Sequence Column_Name

HH Unique 1 IDENTITY_CODE

HH Unique 2 ID_NUMBER

HH_2 Unique 1 ID_NUMBER

HH_HH_CUS_KEY Unique 1 HH_CUS_KEY

HH_KEY Unique 1 HH_NO

HH_4 Non-unique 1 COMMON_COA_ID

HH_5 Non-unique 1 ORG_UNIT_ID

HH_6 Non-unique 1 GL_ACCOUNT_ID

HH_HH_FRST_CONT_DT Non-unique 1 HH_FRST_CONT_DT

HH_HH_NAME Non-unique 1 HH_NAME

HH_HH_PROF_PCT Non-unique 1 HH_PROF_PCT

HH_HH_YEARS Non-unique 1 HH_YEARS

HH_HVI Non-unique 1 HVI

HH_MAX_AGE Non-unique 1 MAX_AGE

HH_MIN_AGE Non-unique 1 MIN_AGE

Page 126: fe115trm

FDM Database Tables

2-44 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

INDThe IND table contains information specific to non-business customers and prospects. Attributes common to all customers are stored in the CUST table.

ColumnsFor a detailed description of the columns in this table, refer to the Oracle Financial Services Data Dictionary.

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Index_Name Index TypeIndex Column Sequence Column_Name

IND Unique 1 IDENTITY_CODE

IND Unique 2 ID_NUMBER

IND_2 Unique 1 ID_NUMBER

IND_KEY Unique 1 CUS_NO

IND_4 Non-unique 1 COMMON_COA_ID

IND_5 Non-unique 1 ORG_UNIT_ID

IND_6 Non-unique 1 GL_ACCOUNT_ID

IND_AGE Non-unique 1 AGE

IND_BTH_DT Non-unique 1 BTH_DT

IND_HH_NO Non-unique 1 HH_NO

Page 127: fe115trm

FDM Database Tables

Detail Design 2-45

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Instrument TablesFDM provides default tables for storing financial instrument information. These tables are each tailored for a specific type of financial account information, such as “Deposits’ or ’Credit Cards’ accounts. The FDM Database Creation Process creates these tables during the initial installation of the FDM database.

The default Instrument tables are listed below. For a detailed description of the columns in these tables, refer to the Oracle Financial Services Data Dictionary.

ColumnsRefer to the Oracle Financial Services Data Dictionary for detailed column information on each of the default Instrument tables.

IndexesThe default indexes for the Instrument tables created by the FDM Database Creation Process are as follows:

COMMERCIAL_LOAN Commercial Loan accounts

CONSUMER_LOAN Consumer Loan accounts

CREDIT_CARDS Credit Card Accounts

DEPOSITS Deposits accounts

FORWARD_CONTRACTS Forward Contracts accounts

INTERST_RATE_OPTIONS Interest Rate Options accounts

INTEREST_RATE_SWAPS Interest Rate Swaps accounts

INVESTMENTS Investment accounts

MORTGAGES Mortgages accounts

MORTGAGE_BACK_SEC Mortgage Backed Securities accounts

TERM_DEPOSITS Term Deposit accounts

WHOLESALE_FUNDING Wholesale Funding accounts

Page 128: fe115trm

FDM Database Tables

2-46 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

SequencesNot applicable.

Column Code ValuesNot applicable.

Index_Name Index TypeIndex Column Sequence Column_Name

INSTRUMENT_TABLE Unique 1 IDENTITY_CODE

INSTRUMENT_TABLE Unique 2 ID_NUMBER

INSTRUMENT_TABLE_2 Non-unique 1 ID_NUMBER

INSTRUMENT_TABLE_3 Non-unique 1 AS_OF_DATE

INSTRUMENT_TABLE_3 Non-unique 2 ID_NUMBER

INSTRUMENT_TABLE_4 Non-unique 1 COMMON_COA_ID

INSTRUMENT_TABLE_4 Non-unique 2 AS_OF_DATE

INSTRUMENT_TABLE_5 Non-unique 1 ORG_UNIT_ID

INSTRUMENT_TABLE_5 Non-unique 2 AS_OF_DATE

INSTRUMENT_TABLE_6 Non-unique 1 GL_ACCOUNT_ID

INSTRUMENT_TABLE_6 Non-unique 2 AS_OF_DATE

Page 129: fe115trm

FDM Database Tables

Detail Design 2-47

Oracle Proprietary, Confidential Information - Use Restricted by Contract

LEDGER_STATThe LEDGER_STAT table is the data source for summary financial and statistical data used by OFSA.

LEDGER_STAT is not structured like the Instrument and Services tables provided with the FDM database. Each record in LEDGER_STAT stores information for an entire year for a given account by utilizing 12 monthly and 12 year-to-date columns (one for each month in the year). In addition, LEDGER_STAT is used only for summary data. Individual account characteristics are not stored in this table.

Data can be loaded into LEDGER_STAT using the FDM ’Ledger Load’ function.

ColumnsRefer to the Oracle Financial Services Data Dictionary for detailed information on columns in the LEDGER_STAT table.

IndexesThe LEDGER_STAT default indexes created by the FDM Database Creation Process are listed below:

Index_Name Index TypeIndex Column Sequence Column_Name

LEDGER_STAT Unique 1 IDENTITY_CODE

LEDGER_STAT Unique 2 YEAR_S

LEDGER_STAT Unique 3 ACCUM_TYPE_CD

LEDGER_STAT Unique 4 CONSOLIDATION_CD

LEDGER_STAT Unique 5 FINANCIAL_ELEM_ID

LEDGER_STAT Unique 6 ORG_UNIT_ID

LEDGER_STAT Unique 7 GL_ACCOUNT_ID

LEDGER_STAT Unique 8 COMMON_COA_ID

LEDGER_STAT_3 Non-unique 1 COMMON_COA_ID

LEDGER_STAT_4 Non-unique 1 ORG_UNIT_ID

LEDGER_STAT_5 Non-unique 1 GL_ACCOUNT_ID

LEDGER_STAT_6 Non-unique 1 FINANCIAL_ELEM_ID

LEDGER_STAT_7 Non-unique 1 YEAR_S

Page 130: fe115trm

FDM Database Tables

2-48 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

SequencesNot applicable.

Column Code ValuesNot applicable.

Page 131: fe115trm

FDM Database Tables

Detail Design 2-49

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_ACTION_ASSIGNMENTThis table stores privilege assignments for OFSA functions. OFSA functions are operational tasks available within the OFSA applications. For example, the ability to run an Allocation ID is such an operational task. OFSA functions consist of a Construct (such as Allocation ID) and an Action (such as Run).

OFSA functions may consist of multiple distinct menu items. For example, the ability to create a new Allocation ID involves the “New” menu item, as well as “Save”. Both of these items are part of the “Create” Action in combination with the “Allocation ID” Construct.

The FDM Administration application provides functionality for inserting and maintaining function privilege assignments in OFSA_ACTION_ASSIGNMENT.

Columns

Indexes

Column Name Null? Type Description

RECIPIENT_NAME NOT NULL

VARCHAR2(30) Identifies the user, User Group or Security Profile receiving the privilege. Links to the OFSA_PRIVILEGE_RECIPIENTS table.

ACTION_CD NOT NULL

NUMBER(5) Identifies the Action, such as Run, New. Links to the OFSA_ACTIONS table.

CONSTRUCT_CD NOT NULL

NUMBER(5) Identifies the Construct, such as Allocation ID or Tree Rollup ID. Links to the OFSA_CONSTRUCTS table.

PROTECTED_FLG NOT NULL

NUMBER(1) Indicates whether the row is a protected seeded row. Protected seeded rows may not be deleted or updated.

Index_Name Index TypeIndex Column Sequence Column_Name

ACTION_ASSIGNMENT_PK

Unique 1 RECIPIENT_NAME

Page 132: fe115trm

FDM Database Tables

2-50 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

SequencesNot applicable.

Column Code ValuesThis section defines codes referenced for the OFSA_ACTION_ASSIGNMENT table.

Action_CdRefer to the OFSA_ACTIONS table in this reference manual for more information on valid ACTION_CD values.

ACTION_ASSIGNMENT_PK

Unique 2 ACTION_CD

ACTION_ASSIGNMENT_PK

Unique 3 CONSTRUCT_CD

Index_Name Index TypeIndex Column Sequence Column_Name

Page 133: fe115trm

FDM Database Tables

Detail Design 2-51

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_ACTIONSThis table provides the list of Actions available for OFSA operational tasks. When combined with OFSA Constructs, these provide the “function” assignments for FDM Administration.

The list of entries for the OFSA_ACTIONS table are seeded by the FDM Database Upgrade and Database Creation Processes and are protected from modification.

The following is a list of valid actions:

Action Code Action Name Action Description

10 Create Create a new Construct

20 Delete Delete an existing Construct

30 Run Run or Execute

40 Update Update an existing Construct

50 View View Only

60 Data Update Update user data in the database (not updating the Construct)

70 Manage Administer a Construct

80 Activate Identify Construct as Active

90 Run Transform Run a transformation on ID

Page 134: fe115trm

FDM Database Tables

2-52 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

ACTION_CD NOT NULL

VARCHAR2(30) The code value for identifying the action.

ACTION_NAME NOT NULL

NUMBER(5) The name of the action

DESCRIPTION NOT NULL

NUMBER(5) Description of the action.

Index_Name Index TypeIndex Column Sequence Column_Name

ACTION_PK Unique 1 ACTION_CD

Page 135: fe115trm

FDM Database Tables

Detail Design 2-53

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_APP_ASSIGNMENTThis table stores OFSA application privilege assignments. These assignments enable users to log in to OFSA applications. Application assignments are assignable to users, User Groups or Security Profiles.

The FDM Administration application provides functionality for inserting and maintaining application privilege assignments in OFSA_APP_ASSIGNMENT.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesThis section defines codes referenced for the OFSA_APP_ASSIGNMENT table.

Column Name Null? Type Description

APPLICATION_CD NOT NULL

NUMBER(5) Identifies the application privilege assigned to the recipient. Links with the OFSA_APPLICATIONS table.

RECIPIENT_NAME NOT NULL

VARCHAR2(30) Identifies the user, User Group or Security Profile receiving the privilege. Links to the OFSA_PRIVILEGE_RECIPIENTS table.

PROTECTED_FLG NOT NULL

NUMBER(1) Indicates whether the row is a protected seeded row. Protected seeded rows may not be deleted or updated.

Index_Name Index TypeIndex Column Sequence Column_Name

APP_ASSIGNMENT_PK

Unique 1 RECIPIENT_NAME

APP_ASSIGNMENT_PK

Unique 2 APPLICATION_CD

Page 136: fe115trm

FDM Database Tables

2-54 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Application_CdRefer to the OFSA_APPLICATIONS table in this reference manual for more information on valid APPLICATION_CD values.

Page 137: fe115trm

FDM Database Tables

Detail Design 2-55

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_APPLICATION_CONSTRUCTSThis table identifies the Constructs available for each OFSA application. Data in this table is seeded by the FDM Database Upgrade and Database Creation Processes and is protected from modification.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesThis section defines codes referenced for the OFSA_APPLICATION_CONSTRUCTS table.

Application_CdRefer to the OFSA_APPLICATIONS table in this reference manual for more information on valid APPLICATION_CD values.

Column Name Null? Type Description

CONSTRUCT_CD NOT NULL

NUMBER(5) Identifies the Construct available for the specified OFSA Application. Links with the OFSA_CONSTRUCTS table.

APPLICATION_CD NOT NULL

NUMBER(5) Identifies the application for which the Construct is available. Links with the OFSA_APPLICATIONS table.

Index_Name Index TypeIndex Column Sequence Column_Name

APPLICATION_CONSTRUCTS_PK

Unique 1 CONSTRUCT_CD

APPLICATION_CONSTRUCTS_PK

Unique 2 APPLICATION_CD

Page 138: fe115trm

FDM Database Tables

2-56 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Construct_CdRefer to the OFSA_CONSTRUCTS table in this reference manual for more information on valid CONSTRUCT_CD values.

Page 139: fe115trm

FDM Database Tables

Detail Design 2-57

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_APPLICATIONSThis table identifies the applications of the Oracle Financial Services Applications suite. Data in this table is populated by the FDM Database Creation and Database Upgrade processes. and is protected from modification.

Application Code Application Name

1 FDM Administration

2 Risk Manager

3 Transfer Pricing

4 Balance & Control

5 Portfolio Analyzer

6 Customer Householding

7 Market Manager

8 Discoverer Integrator

9 FDM Rate Manager

0 Performance Analyzer

Note: Market Manager is not part of OFSA Release 4.5.

Page 140: fe115trm

FDM Database Tables

2-58 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

APPLICATION_CD NOT NULL

NUMBER(5) Code identifying the OFSA application.

APPLICATION_ACRONYM

NOT NULL

VARCHAR2(10) Abbreviation for the application.

APPLICATION_NAME NOT NULL

VARCHAR2(30) Name of the application.

INSTALLED_FLG NOT NULL

NUMBER(1) A ’1’ indicates that the application is installed in the FDM database. A ’0’ indicates that the application is not installed.

DESCRIPTION VARCHAR2(80) A description of the application.

Index_Name Index TypeIndex Column Sequence Column_Name

APPLICATIONS_PK

Unique 1 APPLICATION_CD

APPLICATIONS_UK

Unique 1 APPLICATION_ACRONYM

Page 141: fe115trm

FDM Database Tables

Detail Design 2-59

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_AUDIT_TRAILThe OFSA_AUDIT_TRAIL table records the operational elements used by an Allocation ID that has been executed with ’Audit Trail’ set. Information in this table tracks the values generated by the Allocation process.

Data is inserted into this table by Allocation IDs that have been designated to use the ’Audit Trail’ function.

Columns

Column Name Null? Type Description

IDENTITY_CODE NOT NULL

NUMBER(10) Specifies the sequence number generated to identify the process that performed the allocation. This same value is also inserted into an identifying row in the OFSA_DATA_IDENTITY table. Multiple rows with the same identity_code value can be inserted.

AS_OF_DATE NOT NULL

DATE Identifies the time period of the source data. If the source data is in an Instrument table, then rows with matching as_of_date values in that table are selected. If the source data is in the LEDGER_STAT table, then rows in that table with year_s and month_nn values that match the MON and YYYY substrings of the as_of_date are selected.

TO_FROM_FLAG NOT NULL

CHAR(1) Indicates whether the value in the amount column was debited or credited.

LINK_KEY NOT NULL

NUMBER(5) Specifies the identifier shared by entries that are part of the same transaction.

SEQUENCES NOT NULL

NUMBER(5) Specifies a new sequence number each time the same process is run for the same as_of_date.

FINANCIAL_ELEM_ID NOT NULL

NUMBER(14) Identifies the type of financial element, such as ending balance, affected by the allocation.

ORG_UNIT_ID NOT NULL

NUMBER(14) Identifies the organizational unit, such as Trust Department, affected by the allocation.

GL_ACCOUNT_ID NOT NULL

NUMBER(14) Identifies the general ledger account, such as liability insurance, affected by the allocation.

COMMON_COA_ID NOT NULL

NUMBER(14) Identifies the common chart_of_account, such as demand deposit retail, affected by the allocation.

Page 142: fe115trm

FDM Database Tables

2-60 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

IndexesFDM requires that you incorporate any user-defined leaf columns into the unique index for the OFSA_AUDIT_TRAIL table. Therefore, when you register a new Leaf Column for your FDM database, modify the unique index for the OFSA_AUDIT_TRAIL table to include the new column as a component.

The list of indexes below contains only those indexes provided with the initial installation of the FDM database.

ALLOC_SYS_ID NOT NULL

NUMBER(10) Identifies the Allocation ID that performed the allocation.

VOLUME_RATE NUMBER(17,6) Specifies a constant value; otherwise 0.

AMOUNT NUMBER(17,6) Specifies the amount that was debited or credited.

DESCRIPTION VARCHAR2(80) Stores a description of the allocation

Index_Name Index TypeIndex Column Sequence Column_Name

AUDIT_TRAIL Unique 1 IDENTITY_CODE

AUDIT_TRAIL Unique 2 AS_OF_DATE

AUDIT_TRAIL Unique 3 TO_FROM_FLAG

AUDIT_TRAIL Unique 4 LINK_KEY

AUDIT_TRAIL Unique 5 SEQUENCES

AUDIT_TRAIL Unique 6 FINANCIAL_ELEM_ID

AUDIT_TRAIL Unique 7 ORG_UNIT_ID

AUDIT_TRAIL Unique 8 GL_ACCOUNT_ID

AUDIT_TRAIL Unique 9 COMMON_COA_ID

AUDIT_TRAIL_1 Non-unique 1 AS_OF_DATE

AUDIT_TRAIL_1 Non-unique 2 ALLOC_SYS_ID

AUDIT_TRAIL_1 Non-unique 3 LINK_KEY

AUDIT_TRAIL_2 Non-unique 1 FINANCIAL_ELEM_ID

AUDIT_TRAIL_3 Non-unique 1 ORG_UNIT_ID

AUDIT_TRAIL_4 Non-unique 1 GL_ACCOUNT_ID

Column Name Null? Type Description

Page 143: fe115trm

FDM Database Tables

Detail Design 2-61

Oracle Proprietary, Confidential Information - Use Restricted by Contract

SequencesNot applicable.

Column Code ValuesThis section defines reserved codes referenced for the OFSA_AUDIT_TRAIL table.

To_From_FlagThe to_from_flag column of OFSA_AUDIT_TRAIL has the following reserved codes:

AUDIT_TRAIL_5 Non-unique 1 COMMON_COA_ID

AUDIT_TRAIL_6 Non-unique 1 SEQUENCES

Code Description

T Credit

F Debit

Index_Name Index TypeIndex Column Sequence Column_Name

Page 144: fe115trm

FDM Database Tables

2-62 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_CATALOG_OF_IDSThe OFSA_CATALOG_OF_IDS table stores information about all of the OFSA IDs that exist in the database. Each OFSA ID references one record in OFSA_CATALOG_OF_IDS. The record in OFSA_CATALOG_OF_IDS for the OFSA ID is an identification record containing information such as the ID Name, what type of ID it is, in what group the ID is stored, who created the ID and so forth. The OFSA_CATALOG_OF_IDS record is linked to the detail data for the ID by the sys_id_num assigned to the ID.

Columns

Column Name Null? Type Description

SYS_ID_NUM NOT NULL NUMBER(10) Identifies the system number that has been attached to the OFSA ID. The sys_id_num is generated by the SYS_ID_NUM_SEQ sequence in the database.

ID_DESC_SHORT VARCHAR2(15) The id_desc_short is the name of the OFSA ID identified by the sys_id_num. For id_type = 504 records, the id_desc_short column is used to store either the organizational leaf or node value.

ID_DESC_LONG VARCHAR2(60) The id_desc_long is the long name (or description) of the OFSA ID identified by the sys_id_num.

LEAF_NUM_ID NOT NULL NUMBER(5) Designates the type of leaf column to which the ID applies. OFSA IDs that are general (in other words, not referenced by a leaf column) are assigned a value of ’0’ or ’-1’ for leaf_num_id. Only OFSA IDs that are specific to a single leaf column (such as a Tree Rollup ID created for the org_unit_id column) are assigned a valid leaf_num_id from the OFSA_CATALOG_OF_LEAVES table.

ID_TYPE NOT NULL NUMBER(5) Identifies the purpose for the OFSA_CATALOG_OF_IDS record. A complete list of id_type codes and descriptions is contained in the Column Code Values sub-section below.

TABLE_NAME NOT NULL VARCHAR2(25) Identifies the detail table to which the ID applies. For example, the table_name for a Data Filter ID would be set to idt_data_filter.

Page 145: fe115trm

FDM Database Tables

Detail Design 2-63

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesThe SYS_ID_NUM_SEQ sequence generates values for the sys_id_num column.

ACCESS_CODE CHAR(1) Indicates whether the ID can be edited by a user other than the user identified in the access_name column described below. If the access_code is set to ’Y’, then only the user identified in access_name can edit the ID. If set to ’N’, then any user with access to the group_name of the ID is allowed to edit the ID and save any changes.

ACCESS_NAME VARCHAR2(15) Identifies the user with full access to the ID. If the access_code (above) is set to ’Y’, then only the user identified in access_name may edit the ID. If the access_code is set to ’N’, then any user with access to the group_name of the ID is allowed to edit the ID and save any changes.

CHG_APP NUMBER(5) Identifies the OFSA product in which the ID was last updated. OFSA products are identified in the chg_app column by a program number. A complete list of program codes and descriptions is listed in for the chg_app column in the Column Code Values sub-section below.

CHG_LOGIN VARCHAR2(15) Identifies the user ID that last changed the ID.

CHG_DATE DATE Specifies the date when the ID was last changed.

CHG_TIME VARCHAR2(8) Specifies the time when the ID was last changed.

FOLDER_NAME NOT NULL VARCHAR2(15) Identifies the ID Folder to which the ID is assigned. Each OFSA ID is assigned to a single ID Folder. Only users with privileges for the designated ID Folder can access the ID.

Index_Name Index TypeIndex Column Sequence Column_Name

CATALOG_OF_IDS_PK Unique 1 SYS_ID_NUM

CATALOG_OF_IDS_FK1 Non-unique 1 FOLDER_NAME

Column Name Null? Type Description

Page 146: fe115trm

FDM Database Tables

2-64 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Column Code Values

Chg_appThe chg_app column of OFSA_CATALOG_OF_IDS has the following codes:

*Oracle Budgeting & Planning no longer creates records in the OFSA_CATALOG_OF_IDS table as of Release 4.5. Any records with a CHG_APP value of ’6’ are legacy entries created by a previous release of Budgeting & Planning.

**The Oracle System Administration and Oracle Budgeting & Planning Manager applications are not part of OFSA Release 4.5. Any records with a CHG_APP value of ’8’ or ’9’ are legacy entries created a previous releases of these applications.

ID_TypeThe ID_type column of OFSA_CATALOG_OF_IDS has the following codes:

Code Description

0 Oracle Performance Analyzer

2 Oracle Risk Manager

3 Oracle Transfer Pricing

4 Oracle Balance & Control

5 Oracle Portfolio Analyzer

6 Oracle Budgeting & Planning*

8 Oracle System Administration**

9 Oracle Budgeting & Planning Manager**

ID Type Code ID Type Name

0 Allocation ID

3 Batch ID

4 Data Filter ID

5 Tree Rollup ID

6 Subtotal ID

7 Report ID

8 Tree Filter ID

9 Report ID; Column Definition

14 Formula ID

Page 147: fe115trm

FDM Database Tables

Detail Design 2-65

Oracle Proprietary, Confidential Information - Use Restricted by Contract

17 Table ID

21 Group Filter ID

26 Transformation ID

100 Data Verification ID

101 Correction Rule ID

102 Report ID; Table to Table

104 Correction Processing ID

105 SQL ID

106 Stratification ID

108 Assignment ID

200 Transfer Price ID

201 Configuration ID

204 TP Process ID

205 RM Process ID

300 Prepayment ID

301 Discount Rates ID

302 Maturity Strategy ID

303 Pricing Margin ID

305 Forecast Rates ID

306 Transaction Strategy ID

307 Forecast Balance ID

309 Leaf Characteristics ID

312 Prepayment Table ID

313 Formula Leaves ID

315 Rate Index ID

405 Server Status

601 Exchange Rate Validation

602 Parameter Estimation

ID Type Code ID Type Name

Page 148: fe115trm

FDM Database Tables

2-66 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_CATALOG_OF_LEAVESThe OFSA_CATALOG_OF_LEAVES table is used to store information on each of the Leaf Columns registered for the FDM database. Leaf columns provide users with specialized functionality within the OFSA applications.

The Common Chart of Accounts (common_coa_id), Financial Element (financial_elem_id), General Ledger Account (gl_account_id) and Organizational Unit (org_unit_id) Leaf Columns are provided with the initial installation of the FDM database. Administrators can register and un-register additional user-defined Leaf Columns by following the steps and procedures outlined in the “FDM Leaf Management” chapter of the Oracle Financial Services Installation and Configuration Guide, Release 4.5.

Page 149: fe115trm

FDM Database Tables

Detail Design 2-67

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Columns

Indexes

SequencesNot applicable.

Code ValuesNot applicable.

Column Name Null? Type Description

LEAF_NUM_ID NOT NULL NUMBER(5) The leaf_num_id is a number that uniquely identifies the Leaf Column.

LEAF_FIELD VARCHAR2(18) Identifies the name of the Leaf Column.

DETAIL_NUM_TABLE VARCHAR2(18) Identifies the name of the table that is used for detail information for the Leaf Column. Each distinct type of Leaf Column uses a different detail table.

DESCRIPTION VARCHAR2(80) The description is the long name associated with the Leaf Column. This is the name that appears in list boxes within the OFSA applications.

TABLE_TYPE CHAR(1) A ’B’designates that the Leaf Column is present on the LEDGER_STAT and OFSA_AUDIT_TRAIL tables as well as all of the Instrument tables. An ’L’ designates that the Leaf Column is present only on the LEDGER_STAT and OFSA_AUDIT_TRAIL tables. A ’V’ indicates that the Leaf Column is a ’Helper Leaf’ (Virtual Leaf Column).

KEY_LEAF_CD NUMBER(5) A ’1’ designates that the Leaf Column is part of the unique key for the LEDGER_STAT and OFSA_AUDIT_TRAIL tables. Any other value designates that the Leaf Column is not part of the unique key for these tables.

Index_NameIndex Type

Index Column Sequence Column_Name

CATALOG_OF_LEAVES Unique 1 LEAF_NUM_ID

Page 150: fe115trm

FDM Database Tables

2-68 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_COL_PROPERTY_REQUIREMENTSThe OFSA_COL_PROPERTY_REQUIREMENTS table stores required Column Property assignments for FDM Reserved column names.

FDM Reserved column names are those column names retained by the Financial Data Manager database for OFSA application specific purposes. The OFSA applications require certain characteristics and attributes for these Reserved columns whenever they are registered for a table or view within the FDM database. The OFSA_COL_PROPERTY_REQUIREMENTS table stores the Column Property assignments that the OFSA applications require for these Reserved column names.

When you register a table or view within the FDM Administration application, the Object Registration Wizard automatically propagates any Column Property assignments from the OFSA_COL_PROPERTY_REQUIREMENTS table for FDM Reserved Column Names on the object. This ensures that the FDM Reserved column names on the registered object possess the Column Property assignments required by the OFSA applications. This also ensures that the Reserved column name possesses the same Column Property assignments for any objects on which that column name is registered within the FDM database. The Column Property requirements from OFSA_COL_PROPERTY_REQUIREMENTS are inserted into OFSA_COLUMN_PROPERTIES for all of the FDM Reserved column names being registered.

The FDM Database Creation and Database Upgrade processes populate the OFSA_COL_PROPERTY_REQUIREMENTS table with the required Column Property assignments for FDM Reserved column names.

Page 151: fe115trm

FDM Database Tables

Detail Design 2-69

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Columns

Indexes

SequencesNot applicable.

Code Values

Column_Property_CdRefer to the OFSA_COLUMN_PROPERTY_CD table described in this reference manual for information regarding the list of valid Column Property Codes for FDM.

Column Name Null? Type Description

COLUMN_NAME NOT NULL VARCHAR2(30) Identifies the FDM Reserved column name for which the designated Column Property assignments are required.

COLUMN_PROPERTY_CD

NOT NULL NUMBER(5) Identifies the Column Property required for the specified Reserved column name.

PROPERTY_COLUMN VARCHAR2(30) Identifies the Related Field for the Column Property, if applicable.

PROTECTED_FLG NOT NULL NUMBER(1) A ’1’ designates that the record is protected and cannot be modified. Any other value designates that the record is a user-defined entry.

Index_NameIndex Type

Index Column Sequence Column_Name

COL_PROPERTY_REQUIREMENTS_PK

Unique 1 COLUMN_NAME

COL_PROPERTY_REQUIREMENTS_PK

Unique 2 COLUMN_PROPERTY_CD

COL_PROPERTY_REQUIREMENTS_FK1

Unique 1 COLUMN_PROPERTY_CD

COL_PROPERTY_REQUIREMENTS_FK2

Unique 2 COLUMN_NAME

Page 152: fe115trm

FDM Database Tables

2-70 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_COLUMN_PROPERTIESColumn Properties identify additional information about registered columns. This information is used by the Discoverer Integrator, Performance Analyzer, Risk Manager and Transfer Pricing applications to determine specific characteristics about a column complementary to the FDM Data Type. The OFSA_COLUMN_PROPERTIES table stores the assignment of Column Properties to column names registered for tables or views within the FDM database.

There are several different types of Column Properties. For each registered table/column combination, one or more properties may be assigned.

Examples of Column Properties include:

■ Multipliers for Terms and Frequencies

■ Processing Key designation, identifying components of the primary key of the object

■ Balance and Rate designations

Related field information such as a multiplier column for Terms and Frequencies or a weighting factor for Rates, is stored in the PROPERTY_COLUMN field for the ’Related Field’ Column Property. PROPERTY_COLUMN is populated only for the ’Related Field’ Column Property. It is null for all other Column Properties (meaning that each table_name/column_name combination can have only one ’Related Field’).

Required assignment for FDM Reserved column names are automatically inserted from the OFSA_COL_PROPERTY_REQUIREMENTS table into OFSA_COLUMN_PROPERTIES during Object Registration. Additional Column Properties can be manually assigned to columns in the Column Property Assignment Wizard within FDM Administration.

Column Name Null? Type Description

TABLE_NAME NOT NULL VARCHAR2(30) Identifies the table or view for which the specified column name is registered.

COLUMN_NAME NOT NULL VARCHAR2(30) Identifies the registered column name for which the Column Property assignments apply.

OWNER NOT NULL VARCHAR2(30) Identifies the FDM Schema Owner of the object.

COLUMN_PROPERTY_CD

NOT NULL NUMBER(5) Identifies the Column Property assigned to the column.

Page 153: fe115trm

FDM Database Tables

Detail Design 2-71

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Code Values

Column_Property_CdRefer to the OFSA_COLUMN_PROPERTY_CD table described in this reference manual for information regarding the list of valid Column Property Codes for FDM.

PROPERTY_COLUMN VARCHAR2(30) Identifies the Related Field for the Column Property, if applicable.

PROTECTED_FLG NOT NULL NUMBER(1) A ’1’ designates that the assignment is protected and cannot be modified. Any other value designates that the assignment is a user-defined entry.

Index_NameIndex Type

Index Column Sequence Column_Name

COLUMN_PROPERTIES_PK

Unique 1 TABLE_NAME

COLUMN_PROPERTIES_PK

Unique 2 COLUMN_NAME

COLUMN_PROPERTIES_PK

Unique 3 OWNER

COLUMN_PROPERTIES_PK

Unique 4 COLUMN_PROPERTY_CD

Column Name Null? Type Description

Page 154: fe115trm

FDM Database Tables

2-72 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_COLUMN_PROPERTY_CDColumn Properties identify additional information about registered columns. This information is used by the Discoverer Integrator, Performance Analyzer, Risk Manager and Transfer Pricing applications to determine specific characteristics about a column complementary to the FDM Data Type. The OFSA_COLUMN_PROPERTY_CD table stores the list of valid Column Property codes for the FDM database. The translatable Column Property names and descriptions are stored in OFSA_COLUMN_PROPERTY_MLS. The OFSA_COLUMN_PROPERTY_DSC view is a language compatible view for querying the FDM Column Properties.

The FDM Database Upgrade and FDM Database Creation processes populates the OFSA_COLUMN_PROPERTY_CD and OFSA_COLUMN_PROPERTY_MLS tables. Do not modify or update data in these tables.

The following table lists the valid FDM Column Properties:

Column Property Code Column Property Name

1 Standard Rate

2 Balance Weighted Object

3 RM Scenario Relationship

4 RM Result Type Relationship

5 Multiplier Related Field

6 Term Multiplier

7 Frequency Multiplier

10 Reporting Not Visible

15 Processing Key

20 Related Field

31 Statistic

32 Balance

Page 155: fe115trm

FDM Database Tables

Detail Design 2-73

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Code ValuesNot applicable.

Column Name Null? Type Description

COLUMN_PROPERTY_CD

NOT NULL VARCHAR2(30) The code value identifying the Column Property.

CURRENCY_BASIS_FLG

NOT NULL VARCHAR2(30) A ’1’ designates that the Column Property is Currency based and requires a Currency component (that is, for monetary values such as ’Balances’ and ’Balance Weighted Objects’). Any other value indicates that the Column Property is not Currency based.

FE_UI_SETUP_FLG NOT NULL VARCHAR2(30) Designates that the Column Property is assignable to Financial ELements within the OFSA Application Leaf Setup screen.

Index_NameIndex Type

Index Column Sequence Column_Name

COLUMN_PROPERTY_CD_PK

Unique 1 COLUMN_PROPERTY_CD

Page 156: fe115trm

FDM Database Tables

2-74 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_COLUMN_REQUIREMENTSThe OFSA_COLUMN_REQUIREMENTS table stores required attributes for FDM Reserved column names.

FDM Reserved column names are those column names retained by the Financial Data Manager database for OFSA application specific purposes. The OFSA applications require certain characteristics and attributes for these Reserved columns whenever they are registered for a table or view within the FDM database. The OFSA_COLUMN_REQUIREMENTS table stores these required attributes, such as Data Type, Scale, and Precision, which the FDM Reserved column names.

In order for an object to be assigned to a particular Table Classification, all of the FDM reserved column names required by that classification must exist on the object. In addition, the columns on the object must possess the required characteristics of those reserved column names. For example, the MATURITY_DATE column is required by the RM Standard Table Classification. In order to be assigned to this classification, the MATURITY_DATE column must exist on the object and it must be defined as data type ’DATE’.

The FDM Table Classification Assignment Wizard identifies any missing columns for each Table Classification validation. If all columns are present on an object, but the object still fails the classification assignment, then one or more of the columns does not match the characteristic requirements. All column characteristics are specified in the OFSA_COLUMN_REQUIREMENTS table.

The FDM Database Creation and Database Upgrade processes populate the OFSA_COLUMN_REQUIREMENTS table with the required Column Property assignments for FDM Reserved column names.

Portfolio ColumnsPortfolio columns are column names assigned to the ’Portfolio’ Table Classification. The Portfolio Table Classification designates a set of columns that are common across different instrument tables. When an OFSA ID is created with Portfolio columns and because the Portfolio column is not specific to any single instrument table within the context of the OFSA ID, the OFSA application queries the OFSA_COLUMN_REQUIREMENTS table to identify the attributes of the column. Because of this, FDM requires that all Portfolio columns have an entry in OFSA_COLUMN_REQUIREMENTS.

Refer to the “FDM Object Management” chapter of the Oracle Financial Services Installation and Configuration Guide for detailed information on how to create a user-defined Portfolio column.

Page 157: fe115trm

FDM Database Tables

Detail Design 2-75

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Editing Column RequirementsFDM allows editing of all OFSA_COLUMN_REQUIREMENTS attributes for user-defined Portfolio columns. However, for FDM Reserved columns (identified by PROTECTED_FLG=1), there are some restrictions on which attributes can be modified. Columns noted with an asterisk (*) below are protected from update for FDM Reserved columns. All other columns in OFSA_COLUMN_REQUIREMENTS can be edited.

Page 158: fe115trm

FDM Database Tables

2-76 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Columns

Indexes

Column Name Null? Type Description

COLUMN_NAME* NOT NULL VARCHAR2(30) Identifies the column for which requirements exist.

OFSA_DATA_TYPE_CD*

NOT NULL NUMBER(5) Designates the FDM Data Type requirement for the column. FDM Data Type Codes are stored in OFSA_DATA_TYPE_DSC. Protected from update for FDM Reserved columns.

DATA_LENGTH NOT NULL NUMBER(5) Designates the required Oracle data length. FDM allows this value to be increased for balance columns.

DATA_PRECISION NUMBER(5) Designates the required Oracle data precision. FDM allows this value to be increased for balance columns.

DATA_SCALE NUMBER(5) Designates the required Oracle data scale. FDM allows this value to be increased for balance columns.

DATA_TYPE* NOT NULL VARCHAR2(30) Designates the required Oracle data type. Protected from update for FDM Reserved columns.

NULLABLE* NOT NULL VARCHAR2(1) Indicates if the column is nullable. Protected from update for FDM Reserved columns.

DBF_NAME NOT NULL VARCHAR2(10) Designates the name for the column when exported into a DBF.

PROTECTED_FLG NOT NULL NUMBER(1) Designates that the row is an FDM Reserved column.

Index_NameIndex Type

Index Column Sequence Column_Name

COLUMN_REQUIREMENTS_PK

Unique 1 COLUMN_NAME

COLUMN_REQUIREMENTS_FK

Non- unique

1 OFSA_DATA_TYPE_CD

Page 159: fe115trm

FDM Database Tables

Detail Design 2-77

Oracle Proprietary, Confidential Information - Use Restricted by Contract

SequencesNot applicable.

Code Values

OFSA_Data_Type_CdRefer to the OFSA_DATA_TYPE_DSC table described in this reference manual for information regarding the list of valid FDM Data Type Codes.

Page 160: fe115trm

FDM Database Tables

2-78 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_COLUMN_REQUIREMENTS_MLSThe OFSA_COLUMN_REQUIREMENTS_MLS table stores the translatable names for FDM Reserved columns and user-defined Portfolio columns.

The FDM Administration application uses the DISPLAY_NAME from OFSA_COLUMN_REQUIREMENTS_MLS to populate the Display Name for columns on registered tables and views during the Object Registration process. This ensures that any column names listed in this table have the same Display Name for all tables and views on which they exist in the FDM database. When creating OFSA ’Portfolio’ IDs, the OFSA applications query OFSA_COLUMN_REQUIREMENTS_MLS for the Display Name of Portfolio columns. Such IDs do not reference a table_name at the time of ID creation.

Columns

Indexes

SequencesNot applicable.

Column Name Null? Type Description

MLS_CD NOT NULL VARCHAR2(3) Code identifying the language for the display name.

COLUMN_NAME NOT NULL VARCHAR2(30) Identifies the column for which the display name applies.

DISPLAY_NAME NOT NULL VARCHAR2(40) The display name of the column as it appears within OFSA applications for the specified MLS_CD.

Index_NameIndex Type

Index Column Sequence Column_Name

COLUMN_REQUIREMENTS_MLS_PK

Unique 1 MLS_CD

COLUMN_REQUIREMENTS_MLS_PK

Unique 2 COLUMN_NAME

Page 161: fe115trm

FDM Database Tables

Detail Design 2-79

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Code Values

MLS_CdRefer to the OFSA_MLS table described in this reference manual for information regarding the list of valid FDM MLS Codes.

Page 162: fe115trm

FDM Database Tables

2-80 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_CONSOLIDATED_MASTEROFSA_CONSOLIDATED_MASTER stores current position summary and market values generated from Oracle Risk Manager processing consolidated to the reporting currency designated in the Risk Manager Process ID.

This table is accessed by reporting to display Risk Manager results. OFSA_CONSOLIDATED_MASTER is also accessed by the Transformation ID during the transformation of Risk Manager results data to the FDM Report Mart.

Columns

Column Name Null? Type Description

RESULT_SYS_ID NOT NULL NUMBER(10) Risk Manager Process ID number

RESULT_TYPE_CD NOT NULL NUMBER(5) Result Type. This value must be a value that exists in the result_type_cd column of OFSA_RESULT_TYPE_DSC.

SCENARIO_NUM NOT NULL NUMBER(5) Scenario Number. This column references the scenario_num column of the OFSA_RESULT_SCENARIO table. This reference should be used to look up the descriptions of each scenario.

ORG_UNIT_ID NOT NULL NUMBER(14) The organizational code. Identifies an organizational unit.

GL_ACCOUNT_ID NOT NULL NUMBER(14) Specific GL account assignment.

COMMON_COA_ID NOT NULL NUMBER(14) Leaf column that defines the lowest common level of detail across all product chart of account definitions.

FINANCIAL_ROLLUP NUMBER(5) Standard financial statement rollup category in which the transaction falls.

CUR_PAR_BAL NUMBER(14,2) Current gross par value

CUR_NET_PAR_BAL NUMBER(14,2) Current par value- net of participation.

CUR_DEFER_BAL_C NUMBER(14,2) Simulation deferred balance at as_of_date.

CUR_NET_RATE_W NUMBER(14,2) Current net rate weighted by current book balance.

CUR_WARM NUMBER(16,2) Current WARM (Weighted Average Remaining Maturity)

Page 163: fe115trm

FDM Database Tables

Detail Design 2-81

Oracle Proprietary, Confidential Information - Use Restricted by Contract

IndexesFDM requires that all user-defined ’Key’ Leaf Columns are included as components of the unique index for OFSA_CONSOLIDATED_MASTER. Whenever you register a new user-defined ’Key’ Leaf Column for your FDM database, you need to adjust the unique index for OFSA_CONSOLIDATED_MASTER accordingly. The list of indexes below contains only those indexes provided with the initial installation of the FDM database.

CUR_INTR_REC_ACCR NUMBER(14,2) Current interest receivable accrued.

NEW_GROSS_BALANCE NUMBER(14,2) Gross dollar balance of transactions with an origination date > as-of-date.

NEW_NET_BALANCE NUMBER(14,2) Balance - net of participations of transactions with an origination date > as-of-date.

MARKET_VALUE NUMBER(14,2) Simulation present value of all future principal and interest cash flows.

DURATION NUMBER(14) A calculated term measuring the price sensitivity of instrument to changes in interest rates.

CONVEXITY NUMBER(14,4) Calculated convexity of instrument. Rate of change of duration with respect to changes in interest rates.

CUR_TRANSFER_RATE NUMBER(14,2) Current transfer rate

START_DATE_INDEX NOT NULL NUMBER(5) Start date index. This column references the dgap_scenario_num column in the OFSA_RESULT_BUCKET table.

Index_Name Index TypeIndex Column Sequence Column_Name

OFSA_CONSOLIDATED_MASTER

Unique 1 RESULT_SYS_ID

OFSA_CONSOLIDATED_MASTER

Unique 2 RESULT_TYPE_CD

Column Name Null? Type Description

Page 164: fe115trm

FDM Database Tables

2-82 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_CONSOLIDATED_MASTER

Unique 3 SCENARIO_NUM

OFSA_CONSOLIDATED_MASTER

Unique 4 ORG_UNIT_ID

OFSA_CONSOLIDATED_MASTER

Unique 5 GL_ACCOUNT_ID

OFSA_CONSOLIDATED_MASTER

Unique 6 COMMON_COA_ID

OFSA_CONSOLIDATED_MASTER

Unique 7 START_DATE_INDEX

OFSA_CONSOLIDATED_MASTER

Non-unique 1 ORG_UNIT_ID

OFSA_CONSOLIDATED_MASTER_1

Non-unique 2 RESULT_SYS_ID

OFSA_CONSOLIDATED_MASTER_1

Non-unique 3 SCENARIO_NUM

OFSA_CONSOLIDATED_MASTER_2

Non-unique 1 GL_ACCOUNT_ID

OFSA_CONSOLIDATED_MASTER_2

Non-unique 2 RESULT_SYS_ID

OFSA_CONSOLIDATED_MASTER_2

Non-unique 3 SCENARIO_NUM

OFSA_CONSOLIDATED_MASTER_3

Non-unique 1 COMMON_COA_ID

Index_Name Index TypeIndex Column Sequence Column_Name

Page 165: fe115trm

FDM Database Tables

Detail Design 2-83

Oracle Proprietary, Confidential Information - Use Restricted by Contract

SequencesNot applicable.

Column Code Values

Result_Type_CDThe result_type_cd column has the following codes:

OFSA_CONSOLIDATED_MASTER_3

Non-unique 2 RESULT_SYS_ID

OFSA_CONSOLIDATED_MASTER_3

Non-unique 3 SCENARIO_NUM

Code Description

0 Current Position

1 New Business

-1 Combined Results

2 Formula Leaves Data

Index_Name Index TypeIndex Column Sequence Column_Name

Page 166: fe115trm

FDM Database Tables

2-84 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_CONSTRUCT_ACTIONSThis table provides the list of Construct and Action combinations available for OFSA operational tasks. These combinations make up the list of “Functions” for the OFSA applications. For example, the Construct “Allocation ID” and the Action “Run” are a function within Performance Analyzer. Only the combinations listed in OFSA_CONSTRUCT_ACTIONS are assignable to users within FDM Administration.

The list of entries for the OFSA_CONSTRUCT_ACTIONS table are seeded by the FDM Database Upgrade and Database Creation Processes and are protected from modification.

Columns

Indexes

SequencesNot applicable.

Column Code Values

Action_CDRefer to the OFSA_ACTIONS table in this reference manual for information regarding the list of Action Codes.

Column Name Null? Type Description

ACTION_CD NOT NULL

NUMBER(5) The code value identifying the Action.

CONSTRUCT_CD NOT NULL

NUMBER(5) The code value identifying the Construct.

Index_Name Index TypeIndex Column Sequence Column_Name

CONSTRUCT_ACTIONS_PK

Unique 1 ACTION_CD

CONSTRUCT_ACTIONS_PK

Unique 2 CONSTRUCT_CD

Page 167: fe115trm

FDM Database Tables

Detail Design 2-85

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Construct_CDRefer to the OFSA_CONSTRUCTS table in this reference manual for information regarding the list of Construct Codes.

Page 168: fe115trm

FDM Database Tables

2-86 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_CONSTRUCTSThis table provides the list of Constructs available within OFSA Applications. Constructs represent processes, business rules or other application interfaces used within OFSA applications. For example, both the “Allocation ID” and “Server Status Window” within Performance Analyzer are Constructs. The combination of a Construct from OFSA_CONSTRUCTS and an Action from OFSA_ACTIONS form a “function”, for which privileges may be granted within FDM Administration. This constitutes a component of application security.

The list of entries for the OFSA_CONSTRUCTS table are seeded by the FDM Database Upgrade and Database Creation Processes and are protected from modification.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

CONSTRUCT_CD NOT NULL

NUMBER(5) The code value identifying the Construct.

CONSTRUCT_NAME NOT NULL

NUMBER(5) Name of the Construct.

Index_Name Index TypeIndex Column Sequence Column_Name

CONSTRUCTS_PK

Unique 1 CONSTRUCT_CD

Page 169: fe115trm

FDM Database Tables

Detail Design 2-87

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_CURRENCIESThe OFSA_CURRENCIES table stores information about the Currency Codes available for the FDM database. This table provides the list of available Currency Codes and also identifies how the Currencies are employed within the current FDM database. The OFSA_CURRENCIES table is referenced by all monetary based OFSA application operations, including

■ Performance Analyzer Allocation processing

■ FDM Rate Manager Exchange Rate calculations

■ Risk Manager Processing

The FDM Database Creation and Database Upgrade processes seed OFSA_CURRENCIES with the list of ISO Currency Codes available at the time of release. Two additional Currency Codes, categorized as pseudo currencies, are provided for special OFSA application processing requirements. FDM also enable users to create their own Currency Codes using FDM Rate Manager.

Currency Codes are created and maintained using the FDM Rate Manager application.

Psuedo CurrenciesFDM 4.5 includes two pseudo Currency Codes used for specialized purposes within Performance Analyzer and Risk Manager:

000 - “Default Currency”Risk Manager assumption IDs created with the “Default” ISO Currency Code apply to all ISO Currency Codes active in the database. This eliminates the need for the user to specify the assumption detail for each active currency in the database.

002 - “Default Non-Currency Basis”This Currency Code is used in the LEDGER_STAT table to indicate Statistical and non-monetary based rows. This designates rows that are “non-currency based”, meaning that exchange rate and other monetary based conversions do not apply for Performance Analyzer processing.

Page 170: fe115trm

FDM Database Tables

2-88 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Columns

Column Name Null? Type Description

ISO_CURRENCY_CD NOT NULL

VARCHAR2(3) The code value identifying the Currency.

USER_DEF_FLG NOT NULL

NUMBER(1) A ’0’ designates that the Currency Code is protected from update. A ’1’ designates that the Currency Code is editable by users. Only the psuedo Currency Codes (’000’ and ’002’) are protected from update by the designation of USER_DEF_FLG=0. All other Currency Codes, including those seeded by the FDM Database Upgrade and Database Creation processes, are marked as USER_DEF_FLG=1.

CURRENCY_STATUS_CD

NOT NULL

NUMBER(1) A ’0’ designates that the Currency Code is a psuedo Currency. A ’1’ designates that the Currency Code is “Active”. Active Currency Codes are available for OFSA Applications. A ’2’ designates that the Currency Code is ’Inactive’ and not currently used. Currencies can be activated/de-activated using FDM Rate Manager.

REPORTING_FLG NOT NULL

NUMBER(1) A ’1’ designates that the Currency Code is available for use as a Reporting Currency within Risk Manager and FDM Rate Manager. FDM Rate Manager calculates exchange rate conversions only for Currency Codes identified with REPORTING_FLG=1. A ’0’ designates that the Currency Code is not used for reporting.

REFERENCE_IRC NUMBER(1) This column designates the primary indicator for interest rate levels in that currency. For example, the risk-free curve in the U.S. is the U.S. Treasury curve. The Treasury curve could therefore be tied to the ’USD’ ISO Currency Code.

OFSA_IRCS stores the list of valid values for this column.

Page 171: fe115trm

FDM Database Tables

Detail Design 2-89

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Column Code Values

Currency_Status_CDThe currency_status_cd column has the following codes:

Index_Name Index TypeIndex Column Sequence Column_Name

CURRENCIES_PK

Unique 1 ISO_CURRENCY_CD

Code Description

0 Psuedo

1 Active

2 Inactive

Page 172: fe115trm

FDM Database Tables

2-90 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_CURRENCY_MLSThe OFSA_CURRENCY_MLS table stores the translatable display names for the Currency Codes in OFSA_CURRENCIES.

The FDM Database Creation and Database Upgrade processes seed OFSA_CURRENCY_MLS with the display names for ISO Currency Codes available at the time of release. Two additional Currency Codes, categorized as psuedo currencies, are provided for special OFSA application processing requirements. FDM also enables users to create their own Currency Codes using FDM Rate Manager.

Currency Codes are created and maintained using the FDM Rate Manager application.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

MLS_CD NOT NULL

VARCHAR2(3) Identifies the language for the Currency name. Links to OFSA_MLS.

ISO_CURRENCY_CD NOT NULL

VARCHAR2(3) Identifies the Currency Code from OFSA_CURRENCIES for which the name applies.

CURRENCY_NAME NOT NULL

VARCHAR2(40) The display name for the Currency Code.

Index_Name Index TypeIndex Column Sequence Column_Name

CURRENCY_MLS_PK

Unique 1 MLS_CD

CURRENCY_MLS_PK

Unique 2 ISO_CURRENCY_CD

Page 173: fe115trm

FDM Database Tables

Detail Design 2-91

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_DATA_IDENTITYThe OFSA_DATA_IDENTITY table records information about processes that have performed data manipulation functions on the database. When processes such Allocations or Ledger Stat Loading are invoked, information about that process is recorded in the OFSA_DATA_IDENTITY table.

The Undo screen in the Process menu in Oracle Performance Analyzer enables users to view identity codes logged for the database. Identity codes may be selected for Undo from this interface.

Page 174: fe115trm

FDM Database Tables

2-92 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Columns

Column Name Null? Type Description

IDENTITY_CODE NOT NULL NUMBER(10) Specifies the sequence number that was generated to identify a process that manipulated data in the instrument or LEDGER_STAT tables. One row is inserted per process. The same value is also inserted/updated in a corresponding column in the affected tables.

AS_OF_DATE NOT NULL DATE Identifies the time period of the source data. If the source data is in an Instrument table, then rows with matching as_of_date values in that table are selected. If the source data is in the LEDGER_STAT table, then rows in that table with year_s and month_nn values that match the MON and YYYY substrings of the as_of_date are selected.

EVENT_DATE DATE Identifies the date when the process was executed, in DD-MON-YYYY format.

EVENT_TIME VARCHAR2(8) Identifies the time of day when the process was executed, in HH:MM:SS format.

USER_NAME VARCHAR2(15)

Identifies the login name of the user that invoked the process.

SOURCE_TYPE NUMBER(5) Identifies the data source. See the Column Code Values sub-section below.

TABLE_NAME NOT NULL VARCHAR2(30)

Identifies the table affected by the process.

DESCRIPTION VARCHAR2(80)

Indicates the identifier of the process that was run. In the case of an ’Allocation’ process, it is the sys_id_num of the Allocation ID.

NUMBER_OF_ENTRIES NUMBER(10) Identifies the number of rows in TABLE_NAME that were inserted or updated.

COLUMN_NAME NOT NULL VARCHAR(30) Identifies the column in TABLE_NAME that was updated. If multiple columns were updated or row(s) were inserted, this is designated with an asterisk (*).

Page 175: fe115trm

FDM Database Tables

Detail Design 2-93

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Column Code Values

Source_TypeThe source_type column of the OFSA_DATA_IDENTITY table has the following reserved codes:

*Source_Type 605 is not used in FDM version 4.5

Index_NameIndex Type

Index Column Sequence Column_Name

DATA_IDENTITY Unique 1 IDENTITY_CODE

DATA_IDENTITY Unique 2 AS_OF_DATE

Code Description

0 Download

15 Undefined

100 Oracle Performance Analyzer Allocation ID

202 Oracle Balance & Control Aggregation ID

304 Oracle Transfer Pricing Process ID

605 Oracle Budgeting & Planning Process ID*

Page 176: fe115trm

FDM Database Tables

2-94 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_DATA_TYPE_DSCThe OFSA_DATA_TYPE_DSC table stores the list of FDM Data Types. FDM Data Types designate how registered columns are used within the Financial Data Manager database and the OFSA applications. The FDM Data Type is a further refinement of the Oracle RDBMS Data Type specified for the column at object creation.

FDM Data Types identify the primary purpose for a column within the FDM database. For example, both the ISO_CURRENCY_CD and CUR_BOOK_BAL columns in the DEPOSITS table are designated as the Oracle RDBMS Data Type NUMBER. However, the use of both columns within FDM is completely different. This use is identified by the FDM Data Type. The ISO_CURRENCY_CD column is designated as FDM Data Type “CODE”. This designation means that the OFSA applications provide ISO Currency Code List of Values for situations requiring user input. In contrast to this, the CUR_BOOK_BAL column is designated as FDM Data Type “BALANCE” because it stores monetary values. Such columns are used in currency based calculations within Performance Analyzer and other OFSA applications.

FDM requires that each registered column be assigned a single FDM Data Type. The FDM Database Creation and Database Upgrade processes assign FDM Data Types for all objects registered by those processes. For user-defined tables and views, the administrator assigns the FDM Data Type during Object Registration.

Column Property assignments represent a more granular designation of the ways a column can be used within FDM. Refer to the “OFSA_COLUMN_PROPERTIES section of this reference manual for more information.

The following table lists the valid FDM Data Types:

FDM Data Type Code FDM Data Type

1 BALANCE

2 CHAR

3 CODE

4 CODE_NUM

5 DATE

6 DESCRIPTION

7 LONG RAW

Page 177: fe115trm

FDM Database Tables

Detail Design 2-95

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Deciding What FDM Data Type to UseThe majority of the available FDM Data Types are actually applicable only to FDM internal (Reserved) objects. Because the Object Registration Wizard in FDM Administration provides intelligent defaults, you rarely need to manually specify the FDM Data Type during object registration. However, in the event that this is necessary, generally users are concerned only with the following:

8 FLAG

9 FREQ

10 LEAF

11 IDENTITY

12 ID_NUMBER

13 MULT

14 N/A

15 NUMBER

16 NUMERIC

17 RATE

18 SWITCH

19 SYS_ID_NUM

20 TERM

21 VARCHAR2

22 UNDEFINED

23 CHAR_RANGE

FDM Data Type Code FDM Data Type

Page 178: fe115trm

FDM Database Tables

2-96 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

FDM Data Type When to use

BALANCE Assign this to columns storing monetary values.

CODE Assign this to columns for which corresponding names and descriptions are stored in another table. Code columns can be either numeric or alphanumeric. For example, the ACCRUAL_BASIS_CD column is assigned to the ’CODE’ FDM Data Type because it is a code for which the names and descriptions are stored in OFSA_ACCRUAL_BASIS_CD and OFSA_ACCRUAL_BASIS_MLS.

CODE_NUM Assign this to columns storing a code value for which there are no corresponding names or descriptions.

DATE Assign this to columns with an Oracle RDBMS Data Type of ’DATE’.

DESCRIPTION Assign this to VARCHAR2 columns storing a long description.

NUMBER Assign this to columns storing number values that are not a CODE, CODE_NUM, RATE or BALANCE column. Use this FDM Data Type instead of NUMERIC. The NUMERIC FDM Data Type is no longer used and remains only for legacy data.

RATE Assign this to columns storing both standard rates and weighted rates.

VARCHAR2 Assign this to columns storing alphanumeric values that are not CODE, CODE_NUM or DESCRIPTION.

Page 179: fe115trm

FDM Database Tables

Detail Design 2-97

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Code ValuesNot applicable.

Column Name Null? Type Description

OFSA_DATA_TYPE_CD NOT NULL NUMBER(5) The code value identifying the FDM Data Type Code.

OFSA_DATA_TYPE NOT NULL VARCHAR2(30) Name of the FDM Data Type.

DESCRIPTION VARCHAR2(255) Long description of the FDM Data Type.

Index_NameIndex Type

Index Column Sequence Column_Name

DATA_TYPE_PK Unique 1 OFSA_DATA_TYPE_CD

Page 180: fe115trm

FDM Database Tables

2-98 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_DB_INFOThe OFSA_DB_INFO table provides information about the FDM database instance. This table explicitly identifies the FDM Schema Owner, as well as other global parameters applicable to the entire FDM database instance.

The FDM Database Creation process populates this table with a single row for the database instance. With the exception of the Multicurrency Enablement flag, all of the columns in this table are protected from update.

Column Name Null? Type Description

OWNER NOT NULL VARCHAR2(30) Identifies the FDM Schema Owner. The value in this column must be the same as the owner of all of the FDM Reserved tables.

CREATION_DATE NOT NULL VARCHAR2(30) Identifies the date of creation of the FDM schema.

CHARACTER_SET VARCHAR2(255) Identifies the character set in which the database was originally created. This column is not currently used.

FUNCTIONAL_CURRENCY_CD

NOT NULL VARCHAR2(3) Functional Currency is defined as “the currency of the primary economic environment in which an entity conducts its business”. In a single currency environment, this is simply the currency code of the financial organization. In a multicurrency environment, this is the currency used by the parent organization for financial statement reporting.

The Functional Currency is specified during the FDM Database Creation and Database Upgrade processes. FDM includes a utility script for changing the Functional Currency for your database. Refer to the Oracle Financial Services Installation and Configuration Guide for more information on this utility.

MULTI_CURRENCY_ENABLED_FLG

NOT NULL NUMBER(1) This column specifies whether multicurrency calculations are enabled for the database. A ’1’ indicates that multicurrency is enabled. Any other value indicates that muli-currency is not enabled. This flag affects calculations in the OFSA applications.

Page 181: fe115trm

FDM Database Tables

Detail Design 2-99

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Code Values

Functional_Currency_CdThe list of Functional Currency Codes is stored in the OFSA_CURRENCIES table. This list is not reprinted in this reference manual.

Index_NameIndex Type

Index Column Sequence Column_Name

DB_INFO_PK Unique 1 OWNER

Page 182: fe115trm

FDM Database Tables

2-100 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_DB_OBJ_PRIV_ASSIGNMENTThe OFSA_DB_OBJ_PRIV_ASSIGNMENT table stores a record of database object privilege assignments granted from the FDM Administration application. Privileges recorded in this table are automatically re-granted within the Oracle RDBMS when the FDM Grant All procedure is executed.

Column Name Null? Type Description

RECIPIENT_NAME NOT NULL VARCHAR2(30) Identifies the FDM registered role name to which the privilege is assigned.

OWNER NOT NULL VARCHAR2(30) Identifies the owner of the object on which the privilege applies.

OBJECT_NAME NOT_NULL VARCHAR2(30) Identifies the object on which the privilege applies.

DB_OBJECT_PRIVILEGE

NOT NULL VARCHAR2(30) Identifies the privilege assigned to the recipient_name. ’SELECT’, ’INSERT’, ’UPDATE’, ’DELETE’ and ’EXECUTE’ are acceptable object privileges.

PROTECTED_FLG NOT NULL NUMBER(1) A ’1’ designates that the row is seeded by the FDM Database Creation and FDM Database Upgrade processes and is protected from modification. Any other value designates a user-defined row.

The FDM Administration application prohibits modification of protected rows.

Page 183: fe115trm

FDM Database Tables

Detail Design 2-101

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Code ValuesNot applicable.

Index_NameIndex Type

Index Column Sequence Column_Name

DB_OBJ_PRIV_ASSIGNMENT_PK

Unique 1 OBJECT_NAME

DB_OBJ_PRIV_ASSIGNMENT_PK

Unique 2 DB_OBJECT_PRIVILEGE

DB_OBJ_PRIV_ASSIGNMENT_PK

Unique 3 RECIPIENT_NAME

DB_OBJ_PRIV_ASSIGNMENT_PK

Unique 4 OWNER

Page 184: fe115trm

FDM Database Tables

2-102 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_DB_SYS_PRIV_ASSIGNMENTThe OFSA_DB_SYS_PRIV_ASSIGNMENT table stores a record of database system privilege assignments granted from the FDM Administration application. Privileges recorded in this table are automatically re-granted within the Oracle RDBMS when the FDM Grant All procedure is executed.

Indexes

SequencesNot applicable.

Code ValuesNot applicable.

Column Name Null? Type Description

RECIPIENT_NAME NOT NULL VARCHAR2(30) Identifies the FDM registered role name to which the privilege is assigned.

DB_SYSTEM_PRIVILEGE

NOT NULL VARCHAR2(30) Identifies the system privilege assigned to the recipient_name. The list of acceptable system privileges is stored in OFSA_SYSTEM_PRIVILEGE_MAP.

PROTECTED_FLG NOT NULL NUMBER(1) A ’1’ designates that the row is seeded by the FDM Database Creation and FDM Database Upgrade processes and is protected from modification. Any other value designates a user-defined row.

The FDM Administration application prohibits modification of protected rows.

Index_NameIndex Type

Index Column Sequence Column_Name

DB_SYS_PRIV_ASSIGNMENT_PK

Unique 1 RECIPIENT_NAME

DB_SYS_PRIV_ASSIGNMENT_PK

Unique 2 DB_SYS_PRIVILEGE

Page 185: fe115trm

FDM Database Tables

Detail Design 2-103

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_DESCRIPTION_TABLESOFSA_DESCRIPTION_TABLES stores a mapping of CODE columns that exist on Client Data Objects (such as Instrument tables) to the table or view that provides names and descriptions for those CODE columns. Description Table Mapping provides the means to designate the data structures where descriptions are stored for code value columns. The mapping of a Code column name to a data structure storing descriptions for that code is then accessed by the OFSA applications for reporting and user-interface operations.

For example, the DEPOSITS table has a code column named ACCRUAL_BASIS_CD. This column stores values such as ’1’, ’2, or ’3’. The real world descriptions for these code values are ’30/360’, ’Actual/360’ and ’Actual/Actual’. For the user to be able to view these descriptions in a report, or within the Data Filter ID, for example, the ACCRUAL_BASIS_CD column must be mapped to the appropriate table or view from which these descriptions are retrieved.

The FDM Database Creation and Database Upgrade processes seed OFSA_DESCRIPTION_TABLES with mappings for tables and views created by these processes. You can create additional mappings using the Description Table Mapping Wizard in the FDM Administration application.

Column Name Null? Type Description

TABLE_NAME NOT NULL VARCHAR2(30) Identifies the FDM registered table or view name on which the CODE column exists (such as the Instrument table).

COLUMN_NAME NOT NULL VARCHAR2(30) Identifies the CODE column on the table or view for which the mapping applies.

OWNER NOT NULL VARCHAR2(30) Identifies the owner of the table or view name.

DESCRIPTION_TABLE_NAME

NOT NULL VARCHAR2(30) Designates the table or view from which the code descriptions are retrieved. In general, this is a view name ’_DSC’.

DESCRIPTION_JOIN_COLUMN_NAME

NOT NULL VARCHAR2(30) Designates the name of the column that exists on the Description table or view linking the CODE column to the descriptions. Normally, the name of this column is the same name as the CODE column_name. However, there are some cases where the name of the CODE column on the Description table or view is not the same as the name of the column on the Instrument (or client data) object.

Page 186: fe115trm

FDM Database Tables

2-104 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Code ValuesNot applicable.

DESCRIPTION_TABLE_OWNER

NOT NULL VARCHAR2(30) Designates the owner of the Description table or view.

VALUES_COLUMN_NAME

NOT NULL VARCHAR2(30) Designates the column name in the Description table or view that stores the code descriptions.

Index_NameIndex Type

Index Column Sequence Column_Name

DESCRIPTION_TABLES_PK

Unique 1 TABLE_NAME

DESCRIPTION_TABLES_PK

Unique 2 COLUMN_NAME

DESCRIPTION_TABLES_PK

Unique 3 OWNER

Column Name Null? Type Description

Page 187: fe115trm

FDM Database Tables

Detail Design 2-105

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_DETAIL_ELEM_BThe OFSA_DETAIL_ELEM_B table stores detailed information for financial element leaf values. Financial element leaf values are defined in OFSA_LEAF_DESC. The leaf_num_id in the OFSA_LEAF_DESC table assigned to the financial element leaf column on installation of the FDM database is ’0’. For each record in the OFSA_DETAIL_ELEM table, there should exist a corresponding record in the OFSA_LEAF_DESC for leaf_num_id = 0.

OFSA_DETAIL_ELEM is accessed by processes requiring detailed information about financial elements, such as the following:

■ Account_type is accessed to determine the sign (+,-) for Allocation output to LEDGER_STAT.

■ Aggregate_method is accessed to determine how YTD values are to be calculated in LEDGER_STAT.

■ Column_name is accessed by the Transformation ID to register the output columns in OFSA_TAB_COLUMNS.

Columns

Column Name Null? Type Description

LEAF_NODE NOT NULL NUMBER(14) Designates the leaf value. The value for this column is a leaf value only - it cannot be a node value

AGGREGATE_METHOD NUMBER(5) Designates how balances for the leaf are summed for year-to-date calculations. Aggregate_method is accessed by the following processes in order to calculate year-to-date values for the YTD columns in the LEDGER_STAT table:

■ LEDGER_STAT Load

■ Performance Analyzer ’Allocation’ processing

Aggregate method codes and the corresponding descriptions are listed below in the Column Code Values sub-section.

Page 188: fe115trm

FDM Database Tables

2-106 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

ACCOUNT_TYPE NUMBER(5) Designates the account classification for the financial element. The account type is accessed by Oracle Performance Analyzer Allocations in the determination of the sign (+, -) of allocation results.

Account type codes and the corresponding descriptions are listed below in the Column Code Values sub-section.

COLUMN_NAME VARCHAR2(30) Designates the column name of output tables created by the Transformation ID for the specified Financial Element. The Transformation ID pivots tables causing columns to be created to store values for Financial Element IDs. In these cases, the column_name field in OFSA_DETAIL_ELEM is used to specify the column name for the Transformation ID output table.

WEIGHTING_FE NUMBER(14) Designates the financial element used to weight rate-related financial elements. This financial element is used during the Transformation ID process to calculate values for rates.

Index_NameIndex Type

Index Column Sequence Column_Name

DETAIL_ELEM Unique 1 LEAF_NODE

Column Name Null? Type Description

Page 189: fe115trm

FDM Database Tables

Detail Design 2-107

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Column Code Values

Aggregate_methodThe aggregate_method column of DETAIL_ELEM has the following codes:

Account_typeThe account_type column of DETAIL_ELEM has the following codes:

Code Description

0 None

100 Add

105 Average

110 Average by Days Weighted

115 Last

120 Beginning

Code Description

0 None

-9980 <Use Detail Leaves>

100 Earning Assets

110 Off Balance Sheet Receivables

150 Non-interest Income

200 Other Asset

300 Interest-bearing Liabilities

310 Off Balance Sheet Payable

350 Non-interest Expense

375 Taxes

400 Other Liabilities

500 Equity

600 Dividends

610 Interest Income (Unallocated)

620 Interest Expense (Unallocated)

700 Statistical

Page 190: fe115trm

FDM Database Tables

2-108 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_DETAIL_ELEM_MLSThe OFSA_DETAIL_ELEM_MLS table stores the translatable display names for Financial Elements. These display names are accessed by the Transformation ID when creating Transformation output tables. Because the Transformation ID converts rows (Financial Elements) to columns in the output table, FDM requires a display name in OFSA_TAB_COLUMNS_MLS for the new columns for each language installed in the FDM database. For each Financial Element value, the Transformation ID accesses OFSA_DETAIL_ELEM_MLS for this display name.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

MLS_CD NOT NULL VARCHAR2(3) Identifies the language for which the Display Name applies.

LEAF_NODE NOT NULL NUMBER(14) Designates the leaf value. The value for this column is a leaf value only - it cannot be a node value.

DISPLAY_NAME VARCHAR2(40) Designates the display name for the column specified in the column_name field above. When the Transformation ID output table is created, the display_name field in OFSA_TAB_COLUMNS_MLS is populated with this value, for each column created.

Index_NameIndex Type

Index Column Sequence Column_Name

DETAIL_ELEM_MLS_PK

Unique 1 MLS_CD

DETAIL_ELEM_MLS_PK

Unique 2 LEAF_NODE

Page 191: fe115trm

FDM Database Tables

Detail Design 2-109

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_DETAIL_GL_ACCOUNT_IDThe OFSA_DETAIL_GL_ACCOUNT_ID table identifies the Instrument table_name location for each GL_ACCOUNT_ID value. The FDM reconciliation reports then use this relationship to perform reconciliation between aggregate data in LEDGER_STAT and detail account data in the instrument tables. The reconciliation reports match data in LEDGER_STAT with Instrument table data based upon knowing which instrument table stores data for each GL_ACCOUNT_ID value in LEDGER_STAT.

Follow the instructions detailed in the Oracle Financial Data Manager Reporting Administration Guide, Release 4.5, for information on how to populate and use the OFSA_DETAIL_GL_ACCOUNT_ID table for reconciliation reporting.

Indexes

SequencesNot applicable.

Code ValuesNot applicable.

Column Name Null? Type Description

GL_ACCOUNT_ID NOT NULL NUMBER(14) Identifies the GL_ACCOUNT_ID value.

TABLE_NAME NOT NULL VARCHAR2(30) Identifies the Instrument table_name where detail account records for the specified GL_ACCOUNT_ID are stored.

Index_NameIndex Type

Index Column Sequence Column_Name

DETAIL_GL_ACCOUNT_ID_PK

Unique 1 GL_ACCOUNT_ID

DETAIL_GL_ACCOUNT_ID_PK

Unique 2 TABLE_NAME

Page 192: fe115trm

FDM Database Tables

2-110 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_DETAIL_LEAVESThe OFSA_DETAIL_LEAVES table stores detailed information for common chart of account (common_coa_id) leaf values. Common chart of account (COA) leaf values are defined in OFSA_LEAF_DESC. The leaf_num_id in the OFSA_LEAF_DESC table assigned to the COMMON_COA_ID leaf column on installing the FDM database is ’3’. For each record in the OFSA_DETAIL_ELEM table, there should exist a corresponding record in the OFSA_LEAF_DESC for leaf_num_id = 3.

OFSA_DETAIL_LEAVES is accessed by processes requiring detailed information about common COAs, such as the following:

■ Account_type is accessed to determine the sign (+,-) for Allocation output to LEDGER_STAT (in conjunction with information in OFSA_DETAIL_LEAVES for the financial element).

■ Accrual_basis_cd is accessed by accrual basis report macros in the OFSA Report ID.

■ O_coa_id and O_org_id are accessed by the Ledger Load ’Create Offset Records’ feature.

Columns

Column Name Null? Type Description

LEAF_NODE NOT NULL NUMBER(14) Designates the leaf value. The value for this column is a leaf value only - it cannot be a node value

ACCOUNT_TYPE NUMBER(5) Designates the account classification for the common COA. In cases where the financial element account type is set to Use Detail Leaves, the account type in OFSA_DETAIL_LEAVES is accessed by Oracle Performance Analyzer Allocations in the determination of the sign (+, -) of allocation results. In these cases the Allocation retrieves the account type from OFSA_DETAIL_LEAVES for the common COA of the record being processed.

ACCRUAL_BASIS_CD NUMBER(5) Designates the accrual basis used for the Common COA. Several Report ID macros access the accrual_basis_cd based on the Common COA of the record being processed. Accrual basis codes and the corresponding descriptions are listed below in the Column Code Values sub-section.

TAX_RATE NUMBER(8,4) Not currently used.

Page 193: fe115trm

FDM Database Tables

Detail Design 2-111

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Column Code Values

Account_typeThe account_type column of OFSA_DETAIL_LEAVES has the following codes:

O_COA_ID NUMBER(14) Specifies the Offset Common Chart of Accounts ID. This column must be populated with a valid common COA ID leaf value. The o_coa_id column is accessed by the ’Ledger Load’ process to output offset records in LEDGER_STAT. Offset records are created only when the ’Create Offset Records’ feature of the ’Ledger Load’ process is activated.

O_ORG_ID NUMBER(14) Specifies the Offset Organizational Unit ID. This column must be populated with a valid organizational unit ID leaf value. The o_org_id column is accessed by the ’Ledger Load’ process to output offset records in LEDGER_STAT. Offset records are created only when the ’Create Offset Records’ feature of the ’Ledger Load’ process is activated.

Index_NameIndex Type

Index Column Sequence Column_Name

DETAIL_LEAVES Unique 1 LEAF_NODE

Code Description

100 Earning Asset

110 Off B/S Rcvbl

150 Non Int Income

200 Other Asset

Column Name Null? Type Description

Page 194: fe115trm

FDM Database Tables

2-112 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Accrual_Basis_CDThe ACCRUAL_BASIS_CD column of OFSA_DETAIL_LEAVES has the following codes:

300 Int Bearing Liability

310 Off B/S Payable

350 Non Int Expense

375 Taxes

400 Other Liabs

500 Equity

600 Dividends

610 Interest Income (Unallocated)

620 Interest Expense (Unallocated)

700 Statistical

Code Description

0 None

1 30/360

2 Actual/360

3 Actual/Actual

4 30/365

5 30/Actual

6 Actual/365

Code Description

Page 195: fe115trm

FDM Database Tables

Detail Design 2-113

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_DETAIL_ORG_UNITThe OFSA_DETAIL_ORG_UNIT table stores detailed information for Organizational Unit (org_unit_id) leaf values. Organizational Unit leaf values are defined in OFSA_LEAF_DESC. The leaf_num_id in the OFSA_LEAF_DESC table assigned to the Organizational Unit leaf column during installation of the FDM database is ’1’. For each record in the OFSA_DETAIL_ORG_UNIT table, there should exist a corresponding record in the OFSA_LEAF_DESC for leaf_num_id = 1.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

LEAF_NODE NOT NULL NUMBER(14) Designates the leaf value. The value for this column is a leaf value only - it cannot be a node value

O_ORG_ID NUMBER(14) Not currently used.

Index_Name Index TypeIndex Column Sequence Column_Name

DETAIL_ORG_UNIT Unique 1 LEAF_NODE

Page 196: fe115trm

FDM Database Tables

2-114 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_DETAIL_OTHER_COAThe OFSA_DETAIL_OTHER_COA table stores detailed information for the General Ledger Account leaf column (gl_account_id) and other user-defined leaves. For each record in OFSA_DETAIL_OTHER_COA, there should exist an identifying record in OFSA_LEAF_DESC for the same leaf_num_id and leaf_node combination.

Special Use of DETAIL_OTHER_COA for Risk ManagerWhen processing Risk Manager using a user-defined Product Leaf, the OFSA_DETAIL_OTHER_COA mapping for the product leaf is used to output values for the common_coa_id in the Risk Manager Result tables. For example, if the user has created a new leaf called RM_PRODUCT_ID and uses this leaf column for Risk Manager processing, the value for the common_coa_id field in the results table, (RES_DTL_XXXXXX) is based on the mapping in OFSA_DETAIL_OTHER_COA for the product leaf.

Columns

Column Name Null? Type Description

LEAF_NUM_ID NOT NULL NUMBER(5) Designates the leaf_num_id for the leaf_node. Because values for multiple leaf columns can be stored in OFSA_DETAIL_OTHER_COA, the leaf_num_id is used to identify the leaf column to which the leaf_node belongs.

LEAF_NODE NOT NULL NUMBER(14) Designates the leaf value. The value for this column is a leaf value only - it cannot be a node value

COMMON_COA_ID NOT NULL NUMBER(14) Associates a common chart of accounts leaf value (common_coa_id) with the specified leaf_node. This is used for mapping alternative charts of accounts implemented for OFSA processing to a common COA.

TAX_RATE NUMBER(8,4) Not currently used.

O_COA_ID NUMBER(14) Not currently used.

O_ORG_ID NUMBER(14) Not currently used.

Page 197: fe115trm

FDM Database Tables

Detail Design 2-115

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Index_NameIndex Type

Index Column Sequence Column_Name

DETAIL_OTHER_COA Unique 1 LEAF_NUM_ID

DETAIL_OTHER_COA Unique 2 LEAF_NODE

Page 198: fe115trm

FDM Database Tables

2-116 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_DYN_TAB_CLASS_PRIV_ASSIGNThe OFSA_DYN_TAB_CLASS_PRIV_ASSIGN table stores a record of dynamic object privilege assignments on groups of objects (Table Classifications) granted to users, User Groups and Roles from the FDM Administration application. Privileges recorded in this table are automatically re-granted within the Oracle RDBMS when the FDM Grant All procedure is executed.

Dynamic objects are those tables created by Risk Manager and Transformation output processing. When such tables are created, FDM grants any dynamic privileges for the Table Classification (of the output table being created) recorded in OFSA_DYN_TAB_CLASS_PRIV_ASSIGN to the specified user, User Group or Role.

The FDM Database Creation and Database Upgrade procedures seed dynamic privileges for some of the seeded roles. Administrators assign additional privileges in the FDM Administration application. For more information about dynamic privileges and how they are assigned within FDM Administration, refer to the Oracle Financial Data Manager Administration Guide.

Column Name Null? Type Description

TABLE_CLASSIFICATION_CD

NOT NULL NUMBER(5) Identifies the Table Classification for which the object privilege is assigned. The recipient receives the specified privilege on all objects assigned to the designated Table Classification.

RECIPIENT_NAME NOT NULL VARCHAR2(30) Identifies the user, User Group or Role to which the privilege is assigned.

DB_OBJECT_PRIVILEGE

NOT NULL VARCHAR2(30) Identifies the privilege assigned to the recipient_name. ’SELECT’, ’INSERT’, ’UPDATE’, ’DELETE’ are acceptable dynamic object privileges.

PROTECTED_FLG NOT NULL NUMBER(1) A ’1’ designates that the row is seeded by the FDM Database Creation and FDM Database Upgrade processes and is protected from modification. Any other value designates an editable rows.

The FDM Administration application prohibits modification of protected rows.

Page 199: fe115trm

FDM Database Tables

Detail Design 2-117

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Code Values

Table_Classification_CdRefer to the sections in this reference manual describing OFSA_TABLE_CLASSIFICATION and OFSA_TABLE_CLASSIFICATION_MLS for information regarding FDM Table Classification Codes.

Index_NameIndex Type

Index Column Sequence Column_Name

DYN_TAB_CLASS_PRIV_ASSIGN_PK

Unique 1 TABLE_CLASSIFICATION_CD

DYN_TAB_CLASS_PRIV_ASSIGN_PK

Unique 2 RECIPIENT_NAME

DYN_TAB_CLASS_PRIV_ASSIGN_PK

Unique 3 DB_OBJECT_PRIVILEGE

Page 200: fe115trm

FDM Database Tables

2-118 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_DYN_TABLE_PRIV_ASSIGNThe OFSA_DYN_TABLE_PRIV_ASSIGN table stores a record of dynamic object privilege assignments on individual tables granted to users, User Groups and Roles from the FDM Administration application. Privileges recorded in this table are automatically re-granted within the Oracle RDBMS when the FDM Grant All procedure is executed.

Dynamic objects are those tables created by Risk Manager and Transformation output processing. When such tables are created, FDM grants any dynamic privileges recorded in OFSA_DYN_TAB_CLASS_PRIV_ASSIGN on the output table being created to the specified user, User Group or Role.

For more information about dynamic privileges and how they are assigned within FDM Administration, refer to the Oracle Financial Data Manager Administration Guide.

Column Name Null? Type Description

TABLE_NAME NOT NULL VARCHAR2(30) Identifies the output table for which the object privilege is assigned. The recipient receives the specified privilege on the specified table_name during object creation.

RECIPIENT_NAME NOT NULL VARCHAR2(30) Identifies the user, User Group or Role to which the privilege is assigned.

DB_OBJECT_PRIVILEGE

NOT NULL VARCHAR2(30) Identifies the privilege assigned to the recipient_name. ’SELECT’, ’INSERT’, ’UPDATE’, ’DELETE’ are acceptable dynamic object privileges.

Page 201: fe115trm

FDM Database Tables

Detail Design 2-119

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Code ValuesNot applicable.

Index_NameIndex Type

Index Column Sequence Column_Name

DYN_TABLE_PRIV_ASSIGN_PK

Unique 1 TABLE_NAME

DYN_TABLE_PRIV_ASSIGN_PK

Unique 2 RECIPIENT_NAME

DYN_TABLE_PRIV_ASSIGN_PK

Unique 3 DB_OBJECT_PRIVILEGE

Page 202: fe115trm

FDM Database Tables

2-120 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_EAR_LEAF_AVGThis table is used as a template for the definition of Risk Manager Earnings at Risk processing results tables. This template is used for Product Leaf results averaged across all rate paths. Risk Manager creates these results tables during “Stochastic” processing, and they are named following this format: EAR_LEAF_AVG_XXXXXX. Refer to the EAR_LEAF_AVG_XXXXXX section in this reference manual for more information.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

LEAF_NODE NOT NULL NUMBER(14) Identifies the Product Leaf for the earnings results.

START_DATE NOT NULL DATE Designates the begin date for which the earnings apply.

END_DATE NOT NULL DATE Designates the ending date for which the earnings apply.

EARNINGS NOT NULL NUMBER(14,2) Designates the earnings for the specified date range and product leaf. The Earnings are stated in the currency code designated in OFSA_IDT_RESULT_HEADER for the RM Process Sys ID.

Index_Name Index TypeIndex Column Sequence Column_Name

EAR_LEAF_AVG_PK Unique 1 LEAF_NODE

EAR_LEAF_AVG_PK Unique 2 START_DATE

EAR_LEAF_AVG_PK Unique 3 END_DATE

Page 203: fe115trm

FDM Database Tables

Detail Design 2-121

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_EAR_LEAF_DTLThis table is used as a template for the definition of Risk Manager Earnings at Risk processing results tables. This template is used for Product Leaf results for all rate paths. Risk Manager creates these results tables during “Stochastic” processing where the “Detail Earnings Options - Leaf Earnings” is selected, and they are named following this format: EAR_LEAF_DTL_XXXXXX. Refer to the EAR_LEAF_DTL_XXXXXX section in this reference manual for more information.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

RATE_PATH_NUM NOT NULL NUMBER(5) Identifies the Rate Path of the earnings results.

LEAF_NODE NOT NULL NUMBER(14) Identifies the Product Leaf for the earnings results.

START_DATE NOT NULL DATE Designates the begin date for which the earnings apply.

END_DATE NOT NULL DATE Designates the ending date for which the earnings apply.

EARNINGS NOT NULL NUMBER(14,2) Designates the earnings for the specified date range and product leaf. The Earnings are stated in the currency code designated in OFSA_IDT_RESULT_HEADER for the RM Process Sys ID.

Index_Name Index TypeIndex Column Sequence Column_Name

EAR_LEAF_DTL_PK Unique 1 RATE_PATH_NUM

EAR_LEAF_DTL_PK Unique 2 LEAF_NODE

EAR_LEAF_DTL_PK Unique 3 START_DATE

EAR_LEAF_DTL_PK Unique 4 END_DATE

Page 204: fe115trm

FDM Database Tables

2-122 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_EAR_TOTAL_AVGThis table is used as a template for the definition of Risk Manager Earnings at Risk processing results tables. This template is used for EAR results aggregated by date bucket, averaged across all rate paths. Risk Manager creates these results tables during “Stochastic” processing, and they are named following this format: EAR_TOTAL_AVG_XXXXXX. Refer to the EAR_TOTAL_AVG_XXXXXX section in this reference manual for more information.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

START_DATE NOT NULL DATE Designates the begin date for which the earnings apply.

END_DATE NOT NULL DATE Designates the ending date for which the earnings apply.

NET_INTEREST_INCOME

NOT NULL NUMBER(14,2) Designates the Net Interest Income for the specified date range. The Net Interest Income is stated in the currency code designated in OFSA_IDT_RESULT_HEADER for the RM Process Sys ID.

NET_INCOME NOT NULL NUMBER(14,2) Designates the Net Income for the specified date range. The Net Income is stated in the currency code designated in OFSA_IDT_RESULT_HEADER for the RM Process Sys ID.

Index_Name Index TypeIndex Column Sequence Column_Name

EAR_TOTAL_AVG_PK Unique 1 START_DATE

EAR_TOTAL_AVG_PK Unique 2 END_DATE

Page 205: fe115trm

FDM Database Tables

Detail Design 2-123

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_EAR_TOTAL_DTLThis table is used as a template for the definition of Risk Manager Earnings at Risk processing results tables. This template is used for EAR results aggregated by date bucket, for all rate paths. Risk Manager creates these results tables during “Stochastic” processing where the “Detail Earnings Options - Portfolio Earnings” is selected, and they are named following this format: EAR_TOTAL_DTL_XXXXXX. Refer to the EAR_TOTAL_DTL_XXXXXX section in this reference manual for more information.

Columns

Column Name Null? Type Description

RATE_PATH_NUM NOT NULL NUMBER(5) Identifies the Rate Path of the earnings results.

START_DATE NOT NULL DATE Designates the begin date for which the earnings apply.

END_DATE NOT NULL DATE Designates the ending date for which the earnings apply.

NET_INTEREST_INCOME

NOT NULL NUMBER(14,2) Designates the Net Interest Income for the specified date range and Rate Path. The Net Interest Income is stated in the currency code designated in OFSA_IDT_RESULT_HEADER for the RM Process Sys ID.

NET_INCOME NOT NULL NUMBER(14,2) Designates the Net Income for the specified date range and Rate Path. The Net Income is stated in the currency code designated in OFSA_IDT_RESULT_HEADER for the RM Process Sys ID.

Page 206: fe115trm

FDM Database Tables

2-124 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Index_Name Index TypeIndex Column Sequence Column_Name

EAR_TOTAL_DTL_PK Unique 1 RATE_PATH_NUM

EAR_TOTAL_DTL_PK Unique 3 START_DATE

EAR_TOTAL_DTL_PK Unique 4 END_DATE

Page 207: fe115trm

FDM Database Tables

Detail Design 2-125

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_EXCHANGE_RATE_HISTThe OFSA_EXCHANGE_RATE_HIST table stores the history of standard (floating) exchange rates input from the FDM Rate Manager application.

Column Name Null? Type Description

FROM_CURRENCY_CD NOT NULL VARCHAR2(3) ISO Currency code identifying one side of the exchange rate relationship, in which the rate is expressed in terms of 1 unit of TO_CURRENCY_CD. The OFSA_CURRENCIES table stores the list of valid Currency Code values.

TO_CURRENCY_CD NOT NULL VARCHAR2(3) ISO Currency code identifying the other side of the exchange rate relationship. The rate is expressed in terms of 1 unit of TO_CURRENCY_CD. The OFSA_CURRENCIES table stores the list of valid Currency Code values.

EFFECTIVE_DATE NOT NULL DATE Specifies the date for which the Exchange Rate is valid for the designated currencies.

EXCHANGE_RATE NOT NULL NUMBER(15,9) The Exchange Rate for the designated currencies for the specified date. EXCHANGE_RATE is the rate of conversion from the FROM_CURRENCY_CD to 1 unit of the corresponding TO_CURRENCY_CD.

RATE_DATA_SOURCE_CD

NOT NULL NUMBER(5) Specifies the source of the Exchange rate information. The OFSA_RATE_DATA_SOURCE_DSC view provides the list of valid Rate Data Source codes.

EXCHANGE_RATE_STATUS_CD

NOT NULL NUMBER(5) Specifies whether the Exchange Rate is valid, invalid, or being processed. The OFSA_EXCHANGE_RATE_STATUS_DSC view provides the list of valid Exchange Rate Status codes.

LAST_MODIFIED_DATE

NOT NULL DATE Designates the date that the Exchange Rate was last updated.

LAST_MODIFIED_BY NOT NULL VARCHAR2(30) Identifies the user who last modified the Exchange Rate.

Page 208: fe115trm

FDM Database Tables

2-126 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

INSERT_FLG NUMBER(1) FDM uses this column to control how audit information is recorded in OFSA_EXCHANGE_RATE_HIST_AUDIT. It differentiates those records that have only been inserted from those records that have been updated. A ’1’ indicates that the record has never been updated. Any other value indicates that the record has been modified.

A database trigger on OFSA_EXCHANGE_RATE_HIST sets this value to ’1’ whenever the record is inserted, and ’0’ when the record is updated.

Index_NameIndex Type

Index Column Sequence Column_Name

EXCHANGE_RATE_HIST_PK

Unique 1 FROM_CURRENCY_CD

EXCHANGE_RATE_HIST_PK

Unique 2 TO_CURRENCY_CD

EXCHANGE_RATE_HIST_PK

Unique 3 EFFECTIVE_DATE

Column Name Null? Type Description

Page 209: fe115trm

FDM Database Tables

Detail Design 2-127

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Code Values

Exchange_Rate_Status_CDThe EXCHANGE_RATE_STATUS_CD column has the following code values:

Rate_Data_Source_CDThe RATE_DATA_SOURCE_CD column has the following code values:

Exchange_Rate_Status_CD Description

0 Not Yet Validated

1 Valid

2 Invalid

3 Currently being processed

Rate_Data_Source_CD Description

1 User Input

2 Calculated

3 Bloomberg

4 DRI

5 Reuters

6 Risk Metrics

Page 210: fe115trm

FDM Database Tables

2-128 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_EXCHANGE_RATES_AUDITThe OFSA_EXCHANGE_RATES_AUDIT table stores Forecast Exchange Rates audit information for Risk Manager Scenario Based Process IDs. Risk Manager Process IDs output audit information to this table when run with the “Forecast Rates” Audit Flag checked.

The Oracle Budgeting & Planning “Exchange Rate” Data Movement Routine reads information from OFSA_EXCHANGE_RATES_AUDIT for exchange rate forecasting.

Column Name Null? Type Description

PROCESS_SYS_ID NOT NULL NUMBER(10) Identifies the Risk Manager Process ID. Links to the OFSA_CATALOG_OF_IDS table where ID_TYPE=205.

SCENARIO_NUM NOT NULL NUMBER(10) Identifies the scenario number for which the audit information applies.

FROM_CURRENCY NOT NULL VARCHAR2(3) Identifies the currency being converted (that is, the “source” currency). Links to the ISO_CURRENCY_CD field of the OFSA_CURRENCIES table.

TO_CURRENCY NOT NULL VARCHAR2(3) Identifies the target currency for the conversion. Links to the ISO_CURRENCY_CD field of the OFSA_CURRENCIES table.

BUCKET_NUM NOT NULL NUMBER(5) Designates the bucket number for which the Exchange rate applies.

BUCKET_START_DATE NOT NULL DATE Designates the starting date for the specified bucket number.

BUCKET_END_DATE NOT NULL DATE Designates the ending date for the specified bucket number.

EXCHANGE_RATE NOT NULL NUMBER(15,9) Designates the forecasted exchange rate for the specified bucket number.

PROCESS_DATE NOT NULL DATE Designates the date that the Risk Manager Process was run.

Page 211: fe115trm

FDM Database Tables

Detail Design 2-129

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Code Values

From_Currency_CDRefer to the section describing the OFSA_CURRENCIES table for a list of values for the From_Currency_CD column.

To_Currency_CDRefer to the section describing the OFSA_CURRENCIES table for a list of values for the To_Currency_CD column.

Index_NameIndex Type

Index Column Sequence Column_Name

EXCHANGE_RATES_AUDIT_PK

Unique 1 PROCESS_SYS_ID

EXCHANGE_RATES_AUDIT_PK

Unique 2 SCENARIO_NUM

EXCHANGE_RATES_AUDIT_PK

Unique 3 FROM_CURRENCY

EXCHANGE_RATES_AUDIT_PK

Unique 4 TO_CURRENCY

EXCHANGE_RATES_AUDIT_PK

Unique 5 BUCKET_NUM

Page 212: fe115trm

FDM Database Tables

2-130 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_EXCHNG_RATE_CONV_FORMULAThe FDM Rate Manager Exchange Rate Validation process populates the OFSA_EXCHNG_RATE_CONV_FORMULA table with detail information for exchange rate conversions that require triangulation.

An example of such a conversion is a conversion between U.S. Dollars (USD) and an individual European currency, such as the French Franc (FRF). Because the Franc has a fixed relationship with the Euro (EUR), this conversion requires triangulation, that is, conversion via the Euro.

Column Name Null? Type Description

EXCHANGE_RATE_CONV_FORMULA

NOT NULL NUMBER(15) System generated sequence linking the triangulation details with the EXCHANGE_RATE_CONV_FORMULA column on the OFSA_EXCHNG_RATE_DIRECT_ACCESS table.

CONVERT_FROM_CURRENCY_CD

NOT NULL VARCHAR2(3) Identifies the “source” currency.

CONVERT_TO_CURRENCY_CD

NOT NULL VARCHAR2(3) Identifies the “target” currency.

EXCHANGE_RATE_CONVERSION_ORDER

NOT NULL NUMBER(5) Designates the sequence order of the triangulation conversions. For example, when converting from USD to FRF, the first conversion would be from USD to EUR and the second conversion would be from EUR to FRF.

EXCHANGE_RATE NOT NULL NUMBER(15,9) Designates the exchange rate for the conversion.

EXCHANGE_RATE_CONV_OPERATOR

NOT NULL NUMBER(5) Designates the mathematical operator for the conversion. Value ’0’ means that the balance is divided by the exchange rate. Value ’1’ means that the balance is multiplied by the exchange rate.

EXCHANGE_RATE_CONVERT_TYPE_CD

NOT NULL NUMBER(5) Defines how the exchange rate is obtained (that is, retrieved directly from input, or calculated).

Page 213: fe115trm

FDM Database Tables

Detail Design 2-131

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Code Values

Convert_From_Currency_CDRefer to the section describing the OFSA_CURRENCIES table for a list of values for the Convert_From_Currency_CD column.

Convert_To_Currency_CDRefer to the section describing the OFSA_CURRENCIES table for a list of values for the Convert_To_Currency_CD column.

Exchange_Rate_Convert_Type_CDThe EXCHANGE_RATE_CONVERT_TYPE_CD column has the following code values:

Index_NameIndex Type

Index Column Sequence Column_Name

EXCHNG_RATE_CONV_FORMULA_PK

Unique 1 EXCHANGE_RATE_CONV_FORMULA

EXCHNG_RATE_CONV_FORMULA_PK

Unique 2 EXCHANGE_RATE_CONVERSION_ORDER

Exchange_Rate_Convert_Type_CD Description

1 Direct Fixed

2 Inverse Fixed

3 Direct Floating

4 Inverse Floating

5 Non-Triangulated

Page 214: fe115trm

FDM Database Tables

2-132 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_EXCHNG_RATE_DIRECT_ACCESSThe FDM Rate Manager Exchange Rate Validation process populates the OFSA_EXCHNG_RATE_DIRECT_ACCESS table with information on exchange rate conversions.

Indexes

Column Name Null? Type Description

FROM_CURRENCY_CD NOT NULL VARCHAR2(3) Identifies the currency being converted.

TO_CURRENCY_CD NOT NULL VARCHAR2(3) Identifies the “target” currency.

EFFECTIVE_FROM_DATE

NOT NULL DATE Specifies the first date for which the Exchange Rate is valid.

EFFECTIVE_TO_DATE DATE Specifies the date after which the Exchange Rate is no longer valid. May be null.

EXCHANGE_RATE NOT NULL NUMBER(15,9) Designates the Exchange Rate for the currency conversion.

EXCHANGE_RATE_CONVERT_TYPE_CD

NOT NULL NUMBER(5) Designates the type of conversion.

EXCHANGE_RATE_CONV_FORMULA

NUMBER(5) If triangulation is required, the value in this column links to the value in the EXCHANGE_RATE_CONV_FORMULA column in the OFSA_EXCHNG_RATE_CONV_FORMULA table. If no triangulation is required, this column is null.

Index_NameIndex Type

Index Column Sequence Column_Name

EXCHNG_RATE_DIRECT_ACCESS_PK

Unique 1 FROM_CURRENCY_CD

EXCHNG_RATE_DIRECT_ACCESS_PK

Unique 2 TO_CURRENCY_CD

EXCHNG_RATE_DIRECT_ACCESS_PK

Unique 3 EFFECTIVE_FROM_DATE

Page 215: fe115trm

FDM Database Tables

Detail Design 2-133

Oracle Proprietary, Confidential Information - Use Restricted by Contract

SequencesNot applicable.

Code Values

Exchange_Rate_Convert_Type_CDThe EXCHANGE_RATE_CONVERT_TYPE_CD column has the following code values:

From_Currency_CDRefer to the section describing the OFSA_CURRENCIES table for a list of values for the From_Currency_CD column.

To_Currency_CDRefer to the section describing the OFSA_CURRENCIES table for a list of values for the To_Currency_CD column.

Exchange_Rate_Convert_Type_CD Description

1 Direct Fixed

2 Inverse Fixed

3 Direct Floating

4 Inverse Floating

5 Non-Triangulated

Page 216: fe115trm

FDM Database Tables

2-134 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_FISCAL_YEAR_INFOThe OFSA_FISCAL_YEAR_INFO table designates the duration (in months) and the first month of the fiscal period. Because the fiscal period may be different from the calendar year, the OFSA_FISCAL_YEAR_INFO table has been provided to enable users to designate both the duration of the fiscal period and the start month for the fiscal period.

The fiscal period may be any length of time up to 12 months. Similarly, the start_month must be a value from 1 to 12 (inclusive). Default values of 1 for the start_month and 12 for the fiscal_period are provided with the installation of the FDM database.

The start_month column is used to designate date values for the monthly bucket columns in the LEDGER_STAT table. For example, the LEDGER_STAT table has 12 monthly bucket columns, month_01 through month_12. The start_month value in OFSA_FISCAL_YEAR_INFOOFSA_FISCAL_YEAR_INFO table designates which month of the year is assigned to each column. If the start_month value is 3, then March is assigned to the month_01 column and April is assigned to the month_02 column.

The fiscal_period value is used to designate how YTD values are summed in the LEDGER_STAT YTD columns by the Ledger Load. For example, if the fiscal_period is set to’6’, the YTD values in LEDGER_STAT is re-set in the ytd_07 column (rather than being cumulative from ytd_01 through ytd_12). Reporting operations also accesses OFSA_FISCAL_YEAR_INFO to determine the month columns to be retrieved by the Report ID for the specified dates.

Page 217: fe115trm

FDM Database Tables

Detail Design 2-135

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

START_MONTH NOT NULL NUMBER(5) Designates which month is the first month of the fiscal_period. Must be a value from 1 to 12. A default value of ’1’ is provided in the installation of the database.

FISCAL_PERIOD NOT NULL NUMBER(5) Designates the duration (in months) of the fiscal period. Must be a value from 1 to 12. A default value of ’12’ is provided in the installation of the database.

Note Oracle Budgeting & Planning requires that fiscal_period = 12.

Index_NameIndex Type

Index Column Sequence Column_Name

OFSA_FISCAL_YEAR_INFO

Unique 1 START_MONTH

OFSA_FISCAL_YEAR_INFO

Unique 2 FISCAL_PERIOD

Page 218: fe115trm

FDM Database Tables

2-136 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_FIXED_CURRENCIESThe OFSA_FIXED_CURRENCIES table stores exchange rates for currencies that are in fixed relationships with each other for a given period of time. Such exchange rates are entered manually from FDM Rate Manager.

Column Name Null? Type Description

CHILD_CURRENCY_CD

NOT NULL VARCHAR2(3) ISO Currency code identifying one side of the fixed exchange rate relationship. The rate is expressed in terms of 1 unit of PARENT_CURRENCY_CD. The OFSA_CURRENCIES table stores the list of valid currency code values.

PARENT_CURRENCY_CD

NOT NULL VARCHAR2(3) ISO Currency Code identifying the other side of the fixed exchange rate relationship. The rate is expressed in terms of 1 unit of Parent Currency Code. The OFSA_CURENCIES table stores the list of valid currency code values for this column.

EFFECTIVE_FROM_DATE

NOT NULL DATE Specifies the first date for which the Exchange Rate is valid.

EFFECTIVE_TO_DATE DATE Specifies the date after which the Exchange Rate is no longer valid. May be null.

EXCHANGE_RATE NOT NULL NUMBER(15,9) Designates the Exchange Rate for the currency conversion. EXCHANGE_RATE is the rate of conversion from CHILD_CURRENCY_CD to 1 unit of the corresponding PARENT_CURRENCY_CD.

RATE_DATA_SOURCE_CD

NOT NULL NUMBER(5) Identifies the information source of the Exchange rate.

EXCHANGE_RATE_STATUS_CD

NOT NULL NUMBER(5) Designates the current state of the Exchange Rate.

LAST_MODIFIED_DATE

NOT NULL DATE Specifies the date on which the Exchange rate was last updated.

LAST_MODIFIED_BY NOT NULL VARCHAR2(30) Specifies the user performing the most recent update on the Exchange rate.

Page 219: fe115trm

FDM Database Tables

Detail Design 2-137

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Code Values

Child_Currency_CDRefer to the section describing the OFSA_CURRENCIES table for a list of values for the Child_Currency_CD column.

Exchange_Rate_Status_CDThe EXCHANGE_RATE_STATUS_CD column has the following code values:

INSERT_FLG NOT NULL NUMBER(1) FDM uses this column to control how audit information is recorded in OFSA_FIXED_CURRENCIES_AUDIT. It differentiates those records that have only been inserted from those records that have been updated. A ’1’ indicates that the record has never been updated. Any other value indicates that the record has been modified.

A database trigger on OFSA_FIXED_CURRENCIES sets this value to ’1’ whenever the record is inserted, and ’0’ when the record is updated.

Index_NameIndex Type

Index Column Sequence Column_Name

FIXED_CURRENCIES_PK

Unique 1 CHILD_CURRENCY_CD

FIXED_CURRENCIES_PK

Unique 2 EFFECTIVE_FROM_DATE

Column Name Null? Type Description

Page 220: fe115trm

FDM Database Tables

2-138 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Parent_Currency_CDRefer to the section describing the OFSA_CURRENCIES table for a list of values for the Parent_Currency_CD column.

Rate_Data_Source_CDThe RATE_DATA_SOURCE_CD column has the following code values:

Exchange_Rate_Status_CD Description

0 Not Yet Validated

1 Valid

2 Invalid

3 Currently being processed

Rate_Data_Source_CD Description

1 User Input

2 Calculated

3 Bloomberg

4 DRI

5 Reuters

6 Risk Metrics

Page 221: fe115trm

FDM Database Tables

Detail Design 2-139

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_ID_FOLDER_ACCESSThe OFSA_ID_FOLDER_ACCESS table stores privilege assignments on ID Folders. ID Folders are collections of OFSA IDs. Users require privileges to ID Folders in order to access OFSA IDs within the OFSA applications. ID Folder access privileges are granted to users, User Groups and Security Profiles from within FDM Administration.

Because users can receive Folder access privileges directly, or indirectly from User Groups and Security Profiles, use the OFSA_USER_ID_FOLDER_ASSIGN_V view to query for user Folder access privileges from all sources.

Indexes

SequencesNot applicable.

Code ValuesNot applicable.

Column Name Null? Type Description

RECIPIENT_NAME NOT NULL VARCHAR2(30) Identifies the user, User Group, or Security Profile that is allowed to access the IDs in the specified ID Folder. This column links to OFSA_PRIVILEGE_RECIPIENTS.

FOLDER_NAME NOT NULL VARCHAR2(30) Identifies the ID Folder on which the access privilege is granted.

Index_NameIndex Type

Index Column Sequence Column_Name

ID_FOLDER_ACCESS_PK

Unique 1 RECIPIENT_NAME

ID_FOLDER_ACCESS_PK

Unique 2 FOLDER_NAME

Page 222: fe115trm

FDM Database Tables

2-140 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_ID_FOLDERSThe OFSA_ID_FOLDERS table identifies all of the OFSA ID Folders in the database. ID Folders are designated as either ’Individual’ or ’Group’. ’Individual’ ID Folders are available only to the user with the same name as the ID Folder. IDs stored in such Folders are never available to other users. ’Group’ Folders store IDs that are available to any user with access to the ID Folder, designated in OFSA_ID_FOLDER_ACCESS.

ID Folders are created in FDM Administration.

The FDM Database Upgrade Process and Database Creation Processes seed the following Folders:

ID Folder Description

ALL ID Folder for IDs that can be accessed by any registered user.

OFSA ID Folder for IDs seeded by the FDM Database Creation and Database Upgrade processes.

DELETED_USERS ID Folder for IDs belonging to unregistered users (that is, FDM users that have been unregistered using FDM Administration). Access to this ID Folder should be restricted.

Column Name Null? Type Description

FOLDER_NAME NOT NULL VARCHAR2(30) Identifies the ID Folder.

INDIVIDUAL_FLG NOT NULL NUMBER(1) A ’1’ designates that the ID Folder is an ’Individual’ Folder. ’Individual’ Folders are available only to the user with the same name as the ID Folder. Any other value designates a ’Group’ Folder.

PROTECTED_FLG NOT NULL NUMBER(1) A ’1’ designates that the record is seeded by the FDM Database Upgrade and Database Creation Processes and is protected from modification.

DESCRIPTION VARCHAR2(255) Long description for the ID Folder.

Page 223: fe115trm

FDM Database Tables

Detail Design 2-141

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Code ValuesNot applicable.

Index_NameIndex Type

Index Column Sequence Column_Name

ID_FOLDERS_PK Unique 1 FOLDER_NAME

Page 224: fe115trm

FDM Database Tables

2-142 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_IDT_CONFIGUREThe OFSA_IDT_CONFIGURE table is used to store information about OFSA Configuration IDs. Configuration IDs enable users to specify parameters that are used for their sessions within the OFSA applications. These parameters are used during the creation of new OFSA IDs, reporting and processing.

OFSA_IDT_CONFIGURE is accessed during login to any OFSA product. The FDM Administration application automatically creates a new Configuration ID during User Registration for the newly registered user. Configuration IDs can also be created, deleted and activated in Oracle Transfer Pricing and Oracle Risk Manager. Configuration IDs can be edited (but not created or deleted) from Oracle Balance & Control, Oracle Performance Analyzer, and Oracle Portfolio Analyzer.

Columns

Column Name Null? Type Description

SYS_ID_NUM NOT NULL NUMBER(10) System generated number identifying the Configuration ID.

LEAF_1 NUMBER(5) Not currently used.

LEAF_2 NUMBER(5) Not currently used.

COMPANY VARCHAR2(30) Indicates the name of the financial institution to which the user is associated. The company name appears in the header section of reports created using the OFSA Report ID.

DATA_AS_OF_DATE DATE Designates the current month specified for the Configuration ID for OFSA processing and reporting.

DIR_DATA VARCHAR2(40) Designates the output directory for OFSA Report IDs in which the output is directed to the hard-disk (rather than a printer or to the screen).

CALC_RATE_CODE NUMBER(5) Not currently used.

MDL_END_FREQ NUMBER(5) Not currently used.

MDL_END_FREQ_MULT NUMBER(5) Not currently used.

Page 225: fe115trm

FDM Database Tables

Detail Design 2-143

Oracle Proprietary, Confidential Information - Use Restricted by Contract

PERMISSION CHAR(1) An ’R’ indicates that the Configuration ID can be modified only by the original creator. A ’W’ indicates that any user with access to the Group (specified in group_name) can modify the Configuration ID.

ACTIVE NUMBER(5) Not currently used.

MAX_PROC_ERROR NUMBER(5) Designates the maximum number of errors that can be output to the OFSA_PROCESS_ERRORS table by any single OFSA process.

MAX_PROC_ERROR_ITEM NUMBER(5) Designates the maximum number of occurrences of any error code that can be output to the OFSA_PROCESS_ERRORS table by any single OFSA process.

ORG_LEAF NUMBER(5) Designates the leaf column used as the organizational unit leaf for OFSA processing for the Configuration ID. In general, there should only be a single leaf in the database created as an organizational unit, so this leaf should almost always be set to the leaf_num_id = 1 (which is the leaf_num_id of the default organizational unit leaf in OFSA_CATALOG_OF_LEAVES, which is provided with the initial installation of the FDM database).

RECON_LEAF NUMBER(5) Not currently used.

PRODUCT_LEAF NUMBER(5) Designates the leaf column used as the product leaf for OFSA processing for the Configuration ID. Unlike the org_leaf described above, it is possible that Configuration IDs in the database are assigned to different product_leaf values, depending on the product being run.

For example, one Configuration ID might use a Transfer Pricing product leaf as the product_leaf, while another might use a Risk Manager product leaf. The value specified in this column is the leaf_num_id of the leaf from the OFSA_CATALOG_OF_LEAVES table.

FILTER_SYS_ID NUMBER(10) Not currently used.

Column Name Null? Type Description

Page 226: fe115trm

FDM Database Tables

2-144 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

CHG_CRED_ACCR_FCTR NUMBER(5) Designates the charge and credit accrual factor to be applied when calculating the cost of funds using Transfer Pricing. A list of codes for this column is presented in the Column Code Values sub-section below.

FINAN_ELEM_LEAF NUMBER(5) Not currently used.

TM_LF_CHAR_SYS_ID NUMBER(10) Designates the Leaf Characteristics ID that is used when creating any new Transaction Strategy IDs. Each time a Transaction Strategy ID is created, default characteristics from the Leaf Characteristics ID is retrieved.

Index_NameIndex Type

Index Column Sequence Column_Name

IDT_CONFIGURE_PK

Unique 1 SYS_ID_NUM

Column Name Null? Type Description

Page 227: fe115trm

FDM Database Tables

Detail Design 2-145

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Column Code Values

Chg_cred_accr_fctrThe chg_cred_accr_fctr column of OFSA_IDT_CONFIGURE has the following codes:

Code Description

0 None

1 30/360

2 Actual/360

3 Actual/Actual

4 30/365

5 30/Actual

6 Actual/365

Page 228: fe115trm

FDM Database Tables

2-146 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_IDT_RESULT_DETAILThis table is used as a template for the definition of Risk Manager Scenario based Processing Results tables and is named following this format: RES_DTL_XXXXXX.

OFSA_IDT_RESULT_DETAIL does not actually contain any data. Rather, the structure of this table, including indexes, determines the structure and indexes of the results tables created during Scenario based Risk Manager processing. This table must contain all of the registered, non-Helper Leaf Columns listed in OFSA_CATALOG_OF_LEAVES.

Columns

Column Name Null? Type Description

RESULT_SYS_ID NOT NULL NUMBER(10) Risk Manager Process ID number. Identifies the ID that generated the results.

RESULT_TYPE_CD NOT NULL NUMBER(5) Result type. This value must be a value that exists in the result_type_cd column of the OFSA_RESULT_TYPE_DSC table.

SCENARIO_NUM NOT NULL NUMBER(5) Scenario number references the scenario_num column in the OFSA_RESULT_SCENARIO table. This reference should be used to look up the descriptions of each scenario.

START_DATE_INDEX NOT NULL NUMBER(5) Start date index. This references the dgap_scenario_num column in the OFSA_RESULT_BUCKET table.

ISO_CURRENCY_CD NOT NULL VARCHAR2(3) Identifies the currency of the Risk Manager results.

FINANCIAL_ELEM_ID NOT NULL NUMBER(14) Financial Element ID

ORG_UNIT_ID NOT NULL NUMBER(14) The organizational code

GL_ACCOUNT_ID NOT NULL NUMBER(14) Specific general ledger account assignment

COMMON_COA_ID NOT NULL NUMBER(14) Leaf column that defines the lowest common level of detail across all product chart of account definitions.

BUCKET_001 through BUCKET_120

NUMBER(15,2) Sequenced buckets between 1 and 120 that hold numeric values.

Page 229: fe115trm

FDM Database Tables

Detail Design 2-147

Oracle Proprietary, Confidential Information - Use Restricted by Contract

IndexesThe unique index for the OFSA_IDT_RESULT_DETAIL table must include as components all of the registered non-Helper Leaf Columns. The list of indexes below contains only those indexes provided with an initial installation of the FDM database.

SequencesNot applicable.

Column Code Values

Result_Type_CDThe result_type_cd column has the following codes:

Index_Name Index TypeIndex Column Sequence Column_Name

IDT_RESULT_DETAIL_UK

Unique 1 RESULT_SYS_ID

IDT_RESULT_DETAIL_UK

Unique 2 RESULT_TYPE_CD

IDT_RESULT_DETAIL_UK

Unique 3 SCENARIO_NUM

IDT_RESULT_DETAIL_UK

Unique 4 START_DATE_INDEX

IDT_RESULT_DETAIL_UK

Unique 5 FINANCIAL_ELEM_ID

IDT_RESULT_DETAIL_UK

Unique 6 ORG_UNIT_ID

IDT_RESULT_DETAIL_UK

Unique 7 GL_ACCOUNT_ID

IDT_RESULT_DETAIL_UK

Unique 8 COMMON_COA_ID

IDT_RESULT_DET_FIN Non-unique 1 FINANCIAL_ELEM_ID

IDT_RESULT_D_SCN Non-unique 1 SCENARIO_NUM

IDT_RESULT_D_SDI Non-unique 1 START_DATE_INDEX

Page 230: fe115trm

FDM Database Tables

2-148 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

ISO_Currency_CDThe list of ISO Currency Codes for the FDM database can be retrieved from the OFSA_CURRENCIES_V view.

Code Description

0 Current Position

1 New Business

-1 Combined Results

2 Formula Leaves Data

Page 231: fe115trm

FDM Database Tables

Detail Design 2-149

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_IDT_RESULT_HEADERThis table stores the basic set of assumptions that make up an Oracle Risk Manager Process ID, as read from the definition of the ID during processing. In addition to reference information about the Risk Manager Process ID, data in this table designates the currency (ISO_CURRENCY_CD) for Risk Manager processing results.

IDT_RESULT_HEADER is also accessed during Transformation ID processing for the transformation of Risk Manager results to the FDM Reporting Data Mart.

Columns

Column Name Null? Type Description

RESULT_SYS_ID NOT NULL NUMBER(10) Stores the system identifier for the Risk Manager Process ID

REPORTING_CURRENCY_CD

NOT NULL VARCHAR2(3) Identifies the currency for Risk Manager processing results.

FILTER_SYS_ID NUMBER(10) Filter System ID. This identifies the filter used during processing. This field may hold the identifier for either a Tree Filter ID, Group Filter ID or Data Filter ID.

RATES_SYS_ID NOT NULL NUMBER(10) Forecast Rates ID

PREPAY_SYS_ID NUMBER(10) Prepayment ID

DISCOUNT_SYS_ID NUMBER(10) Discount Rates ID

FBAL_SYS_ID NOT NULL NUMBER(10) Forecast Balance ID

MATURITY_SYS_ID NOT NULL NUMBER(10) Maturity ID

PRICING_SYS_ID NUMBER(10) Pricing Margin ID

TRANSACTION_SYS_ID NUMBER(10) Transaction Strategy ID

AUTO_BALANCE_CD NUMBER(5) Auto balance code. A ’1’ indicates auto balancing was set to ’On’ during processing and a ’0’ indicates it was set to ’Off’.

FORMULA_LEAVES_CD NUMBER(5) Identifies if the ’Formula Leaves’ processing switch was on during creation of this set of result data. A ’1’ indicates it is on and a ’0’ indicates it is off.

Page 232: fe115trm

FDM Database Tables

2-150 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

MARKET_VALUE_CD NUMBER(5) Market value code. A ’1’ indicates that the market value is set to ’On’ and a ’0’ indicates it was set to ’Off’.

DYNAMIC_GAP_CD NUMBER(5) Dynamic gap code. A ’1’ indicates it is ’On’ and a ’0’ indicates it is ’Off’.

OVERWRITE_CD NUMBER(5) A switch to indicate whether or not to overwrite results in idt_result_detail and result_master. A ’1’ indicates results are overwritten and a ’0’ indicates the results are not overwritten.

TM_PROCESS_TYPE_CD NUMBER(5) Identifies whether the Risk Manager Process is ’Scenario’ or ’Stochastic’.

LEAF_CHARAC_SYS_ID NUMBER(10) Designates the Leaf Characteristics ID for the Risk Manager Process.

FMLA_LEAVES_SYS_ID NUMBER(10) Designates the Formula Leaves ID for the Risk Manager Process.

VALUATION_CURVE_CD

NUMBER(5) Designates the interest rate curve used in Stochastic processing for the risk free yield curve. Must be an INTEREST_RATE_CD from the OFSA_IRCS table.

RATE_INDEX_SYS_ID NUMBER(10) Designates the Rate Index ID for the Risk Manager process.

NUM_OF_RATE_PATHS NUMBER(5) Designates the number of rate paths used for the Risk Manager process.

RAND_SEQ_TYPE_CD NUMBER(5) Designates the random number generation method for Stochastic processing.

VALUE_AT_RISK_FLG NUMBER(1) Identifies if the Risk Manager Process calculates Value at Risk. A ’1’ indicates Value at Risk calculations. Any other value indicates no Value at Risk calculations.

VAL_PERIOD NUMBER(5) Designates the time period for Value at Risk calculations. The VAL_PERIOD_MULT field identifies whether this value is for days, months or years.

VAL_PERIOD_MULT CHAR(1) Multiplier designation for the VAL_PERIOD column. Acceptable values are ’D’ for days, ’M’ for months, and ’Y’ for years.

Column Name Null? Type Description

Page 233: fe115trm

FDM Database Tables

Detail Design 2-151

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

EARNINGS_AT_RISK_FLG

NUMBER(1) Identifies if the Risk Manager process calculates Earnings at Risk. A ’1’ indicates Earnings at Risk calculations. Any other value indicates no Earnings at Risk calculations.

EAR_LEAF_DTL_FLG NUMBER(1) Designates that the Risk Manager process calculates rate path detail results by Product Leaf. Indicates output to a ’EAR_LEAF_DTL_XXXXXX’ table.

EAR_TOTAL_DTL_FLG NUMBER(1) Designates that the Risk Manager process calculates rate path detail results summed by date bucket. Indicates output to a ’EAR_TOTAL_DTL_XXXXXX’ table.

TS_MODEL_CD NUMBER(5) Designates the Term Structure model code for the process.

SMOOTHING_METHOD_CD

NUMBER(5) Designates the Smoothing Method code for the process.

OUTPUT_BY_CURRENCY_FLG

NUMBER(1) For scenario based processing, identifies whether to output results to the RES_DTL_XXXXXX and OFSA_RESULT_MASTER tables in multicurrencies.

OUTPUT_BY_ORG_FLG NUMBER(1) For scenario based processing, identifies whether to output results by Organizational Unit ID dimension as well as Product Leaf.

OUTPUT_FCAST_RATES_FLG

NUMBER(1) Designates that the process outputs audit information to OFSA_INTEREST_RATES_AUDIT.

CONSOLIDATED_OUTPUT_FLG

NUMBER(1) For scenario based processing, if multicurrency output is enabled, Risk Manager calculates separate consolidated results translated into the reporting currency. Risk Manager outputs these results to CONS_DTL_XXXXXX and OFSA_CONSOLIDATED_MASTER.

Index_NameIndex Type

Index Column Sequence Column_Name

IDT_RESULT_HEADER Unique 1 RESULT_SYS_ID

Column Name Null? Type Description

Page 234: fe115trm

FDM Database Tables

2-152 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

SequencesNot applicable.

Column Code Values

Rand_Seq_Type_CDThe Rand_Seq_Type_CD column of OFSA_IDT_RESULT_HEADER has the following codes:

Smoothing_Method_CDThe Smoothing_Method_CD column of OFSA_IDT_RESULT_HEADER has the following codes:

TM_Process_Type_CDThe TM_Process_Type_CD column of OFSA_IDT_RESULT_HEADER has the following codes:

Code Description

0 Psuedo Random Sequences

1 Low Discrepancy Sequences

Code Description

0 Cubic spline of yields

1 Linear Interpolation

Code Description

1 Scenario

2 Stochastic

Page 235: fe115trm

FDM Database Tables

Detail Design 2-153

Oracle Proprietary, Confidential Information - Use Restricted by Contract

TS_Model_CDThe TS_Model_CD column of OFSA_IDT_RESULT_HEADER has the following codes:

Code Description

1 Merton

2 Ho and Lee

3 Vasicek

4 Extended Vasicek

Page 236: fe115trm

FDM Database Tables

2-154 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_IDT_ROLLUPThe OFSA_IDT_ROLLUP table stores information about the structure of FDM user-defined leaf hierarchies, called tree rollups. Tree Rollup IDs can be created to define multiple organizational, product, account and other hierarchies by using leaves as the lowest level of detail in the hierarchical structure.

Reporting and processing functions use the hierarchical relationships defined in the OFSA_IDT_ROLLUP, OFSA_LEVEL_DESC and OFSA_NODE_DESC tables to segment, group and filter instrument and ledger data by the designated leaf type.

Each record in the OFSA_IDT_ROLLUP table contains the Rollup information for each individual leaf value in the tree. Each parent node and its hierarchical relationship to the leaf is specified for each leaf value attached to the tree. Leaf values that are not attached are then displayed in the Orphan section of the Tree. Orphan leaves are leaves to which each node assignment (node_01 - node_14) is a non-existent parent node specifically designated as ’-99100’.

The tree data in OFSA_IDT_ROLLUP is used by both the Subtotal ID and Tree Filter ID. OFSA_IDT_ROLLUP is also accessed by the Allocation ID interface and during Allocation processing when nodes from a tree rollup are used in the Allocation.

Balanced TreesFDM requires balanced tree hierarchies. A balanced tree is one in which the number of levels is consistent for all branches. In other words, the lowest level of the tree (leaf level) must always be the same for every branch.

If a tree has been defined as having x levels, each leaf node must be x levels from the Total Rollup (highest point in the tree - always a single node). For example, FDM does not allow a situation in which a leaf node exists on level 4 of a 5 level tree.

The tree must be balanced so that leaf nodes are always on the last branch of the tree.

Caution: While the interface allows the construction of such an invalid Tree Rollup ID, the use of an unbalanced tree in Performance Analyzer Allocation processes generates errors.

Page 237: fe115trm

FDM Database Tables

Detail Design 2-155

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Columns

Column Name Null? Type Description

SYS_ID_NUM NOT NULL NUMBER(10) System identifier of the tree rollup. This is a foreign key that points to the sys_id_num in the OFSA_CATALOG_OF_IDS table.

LEAF_NODE NOT NULL NUMBER(14) Value for the leaf. Leaf must exist in OFSA_LEAF_DESC for the designated leaf_num_id of the tree rollup.

SEQUENCES NOT NULL NUMBER(5) Display sequence for the leaf

SEQUENCE_01 NUMBER(5) Display sequence for the immediate parent node designated in node_01.

SEQUENCE_02 NUMBER(5) Display sequence for node_02, that is parent of node_01. If the tree rollup has <2 Levels, the sequence_02 value is 0.

SEQUENCE_03 NUMBER(5) Display sequence for node_03, that is parent of node_02. If the tree rollup has <3 Levels, the sequence_03 value is ’0’.

SEQUENCE_04 NUMBER(5) Display sequence for node_04, that is parent of node_03. If the tree rollup has <4 Levels, the sequence_04 value is ’0’.

SEQUENCE_05 NUMBER(5) Display sequence for node_05, that is parent of node_04. If the tree rollup has <5 Levels, the sequence_05 value is ’0’.

SEQUENCE_06 NUMBER(5) Display sequence for node_06, that is parent of node_05. If the tree rollup has <6 Levels, the sequence_06 value is ’0’.

SEQUENCE_07 NUMBER(5) Display sequence for node_07, that is parent of node_06. If the tree rollup has <7 Levels, the sequence_07 value is ’0’.

SEQUENCE_08 NUMBER(5) Display sequence for node_08, that is parent of node_07. If the tree rollup has <8 Levels, the sequence_08 value is ’0’.

SEQUENCE_09 NUMBER(5) Display sequence for node_09, that is parent of node_08. If the tree rollup has <9 Levels, the sequence_09 value is ’0’.

SEQUENCE_10 NUMBER(5) Display sequence for node_10, that is parent of node_09. If the tree rollup has <10 Levels, the sequence_10 value is ’0’.

SEQUENCE_11 NUMBER(5) Display sequence for node_11, that is parent of node_10. If the tree rollup has <11 Levels, the sequence_11 value is ’0’.

SEQUENCE_12 NUMBER(5) Display sequence for node_12, that is parent of node_11. If the tree rollup has <11 Levels, the sequence_11 value is ’0’.

SEQUENCE_13 NUMBER(5) Display sequence for node_13, that is parent of node_12. If the tree rollup has <13 Levels, the sequence_13 value is ’0’.

Page 238: fe115trm

FDM Database Tables

2-156 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

SEQUENCE_14 NUMBER(5) Display sequence for node_14, that is parent of node_13. If the tree rollup has <14 Levels, the sequence_14 value is ’0’.

NODE_01 NUMBER(14) Immediate parent of leaf_node. Description record must exist in OFSA_NODE_DESC for this value.

NODE_02 NUMBER(14) Parent of node_01. Description record must exist in OFSA_NODE_DESC for this value. If the tree rollup has <2 Levels, the node_02 value is’-99100’.

NODE_03 NUMBER(14) Parent of node_02. Description record must exist in OFSA_NODE_DESC for this value. If the tree rollup has <3 Levels, the node_03 value is ’-99100’.

NODE_04 NUMBER(14) Parent of node_03. Description record must exist in OFSA_NODE_DESC for this value. If the tree rollup has <4 Levels, the node_04 value is ’-99100’.

NODE_05 NUMBER(14) Parent of node_04. Description record must exist in OFSA_NODE_DESC for this value. If the tree rollup has <5 Levels, the node_05 value is ’-99100’.

NODE_06 NUMBER(14) Parent of node_05. Description record must exist in OFSA_NODE_DESC for this value. If the tree rollup has <6 Levels, the node_06 value is ’-99100’.

NODE_07 NUMBER(14) Parent of node_06. Description record must exist in OFSA_NODE_DESC for this value. If the tree rollup has <7 Levels, the node_07 value is ’-99100’.

NODE_08 NUMBER(14) Parent of node_07. Description record must exist in OFSA_NODE_DESC for this value. If the tree rollup has <8 Levels, the node_08 value is ’-99100’.

NODE_09 NUMBER(14) Parent of node_08. Description record must exist in OFSA_NODE_DESC for this value. If the tree rollup has <9 Levels, the node_09 value is ’-99100’.

NODE_10 NUMBER(14) Parent of node_09. Description record must exist in OFSA_NODE_DESC for this value. If the tree rollup has <10 Levels, the node_10 value is ’-99100’.

NODE_11 NUMBER(14) Parent of node_10. Description record must exist in OFSA_NODE_DESC for this value. If the tree rollup has <11 Levels, the node_11 value is ’-99100’.

NODE_12 NUMBER(14) Parent of node_11. Description record must exist in OFSA_NODE_DESC for this value. If the tree rollup has <12 Levels, the node_12 value is ’-99100’.

Column Name Null? Type Description

Page 239: fe115trm

FDM Database Tables

Detail Design 2-157

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Example Data:

NODE_13 NUMBER(14) Parent of node_12. Description record must exist in OFSA_NODE_DESC for this value. If the tree rollup has <13 Levels, the node_13 value is ’-99100’.

NODE_14 NUMBER(14) Parent of node_13. Description record must exist in OFSA_NODE_DESC for this value. If the tree rollup has <14 Levels, the node_14 value is ’-99100’.

Column Name Null? Type Description

Page 240: fe115trm

FDM Database Tables

2-158 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

In this example, for leaf 101001 Commercial Fixed, the relationship to node 110026 Commercial Loans is specified in the node_01 column. However, it is actually Level 6 of the tree rollup. Similarly, node 110018 Commercial Loans is specified in node_02, while it is Level 5 of the tree.

Note: Sequence_07 through sequence_14 and node_07 through node_14 have been omitted to simplify the presentation of the data. The values for sequence_07 though sequence_14 are set to ’0’ and the values for node_07 through node_14 are set to -99100.

Page 241: fe115trm

FDM Database Tables

Detail Design 2-159

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Index_Name Index TypeIndex Column Sequence Column_Name

IDT_ROLLUP UNIQUE 1 sys_id_num

IDT_ROLLUP UNIQUE 1 leaf_node

IDT_ROLLUP UNIQUE 1 sequences

Page 242: fe115trm

FDM Database Tables

2-160 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_IDT_SUBTOTALThe OFSA_IDT_SUBTOTAL table stores data for Subtotal IDs. Subtotal IDs enable the user to specify summarization points for an Portfolio Analyzer Report ID. Nodes designated in the Subtotal ID appear in the output of an Portfolio Analyzer Report ID as ’subtotaled’ line items. Subtotal IDs also enable the user to designate sign operators ’+’ or ’-’ for nodes and leaves. The Report ID applies the specified sign operators to the designated leaves or nodes in the report output.

A node record in OFSA_IDT_SUBTOTAL with show_flag = ’Y’ indicates that a subtotal line for that node appears in report output (for any reports using the Subtotal ID). If the show_flag = ’N’, the node does not appear in the report output. The node is still included in any subtotal calculations at a higher level, however. A leaf record in OFSA_IDT_SUBTOTAL with show_flag = ’Y’ indicates that the leaf appears in report output. If the show_flag = ’N’, the leaf does not appear in the report output, but the leaf is still included in any subtotal calculations at a higher level.

Data in OFSA_IDT_SUBTOTAL is maintained using the Subtotal ID interface. Data in OFSA_IDT_SUBTOTAL is accessed only by Report IDs.

Columns

Column Name Null? Type Description

SYS_ID_NUM NOT NULL NUMBER(10) Identifies the Subtotal ID.

ROLLUP_SYS_ID NOT NULL NUMBER(10) Identifies the Tree Rollup ID upon which the Subtotal ID is based.

ROLLUP_LEVEL NOT NULL NUMBER(5) Identifies the level on the Tree Rollup ID where the node or leaf resides.

ROLLUP_NODE NOT NULL NUMBER(14) Designates the leaf or node included in the Tree Filter ID. Links to leaf_node in OFSA_IDT_ROLLUP for leaves and rollup_node in OFSA_NODE_DESC for nodes.

PAGE_BREAK Not currently used.

SHOW_FLAG A ’Y’ designates if the leaf or node displays on the report output.

OPERATOR A ’-’ designates that the value for the leaf or node is multiplied by ’-1’ on the report output. A ’+’ designates that the value is not changed on the report output. This column defaults to ’+’.

Page 243: fe115trm

FDM Database Tables

Detail Design 2-161

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Index_Name Index TypeIndex Column Sequence Column_Name

IDT_SUBTOTAL Unique 1 SYS_ID_NUM

IDT_SUBTOTAL Unique 2 ROLLUP_SYS_ID

IDT_SUBTOTAL Unique 3 ROLLUP_LEVEL

IDT_SBUTOTAL Unique 4 ROLLUP_NODE

Page 244: fe115trm

FDM Database Tables

2-162 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_IDT_VIEW_FILTERThe OFSA_IDT_VIEW_FILTER table stores data for Tree Filter IDs. Tree Filter IDs enable the user to specify leaves or nodes of a Tree Rollup ID for inclusion in a OFSA process, or in a Portfolio Analyzer Report ID. The leaves or nodes specified in the Tree Filter ID are included in the ’where’ clause of process or report using the Tree Filter ID.

The combination of rollup_level and rollup_node in OFSA_IDT_VIEW_FILTER identifies a leaf or a node from the Tree Rollup ID specified by the rollup_sys_id. When the record identifies a node, all leaf values in the Tree Rollup ID that reside below the node are automatically included in the Tree Filter ID. In this case, only the node record exists in OFSA_IDT_VIEW_FILTER, the process or report using the Tree Filter ID executes the logic necessary to retrieve all leaves attached to the node.

Data in OFSA_IDT_VIEW_FILTER is maintained using the Tree Filter ID interface. Data in OFSA_IDT_VIEW_FILTER is accessed by any OFSA processing for which a Tree Filter ID has been specified, such as Allocation IDs, Data Correction Process IDs, Transformation IDs and so forth.

Columns

Column Name Null? Type Description

SYS_ID_NUM NOT NULL NUMBER(10) Identifies the Tree Filter ID.

ROLLUP_SYS_ID NOT NULL NUMBER(10) Identifies the Tree Rollup ID upon which the Tree Filter ID is based. Links to sys_id_num in OFSA_IDT_ROLLUP.

ROLLUP_LEVEL NOT NULL NUMBER(5) Identifies the level on the Tree Rollup ID where the node or leaf resides.

ROLLUP_NODE NOT NULL NUMBER(14) Designates the leaf or node included in the Tree Filter ID. Links to leaf_node in OFSA_IDT_ROLLUP for leaves and rollup_node in OFSA_NODE_DESC for nodes.

Page 245: fe115trm

FDM Database Tables

Detail Design 2-163

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Index_NameIndex Type

Index Column Sequence Column_Name

IDT_VIEW_FILTER Unique 1 SYS_ID_NUM

IDT_VIEW_FILTER Unique 2 ROLLUP_SYS_ID

IDT_VIEW_FILTER Unique 3 ROLLUP_LEVEL

IDT_VIEW_FILTER Unique 4 ROLLUP_NODE

Page 246: fe115trm

FDM Database Tables

2-164 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_INDEX_STORAGE_DEFAULTSThe OFSA_INDEX_STORAGE_DEFAULTS table enables the FDM administrator to specify the storage parameters that are to be used by the transformation engine when it creates any index on a transformation output table. Data for this table is maintained using the Data Verification ID to edit the storage parameters in existing rows or create new rows for individual users.

ColumnsFor detailed descriptions of the columns in this table, and for further explanation on how the transformation engine uses the information in these tables to size output tables, refer to the section entitled ’Transformation Output Tables’ in the “FDM Object Management” chapter of the Oracle Financial Services Installation and Configuration Guide.

Indexes

SequencesNot applicable.

Column Code Values

Output_Table_Class_CDThe Output_Table_Class_CD column of OFSA_INDEX_STORAGE_DEFAULTS identifies the transformation output Table Classification types and contains the following codes:

Index_NameIndex Type

Index Column Sequence Column_Name

OFSA_INDEX_STORAGE_DEFAULTS Unique 1 TABLE_DATA_CODE

OFSA_INDEX_STORAGE_DEFAULTS Unique 1 USER_NAME

Code Description

260 Transformed Ledger Stat

270 Transformed RM Cash Flow

280 Transformed RM GAP

290 Transformed Tree Rollup

Page 247: fe115trm

FDM Database Tables

Detail Design 2-165

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_INSTRUMENT_ACCOUNT_CUSTThe OFSA_INSTRUMENT_ACCOUNT_CUST table provides a link between account records in any of the Accounts tables (Instruments, Services and Transactions) with customers in the CUST table. This link ties the FDM Accounts data model with the FDM Customer data model.

Columns

Indexes

Column Name Null? Type Description

IDENTITY_CODE NOT NULL NUMBER(10) Identifies the Identity_Code value of the Instrument Account record.

ID_NUMBER NOT NULL NUMBER(25) Identifies the Account number of the Instrument Account record.

INSTRUMENT_TYPE_CD

NOT NULL NUMBER(5) Identifies the type of Instrument Account. The INSTRUMENT_TYPE_CD provides differentiation between duplicate Account identifiers where IDENTITY_CODE and ID_NUMBER overlap across multiple Instrument tables.

CUS_KEY NOT NULL VARCHAR2(30) Identifies the Customer for the designated Instrument Account from the CUST table.

REL_TYPE VARCHAR2(1) The customer’s relationship to the account: P = primary, S = secondary.

Index_NameIndex Type

Index Column Sequence Column_Name

INSTRUMENT_ACCOUNT_PK

Unique 1 ID_NUMBER

INSTRUMENT_ACCOUNT_PK

Unique 2 IDENTITY_CODE

INSTRUMENT_ACCOUNT_PK

Unique 3 INSTRUMENT_TYPE_CD

INSTRUMENT_ACCOUNT_PK

Unique 4 CUS_KEY

Page 248: fe115trm

FDM Database Tables

2-166 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

SequencesNot applicable.

Column Code Values

Instrument_Type_CdINSTRUMENT_TYPE_CD values are defined in OFSA_INSTRUMENT_TYPE_CD and OFSA_INSTRUMENT_TYPE_MLS. Use the OFSA_INSTRUMENT_TYPE_DSC view to retrieve valid codes and descriptions for this column.

INSTRUMENT_ACCOUNT_CUST_01

Non -unique

1 CUS_KEY

INSTRUMENT_ACCOUNT_CUST_01

Non -unique

2 ID_NUMBER

INSTRUMENT_ACCOUNT_CUST_01

Non -unique

3 IDENTITY_CODE

INSTRUMENT_ACCOUNT_CUST_01

Non -unique

4 INSTRUMENT_TYPE_CD

INSTRUMENT_ACCOUNT_CUST_02

Non -unique

1 INSTRUMENT_TYPE_CD

Code Description

110 Commercial Loan

120 Consumer Loan

130 Mortgages

140 Investments

141 MBS

150 Credit Card

210 Deposits

220 Wholesale Funding

Index_NameIndex Type

Index Column Sequence Column_Name

Page 249: fe115trm

FDM Database Tables

Detail Design 2-167

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Rel_TypeREL_TYPE code values and descriptions are as follows.

Code Description

P Primary

S Secondary

Page 250: fe115trm

FDM Database Tables

2-168 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_INSTRUMENT_TYPE_CDThe OFSA_INSTRUMENT_TYPE_CD table provides the list of Instrument table categories. The INSTRUMENT_TYPE_CD column is required to distinguish between duplicate ID_NUMBER and IDENTITY_CODE values in situations where they overlap across different Instrument Account tables.

The FDM Database Upgrade and Database Creation processes populate the OFSA_INSTRUMENT_TYPE_CD table with a set of default Instrument Type code values where INSTRUMENT_TYPE_CD <500. These default values are reserved by FDM and protected from update. FDM permits user-defined code values for INSTRUMENT_TYPE_CD>=500.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

INSTRUMENT_TYPE_CD

NOT NULL NUMBER(5) Value identifying the Instrument Type Code.

TABLE_NAME VARCHAR2(30) Designates the Instrument Account table name for the specified Instrument Type Code.

Index_NameIndex Type

Index Column Sequence Column_Name

INSTRUMENT_TYPE_CD_PK

Unique 1 INSTRUMENT_TYPE_CD

Page 251: fe115trm

FDM Database Tables

Detail Design 2-169

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_INSTRUMENT_TYPE_MLSThe OFSA_INSTRUMENT_TYPE_CD table provides translatable display names and descriptions for Instrument Type Code values.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

MLS_CD NOT NULL VARCHAR2(3) Identifies the language for the display name and description.

INSTRUMENT_TYPE_CD

NOT NULL NUMBER(5) Value identifying the Instrument Type Code.

INSTRUMENT_TYPE

NOT NULL VARCHAR2(40) Display name for the Instrument Type Code.

DESCRIPTION VARCHAR2(255) Description for the Instrument Type Code.

Index_NameIndex Type

Index Column Sequence Column_Name

INSTRUMENT_TYPE_MLS_PK

Unique 1 MLS_CD

INSTRUMENT_TYPE_MLS_PK

Unique 2 INSTRUMENT_TYPE_CD

Page 252: fe115trm

FDM Database Tables

2-170 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_INTEREST_RATES_AUDITThe OFSA_INTEREST_RATES_AUDIT table provides interest rate audit information for Risk Manager Scenario based IDs and Transfer Pricing processes. Also stores Risk Manager audit information for Monte Carlo rate paths generated when the ’Write One Month Rates’ flag is checked.

Columns

Column Name Null? Type Description

PROCESS_SYS_ID NOT NULL NUMBER(10) Identifies the Risk Manager Process ID for which the interest rate audit information applies.

CALC_SOURCE_CD

NOT NULL NUMBER(5) Designates how the audit data was generated.

START_DATE NOT NULL DATE Designates the As of Date for which the process was run.

SCENARIO_NUM NOT NULL NUMBER(10) Designates the Risk Manager Scenario number for which the data applies.

INTEREST_RATE_CD

NOT NULL NUMBER(5) Designates the Interest Rate Code for the audit record. Interest Rate Codes are defined in the OFSA_IRCS tables.

INTEREST_RATE_TERM

NOT NULL NUMBER(5) Designates the Interest Rate Term for the audit record.

INTEREST_RATE_TERM_MULT

NOT NULL CHAR(1) Designates the Multiplier for the specified Interest Rate Term - ’D - Day’, ’M - Month’ or ’Y - Year’.

BUCKET_NUM NOT NULL NUMBER(5) Designates the Date bucket for the audit record.

BUCKET_START_DATE

NOT NULL DATE Designates the Beginning Date for the specified Bucket number.

BUCKET_END_DATE

NOT NULL DATE Designates the Ending Date for the specified Bucket number.

RATE NOT NULL NUMBER(8,4) Designates the forecasted Interest Rate for the specified Date Bucket.

PROCESS_DATE NOT NULL DATE Designates the date on which the Risk Manager or Transfer Pricing process was run.

Page 253: fe115trm

FDM Database Tables

Detail Design 2-171

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Index_NameIndex Type

Index Column Sequence Column_Name

INTEREST_RATES_AUDIT_PK

Unique 1 PROCESS_SYS_ID

INTEREST_RATES_AUDIT_PK

Unique 2 CALC_SOURCE_CD

INTEREST_RATES_AUDIT_PK

Unique 3 START_DATE

INTEREST_RATES_AUDIT_PK

Unique 4 SCENARIO_NUM

INTEREST_RATES_AUDIT_PK

Unique 5 INTEREST_RATE_CD

INTEREST_RATES_AUDIT_PK

Unique 6 INTEREST_RATE_TERM

INTEREST_RATES_AUDIT_PK

Unique 7 INTEREST_RATE_TERM_MULT

INTEREST_RATES_AUDIT_PK

Unique 8 BUCKET_NUM

Page 254: fe115trm

FDM Database Tables

2-172 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Column Code Values

Calc_Source_CdCALC_SOURCE_CD values are defined in OFSA_CALC_SOURCE_CD and OFSA_CALC_SOURCE_MLS. Use the OFSA_CALC_SOURCE_DSC view to retrieve valid codes and descriptions for this column.

Interest_Rate_CdINTEREST_RATE_CD values are defined in OFSA_IRCS.

Interest_Rate_Term_MultINTEREST_RATE_TERM_MULT values are defined in OFSA_MULTIPLIER_CD and OFSA_MULTIPLIER_MLS. Use the OFSA_MULTIPLIER_DSC view to retrieve valid codes and descriptions for this column.

Code Description

0 RM - Regular

1 RM - Stochastic

2 TP - Regular

3 TP - Forward Rates

4 TP - Stochastic

Code Description

D Days

M Months

Y Years

Page 255: fe115trm

FDM Database Tables

Detail Design 2-173

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_IRC_RATE_HISTThe OFSA_IRC_RATE_HIST table stores historical interest rate data populated via FDM Rate Manager. The historical interest rate information is accessed by both Transfer Pricing and Risk Manager operations.

Columns

Indexes

SequencesNot applicable.

Column Name Null? Type Description

EFFECTIVE_DATE NOT NULL DATE Identifies the date for which the interest rate applies.

INTEREST_RATE_CD

NOT NULL NUMBER(5) Identifies the Interest Rate Code for the rate. Interest Rate Codes are defined in the OFSA_IRCS table.

INTEREST_RATE_TERM

NOT NULL NUMBER(5) Designates the term for the interest rate.

INTEREST_RATE_TERM_MULT

NOT NULL CHAR(1) Designates the Multiplier for the specified Interest Rate Term - ’D - Days’, ’M - Months’ or ’Y - Years’.

INTEREST_RATE NOT NULL NUMBER(8,4) Designates the interest rate.

RATE_DATA_SOURCE_CD

NOT NULL NUMBER(5) Specifies the source of the rate information. The OFSA_RATE_DATA_SOURCE_DSC view provides the list of valid Rate Data Source codes.

LAST_MODIFIED_DATE

NOT NULL DATE Designates the date on which the record was last updated.

Index_NameIndex Type

Index Column Sequence Column_Name

IRC_RATE_HIST_PK Unique 1 EFFECTIVE_DATE

IRC_RATE_HIST_PK Unique 2 INTEREST_RATE_CD

IRC_RATE_HIST_PK Unique 3 INTEREST_RATE_TERM

IRC_RATE_HIST_PK Unique 4 INTEREST_RATE_TERM_MULT

Page 256: fe115trm

FDM Database Tables

2-174 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Column Code Values

Rate_Data_Source_CDThe RATE_DATA_SOURCE_CD column has the following code values:

Rate_Data_Source_CD Description

1 User Input

2 Calculated

3 Bloomberg

4 DRI

5 Reuters

6 Risk Metrics

Page 257: fe115trm

FDM Database Tables

Detail Design 2-175

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_IRC_RATE_TERMSThe OFSA_IRC_RATE_TERMS table stores term structure definitions for Interest Rate Codes. FDM Rate Manager populates data for this table.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

INTEREST_RATE_CD

NOT NULL NUMBER(5) Identifies the Interest Rate Code. Interest Rate Codes are defined in the OFSA_IRCS table.

INTEREST_RATE_TERM

NOT NULL NUMBER(5) Designates term for the interest rate code.

INTERST_RATE_TERM_MULT

NOT NULL CHAR(1) Designates the multiplier (’D - Days’, ’M - Months’, ’Y - Years’) for the specified interest rate term.

Index_NameIndex Type

Index Column Sequence Column_Name

IRC_RATE_TERMS_PK Unique 1 INTEREST_RATE_CD

IRC_RATE_TERMS_PK Unique 2 INTEREST_RATE_TERM

IRC_RATE_TERMS_PK Unique 3 INTEREST_RATE_TERM_MULT

Page 258: fe115trm

FDM Database Tables

2-176 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_IRC_TS_PARAM_HISTThe OFSA_IRC_TS_PARAM_HIST table stores term structure parameters for interest rate codes. Term Structure parameters are used for stochastic modeling of interest rates in Transfer Pricing and Risk Manager processing. These parameters are input and maintained from FDM Rate Manager.

Columns

Column Name Null? Type Description

EFFECTIVE_DATE NOT NULL DATE Designates the date for which the Term Structure parameters are effective.

INTEREST_RATE_CD

NOT NULL NUMBER(5) Identifies the Interest Rate Code. Interest Rate Codes are defined in the OFSA_IRCS table.

MEAN_REVERSION_SPEED

NOT NULL NUMBER(9,6) Designates the Mean Reversion Speed used in Vasicek and Extended Vasicek models.

LONG_RUN_RATE NOT NULL NUMBER(9,6) Designates the Long Run Rate used in Vasicek models.

VOLATILITY_MERTON

NOT NULL NUMBER(9,6) Designates the volatility used in both Merton, and Ho and Lee models.

VOLATILITY_VASICEK

NOT NULL NUMBER(9,6) Designates the volatility used in both Vasicek and Extended Vasicek models.

RATE_DATA_SOURCE_CD

NOT NULL NUMBER(5) Specifies the source of the information. The OFSA_RATE_DATA_SOURCE_DSC view provides the list of valid Rate Data Source codes. Manual inputs from FDM Rate Manager automatically default this value to ’User Input’.

IS_VALID_FLG NOT NULL NUMBER(1) Not currently used

LAST_MODIFIED_DATE

NOT NULL DATE Identifies the date on which the record was last updated.

ESTIMATION_SMOOTHING_CD

NUMBER(5) Not currently used

DECAY_FACTOR NUMBER(9,6) Not currently used

RECALC_HIST_INPUT_FLG

NUMBER(1) Not currently used

NUM_OF_HIST_OBSERVATIONS

NUMBER(38) Not currently used

Page 259: fe115trm

FDM Database Tables

Detail Design 2-177

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Column Code Values

Rate_Data_Source_CDThe RATE_DATA_SOURCE_CD column has the following code values:

Index_NameIndex Type

Index Column Sequence Column_Name

IRC_TS_PARAM_HIST_PK

Unique 1 EFFECTIVE_DATE

IRC_TS_PARAM_HIST_PK

Unique 2 INTEREST_RATE_CD

Rate_Data_Source_CD Description

1 User Input

2 Calculated

3 Bloomberg

4 DRI

5 Reuters

6 Risk Metrics

Page 260: fe115trm

FDM Database Tables

2-178 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_IRCSThe OFSA_IRCS table stores Interest Rate Codes definition and attributes. Interest Rate Codes are defined and maintained in FDM Rate Manager.

Columns

Indexes

SequencesNot applicable.

Column Name Null? Type Description

INTEREST_RATE_CD

NOT NULL NUMBER(5) Identifies the Interest Rate Code.

IRC_NAME NOT NULL VARCHAR2(60) Display name for the Interest Rate Code.

IRC_FORMAT_CD NOT NULL NUMBER(5) Code identifying the format of interest rates; Zero Coupon or Yield to Maturity.

ISO_CURRENCY_CD

NOT NULL VARCHAR2(3) Identifies the currency in which the interest rates are defined. Stores values from OFSA_CURRENCIES.

ACCRUAL_BASIS_CD

NOT NULL NUMBER(5) Code identifying the Accrual Basis in which interest rates are defined (that is, Actual/Actual, Actual/360, and so on).

COMPOUND_BASIS_CD

NOT NULL NUMBER(5) Code identifying the Compounding Basis in which interest rates are defined that is, Simple, Annual, Semiannual, and so on.).

Index_NameIndex Type

Index Column Sequence Column_Name

IRCS_PK Unique 1 INTEREST_RATE_CD

IRCS_UK Unique 1 IRC_NAME

Page 261: fe115trm

FDM Database Tables

Detail Design 2-179

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Column Code Values

Accrual_Basis_CDThe ACCRUAL_BASIS_CD column of OFSA_IRCS has the following codes. The code selection available depends upon the selected COMPOUND_BASIS_CD:

Compound_Basis_CDThe COMPOUND_BASIS_CD values are stored in the OFSA_COMPOUND_BASIS_CD and OFSA_COMPOUND_BASIS_MLS tables. Use OFSA_COMPOUND_BASIS_DSC to retrieve Compound Basis code values and descriptions. Only Semiannual, Annual and Simple are available for the OFSA_IRCS table.

Code Description

0 None

1 30/360

2 Actual/360

3 Actual/Actual

4 30/365

5 30/Actual

6 Actual/365

Page 262: fe115trm

FDM Database Tables

2-180 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

The COMPOUND_BASIS_CD column has the following codes:

* Not available for OFSA_IRCS

Code Description

110* Daily

120* Monthly

130* Quarterly

140 Semiannual

150 Annual

160 Simple

170* Continuous

200* At Maturity

999 Other

Page 263: fe115trm

FDM Database Tables

Detail Design 2-181

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_JOBS_RUNThe OFSA_JOBS_RUN table provides a record of OFSA processes run in the database. For Release 4.5, only Performance Analyzer Allocation and FDM Rate Manager processes are recorded in this table.

Columns

Column Name Null? Type Description

JOB_NUMBER NOT NULL NUMBER(10) Identifies the job. Values for this column originate from the OFSA_REQUEST_QUEUE_JOB_SEQ sequence.

JOB_START_TIMESTAMP

NOT NULL DATE Designates the starting time of the job.

JOB_STATUS_CD NOT NULL NUMBER(5) Identifies the current status of the job, such as ’Started’, ’Completed Successfully’, and so on. Job Status codes and descriptions are available from the OFSA_JOB_STATUS_DSC view.

USERNAME NOT NULL VARCHAR2(30) Designates the Oracle user that launched the process.

APPLICATION_CD NOT NULL NUMBER(5) Designates the OFSA application that was processed. OFSA Application codes and descriptions are available from the OFSA_APPLICATIONS table.

PROCESS_CD NUMBER(5) Designates the type of process of the specified application. Process codes and descriptions are available from the OFSA_PROCESSES table.

SYS_ID_NUM NUMBER(10) For Performance Analyzer jobs, identifies the ID that was processed. Links to the OFSA_CATALOG_OF_IDS table.

ALTERNATE_JOB_NUMBER

NUMBER(10) Not currently used.

JOB_END_TIMESTAMP

DATE Designates the completion/termination time of the job.

PARENT_JOB_NUMBER

NUMBER(10) Not currently used.

Page 264: fe115trm

FDM Database Tables

2-182 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesThe OFSA_REQUEST_QUEUE_SEQ sequence generates values for the job_number column.

Index_NameIndex Type

Index Column Sequence Column_Name

OFSA_JOBS_RUN_PK Unique 1 JOB_NUMBER

OFSA_JOBS_RUN_FK2 Non- Unique

2 APPLICATION_CD

OFSA_JOBS_RUN_FK3 Non- Unique

3 PROCESS_CD

OFSA_JOBS_RUN_FK4 Non- Unique

4 PARENT_JOB_NUMBER

Page 265: fe115trm

FDM Database Tables

Detail Design 2-183

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Column Code Values

Application_CdThe APPLICATION_CD values are stored in the OFSA_APPLICATIONS. The APPLICATION_CD column has the following values:

Job_Status_CDThe JOB_STATUS_CD values are stored in the OFSA_JOB_STATUS_CD and OFSA_JOB_STATUS_MLS tables. Use the OFSA_JOB_STATUS_DSC view to retrieve codes and descriptions for this column:

Code Description

0 Performance Analyzer

1 FDM Administration

2 Risk Manager

3 Transfer Pricing

4 Balance & Control

5 Portfolio Analyzer

6 Customer Householding

7 Market Manager

8 Discover Integrator

9 FDM Rate Manager

Code Description

10 Started

20 Completed

30 Failed

40 Scheduled

50 Completed Successfully

60 Completed with Errors

70 Completed with Warnings

Page 266: fe115trm

FDM Database Tables

2-184 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Process_CDThe list of valid PROCESS_CD values is stored in OFSA_PROCESSES. The list of codes and descriptions for this column is as follows:

Code Description

1000 Preview Set

1001 Preview Promotion

1002 Preview Campaign

1003 Generate Set

1004 Generate Promotion

1005 Track Cell by Query

1006 Track Promotion by Query

1007 Track All by Query

1008 Recurring Promotion

1009 Regenerate Sets

1010 Update Tracking Status

1011 Roll Up Promotion

1012 Roll Up Campaign

1013 Batch Event Scheduler

1014 Campaign Generic Results

1015 Promotion Generic Results

1016 Cell Generic Results

1017 Campaign Pre-Active Aggregates

1018 Promo Pre-Active Aggregates

1019 Cell Pre-Active Aggregates

1020 Campaign Relationship Results

1021 Promotion Relationship Results

1022 Cell Relationship Results

1023 Roll Up All Active Objects

Page 267: fe115trm

FDM Database Tables

Detail Design 2-185

Oracle Proprietary, Confidential Information - Use Restricted by Contract

1024 Promotion Response Results

1025 Promotion ROI Results

1026 Campaign Response Results

1027 Campaign ROI Results

1028 Generic Rslts All Active Objs

1029 FDM Rate Manager Engine

Code Description

Page 268: fe115trm

FDM Database Tables

2-186 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_LEAF_DESCThe OFSA_LEAF_DESC table is used to identify values for each leaf column in the FDM database. Each record in OFSA_LEAF_DESC identifies an organizational unit, a general ledger account, a common chart of account, a financial element or a user-defined chart of accounts.

Detail information for each leaf is stored in one of the following DETAIL tables:

■ OFSA_DETAIL_ELEM

■ OFSA_DETAIL_LEAVES

■ OFSA_DETAIL_ORG_UNIT

■ OFSA_DETAIL_OTHER_COA

The table depends on what kind of leaf column it is. The Detail table assignments for each of the leaf columns is stored in the OFSA_CATALOG_OF_LEAVES table.

Some of the functions that access OFSA_LEAF_DESC include OFSA Report IDs, Transformation IDs, Tree Rollup IDs, Tree Filter IDs, Subtotal IDs and Tree Bar interfaces in many OFSA IDs.

Columns

Column Name Null? Type Description

LEAF_NUM_ID NOT NULL NUMBER(5) Uniquely identifies the leaf column. Each leaf column is assigned a leaf_num_id from OFSA_CATALOG_OF_LEAVES. Leaf values are then associated to that leaf column using the assigned leaf_num_id.

LEAF_NODE NOT NULL NUMBER(14) Designates the account number.

DESCRIPTION VARCHAR2(80) The description is the name or description of the account represented by the leaf_node.

Page 269: fe115trm

FDM Database Tables

Detail Design 2-187

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Index_Name Index TypeIndex Column Sequence Column_Name

LEAF_DESC Unique 1 LEAF_NUM_ID

LEAF_DESC Unique 2 LEAF_NODE

LEAF_DESC_NODE1 Non-unique 1 LEAF_NODE

Page 270: fe115trm

FDM Database Tables

2-188 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_LEDGER_STAT_INSTRUMENTOFSA_LEDGER_STAT_INSTRUMENT provides a place to transfer price Off Balance Sheet and other LEDGER_STAT data for which there is no equivalent instrument account data. Data for this table is populated from records in the LEDGER_STAT table. Follow the instructions in the Financial Data Manager Reporting Administration Guide for details on how to populate and use the OFSA_LEDGER_STAT_INSTRUMENT table. Once populated, you can run Transfer Pricing processes against the data.

FDM requires that the OFSA_LEDGER_STAT_INSTRUMENT table has the same Leaf Columns as other Instrument tables. This means that it should have all Leaf Columns, except for FINANCIAL_ELEM_ID and “Virtual” Leaf Columns.

ColumnsThe FDM Database Creation and Database Upgrade processes define the OFSA_LEDGER_STAT_INSTRUMENT table based upon the “Portfolio Instrument” Table Classification. FDM enables the user to customize this table as appropriate for his or her implementation. For column definitions and descriptions, refer to the Oracle Financial Data Manager Data Dictionary, Release 4.5.

IndexesThe FDM Database Creation and Database Upgrade processes do not include any default indexes for the OFSA_LEDGER_STAT_INSTRUMENT table. Create appropriate indexes for this table as needed for your implementation.

SequencesNot applicable.

Code ValuesNot applicable.

Page 271: fe115trm

FDM Database Tables

Detail Design 2-189

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_LEDGER_STAT_RECONThe OFSA_LEDGER_STAT_RECON table stores “plugs” required for reconciling LEDGER_STAT data with Instrument account detail data. “Plugs” are records that make up the differences discovered during reconciliations. Such records balance the LEDGER_STAT information with the data in the Instrument account tables.

FDM requires user defined Leaf Columns to be added to OFSA_LEDGER_STAT_RECON. This table can also be customized just like any Instrument table.

Refer to the Oracle Financial Data Manager Reporting Administration Guide for instructions on populating and using the OFSA_LEDGER_STAT_RECON table.

Page 272: fe115trm

FDM Database Tables

2-190 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

ORG_UNIT_ID NOT NULL NUMBER(14) Organizational Unit ID.

GL_ACCOUNT_ID

NOT NULL NUMBER(14) General Ledger Account ID.

COMMON_COA_ID

NOT NULL NUMBER(14) Common Chart of Account ID.

CUR_BOOK_BAL

NOT NULL NUMBER(14,2) Plug balance. This is the balance amount for the reconciliation.

AS_OF_DATE NOT NULL DATE Date for which the plug balance applies.

Index_NameIndex Type

Index Column Sequence Column_Name

LEDGER_STAT_RECON_UK

Unique 1 AS_OF_DATE

LEDGER_STAT_RECON_UK

Unique 2 ORG_UNIT_ID

LEDGER_STAT_RECON_UK

Unique 3 GL_ACCOUNT_ID

LEDGER_STAT_RECON_UK

Unique 4 COMMON_COA_ID

Page 273: fe115trm

FDM Database Tables

Detail Design 2-191

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_LEVEL_DESCThe OFSA_LEVEL_DESC table stores information about hierarchy levels used in OFSA Tree Rollup IDs. Hierarchy levels in OFSA_LEVEL_DESC define the structure of the Tree Rollup ID and determine which columns in the OFSA_IDT_ROLLUP table are populated for the hierarchy.

OFSA_LEVEL_DESC information is populated during the setup of the Tree Rollup ID.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

SYS_ID_NUM NOT NULL NUMBER(10) Identifies the Tree Rollup ID to which the levels belong.

LEVEL_NUM NOT NULL NUMBER(5) Identifies the level number. Because OFSA Tree Rollup IDs do not support hierarchies >14 levels, this must be a number from 1 to 14.

DESCRIPTION VARCHAR2(80) Provides the name or description of the level.

Index_NameIndex Type

Index Column Sequence Column_Name

LEVEL_DESC Unique 1 SYS_ID_NUM

LEVEL_DESC Unique 2 LEVEL_NUM

Page 274: fe115trm

FDM Database Tables

2-192 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_MESSAGE_LOGThe OFSA_MESSAGE_LOG table stores messages generated during OFSA processing. For Release 4.5, only Performance Analyzer and FDM Rate Manager processes output messages to this table.

Page 275: fe115trm

FDM Database Tables

Detail Design 2-193

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Columns

Indexes

SequencesNot applicable.

Column Name Null? Type Description

JOB_NUMBER NOT NULL NUMBER(10) Identifies the job that generated the messages. This links to the JOB_NUMBER in the OFSA_JOBS_RUN table.

SEQUENCES NOT NULL NUMBER(5) Sequence number of the messages generated by the job.

MSG_TIMESTAMP

NOT NULL DATE Indicates the date and time that the message was inserted to OFSA_MESSAGE_LOG.

MESSAGE_CD NOT NULL NUMBER(5) Code identifying the message. Message codes are defined in OFSA_MESSAGE_B and message code descriptions are defined in OFSA_MESSAGE_MLS. Use the OFSA_MESSAGES view to retrieve message codes and descriptions.

MSG_SERVERITY_CD

NUMBER(5) Designates the significance of the error. Severity codes and descriptions are stored in OFSA_MSG_SEVERITY_CD and OFSA_MSG_SEVERITY_MLS. Use the OFSA_MSG_SEVERITY_DSC view to retrieve Message Severity codes and descriptions.

CONTEXT_SPECIFIC_TEXT

VARCHAR2(2000) Further information about the specific message condition of the process.

Index_NameIndex Type

Index Column Sequence Column_Name

OFSA_MESSAGE_LOG_01

Unique 1 JOB_NUMBER

OFSA_MESSAGE_LOG_01

Non- unique

2 SEQUENCES

OFSA_MESSAGE_LOG_FK2

Non- unique

1 MESSAGE_CD

Page 276: fe115trm

FDM Database Tables

2-194 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Column Code Values

Message_CDOFSA message codes are defined in OFSA_MESSAGES_B and OFSA_MESSAGES_MLS. Use the OFSA_MESSAGES view to retrieve the list of OFSA message codes and descriptions.

Msg_Severity_CDSeverity codes are defined in OFSA_MSG_SEVERITY_CD and OFSA_MSG_SEVERITY_MLS. Use the OFSA_MSG_SEVERITY_DSC view to retrieve the list of OFSA Message Severity codes and descriptions.

The list of OFSA Message Severity codes and descriptions is as follows:

Code Description

10 Status

20 Warning

30 Non-Fatal Error

40 Fatal Error

Page 277: fe115trm

FDM Database Tables

Detail Design 2-195

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_MLSThe OFSA_MLS table stores the language code designations for the FDM database. Refer to the “FDM Multi-Language Support” chapter of the Oracle Financial Services Installation and Configuration Guide for details about multi-language support for the FDM 4.5 database.

The FDM Database Creation and Database Upgrade processes populate this table with the valid MLS codes for the FDM database. Data in this table is protected from manual update.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

MLS_CD NOT NULL VARCHAR2(3) Code identifying the language.

INSTALLED_FLG

NOT NULL NUMBER(1) Designates whether the language is installed in the current FDM database instance. This flag is set during the FDM Database Upgrade and Database Creation Processes.

LANGUAGE NOT NULL VARCHAR2(30) Name for the MLS Code.

DESCRIPTION VARCHAR2(255) Description for the MLS Code.

Index_NameIndex Type

Index Column Sequence Column_Name

MLS_PK Unique 1 MLS_CD

Page 278: fe115trm

FDM Database Tables

2-196 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_NODE_DESCThe OFSA_NODE_DESC table stores information about nodes created in OFSA Tree Rollup IDs. Nodes identify higher aggregate groupings of leaf values for a Tree Rollup ID. Nodes can be used to report and process against summary data rather than individual account data. For example, organizational nodes can be created to designate geographical groupings, such as having a node defined as ’Southwest Region’ to summarize balances for all organizational units within the southwest region of an institution’s geographic area.

OFSA_NODE_DESC information is created and maintained using the Tree Rollup ID interface. This data is accessed to display node names for the Tree Rollup ID, Tree Filter ID, Subtotal ID and Allocation ID interfaces, as well as for OFSA Report IDs. OFSA_NODE_DESC data is also accessed by the Transformation ID during the transformation of OFSA trees to the FDM Reporting Data Mart hierarchies.

Page 279: fe115trm

FDM Database Tables

Detail Design 2-197

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

SYS_ID_NUM NOT NULL NUMBER(10) Designates the Tree Rollup ID to which the levels belong.

ROLLUP_LEVEL NOT NULL NUMBER(5) Designates the level to which the node is assigned. Levels are identified in the OFSA_LEVEL_DESC table.

ROLLUP_NODE NOT NULL NUMBER(14) Identifies the node. The node number is specified by the user when the node is created.

DESCRIPTION VARCHAR2(80) Provides the name or description of the node.

Index_Name Index TypeIndex Column Sequence Column_Name

NODE_DESC Unique 1 SYS_ID_NUM

NODE_DESC Unique 2 ROLLUP_LEVEL

NODE_DESC Unique 3 ROLLUP_NODE

NODE_DESC_LEVEL Non-unique 1 ROLLUP_LEVEL

NODE_DESC_NODE Non-unique 1 ROLLUP_NODE

Page 280: fe115trm

FDM Database Tables

2-198 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_PRIVILEGE_RECIPIENTSThe OFSA_PRIVILEGE_RECIPIENTS table identifies the user, User Groups, Security Profiles and Roles registered for the FDM database.

Columns

Indexes

SequencesNot applicable.

Column Name Null? Type Description

RECIPIENT_NAME

NOT NULL VARCHAR2(30) Identifies the user, User Group, Security Profile or Role registered for the FDM database.

RECIPIENT_TYPE NOT NULL CHAR(1) Identifies the type of recipient - ’U’ for User, ’G’ for User Group, ’S’ for Security Profile and ’R’ for Role.

PROTECTED_FLG NOT NULL NUMBER(1) Designates that the record is reserved by FDM. Records with a ’1’ are protected from modification and cannot be unregistered or changed in any way. Records with a ’0’ can be modified.

Index_Name Index TypeIndex Column Sequence Column_Name

PRIVILEGE_RECIPIENTS_PK

Unique 1 RECIPIENT_NAME

Page 281: fe115trm

FDM Database Tables

Detail Design 2-199

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Column Code Values

Recipient_TypeRecipient Type codes are defined in OFSA_RECIPIENT_TYPE_DSC. The list of Recipient Type codes and descriptions is as follows:

Code Description

G User Group

R Role

S Security Profile

U User Group

Page 282: fe115trm

FDM Database Tables

2-200 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_PROCESS_CASH_FLOWSThe OFSA_PROCESS_CASH_FLOW table stores audit information of the individual cash flows processed by either Oracle Risk Manager or Oracle Transfer Pricing processes. Because this table may be populated with a large number of records, especially when running a Risk Manager stochastic process with the detail cash flow audit option checked, it should be cleaned up periodically. Risk Manager and Transfer Pricing Process IDs that are no longer used should be deleted so their corresponding rows in this table can be deleted.

Columns

Column Name Null? Type Description

RESULT_SYS_ID NOT NULL NUMBER(10) Identifies the Process ID that generated the data. The Process ID may be a Risk Manager or Transfer Pricing process. The result_sys_id links to the sys_id_num column of the OFSA_CATALOG_OF_IDS table.

RECORD_SEQUENCE NOT NULL NUMBER(5) Identifies processing sequence number for the audit record.

CASH_FLOW_SEQUENCE NOT NULL NUMBER(5) Identifies the cash flow sequence for the audit record.

SCENARIO_NUM NOT NULL NUMBER(5) Identifies the scenario number.

FINANCIAL_ELEM_ID NOT NULL NUMBER(14) Designates the Financial Element ID for the cash flow.

ID_NUMBER NOT NULL NUMBER(25) Identifies the financial account. This is the id_number of the source instrument data.

CALC_SOURCE_CD NOT NULL NUMBER(5) Designates how the audit data was generated.

ISO_CURRENCY_CD NOT NULL VARCHAR2(3) Designates the currency in which the generated cash flows were processed. Refer to the OFSA_CURRENCIES_V for a list of valid ISO Currency codes and descriptions.

CASH_FLOW_DATE DATE Specifies the cash flow date.

CASH_FLOW_CD NOT NULL NUMBER(5) Specifies the type of cash flow. The Column Code Values sub-section below lists the cash flow codes and descriptions.

Page 283: fe115trm

FDM Database Tables

Detail Design 2-201

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

FLOAT_VALUE NUMBER(15,4) Specifies the value for the cash flow.

PRODUCT_LEAF_NODE NUMBER(14) Identifies the product leaf value of the cash flow.

ORG_LEAF_NODE NUMBER(14) Identifies the organizational leaf value of the cash flow.

Index_NameIndex Type

Index Column Sequence Column_Name

PROCESS_CASH_FLOWS Unique 1 RESULT_SYS_ID

PROCESS_CASH_FLOWS Unique 2 RECORD_SEQUENCE

PROCESS_CASH_FLOWS Unique 3 CASH_FLOW_SEQUENCE

PROCESS_CASH_FLOWS Unique 4 SCENARIO_NUM

PROCESS_CASH_FLOWS Unique 5 FINANCIAL_ELEM_ID

PROCESS_CASH_FLOWS Unique 6 CALC_SOURCE_CD

Column Name Null? Type Description

Page 284: fe115trm

FDM Database Tables

2-202 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Column Code Values

Calc_Source_CdCALC_SOURCE_CD values are defined in OFSA_CALC_SOURCE_CD and OFSA_CALC_SOURCE_MLS. Use the OFSA_CALC_SOURCE_DSC view to retrieve valid codes and descriptions for this column.

Cash_flow_cdThe cash_flow_cd column of PROCESS_CASH_FLOWS has the following values:

Code Description

0 RM - Regular

1 RM - Stochastic

2 TP - Regular

3 TP - Forward Rates

4 TP - Stochastic

Code Description

1 First event (origination of instrument)

2 Payment

4 Reprice

8 Reprice in tease

16 Reprice out of tease

32 As_of_date

Note: Logical combinations of these values may be found in the column. For example a value of 6 in the cash_flow_cd column would be an additive value, indicating a combination of Payment and Reprice.

Page 285: fe115trm

FDM Database Tables

Detail Design 2-203

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_PROCESS_ERRORSThe OFSA_PROCESS_ERRORS table stores the errors and the log information for the following types of processes:

■ Data Correction

■ Risk Manager

■ Transfer Pricing

■ Transformation

The table is designed so that it can report errors generated as a result of bad instrument data or bad data in a specific column in a table. It is also used to report corrections made to data during ’Data Correction’ processing.

This table may contain a large number of records because errors generated from OFSA processes are cumulative. This table and should be purged periodically.

Columns

Column Name Null? Type Description

PROCESS_SYS_ID NOT NULL NUMBER(10) Identifies the process that generated the data (Data Correction Process ID, Transfer Pricing Process ID, Risk Manager Process ID or Transformation ID). The process_sys_id links to the sys_id_num column of the OFSA_CATALOG_OF_IDS table.

SEQUENCES NOT NULL NUMBER(5) Identifies the sequence number for the record.

ID_NUMBER NOT NULL NUMBER(25) Identifies the instrument record that generated the error or correction.

FIELD_NAME VARCHAR2(30) Designates the name of a field (column) in the table for which the error/correction was raised.

FIELD_VALUE VARCHAR2(80) Specifies the value of the column (in field_name) before the process was completed.

CORRECTED_VALUE VARCHAR2(80) Specifies the value of the column (in field_name) after the process was completed.

DEFAULT_VALUE VARCHAR2(80) Designates the default value for the column (in field_name).

SEVERITY NUMBER(5) Indicates the severity of the error.

Page 286: fe115trm

FDM Database Tables

2-204 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

ERROR_TIME VARCHAR2(8) Indicates the system clock time when the error or correction was generated.

TABLE_NAME NOT NULL VARCHAR2(30) Identifies the table name for the column identified in field_name.

ERROR_DESCRIPTION VARCHAR2(75) Specifies a description of the error.

ERROR_CODE NOT NULL NUMBER(5) Designates the code for the message sent to the log table. Valid codes for this field are defined in OFSA_CORRECTION_PROC_MSG_CD and OFSA_CORRECTION_PROC_MSG_MLS. Use the OFSA_CORRECTION_PROC_MSG_DSC view to retrieve the list of codes and descriptions for this column.

NUM NUMBER(14) This is an internal number used by the process.

LEAF_NUM_ID NOT NULL NUMBER(5) Identifies the leaf column associated with the error or correction. The leaf_num_id links with the leaf_num_id in the OFSA_CATALOG_OF_LEAVES table to identify the column for the leaf.

LEAF_NODE NOT NULL NUMBER(14) Identifies the leaf value. The value in leaf_node must be a valid leaf from the OFSA_LEAF_DESC table for the specified leaf_num_id.

SIM NUMBER(5) This is an internal simulation number.

ERROR_DATE DATE Designates the date that the error or correction was generated.

Index_NameIndex Type

Index Column Sequence Column_Name

OFSA_PROCESS_ERRORS

Unique 1 PROCESS_SYS_ID

OFSA_PROCESS_ERRORS

Unique 2 SEQUENCES

Column Name Null? Type Description

Page 287: fe115trm

FDM Database Tables

Detail Design 2-205

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Column Code Values

Error_CodeERROR_CODE values are defined in OFSA_CORRECTION_PROC_MSG_CD and OFSA_CORRECTION_PROC_MSG_MLS. Use the OFSA_CORRECTION_PROC_MSG_DSC view to retrieve valid codes and descriptions for this column.

Page 288: fe115trm

FDM Database Tables

2-206 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_PROPERTY_COLUMNSThe OFSA_PROPERTY_COLUMNS table designates the columns that are required for FDM Table Classifications. The designated columns are those that are required to exist on an object (table or view) in order for that object to be registered for the Table Classification. The requirements for Table Classifications are grouped together into Table Properties, each Table Property thereby consisting of one or more required columns (or a required procedure - refer to OFSA_PROPERTY_STP for details on procedure requirements for Table Properties). Combinations of Table Properties make up the requirements for Table Classifications.

The FDM Database Upgrade and Database Creation processes populate OFSA_PROPERTY_COLUMNS with the column requirements for each Table Property. Only records for the “Portfolio Requirements” Table Property (table_property_cd=40) can be edited in this table. All other records are protected from modification.

Refer to the “FDM Object Management” chapter of the Oracle Financial Services Installation and Configuration Guide for more information regarding Table Properties and Table Classifications.

Page 289: fe115trm

FDM Database Tables

Detail Design 2-207

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Columns

Indexes

SequencesNot applicable.

Column Name Null? Type Description

TABLE_PROPERTY_CD

NOT NULL NUMBER(5) Identifies the Table Property.

COLUMN_NAME NOT NULL VARCHAR2(30) Designates the column_name required for the Table Property.

PROTECTED_FLG NOT NULL NUMBER(1) Designates whether the record is protected from update. Records with a ’1’ are protected from modification. Records with any other value can be edited.

Index_Name Index TypeIndex Column Sequence Column_Name

PROPERTY_COLUMNS_PK

Unique 1 TABLE_PROPERTY_CD

PROEPRTY_COLUMN_PK

Unique 2 COLUMN_NAME

Page 290: fe115trm

FDM Database Tables

2-208 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Column Code Values

Table_Property_CDTable Property codes are defined in OFSA_TABLE_PROPERTIES. The list of Table Property codes and descriptions is as follows:

Code Description

10 Basic Instrument Requirements

40 Portfolio Requirements

50 Cash Flow Proc. Requirements

60 Cash Flow Edit Requirements

80 Multicurrency Requirements

100 TP Option Costing Requirements

110 TP Basic Requirements

1000 Validate Instrument Leaves

1010 Validate Instrument Key

1020 Validate Transaction Key

1030 Validate Correction Key

Page 291: fe115trm

FDM Database Tables

Detail Design 2-209

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_PROPERTY_STPThe OFSA_PROPERTY_STP table designates the stored procedures that are required for FDM Table Classifications. The designated stored procedures are those that are required to run successfully on an object (table or view) in order for that object to be registered for the Table Classification. The FDM Administration Table Classification Wizard executes the designated stored procedures during Table Classification assignment. The stored procedures validate various logic requirements for the Table Classification assignment, such as validating that all Leaf columns are registered for the object, or validating that the object has a unique index.

The requirements for Table Classifications are grouped together into Table Properties, each Table Property thereby consisting of one or more required stored procedures and one or more required columns (refer to the OFSA_PROPERTY_COLUMNS table). Combinations of Table Properties make up the requirements for Table Classifications.

The FDM Database Upgrade and Database Creation processes populate OFSA_PROPERTY_STP with the stored procedure requirements for each Table Property. All records are protected from modification.

Refer to the “FDM Object Management” chapter of the Oracle Financial Services Installation and Configuration Guide for more information regarding Table Properties and Table Classifications.

Page 292: fe115trm

FDM Database Tables

2-210 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Columns

Indexes

SequencesNot applicable.

Column Name Null? Type Description

TABLE_PROPERTY_CD

NOT NULL NUMBER(5) Identifies the Table Property.

STP_NAME NOT NULL VARCHAR2(100) Designates the package_name.procedure_name required for the Table Property.

Index_Name Index TypeIndex Column Sequence Column_Name

PROPERTY_STP_PK Unique 1 TABLE_PROPERTY_CD

PROEPRTY_STP_PK Unique 2 STP_NAME

Page 293: fe115trm

FDM Database Tables

Detail Design 2-211

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Column Code Values

Table_Property_CDTable Property codes are defined in OFSA_TABLE_PROPERTIES. The list of Table Property codes and descriptions is as follows:

Code Description

10 Basic Instrument Requirements

40 Portfolio Requirements

50 Cash Flow Proc. Requirements

60 Cash Flow Edit Requirements

80 Multicurrency Requirements

100 TP Option Costing Requirements

110 TP Basic Requirements

1000 Validate Instrument Leaves

1010 Validate Instrument Key

1020 Validate Transaction Key

1030 Validate Correction Key

Page 294: fe115trm

FDM Database Tables

2-212 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_REQUEST_QUEUEThe OFSA_REQUEST_QUEUE table stores OFSA server-based processing job requests.

OFSA_REQUEST_QUEUE is populated when a server processing job request is launched. The data in this table and OFSA_RESULT_QUEUE is updated by the OFSA Requestor (RQ) during processing.

Columns

Column Name Null? Type Description

JOB_NUM NOT NULL NUMBER(10) Identifies the job request. Values for this column are generated by the OFSA_REQUEST_QUEUE_SEQ.

LOGIN_NAME NOT NULL VARCHAR2(15) Identifies the user requesting the server processing.

STATUS NUMBER(5) Designates the current status of the job.

PROCESS_ID NUMBER(10) Process number assigned to the job request by the UNIX operating system.

RETURN_CODE NUMBER(5) Indicates the exit or return code status of the job. The return_code values and descriptions are listed below in the Column Code Values sub-section. In addition to the code values listed, a negative number in this column indicates that the job was terminated due to a signal.

For more information on the RQ return_codes, see the “Request Queue” chapter, in the Oracle Financial Services Installation and Configuration Guide.

PRIORITY NUMBER(5) Not currently used.

APPLICATION NOT NULL NUMBER(5) Designates the OFSA product identification number used for application level security.

SERVICE_REQUEST VARCHAR2(15) Specifies a label identifying the exact job request. This label is used to look up the location and name of the application to be launched. The path associated with each label is defined in the ofs.ini file on the server.

REQUEST_DATE DATE Specifies the date the job was submitted.

REQUEST_TIME VARCHAR2(8) Specifies the time the job was submitted.

SCHEDULE_DATE DATE Not currently used.

Page 295: fe115trm

FDM Database Tables

Detail Design 2-213

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesThe OFSA_REQUEST_QUEUE_SEQ sequence generates values for the job_num column.

SCHEDULE_TIME VARCHAR2(8) Not currently used.

APP_ARGUMENTS VARCHAR2(250) An encrypted field containing the arguments passed for the job.

HOST_NAME VARCHAR2(16) If running a single-host Request Queue, this column is null. If running a multi-host Request Queue, the value designates the host name.

END_DATE DATE Specifies the date the job ended.

END_TIME VARCHAR2(8) Specifies the time the job ended.

Index_Name Index TypeIndex Column Sequence Column_Name

TSER_REQUEST_QUEUE Unique 1 JOB_NUM

TRQ_LOGIN_NAME Non-unique 1 LOGIN_NAME

Column Name Null? Type Description

Page 296: fe115trm

FDM Database Tables

2-214 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Column Code Values

Return_CodeRefer to the “Request Queue” chapter in the Oracle Financial Services Installation and Configuration Guide for information on how to interpret the job return conditions listed below:

Status

Code Description

1001 None: running

1002 Failed on fork

1003 Cancelled

1004 Making request

1005 Normal

1006 Bad usage

1007 Session failure

1008 No memory

1009 Internal error

1010 Connect failure

1011 Rights violation

Code Description

0 Request execution

1 Executing

2 Host assigned

5 Remote request

10 Ended

Page 297: fe115trm

FDM Database Tables

Detail Design 2-215

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_RESULT_BUCKETThe OFSA_RESULT_BUCKET table stores bucket start and end dates for each of the cash flow and dynamic modeling buckets used in a process. Each row defines the date periods for as many as 120 buckets per Dynamic GAP Scenario within an Oracle Risk Manager Process ID. There may be multiple sets of dates for each Process ID. The first bucket start date is found in the from_date_001 column while the end date for the bucket is found in to_date_001. Hence, the time span for the first bucket is from ’from_date_001’ to ’to_date_001’.

This table is accessed by FDM Reporting to designate time buckets for report output. The population of time buckets in this table is fiscal year aware, meaning that the time bucket values are in relation to the specified fiscal year settings in OFSA_FISCAL_YEAR_INFO. Data in OFSA_RESULT_BUCKET is also accessed during Transformation ID processing for the transformation of Risk Manager results to the FDM Reporting Data Mart.

OFSA_RESULT_BUCKET is populated during Risk Manager processing.

Page 298: fe115trm

FDM Database Tables

2-216 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

RESULT_SYS_ID NOT NULL NUMBER(10) Risk Manager Process ID

DGAP_SCENARIO_NUM NUMBER(5) Dynamic GAP Scenario number. This identifies a specific set of dates. It is referenced by the start_date_index column in the RES_DTL_XXXXXX table and the start_date_index column in the OFSA_RESULT_MASTER table.

FROM_DATE_001 through FROM_DATE_120

DATE From date

TO_DATE_001 through TO_DATE_120

DATE To date

Index_Name Index TypeIndex Column Sequence Column_Name

RESULT_BUCKET Unique 1 RESULT_SYS_ID

RESULT_BUCKET Unique 2 DGAP_SCENARIO_NUM

Page 299: fe115trm

FDM Database Tables

Detail Design 2-217

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_RESULT_MASTEROFSA_RESULT_MASTER stores current position summary and market values generated from Oracle Risk Manager processing.

This table is accessed by FDM Reporting to display Risk Manager results. OFSA_RESULT_MASTER is also accessed by the Transformation ID during the transformation of Risk Manager results data to the FDM Reporting Data Mart.

Columns

Column Name Null? Type Description

RESULT_SYS_ID NOT NULL NUMBER(10) Risk Manager Process ID number

RESULT_TYPE_CD NOT NULL NUMBER(5) Result Type. Must be a value that exists in the result_type_cd column of the OFSA_RESULT_TYPE_DSC table..

SCENARIO_NUM NOT NULL NUMBER(5) Scenario Number. This column references the scenario_num column of the OFSA_RESULT_SCENARIO table. This reference should be used to look up the descriptions of each scenario.

ORG_UNIT_ID NOT NULL NUMBER(14) The organizational code. Identifies an organizational unit.

GL_ACCOUNT_ID NOT NULL NUMBER(14) Specific GL account assignment.

COMMON_COA_ID NOT NULL NUMBER(14) Leaf column that defines the lowest common level of detail across all product chart of account definitions.

ISO_CURRENCY_CD NOT NULL VARCHAR2(3) Designates the currency in which the results were generated. ISO Currency Codes are defined in the OFSA_CURRENCIES and OFSA_CURRENCIES_MLS tables. Use the OFSA_CURRENCIES_V view to retrieve a list of valid currencies for the FDM database.

FINANCIAL_ROLLUP NUMBER(5) Standard financial statement rollup category in which the transaction falls.

CUR_PAR_BAL NUMBER(14,2) Current gross par value

CUR_NET_PAR_BAL NUMBER(14,2) Current par value- net of participation.

CUR_DEFER_BAL_C NUMBER(14,2) Simulation deferred balance at as_of_date.

Page 300: fe115trm

FDM Database Tables

2-218 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

IndexesThe list of indexes below contains only those indexes provided with the initial installation of the FDM database. FDM requires that you modify the unique index for the OFSA_RESULT_MASTER table to incorporate any user-defined Leaf Columns registered in your database.

CUR_NET_RATE_W NUMBER(14,2) Current net rate weighted by current book balance.

CUR_WARM NUMBER(16,2) Current WARM (Weighted Average Remaining Maturity)

CUR_INTR_REC_ACCR NUMBER(14,2) Current interest receivable accrued.

NEW_GROSS_BALANCE NUMBER(14,2) Gross dollar balance of transactions with an origination date > as-of-date.

NEW_NET_BALANCE NUMBER(14,2) Balance - net of participations of transactions with an origination date > as-of-date.

MARKET_VALUE NUMBER(14,2) Simulation present value of all future principal and interest cash flows.

DURATION NUMBER(14) A calculated term measuring the price sensitivity of instrument to changes in interest rates.

CONVEXITY NUMBER(14,4) Calculated convexity of instrument. Rate of change of duration with respect to changes in interest rates.

CUR_TRANSFER_RATE NUMBER(14,2) Current transfer rate

START_DATE_INDEX NOT NULL NUMBER(5) Start date index. This column references the dgap_scenario_num column in the OFSA_RESULT_BUCKET table.

Index_Name Index TypeIndex Column Sequence Column_Name

RESULT_MASTER_UK

Unique 1 RESULT_SYS_ID

RESULT_MASTER_UK

Unique 2 RESULT_TYPE_CD

Column Name Null? Type Description

Page 301: fe115trm

FDM Database Tables

Detail Design 2-219

Oracle Proprietary, Confidential Information - Use Restricted by Contract

SequencesNot applicable.

RESULT_MASTER_UK

Unique 3 SCENARIO_NUM

RESULT_MASTER_UK

Unique 4 ISO_CURRENCY_CD

RESULT_MASTER_UK

Unique 5 ORG_UNIT_ID

RESULT_MASTER_UK

Unique 6 GL_ACCOUNT_ID

RESULT_MASTER_UK

Unique 7 COMMON_COA_ID

RESULT_MASTER_UK

Unique 8 START_DATE_INDEX

RESULT_MASTER_1 Non-unique 1 ORG_UNIT_ID

RESULT_MASTER_1 Non-unique 2 RESULT_SYS_ID

RESULT_MASTER_1 Non-unique 3 SCENARIO_NUM

RESULT_MASTER_2 Non-unique 1 GL_ACCOUNT_ID

RESULT_MASTER_2 Non-unique 2 RESULT_SYS_ID

RESULT_MASTER_2 Non-unique 3 SCENARIO_NUM

RESULT_MASTER_3 Non-unique 1 COMMON_COA_ID

RESULT_MASTER_3 Non-unique 2 RESULT_SYS_ID

RESULT_MASTER_3 Non-unique 3 SCENARIO_NUM

Index_Name Index TypeIndex Column Sequence Column_Name

Page 302: fe115trm

FDM Database Tables

2-220 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Column Code Values

Result_Type_CDThe result_type_cd column has the following codes:

ISO_Currency_CDThe list of ISO Currency Codes for the FDM database can be retrieved from the OFSA_CURRENCIES_V view.

Code Description

0 Current Position

1 New Business

-1 Combined Results

2 Formula Leaves Data

Page 303: fe115trm

FDM Database Tables

Detail Design 2-221

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_RESULT_QUEUEThe OFSA_RESULT_QUEUE table stores process messages for OFSA server processing jobs. These messages are posted by OFSA Request Queue during processing.

OFSA_RESULT_QUEUE links to the job request in OFSA_REQUEST_QUEUE. For each job request in OFSA_REQUEST_QUEUE, the Request Queue posts one or several messages in OFSA_RESULT_QUEUE.

Columns

Indexes

Column Name Null? Type Description

JOB_NUM NOT NULL

NUMBER(5) Identifies the job request. Links to the job_num in OFSA_REQUEST_QUEUE.

RESULT_TYPE NOT NULL

NUMBER(5) Designates the location where the message is displayed on the OFSA Server Status screen. The locations are identified as follows:

RESULT_MESSAGE VARCHAR2(45) Specifies the message displayed on the Server Status screen.

Index_Name Index TypeIndex Column Sequence Column_Name

TSER_RESULT_QUEUE Unique 1 JOB_NUM

TSER_RESULT_QUEUE Unique 2 RESULT_TYPE

Result Type Server Status Display Location

1 Step/Page

2 Table name

3 Record count

4 Title

5 Job description

Page 304: fe115trm

FDM Database Tables

2-222 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

SequencesNot applicable.

Column Code ValuesNot applicable.

Page 305: fe115trm

FDM Database Tables

Detail Design 2-223

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_RESULT_SCENARIOStores information on the scenarios used by an Oracle Risk Manager Process ID during processing.

Data in OFSA_RESULT_SCENARIO is used by FDM Reporting and by the Transformation ID during the transformation of Risk Manager results to the FDM Reporting Data Mart.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

RESULT_SYS_ID NOT NULL NUMBER(10) Risk Manager Process ID

SCENARIO_NUM NOT NULL NUMBER(5) Scenario Number. Uniquely identifies a scenario. Referenced by the scenario_num column of the OFSA_RESULT_MASTER table and the scenario_num column of the RES_DTL_XXXXXX table.

DESCRIPTION VARCHAR2(80) Scenario description

Index_Name Index TypeIndex Column Sequence Column_Name

RESULT_SCENARIO Unique 1 RESULT_SYS_ID

RESULT_SCENARIO Unique 2 SCENARIO_NUM

Page 306: fe115trm

FDM Database Tables

2-224 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_ROLE_ASSIGNMENTThe OFSA_ROLE_ASSIGNMENT table records grants of FDM registered roles to users, User Groups and other roles performed within the FDM Administration application. The FDM procedures Grant All and Grant All Roles re-execute the role assignments recorded in this table when invoked.

Roles granted to User Groups are actually granted to all individual members of the User Group.

The FDM Database Upgrade and Database Creation processes populate OFSA_ROLE_ASSIGNMENT with assignments for some of the seeded roles. Entries designated with the PROTECTED_FLG=1 are protected from modification.

Page 307: fe115trm

FDM Database Tables

Detail Design 2-225

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

ROLE_NAME NOT NULL VARCHAR2(30) Identifies the FDM registered role for which the assignment applies. Must be a role identified in OFSA_ROLES and OFSA_PRIVILEGE_RECIPIENTS.

RECIPIENT_NAME NOT NULL VARCHAR2(30) Identifies the user, User Group, or (External) role for which the role grant applies. Must exist in OFSA_PRIVILEGE_RECIPIENTS. FDM allows role assignment to other roles only for External roles being assigned to an External role.

PROTECTED_FLG NOT NULL NUMBER(1) Designates whether the record is protected from update or available for modification. A ’1’ indicates that the record is protected from update and cannot be changed or deleted. Any other value designates a user defined row that is available for modification.

Index_Name Index TypeIndex Column Sequence Column_Name

ROLE_ASSIGNMENT_PK

Unique 1 RECIPIENT_NAME

ROLE_ASSIGNMENT_PK

Unique 2 ROLE_NAME

Page 308: fe115trm

FDM Database Tables

2-226 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_ROLESThe OFSA_ROLES table identifies roles registered for the FDM database. Role registration is performed using the FDM Administration Role Registration Wizard.

The FDM Database Upgrade and Database Creation processes populate OFSA_ROLES with information for seeded roles. Rows designated with the PROTECTED_FLG=1 are protected from modification.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

ROLE_NAME NOT NULL VARCHAR2(30) Identifies the role registered for the FDM database. Must also exist in OFSA_PRIVILEGE_RECIPIENTS with a RECIPIENT_TYPE=’R’.

PASSWORD VARCHAR2(50) Designates the encrypted password for the role. FDM requires that Internal roles are identified with a password. This encrypted password is accessed by the OFSA applications in order to automatically enable roles for the user’s session.

INTERNAL_FLG NOT NULL NUMBER(1) Designates whether the role is an ’Internal’ or ’External’ role. A ’1’ indicates that the role is ’Internal’. A ’0’ indicates that the role is External.

PROTECTED_FLG NOT NULL Designates whether the row is protected from update. A ’1’ indicates that the row is protected and cannot be modified. Any other value designates a user defined row that can be modified.

DESCRIPTION VARCHAR2(255) Long description for the role.

Index_Name Index TypeIndex Column Sequence Column_Name

ROLES_PK Unique 1 ROLE_NAME

Page 309: fe115trm

FDM Database Tables

Detail Design 2-227

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_SEC_PROFILE_ASSIGNMENTThe OFSA_SEC_PROFILE_ASSIGNMENT table records assignments of Security Profiles to users and User Groups. Security Profiles provide OFSA application and functional privileges for FDM users. They are assigned to users in the FDM Administration application.

The FDM Database Upgrade and Database Creation processes populate OFSA_SEC_PROFILE_ASSIGNMENT with information for seeded Security Profile assignments. Rows designated with the PROTECTED_FLG=1 are protected from modification.

Columns

Indexes

Column Name Null? Type Description

RECIPIENT_NAME NOT NULL VARCHAR2(30) Identifies the user or User Group receiving the Security Profile privileges. Users and User Groups must exist in OFSA_PRIVILEGE_RECIPIENTS with an appropriate RECIPIENT_TYPE (’U’ for User or ’G’ for User Group).

SECURITY_PROFILE_NAME

VARCHAR2(50) Identifies the Security Profile assigned to the User or User Group. Security Profiles must exist in OFSA_PRIVILEGE_RECIPIENTS with a RECIPIENT_TYPE=’S’ and in OFSA_SECURITY_PROFILES.

PROTECTED_FLG NOT NULL Designates whether the row is protected from update. A ’1’ indicates that the row is protected and cannot be modified. Any other value designates a user defined row that can be modified.

Index_Name Index TypeIndex Column Sequence Column_Name

SEC_PROFILE_ASSIGNMENT_PK

Unique 1 RECIPIENT_NAME

SEC_PROFILE_ASSIGNMENT_PK

Unique 2 SECURITY_PROFILE_NAME

Page 310: fe115trm

FDM Database Tables

2-228 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

SequencesNot applicable.

Column Code ValuesNot applicable.

Page 311: fe115trm

FDM Database Tables

Detail Design 2-229

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_SECURITY_PROFILESThe OFSA_SECURITY_PROFILES table identifies Security Profiles defined for the FDM database. Security Profile creation is performed using the FDM Administration Security Profile Creation Wizard.

The FDM Database Upgrade and Database Creation processes populate OFSA_SECURITY_PROFILES with information for seeded Security Profiles. Rows designated with the PROTECTED_FLG=1 are protected from modification.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

SECURITY_PROFILE_NAME

NOT NULL VARCHAR2(30) Identifies the Security Profile defined for the FDM database. Must also exist in OFSA_PRIVILEGE_RECIPIENTS with a RECIPIENT_TYPE=’S’.

SECURITY_PROFILE_CREATOR

NOT NULL VARCHAR2(30) Designates the user that originally created the Security Profile.

CREATION_DATE NOT NULL DATE Designates the date on which the Security Profile was created.

PROTECTED_FLG NOT NULL Designates whether the row is protected from update. A ’1’ indicates that the row is protected and cannot be modified. Any other value designates a user defined row that can be modified.

DESCRIPTION VARCHAR2(255) Long description for the Security Profile.

Index_Name Index TypeIndex Column Sequence Column_Name

SECURITY_PROFILES_PK

Unique 1 SECURITY_PROFILE_NAME

Page 312: fe115trm

FDM Database Tables

2-230 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_TAB_COLUMNSThe OFSA_TAB_COLUMNS table identifies all columns registered for the FDM database. Columns are identified by the object (table or view) on which they reside. In general, all of the columns that exist on an object registered for the FDM database are identified in OFSA_TAB_COLUMNS.

The OFSA_TAB_COLUMNS table is analogous to the Oracle RDBMS catalog ALL_TAB_COLUMNS. In order for a column to be registered in OFSA_TAB_COLUMNS, the column must first exist in ALL_TAB_COLUMNS.

Columns are registered for the FDM database using the Object Registration Wizard in FDM Administration.

The FDM Database Creation and Database Upgrade processes populate OFSA_TAB_COLUMNS with rows for all tables registered in the database.

For information about Object Registration, refer to the “FDM Object Management” chapter of the Oracle Financial Services Installation and Configuration Guide and the Oracle Financial Data Manager Administration Guide.

Columns

Column Name Null? Type Description

TABLE_NAME NOT NULL VARCHAR2(30) Identifies the table or view for which the column is registered.

COLUMN_NAME NOT NULL VARCHAR2(30) Identifies the registered column name.

OWNER NOT NULL VARCHAR2(30) Designates the owner of the table or view. For Release 4.5, FDM only supports a single schema owner, as identified in OFSA_DB_INFO. All objects registered for the FDM database instance are owned by the OWNER identified in OFSA_DB_INFO. When registering objects from other schemas (or database instances), the FDM Administration application creates a view owned by the FDM Schema Owner to point to the object in the foreign schema. FDM Administration then registers this view in the FDM Metadata.

DISPLAY_FLG NOT NULL NUMBER(1) Indicates whether the column appears in List of Values within the OFSA Applications. A ’1’ indicates that the column name is displayed. Any other value indicates that the column name is not displayed.

Page 313: fe115trm

FDM Database Tables

Detail Design 2-231

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Column Code Values

OFSA_DATA_TYPE_CDCode values and descriptions for the OFSA_DATA_TYPE_CD column are defined in the OFSA_DATA_TYPE_DSC table. The following is a list of valid values for this column:

OFSA_DATA_TYPE_CD

NOT NULL NUMBER(5) Specifies how the column is used for the OFSA applications. The OFSA_DATA_TYPE_DSC table provides the list of valid FDM Data Types.

DBF_NAME NOT NULL VARCHAR2(10) Specifies the name of the column as it appears in a Database Filename (DBF) when data is exported from the column using the OFSA Export ID functionality.

Index_Name Index TypeIndex Column Sequence Column_Name

TAB_COLUMNS_PK Unique 1 TABLE_NAME

TAB_COLUMNS_PK Unique 2 COLUMN_NAME

TAB_COLUMNS_PK Unique 3 OWNER

FDM Data Type Code FDM Data Type

1 BALANCE

2 CHAR

3 CODE

4 CODE_NUM

5 DATE

Column Name Null? Type Description

Page 314: fe115trm

FDM Database Tables

2-232 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

6 DESCRIPTION

7 LONG RAW

8 FLAG

9 FREQ

10 LEAF

11 IDENTITY

12 ID_NUMBER

13 MULT

14 N/A

15 NUMBER

16 NUMERIC

17 RATE

18 SWITCH

19 SYS_ID_NUM

20 TERM

21 VARCHAR2

22 UNDEFINED

23 CHAR_RANGE

FDM Data Type Code FDM Data Type

Page 315: fe115trm

FDM Database Tables

Detail Design 2-233

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_TAB_COLUMNS_MLSThe OFSA_TAB_COLUMNS_MLS table provides the translatable display names and descriptions for columns registered in the FDM database. Each column registered in OFSA_TAB_COLUMNS must have a corresponding record in OFSA_TAB_COLUMNS_MLS per language installed in the database.

Refer to the “Multi-Language Support’ chapter of the Oracle Financial Services Installation Guide for information on how display names and descriptions are stored in the FDM database in multiple languages.

Page 316: fe115trm

FDM Database Tables

2-234 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Columns

Indexes

SequencesNot applicable.

Column Code Values

MLS_CDCode values and descriptions for the MLS_CD column are defined in the OFSA_MLS table.

Column Name Null? Type Description

MLS_CD NOT NULL VARCHAR2(3) Identifies the language for the display name and description.

TABLE_NAME NOT NULL VARCHAR2(30) Identifies the table or view for which the column is registered.

COLUMN_NAME NOT NULL VARCHAR2(30) Identifies the registered column name. The column name must exist in OFSA_TAB_COLUMNS for the designated table_name and owner.

OWNER NOT NULL VARCHAR2(30) Designates the owner of the table or view on which the column exists.

DISPLAY_NAME NOT NULL VARCHAR2(40) Designates the name of the column as it appears within the OFSA applications.

DESCRIPTION NOT NULL VARCHAR2(255) Long description for the column.

Index_Name Index TypeIndex Column Sequence Column_Name

TAB_COLUMNS_MLS_PK

Unique 1 MLS_CD

TAB_COLUMNS_MLS_PK

Unique 2 TABLE_NAME

TAB_COLUMNS_MLS_PK

Unique 3 COLUMN_NAME

TAB_COLUMNS_MLS_PK

Unique 4 OWNER

Page 317: fe115trm

FDM Database Tables

Detail Design 2-235

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_TABLE_CLASS_ASSIGNMENTThe OFSA_TABLE_CLASS_ASSIGNMENT table records the assignment of Table Classifications to objects (tables and views) registered for the FDM database. Table Classifications provide a means to designate how tables and views are used within the OFSA Applications. Each Table Classification identifies a specific purpose for which an assigned table or view is used.

The FDM Database Upgrade and Database Creation processes automatically assign Table Classifications for FDM Reserved objects. These Table Classifications are designated for “Internal use only” and are used by the OFSA Applications to interact properly with reserved objects in the FDM database. The FDM Database Upgrade and Database Creation processes also automatically assign “User Assignable” Table Classifications to client data objects that existed in the OFSA 3.5/4.0 database prior to upgrade. The assignments are based upon the characteristics of the instrument table.

You can assign Table Classifications for client data objects using the Table Classification Assignment Wizard within the FDM Administration application.

For information about Table Classifications and how they are used, refer to the “FDM Object Management” chapter in the Oracle Financial Services Installation and Configuration Guide.

Columns

Column Name Null? Type Description

TABLE_NAME NOT NULL VARCHAR2(30) Identifies the table or view for which the Table Classification assignment applies. Must be a registered object in OFSA_TABLES.

OWNER NOT NULL VARCHAR2(30) Identifies the owner of the table or view. For Release 4.5, must be the same name as the OWNER column in OFSA_DB_INFO.

TABLE_CLASSIFICATION_CD

NOT NULL NUMBER(5) Designates the Table Classification assigned to the table or view.

Page 318: fe115trm

FDM Database Tables

2-236 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Column Code Values

Table_Classification_CDTable Classification codes are defined in OFSA_TABLE_CLASSIFICATION and OFSA_TABLE_CLASSIFICATION_MLS. Use the OFSA_TABLE_CLASSIFICATION_DSC table to retrieve a list of code and descriptions for this column.

Refer to the “FDM Object Management” chapter of the Oracle Financial Services Installation and Configuration Guide for detailed information about Table Classifications.

PROTECTED_FLG NOT NULL NUMBER(1) Designates whether the assignment record is protected from update or is available for modification. A ’1’ indicates that the assignment record is protected from update and cannot be changed. FDM records such assignments for internal objects. Any other value indicates that the assignment record is available for modification.

Index_Name Index TypeIndex Column Sequence Column_Name

TABLE_CLASS_ASSIGNMENT_PK

Unique 1 TABLE_NAME

TABLE_CLASS_ASSIGNMENT_PK

Unique 2 OWNER

TABLE_CLASS_ASSIGNMENT_PK

Unique 3 TABLE_CLASSIFICATION_CD

TABLE_CLASS_ASSIGNMENT_FK1

Non-unique 1 TABLE_CLASSIFICATION_CD

Column Name Null? Type Description

Page 319: fe115trm

FDM Database Tables

Detail Design 2-237

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_TABLE_CLASS_PROPERTIESOFSA_TABLE_CLASS_PROPERTIES associates Table Properties to Table Classifications. Table Properties identify required characteristics for Table Classifications. In order for an object to receive a particular classification, it must meed the requirements specified by the Table Properties (if any) of that Table Classification.

There are two types of Table Properties: column names and stored procedures.

The FDM Database Upgrade and Database Creation processes populate OFSA_TABLE_CLASS_PROPERTIES. The Table Property to Table Classification associations in this table are protected from modification.

Columns

Indexes

SequencesNot applicable.

Column Name Null? Type Description

TABLE_CLASSIFICATION_CD

NOT NULL NUMBER(5) Identifies the Table Classification. Must exist in the OFSA_TABLE_CLASSIFICATION table.

TABLE_PROPERTY_CD

NOT NULL NUMBER(5) Identifies the Table Properties that make up the requirements of the Table Classification. Must exist in OFSA_TABLE_PROPERTIES.

Index_Name Index TypeIndex Column Sequence Column_Name

TABLE_CLASS_PROPERTIES_PK

Unique 1 TABLE_CLASSIFICATION_CD

TABLE_CLASS_PROPERTIES_PK

Unique 2 TABLE_PROPERTY_CD

Page 320: fe115trm

FDM Database Tables

2-238 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Column Code Values

Table_Classification_CDTable Classification codes are defined in OFSA_TABLE_CLASSIFICATION and OFSA_TABLE_CLASSIFICATION_MLS. Use the OFSA_TABLE_CLASSIFICATION_DSC table to retrieve a list of code and descriptions for this column.

Refer to the “FDM Object Management” chapter of the Oracle Financial Services Installation and Configuration Guide for detailed information about Table Classifications.

Table_Property_CDTable Property codes are defined in OFSA_TABLE_PROPERTIES. The list of Table Property codes and descriptions is as follows:

Code Description

10 Basic Instrument Requirements

40 Portfolio Requirements

50 Cash Flow Proc. Requirements

60 Cash Flow Edit Requirements

80 Multicurrency Requirements

100 TP Option Costing Requirements

110 TP Basic Requirements

1000 Validate Instrument Leaves

1010 Validate Instrument Key

1020 Validate Transaction Key

1030 Validate Correction Key

Page 321: fe115trm

FDM Database Tables

Detail Design 2-239

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_TABLE_CLASSIFICATIONThe OFSA_TABLE_CLASSIFICATION table records the assignment of Table Classifications to objects (tables and views) registered for the FDM database. Table Classifications provide a means to designate how tables and views are used within the OFSA applications. Each Table Classification identifies a specific purpose for which an assigned table or view is used.

The FDM Database Upgrade and Database Creation processes automatically populate OFSA_TABLE_CLASSIFICATION with the seeded Table Classifications. Users are not allowed to create their own Table Classifications, and all records in OFSA_TABLE_CLASSIFICATION are protected from modification.

You can assign Table Classifications for client data objects using the Table Classification Assignment Wizard within the FDM Administration application.

For information about Table Classifications and how they are used, refer to the “FDM Object Management” chapter in the Oracle Financial Services Installation and Configuration Guide.

Columns

Column Name Null? Type Description

TABLE_CLASSIFICATION_CD

NOT NULL NUMBER(5) Identifies the Table Classification code.

USER_ASSIGN_FLG

NOT NULL NUMBER(1) Designates whether the Table Classification can be assigned to objects from within FDM Administration. A ’1’ indicates that the Table Classification can be assigned to objects using the Table Classification Assignment Wizard from within FDM Administration. A ’0’ indicates that the Table Classification is an internal classification not available for user assignment. Internal Table Classifications are assigned only to objects by the FDM Database Upgrade and Database Creation processes.

Page 322: fe115trm

FDM Database Tables

2-240 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

DYNAMIC_PRIV_FLG

NOT NULL NUMBER(1) Designates whether the Table Classification is available for Dynamic Privilege assignment within FDM Administration. A ’1’ indicates that the Table Classification is a Dynamic Table Classification (such as “RM Results”), representing tables that are created during processing. A ’0’ indicates that the Table Classification represents static tables or views.

Index_Name Index TypeIndex Column Sequence Column_Name

TABLE_CLASSIFICATION_CD

Unique 1 TABLE_CLASSIFICATION_CD

Column Name Null? Type Description

Page 323: fe115trm

FDM Database Tables

Detail Design 2-241

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_TABLE_CLASSIFICATION_MLSThe OFSA_TABLE_CLASSIFICATION table provides translatable display names and descriptions for Table Classifications. Each Table Classification defined in OFSA_TABLE_CLASSIFICATION has a corresponding record in OFSA_TABLE_CLASSIFICATION_MLS per language installed in the database.

Refer to the “Multi-Language Support’ chapter of the Oracle Financial Services Installation Guide for information on how display names and descriptions are stored in the FDM database in multiple languages.

Columns

Indexes

Column Name Null? Type Description

MLS_CD NOT NULL VARCHAR2(3) Identifies the language of the display name and description. Refer to the OFSA_MLS table for a list of MLS code values.

TABLE_CLASSIFICATION_CD

NOT NULL NUMBER(5) Identifies the Table Classification code.

TABLE_CLASSIFICATION

NOT NULL VARCHAR2(30) Display name for the Table Classification.

DESCRIPTION VARCHAR2(255) Description for the Table Classification.

Index_Name Index TypeIndex Column Sequence Column_Name

TABLE_CLASSIFICATION_MLS_PK

Unique 1 MLS_CD

TABLE_CLASSIFICATION_MLS_PK

Unique 2 TABLE_CLASSIFICATION_CD

TABLE_CLASSIFICATION_MLS_FK1

Non-unique 1 TABLE_CLASSIFICATION_CD

Page 324: fe115trm

FDM Database Tables

2-242 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

SequencesNot applicable.

Column Code ValuesNot applicable.

Page 325: fe115trm

FDM Database Tables

Detail Design 2-243

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_TABLE_PROPERTIESTable Properties identify required characteristics for Table Classifications. In order for an object to receive a particular classification, it must meed the requirements specified by the Table Properties (if any) of that Table Classification. The OFSA_TABLE_PROPERTIES table defines the Table Properties available within the FDM database.

There are two types of Table Properties: column names and stored procedures.

The FDM Database Upgrade and Database Creation processes populate OFSA_TABLE_PROPERTIES. The Table Properties defined in this table are protected from modification and users are not allowed to add any new properties.

The following is a list of valid Table Properties:

Code Description

10 Basic Instrument Requirements

40 Portfolio Requirements

50 Cash Flow Proc. Requirements

60 Cash Flow Edit Requirements

80 Multicurrency Requirements

100 TP Option Costing Requirements

110 TP Basic Requirements

1000 Validate Instrument Leaves

1010 Validate Instrument Key

1020 Validate Transaction Key

1030 Validate Correction Key

Page 326: fe115trm

FDM Database Tables

2-244 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

TABLE_PROPERTY_CD

NOT NULL NUMBER(5) Identifies the Table Property code.

TABLE_PROPERTY

NOT NULL VARCHAR2(30) Name of the Table Property. Note that Table Property names are not translatable.

DESCRIPTION VARCHAR2(255) Description of the Table Property. Table Property Descriptions are not translatable.

Index_Name Index TypeIndex Column Sequence Column_Name

TABLE_PROPERTIES_PK

Unique 1 TABLE_CLASSIFICATION_CD

Page 327: fe115trm

FDM Database Tables

Detail Design 2-245

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_TABLE_STORAGE_DEFAULTSThe OFSA_TABLE_STORAGE_DEFAULTS table enables the administrator to specify the storage parameters used by the transformation engine when it creates any transformation output table.

ColumnsFor detailed descriptions of the columns in this table, and for further explanation on how the transformation engine uses the information in these tables in sizing output tables, refer to the “Transformation Output Tables” section in the “FDM Object Management” chapter of the Oracle Financial Services Installation and Configuration Guide.

Indexes

SequencesNot applicable.

Column Code Values

Output_Table_Class_CDThe Output_Table_Class_CD column of OFSA_INDEX_STORAGE_DEFAULTS identifies the transformation output Table Classification types and contains the following codes:

Index_NameIndex Type

Index Column Sequence Column_Name

OFSA_TABLE_STORAGE_DEFAULTS Unique 1 OUTPUT_TABLE_CLASS_CD

OFSA_TABLE_STORAGE_DEFAULTS Unique 2 USER_NAME

Code Description

260 Transformed Ledger Stat

270 Transformed RM Cash Flow

280 Transformed RM GAP

290 Transformed Tree Rollup

Page 328: fe115trm

FDM Database Tables

2-246 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_TABLE_TRACKINGThe OFSA_TABLE_TRACKING table records information about the source of each transformation output table. It is also used to prevent more than one Transformation ID from simultaneously attempting to create or write to the same output table.

Each time a transformation output table is created, a new row is entered into this table, containing the table name, the process_start_timestamp, the process_sys_id of the Transformation ID that is creating the table and the user name under which the ID is being run. The process_end_timestamp column is left null. This indicates that the table is reserved for processing and no other ID is allowed to process it. After the table has been created, the source_table_name, source_sys_id, ddl_action and dml_action columns are also filled in.

At the end of the transformation process, the process_end_timestamp is filled in, indicating that processing is complete and that the table is no longer reserved.

Subsequent selective reprocessing or appending to the output table adds additional rows to this table, providing a history of its transformations since the table was created or last re-created. Each time a transformation requires the re-creation of an existing output table, all of the old rows for that table are deleted from OFSA_TABLE_TRACKING and the history for that table begins again from that point.

Columns

Column Name Null? Type Description

TABLE_NAME NOT NULL VARCHAR2(30) The name of the output table described by this row.

PROCESS_START_TIMESTAMP NOT NULL DATE The date and time that the transformation process began. This also indicates when the table was reserved.

PROCESS_END_TIMESTAMP DATE The date and time that the transformation process ended. This also indicates when the table was no longer reserved.

PROCESS_SYS_ID NUMBER(10) The process_sys_id identifying the Transformation ID that created the table.

Page 329: fe115trm

FDM Database Tables

Detail Design 2-247

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

PROCESS_ID_SEQ NUMBER(5) The process_id_seq identifying the page of the Transformation ID that created the table. Transformation IDs currently contain only one page.

USER_NAME VARCHAR2(30) The Oracle user name of the user who ran the Transformation ID.

SOURCE_TABLE_NAME VARCHAR2(30) The name of the table from which the data in the output table was transformed.

SOURCE_SYS_ID NUMBER(10) For Risk Manager transformations, the sys_id_num value identifying the Process ID that created the source table. For tree rollup transformations, the sys_id_num value identifying the Tree Rollup ID used as the source for the transformation. This is not used for Ledger Stat transformations.

DDL_ACTION VARCHAR2(20) Describes whether the output table was created for the first time, recreated or was altered to add columns.

DML_ACTION VARCHAR2(20) Describes whether the table data was populated for the first time, repopulated or selectively reprocessed.

Index_NameIndex Type

Index Column Sequence Column_Name

OFSA_TABLE_TRACKING Unique 1 TABLE_NAME

OFSA_TABLE_TRACKING Unique 2 PROCESS_START_TIMESTAMP

Column Name Null? Type Description

Page 330: fe115trm

FDM Database Tables

2-248 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Column Code Values

DDL_ActionThe ddl_action column of OFSA_TABLE_TRACKING has the following values:

DML_ActionThe dml_action column of OFSA_TABLE_TRACKING has the following values:

Code Description

CREATE TABLE Indicates that the table was created for the first time.

RECREATE TABLE Indicates that the table existed previously and was recreated.

APPEND COLUMNS Indicates that additional financial element columns were added to the table.

Code Description

POPULATE Indicates that the data was populated for the first time.

REPOPULATE Indicates that the previous data was deleted (or the table was dropped and recreated) and the data was repopulated.

SELECTIVE REPROCESS Indicates that some of the pre-existing data may have been deleted and replaced, or that new rows were appended to the table.

Page 331: fe115trm

FDM Database Tables

Detail Design 2-249

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_TABLESOFSA_TABLES identifies all objects (tables and views) registered for the FDM database.

The OFSA_TABLES table is analogous to the Oracle RDBMS catalog ALL_TABLES. In order for a table or view to be registered in OFSA_TABLES, the table or view must first exist in ALL_TAB_COLUMNS.

Objects are registered for the FDM database using the Object Registration Wizard in FDM Administration.

The FDM Database Creation and Database Upgrade processes populate OFSA_TABLES with rows for all FDM reserved objects. The FDM Database Upgrade process also automatically registers instrument tables from the existing OFSA 3.5/4.0 database, while the FDM Database Creation process registers the set of default instrument tables created with FDM database installation.

Never unregister FDM Reserved tables from your database. Client data tables (such as Instrument, Account, Transaction and User Defined code tables) can be registered and unregistered from the FDM Administration application.

For information about Object Registration, refer to the “FDM Object Management” chapter of the Oracle Financial Services Installation and Configuration Guide and the Oracle Financial Data Manager Administration Guide.

Columns

Column Name Null? Type Description

TABLE_NAME NOT NULL VARCHAR2(30) Identifies the table or view registered for the FDM database.

OWNER NOT NULL VARCHAR2(30) Designates the owner of the table or view. For Release 4.5, FDM supports only a single schema owner, as identified in OFSA_DB_INFO. All objects registered for the FDM database instance are owned by the OWNER identified in OFSA_DB_INFO. When registering objects from other schemas (or database instances), the FDM Administration application creates a view owned by the FDM Schema Owner to point to the object in the foreign schema. FDM Administration then registers this view in the FDM Metadata.

Page 332: fe115trm

FDM Database Tables

2-250 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

DISPLAY_FLG NOT NULL NUMBER(1) Indicates whether the object appears in List of Values within the OFSA Applications. A ’1’ indicates that the object is displayed. Any other value indicates that the object is not displayed.

DBF_NAME NOT NULL VARCHAR2(10) Specifies the name of the object as it appears in a Database Filename (DBF) when data is exported from the object using the OFSA Export ID functionality.

Index_Name Index TypeIndex Column Sequence Column_Name

TABLES_PK Unique 1 TABLE_NAME

TABLES_PK Unique 2 OWNER

Column Name Null? Type Description

Page 333: fe115trm

FDM Database Tables

Detail Design 2-251

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_TABLES_MLSThe OFSA_TABLES_MLS table provides the translatable display names and descriptions for objects (tables and views) registered in the FDM database. Each object registered in OFSA_TABLES has a corresponding record in OFSA_TABLES_MLS per language installed in the database.

Refer to the “Multi-Language Support’ chapter of the Oracle Financial Services Installation Guide for information on how display names and descriptions are stored in the FDM database in multiple languages.

Columns

Indexes

SequencesNot applicable.

Column Name Null? Type Description

MLS_CD NOT NULL VARCHAR2(3) Identifies the language for the display name and description.

TABLE_NAME NOT NULL VARCHAR2(30) Identifies the table or view for registered for the FDM database.

OWNER NOT NULL VARCHAR2(30) Designates the owner of the table or view.

DISPLAY_NAME NOT NULL VARCHAR2(40) Designates the name of the object as it appears within the OFSA applications.

DESCRIPTION NOT NULL VARCHAR2(255) Long description for the object.

Index_Name Index TypeIndex Column Sequence Column_Name

TABLES_MLS_PK Unique 1 MLS_CD

TABLES_MLS_PK Unique 2 TABLE_NAME

TABLES_MLS_PK Unique 3 COLUMN_NAME

TABLES_MLS_PK Unique 4 OWNER

Page 334: fe115trm

FDM Database Tables

2-252 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Column Code Values

MLS_CDCode values and descriptions for the MLS_CD column are defined in the OFSA_MLS table.

Page 335: fe115trm

FDM Database Tables

Detail Design 2-253

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_TEMP_OBJECTSThe OFSA_TEMP_OBJECTS table stores information regarding temporary database objects. Various OFSA modules create temporary database objects, including both tables and views. Every time an OFSA product creates a temporary object, the creation of the object is recorded in OFSA_TEMP_OBJECTS. When the application is finished with the temporary object, the record of the object is deleted from OFSA_TEMP_OBJECTS. Objects listed in OFSA_TEMP_OBJECTS that are not being used by any process may be safely dropped from the database (and deleted from OFSA_TEMP_OBJECTS).

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

OBJECT_NAME NOT NULL VARCHAR2(25) Name of the temporary object.

LOGIN_NAME NOT NULL VARCHAR2(15) User ID of the person who created the object.

JOB_NUM NOT NULL NUMBER(5) The job number of the process that created the object.

SYS_ID_NUM NOT NULL NUMBER(10) The sys_id_num of the process that created the object.

CREATE_DATE DATE The date when the object was created.

CREATE_TIME VARCHAR2(8) The time (in HH:MM:SS format) when the object was created.

Index_Name Index TypeIndex Column Sequence Column_Name

TSER_TEMP_OBJECTS Unique 1 OBJECT_NAME

Page 336: fe115trm

FDM Database Tables

2-254 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_TM_STOCH_MKT_VALThe OFSA_TM_STOCH_MKT_VAL table stores market value data per product leaf generated in an Oracle Risk Manager stochastic process.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

TM_PROCESS_SYS_ID NOT NULL NUMBER(10) Identifies the Risk Manager Process ID.

LEAF_NODE NOT NULL NUMBER(14) Designates the product leaf value.

NUM_OF_RATE_PATHS NOT NULL NUMBER(5) Specifies the number of rate paths processed by the Risk Manager Process ID.

CUR_BALANCE NOT NULL NUMBER(14,2) Specifies the current balance calculated by the Risk Manager Process ID for the designated product leaf value.

MARKET_VALUE NOT NULL NUMBER(14,2) Specifies the market value of the current balance calculated by the Risk Manager Process ID.

Index_Name Index TypeIndex Column Sequence Column_Name

TM_STOCH_MKT_VAL Unique 1 TM_PROCESS_SYS_ID

TM_STOCH_MKT_VAL Unique 2 LEAF_NODE

Page 337: fe115trm

FDM Database Tables

Detail Design 2-255

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_TM_STOCH_RATESThe OFSA_TM_STOCH_RATES table stores Oracle Risk Manager processing audit trail information for Monte Carlo rate paths. This data is generated when the ’Write One Month Rates’ flag for the stochastic option is checked for the Risk Manager Process ID.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

TM_PROCESS_SYS_ID NOT NULL NUMBER(10) Identifies the Risk Manager Process ID.

RATE_PATH_NUM NOT NULL NUMBER(5) Identifies the rate path for the Process ID.

TIME_STEP NOT NULL NUMBER(3) Specifies the time sequence in months. A ’1’ = the first month; ’2’ = the second month and so forth.

RATE NOT NULL NUMBER(8,4) Specifies the interest rate for the time step.

Index_Name Index TypeIndex Column Sequence Column_Name

TM_STOCH_RATES Unique 1 TM_PROCESS_SYS_ID

TM_STOCH_RATES Unique 2 RATE_PATH_NUM

TM_STOCH_RATES Unique 3 TIME_STEP

Page 338: fe115trm

FDM Database Tables

2-256 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_TM_STOCH_TOT_VARThe OFSA_TM_STOCH_TOT_VAR table stores the rolled up value at risk (value at risk at bank level) generated by a Risk Manager stochastic process.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

TM_PROCESS_SYS_ID NOT NULL NUMBER(10) Identifies the Risk Manager Process ID.

VAR_TERM NOT NULL NUMBER(5) Designates the value at risk term.

VAR_TERM_MULT NOT NULL CHAR(1) Designates the units (’D’ days, ’M’ months, ’Y’ years) of the var_term.

PROBABILITY NOT NULL NUMBER(8,5) Specifies the probability of occurrence.

VALUE_AT_RISK NOT NULL NUMBER(14,2) Specifies the maximum possible loss over a valuation period.

Index_Name Index TypeIndex Column Sequence Column_Name

TM_STOCH_TOT_VAR Unique 1 TM_PROCESS_SYS_ID

TM_STOCH_TOT_VAR Unique 2 VAR_TERM

TM_STOCH_TOT_VAR Unique 3 VAR_TERM_MULT

TM_STOCH_TOT_VAR Unique 4 PROBABILITY

Page 339: fe115trm

FDM Database Tables

Detail Design 2-257

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_TM_STOCH_VARThe OFSA_TM_STOCH_VAR table stores the probability distribution for value at risk (VAR) for each leaf_node/VAR term generated by the Risk Manager stochastic process.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

TM_PROCESS_SYS_ID NOT NULL NUMBER(10) Identifies the Risk Manager Process ID.

LEAF_NODE NOT NULL NUMBER(14) Designates the product leaf.

VAR_TERM NOT NULL NUMBER(5) Designates the value at risk term.

VAR_TERM_MULT NOT NULL CHAR(1) Designates the Units (’D’ days, ’M’ months, ’Y’ years) for the var_term.

PROBABILITY NOT NULL NUMBER(8,5) Specifies the probability of occurrence.

VALUE_AT_RISK NOT NULL NUMBER(14,2) Specifies the maximum possible loss over a valuation period.

Index_Name Index TypeIndex Column Sequence Column_Name

TM_STOCH_TOT_VAR Unique 1 TM_PROCESS_SYS_ID

TM_STOCH_TOT_VAR Unique 2 LEAF_NODE

TM_STOCH_TOT_VAR Unique 3 VAR_TERM

TM_STOCH_TOT_VAR Unique 4 VAR_TERM_MULT

TM_STOCH_TOT_VAR Unique 5 PROBABILITY

Page 340: fe115trm

FDM Database Tables

2-258 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_TRANSFORM_LS_TEMPLATEThe OFSA_TRANSFORM_LS_TEMPLATE table defines the columns and indexes to be created for transformation output tables, by the transformation engine, for Ledger Stat transformations. This table is a template only and does not contain any data.

The transformation engine uses the column name, datatype, size and null/not null definition for each column of the template table to create the transformation output table. It also uses indexes defined on the template table to create comparable indexes on the output table.

For more information on how the transformation engine uses template tables, refer to the “Transformation Output Tables” section in the “FDM Object Management” chapter of the Oracle Financial Services Installation and Configuration Guide.

Columns

Column Name Null? Type Description

END_DATE NOT NULL

DATE In the output table, end_date contains the last day of the month, identifying the period to which the data in the row belongs.

ORG_UNIT_ID NOT NULL

NUMBER(14) In the output table, org_unit_id contains the value of org_unit_id from the corresponding row(s) in the LEDGER_STAT table.

GL_ACCOUNT_ID NOT NULL

NUMBER(14) In the output table, gl_account_id contains the value of gl_account_id from the corresponding row(s) in the LEDGER_STAT table.

COMMON_COA_ID NOT NULL

NUMBER(14) In the output table, common_coa_id contains the value of common_coa_id from the corresponding row(s) in the LEDGER_STAT table.

OTHER_LEAF_COLUMNS NOT NULL

NUMBER(14) For Ledger Stat transformations, this column is replaced in the output table (and in its indexes) with all of the other Ledger Stat leaf columns (as defined in the OFSA_CATALOG_OF_LEAVES table), except for those leaves that are filtered by the Transformation ID’s dimension filter. In the output table, these columns contain the values of the corresponding columns from the corresponding row(s) in the LEDGER_STAT table.

Page 341: fe115trm

FDM Database Tables

Detail Design 2-259

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

CONSOLIDATION_CD NOT NULL

NUMBER(5) In the output table, consolidation_cd contains the value of consolidation_cd from the corresponding row(s) in the LEDGER_STAT table.

ISO_CURRENCY_CD NOT NULL

VARCHAR2(3) In the output table, the iso_currency_cd field contains the value of the iso_currency_cd from the corresponding source row(s) in the LEDGER_STAT table.

Index_NameIndex Type

Index Column Sequence Column_Name

TRANSFORM_LS_TEMPLATE Unique 1 END_DATE

TRANSFORM_LS_TEMPLATE Unique 2 ORG_UNIT_ID

TRANSFORM_LS_TEMPLATE Unique 3 GL_ACCOUNT_ID

TRANSFORM_LS_TEMPLATE Unique 4 COMMON_COA_ID

TRANSFORM_LS_TEMPLATE Unique 5 OTHER_LEAF_COLUMNS

TRANSFORM_LS_TEMPLATE Unique 6 CONSOLIDATION_CD

TRANSFORM_LS_TEMPLATE Unique 7 ISO_CURRENCY_CD

Column Name Null? Type Description

Page 342: fe115trm

FDM Database Tables

2-260 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_TRANSFORM_RMC_TEMPLATEThe OFSA_TRANSFORM_RMC_TEMPLATE table defines the columns and indexes to be created for transformation output tables, by the transformation engine, for Risk Manager Cash Flow transformations. This table is a template only and does not contain any data.

The transformation engine uses the column name, datatype, size and null/not null definition for each column of the template table to create the transformation output table. It also uses indexes defined on the template table to create comparable indexes on the output table.

For more information on how the transformation engine uses template tables, refer to the “Transformation Output Tables” section in the “FDM Object Management” chapter of the Oracle Financial Services Installation and Configuration Guide.

Columns

Column Name Null? Type Description

START_DATE NOT NULL

DATE In the output table, start_date contains the first day of the period to which the data in the row belongs.

END_DATE NOT NULL

DATE In the output table, end_date contains the last day of the period to which the data in the row belongs.

ORG_UNIT_ID NOT NULL

NUMBER(14) In the output table, org_unit_id contains the value of org_unit_id from the corresponding row(s) in the source Risk Manager Result Detail table.

OTHER_LEAF_COLUMNS NOT NULL

NUMBER(14) For Risk Manager transformations, this column is replaced in the output table (and in its indexes) with the column used as the product leaf in the source Risk Manager Result Detail table. In the output table, the product leaf column contains the value of the corresponding column from the corresponding row(s) in the source table.

SCENARIO_NUM NOT NULL

NUMBER(5) In the output table, scenario_num contains the value of scenario_num from the corresponding row(s) in the source Risk Manager result detail table.

Page 343: fe115trm

FDM Database Tables

Detail Design 2-261

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

RESULT_TYPE_CD NOT NULL

NUMBER(5) In the output table, result_type_cd contains the value of result_type_cd from the corresponding row(s) in the source Risk Manager result detail table.

ISO_CURRENCY_CD NOT NULL

VARCHAR2(3) In the output table, the iso_currency_cd field contains the value of the iso_currency_cd from the corresponding row(s) in the source Risk Manager result detail table.

Index_NameIndex Type

Index Column Sequence Column_Name

TRANSFORM_RMC_TEMPLATE Unique 1 START_DATE

TRANSFORM_RMC_TEMPLATE Unique 2 END_DATE

TRANSFORM_RMC_TEMPLATE Unique 3 ORG_UNIT_ID

TRANSFORM_RMC_TEMPLATE Unique 4 OTHER_LEAF_COLUMNS

TRANSFORM_RMC_TEMPLATE Unique 5 SCENARIO_NUM

TRANSFORM_RMC_TEMPLATE Unique 6 RESULT_TYPE_CD

TRANSFORM_RMC_TEMPLATE Unique 7 ISO_CURRENCY_CD

Column Name Null? Type Description

Page 344: fe115trm

FDM Database Tables

2-262 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_TRANSFORM_RMG_TEMPLATEThe OFSA_TRANSFORM_RMG_TEMPLATE table defines the columns and indexes to be created for transformation output tables, by the transformation engine, for Risk Manager GAP transformations. This table is a template only and does not contain any data.

The transformation engine uses the column name, datatype, size and null/not null definition for each column of the template table to create the transformation output table. It also uses indexes defined on the template table to create comparable indexes on the output table.

For more information on how the transformation engine uses template tables, refer to the “Transformation Output Tables” section in the “FDM Object Management” chapter of the Oracle Financial Services Installation and Configuration Guide.

Page 345: fe115trm

FDM Database Tables

Detail Design 2-263

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Columns

Column Name Null? Type Description

DYNAMIC_GAP_DATE NOT NULL DATE In the output table, dynamic_gap_date is the date associated with the start_date_index column in the source Risk Manager Result Detail table. The date is taken from the from_date_001 column in the OFSA_RESULT_BUCKET_TABLE where dgap_scenario_num = start_date_index.

START_DATE NOT NULL DATE In the output table, start_date contains the first day of the period to which the data in the row belongs.

END_DATE NOT NULL DATE In the output table, end_date contains the last day of the period to which the data in the row belongs.

ORG_UNIT_ID NOT NULL NUMBER(14) In the output table, org_unit_id contains the value of org_unit_id from the corresponding row(s) in the source Risk Manager Result Detail table.

OTHER_LEAF_COLUMNS NOT NULL NUMBER(14) For Risk Manager transformations, this column is replaced in the output table (and in its indexes) with the column used as the product leaf in the source Risk Manager Result Detail table. In the output table, the product leaf column contains the value of the corresponding column from the corresponding row(s) in the source table.

SCENARIO_NUM NOT NULL NUMBER(5) In the output table, scenario_num contains the value of scenario_num from the corresponding row(s) in the source Risk Manager Result Detail table.

RESULT_TYPE_CD NOT NULL NUMBER(5) In the output table, result_type_cd contains the value of result_type_cd from the corresponding row(s) in the source Risk Manager Result Detail table.

ISO_CURRENCY_CD NOT NULL VARCHAR2(3)

In the output table, the iso_currency_cd field contains the value of the iso_currency_cd from the corresponding row(s) in the source Risk Manager result detail table.

Page 346: fe115trm

FDM Database Tables

2-264 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Index_NameIndex Type

Index Column Sequence Column_Name

TRANSFORM_RMG_TEMPLATE Unique 1 DYNAMIC_GAP_DATE

TRANSFORM_RMG_TEMPLATE Unique 2 START_DATE

TRANSFORM_RMG_TEMPLATE Unique 3 END_DATE

TRANSFORM_RMG_TEMPLATE Unique 4 ORG_UNIT_ID

TRANSFORM_RMG_TEMPLATE Unique 5 OTHER_LEAF_COLUMNS

TRANSFORM_RMG_TEMPLATE Unique 6 SCENARIO_NUM

TRANSFORM_RMG_TEMPLATE Unique 7 RESULT_TYPE_CD

TRANSFORM_RMG_TEMPLATE Unique 8 ISO_CURRENCY_CD

Page 347: fe115trm

FDM Database Tables

Detail Design 2-265

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_TRANSFORM_ROLLUP_TEMPLATEThe OFSA_TRANSFORM_ROLLUP_TEMPLATE table defines the columns to be created for transformation output tables, by the transformation engine, for tree rollup transformations. The transformation engine does not use this template to determine indexes created on the output table. It creates a single unique index on the column that replaces leaf_column in the output table. The OFSA_TRANSFORM_ROLLUP_TEMPLATE table is a template only and does not contain any data.

The transformation engine uses the column name, datatype, size and null/not null definition for each column of the template table to create the transformation output table.

For more information on how the transformation engine uses template tables, refer to the “Transformation Output Tables” section in the “FDM Object Management” chapter of the Oracle Financial Services Installation and Configuration Guide.

Columns

Column Name Null? Type Description

LEAF_COLUMN NOT NULL

NUMBER(14) For tree rollup transformations, this column is replaced in the output table with the leaf column upon which the source Tree Rollup ID is built.

LEAF_DESCRIPTION VARCHAR2(80) Leaf_description contains the description from the OFSA_LEAF_DESC table for the value in the leaf column that replaces leaf_column in the output table.

LEVEL_NN_VALUE VARCHAR2(17) For tree rollup transformations, this column is repeated in the output table once for every level of the tree rollup that is being transformed. NN is replaced in the name of the column with a value of ’01’ to ’15’, representing the level in the tree.

In the output table, each level_nn_value column contains the value of the corresponding node_nn column in OFSA_IDT_ROLLUP, concatenated with LNN where NN is the level. An additional column is added to represent the root level, which is not stored in OFSA_IDT_ROLLUP. The level_01_value column represents the node level one step above the leaf level and the highest-numbered level_nn_value column represents the root level.

Page 348: fe115trm

FDM Database Tables

2-266 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

IndexesNot applicable.

SequencesNot applicable.

Column Code ValuesNot applicable.

LEVEL_NN_DESC VARCHAR2(80) For tree rollup transformations, this column is repeated in the output table in the same manner as the level_nn_value columns. In the output table, each level_nn_desc column contains the description from OFSA_NODE_DESC for the node value in the corresponding level_nn_value column.

Column Name Null? Type Description

Page 349: fe115trm

FDM Database Tables

Detail Design 2-267

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_USER_GROUP_ASSIGNMENTThe OFSA_USER_GROUP_ASSIGNMENT table records assignments of users to User Groups. User Groups are collections of users. Any privileges (such as Roles or Security Profiles) assigned to a User Group are automatically conveyed to each of its members. Users are assigned to User Groups in the FDM Administration application.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

USERNAME NOT NULL VARCHAR2(30) Identifies the user belonging to the designated User Group. Users must exist in OFSA_PRIVILEGE_RECIPIENTS with a RECIPIENT_TYPE =’U’.

USER_GROUP_NAME

VARCHAR2(50) Identifies the User Group of which the user is a member. User Groups must exist in OFSA_PRIVILEGE_RECIPIENTS with a RECIPIENT_TYPE=’G’ and in OFSA_USER_GROUPS.

Index_Name Index TypeIndex Column Sequence Column_Name

USER_GROUP_ASSIGNMENT_PK

Unique 1 USERNAME

USER_GROUP_ASSIGNMENT_PK

Unique 2 USER_GROUP_NAME

Page 350: fe115trm

FDM Database Tables

2-268 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_USER_GROUPSThe OFSA_USER_GROUPS table identifies User Groups defined for the FDM database. User Groups are collections of users. Any privileges (such as Roles or Security Profiles) assigned to a User Group are automatically conveyed to each of its members. User Group creation is performed using the FDM Administration User Group Creation Wizard.

The FDM Database Upgrade and Database Creation processes populate OFSA_USER_GROUPS with information for seeded User Groups. Rows designated with the PROTECTED_FLG=1 are protected from modification.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

USER_GROUP_NAME

NOT NULL VARCHAR2(30) Identifies the User Group defined for the FDM database. Must also exist in OFSA_PRIVILEGE_RECIPIENTS with a RECIPIENT_TYPE=’G’.

USER_GROUP_CREATOR

NOT NULL VARCHAR2(30) Designates the user that originally created the User Group.

CREATION_DATE NOT NULL DATE Designates the date on which the User Group was created.

PROTECTED_FLG NOT NULL Designates whether the row is protected from update. A ’1’ indicates that the row is protected and cannot be modified. Any other value designates a user defined row that can be modified.

GROUP_DESCRIPTION

VARCHAR2(255) Long description for the User Group.

Index_Name Index TypeIndex Column Sequence Column_Name

USER_GROUPS_PK Unique 1 USER_GROUP_NAME

Page 351: fe115trm

FDM Database Tables

Detail Design 2-269

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA_USERSThe OFSA_USERS table identifies Users registered for the FDM database. User registration is performed using the FDM Administration User Registration Wizard.

In order to register a user for FDM, the user must first exist as a valid Oracle RDBMS user (that is, must exist in ALL_USERS). When a user is registered in FDM Administration, the a row is created in both the OFSA_PRIVILEGE_RECIPIENTS and OFSA_USERS table for that user. The User is also granted specific roles to provide the minimum required database privileges for an FDM user.

Columns

Indexes

SequencesNot applicable.

Column Code ValuesNot applicable.

Column Name Null? Type Description

USERNAME NOT NULL VARCHAR2(30) Identifies the User. A record also exists in OFSA_PRIVILEGE_RECIPIENTS with a RECIPIENT_TYPE=’U’.

FIRST_NAME VARCHAR2(30) First name of the user.

LAST_NAME VARCHAR2(30) Last name of the user.

CONFIG_SYS_ID NOT NULL NUMBER(10) The Configuration ID that is active for the user. Risk Manager and Transfer Pricing users can choose to activate other Configuration IDs instead of the one assigned to them by the User Registration process.

DEFAULT_FOLER_NAME

NOT NULL VARCHAR2(30) Designates the ID Folder that appears as the default for opening or creating IDs in the OFSA applications. Users can change this in the Configuration ID.

Index_Name Index TypeIndex Column Sequence Column_Name

USERS_PK Unique 1 USERNAME

Page 352: fe115trm

FDM Database Tables

2-270 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

RELATEThe RELATE table implements the many-to-many relationship between customers and accounts. One customer may have more than one account; joint accounts belong to more than one customer.

Columns

Column Name Null? Type Description

ACCT_ID NOT NULL NUMBER(9) Assigned number that uniquely identifies the account.

CUS_NO NOT NULL NUMBER(9) Assigned number that uniquely identifies the primary customer on the account.

REL_TYPE NOT NULL VARCHAR2(1) The customer’s relationship to the account: P = primary, S = secondary.

ORIG_CUS_KEY VARCHAR2(30) Unique key assigned to the customer from the organization’s mainframe or application software.

OWNER_TYPE VARCHAR2(3) This is a user-defined field for defining ownership type.

REL01DT DATE User-defined field

REL01T1 VARCHAR2(1) User-defined field

REL02T1 VARCHAR2(1) User-defined field

REL01T5 VARCHAR2(5) User-defined field

REL02T5 VARCHAR2(5) User-defined field

REL01T10 VARCHAR2(10) User-defined field

REL02T10 VARCHAR2(10) User-defined field

Page 353: fe115trm

FDM Database Tables

Detail Design 2-271

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Indexes

SequencesNot applicable.

Column Code Values

Rel_TypeThe rel_type column has the following values:

Index_Name Index TypeIndex Column Sequence Column_Name

RELATE_KEY Unique 1 ACCT_ID

RELATE_KEY Unique 2 CUS_NO

RELATE_CUS_NO Non-unique 1 CUS_NO

Code Description

P Primary customer on an account

S Secondary customer on an account

Page 354: fe115trm

FDM Database Tables

2-272 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

RES_DTL_XXXXXXThese tables store detail cash flow and GAP results and are of the same structure as the IDT_RESULT_DETAIL table. These tables are created when a Risk Manager Process ID is executed. A different table is created for each specific Risk Manager Process ID. However, if the table already exists with the correct structure, meaning that the structure is the same as that of IDT_RESULT_DETAIL, it repopulates or appends to existing data. The XXXXXX portion of the table name is the same as the system identifier for the Process ID that generated the table. The number of RES_DTL_ XXXXXX tables that exist in an FDM database is dependent on the number of processing IDs that have been executed in a database.

These tables are referred to as Risk Manager Result Detail tables. Uses of Risk Manager Result Detail tables in OFSA include:

■ Storing Risk Manager process results

■ Access by Transformation ID during transformation of Risk Manager results data for FDM Reporting Data Mart

■ Access by FDM Reporting

These tables are dropped automatically when the Process ID that created the table is deleted. It is recommended that IDs that are no longer in use be deleted so that their corresponding RES_DTL_XXXXXXX tables can be dropped. Always unregister the table from FDM Administration if you drop it.

These tables are created based on the definition of IDT_RESULT_DETAIL. To modify the structure of this table, or to add or modify indexes that need to be created every time a RES_DTL_ XXXXXX table is created, make all the necessary modifications to IDT_RESULT_DETAIL.

ColumnsThe columns for the RES_DTL_XXXXXX tables are created using the IDT_RESULT_DETAIL as a model. To see what columns are created for new RES_DTL_XXXXXX tables, see the column definitions for IDT_RESULT_DETAIL.

IndexesThe indexes for the RES_DTL_XXXXXX tables are created using the IDT_RESULT_TABLE as a model. To see what indexes are created for new RES_DTL_XXXXXX tables, see the index definitions for IDT_RESULT_DETAIL.

Page 355: fe115trm

FDM Database Tables

Detail Design 2-273

Oracle Proprietary, Confidential Information - Use Restricted by Contract

SequencesNot applicable.

Column Code ValuesNot applicable.

Page 356: fe115trm

FDM Database Tables

2-274 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

SERVThe SERV table defines the 18 services tables. Services represent the highest level in the Market Manager product hierarchy of Service-Product-Subproduct.

SERV is populated during the FDM Database Upgrade and Database Creation processes.

See the Services Tables entry in this section for a list of the 18 services defined for the FDM database.

Columns

Indexes

SequencesNot applicable.

Column Name Null? Type Description

SERV NOT NULL VARCHAR2(4) Assigned code that uniquely identifies each of the 18 services.

SERV_DESC VARCHAR2(30) The complete name of the service.

SERV_TYPE VARCHAR2(1) A code for the service type ( D = Deposit, L = Loan, O = Other

SORT_ORDER NUMBER(2) Determines the order in which the services are displayed

Index_Name Index TypeIndex Column Sequence Column_Name

SERV_KEY Unique 1 SERV

Page 357: fe115trm

FDM Database Tables

Detail Design 2-275

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Column Code Values

ServThe serv column has the following values:

Code Description

BOX Safe Deposit Boxes

CC Credit Cards

CDA CDs

CL Credit Lines

CN Commercial Notes

DC Debit Cards

DDA Checking

IL Installment Loans

INV Investments

LS Leases

MC Merchant Cards

ML Mortgage Loans

OD Other Deposit Accounts

OL Other Loan Accounts

OS Other Services

RA Retirement Accounts

SAV Savings

TR Trust

Page 358: fe115trm

FDM Database Tables

2-276 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Serv_TypeThe serv_type column has the following values:

Code Description

D Deposit

L Loan

O Other

Page 359: fe115trm

FDM Database Tables

Detail Design 2-277

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Services TablesThere are 18 services tables that contain account information specific to each of the different services types. They are listed below. For a detailed description of the columns in these tables, refer to the Oracle Financial Data Manager Data Dictionary.

CC Credit card accounts

CD Certificate of deposit accounts

CK Checking accounts

CL Credit line accounts

CN Commercial note accounts

DC Debit card accounts

IL Installment loan accounts

IV Investment accounts

LS Lease accounts

MC Merchant card accounts

ML Mortgage loan accounts

OD Other deposit accounts

OL Other loan accounts

OS Other service accounts

RA Retirement accounts

SD Safety deposit box accounts

SV Savings accounts

TR Trust accounts

Page 360: fe115trm

FDM Database Tables

2-278 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Some of the ways that the Services tables are used are listed below:

■ Accessed by FDM reporting.

■ Selected for ’Correction’ processing in Oracle Balance & Control. For example, one use of ’Correction’ processing is to create customer segment values.

■ Selected for ’Allocation’ processing in Oracle Performance Analyzer. For example, ’Allocation’ processing is used to determine account profitability.

ColumnsSee the Oracle Financial Services Data Dictionary for detailed information regarding specific Services tables.

IndexesEach of the Services tables have the following indexes defined on them, where ’Service_Table_Name’ is the name of the service table to which the index belongs. The list of indexes below contains only those indexes provided with the initial installation of the FDM database.

SequencesNot applicable.

Column Code ValuesNot applicable.

Index_Name Index TypeIndex Column Sequence Column_Name

Service_Table_Name Unique 1 IDENTITY_CODE

Service_Table_Name Unique 2 ID_NUMBER

Service_Table_Name_KEY Unique 1 ACCT_ID

Service_Table_Name_2 Unique 1 ID_NUMBER

Service_Table_Name_4 Non-Unique 1 COMMON_COA_ID

Service_Table_Name_5 Non-Unique 1 ORG_UNIT_ID

Service_Table_Name_6 Non-Unique 1 GL_ACCOUNT_ID

Service_Table_Name_ACCT_NO Non-Unique 1 ACCT_NO

Service_Table_Name_CUS_NO Non-Unique 1 CUS_NO

Page 361: fe115trm

FDM Database Tables

Detail Design 2-279

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Transaction TablesFDM provides default tables for storing financial instrument transaction information. These tables are each tailored for a specific type of financial account information, such as “deposits transactions’ reaccredit cards transactions’. The FDM Database Creation Process creates these tables during the initial installation of the FDM database.

For performance reasons, Oracle recommends implementing Transaction tables as “vertical” rather than “horizontal”. This means, that the different transaction types are actually represented by rows in the table, rather than additional columns. By defining the primary key (or unique index) of the table to consist of one or more Leaf Columns, in addition to ID_NUMBER and IDENTITY_CODE, different transaction types become rows in the table. For example, to represent an “Teller transactions” transaction type, implement a new value for a user-defined “transaction type” leaf. The Transaction table therefore remains as a narrow table, rather than a wide table like an Instrument table.

The default Transaction tables are listed below. For a detailed description of the columns in these tables, refer to the Oracle Financial Data Manager Data Dictionary.

COMMERCIAL_LOAN_TRANSACTIONS

Commercial Loan transactions

CONSUMER_LOAN_TRANSACTIONS

Consumer Loan transactions

CREDIT_CARDS_TRANSACTIONS

Credit Card transactions

DEPOSITS_TRANSACTIONS Deposits transactions

FORWARD_CONTRACTS_TRANSACTIONS

Forward Contracts transactions

INTERST_RATE_OPTIONS_TRANSACTIONS

Interest Rate Options transactions

INTEREST_RATE_SWAPS_TRANSACTIONS

Interest Rate Swaps transactions

INVESTMENTS_TRANSACTIONS

Investment transactions

MORTGAGES_TRANSACTIONS Mortgages transactions

Page 362: fe115trm

FDM Database Tables

2-280 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Columns

MORTGAGE_BACK_SEC_TRANSACTIONS

Mortgage Backed Securities transactions

TERM_DEPOSITS_TRANSACTIONS

Term Deposit transactions

WHOLESALE_FUNDING_TRANSACTIONS

Wholesale Funding transactions

Column Name Null? Type Description

IDENTITY_CODE

NOT NULL NUMBER(10) Identifier of the data source from which the transaction record was loaded. A component of the unique key.

ID_NUMBER NOT NULL NUMBER(25) Account number for the transaction record. A component of the unique key.

GL_ACCOUNT_ID

NOT NULL NUMBER(14) General Ledger Account ID.

ORG_UNIT_ID NOT NULL NUMBER(14) Organizational Unit ID.

COMMON_COA_ID

NOT NULL NUMBER(14) Common Chart of Account ID.

AS_OF_DATE NOT NULL DATE Date for which the transaction record is applicable.

ISO_CURRENCY_CD

NOT NULL VARCHAR2(3) Currency basis of the transaction record. Currencies are defined in OFSA_CURRENCIES and OFSA_CURRENCIES_MLS. Use the OFSA_CURRENCIES_V to retrieve a list a currency codes for the FDM database.

IDENTITY_CODE_CHG

NUMBER(10) Identifies the process that last updated the transaction record.

RECORD_COUNT

NUMBER(6) Normally, this value is 1. If you are aggregating transaction records, the record count is the number of records aggregated.

VOLUME NUMBER(14) Transaction volume.

COST NUMBER(14,2) Monetary value of the transaction.

Page 363: fe115trm

FDM Database Tables

Detail Design 2-281

Oracle Proprietary, Confidential Information - Use Restricted by Contract

IndexesThe FDM Database Creation process does not provide any indexes for the default Transaction tables. When implementing a transaction table, the unique index must include ID_NUMBER, IDENTITY_CODE and one or more Leaf Columns.

SequencesNot applicable.

Column Code Values

ISO_Currency_CDISO Currency codes and descriptions are defined in the OFSA_CURRENCIES and OFSA_CURRENCIES_MLS tables. Use the OFSA_CURRENCIES_V view to retrieve a list of currency codes and descriptions in the session language.

Page 364: fe115trm

FDM Database Tables

2-282 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Page 365: fe115trm

Process Flow 3-1

Oracle Proprietary, Confidential Information - Use Restricted by Contract

3Process Flow

This chapter describes the processes for the Oracle Financial Services applications (OFSA) Knowledge Engines:

■ Allocation Processing

■ Data Correction Processing

■ Market Manager Processingr

■ Risk Manager Processing

■ Transfer Pricing Processing

■ Transformation Processing

For each Knowledge Engine, a process flow diagram and description of the steps involved in the process are provided. The processing diagrams display the primary decision points and processing steps executed by each Knowledge Engine. Pro-gramming logic that is not essential to understanding the processing has been omit-ted. Following each processing diagram, a table provides descriptions of the processing steps and decision points.

Allocation ProcessingThe purpose of Allocation processing is to aggregate and distribute revenue and cost data along user-specified dimensions such as product lines, organizational lev-els, and cost/revenue types. The resulting data provides financial performance information on the specified dimensions.

Two diagrams appear for this Knowledge Engine. The first shows the preparation phase and the second shows the execution phase. The Allocation processing steps combine both phases into one table.

Page 366: fe115trm

Allocation Processing

3-2 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Allocation Processing Diagram–Preparation Phase

RunAllocation ID

ValidateSecurity Rights

Validate AllocationRule Components,

Operators andConstructs

Validate Other RuleComponents (Table ID,

Tree FIlters, etc.)

Determine Bulk SQLvs. Row by RowExecution Path

Single Pass?

Validate Ability to doSingle Pass

Goto Next Page

YESNO

Preparation Phase

Prompt for Run orPreview

Determine DistinctCurrencies and

Conversion Rates

All failedvalidations lead toan error message

and processtermination

Is Multiple Currency

Enabled?

YES

NO

Pct Dist?

Determine Count andTotal of Pct set

YESNO

Page 367: fe115trm

Allocation Processing

Process Flow 3-3

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Allocation Processing Diagram–Execution Phase

From Previous Page

Read Data

Perform Calculation

Output Calculated Data

Terminate

Audit Trail?

Output Audit Trail Information

NO

YES

Execution Phase

Row by RowProcessing?

YES

NO

Prepare Bulk SQLStatement

Use Filter Rowon Next Page

Single PassPerformed?

Do Next Page

Single Pass?

Single Pass?

Add OtherPages toUpdate

Statement

YES

YES

NO

NO

YES

NO

AllFIlter RowsProcessed?

YES

NO

Do Next Row

Post to Ledger?

Post Ledger Information

NO

YES

Execute BulkSQL Statement

Page 368: fe115trm

Allocation Processing

3-4 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Allocation Processing Steps

Processing Step Description

Preparation Phase

Run Allocation ID If the user has rights to run an Allocation ID the Run button and menu item are enabled.

Validate Security Rights When execution is initiated security rights for all objects and tables involved are verified. Insufficient rights return error messages such as “Table does not exist.” Verify that the user has sufficient rights to all required tables and applications. See the OFSA Installation and Configuration Guide for directions on setting privileges

Validate Allocation Rule Components, Operators and Constructs

The next check performed is validation of the rule constructs. This includes all of the leaf, table and column values specified in the Filter On, Debit, Credit, as well as mathematical operators in the body of the Allocation ID. Invalid rules return error messages such as “The formula is badly constructed” and “Missing source leaf.” Review the rule thoroughly if you get these types of errors.

Validate Other Rule Components (Table ID, Tree Filters, and so on.)

.If the Allocation rule contains additional IDs the engine validates their existence and associated security rights. Invalid supporting IDs return error messages such as “Incomplete Table ID” or “The field table must be the same as the filter table.” Check supporting IDs and leaf values in the Filter, Debit and Credit items.

Is Multicurrency Enabled?

If Multicurrency operation is enabled (as set by a flag in OFSA_DB_INFO) currency conversions must be performed between currencies and the functional currency.

Determine Distinct Currencies and Conversion Rates

If Multcurrency operation is enabled, the engine determines the distinct list of currencies used in the Allocation rule and looks up the appropriate currency exchange rates. If Multicurrencies is not enabled the engine skips this step. Missing currency exchange rates return the message “No exchange rate found. Defaulting to 1.0 for exchange rate” when the allocation is run.

Page 369: fe115trm

Allocation Processing

Process Flow 3-5

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Determine Bulk SQL versus Row by Row Execution Path

This step determines whether the specified calculations for the Allocation ID must be processed record-by-record or by a Bulk SQL statement. OFSA can use a Bulk SQL Update statement to perform calculations and to update rows in Instrument and Transaction type tables. Allocation rules run Detail tables can use a Bulk Update command as long as the following conditions are met:

■ Audit Trail is not On

■ Post to Ledger is not being performed in the Debit or Credit

■ The allocation is not doing a Percent Of operation

■ The allocation is not doing a Leaf operation

■ The Filter On and Updated table are the same

Percent Distribution? Determine if the Allocation rule is doing a Percent distribution.

Determine Count and Total of Pct set

If the page does a Percent distribution the engine counts the Percent Of set and determines the total of the set. If the Percent Of set is empty, where, for example, the As_Of_Date is wrong, the engine returns an error message that “Percentage-Of denominator is 0." Check the Percent Of filter and As_Of_Date.

Single Pass? Determine if Single Pass was selected by the user. Single Pass is possible if the Filter On Where condition is the same on all pages of a multiple page Allocation ID.

Validate Ability to do Single Pass

Single Pass works differently with Row by Row versus Bulk SQL processing. In Allocations IDs doing Row by Row processing with multiple pages, the Filter On data set can be read once and used for each subsequent page, providing increased performance.If the allocation has multiple pages and Single Pass is selected and the table is an Instrument or Transaction type, the engine runs all pages combined into a single bulk Update command, increasing performance. This is possible only if all pages have the same Filter On conditions and table, and the Debit is to the same table used in the Filter On. Allocations that cannot do Single Pass return error messages such as “Cannot run in single pass bulk because pages update the same column” and “Cannot run in single pass bulk because the page contains a leaf operation.” Follow the displayed recommended action to correct the problem. Refer to the Oracle Performance Analyzer Reference Guide for a discussion of Single Pass Allocations.

Processing Step Description

Page 370: fe115trm

Allocation Processing

3-6 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Prompt for Run or Preview

Prompt the user to run the allocation in Preview mode or not. The As_Of_Date is displayed in the dialog. Verify that this is the correct date before running. Allocations that were run in Preview mode cannot do bulk SQL and run row by row. When multicurrency is enabled, Preview displays values in the functional currency.

Execution Phase

Row by Row Processing? If the allocation rule can do row by row processing, the engine reads the Filter On data.

Prepare Bulk SQL Statement

If the Allocation ID is using Bulk SQL processing instead of row by row, the SQL statement used to complete the instrument update is built in this step.If the allocation has multiple pages and Single Pass is selected and valid, the engine runs all pages combined into a single Update command. The Update command processes through the table once and updates all applicable rows, then terminates.

Read Data If row by row processing is being performed, the first LEDGER_STAT or Instrument Filter On row is retrieved in this step. The SQL used to retrieve data is based on all of the filter conditions of the ID including the Filter On, Data Filter IDs, Tree Filters and Rollups and any elements designated in the body of the Allocation ID.

Perform Calculation The calculation rules defined in the Allocation ID are applied to the data in this step. In row by row processing each row is processed individually.

Output Calculated Data The results of the calculation is used to update rows in the tables specified in the Allocation ID Debit and Credit items. Output to LEDGER_STAT is processed as an insert when OFSA is unable to find existing records that match the YEAR_S, IDENTITY_CODE and other key values of the LEDGER_STAT table. For matches, OFSA updates the existing record in LEDGER_STAT. OFSA always processes output to Instrument tables as an update.

Audit Trail? Is Audit Trail turned ON? This is determined by a check box in the Allocation ID.

Output Audit Trail Information

If Audit Trail is turned ON, then audit information from the results of the Allocation ID is stored in the OFSA_Audit_Trail table. For more information about how data is stored in the table, see the Audit Trail section in Chapter 2, "Detail Design".

Post to Ledger? Is the Post to Ledger check box selected in the Debit or Credit items?

Processing Step Description

Page 371: fe115trm

Data Correction Processing

Process Flow 3-7

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Additional Allocation Processing NotesRefer to the “OFSA Multiprocessing” chapter in the Oracle Financial Services Installa-tion and Configuration Guide for information on how OFSA processes with multipro-cessing.

For definitions of row-by-row and bulk processing refer to the Glossary of this man-ual.

’Allocation’ processing is ’database bound’ rather than ’OFSA bound’. For informa-tion regarding these two approaches refer to the “OFSA Multiprocessing” chapter in the Oracle Financial Services Installation and Configuration Guide.

A series of Allocation IDs can be run in order in a Batch ID. Batch IDs can provide a parallel run of Allocation IDs.

Data Correction ProcessingInstrument field values can be updated using data correction processing in Oracle Balance & Control. Data correction processing lets you create user-defined rules to update and modify instrument data.

Post Ledger Information If Post to Ledger is selected, the allocation amount and leaf values are posted to ledger rows.

Single Pass? If Single Pass is selected and valid, the Filter on rows are read once for all pages in an Allocation ID. This increases performance for multi-page allocations. In Single Pass mode the input first row is read and then processed on each subsequent page. When the last page is reached, the next filter row is read and the process starts over again.See the Allocation ID chapter in the Oracle Performance Analyzer Reference Guide for details on using Single Pass.

All Filter Rows Processed?

This step determines if additional rows exist in the Filter On set. If more exist the process starts over. If no additional rows exist processing moves to the next step.

Did Single Pass? If Single Pass was performed and there are no more Filter On row the process is complete and terminated. If Single Pass was not performed processing continues on the next page of the Allocation ID.

Terminate The process is completed.

Processing Step Description

Page 372: fe115trm

Data Correction Processing

3-8 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Data Correction Processing Diagram

YES

NO

WriteInstrument

records

Process Bulk SQL'Bulk' optionspecified?

DeterminePartitionpoints

ReadApplicationParameters

ReadConfiguration

ID

Read Process ID

Read Instrumentrecords

Process individualrecords

Read CorrectionRule ID's

Terminate

EvaluateFormula ID's

Next SQLstatement?

YES

NO

Read OFSASystem

Information

Filter?Read FilterType and

FilterNO

YES

WriteProcessErrors

Update LogOnly?

YES

NO

NextRecord?

YES

NO

Page 373: fe115trm

Data Correction Processing

Process Flow 3-9

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Data Correction Processing Steps

Processing Step Description

Read Process ID The Data Correction Processing ID parameters are retrieved in this step. The Process ID designates the type of processing (Individual = row by row and Bulk = Bulk SQL), the tables to be processed, the Correction Rules to be processed, as well as the Filter ID.

For more information on the processing parameters, see the “Data Correction Processing ID” chapter in the Oracle Balance & Control Reference Guide.

Read Configuration ID The Configuration ID designates such elements as the process error limits.

See the Configuration ID in the Introduction chapter of the Oracle Balance & Control Reference Guide for more information.

Read Correction Rule IDs Information for each of the Correction Rule IDs specified in the Data Correction Processing ID is retrieved in this step.

Read Application Parameters

Application processing parameters are retrieved from the OFSA_PROCESS_ID_STEP_RUN_OPT table. The parameters designate how data partitioning will occur.

See Chapter 2, "Detail Design" for more information on the OFSA_PROCESS_ID_STEP_RUN_OPT table.

Evaluate Formula IDs Information for any Formula IDs used in the Correction Rule IDs (from above) is retrieved and evaluated in this step.

Read OFSA System Information

OFSA System Information is retrieved from the SYSTEM_INFO table for the Instrument tables that have been selected for processing. The information retrieved from SYSTEM_INFO is used to construct the SQL statements used to execute the data correction.

See the SYSTEM_INFO section in Chapter 2, "Detail Design", for more information on how data is stored in this table.

Filter? If the user specified either a Data Filter ID or a Tree Filter ID in the Data Correction Processing ID, then the evaluation of this decision point is ’YES’. Otherwise, this decision point is ’NO’.

Read Filter Type and Filter ID

The filter type may be either Data Filter ID or Tree Filter ID.

Page 374: fe115trm

Data Correction Processing

3-10 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Determine Partition Points

This step queries the Instrument tables selected for processing in order to determine the partition points for the process. Data partitioning is used to designate units of work for OFSA multiprocessing.

For more information on OFSA multiprocessing, see the “UNIX Server Installation and Configuration” chapter, in the Oracle Financial Services Installation and Configuration Guide.

Bulk Option Specified? This decision point becomes operative if the bulk option is designated in the Data Correction Processing ID. ’Bulk’ processing indicates that a SQL statement are generated for each branch in each individual Correction Rule. All records meeting the requirements of the particular branch are then corrected with a single SQL statement. If multiple branches or multiple Correction Rules are processed, multiple Bulk SQL statements are generated. Each of these SQL statements is then processed (below), one at a time.

If ’Individual’ processing is designated on the Data Correction Processing ID, then the processing is executed row-by-row. In row-by-row processing, all Correction Rules are applied to each record in the specified Instrument table one row at a time. Therefore, a single pass on the table is used to complete all Correction Rules, applied to one individual record at a time.

For more information on this option, refer to the “Data Correction Processing ID” chapter in the Oracle Balance & Control Reference Guide.

Process Bulk SQL The SQL statements used to perform the data correction are processed in this step.

Next SQL statement? This decision point illustrates how each Bulk SQL statement is processed individually until all statements have been completed.

Read Instrument Records Prior to processing records individually, the instrument records for each table that satisfy the filter conditions for the Data Correction Processing ID are retrieved.

Process Individual Records

Each record retrieved in the Read Instrument Records step above is corrected in this step. Records are processed individually, one at a time.

Next Record? This decision point illustrates how each individual instrument record is processed record by record. When processing is complete for all instrument records, the process moves to the Update Log Only? decision point.

Processing Step Description

Page 375: fe115trm

Data Correction Processing

Process Flow 3-11

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Additional Data Correction Processing NotesOracle Balance & Control enables the user to select either row-by-row or bulk as the processing method. Refer to the Glossary in this manual for the definitions of row-by-row and bulk processing.

Row-by-row processing for Data Correction Rules is implemented as follows:

1. Each individual row from the table being processed, that satisfies the Data Filter conditions (in the Data Correction Processing ID), is read into RAM.

2. The row is evaluated based on the logical hierarchy of the Correction Rule ID.

3. The row is updated, based on the Correction Rule branch in which it belongs.

4. If the row does not belong to any of the Correction Rule branches, it is updated using the assignment specified in the ’Otherwise’ branch.

5. The OFSA_PROCESS_ERRORS table stores the ’before’ and ’after’ for each record processed (up to the error limit defined in the Configuration ID).

Update Log Only? If the Update Log Only? box is checked in the Data Correction Processing ID, then the process does not complete any instrument updates. Rather, log information for the process is written to the OFSA_PROCESS_ERRORS table.

Note that the ’Update Log Only?’ option is not functional for bulk processing. This option is activated only during row-by-row processing.

For more information on the log information written to OFSA_PROCESS_ERRORS, refer to the “Data Correction Processing ID” chapter of the Oracle Balance & Control Reference Guide.

Write Process Errors Each record corrected by the ’Data Correction’ process is inserted into the OFSA_PROCESS_ERRORS table. For bulk processes, each record is inserted along with the new corrected value for the specified field.

For ’Individual’ processes, each record is inserted along with the original value and corrected value for the specified field. The number of records inserted is limited to the Process Errors setting in the Configuration ID.

For more information about how data is stored in the OFSA_PROCESS_ERRORS table, see Chapter 2, "Detail Design".

Terminate The process is complete.

Processing Step Description

Page 376: fe115trm

Market Manager Processing

3-12 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Bulk processing for Data Correction Rules is implemented as follows:

1. Each termination branch represents a single SQL statement. Each of these SQL statements is executed against the table reverse sequentially (from bottom to top). Filter conditions at each branch represent the where condition.

2. The ’Otherwise’ branch is the last SQL statement executed.

3. Records are inserted into the OFSA_PROCESS_ERRORS table to store values updated for each row (up to the error limit defined in the Configuration ID).

For performance purposes, bulk ’Data Correction’ processing is generally more effi-cient than row-by-row processing for situations where the Correction Rule IDs being processed have a small number of individual branches. Bulk processing is less efficient than row-by-row processing in situations where the number of branches increases in the Correction Rules being processed, because each branch is an indi-vidual SQL statement.

Bulk ’Data Correction’ processing is always ’database bound’.

Row-by-row ’Data Correction’ processing is ’database bound’ for a small number of Correction Rules, but may be ’OFSA bound’ if there are a large number of Correc-tion Rules in a single Data Correction Processing ID. Refer to the “OFSA Multipro-cessing” chapter in the Oracle Financial Services Installation and Configuration Guide for detailed information about ’database bound’ and ’OFSA bound’.

Market Manager ProcessingThis section provides additional logic and process flow information for some of the key processes that are performed by the Market Manager Update or initiated from the Campaign Navigator interface. To understand the context in which these tasks are performed, refer to the Oracle Market Manager Update Administration Guide and the Oracle Market Manager Reference Guide.

Page 377: fe115trm

Market Manager Processing

Process Flow 3-13

Oracle Proprietary, Confidential Information - Use Restricted by Contract

The Market Manager processes documented in this section include:

Process Name Process Description/Purpose

Customerization Attempts to identify duplicate customer records for the same customer and links all of the associated account records to the most recent customer record.

Customerization also includes the sub-process Merge Customers. This section includes separate Merge Customers Processing Diagrams for Individual customers and Business customers.

Householding For non-business customers, attempts to group individuals into households based on their names and addresses.

Promotion Tracking by Product

Identifies new accounts opened in response to a promotion, as specified in Campaign Navigator.

Promotion Tracking by Query

Identifies target customers in a promotion that meet the criteria specified in Campaign Navigator for identifying responses to that promotion.

Promotion Generation Identifies the target customer group for a promotion, subdivides these customers into cells and assigns each customer to the contact group or the control group for each cell, according to the definitions created in Campaign Navigator.

Promotion Results Calculates multiple measures of promotion success, including response rate, return on investment and changes in relationship profiles, such as number of accounts, balances and so forth.

These measures are calculated at the cell, promotion and campaign levels.

Promotion Roll Up Aggregates budget costs, actual costs, forecast changes, forecast aggregates and forecast return on investment values from the customer level to the cell, promotion and campaign levels.

Page 378: fe115trm

Market Manager Processing

3-14 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Customerization Processing Diagram

Read a CustomerRecord and its Address

Record

Convert to Uppercase,Remove Space and

Punctuation

Process Name andAddress Lines

Build CCN7 Key

Write Customer,Address, and CCN7 Key

to RFM Record

Last Customer?

Assign CCN4 Buckets toProcesses

More Buckets toProcess?

Read CUST_DAT Rowsfor Next Bucket

Merge Customers

Write Customer Recordsto RAW Files

Yes

No

No

Yes

Terminate

Load RFM Files to _DATTables

RFMProcessing

RAWProcessing

Page 379: fe115trm

Market Manager Processing

Process Flow 3-15

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Customerization Processing Steps

Processing Step Description

Read a Customer record Read one customer record from the ASCII customer file.

Convert Uppercase, Remove Spaces and Punctuation Characters

Convert all characters in the name and address fields to uppercase and remove all spaces and punctuation characters from all of the name and address fields.

Process Name and Address Lines

■ Extract city, state and ZIP code and validate ZIP code format. Canadian processing is different than U.S. processing for this.

■ Eliminate nominal strings, such as ’ST’, ’ND’, ’RD’ and ’TH’.

■ Standardize representations of P.O.BOX and ROUTE.

■ Eliminate street suffixes, such as BLVD or AVE and direction strings such as EAST or SW.

■ For individual names only (not business), parse the name into Last Name/First Name/Title format, attempting to standardize the form of title suffixes, such as MD and CPA.

Build CCN7 Key For business customers, the CCN7 key is built from the first 4 characters of the name and the first 3 characters or digits from the Street Address line.

For individual customers, the CCN7 key is built using the first 2 characters from the last name, followed by the next 2 consonants in the last name and the last 3 characters taken from the first name.

Write Customer, Address and CCN7 Key to Reformatting (RFM) Record

The customer and address information for the current customer is written, along with the CCN7 key, to a single RFM customer record.

Last Customer? If the customer just processed was the last customer in the ASCII customer file, then the RFM processing portion of customerization is complete. Customerization then continues the 'Load RFM Files to _DAT Tables' step. Otherwise, the process returns to the 'Read a Customer Record.

Load RFM Files to _DAT Tables

This step is not specifically part of customerization. It is actually the last step of the RFM process. It must be completed before the RAW processing portion of customerization can proceed. All of the RFM files created during RFM processing are loaded, using SQL*Loader, into Oracle tables, which are all named with a ’_DAT’ suffix. Specifically, the RFM Customer file is loaded to CUST_DAT.

Page 380: fe115trm

Market Manager Processing

3-16 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

The following steps apply to each individual forked process.

Assign CCN4 Buckets to Processes

The multiprocessing feature of Market Manager Update forks into several separate processes at this point and assigns sets of RFM customer records (from the CUST_DAT table) to each individual process. This involves:

■ Reading the CCN7 key from every row in the CUST_DAT table.

■ Grouping the keys by the first 4 characters (referred to as the CCN4 key).

■ Counting how many RFM customer records are in each CCN4 key group.

■ Assigning each CCN4 key to one of the concurrent processes.

■ Writing the Process ID, the CCN4 key and the CCN4 group (bucket) count into a row in the CCN4LINK table for each unique CCN4 key.

All CUST_DAT rows belonging to one CCN4 key bucket are assigned to the same process. The CCN4 buckets are divided equally across the number of processes. However, each process processes a different number of CUST_DAT rows because the number of rows varies from bucket to bucket. Once this process is complete, the forked processes are activated.

Processing Steps Description

Read CUST_DAT Rows for Next Bucket

Read all of the CUST_DAT rows for the current bucket into a tree structure in memory.

Merge Customers See the Merge Customers Processing diagram for details on Customer Merging

Write Customer Records to RAW Files

Once all of the records in the current bucket have been compared with each other, the merged set is written out to the RAW Customer file and the RAW Address file and the next bucket is processed.

More Buckets to Process? Is there another bucket assigned to this process? If so, go to the ’Read CUST_DAT Rows for Next Bucket’ step. If not, terminate.

Terminate The forked process is terminated. When all forked processes have been terminated, the customerization process is complete.

Processing Step Description

Page 381: fe115trm

Market Manager Processing

Process Flow 3-17

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Merge Customers Processing DiagramThe Merge Customers logic occurs during the Customerization Process. The Mar-ket Manager Update engine evaluates customer records individually to find records that reference the same customer. This occurs, for instance, when the Tax ID num-ber and Date of Birth exactly match for 2 separate Individual customer records, they are the same customer. This customer consolidation process identifies matching cus-tomers based on specific requirements for the Customerization Process.

The Market Manager Update engine merges Business Customers and Individual Customers separately. Customer records identified as ’Business’ are merged using logic described in the Business Customer Merge Diagram, while records identified as ’Individual’ are merged using the logic described in the Individual Customer Merge Diagram.

The end result of each of the ’Merge’ processes is to identify customer record matches. The Market Manager Update engine merges matched customer records into a single customer. The engine returns processing control to the Customeriza-tion Process when all customer records have been evaluated.

Page 382: fe115trm

Market Manager Processing

3-18 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Merge Business Customers Diagram

For eachBusinessCustomer

record

From Merge Customer ofCustomerization Processing

CCNmatch?

Compare with allother Business

Customer records

No

TAXIDNOmatch?

STRADDRmatch?

CITYmatch?

STATEmatch?

ZIPmatch?

NAMEmatch?

Return toCustomerization

No

No

No

No

No

No

Yes

Yes

Yes

Yes

Yes

Yes

Yes

Merge matchedcustomer records

NextCustomerrecord?

No

Yes

Page 383: fe115trm

Market Manager Processing

Process Flow 3-19

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Merge Business Customers Processing StepsProcessing Step Description

For each Business Customer record

Each CUST_DAT record where CUS_TYPE = ’B’ is identified as a ’Business’ customer record and is evaluated using the logic described in the Merge Business Customers diagram.

Compare with all other Business Customers

The attributes of the Business customer records are compared with the attributes of all other Business customer records.

CCN match? If the CCN field from the CUST_DAT table matches the CCN field for any other Business customer records, then continue to the TAXIDNO test. Otherwise, the record does not match any other Business customer records, and the Merge process gets the next business record from the CUST_DAT table.

TAXIDNO match? If the TAXIDNO field from the CUST_DAT table matches the TAXIDNO field for the Business customer records matched above, then continue to the STRADDR test. Otherwise, the record does not match any other Business customer records, and the Merge process gets the next business record from the CUST_DAT table.

STRADDR match? If the STRADDR field from the CUST_DAT table matches the STRADDR field for the Business customer records matched above, then continue to the CITY test. Otherwise, the record does not match any other Business customer records, and the Merge process gets the next business record from the CUST_DAT table.

CITY match? If the CITY field from the CUST_DAT table matches the CITY field for the Business customer records matched above, then continue to the STATE test. Otherwise, the record does not match any other Business customer records, and the Merge process gets the next business record from the CUST_DAT table.

STATE match? If the STATE field from the CUST_DAT table matches the STATE field for the Business customer records matched above, then continue to the STATE test. Otherwise, the record does not match any other Business customer records, and the Merge process gets the next business record from the CUST_DAT table.

ZIP match? If the ZIP field from the CUST_DAT table matches the ZIP field for the Business customer records matched above, then continue to the NAME test. Otherwise, the record does not match any other Business customer records, and the Merge process gets the next business record from the CUST_DAT table.

Page 384: fe115trm

Market Manager Processing

3-20 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Merge Individual Customers Diagram The merge logic for Individual customer records relies on five sequential tests for determining customer matching. A merge results when one of the five tests results in a customer record match.

NAME match? If the NAME field from the CUST_DAT table matches the NAME field for the Business customer records matched above, the process merges the customer records together as a single customer. Otherwise, the record does not match any other Business customer records, and the Merge process gets the next business record from the CUST_DAT table.

Merge matched customer records

The matched customer records are merged into a single customer in this step.

Next Customer record? The Market Manager Update engine evaluates each Business customer record from the CUST_DAT table for customer matching.

Return to Customerization

When evaluation of all customer records from the CUST_DAT table is complete, the process returns to the “Write Customer Records to RAW files” step of the “Customerization Processing Diagram.”

Processing Step Description

Page 385: fe115trm

Market Manager Processing

Process Flow 3-21

Oracle Proprietary, Confidential Information - Use Restricted by Contract

For eachIndividualCustomer

From Merge Customers ofCustomerization Processing

CCNmatch?

Compare withall other

IndividualCustomers

No

TAXIDNOmatch?

DOBmatch?

Yes

Yes

TAXIDNO <>'111111111'

Yes

Yes

No

No

No

DOBTest on?

Yes

Test 1 Test 2

Full Namematch?

Yes

TAXIDNOmatch?

DOBsimilar?

No

DOBTest on?

Yes

Yes

Yes

No

No

No

TAXIDNOsimilar?

DOBmatch?

No

DOBTest on?

Yes

Yes

Full Namematch?

Yes

NoNoNo

DOBmatch?

No

DOBTest on?

Yes

No

No NoNo

Addressmatch?

DOBsimilar?

Yes

No

Yes

No

Test 3 Test 4

TAXIDNOsimilar?

FullName

match?

Yes

Yes

Yes Yes

Test 5

No

No

No

No

Return toCustomerization

Merge matchedcustomer records

NextCustomerrecord?

Yes

No

Page 386: fe115trm

Market Manager Processing

3-22 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Merge Individual Customers Processing StepsProcessing Step Description

For each Individual Customer record

Each CUST_DAT record where CUS_TYPE = ’I’ is identified as an ’Individual’ customer record and is evaluated using the logic described in the Merge Individual Customers diagram.

Compare with all other Individual Customers

The attributes of the Individual customer records are compared with the attributes of all other Individual customer records.

DOB Test On? By default, the DOB (Date of Birth) test is activated. To de-activate the DOB test, insert a line in the pupdc.prm parameter file on the server with the text ’NO_DOB’. Setting the DOB test to Off means that the Market Manager Update engine assumes that the Date of Birth always matches.

DOB match? If Date of Birth test is set to ’On,’ the engine compares the Date of Birth of the customer records. An exact match enables the engine to proceed to the next step in the current test.

DOB similar? If Date of Birth test is set to ’On,’ the engine compares the Date of Birth of the customer records. The ’Date of Birth similar ’ test analyzes for possible transpositions in the Date of Birth values (possibly caused by data entry errors). If the records are significantly similar, process proceeds along the ’Yes’ track.

TAXIDNO match? The engine compares the TAXIDNO field of the CUST_DAT table for each of the customer records. If the TAXIDNO values do not match, the process gets the next Customer record.

TAXIDNO similar? The engine compares the TAXIDNO field of the CUST_DAT table for each of the customer records. This test analyzes for possible transposition in the TAXIDNO values (possibly caused by data entry errors). If the records are significantly similar, process proceeds along the ’Yes’ track.

TAXIDNO <>’111111111’ The value ’111111111’ is a filler value for the TAXIDNO field and is therefore an invalid TAXIDNO. If TAXIDNO fields are set to this value, the test is invalid and the engine proceeds to Test 2 in the processing diagram.

Page 387: fe115trm

Market Manager Processing

Process Flow 3-23

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Full Name match? The Full Name test compares the JPREFIX, JSUFFIX and NAME fields of the CUST_DAT table for each customer record. The tests for these fields are as follows:

■ The JPREFIX field must be identical for both customer records.

■ The JSUFFIX field must be identical for both customer records.

■ Both customer records must have a first name (in the NAME field).

■ Both customer records must have a last name (in the NAME field).

■ The last name (in the NAME field) must be identical for both customer records.

■ If there is a middle name (in the NAME field), it must be identical for both customer records.

Address match? The engine compares the Street Number (STRNO), Street Name (STRNAME), Supplementary Number (SUPPNO) and Zip code (ZIP) fields of the CUST_DAT table for each of the customer records. If the records match in all fields, the process proceeds along the ’Yes’ track.

Merge matched customer records

The matched customer records are merged into a single customer in this step.

Next Customer record? The Market Manager Update engine evaluates each Individual customer record from the CUST_DAT table for customer matching.

Return to Customerization

When evaluation of all customer records from the CUST_DAT table is complete, the process returns to the “Write Customer Records to RAW files” step of the “Customerization Processing Diagram.”

Processing Step Description

Page 388: fe115trm

Market Manager Processing

3-24 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Householding Processing Diagram

More Bucketsto Process?

Read CUST_DATRows for Next

Bucket

CompareCustomer Records

and AssignCustomers toHouseholds

Write HouseholdEntries to RAWHousehold File

No

Yes

Terminate

Page 389: fe115trm

Market Manager Processing

Process Flow 3-25

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Householding Processing StepsHouseholding is performed entirely during the RAW processing step and is depen-dent on completion of the customerization step. Householding is performed by multiple concurrent Unix processes. The following steps apply to each individual forked process.

Processing Step Description

Read CUST_DAT Rows for Next Bucket

Read all of the CUST_DAT rows for the current bucket into an array in memory. Householding uses the same buckets defined by the customerization process in the CCN4LINK table.

Compare Customer Records and Assign Customers to Households

For each CUST_DAT record, compare it with the other customer records in the bucket. Comparisons use exact matching logic. In order for two customers to be assigned to the same household, their last names and all of their address fields must match exactly.

Business customers are not householded; each is assigned as the sole member of its household. This process continues until all customer records in the current bucket have been compared with all other records in the bucket.

Write Household Entries to RAW Household File

Once all of the records in the current bucket have been compared with all other records in the bucket the household assignments for the set are written out to the RAW Household file and the next bucket is processed.

More Buckets to Process? Is there another bucket assigned to this process? If so, go to the ’Read CUST_DAT Rows for Next Bucket’ step. If not, terminate.

Terminate The forked process is terminated. When all forked processes have been terminated, the householding process is complete.

Page 390: fe115trm

Market Manager Processing

3-26 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Promotion Tracking by Product Processing Diagram

Get AccountRecord

Is Open Date inDate Range for AnyActive Promotion?

DoServ, Prod, and

Subprod Match Any ActivePromotion?

Is OpenDate in Update

Period?

Does AccountBelong to Any Contact

Group?

Perform FinalCheck Against

Each ActivePromotion

Is theAccount a "Hit" for Any

Promotion?

Write a Row toPROMO_CUST_RESP

for Each Promotion

Is ThereAnother Account to

Process?

CopyPROMO_CUST_RESPto TBP_RESPONSES

Terminate

Yes

Yes

Yes

Yes

Yes

No

No

No

No

No

No

Yes

Page 391: fe115trm

Market Manager Processing

Process Flow 3-27

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Promotion Tracking by Product Processing StepsPromotion Tracking by Product (TBP) is performed during the RAW processing step, in conjunction with the Account Summarization process.

Processing Step Description

Get Account Record Account records are read from the _DAT versions of the services tables.

Is Open Date in Date Range for Any Active Promotion?

Is the date that an account was opened within the date range (Tracking Start Date and Tracking End Date) of an active promotion. If not, process the next account.

Do Serv, Prod and Suprod Match Any Active Promotion?

Does the service (defined by the name of the table from which the account was read), product and sub-product for the account match a service, product and sub-product combination defined as tracking criteria for any active promotion? If not, process the next account.

Is Open Date in Update Period?

Is the Open Date of the account greater than the previous Update End Date and less than or equal to the current Update End Date? If not, process the next account.

Does Account Belong to Any Contact Group?

Does the customer who owns the account belong to the target group for any active promotion? If not, process the next account.

Perform Final Check Against Each Active Promotion

Verify that the customer who owns the account was actually promoted to for this promotion, by comparing the customer’s name, social security number and date of birth with the corresponding columns in the PROMO_CUST table.

Is the Account a "Hit" for Any Promotion?

Based on the checks in the previous step, was the current account opened as the result of any active promotion? If not, process the next account.

Write a Row to PROMO_CUST_RESP for Each Promotion

For each promotion to which the current account has been identified as a response, write a row to the PROMO_CUST_RESP table to record the current account as a response for that promotion.

Is there Another Account to Process?

Is there another account remaining to be processed? If so, return to the ’Get Account Record’ step.

Page 392: fe115trm

Market Manager Processing

3-28 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Copy PROMO_CUST_RESP to TBP_RESPONSES

When there are no more accounts to process, copy all the rows from the PROMO_CUST_RESP table to the TBP_RESPONSES table. This action is not performed during the RAW processing step, but later in the reporting (REP) processing step.

Terminate The process is complete.

Processing Step Description

Page 393: fe115trm

Market Manager Processing

Process Flow 3-29

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Promotion Tracking by Query Processing Diagram

Get a Promotion

Get an Active Cell forthe Promotion

Build the Union of allthe Tracking Queriesfor the Current Cell

Build the Join of theUnioned Tracking

Queries with the TargetCustomers for the Cell

Execute the JoinStatement and Insert

the Selected Rows intoTBQ_RESPONSES

AreThere More

Active Cells forThis Promotion?

Are There MorePromotions?

Terminate

No

No

YesYes

Page 394: fe115trm

Market Manager Processing

3-30 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Promotion Tracking by Query Processing StepsPromotion Tracking by Query (TBQ) is performed after the REP processing step.

Processing Step Description

Get a Promotion Read one promotion number.

Get an Active Cell for the Promotion

Read the cell number for the promotion’s next active cell.

Build the Union of all the Tracking Queries for the Current Cell

Read all of the tracking queries from CN_QUERY and CN_SQL_STMT for the current cell and build a single SQL statement that is the UNION of all of them.

Build the Join of the Unioned Tracking Queries with the Target Customers for the Cell

Build an INSERT-SELECT SQL statement that joins the statement created in the previous step with the rows from the PROMO_TARGET_GROUP table. The table contains the target customers for the current cell and inserts the selected rows into TBQ_RESPONSES. The rows selected represent the intersection between the target customers and the rows selected by all of the cell’s tracking queries.

Execute the Join Statement and Insert the Selected Rows into TBQ_RESPONSES

Execute the statement built in the previous step to insert the rows representing responses to this promotion cell into TBQ_RESPONSES.

Are There More Active Cells for This Promotion?

If there are more active cells for the current promotion, then return to the ’Get an Active Cell for the Promotion’ step and process the next cell.

Are There More Promotions?

If there are more promotions to be considered for processing, then go to the ’Get a Promotion’ step and process the next promotion.

Terminate When all active cells for all promotions have been processed, the Tracking by Query process is complete.

Page 395: fe115trm

Market Manager Processing

Process Flow 3-31

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Promotion Generation Processing Diagram

Determine CustomerList for Promotion

Calculate CustomerCounts for Cell

Assign Control Groupmembers

Terminate

Identify Promotioncells

Get a Cell

DetermineCustomer List for

Cell

Are there moreCells?

Re-query Customercounts for the

Promotion

Calculate/Write Pre-activation aggregates

for the Promotionand its Cells

YES

NO

Write data for CustomerList

Write Promotion Celldata

Page 396: fe115trm

Market Manager Processing

3-32 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Promotion Generation Processing Steps Promotion Generation is performed within the Campaign Navigator interface.

Processing Step Description

Determine Customer List Determines the customer list for the promotion based on the Include and Exclude criteria defined in the Campaign Navigator interface. The Customer Keys for these customers are obtained from the CUST table.

See Chapter 2, "Detail Design", for more information about the CUST table.

Write Customer List The Customer Keys retrieved in the Determine Customer List step are written to PROMO_TARGET_GROUP for the promotion.

Identify Promotion Cells This step retrieves the cells in the promotion for processing. Promotion cell information is stored in PROMO_CELL.

See Chapter 2, "Detail Design", for more information about the PROMO_CELL table.

Get a Cell Each cell is processed individually.

Determine Customer List for Cell

Determines the subset of customers in the parent promotion that belong to the cell, based on the cell’s Assignment Method. The appropriate Cell Number is then written to PROMO_TARGET_GROUP for each of the cell’s customers.

Assign Control Group members

Randomly assigns customers in the cell (from the Determine Customer List for Cell step above) into the Control Group. The number of customers assigned to the Control Group is determined from the user-specified percentage or number.

Calculate Customer Counts for Cell

Calculates the customer counts for:

■ Contact Group - number of customers in the cell contacted for the promotion

■ Control Group - number of customers in the cell tracked but not contacted for the promotion

■ % Promotion Target Group - percentage of customers in the Promotion Target Group that belong to the cell

Write Promotion Cell Data

Writes the Contact, Control and % Promotion Target Group information calculated above to the PROMO_CELL table for the cell.

Are there more Cells? If there are more cells for the promotion, then return to the Get a Cell step and process the next cell.

Page 397: fe115trm

Market Manager Processing

Process Flow 3-33

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Re-query Customer Counts for the Promotion

The customer counts for the promotion are re-queried from the PROMO_TARGET_GROUP table.

Calculate/Write Pre-Activation Aggregates for the Promotion and its Cells

Pre-activation aggregate values for several relationship measures (number of accounts, balances and so forth) are calculated from the CUST table for the promotion and each of its cells. The results of these calculations are written to the CAMPAIGN_RESULTS table.

For more information about how data is stored in the CAMPAIGN_RESULTS table, refer to Chapter 2, "Detail Design".

Terminate The process is complete.

Processing Step Description

Page 398: fe115trm

Market Manager Processing

3-34 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Promotion Results (Release 4.0) Processing Diagram

Identify Active Cells

Get a cell

Evaluate Formulas

Write Data

Are theremore Active

Cells?

Terminate

Aggregate to ParentPromotions and

Campaigns

YES

Get a Campaign

IdentifyPromotions forspecified Campaign

Get a Promotion

Are theremore

Promotions?

Are theremore

Campaigns?

YES

YES

NO

NO

NO

Page 399: fe115trm

Market Manager Processing

Process Flow 3-35

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Promotion Results (Release 4.0) Processing StepsPromotion Results is performed after the REP processing step.

Processing Step Description

Get a Campaign Each campaign specified by the user is processed separately.

Identify Promotions for Campaign

The promotions for the specified campaign are retrieved from the CAMPAIGN_PROMO table.

Get a Promotion Each promotion is processed individually.

Identify Active Cells This step retrieves the cells designated as Active in the promotion for processing. Promotion cell information is stored in PROMO_CELL.

See Chapter 2, "Detail Design" for more information about the PROMO_CELL table.

Get a Cell Each cell is processed individually.

Evaluate Formulas Formulas used to calculate measures of promotion success, including response rate, return on investment and changes in relationship profiles (number of accounts, balances and so forth) are evaluated for the cell.

Write Data Writes the results of the formula calculations to the CAMPAIGN_RESULTS table for the cell being processed.

See Chapter 2, "Detail Design" for more information about the CAMPAIGN_RESULTS table.

Are there more Active Cells?

If there are more active cells for the current promotion, then return to the Get a Cell step and process the next cell.

Are there more Promotions?

If there are more promotions within the campaign, then return to the Get a Promotion step and process the next promotion.

Are there more Campaigns?

If there are more campaigns to be processed, then return to the Get a Campaign step and process the next campaign.

Aggregate to Parent Promotions and Campaigns

Aggregates cell-level formula values to the parent promotion and campaign levels.

Terminate The process is complete.

Page 400: fe115trm

Market Manager Processing

3-36 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Promotion Rollup Processing Diagram

Identify CostComponents

Are theremore Cells?

Terminate

Get a CostComponent

NO

YES

Calculate CustomerCounts

Get a Cell

Multiply by ContactCustomer Count

Variable CostComponent?

Increment TotalFixed Costs for cell

Are there moreCost

Components?

Identify ForecastChanges andAggregates

YES

NO

NO

YES

Is Promotiongenerated?

Increment TotalVariable Costs for

Cell

Write data for Cell

Aggregate to ParentPromotions

NO

YES

Write data forPromotion

Identify Promotion Cells

Page 401: fe115trm

Market Manager Processing

Process Flow 3-37

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Promotion Rollup Processing Steps Promotion Rollup is performed within the Campaign Navigator interface.

Processing Step Description

Is Promotion generated? Identifies whether or not the promotion specified for the process has been previously generated. If ’YES’, skip to Identify Promotion Cells. If NO, go to Calculate Customer Counts for Promotion and its Child Cells.

Calculate Customer Counts for Promotion and its Cells

Calculates the customer counts for:

■ Contact Groups - number of customers contacted for the promotion and its cells

■ Control Groups - number of customers tracked but not contacted for the promotion and its cells

Identify Promotion Cells This step retrieves the cells in the promotion for processing. Promotion cell information is stored in PROMO_CELL.

See Chapter 2, "Detail Design", for more information about the PROMO_CELL table.

Get a Cell Each cell is processed individually.

Identify Cost Components

This step retrieves the cost components in the cell for processing. Cost component information is stored in CAMPAIGN_COST.

See Chapter 2, "Detail Design", for more information about the CAMPAIGN_COST table.

Get a Cost Component Each cost component is processed individually.

Variable Cost Component?

If the cost component is Variable, the process proceeds to the Multiply by Customer Count step. For fixed cost components, the process proceeds to the Increment Fixed Cost step.

Multiply by Customer Count

The value for the variable cost component is multiplied by the contact customer count for the cell determined in the Calculate Customer Counts step above.

Increment Total Variable Costs for Cell

A running total for each of the variable cost components is maintained for the cell.

Increment Total Fixed Costs for Cell

A running total for each of the fixed cost components is maintained for the cell.

Are there more Cost Components?

If there are more cost components for the current cell, then return to the Get a Cost Component step and process the next cost component.

Page 402: fe115trm

Risk Manager Processing

3-38 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Risk Manager ProcessingThe goal of Risk Manager processing is to provide asset/liability management mod-eling by employing account level data and supporting structured analysis of inter-est rate risk, as well as tactical balance sheet and income statement forecasting. Risk Manager provides cash flow simulations based on different modeling assumptions, such as prepayment and new business at the product level and account level auto-balancing. It is designed to meet the needs of “what-if” modeling of the balance sheet under alternative rate environments.

Identify Forecast Changes and Aggregates

Identifies the forecast changes and aggregations for the cell from the CAMPAIGN_FORECAST_INPUT table.

Write data for Cell Forecast measures are written to CAMPAIGN_RESULTS. Aggregated fixed and variable costs are written to PROMO_CELL. Refer to Chapter 2, "Detail Design", for information about how data is stored in each of these tables.

Are there more Cells? If there are more cells for the promotion, then return to the Get a Cell step and process the next cell.

Aggregate to Parent Promotions

This step aggregates all costs and forecast measures to the promotion level.

Write data for Promotion Promotion costs are written to the PROMOTION table. Promotion forecast measures are written to the CAMPAIGN_RESULTS table.

Terminate The process is complete.

Processing Step Description

Page 403: fe115trm

Risk Manager Processing

Process Flow 3-39

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Risk Manager Processing Diagram

Read applicationparameters

ReadConfiguration ID

Read RM ProcessID

Type of RMProcess?

Read StochasticAssumptions

Read ScenarioAssumptions

Error inAssumptions?

Write to:PROCESS_ERRORS

Read InstrumentData

CreateRES_DTL_xxx

table

Process data

STOCHASTIC

SCENARIO

NO

Write to the following resulttables:

IDT_RESULT_HEADERRESULT_SCENARIO

RESULT_BUCKETRES_DTL_xxx

RESULT_MASTER

Write to:PROCESS_ERRORS

Write to:PROCESS_CASH_FLOWS

TransformResults?

Copy results totransformed table

YES

Error inAssumptions?

NO

YES

Read InstrumentData

Process data

Write DetailCashflow?

ProcessingErrors?

YES

YES

Write to the following resulttable:

TM_STOCH_MKT_VAL

Write to:PROCESS_ERRORS

Write to:PROCESS_CASH_FLOWS

Write DetailCashflow?

ProcessingErrors?

YES

YES

Write to:OFSA_INTEREST_RATES_AUDIT

Write onemonth rates?

YES

Write to:TM_STOCH_VAR

TM_STOCH_TOT_VAR

Value at RiskProcessing?

YES

NO

TruncateRES_DTL_xxx

table

Delete applicabledata in

RES_DTL_xxx

Result tableexists?

NO

Selectivereprocessing?

YES

NO

YES

NO

YESProcessing

Errors?

NO

NO

Write to:PROCESS_ERRORS

YES

Terminate

Terminate

Terminate

Page 404: fe115trm

Risk Manager Processing

3-40 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Risk Manager Processing Steps

Processing Step Description

Read Application Parameters

Session-wide parameters are set and user access rights are retrieved. Application processing parameters are retrieved from the OFSA_PROCESS_ID_STEP_RUN_OPT table. The parameters from this table designate how data partitioning will occur. Information is also retrieved from the OFSA_FISCAL_YEAR_INFO.

See the Oracle Financial Services Installation and Configuration Guide for more information on the OFSA_PROCESS_ID_STEP_RUN_OPT and OFSA_FISCAL_YEAR_INFO tables.

Read Configuration ID The Configuration ID designates such elements as:

■ Processing as-of-date

■ Products used for processing

■ Process error limits

■ Autobalancing leaves

■ Modeling and dynamic bucket information

■ ’Update Instrument’ data flag for ’Market Value’

■ ’Market Value’ and ’Dynamic Gap’ calculation flags

Read Risk Manager Process ID

The Risk Manager Process ID parameters are retrieved in this step. These parameters designate:

■ Processing type (stochastic or scenario based).

■ Instrument table to be processed.

■ Interest rate assumptions.

■ Processing platform (server or client).

For more information on Risk Manager processing parameters, see the “Process ID” chapter in the Oracle Risk Manager Reference Guide.

Page 405: fe115trm

Risk Manager Processing

Process Flow 3-41

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Read Scenario Assumptions

Retrieves scenario-specific assumption information including payment pattern and repricing pattern information. Information for the following IDs may be accessed by Risk Manager during ’Scenario-Based’ processing:

■ Forecast Rates ID

■ Prepayment ID

■ Transaction Strategy ID

■ Formula Leaves ID

■ Forecast Balance ID

■ Pricing Margin ID

■ Maturity Strategy ID

Read Stochastic Assumptions

Retrieves stochastic-specific assumption information, including payment pattern and repricing pattern information. Information for the following IDs may be accessed by Risk Manager during ’stochastic’ processing:

■ Valuation curve

■ Rate Index ID

■ Prepayment ID

■ Transaction Strategy ID

Error in Assumptions? This decision point identifies any unrecoverable errors. Such errors would be caused by corruption of Assumption IDs or insufficient memory for the assumptions used by the process.

Result table exists? For scenario-based processing, OFSA checks the database for the existence of the RES_DTL_XXXXXX and CONS_DTL_XXXXXX tables required to store processing results.

Selective Reprocessing? OFSA determines whether this is a process that requires only a subset of the original result set to be processed. If a ’Selective Reprocessing’ option has been designated in the Process ID, then this decision point is ’Yes’.

Delete applicable data in RES_DTL_XXXXXX

This is applicable only during selective reprocessing. The portion of the result set that needs to be reprocessed is deleted from the RES_DTL_XXXXXX table.

Truncate RES_DTL_XXXXXX and CONS_DTL_XXXXXX

For scenario-based processing, all rows in the RES_DTL_XXXXXX and CONS_DTL_XXXXXX tables are deleted in this step.

Processing Step Description

Page 406: fe115trm

Risk Manager Processing

3-42 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Create RES_DTL_XXXXXX and CONS_DTL_XXXXXX

For scenario-based processing, in this step new RES_DTL_XXXXXX and CONS_DTL_XXXXXX tables are created.

See Chapter 2, "Detail Design", for more information regarding the structure of the Result Detail tables.

Read Instrument Data The instrument records for each table that satisfy the filter conditions are read into memory. Included in the filter conditions are the following:

■ As of Date from the active Configuration ID

■ Filter ID (which could be a Data Filter ID, Tree Filter ID, or a Group Filter ID)

Process Data The instrument data retrieved in the Read Instrument Data step above is processed in memory.

Write Detail Cashflow? This decision point determines whether or not detail cash flow records should be output. This is used primarily as an audit function. This is ’Yes’ if the Detail Cash Flow Audit checkbox is marked on the Process ID.

Write to:

OFSA_PROCESS_CASH_FLOWS

This process is applicable only if Write Detail Cashflow step above is ’Yes’. The detail cashflows for the first five instrument records processed are written to the OFSA_PROCESS_CASH_FLOWS table.

See the OFSA_PROCESS_CASH_FLOWS table in Chapter 2, "Detail Design", for more information.

Write to the following result tables:

OFSA_IDT_RESULT_HEADER

OFSA_RESULT_SCENARIO

OFSA_RESULT_BUCKET

RES_DTL_XXXXXX and CONS_DTL_XXXXXX

OFSA_RESULT_MASTER and OFSA_CONSOLIDATED_MASTER

The processing results are written to this table if the process is scenario based.

See Chapter 2, "Detail Design", for more information.

Processing Step Description

Page 407: fe115trm

Risk Manager Processing

Process Flow 3-43

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Processing Errors? This decision point identifies any errors encountered during processing of the Instrument table data.

Write to: OFSA_PROCESS_ERRORS

Any errors encountered are written to this table.

For more information about how data is stored in the OFSA_PROCESS_ERRORS table, refer to Chapter 2, "Detail Design".

Transform Results? This decision point identifies whether or not the Transform Result Detail Table checkbox has been marked in the Process ID.

Copy results to transformed table.

The transformed table is created and the data in the corresponding RES_DTL_XXXXXX and CONS_DTL_XXXXXX tables is copied to it.

Refer to the Transformation Process diagram in this chapter for more information on Transformation processing.

Write one month rates? This determines whether the rates generated by a Risk Manager stochastic process should be written out to a table. This is ’Yes’ if the ’One Month Rates’ checkbox in the Process ID has been marked. This is used primarily as an audit feature.

Write to:

OFSA_INTEREST_RATES_AUDIT

This is applicable only if Write one month rates is true. The monthly rates generated by the rate generator are written to the OFSA_INTEREST_RATES_AUDIT table.

Write to the following result table:

OFSA_TM_STOCH_MKT_VAL

The OFSA_TM_STOCH_MKT_VAL table stores the market value results from a Risk Manager ’stochastic’ process.

Value at Risk processing? This decision point determines whether ’value at risk’ processing is calculated. This is ’Yes’ if the Calculate Value at Risk checkbox in the Process ID is marked.

Write to:

OFSA_TM_STOCH_VAR and OFSA_TM_STOCH_TOT_VAR

The OFSA_TM_STOCH_VAR and OFSA_TM_STOCH_TOT_VAR tables store the value at risk results from a Risk Manager ’stochastic’ process.

Terminate The process is complete.

Processing Step Description

Page 408: fe115trm

Risk Manager Processing

3-44 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Additional Risk Manager Processing NotesThe processing elements such as the Configuration ID, Process ID and processing assumptions are read into memory once, at the beginning of the process. Instru-ment record processing is row-by-row. Therefore, each instrument record that is read into memory in the ’Read Data’ step above is processed, one row at a time.

Output for Risk Manager processing depends on the processing type selected. Out-put logic, by type, is summarized in the following sections.

Stochastic-Based ProcessingOutput logic for stochastic-based processing is summarized in this section.

Scenario-Based ProcessingOutput logic for scenario-based processing is summarized in this section.

Table Name/Process Description

OFSA_TM_STOCH_MKT_VALUE table

■ Always populated

OFSA_INTEREST_RATES_AUDIT table

■ Populated with rate paths if ’One Month Rates’ is selected

OFSA_TM_STOCH_VAR table ■ Populated if ’Value at Risk’ is selected

OFSA_TM_STOCH_TOT_VAR table

■ Populated if ’Value at Risk’ is selected

OFSA_PROCESS_ERRORS table ■ Stores any errors generated during the process

OFSA_PROCESS_CASH_FLOWS ■ If the ’Detail Cash Flow Audit’ option is selected, Risk Manager writes the detail cash flow information to OFSA_PROCESS_CASH_FLOWS for the first five instrument records processed.

Page 409: fe115trm

Risk Manager Processing

Process Flow 3-45

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Table Name/Process Description

RES_DTL_XXXXXX and CONS_DTL_XXXXXX tables

■ Output table named with the sys_id_num of the process:

- New output table created if a table does not already exist

- If output table already exists for the Process ID, it is truncated (unless ’Selective Reprocessing’ is selected)

■ Risk Manager Result Detail data output to the RES_DTL_XXXXXX and CONS_DTL_XXXXXX tables:

- Financial element results are written by unique Risk Manager product leaf or by Product/Organizational Unit/Currency combinations.

OFSA_RESULT_MASTER table

■ Stores current position summary and market values.

OFSA_IDT_RESULT_HEADER table

■ Stores assumption information for process.

OFSA_RESULT_BUCKET table

■ Stores time bucket information for the process.

OFSA_RESULT_SCENARIO table

■ Stores information on scenarios for the process.

OFSA_PROCESS_ERRORS table

■ Stores any errors generated during the process.

Instrument table update ■ Occurs only if the ’Calculate Market Value’ and ’Update Instrument Data’ flags are set in the Configuration ID and the ’Calculate Market Value’ flag is set in Process ID.

■ Updates the market_value_c column for each record in the Instrument table.

Page 410: fe115trm

Transfer Pricing Processing

3-46 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Transfer Pricing ProcessingThe goal of Transfer Pricing processing is to generate transfer rate values for instru-ment accounts. The transfer rate represents the cost of funds for an instrument account. This is the foundation of profitability analysis. The results from Transfer Pricing provide analytical tools to create performance profitability measures.

Output options ■ Detail Cash Flow Audit:

- If the ’Detail Cash Flow Audit’ option is selected, Risk Manager writes the detail cash flow information to OFSA_PROCESS_CASH_FLOWS for the first five instrument records processed.

Calculation options ■ ’GAP’ designates additional financial elements generated for the process output.

■ ’Transfer Pricing’ designates additional financial elements generated for the process output.

■ ’Autobalancing’ designates additional processing logic to ’balance’ the results.

Financial element output ■ Designates financial elements to be included in the output.

Selective Reprocessing ■ Reprocess a subset of the results.

■ RES_DTL_XXXXXX and CONS_DTL_XXXXXX tables are not truncated. Only those records specified for the Selective Reprocessing are affected.

Table Name/Process Description

Page 411: fe115trm

Transfer Pricing Processing

Process Flow 3-47

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Transfer Pricing Processing Diagram

WriteProcessErrors

Read Fiscal Year

Error inAssumption?

Read UserDefined

Payment Data

DeterminePartitionPoints

LoadHistoricalRates

ReadConfiguration

ID

Read Process ID

Read TransferPricing ID

WriteProcessErrors

YES

NO

ReadApplicationParameters

Read FilterID

Read PrepaymentID

Read User DefinedRepricing Pattern

TerminateIf CriticalError

Read InstrumentRecords

ProcessIndividual Records

Terminate

Page 412: fe115trm

Transfer Pricing Processing

3-48 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Transfer Pricing Processing Steps

Processing Step Description

Read Fiscal Year Information from the OFSA_FISCAL_YEAR_INFO table is retrieved in order to determine how date values are used. See Chapter 2, "Detail Design", for more information on the OFSA_FISCAL_YEAR_INFO table.

Read Application Parameters

Application processing parameters are retrieved from the OFSA_PROCESS_ID_STEP_RUN_OPT table. The parameters designate how data partitioning will occur.

Read Configuration ID The Configuration ID designates such elements as the processing as-of-date, the product used for processing and process error limits.

See the Oracle Transfer Pricing Reference Guide for more information.

Read Process ID The Process ID parameters are retrieved in this step. The Process ID designates the type of processing, the tables to be processed, the process assumptions, and any additional processing options.

For more information on the processing parameters, see the “Transfer Pricing Processing ID” chapter in the Oracle Transfer Pricing Reference Guide.

Read Prepayment ID Prepayment ID and Prepayment Table ID information is retrieved if a Prepayment ID has been designated in the Process ID.

Read Transfer Pricing ID Retrieves the information for the Transfer Pricing ID that designates the transfer pricing methodologies to be used.

Load Historical Rates The Historical Rates are loaded from the FDM Rate Manager tables.

Read User-Defined Payment and Repricing data

In this step, user-defined payment and repricing information is retrieved.

Read Filter ID Filter ID information is retrieved if one has been specified in the Process ID.

Page 413: fe115trm

Transfer Pricing Processing

Process Flow 3-49

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Error in Assumptions? This decision point identifies any errors that would prevent the calculation of a transfer rate. Such errors would be caused by corruption of Assumption IDs or insufficient memory for the assumptions used by the process (Configuration ID, Historical Rates, Transfer Pricing ID, Prepayment ID, or Filter ID). Errors or warnings that do not prevent the calculation of a transfer rate (even if incorrect) are identified after the transfer rate has been calculated, later in the process.

Write Process Errors Assumption errors identified above are written to the OFSA_PROCESS_ERRORS table in this step.

For more information about how data is stored in the OFSA_PROCESS_ERRORS table, refer to Chapter 2, "Detail Design".

Determine Partition Points

This step queries the Instrument tables selected for processing in order to determine the partition points for the process. Data partitioning is used to designate units of work for OFSA multiprocessing.

For more information on OFSA multiprocessing, see the “UNIX Server Installation and Configuration” chapter of the Oracle Financial Services Installation and Configuration Guide.

Process Bulk SQL The SQL statements used to calculate the transfer rates and matched spreads or remaining term transfer rates for accounts using a bulk methodology are processed in this step. At the conclusion of this step, a value is calculated for the transfer_rate and matched_spread_c columns (or tran_rate_term if using ’Remaining Term Pricing Basis’) in the Instrument tables for these accounts.

Read Instrument Records Prior to processing records individually, the instrument records for each table that satisfy the filter conditions are read into memory. Included in the filter conditions are the As of Date, Data Filter ID and Transfer Pricing ID specified for the Process ID.

Process Instrument Records

A transfer rate and matched spread (or ’remaining term’ transfer rate if using ’Remaining Term Pricing Basis’) for each of the instrument records accessed in the Read Instrument Records step above is calculated in this step. Records are processed individually, one at a time.

Processing Step Description

Page 414: fe115trm

Transformation Processing

3-50 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Transformation ProcessingTransformation processing provides the functionality necessary to create OFSA Report Mart tables. This functionality enables the user to transform specified OFSA tables into a Report Mart structure more applicable for reporting access.

The following tables and table types can be transformed using Transformation pro-cessing:

■ LEDGER_STAT

■ Risk Manager results tables

■ OFSA hierarchy structure tables

Write Process Errors Any errors encountered during the calculation of the transfer rate values is processed at this time. Error information is inserted into the OFSA_PROCESS_ERRORS table.

For more information about how data is stored in the OFSA_PROCESS_ERRORS table, refer to Chapter 2, "Detail Design".

Terminate The process is complete.

Processing Step Description

Page 415: fe115trm

Transformation Processing

Process Flow 3-51

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Transformation Processing Diagram

YES

DeterminePartitionpoints

Read ApplicationParameters

ReadTransformation ID

ReadConfiguration ID

Terminate

NO

Read OFSA SystemInformation

Filter?Read FilterType and

FilterNO

YES

Error inTransformation

ID?

DetermineResult Set

Error in SourceData?

CreateOutput

Table(s)

DropTable(s)?

Output Table(s)already exists?

Drop existingOutput Table(s)

Delete data

Create OFSAMeta-Data

YES

NO

SelectSource Data

Populate OutputTable(s)

YES

NO

Build Indexes

ReserveTable?

YES

NO

Tablescreated?

YES

NO

ValidResultSet?

NO

YES

Un-reserve OutputTable(s)

NO Table(s)Empty?

YES

OverlappingData?

ReplaceData?

NO

YES

NO

NO

YES

ValidResultSet?

NO

YES

WriteProcessErrors

YES

Analyze

Page 416: fe115trm

Transformation Processing

3-52 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Transformation Processing Steps

Processing Step Description

Read Transformation ID OFSA retrieves the Transformation ID parameters in this step. The Transformation ID designates the source data, the name of the output table and other processing options used by the process.

Read Application Parameters

Application processing parameters are retrieved from the OFSA_PROCESS_ID_STEP_RUN_OPT table. The parameters designate how data partitioning will occur.

See Chapter 2, "Detail Design", for more information on the OFSA_PROCESS_ID_STEP_RUN_OPT table.

Read Configuration ID The Configuration ID designates such elements as the as-of-date and process error limits.

Reserve Table(s)? In this step OFSA attempts to reserve the table_name(s) designated as the output table(s) by the transformation process. The Reserve Table(s) step includes the following two validations:

■ OFSA queries OFSA_TABLE_TRACKING to determine if the table_name specified for the output table(s) is currently being used by another process.

■ OFSA estimates the size of the output table(s) and indexes to verify that there is sufficient space remaining for these objects in the database.

If the table_name is not currently being used, the Transformation process reserves the table_name by inserting a record into OFSA_TABLE_TRACKING. If the table_name is being used by another Transformation process, the current Transformation process terminates.

If sufficient space does not exist within the database for the output table and accompanying indexes, the process terminates.

Refer to Chapter 2, "Detail Design", for more information about OFSA_TABLE_TRACKING.

Filter? If the user specified either a Data Filter ID or a Tree Filter ID in the Transformation ID, then the evaluation of this decision point is ’YES’. Otherwise, this decision point is ’NO’.

Read Filter Type and Filter ID

The filter type may be either Data Filter ID or Tree Filter ID.

Page 417: fe115trm

Transformation Processing

Process Flow 3-53

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Read OFSA System Information

OFSA system information is retrieved from the SYSTEM_INFO table for the tables that have been selected for processing. The information retrieved from SYSTEM_INFO is used to construct the SQL statements used to execute the transformation.

See the SYSTEM_INFO section in Chapter 2, "Detail Design", for more information on how data is stored in this table.

Error in Transformation ID?

This decision point validates whether or not the Transformation ID contains inconsistent parameters. If an error does occur, the process proceeds to Write Process Errors (described below).

For example, if the Transformation process is utilizing a Data Filter ID that includes a leaf column designated in the Select Columns to Exclude section of the Transformation ID, OFSA writes an error message to OFSA_PROCESS_ERRORS (in the Write Process Errors step described below) and terminates the process.

Determine Result Set The Result Set defines the financial elements and other data elements to be transformed by the process. In this step, OFSA determines the structure of the output table based on the financial elements and other data elements used by the process.

Error in Source Data? This decision point validates the source data and result set to be used by the Transformation process. If the source data and result set are not consistent, the process proceeds to the Write Process Errors step.

For example, this step validates the Financial Elements specified for the Result Set. If information for these Financial Elements does not exist within the appropriate OFSA Leaf tables, the process outputs process errors and terminates.

Output Table(s) already exists?

If the output table(s) does not exist, the transformation process creates the required output table(s) and proceeds with processing. If the output table(s) already exists, the transformation process designates whether to drop the existing table(s) or replace data selectively.

Drop Table(s)? If the user has specified Drop Table as the processing option for the Transformation process, the process proceeds to the Drop Existing Output table(s) step. Otherwise, OFSA proceeds to the Table Empty? step to check to see if the specified output table(s) has existing data.

Processing Step Description

Page 418: fe115trm

Transformation Processing

3-54 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Table Empty? If the specified output table(s) does not contain any existing data, OFSA drops the output table(s) (just as if the user had specified Drop Table in the Transformation ID). Otherwise, OFSA proceeds to the Overlapping Data? step to check if any of the existing data will be overwritten.

Overlapping Data? If the output table(s) does not include any data that will be overwritten by the Transformation process, the new output data is appended to the existing output table(s). Otherwise, OFSA determines if the ’Replace Data’ option is marked in the Transformation ID before appending the transformation output.

Replace Data? If the user has specified Replace Data, then the process proceeds to the Validate Result Set step. Otherwise, overlapping data exists in the output table(s).

Replace Data? is ’NO’ if the output table contains existing data that will be overwritten by the process, but the user has not designated Replace Data in the Transformation ID. OFSA proceeds to the Write Process Errors step for such processes.

Create Output Table(s) In this step OFSA creates the output table(s) specified by the Transformation ID.

For more information on the definitions used to create transformation output tables, refer to the “FDM Object Management” chapter of the Oracle Financial Services Installation and Configuration Guide.

Create OFSA Meta-Data OFSA metadata for the new output table and accompanying indexes is created in the SYSTEM_INFO, TSER_TEMP_OBJECTS and SYSTEM_INDEX_INFO tables.

See Chapter 2, "Detail Design", for more information about these tables.

Valid Result Set? OFSA validates that the filter specified in the process is consistent with the filter specified for the original process that created the output table.

Delete Data For a ’Replace Data’ process, OFSA deletes records from the existing output table based on the filter criteria specified by the current Transformation process.

Determine Partition points

This step queries the tables selected for processing in order to determine the partition points for the process. Data partitioning is used to designate units of work for OFSA multiprocessing.

For more information on multiprocessing, see the “UNIX Server Installation and Configuration” chapter in the Oracle Financial Services Installation and Configuration Guide.

Processing Step Description

Page 419: fe115trm

Transformation Processing

Process Flow 3-55

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Select Source Data The source data to be transformed is retrieved from the specified table. The source data table is specified in the Transformation ID being processed.

Populate Output Table(s) OFSA populates the output table(s) designated by the Transformation ID in this step. The population of the output table(s) includes the data transformations of the selected source data.

Table(s) created? This decision point determines if the output table(s) was created by the Transformation process, or if the process appended data to an existing output table.

If the process appended data to an existing output table, this decision point is set to ’No’, enabling the process to proceed to the Un-reserve Output Table step. Otherwise, the Transformation process created the output table(s), thereby necessitating the need to create indexes.

Build Indexes If the output table(s) was created by the Transformation process, OFSA builds any required indexes in this step.

For more information on the definitions used to create the output table indexes, refer to the Transformation ID in the “FDM Object Management” chapter in the Oracle Financial Services Installation and Configuration Guide.

Analyze This step executes the Analyze statement for the output table(s) and any indexes.

Write Process Errors OFSA writes error messages for errors that occurred during Transformation processing to the OFSA_PROCESS_ERRORS table. The number of records inserted is limited to the Process Errors setting in the Configuration ID.

For more information about how data is stored in the OFSA_PROCESS_ERRORS table, refer to Chapter 2, "Detail Design".

Un-reserve Output Table(s)

OFSA always un-reserves the output table(s) just prior to process termination. OFSA updates the appropriate entries in OFSA_TABLE_TRACKING to release the table_name for future processing.

Terminate The process is complete.

Processing Step Description

Page 420: fe115trm

Transformation Processing

3-56 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Additional Transformation Processing NotesAll Transformation processing is executed row-by-row, except for tree rollup trans-formations, which are processed as bulk. Transformation processing is always ’data-base bound’.

Refer to the Glossary of this manual for definitions of row-by-row and bulk process-ing. Refer to the “OFSA Multiprocessing” chapter in the Oracle Financial Services Installation and Configuration Guide for more information about ’database bound’.

The table name for the Transformation output table is designated in the Transforma-tion ID.

Page 421: fe115trm

Oracle Budgeting & Planning Data Transformation 4-1

Oracle Proprietary, Confidential Information - Use Restricted by Contract

4Oracle Budgeting & Planning

Data Transformation

The transformation routines for Oracle Budgeting & Planning data automate the task of moving information from the Oracle Financial Data Manager (FDM) rela-tional environment (RDBMS) into the multidimensional Budgeting & Plan-ning/Oracle Financial Analyzer (Budgeting & Planning/OFA) environment. This chapter describes the data loading routines for:

■ Execution Environment

■ Data Loading Routines

■ Loading Dimensions and Hierarchies

■ Loading Ledger_Stat Data

■ Loading Risk Manager Data

■ Loading Maturity Mix Data

For each data loading routine, a list of the RDBMS tables, a processing flow dia-gram, and a description of the processing steps are provided.

Note: Release 4.5 also includes routines for loading interest rate and exchange rate data to the Budgeting & Planning/OFA environment, and for transferring budget data back to the FDM environment from Budgeting & Planning. Refer to the Oracle Budgeting & Planning Reference Guide for more information.

Page 422: fe115trm

Execution Environment

4-2 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Execution EnvironmentData Movement Routines (DMRs) load all data into the Super Administrator per-sonal database. From there an administrator can distribute the data to the super-shared database and to users. The administrator executes the DMRs from within Oracle Express Administrator using the Express command dialog.

After loading the data, the user should exit Administrator and use Oracle Financial Analyzer to view the results of the data import.

Data Loading RoutinesThe data loading routines execute six basic steps:

1. Connect to the FDM relational database.

2. Read the arguments supplied by the user.

3. Pass control to a program to handle that specific type of data.

4. Import the raw FDM relational database data into a staging area in the Budgeting & Planning/OFA multidimensional database.

5. Transform the FDM relational raw data for use in the Budgeting & Planning/OFA multidimensional database.

6. Merge the transformed data into the target dimensions and variables in the Budgeting & Planning/OFA multidimensional database.

7. Report a summary of metrics for the importation.

Data loading routines bring over the following kinds of information:

■ Dimensions and hierarchies—the Organizational Unit and Chart of Accounts dimensions and hierarchies must be loaded before other data can be loaded

■ LEDGER_STAT data (actual historical data, forecast data, or budget data)

■ Risk Manager (forecasted current position runoff results)

■ Interest Rates (forecasted interest rates, transfer rates and currency exchange rates)

■ Maturity Mix (forecast mix assumption sets)

Page 423: fe115trm

Loading Dimensions and Hierarchies

Oracle Budgeting & Planning Data Transformation 4-3

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Loading Dimensions and HierarchiesThe goal of hierarchy DMRs is to convert the node and leaf structures of Tree Rol-lup IDs from the FDM relational database into dimension values and hierarchies in the Budgeting & Planning/OFA multidimensional database. The hierarchy DMR also creates the required supporting metadata for the new dimension values and hierarchies loaded.

The administrator selects a SYS_NUM_ID representing a Tree Rollup ID that exists in the FDM relational database for any leaf to load into the Budgeting & Plan-ning/OFA multidimensional database. Version 4.5 supports loading either Chart of Accounts or Organizational Unit Tree Rollup IDs, or into any other dimension except Financial Element, Forecast and Time.

RDBMS TablesThe following RDBMS tables are used for loading dimension and hierarchy data:

Table Name Access

OFSA_CATALOG_OF_IDS

read FDM dimension/leaf environment

OFSA_CATALOG_OF_LEAVES

read FDM dimension/leaf identification

OFSA_IDT_ROLLUP read Hierarchy relationship data

OFSA_LEAF_DESC read Leaf/dimension value descriptions

OFSA_NODE_DESC read Node (that is, parent) /dimension value descriptions

Page 424: fe115trm

Loading Dimensions and Hierarchies

4-4 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Dimensions and Hierarchies Data Loading Processing Diagram

Start

Initialization andConnect to RDBMS

LoadCATALOG_OF_LEAVES

LoadCATALOG_OF_IDS

Load IDT_ROLLUP

OFSA_Catalog_of_Leaves

OFSA_Catalog_of_IDS

OFSA_IDT_Rollup

Add parent to stagingdimension and relate itto current node value

Start merge

Set parent values null

Nodes loop: Higher order to lower order

Add node value intoOFA dimension

Parent = null ornode value < 0

YES

NO

Set previous node asparent.

End merge

Load OFSA_LEAF_DESC

Load OFSA_NODE_DESC

OFSA_Leaf_Desc

OFSA_Node_Desc

Omit orphaned leaves

Keep orphanleaves?

YESNO

Add hierarchystaging dimension values

to OFA dimension

Update OFA dimensiondescriptions and labels

Update OFA dimensionhierarchy relationships

Fix Display names

End

A

A Start Load Process

Start Load Process

Leaf loop: in SEQUENCES order

Obtain Total Lvl Rollup OFSA_Node_Desc

Omit leaflessnodes

Page 425: fe115trm

Loading Dimensions and Hierarchies

Oracle Budgeting & Planning Data Transformation 4-5

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Dimensions and Hierarchies Data Loading Processing StepsStep Description

Start Loads the SYS_ID_NUM into FS.DM.CATALOG in the BP.SIDN property. Updates the BP.OFSA.USER, BP.DATE properties with the current user name and the date and time.

Load OFSA_CATALOG_OF_LEAVES

Retrieve correct LEAF_NUM_ID from the OFSA_CATALOG_OF_LEAVES table (used in reading LEAF_DESC table).

Load OFSA_CATALOG_OF_IDS

Declare and Open a SELECT Cursor for the OFSA_CATALOG_OF_IDS table. Fetch the description for the hierarchy.

Load OFSA_IDT_ROLLUP

Retrieve records from OFSA_IDT_ROLLUP based on the SYS_ID_NUM. Fetch nodes in SEQUENCES order and store in hierarchy buffer variables.

Obtain Total Lvl Rollup Retrieve parentage to top level nodes in OFSA_IDT_ROLLUP from OFSA_NODE_DESC as the total level rollup.

Start Merge This sub-process merges leaves and nodes into hierarchy buffer dimension by descending OFSA_IDT_ROLLUP SEQUENCES.

Leaf loop: in SEQUENCES order

The first (outer) of two nested loops: Leaves. Sort the leaves by SEQUENCES before processing

Nodes loop: Higher order to lower order

The second (inner) of two nested loops: Nodes. Nodes values in the IDT_ROLLUP table can be in any of 14 columns, representing the maximum number of levels in a hierarchy in FDM.

The remaining steps in FS.POP_LEAF are performed up to 14 times for every FDM leaf.

Note that hierarchies are balanced by inserting place-holder nodes so that all leafs are the same number of levels distant from the most aggregate, most “ancient” parent node. OFA does not need balanced hierarchies, so FS.POP_LEAF omits these superfluous levels.

Add node value into OFA dimension

Add the node to the hierarchy staging dimension. If this is the first node for a leaf (“oldest” parent), the value of the preceding node is set to null.

Parent = null or node value < 0

Skip the remaining two steps if there is no parent or if the first character of the node value is a minus sign. In FDM a negative value indicates that the node is null.

Page 426: fe115trm

Loading Dimensions and Hierarchies

4-6 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Add parent to staging dimension and relate it to current node value

Parents in the hierarchy must already exist as a dimension values before children can associate with them. Therefore this subprocess always processes nodes from oldest to youngest, that is, from most aggregate to finest detail.

After the parent dimension value exists, the current value is associated to it as a child.

Set previous node as parent

The value of the preceding node is set to the current node.

Load OFSA_LEAF_DESC Retrieve leaf descriptions from the OFSA_LEAF_DESC table based on the SYS_ID_NUM of the rollup being loaded.

Load OFSA_NODE_DESC

Retrieve node descriptions from the OFSA_NODE_DESC table based on the SYS_ID_NUM of the rollup being loaded.

Keep or Omit orphaned leaves

The Hierarchy Load program enables the user to specify whether orphaned leaves should be added into the OFA dimension. Orphan leaves are omitted from the load if the user specifies.

Omit Leafless Nodes Any nodes that are found not to have a leaf are redefined as orphans to prevent them from being interpreted as leaves in the OFA DB.

Move hierarchy from temporary processing location to live Budgeting & Planning/OFA dimension

The load comes from the relational to the temporary location. The transformation occurs in the temporary location and the hierarchy is moved within the multidimensional database.

Update OFA dimension hierarchy relationships

The data coming in is expected to be numeric. If non-numeric, an error message is printed and processing continues to the last record in the cursor ’s result set.

Fix Display names Update display names of OFA dimension and hierarchy

Step Description

Page 427: fe115trm

Loading Ledger_Stat Data

Oracle Budgeting & Planning Data Transformation 4-7

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Loading Ledger_Stat Data The goal of the LEDGER_STAT DMR is to copy general ledger data from the FDM relational database into the Budgeting & Planning/OFA multidimensional data-base and to create the required metadata.

The LEDGER_STAT table contains three types of data—actual or historical data, budget data, and forecast data. The administrator specifies the type of data by selecting the consolidation code in the where-clause argument. Using the Express command window in the Oracle Express Administrator interface, the user issues a call to FS.LOAD_DATA to launch the process. The process then populates FS.FIN_DATA with values from the FDM LEDGER_STAT table.

Non-rate values are divided by a user-defined factor (usually 1000).

RDBMS TablesThe following RDBMS tables are used for loading LEDGER_STAT data:

Table Name Access Description

OFSA_CATALOG_OF_IDS read FDM dimension/leaf environment

OFSA_FINANCIAL_ELEMENTS

read Dimension values and descriptions

OFSA_LEAF_DESC read Leaf/dimension value descriptions

LEDGER_STAT read Holds actual GL data

OFSA_NODE_DESC read Node (that is, parent) /dimension value descriptions

Page 428: fe115trm

Loading Ledger_Stat Data

4-8 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

LEDGER_STAT Data Loading Processing Diagram

End

Dynamically BuildSELECT

Start

Ledger Stattbl

Load data into cube

Donereading selected

records?

Append

Dimvalues Match or

AppendMatch

No

Execute SELECT

Fetch a record

No

Add Dimension Value

Yes

Do all leaf valuesexist?

Yes

Skip Record

Page 429: fe115trm

Loading Risk Manager Data

Oracle Budgeting & Planning Data Transformation 4-9

Oracle Proprietary, Confidential Information - Use Restricted by Contract

LEDGER_STAT Data Loading Processing Steps

Loading Risk Manager DataThe goal of the Risk Manager RES_DTL_XXXXX DMR is to copy current position runoff and results data from the FDM relational database into the Budgeting & Planning/OFA multidimensional database and to create the required metadata.

Each RES_DTL_XXXXX table contains forecasted runoff and the corresponding future financial results (average and ending balances, interest, and so on.) for cur-rent position data. Using the Express command window in the Oracle Express Administrator interface, the user issues a call to FS.LOAD_DATA to launch the pro-cess. The process then populates FS.FIN_DATA with this data.

Non-rate values are divided by a user-defined factor (usually 1000).

Step Description

Start

Dynamically Build SELECT module

Build a SQL SELECT statement to read buckets 1 through 12 from the LEDGER_STAT table. Incorporate the free-form WHERE clause into the SELECT, if the user specified one.

Execute SELECT Select the data from LEDGER_STAT based on the specified SELECT statement.

Fetch a record Get the next record from LEDGER_STAT.

Match or Append New dimension value

The match or append argument is specified when the DMR is called. If the argument given is “Match,” the DMR ignores any new dimension values (such as Chart of Accounts or Organizational Unit) that it encounters in the relational database during the load. If the argument given is “Append,” the DMR adds any new dimension values that it encounters in the relational database during the load.

Load record into data cube

Copy and transform the record from the LEDER_STAT table into the FS.FIN_DATA cube

Done reading selected records?

When no more records from LEDGER_STAT exist to be loaded, the process terminates.

Page 430: fe115trm

Loading Risk Manager Data

4-10 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

RDBMS TablesThe following RDBMS tables are used for loading Risk Manager data:

Table Name Access Description

OFSA_CATALOG_OF_IDS read FDM dimension/leaf environment

OFSA_FINANCIAL_ELEMENTS

read Dimension values and descriptions

OFSA_LEAF_DESC read Leaf/dimension value descriptions

RES_DTL_XXXXX read Holds a Risk Manager forecast identified by XXXXX, where XXXXX is the SYS_NUM_ID generated by the process.

OFSA_RESULT_BUCKET read Indicates the month/year of each column of RES_DTL_XXXXX

Page 431: fe115trm

Loading Risk Manager Data

Oracle Budgeting & Planning Data Transformation 4-11

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Risk Manager Data Loading Processing Diagram

End

Dynamically BuildSELECT module

Start

Load Bucket Dates

Initialization

ResultBucket tbl

Validate Bucket Dates

ResultDetail tbl

Load record intoprocessing area

No

Yes

Bucket Dates OK?

Donereading selected

records?

Match or AppendNew Dimension

valuesMatch

Yes

Reportthe error

Transform data inprocessing area

Execute SELECT

Fetch a record

Yes

Move data in toFS.FIN_DATA

Do all leaf valuesexist?

Add Dimension Value

Append

No

No

Page 432: fe115trm

Loading Risk Manager Data

4-12 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Risk Manager Data Loading Processing StepsStep Description

Start

Initialization Extracts numeric SYS_ID_NUM from name of RM table specified for loading.

Load Bucket Dates Read the one record in RESULT_BUCKET table for the given SYS_ID_NUM. All 240 columns are returned in this one record: FROM_DATE_nnn and TO_DATE_nnn, where nnn = 1 to 120.

Validate Bucket Dates 1. Use buckets [from 1 until the first FROM_DATE = 1-JAN-1901 or null (1 to n)] for all further processing.

2. Verify that the FROM_DATE and TO_DATE for all n months fall on month-start/month-end boundaries.

3. Verify that all the months represented are consecutive.

4. Verify that all FS.FORECAST dimension value specified in the call to FS.LOAD_DATA have identical as_of_date.

5. Verify that the AS_OF_DATE falls just prior to the first month of RM data forecast.

6. Keep only those month buckets that have a currently existing value in the TIME dimension.

Dynamically Build SELECT

Build a SQL SELECT statement to read from the RES_DTL_XXXXX table buckets 1 through n, where n is the number of columns passing date validation in the preceding step.

Execute SELECT Retrieve the records from the RES_DTL_XXXXX table.

Done reading selected records?

Each record from the RES_DTL_XXXXXX table is processed one by one.

Fetch a record Get the record from the SELECT.

Match or Append any new dimension values

The match or append argument is specified at the time the DMR is called. If the argument given is “Match,” the DMR ignores any new dimension values (such as Chart of Accounts or Organizational unit) that it encounters in the relational database during the load. If the argument given is “Append,” the DMR adds any new dimension values that it encounters in the relational database during the load.

Data value is numeric? The data coming in is expected to be numeric. If non-numeric, an error message is printed and processing continues to the last record in the cursor ’s result set.

Finish selecting record Continue selecting records until the last record is reached.

Page 433: fe115trm

Loading Risk Manager Data

Oracle Budgeting & Planning Data Transformation 4-13

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Summary of Financial Element ProcessingBalances are divided by the CURR.UNITS value, which is stored in the FS.ENV.CAT variable in the Super Administrator personal database. By default the value is set to 1000. If the value in CURR.UNITS is zero or null, balances are divided by 1. Rates are computed by dividing the rate extension by the corresponding balance listed in the Weighting Factor column and then multiplying by 100. Two exceptions to the above calculations exist:

a. For financial elements C230 and C240, the rate extensions are divided by the sum of 210 and 212, and then multiplied by 100.

Load record into temporary location for transformation processing

Data Transformation The RES_DTL_XXXXX contains rate and balance data. Rates are stored as extensions and balances are stored as whole numbers.

In Budgeting & Planning, balances are usually stored in thousands. In other words, balances are written to the Budgeting & Planning/OFA multidimensional database after they have been divided by a deflating factor, usually 1000.

Rates are stored as whole rates.

Tier post-processing of incoming RM data performs arithmetic operations to sum data before moving it to FS.FIN_DATA or to load percentages rather than balances for specific financial elements:

1. Rates are divided by their corresponding balance and multiplied by 100 and stored as a rate. For example, C280 and C290 are divided by C250; the resulting values are then multiplied by 100. The process continues until all the rate extensions are converted to whole rates.

2. Balances are divided by the value found in the CURR.UNITS property in the FS.ENV.CAT; the seeded value is 1000. For example, C100 is divided by 1000. The process continues until all the balances are divided by the factor.

3. Financial elements C230 and C240 are multiplied by 100 and divided by the sum of C210 and C212.

4. C790 (current positive runoff balance) is set to the sum of C210 and C212.

Step Description

Page 434: fe115trm

Loading Risk Manager Data

4-14 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

b. C790 is equal to the sum of the values in C210 and C212, which is then divided by the value in CURR.UNITS.

RDBMS Leaf_Node

Weighting Factor

Resulting Financial Element Financial Element Description

60 CURR.UNITS C60 Beginning Balance

80 60 C80 Beginning Net Rate

90 60 C90 Beginning Transfer Rate

100 CURR.UNITS C100 End Balance

120 100 C120 Ending Net Rate

130 100 C130 Ending Transfer Rate

140 CURR.UNITS C140 Average Bal

160 140 C160 Average Net Rate

170 140 C170 Average Transfer Rate

180 CURR.UNITS C180 Prepay Runoff - Positive

181 CURR.UNITS C181 Timing of Prepay Runoff - Positive

190 CURR.UNITS C190 Payment Runoff - Positive

191 CURR.UNITS C191 Timing of Payment Runoff - Positive

192 CURR.UNITS C192 Payment Runoff - Negative

193 CURR.UNITS C193 Timing of Payment Runoff - Negative

195 CURR.UNITS C195 Maturity Runoff - Positive

196 CURR.UNITS C196 Timing of Maturity Runoff - Positive

210 CURR.UNITS C210 Total Runoff - Positive

211 CURR.UNITS C211 Timing of Total Runoff - Positive

212 CURR.UNITS C212 Total Runoff - Negative

213 CURR.UNITS C213 Timing of Total Runoff - Negative

230 210+212 C230 Total Runoff Net Rate

240 210+212 C240 Total Runoff Transfer Rate

250 CURR.UNITS C250 Repricing Balance

255 CURR.UNITS C255 Repricing Balance At End

280 250 C280 Before Repricing Net Rate

Page 435: fe115trm

Loading Risk Manager Data

Oracle Budgeting & Planning Data Transformation 4-15

Oracle Proprietary, Confidential Information - Use Restricted by Contract

290 255 C290 After Repricing Net Rate

300 250 C300 Before Reprice Transfer Rate

310 255 C310 After Reprice Transfer Rate

330 100 C330 Fully Indexed Net Rate

430 CURR.UNITS C430 Interest Cash Flow

437 CURR.UNITS C437 Interest Cash Flow T-Rate

440 CURR.UNITS C440 Interest Accrued

450 CURR.UNITS C450 Charge/Credit

455 CURR.UNITS C455 Non-interest Income

457 CURR.UNITS C457 Non-interest Expense

500 CURR.UNITS C500 WARM

510 515 C510 Annual Prepayment Rate

515 CURR.UNITS C515 Balance Before Prepay

520 CURR.UNITS C520 Deferred End Balance

530 CURR.UNITS C530 Deferred Average Balance

540 CURR.UNITS C540 Deferred Runoff

C210+C212 CURR.UNITS C790 Curr Pos Runoff Balance

RDBMS Leaf_Node

Weighting Factor

Resulting Financial Element Financial Element Description

Page 436: fe115trm

Loading Maturity Mix Data

4-16 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Loading Maturity Mix DataThe goal of the Maturity Mix (MX) DMR is to copy maturity mix assumptions incor-porated into a Risk Manager Maturity Strategy ID from the FDM relational data-base into the Budgeting & Planning/OFA multidimensional database and to create the required metadata.

The Maturity Auxiliary table contains maturity mix assumptions and predictions. The assumptions corresponding to loading the Maturity Strategy ID are identified in the Maturity Auxiliary table by the SYS_ID_NUM for that ID. Once loaded into Budgeting & Planning, these assumptions and predictions can be assigned to val-ues in the Chart of Accounts to set the default maturity mix assumptions.

Using the Express command window in the Oracle Express Administrator inter-face, the user issues a call to FS.LOAD_DATA to launch the process. The process creates FS.MIX_ASSUM_SET dimension values and populates the FS.MIX_DEFAULT variable with mix percent, term, and amortization term values.

RDBMS TablesThe following RDBMS tables are used for loading Maturity Mix data:

Table Name Used By Access Description

OFSA_MATURITY_AUXILIARY

FS.LD_MX read Holds maturity and amortization terms and allocation percentage data for FDM

Page 437: fe115trm

Loading Maturity Mix Data

Oracle Budgeting & Planning Data Transformation 4-17

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Maturity Mix Data Loading Processing Diagram

Dynamically BuildSELECT

Start

Maturity_Auxiliary

Load records into MixDefault cube

Execute SELECT

Fetch a record

Check For amort term

Are there morebreakouts than MixBreakout dim vals?

YesSort breakouts

descending by mixpercentage

Increase the mixpercentage value of thelast breakout to force

the sum to equal 100%

Create Mix AssumptionSet dimension value

No

More Records?

No

Yes

Page 438: fe115trm

Loading Maturity Mix Data

4-18 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Maturity Mix Data Loading Processing StepsStep Description

Dynamically Build SELECT

Build a SQL SELECT statement to return values from the OFSA_MATURITY_AUXILIARY table.

Execute SELECT Select the data from the OFSA_MATURITY_AUXILIARY table.

Read in all selected records

Records are stored in a temporary storage areas in advance of the final procession stage.

Check for an amortization term

If the Amortization Term is equal to the term to maturity, the Amortization Term mix element is left as NA. If the Amortization Term is greater than the term to maturity, the Amortization Term mix element is populated with the value from the AMORT_TERM column.

Check for more breakouts than exist in the multidimensional database.

If there are more breakouts in the relational database than there are values in the Mix Breakout dimension in the multidimensional database, Budgeting & Planning force loads all the breakouts it can. It then alters the percentage of the last breakout loaded so that the mix percentage totals 100%. Budgeting & Planning sorts the breakout from the relational database in descending order, so the breakouts that have the largest mix percentage are loaded intact. The seeded number of mix breakout values is 10.

Load record into data cube

Written to FS.MIX_DEFAULT

Page 439: fe115trm

Batch/Scheduling Tool Kit 5-1

Oracle Proprietary, Confidential Information - Use Restricted by Contract

5Batch/Scheduling Tool Kit

OFSA ConceptsThis section contains descriptions of technical concepts related to the Oracle Financial Services Applications (OFSA) suite of products. The remainder of this chapter assumes that these key concepts are understood by the reader.

OFSA Client-Server ArchitectureThe OFSA suite of products is based on the three-tier architectural design model. This design model advocates the use of two complementary perspectives of the application architecture. The first perspective is the Logical Software Layer (LSL). An LSL is a logical portion of the application that performs a defined set of functions or services. The second perspective is the Physical Software Layer (PSL). A PSL is a physical portion of the application code that implements the functions and services defined by one or more LSLs.

The OFSA suite of products is composed of three LSLs: the presentation layer, the application logic layer, and the data layer. The presentation layer is responsible for presenting information to the user and for interacting with the user. The application logic layer contains the business process logic for the products. The data layer stores and manipulates the data of the OFSA product. The LSLs for OFSA are implemented within three PSLs.

The PSL that implements the presentation layer for OFSA is the client GUI. The client GUI is located on the PC. The PSL that implements the application logic layer for OFSA is called the Oracle Financial Services (OFS) Knowledge Engine. The OFSA Knowledge Engines are portable between the Windows OS and the UNIX OS. A complete copy of the Knowledge Engines resides on both the PC and the UNIX server. The PSL that implements the data layer for OFSA is the Oracle Financial Data Manager (FDM) database.

Page 440: fe115trm

OFSA Concepts

5-2 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Level of IntegrationThe Level of Integration (LOI) is a measure of the dependency between two integrated software components. The following LOI levels are defined for OFSA.

■ OFSA Enabled

■ Shared OFSA Data

■ Extended OFSA Data Model

■ Code Sharing

OFSA EnabledThis level of integration indicates that the third-party tool or implemented solution is enabled to use the targeted OFSA components. A tool or solution at this level may have access to specific OFSA data, but it does not share the OFSA data. Additionally, this level indicates that the OFSA data model is not expanded to support the unique features within the third-party tool or implemented solution.

Shared OFSA DataThis level of integration indicates that the third-party tool or implemented solution shares data with targeted OFSA components. A third-party tool or implemented solution at this level may access or replicate information stored within the OFSA data model. Although information is shared at this level, the OFSA data model is not expanded to support the unique features within the tool or solution.

Extended OFSA Data ModelThis level of integration indicates that the OFSA data model has been extended and that the third-party tool or implemented solution shares the data with the targeted OFSA components. The modifications to the OFSA data model support the unique feature of the third-party tool or implemented solution. The sharing of data may be implemented through data access or data replication for the third-party tool or implemented solution.

Code SharingThis level of integration indicates that the software tool or of the implemented solution shares code with the targeted OFSA components or vice versa. This does not imply the data model has been expanded, but it does imply that data is shared.

Page 441: fe115trm

OFSA Concepts

Batch/Scheduling Tool Kit 5-3

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Automated ProcessingAutomated Processing is the application of automation technology to a repetitive process. A process creates a product or a deliverable in a repetitive, sustainable manner. All regular processes are composed of a series of discrete steps. The automation of the execution and control of these discrete steps is the goal of automated processing. This automation increases the productivity of owned resources and lowers the cost of processing.

The following are characteristics of automated processing systems:

■ The ability to spawn and control tasks.

■ The ability to schedule the execution of a task.

■ The ability to distribute tasks and manage parallel processing.

■ The ability to distribute the workload across the distributed nodes.

■ The ability to handle exceptions and events. The handling of events implies the ability to trigger predefined corrective actions.

■ The ability to produce system level reports and to store comprehensive audit information.

■ The ability to apply advanced diagnostic processes to the defined job flow. These advanced diagnostics include the forecasting of the completion time for the current production run and the identification of any performance road blocks. The identification is performed by a discovery process.

Process FlowThe OFSA Process Flow diagram, which follows, illustrates the generic process flow within an OFSA Knowledge Engine. The process flow includes inputs, outputs, key decision points, and major processing steps. The key decision points identify events that affect the Knowledge Engine.

Page 442: fe115trm

OFSA Concepts

5-4 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA Process Flow Diagram

No

Set Bad UsageReturn Code

YesARPI

ParametersValid

ARPI Parameters

Yes

Set ReturnCode

Yes

Set CanceledReturn CodeFinished

BeginProcessing

Signal

No

ProcessingWork

No

Exit

Page 443: fe115trm

Adapters

Batch/Scheduling Tool Kit 5-5

Oracle Proprietary, Confidential Information - Use Restricted by Contract

UNIX SignalsIn the processing flow diagram shown above, there is a decision point called Signal. This decision point checks to see if the application caught a UNIX signal. The OFSA Knowledge Engines catch the UNIX signals listed below. Generally, the signals represent a request by a user to terminate the execution of a program.

■ SIGINT

■ SIGHUP

■ SIGTERM

AdaptersThe traditional approach to integrating two software products is to define the interface between the products. The interface is an object that defines and implements interaction between two software products. Interfaces may pass data from one application to another or may directly call code of another application. The purpose of the interface is to enable communication between specific layers within each application. Although the actual layers responsible for the communication are PSLs, the examples provided in this section reference LSLs.

The recent trend is toward a component architectural model. This type of architecture requires that components be integrated to form a complete solution. The method for integrating the two software components is based on a client-server relationship. The client component requests a service from the server component. Successful delivery of this service to the client depends on the interaction between the two components. The server component is responsible for defining an interface through which the client communicates with the server. The client communicates with the server using a defined interface protocol. The client component contains an LSL that handles the communication tasks.

An Adapter is an LSL that connects the client component with the server component and encapsulates the interaction between the two. This chapter describes a set of specifications for OFSA Adapters.

Page 444: fe115trm

Adapters

5-6 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Application Request Parameter Interface Adapter SpecificationThe Application Request Parameter Interface (ARPI) Adapter specification provides information that addresses two issues. The first is a full description of how to spawn an OFSA engine. The second is a full description of how to interact with an OFSA Knowledge Engine.

The creation of this specification enables financial institutions to use automation tools with the OFSA product suite. These automation tools are the key to efficient processing. There are numerous methods for implementing efficient processing. For instance, processes may be implemented by using shell scripts, batch scheduling tools, TP monitor solutions or work flow management. Any of these solutions may spawn and interact with OFSA products using an ARPI Adapter. The only restriction to this statement is that the solution must meet the requirements of this specification.

Purpose The purpose of the ARPI Adapter is to enable a non-OFSA LSL to spawn an OFSA Knowledge Engine and to interact with the spawned OFSA Knowledge Engine.

Function The ARPI Adapter connects a non-OFSA LSL to an OFSA Knowledge Engine. The adapter transforms the IO from the non-OFSA LSL to ARPI protocol.

Level of Integration OFSA Enabled

RequirementsThis section describes the requirements that an implementation of the ARPI Adapter must meet. These requirements are written to be implementation independent. Any implementation-specific information is provided to ensure that the requirement is fully understood. However, it is not an implementation recommendation.

Although the requirements refer to the Adapter implementation, they place requirements on the entire OFSA Processing system. For more information about the OFSA Processing system, see "OFSA Concepts", in this chapter. Any component of the system, including third-party tools, must meet the minimum requirements. Each specific requirement states if it is an internal requirement for the Adapter or an external requirement for the system.

Environment Management Requirements This section identifies the type of environment support required by the OFSA Knowledge Engines.

Page 445: fe115trm

Adapters

Batch/Scheduling Tool Kit 5-7

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA Environment Management This is both an external requirement and an internal requirement. The OFSA Knowledge Engines require that specific environment variables are set. It is the responsibility of the third-party tool or the implemented solution to provide an environment management mechanism. The application environment must be set during the spawning process. It is the responsibility of the driver to identify the environment variables and to publish the values for each variable.

Output Management This is both an external requirement and an internal requirement. The OFSA Knowledge Engines generate information that is written to the standard output and to the standard error. The generated information details the current status of the process and the processing errors that have occurred. It is the responsibility of the third-party tool or the implemented solution to provide a mechanism for capturing and managing this information. It is the responsibility of the Adapter to perform two functions. First, it uses the capture mechanism provided by the output manager to capture the output. Second, it uses the registration mechanism provided by the output manager to register, with the output manager, the captured output.

Process RequirementsThis section identifies required runtime process mechanisms.

Parameter Management This is an internal requirement. The ARPI Adapter needs to collect, order, and store the ARPI parameters. The parameters need to be stored in the appropriate order and format. For more details about the OFSA parameters see "Application Request Parameter Interface" in the "Inputs to ARPI" section of this chapter.

Parameter Format Management This is an internal requirement. The OFSA parameters must be submitted to the ARPI interface in a specific format and order. The Adapter is responsible for transmitting the parameters to the OFSA Knowledge Engines in the proper format and order. For more details about the OFSA parameters, see "Application Request Parameter Interface" in the "Inputs to ARPI" section of this chapter.

SQL Query Capabilities This is both an external and an internal requirement. The OFSA Knowledge Engines require information from the OFSA Request Data Model. Specifically, the Knowledge Engines require the sequenced job number. It is the responsibility of the third-party tool or the implemented solution to provide a

Page 446: fe115trm

Adapters

5-8 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

mechanism for querying the FDM database. The driver is responsible for retrieving information using the provided query mechanism.

Spawned Process Control This is an external requirement. It is the responsibility of the third-party tool to control the spawned OFSA Knowledge Engine. The third-party tool or the implemented solution must provide a mechanism for stopping, killing, or resuming a spawned OFSA Knowledge Engine.

Security RequirementsThis section identifies the security requirements for the OFSA Knowledge Engines.

Password Security This is both an external and an internal requirement. One of the common parameters of ARPI is the database password of the user. During parameter passing, the password is neither displayed nor stored in any unsecured file.

Temporary Secured Files If a file is used for temporary parameter storage or as a parameter passing mechanism, then the file must be secured. A secured file is one that meets the following four conditions.

■ The file does not have any group permission rights nor global permission rights. This implies that only the owner of the file may read from the file or write to the file.

■ The file must be temporary and it must be stored in a secured directory.

■ The temporary file must be removed from the file system after the job is completed.

■ The owner of the temporary file is the operational and administrative user for the third-party tool or the implemented solution.

Secured Directory A secured directory is one that is owned by the operational and administrative user. All access rights should be set for the owner of the directory. No other user should have any rights to this directory.

System DesignThe design of the ARPI Adapter is related to its function and to its position within the OFSA Processing system. Its function is to connect the Process Spawn Manger to an OFSA Knowledge Engine. Its position in the OFSA Processing system is illustrated in the Information Processing Flow diagram, which follows. The ARPI Adapter interacts only with other components of the OFSA Processing system. This

Page 447: fe115trm

Adapters

Batch/Scheduling Tool Kit 5-9

Oracle Proprietary, Confidential Information - Use Restricted by Contract

figure illustrates the flow of information through this system with the major components identified.

These components are the Process Spawn Manager, the FDM database, the OFSA Knowledge Engine, the Output Manager, and the ARPI Adaptor.

Information Processing Flow Diagram

ARPI Adapter This OFSA Processing system component is the focus of this specification. This component is responsible for enabling the integration of the other four components of the processing system.

Process Spawn Manager The Process Spawn Manager is the controlling component of the OFSA Processing. This component is part of the third-party tool or the implemented solution. It performs the functions described in the Spawned Process Control requirement. For more information, see "Process Requirements" in this chapter.

OFSA Knowledge Engine This is the analytical processing component of the OFSA Processing system.

FDM Database The FDM database is the information repository for the OFSA Processing system. This component contains the OFSA ID information, detailed client information, and the data generated by the OFSA Information Factory. For more information, see both Chapter 1, "High-Level Design" and Chapter 5, "Batch/Scheduling Tool Kit".

Output Manager The Output Manager is the single point of control for user messages and error information produced by OFSA Processing system. This component is

ProcessSpawn

Manager

ARPIAdapter

OutputManager

OFSAApplication

Engine

OFSADatabase

Page 448: fe115trm

Adapters

5-10 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

part of the third-party tool or the implemented solution. It performs the functions described in the Output Management requirement. For more information, refer to "Environment Management Requirements" in this chapter.

System StructureThe structure of the ARPI Adapter is implementation independent. This implementation-independent focus requires that the ARPI Adapter subcomponents are presented in an abstract method. The ARPI Adapter is composed of the following six subcomponents:

■ Data Interface

■ Output Manager Interface

■ Security

■ OFSA Environment

■ OFSA Job Number Interface

The decomposition of the ARPI Adapter into these six subcomponents is illustrated in the following diagram.

Decomposition of ARPI Adapter

ARPI Interface

OFSAEnvironment

Data Interface

Output ManagerInterface

OFSA JobNumber Interface

Security

ARPI Adaptor

Page 449: fe115trm

Adapters

Batch/Scheduling Tool Kit 5-11

Oracle Proprietary, Confidential Information - Use Restricted by Contract

ARPI Interface Subcomponent The ARPI interface subcomponent interacts directly with an OFSA Knowledge Engine. This subcomponent is responsible for transmitting the required parameters to the Knowledge Engine. The parameters must be transmitted in a specific format and order. Additionally, the transmission mechanism must not violate any security requirements and must use an ARPI- compliant protocol. The ARPI Interface subcomponent is responsible for the transmission portion of the Parameter Management requirement.

Another subcomponent, called the Data Interface subcomponent, is responsible for the format and order portion. For specific formatting and order information, see "Application Request Parameter Interface" in the "Inputs to ARPI" section of this chapter.

Data Interface Subcomponent The Data Interface subcomponent gathers all of the parameters that will be transmitted to the OFSA Knowledge Engine. It is responsible for two actions. First, it is responsible for the formatting and ordering of the parameters. Second, it is responsible for passing the parameters to the ARPI interface subcomponent. Along with the ARPI Interface subcomponent, this component satisfies the Parameter Management requirement. The details of interactions of this component are provided in the "System Interactions" section.

Output Manager Interface Subcomponent The Output Manager Interface subcomponent handles the OFSA Knowledge Engine output. It is responsible for two actions. First, it uses the application output capture mechanism provided by the third-party tool or implemented solution. Second, it registers captured output using the provided output management mechanism. This subcomponent must satisfy the internal portion of the Output Management requirement.

OFSA Environment Subcomponent The OFSA Environment subcomponent configures the environment under which each OFSA Knowledge Engine is executed. This subcomponent is responsible for setting the values of the required environment variables. The internal potion of the OFSA Environment Management requirement is satisfied by this subcomponent.

OFSA Job Number Interface Subcomponent The OFSA Job Number Interface subcomponent retrieves the next valid OFSA Job Number from the FDM database. This subcomponent satisfies the internal portion of the SQL Querying Capabilities requirement. For more information about the OFSA Job Number, refer to the "Request Data Model" section in this chapter.

Page 450: fe115trm

Adapters

5-12 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Security Subcomponent The Security subcomponent ensures that the password security requirement is enforced. It is responsible for two actions. First, it is responsible for maintaining the security around the database password. Second, it is responsible for ensuring that the implementation method for the ARPI interface subcomponent does not violate any security requirements. The method for implementing the second responsibility must satisfy the Temporary Secured Files requirement and the Secured Directory requirement.

System InteractionsIn the "System Design" section, the flow of information through the OFSA Processing system is illustrated. This section shows and discusses the system component relationships. However, it doe not show any of the system component interactions.

The ARPI Adapter interacts with the OFSA Processing system components. These external interactions are illustrated in the ARPI External Interactions diagram. In this diagram, the ARPI Adapter component is decomposed into its subcomponents. This decomposition enables the illustration to clearly show specific, external interactions.

Because the subcomponents of the driver are sufficient for interaction identification, there is no need to decompose the other OFSA production system components.

Page 451: fe115trm

Adapters

Batch/Scheduling Tool Kit 5-13

Oracle Proprietary, Confidential Information - Use Restricted by Contract

ARPI External Interactions

Spawn Manager Interactions

The Spawn Manager is the OFSA Production System component that initiates all interactions. It initiates these interactions by spawning an OFSA Knowledge Engine. During the spawning process, it must transmit information to the OFSA Knowledge Engine through the ARPI Adapter. Specifically, it must provide the parameters defined by ARPI Parameter Standard. This topic is addressed by the Parameter Management requirement. Most of the information may be transmitted either in a secured manner or in an unsecured manner. The information transmitted

Request LSL

OutputManager

OFSADatabase

OFS Applications

ARPI Interface

OFSAEnvironment

Data Interface

Output ManagerInterface

OFSA JobNumberInterface

Security

Secu

red

Vari

abl

es

Para

mete

r F

ile

ApplicationLog File

Applic

atio

n O

utp

ut

Resp

onse

File

Env

ironm

ent

Vari

abl

es

SQL

Next JobNumber

Page 452: fe115trm

Adapters

5-14 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

securely is referred to as secured variables, and the information transmitted in an unsecured manner is referred to as unsecured variables.

■ Secured Variables

The secured variable interaction mechanism must comply with all of the security requirements defined in this specification. The Spawn Manager component is responsible for the external portion of the security requirements. This mechanism sends the secured variables to the Security subcomponent. In general, the information transmitted using this mechanism is the Common Parameter Set defined by ARPI. However, there is one exception to this rule. The OFSA Job Number is not transmitted to the Adapter. The database password is the only parameter that must use a secured transmission mechanism. The other Common Parameter Set information may use the unsecured variables transmission mechanism.

■ Unsecured Variables

The unsecured variable interaction mechanism does not meet any security requirements. It is used to transmit the ARPI Application Parameter Set information to the ARPI Adapter. This information is often echoed to the screen or into a log file. The output of the unsecured variable mechanism is input for the Data Interface subcomponent.

FDM database Interactions The FDM database is the OFSA Processing system component that contains the OFSA solution data. Interactions that retrieve information occur between the ARPI Adapter and the FDM database. The information stored in the Request Data Model of the FDM database is the only information accessed during this interaction. The Request Data Model contains status and configuration information for the OFSA Knowledge Engines. Specifically, the OFSA Knowledge Engines require an OFSA Job Number value.

■ OFSA Job Number Lookup

The OFSA Job Number is retrieved from the database by one of the subcomponents of the ARPI Adapter. The OFSA Job Number Interface subcomponent uses SQL to retrieve this value. The SQL statement should query the database to obtain the sequenced job number. See the "Request Data Model" section in this chapter for additional information.

Page 453: fe115trm

Adapters

Batch/Scheduling Tool Kit 5-15

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA Knowledge Engine Interactions

Configuration The UNIX environment must be properly configured for the OFSA products. For complete information on the OFSA environment requirements, see the Oracle Financial Services Installation and Configuration Guide.

Inputs to ARPI

Application Request Parameter Interface The OFSA server Knowledge Engines interact with the environment through the ARPI. The ARPI contains both an interactive user interface and a non-interactive user interface. This portion of the specification only addresses the non-interactive interface. Any information received from a terminal is ignored by the non-interactive interface.

Purpose The purpose of the ARPI is to define a standard parameter passing method for OFSA Knowledge Engines.

ARPI Command-line Method All of the ARPI parameter passing examples in this section use the ARPI command-line method. For the ARPI command-line method, the following statements are true.

■ The OFSA product is executed at the command-line.

■ The ARPI parameters are stored in a response file.

■ The response file is redirected to the stdin of the OFSA Knowledge Engine.

The following example illustrates the ARPI command-line method:

bcw < response

where:

’bcw’ is the Balance & Control server Knowledge Engine and ’response’ is the response file. As is typical with most UNIX programs, the OFSA Knowledge Engines read their input from the “stdin”.

ARPI Protocol Definition The ARPI interface requires that the parameters be transmitted in a precise order and format.

Page 454: fe115trm

Adapters

5-16 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Product-Specific Parameter InterfacesThis section describes parameter ordering and formatting for the following OFSA products:

■ Balance & Control

■ Performance Analyzer

■ Risk Manager

■ Transfer Pricing

Balance & Control, Risk Manager and Transfer Pricing Parameter InterfacesThe Balance & Control, Risk Manager, and Transfer Pricing Knowledge Engines use the same parameter set. The parameters for these three Knowledge Engines are stored in the response file in the following order:

JobNumDBAliasUserPasswordProcIDConfigID

The following table provides detailed information on the parameters for Balance & Control, Risk Manager, and Transfer Pricing.

Note: The order requirements differ among OFSA products. The format of the parameters is the same for each OFSA product and each parameter is terminated by a newline character (\n).

Parameter Type Size Description

JobNum numeric short The job or task identification used by OFSA. The job number is a sequenced number that must be retrieved from the FDM database.

DBAlias character array The alias for the FDM database to which the OFSA Knowledge Engine connects.

Page 455: fe115trm

Adapters

Batch/Scheduling Tool Kit 5-17

Oracle Proprietary, Confidential Information - Use Restricted by Contract

The ProcID parameter and the ConfigID parameter provide both integer values and character string values. This is explained in detail below.

Oracle Balance & Control ARPI Examples Examples of parameter settings for Balance & Control are discussed in this section. These example apply to Risk Manager and Transfer Pricing, as well.

Example of a Balance & Control ARPI Correctly Ordered and Formatted The response file shown below passes the parameter validation step shown in the OFSA Process Flow diagram in this chapter.

Response file:

100\r\nTest\r\nAdmin\r\nAd125min\r\n25765\r\n25766\r\n

where:

JobNum = 100DBAlias = "Test"User = "Admin"Password = “Ad125min”ProcID = 25765ConfigID = 25766

User character array The database user account used by the OFSA Knowledge Engine. The user account is used to attach to the FDM database identified by the DBAlias parameter.

Password character array The password for the user account identified by the User parameter.

ProcID numeric / character

integer / array

The OFSA Processing ID for the specific OFSA Knowledge Engine being executed.

ConfigID numeric / character

integer / array

The OFSA Configuration ID for the OFSA Processing ID identified by the ProcID parameter.

Parameter Type Size Description

Page 456: fe115trm

Adapters

5-18 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Example of a Balance & Control ARPI Incorrectly Formatted The response file shown below fails the parameter validation step shown in the OFSA Process Flow diagram. The failure occurs because there is no \n character between the DBAlias parameter “Test” and the User parameter “Admin”. After the failure occurs, the return code is set to reflect a Bad Usage error. This failure causes the application to terminate.

Response file:

100\r\nTest Admin\r\nAd125min\r\n25765\r\n25766\r\n

where:

JobNum = 100DBAlias = "Test"User = "Admin"Password = "Ad125min"ProcID = 25765ConfigID = 25766

Example of a Balance & Control ARPI Incorrectly Ordered The response file shown below fails the parameter validation step shown in the Information Processing Flow diagram, in this chapter. The failure occurs because the parameters are in the wrong order. The order discrepancy is shown in the table below. After the failure occurs, the return code is set to reflect a Bad Usage error. This causes an application to terminate.

Response file:

Admin\r\n100\r\nAd125min\r\n25766\r\nTest\r\n25765\r\n

Page 457: fe115trm

Adapters

Batch/Scheduling Tool Kit 5-19

Oracle Proprietary, Confidential Information - Use Restricted by Contract

where:

Performance AnalyzerJobNum = 100DBAlias = "Test"User = "Admin"Password = "Ad125min"ProcID = 25765ConfigID = 25766

The following table shows the ordering of parameters for a failed response file and the correct ordering.

Oracle Performance Analyzer ARPI Example Using the ARPI Command-lineThe following examples are for Performance Analyzer and show the use of the ARPI command-line method:

prw < response

where:

"prw" is the Performance Analyzer server Knowledge Engine and "response" is the response file. The parameters are stored in the response file in this order.

Failed Response File Order Correct Order

User JobNum

JobNum DBAlias

Password User

ProcID Password

DBAlias ProcID

ConfigID ConfigID

Page 458: fe115trm

Adapters

5-20 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Example of the Oracle Performance Analyzer Parameter Interface The parameters in the response file below are the parameter set for Performance Analyzer. The parameters for Performance Analyzer are stored in the response file in the following order:

JobNumDBAliasUserPasswordProcIDIDTypeAsOfDatePreview

The following table shows the ARPI parameters for Performance Analyzer.

Example of a Performance Analyzer ARPI Correctly Ordered and Formatted The response file shown below passes the parameter validation step shown in the Process Flow diagram.

Parameter Type Size Description

JobNum numeric short The job or task identification used by the OFSA Suite. The job number is a sequenced number that must be retrieved from the FDM database.

DBAlias character array The alias for the FDM database to which the OFSA Knowledge Engine connects.

User character array The database user account used by the OFSA Knowledge Engine. The user account is used to attach to the FDM database identified by DBAlias.

Password character array The password for the user account identified by User.

ProcID numeric /character

integer / array

The OFSA processing ID for the specific OFSA Knowledge Engine being executed.

IDType numeric short An identifier that differentiates between Performance Analyzer processing ID types. Currently, this parameter is always set to 0.

AsOfDate date date The date that identifies the month that is processed

Preview numeric short Used by the GUI/Knowledge Engine interface of the client software. This parameter should always be set to 0.

Page 459: fe115trm

Adapters

Batch/Scheduling Tool Kit 5-21

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Response file:

100\r\nTest\r\nAdmin\r\nAd125min\r\n39115\r\n0\r\n‘05/25/97’\r\n0\r\n

where:

JobNum = 100DBAlias = "Test"User = "Admin"Password = "Ad125min"ProcID = 39115IDType = 0AsOfDate = "05/25/97"Preview = 0

Additional Parameter InformationThis section presents additional information regarding ARPI parameters.

Multiple Type Enabled Parameters Most of the ARPI parameters accept only one type of value. For instance, the ’JobNum’ parameter accepts only numeric values of short size. However, there are two parameters that are exceptions to this generalization: the ’ProcID’ parameter and the ’ConfigID’ parameter. These parameters accept two both numeric and character value types. The numeric value that is accepted is the System ID Number, and the character value that is accepted is the ID Name. For more information on a System ID Number or an ID Name, see the "Physical Data Models" section in this chapter.

System ID Number Value The System ID Number is the most accurate method for identifying an OFSA ID. The System ID Number is the value of the SYS_ID_NUM column in the FDM database.

ID Name Value The ID Name is a useful method for identifying an OFSA ID. The ID Name is the value of the ID_DESC_SHORT column in the FDM database.

Sometimes it may be preferable to use the ID Name to identify an OFSA ID. However, the ID name is not guaranteed to be unique. ARPI provides a method for

Page 460: fe115trm

Adapters

5-22 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

differentiating between two identical ID Names. This method specifies the group name of the ID in question. When using this identification method, the group name is appended to the ID name. A period separates the group name and the ID name.

The following is an example:

MONTHLY.<OFSA>

where:

MONTHLY is the name of the ID and <OFSA> is the name of the group. When no group is specified, the group defaults to <ALL>.

Example of an ID Name The response file shown below passes the parameter validation step shown in the OFSA Process Flow diagram in this chapter. It uses an ID Name identification for the ProcID and ConfigID parameters

Response file:

100\r\nTest\r\nAdmin\r\nAd125min\r\nMONTHLY.<OFSA>\r\nNY.<OFSA>\r\n

where:

JobNum=100DBAlias=“Test”User=“Admin”Password=Ad125min”ProcID=“MONTHLY.<OFSA>”ConfigID=“NY.<OFSA>”

Page 461: fe115trm

Adapters

Batch/Scheduling Tool Kit 5-23

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Outputs from ARPIThe OFSA Knowledge Engines send all messages and errors to the standard output.

Error Conditions The following headings describe the types of errors that may occur. OFSA errors are documented in detail. For all other types of errors, you are referred to the appropriate documentation.

Server Application Return Codes The following table defines the OFSA server-side application return codes.

Error Type Description

Middleware Errors Many of the errors the OFSA generates are actually generated by the middleware. Oracle Database errors are an example of middleware errors. If an Oracle Database error occurs, refer to the Oracle Database documentation.

OFSA Application Errors This section describes errors that occur within the OFSA suite of products.

Return Code Return Type Description

0 Normal The application completed its execution successfully.

1 Internal Error An internal error occurred in the application. This is an OFSA suite-specific error.

2 Bad Usage The arguments passed to the application were incorrect.

3 Session Failure The application was unable to attach to an additional session.

4 Cancelled The application process was cancelled by the user.

5 Failed to Execute The Oracle Request Queue was unable to fork off the child application.

6 Bad Connect The application failed to connect to the DBMS system.

7 Memory Fault The application was unable to allocate additional memory.

Page 462: fe115trm

Adapters

5-24 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Required Action Return Codes Of the return codes listed above, these return codes may require handling by the ARPI Adapter. These return codes may indicate an error in the adapter code or a data entry error by a user.

Bad Usage A ’Bad Usage’ return code (Return Code 2 in the preceding table) indicates the parameters passed to the OFSA Knowledge Engine were not properly formatted. A ’Bad Usage’ return code is the result of an adapter formatting error or a data entry error by a user. For information on the correct parameter format, refer to the "Application Request Parameter Interface Adapter Specification" section in this chapter.

Cancelled A ’Cancelled’ return code (Return Code 4 in the preceding table) indicates that the application process was terminated by the user. A ’Cancelled’ return code is the result of a UNIX signal. For more information about how OFSA products handle UNIX signals, refer to the "Process Flow" section in the chapter.

Output Manager InteractionsThe Output Manager is the system component that controls how the registered output is presented. The manner in which the registered output is presented is dependent on the implementation. However the following list contains some standard presentation mechanisms:

■ File viewer

■ Printer

■ Stored copy

Registered Application Output Before the output can be handled by the Output Manager system component, it must be registered. The registration process may vary between different implementations of the Output Manager system component. The Output Manager Interface subcomponent must invoke the defined registration mechanism.

8 Rights Violation The user did not have the appropriate rights to execute this application.

9 Version Mismatch An internal error occurred in the application.

Return Code Return Type Description

Page 463: fe115trm

Adapters

Batch/Scheduling Tool Kit 5-25

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Internal InteractionsWithin the ARPI Adapter, there are internal interactions between some of the its subcomponents. These internal interactions perform the consolidation of the information obtained through the external interactions. Figure , "ARPI Adapter Internal Interactions" illustrates these internal interactions. The illustration shows that the interactions are all related to the Data Interface subcomponent.

ARPI Adapter Internal Interactions

Data Interface InteractionsThe Data Interface subcomponent gathers and organizes the parameter-related information. This subcomponent interacts with the external system and with the other adapter subcomponents. The method for transmitting the information internally depends on the specific implementation.

OFSA JobNumber Interface

ARPI Interface

OFSAEnvironment

Data Interface

Output ManagerInterface

Security

Secure Variables

OFSA JobNumber

Pre

pare

d P

aram

eter

s

Page 464: fe115trm

Physical Data Models

5-26 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Secured Variables The Security subcomponent owns the secured variables once the variables are received by the ARPI Adapter. The secured variable information is replicated by the Security subcomponent. The replicated information is passed to the Data Interface subcomponent. The Data Interface subcomponent reformats the secured variables upon reception and places the variables in the appropriate order.

OFSA Job Number The OFSA Job Number Interface subcomponent owns the OFSA job number. This subcomponent transmits the OFSA job number to the Data Interface subcomponent.

Prepared Parameters After all of the parameter information is received by the Data Interface subcomponent. It performs two actions. First, it reformats the parameters and orders the parameters. Second, it transmits these prepared parameters to the ARPI interface subcomponent.

Physical Data ModelsThe information in this section provides supporting information for the material presented in this chapter. They are intended to provide the user with the information needed to implement Adapters. The models of this section are small segments of the Physical Data Model; they are not intended to describe the database.

Process Data ModelThe information common to all IDs is stored in the OFSA_CATALOG_OF_IDS table. The ARPI uses information stored in the following four columns of the OFSA_CATALOG_OF_IDS table:

■ SYS_ID_NUM

■ ID_DESC_SHORT

■ ID_TYPE

■ FOLDER_NAME

Each of these columns is described below.

Page 465: fe115trm

Physical Data Models

Batch/Scheduling Tool Kit 5-27

Oracle Proprietary, Confidential Information - Use Restricted by Contract

SYS_ID_NUMThe SYS_ID_NUM column is the primary key for the OFSA_CATALOG_OF_IDS table. The values stored in the SYS_ID_NUM column uniquely identify an ID. ARPI requires that two types of IDs be identified: the Processing ID and the Configuration ID. Both types are usually transmitted to ARPI using a System ID Number format. A System ID Number is the value of the SYS_ID_NUM column that corresponds to the specified ID. Using the System ID Number is the only method guaranteed to uniquely identify the specified ID.

ID_DESC_SHORTThe ID_DESC_SHORT column is the short character column. The values stored in this column are the names of the individual IDs. Because ARPI accepts either the System ID Number or the name of the ID, the ID_DESC_SHORT column may be used to identify the Processing ID and the Configuration ID. Although the System ID Number is the only guaranteed unique identifier, there is a method for differentiating IDs with identical values in the ID_DESC_SHORT column. The combination of the ID_DESC_SHORT column and the FOLDER_NAME column should be unique; however, there may be duplication.

ID_TYPEThe ID_TYPE column identifies the type of ID to which the record applies. The value in this column is used to determine the validity of the parameter passed to ARPI. The validity check applies to both a System ID Number value or the ID name value. The ID_TYPE value also differentiates between the different types of Processing IDs.

Note: The OFSA products assume that the combination of ID_DESC_SHORT, ID_TYPE, and FOLDER_NAME is unique. However, the database does not include nor enforce this relationship, therefore duplication may occur.

The true unique identifier for IDs is found in the SYS_ID_NUM column of the OFSA_CATALOG_OF_IDS table. This is described in the SYS_ID_NUM section, which follows.

Page 466: fe115trm

Physical Data Models

5-28 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

FOLDER_NAMEThe FOLDER_NAME column controls permission rights to the ID information. The information stored in this column is used for ID security and identification. The OFSA products use the FOLDER_NAME column to differentiate between two IDs with identical names and types.

Request Data ModelThe Request Data Model stores information about OFSA processing tasks initiated on a server. The tables are used by the Oracle Request Queue to control the OFSA Knowledge Engines and to track the status of the processing.

Page 467: fe115trm

Physical Data Models

Batch/Scheduling Tool Kit 5-29

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Shown below are the columns of the OFSA_REQUEST_QUEUE table and this table’s relationship to the REQUEST_QUEUE_SEQ sequence and the OFSA_RESULT_QUEUE table.

JOB_NUMThe value of the JOB_NUM column uniquely identifies an OFSA processing task. This value is used by the OFSA products to track status updates and label application output. To ensure that the identifier is unique, the value for the JOB_NUM column is generated by an Oracle sequence. The OFSA Job Number Interface subcomponent of the ARPI Adapter queries this sequence to obtain the next unique value. This query should select OFSA_REQUEST_QUEUE_SEQ.NEXTVAL to obtain the unique identifier. This query is shown below:

select ofsa_request_queue_seq.nextval from dual;

END_TIME

TERRITORY

JOB_NUMLOGIN_NAMESTATUSPROCESS_IDRETURN_CODEPRIORITYAPPLICATIONSERVICE_REQUESTREQUEST_DATEREQUEST_TIMESCHEDULE_DATESCHEDULE_TIMEAPP_ARGUMENTSHOST_NAMEEND_DATE

LANGUAGE

OFSA_REQUEST_QUEUE

JOB_NUMRESULT_TYPERESULT_MESSSAGE

OFSA_RESULT_QUEUE

OFSA_REQUEST_QUEUE_SEQ

Page 468: fe115trm

Physical Data Models

5-30 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Page 469: fe115trm

Boundaries and Limitations 6-1

Oracle Proprietary, Confidential Information - Use Restricted by Contract

6Boundaries and Limitations

This chapter lists boundaries and limitations imposed on the database, interface and processing routines of the Oracle Financial Services Applications (OFSA) product suite. This list includes specific OFSA products, where limitations are applicable, as well as report, common dialog and configuration considerations for the database.

Oracle Balance & ControlOne limitation is applicable to this product.

Correction RulesBulk mode cannot be used when, within a single Correction ID, the column to which assignments are made differs between nodes.

Oracle Budgeting & PlanningThe following limitations are applicable to this product.

Product TreeProduct trees (chart of account trees) can fully display the name of the product only when the quantity is less than 2,000. For charts of accounts greater than 2,000, the name is truncated to 24 characters.

The add-in does not truncate product names.

Organizational Unit TreeThe maximum number of organizational units in any one tree is 16,000. When expanding and collapsing the organizational tree in the outline control, only 200

Page 470: fe115trm

Common Dialogs

6-2 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

values can be displayed at any one time. In order to display more organizational units, other units need to be collapsed(hidden).

The default number of units allowed in the outline control is 250. However, you can increase this with an.INI setting. The upper limit depends on the length of the strings describing the business units.

Currency ValuesThe largest value that can be input for a single balance sheet amount is 99,999,999. This represents 99,999,999,999 (1 less than 100 billion) in thousands.

The largest value that can be input for a single income item is 9,999,999.999. This represents 9,999,999,999.999 (.001 less than 10 billion) in thousands.

Consolidation/Elimination LimitsOnly 254 accounts can be eliminated from any given consolidation.

Time PeriodsThere is a maximum of 120 time periods in Oracle Budgeting & Planning. Of these time periods no more than 71 can be historical time periods and no more than 60 can be forecast time periods.

Balances and SpreadsYou can view history for the current year only. When forecasting the first month of the year, no history is visible in this interface.

Fiscal YearBudgeting & Planning recognizes only a 12 month fiscal period.

Common DialogsThe following limitations are applicable to these common dialogs.

Tree RollupIn the right pane of the tree rollup display, only the first 6,528 nodes are displayed. This limitation is imposed by the Windows control.

Node values within a Tree Rollup ID cannot exceed 14 characters.

The maximum number of levels in a Tree Rollup ID is 14.

Page 471: fe115trm

Database Configuration

Boundaries and Limitations 6-3

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Transformation IDThe ’Transform into’ table name has a limit of 26 characters.

SQL TalkWithin the SQL Talk interface, you can request a maximum of 255 columns.

A maximum of 16,000 rows are fetched from the database for any single query. This may be further limited by the size of the rows returned (the longer the rows, the fewer rows that can be selected).

Data Filter IDA maximum of 60 values or ranges can be entered for each column in a Data Filter ID.

Formula IDThe maximum length of a formula is 128 characters. This limitation should be considered within the Report ID as well as the Formula ID. In a Formula ID, a component of the formula can be parameterized and defined later, when it is used within a Report ID. Because the definition of the parameter may increase the total number of characters in the formula, the complete formula may be longer than 128 characters.

Request QueueRequest Queue supports a maximum of 2147483647 jobs.

Database ConfigurationThe following limitations are applicable to the configuration of the OFSA database.

Users and GroupsUser names and User Group names have a maximum of 15 characters.

OFSA ID NamesThe maximum number of characters in a short description name is 15, and in a long description name is 60.

Page 472: fe115trm

Database Configuration

6-4 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Number of IDsThe maximum ID number in the system is 9,999,999,999. The maximum number of IDs for each ID type is 16,000.

SQL Statements in All ProcessesSQL statements within processes are limited to a maximum length of 65,535 characters.

Instrument Table ID NumbersID numbers can have a maximum length of 25 digits.

User Interface Display of DatesAll dates displayed in user interfaces have an input and display range of 01/01/1901 to 12/31/2499.

Leaf Set UpLeaf values can have a maximum of 14 digits.

Only 15 leaf types are allowed in the database. Examples of leaf types are Common COA ID, Organizational Unit ID, Performance Analyzer (PA) COA ID and Transfer Pricing (TP) COA ID.

BalancesBalances stored in Instrument tables are limited to 999,999,999,999.99. Balances stored in the LEDGER_STAT table are limited to 99,999,999,999.9999.

The maximum precision for a balance used in a calculation process is 15 digits, with the range of 1.7e-308 to 1.7e+308. Calculation precision on larger numbers is compromised.

RatesBy default, rates stored in instrument tables are limited to 999.9999 and -999.9999. More precision can be achieved by increasing the number of decimals in the column. Internally, rates are stored with the same precision as balances.

Terms and FrequenciesThe maximum size of a term used within any process, including Balance & Control, Risk Manager and Transfer Pricing is 32,767, although interface limits are imposed

Page 473: fe115trm

Reporting

Boundaries and Limitations 6-5

Oracle Proprietary, Confidential Information - Use Restricted by Contract

to restrict this number to 999 when entered through a dialog. Terms affected by this restriction include payment frequency, reprice frequency, original term, amortization term, negative amortization frequency and payment change frequency.

Oracle Performance AnalyzerThe following limitations pertain to this product.

Allocation IDThere is a maximum of 16,535 rows per page of an allocation and a maximum of 32,767 pages.

Table IDTable IDs are limited to five tiers through the user interface. The Table ID definition is limited to three leaf tiers, one helper leaf tier, and one target leaf tier.

ReportingThe following limitations are applicable to reports.

Stratification IDOn stratifications by range, there is a maximum of 60 ranges.

With low levels of available memory, stratification reports may not complete successfully. The current limits affect reports that generate many levels of stratifying buckets along with a lengthy report. This scenario eventually uses all of the available memory and results in the system’s inability to finish the report.

Report IDA maximum of 255 cells is allowed in a given report template page.

Cell positioning is rounded to device coordinates at runtime, so exact cell positioning is not guaranteed. The rounding is very small in comparison to normal cell positioning.

Note: System memory limits may reduce this number.

Page 474: fe115trm

Oracle Risk Manager

6-6 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Picture cells are limited to bitmap files (.bmp) only and must reside either on a network drive or on every machine that requires the file.

There is a maximum of 8 digits for parameters in Reports.

Standard Risk Manager ReportsDue to the complexity of the SQL statements generated in Forecast Stratification reports and Forecast Financial reports, content is limited by the environment in which they are processed. Particularly complex reports, such as the Detail Cash Flow report, are limited in the number of modeling buckets that can be displayed on any single report to ten or less.

To reduce the complexity of the report and thereby increase the number of modeling buckets reported, reduce the number of financial element formula cells.

Oracle Risk ManagerThe following limitations are applicable to this product.

Modeling BucketsThere is a maximum of 120 modeling buckets available for processing. There is no limit on the modeling horizon. However, the interface display of dates within the Configuration ID is limited to dates less than or equal to 12/31/2499.

Because the Risk Manager simulation engine uses the frequency of the modeling bucket, as expressed in units and multipliers, this interface restriction does not impact the calculations nor the output into the result tables. To model periods extending beyond the year 2499, enter bucket frequencies as needed. Although dates beyond the year 2499 do not appear in the interface, the calculation engine can properly handle them.

Dynamic BucketsThere is a maximum of 120 GAP buckets and no limit to the number of dynamic start dates. The GAP bucket display of dates is restricted, as with the modeling buckets, to dates less than or equal to 12/31/2499. As described in the modeling bucket section, this restriction does not impact the calculation nor the output of dynamic results.

Leaf Characteristics IDThe valid range for Option Adjusted Spread is between 5.000 and -5.000.

Page 475: fe115trm

Oracle Risk Manager

Boundaries and Limitations 6-7

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Transaction Strategies IDThe maximum balance or deferred balance within a single entry in the Transaction Strategies ID is 9,999,999,999. To create transactions with larger values, create multiple entries in this interface.

The maximum origination date that can be entered is 12/31/2499.

Terms and frequencies are restricted to a maximum value of 999.

Rate Index IDThere is a maximum of eight components to the Rate Index formula per Interest Rate Code (IRC) and term.

Term Structure IDValid values for mean reversion are between .00001 and 1.00000.

Valid values for volatility are between 0.000001 and 9.999999.

When using the Extended Vasicek method, combinations of high volatility with low speed of mean reversion may cause unreasonable results.

ProcessingWhen a process generates a balance value larger than 999,999,999,999.99, the database cannot support the value and a numeric overflow occurs.

This may be caused by large buckets in combination with large balance amounts per product leaf and short terms. For example, a large balance that matures monthly in a multi-year modeling bucket may overflow the results of the total runoff timing financial element.

Formula Leaves IDLeafs larger than 10 digits are restricted from input into a function that has leaf as a parameter. To input leaves with more integers into these functions, use the decimal. For example, 1234567890123 should be entered as 1234567890.123.

Formulas within the Formula Leaf ID can have a maximum of 1,024 characters.

There is maximum of 999 coefficients within the Formula Leaves ID.

Forecast Balance IDThe maximum balance that can be entered into a Forecast Balance ID is 999,999,999,999.98

Page 476: fe115trm

Oracle Transfer Pricing

6-8 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Forecast Rates IDThere is a maximum of nine scenarios within a single Forecast Rates ID.

Prepayment Table IDThere is a maximum of three dimensions per Prepayment Table ID.

Prepayment IDThere is a maximum of 100 origination date ranges per product within a Prepayment ID. The maximum origination date that can be entered through the interface is 12/31/2499.

User-defined PatternsThe valid range for user-defined pattern codes is 1000-29999.

Cash Flow CalculationsThe maximum number of events that can be modeled for a single instrument within the Cash Flow Knowledge Engine is 16,400.

Monte Carlo ProcessingThere is a maximum of 2,000 rate paths.

The Value at Risk (VaR) Term has a maximum of 10 years.

Oracle Transfer Pricing

Prepayment IDThere is a maximum of 100 origination date ranges per product within a Prepayment ID.

The maximum origination date that can be entered through the interface is 12/31/2499.

Prepayment Table IDThere is a maximum of three dimensions per Prepayment Table ID.

User-defined PatternsThe valid range for user-defined pattern codes is 1000-29999.

Page 477: fe115trm

Oracle Transfer Pricing

Boundaries and Limitations 6-9

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Cash Flow GenerationThe maximum number of events that can be modeled for a single instrument within the Cash Flow Knowledge Engine is 16,400.

Transfer Pricing CalculationsWhen processing on the client there is a maximum of 16,400 date/term combinations that can be loaded into memory for processing.

There is a maximum size of transfer rate and matched spread of 9999.9999. If a transfer rate or matched spread larger than this value is inserted into an instrument table, an error, “value too large for column” or “numeric overflow,” occurs.

Page 478: fe115trm

Oracle Transfer Pricing

6-10 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Page 479: fe115trm

Consolidation of Results 7-1

Oracle Proprietary, Confidential Information - Use Restricted by Contract

7Consolidation of Results

This Consolidation of Results feature enables the user to combine the results set from multiprocessing runs. This chapter contains the following sections, which describe how to merge multiple Oracle Risk Manager processing IDs:

■ Check the Processing IDs

■ Create a New Processing ID for Your Consolidated Results

■ Two Approaches to Consolidating Results

■ Columns in the Result Detail Table

■ Result_Master Table (Market Value Results)

Page 480: fe115trm

Check the Processing IDs

7-2 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Check the Processing IDsConfirm that the results were generated with identical assumptions for the following:

■ Modeling Date Buckets

■ Dynamic Gap Date Buckets and Start Dates

■ Gap Profiles (were gap profiles generated on all processing runs?)

■ Market Value Start Dates

■ Market Valuation (were market values performed on all processing runs?)

■ Multiple Modeling Rates (Model with Transfer rates

■ Auto-Balancing (was auto-balancing performed in each processing run?)

■ All assumption IDs are the same (Optional: see “Pre-Populate the Supporting Result Files”).

If any of these assumptions are not consistent (with the possible exception of Assumption IDs) your consolidated results are not valid.

Create a New Processing ID for Your Consolidated ResultsIn order to be able to report off your consolidated results, you must create a Risk Manager Processing ID for your consolidated results. Remember that you cannot consolidate multiple Risk Manager processing IDs through the OFSA interface. This step merely enables you to report off your consolidated results using OFSA’s reporting interface.

Pre-Populate the Supporting Result FilesThere are four tables that get updated with the results of a Risk Manager processing run. Two of them do not hold actual results, but rather the supporting information necessary to report off a processing run:

■ OFSA_Result_Bucket: The Result_Bucket table is updated with all of the date bucket header information (that is start and end dates for all date buckets). This table is accessed in all date related reports.

■ OFSA_Result_Header: The Result_Header table is updated with the names of all Assumptions IDs that make up the processing run. The ID names can also be accessed when generating reports.

Page 481: fe115trm

Create a New Processing ID for Your Consolidated Results

Consolidation of Results 7-3

Oracle Proprietary, Confidential Information - Use Restricted by Contract

To populate these tables for your Consolidated Results Processing ID, you can set up a process with a single record and run it. The result is that both Result_Bucket and Result_Header are populated as well as the results in Result_Master and Res_Dtl_<Sys_ID_Num>. The results in Result_Master and Res_Dtl_<Sys_ID_Num> are not accurate and must be replaced in Step 4. Consolidate Results Data.

The ID names that you used in your processing IDs may or may not have been consistent. They are used only for reporting purposes. You have the option to report the name of each assumption ID in the header section of your reports. If you used separate Pricing Margin assumption IDs for two processing IDs that you want to consolidate, for example, you can select one of them in this step. Then, remember to remove the Pricing Margin ID from the header section of the report so that it is not misleading.

Consolidate Results DataResults in Risk Manager get stored in four tables:

■ Detail Results Tables: RES_DTL_<Sys_ID_Num> and Cons_Dtl_<Sys_ID_Num>. This contains cash flow and gap results for an individual Risk Manager processing ID.

■ RESULT_MASTER and OFSA_CONSOLIDATED_MASTER: This contains market value results for all processing IDs.

Detail Results Tables (Cash Flow and Gap Results)Any Risk Manager processing run has an associated table for the storage of detailed results. A few key characteristics of this table that are important to understand when consolidating results:

■ There are 120 columns used to stored forecast information BUCKET_001... BUCKET_120

■ The meaning in any of the BUCKET columns is determined by the key columns (as listed below). In other words, the same column is used to store any type of financial information - you must interpret the key columns to determine what the value represents.

■ All information can be consolidated by simply summing up the Bucket columns. The numbers are stored so that for weighted average purposes you need only to sum up the values and group by the relevant key columns.

Page 482: fe115trm

Two Approaches to Consolidating Results

7-4 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Two Approaches to Consolidating ResultsThere are two approaches you can take to consolidating results:

■ Physically consolidate the data into the existing Result Detail table

If you want to physically update the Res_Dtl_<Sys_ID_Num> table, remember to delete all of the data that exists in the table (if any) from Step 3. Pre-Populate the Supporting Result Files.

■ Drop the existing Result Detail table and replace this with a database view

An alternative to physically inserting the consolidated data into the Res_Dtl_<Sys_ID_Num> table is to drop the physical Res_Dtl_<Sys_ID_Num> table and create a Database View with the identical name. Advantages to this approach are: a view saves disk space, and always reflects the latest underlying results. If you want to store the consolidated results, but not the underlying detail, however, you must store the consolidated results in a physical table.

Sample SQL: View ApproachCREATE VIEW RES_DTL_101 AS SELECT * FROM RES_DTL_1 UNIONSELECT * FROM RES_DTL_2

This approach merely appends the results from both underlying results set. This is acceptable because all reports sum records with the same key values together.

An easy way to consolidate the results is to append the records from both underlying results set into the consolidated results set. This does not violate the unique key because the Sys_ID_Num from both underlying results is different. The OFSA Reports sums all records with the same key values together.

Note: If Database Administrators create a view, you must grant access to that view to the appropriate users.

Note: After creating a consolidated results table, you must register it through FDM Administration before you can use it for reporting or any OFSA related activity.

Make sure to use the table classification RM Detail Results (140).

Page 483: fe115trm

Columns in the Result Detail Table

Consolidation of Results 7-5

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Columns in the Result Detail TableThere are three categories of columns in the Result Detail table:

■ Key Columns: Always include these columns in your group-by statement

■ Result Columns: These columns should always be summed

■ Other Columns: These columns are irrelevant to the results, but must be included in the consolidation table or view for reporting to function properly.

If you want to use a more efficient method for physically consolidating data, create a SQL statement that groups by the Key Columns, sums the Result Columns, and Plugs the Other Columns. This approach saves space over the simple approach of appending the results from all detailed Processing IDs.

Result Detail: Key Columns (Group-By)

Column Description

Risk Manager Product Leaf

Your Risk Manager product (or Chart of Accounts) leaf as specified in the Configuration ID.

Common Chart of Account Leaf

Your Common Chart of Account Leaf - see Leaf Setup

Org Unit Leaf If results are consolidated to the corporate level, this may be irrelevant.

ISO_Currency_Code Currency in which results are held.

Financial_Elem_ID The leaf that gives meaning to the row of data in the table - for example, are the numbers in bucket_001-bucket_120 referring to ending balance, ending rate, average balance, and so on.

Scenario_Num Results are stored by scenario number (1-9).

Start_Date_Index Start Date 0 = Cash Flow Information and >= 1 are used for Gap Start Dates.

Sys_ID_Num Although this is a key column in the table - for reporting purposes it is ignored because the assumption is that all results are from the same processing ID - and therefore the same Sys_ID_Num. Plug with the value from the Consolidation Processing ID.

Result-Type Code Code describing the source of the record, current position, new business, or formula leaves. This column may be omitted in the group by statement if you do not want to maintain this distinction in your consolidated results.

Page 484: fe115trm

Result_Master Table (Market Value Results)

7-6 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Result Detail: Result Columns (Sum): BUCKET_001 ... BUCKET_002

Result Detail: Other Columns (Plug - But do not omit)

Result_Master Table (Market Value Results)The market value results in the result_master table must be manually consolidated via a SQL statement. As with the Detail Results table, the columns in the Result_Master Table can be grouped into the same three categories:

Result Master: Key Columns (Group By)

Column Description

All other Leaf Columns These columns are not relevant to your simulation

Column Description

Risk Manager Product Leaf

Your Risk Manager product (or Chart of Accounts) leaf as specified in the Configuration ID.

Common Chart of Account Leaf

Your Common Chart of Account Leaf - see Leaf Setup

Org Unit Leaf If results are consolidated to the corporate level, this may be irrelevant.

ISO_Currency_Code Currency in which results are held.

Scenario_Num Results are stored by scenario number (1-9).

Start_Date_Index Start Date 0 = Cash Flow Information and >= 1 are used for Gap Start Dates.

Financial_Rollup A code for the account type of the line item

Result Type Code Code describing the source of the record, current position, new business, or formula leaves. This column may be omitted in the group by statement if you do not want to maintain this distinction in your consolidated results.

Page 485: fe115trm

Result_Master Table (Market Value Results)

Consolidation of Results 7-7

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Result Master: Result Columns (Sum): CUR_PAR_BALCUR_NET_PAR_BALANCECUR_DEFER_BAL_CCUR_NET_RATE_WCUR_WARMCUR_INTR_REC_ACCRNEW_GROSS_BALANCENEW_NET_BALANCEMARKET_VALUEDURATIONCONVEXITYCUR_TRANSFER_RATE

Result Master: Other Columns (Plug - But do not omit)

Column Description

Result_Sys_ID This is actually a key column for associating the results with your processing ID (Plug this with the value of the Sys_ID_Num for your consolidated Processing ID).

All other Leaf Columns These columns are not relevant to your simulation

Page 486: fe115trm

Result_Master Table (Market Value Results)

7-8 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Sample SQL:The following statement was used to consolidate the results of sys_id_num = 1 and 2 into a sys_id_num = 101:

INSERT INTO RESULT_MASTERSELECT 101 AS RESULT_SYS_ID,

SCENARIO_NUM,ORG_UNIT_ID,0 AS GL_ACCOUNT_ID,COMMON_COA_ID,TM_PROD_ID,FINANCIAL_ROLLUP,START_DATE_INDEX,SUM(CUR_PAR_BAL),SUM(CUR_NET_PAR_BAL),SUM(CUR_DEFER_BAL_C),SUM(CUR_NET_RATE_W),SUM(CUR_WARM),SUM(CUR_INTR_REC_ACCR),SUM(NEW_GROSS_BALANCE),SUM(NEW_NET_BALANCE),SUM(MARKET_VALUE),SUM(DURATION),SUM(CONVEXITY),SUM(CUR_TRANSFER_RATE)

FROM RESULT_MASTERWHERE RESULT_SYS_ID IN (1,2)GROUP BY SCENARIO_NUM,

ORG_UNIT_ID,COMMON_COA_ID,TM_PROD_ID,FINANCIAL_ROLLUP,START_DATE_INDEXRESULT_TYPE_CD

Page 487: fe115trm

Detail Cash Flow Audit Options 8-1

Oracle Proprietary, Confidential Information - Use Restricted by Contract

8Detail Cash Flow Audit Options

By selecting the Detail Cash Flow option in the Process ID (the Audit tab in Oracle Risk Manager and the Process Mode tab in Oracle Transfer Pricing), you can view daily cash flow results. Selecting this option writes out all cash flow and repricing events that occur for processed records. The number of records written is determined by the environment on which the process is running: client or server. If you are running under multiprocessing, you may get fewer records, for example, OFSA_PROCESS_ID_STEP_RUN_OPT.NUM_OF_PROCESSES > 1.

The relevant financial elements for each instrument record and the cash flow results are stored in the OFSA_PROCESS_CASH_FLOWS table:

Column Name Description

Result Sys ID Key column that corresponds to the Sys ID Num of the Processing ID. All cash flow results for the processing run are stored with the same Result Sys ID value. See "Determining the Value of Result Sys ID" in this chapter.

Calc Source Cd The type of cash flow processing (selected in the Process ID):

0 - RM - Regular (scenario-based processing)

1 - RM - Stochastic processing

2 - TP - Regular (scenario-based processing)

3 - TP - Forward Rates

4 - TP - Stochastic processing

Record Sequence The processing order of the records.

Cash Flow Sequence The order of the events (cash flows, repricings).

Scenario Num The scenario number assigned in the Forecast Rates ID for scenario-based processing or the rate path number determined in stochastic processing.

Page 488: fe115trm

The Detail Cash Flow Process

8-2 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

This chapter contains the following sections:

■ The Detail Cash Flow Process

■ Data Verification ID Results

■ Data Verification

The Detail Cash Flow ProcessAfter processing cash flows from either Risk Manager or Transfer Pricing, do the following to view the audit results:

■ Determine the value of Result Sys ID

■ View data by:

■ Creating a Data Filter ID associated with the Sys ID Num

■ Creating a Data Verification ID to view the results

Or you can use SQL Talk or SQL*Plus. For example, you can write the following SQL statement to view cash flow results:

SELECT * FROM OFSA_PROCESS_CASH_FLOWS WHERE RESULT_SYS_ID = <your ID number> ORDER BY SCENARIO_NUM, RECORD_SEQUENCE, CASH_FLOW_DATE, FINANCIAL_ELEM_ID;

Financial Elem ID The numeric code describing a piece of financial information described in the row of results data.

ID Number The unique record identifier for the instrument records processed.

Cash Flow Date The date of the event.

Cash Flow Cd The code identifying the type of event.

Float Value The value assigned to each financial element.

Product Leaf Node The product leaf number.

Org Leaf Node The organizational unit leaf number, an optional output dimension in Risk Manager and always used in Transfer Pricing output.

ISO_Currency_Cd Currency associated with the cash flow values.

Column Name Description

Page 489: fe115trm

The Detail Cash Flow Process

Detail Cash Flow Audit Options 8-3

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Determining the Value of Result Sys ID1. From the File menu, select Open -> Process ID.

2. Select the folder and Process ID.

3. With the pointer in the Select Process ID window, right-click.

4. Note the value of Sys ID Num.

Creating a Data Filter IDCreate a Data Filter ID associated with the Sys ID Num (step 4 of "Determining the Value of Result Sys ID"):

1. From the File menu, select New -> Data Filter ID.

2. From Folder, select a folder name.

3. Type a descriptive name for the ID.

4. Type a description for the ID. This is an optional field.

5. Click Read/Write.

6. Click OK.

7. In the Data Filter ID window, do the following:

a. From Table, select Process Cash Flows.

b. From Columns, select Result File System ID Number and click Add.

c. Under Defined Filter, click Process Cash Flows.Result File System ID Number.

d. From Filter Type, select Specific Values.

e. For Number of Ranges, type 1.

Page 490: fe115trm

The Detail Cash Flow Process

8-4 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

f. In the spreadsheet, type the value of Result Sys ID.

8. From the File menu, select Save.

Creating a Data Verification IDCreate a Data Verification ID to view the results:

1. From the File menu, select New -> Data Verification ID.

2. From Folder, select a folder name.

3. Type a descriptive name for the ID.

4. Type a description for the ID. This is an optional field.

5. Click Read/Write.

6. Click OK.

7. In the Data Verification ID window, do the following:

a. From Table Types, select Client Tables.

Page 491: fe115trm

The Detail Cash Flow Process

Detail Cash Flow Audit Options 8-5

Oracle Proprietary, Confidential Information - Use Restricted by Contract

b. From Table, select Process Cash Flows.

c. From Sort By, select one of the following combinations:

■ Cash Flow Date, Financial Element ID—if one instrument record was processed in one rate scenario

■ Record Processing Sequence, Financial Element ID, Cash Flow Date—if more than one record was processed in a single scenario

■ Scenario Number, Cash Flow Date, Financial Element ID—if one instrument record and multiple rate scenarios were processed

d. From Filter ID, select Data and the name of the Data Filter ID you created.

e. Under Columns, select column names and click Add.

f. Under Defined View, order the columns. (For example: ID Number, Organizational Leaf Node, Product Leaf Number, Financial Element ID, Cash Flow Code, Cash Flow Date, Float Value, and so on.)

8. From the Process menu, select Run.

Page 492: fe115trm

Data Verification ID Results

8-6 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Data Verification ID ResultsThe results of running the Data Verification ID appear in a spreadsheet.

Financial ElementsThe Financial Element ID column lists the financial elements written for each payment and repricing event processed by the cash flow engine. An initial set of data is also written, recording the balance and rate as of the last payment date. The base set of financial elements written during a cash flow audit process may include some or all of the following:

Financial Element Description

Payment Events

100 Ending Par Balance. Final balance on payment date, after the payment has occurred.

430 Interest cash flow.

210 Total Principal Runoff, including scheduled payments, prepayments, and balloon payments.

60 Beginning Par Balance. Starting balance and payment date, prior to payment.

Page 493: fe115trm

Data Verification ID Results

Detail Cash Flow Audit Options 8-7

Oracle Proprietary, Confidential Information - Use Restricted by Contract

In addition to these financial elements, other data may be output, depending on the type of processing and the optional financial elements selected. See Chapter 16, "Oracle Risk Manager Financial Elements", for more information on financial elements.

Cash Flow Codes The Cash Flow Code column lists a code for each row that describes the event modeled by the cash flow engine:

120 Runoff Net Rate. Rate at time of payment, weighted by ending balance. To view actual rate, divide financial element 120 by financial element 100.

490 (Stochastic Processes Only) Discount factor used during Monte Carlo process to determine present value of cash flow on the payment date.

Repricing Events

250 Par Balance at time of repricing.

280 Before Reprice Net Rate. Rate prior to repricing, weighted by reprice balance. To determine true rate, divide this financial element value by financial element 250.

290 After Reprice Net Rate. Newly assigned net rate after repricing occurs, weighted by reprice balance. To determine true rate, divide this financial element value by financial element 250.

Initial Event

100 Initial par balance at start of processing.

120 Initial net rate at start of processing.

Cash Flow Code Description

1 Initial recording of balances and rates

2 Payment event only

20 Reprice event only (not during tease period)

8 Reprice during tease period

22 Reprice and payment event together (not during tease period)

Financial Element Description

Page 494: fe115trm

Data Verification

8-8 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Data VerificationYou can copy the results from the Process Cash Flows table and paste them into a spreadsheet to facilitate analysis against validated data. If the cash flows do not behave as expected, examine instrument table data or your assumptions. See Chapter 9, "Cash Flow Calculations" for more information.

10 Reprice and payment during tease period.

Cash Flow Code Description

Page 495: fe115trm

Cash Flow Calculations 9-1

Oracle Proprietary, Confidential Information - Use Restricted by Contract

9Cash Flow Calculations

Oracle Risk Manager uses a cash flow engine to ensure modeling consistency across the OFSA suite of products.

This chapter describes the calculations performed by the OFSA cash flow engine, defines concepts that are vital in forming a complete understanding of the capabilities of the cash flow engine, and contains the following topics:

■ Instrument Level Modeling

■ Modeling Flexibility Defined by Instrument Data

■ Daily Cash Flows

■ Event Driven Logic

■ Financial Elements

■ Multicurrency Accounting and ConsolidationTerminology Used in This Chapter

■ Cash Flow Calculation Process

■ Additional Processing Events

■ Accounting for Exchange Rate Fluctuations

■ Market Value Calculation

■ Consolidation of Results

■ Currency-Based Gap Modeling

■ Detail Cash Flow Data

■ Rule of 78’s Example

Page 496: fe115trm

Instrument Level Modeling

9-2 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Instrument Level ModelingSeveral processes within the OFSA applications require cash flows in order to produce results, including:

■ Transfer Pricing

■ Market Valuation

■ Income Simulation

OFSA generates cash flows at the individual instrument level. Each individual instrument record processed, generates a unique set of cash flows as defined by that instrument record’s product characteristics. This provides an optimum level of accuracy. Cash flows on individual instrument records are used. The cash flows produced are then manipulated to produce the required results.

Modeling Flexibility Defined by Instrument DataSpecific cash flow characteristics defined in an instrument record determine the cash flow results for each instrument. Each instrument record has:

■ Payment information (dates, frequencies, amounts)

■ Balance information (current balance, original balance)

■ Rate information (gross rate, net rate, transfer rate)

■ Currency (the currency in which the record is denominated)

There are over 50 cash flow columns that drive the results. Depending on the information in these columns, you can model an unlimited number of unique instruments.

Daily Cash Flows Cash flows can occur on any date, and with any frequency thereafter. Not only does this provide accurate results, but you also have the ability to change the modeling buckets without having to worry about an impact on the cash flows.

Event Driven LogicOFSA generates cash flows as a series of events. On any day, and with any frequency thereafter, depending on the instrument characteristics, any of the following events can occur:

Page 497: fe115trm

Terminology Used in This Chapter

Cash Flow Calculations 9-3

Oracle Proprietary, Confidential Information - Use Restricted by Contract

■ Payment

■ Repricing

■ Payment recalculation

■ Prepayment

This reference manual explains the calculations that occur for each event.

Financial ElementsOn an event date, OFSA computes the results of that event, the financial elements. For example, on a payment event, it can compute the following:

■ Interest

■ Principal runoff

■ Total cash flow

■ Ending balance

The OFSA cash flow engine generates over 50 financial elements that can be used in analysis.

Multicurrency Accounting and ConsolidationCurrency fluctuation is a critical risk affecting multicurrency balance sheets. Risk Manager enables users to model instruments denominated in different currencies, including the effect of currency fluctuations on earnings, and cross-currency consolidations.

Terminology Used in This Chapter

Non-Currency-Based versus Currency-Based ProcessingUsers may select one of four functional dimensions in their Risk Manager Process ID. These dimensions describe the way the output is aggregated and impact the approach to translation of multicurrency data. In this chapter, we refer to processing

Page 498: fe115trm

Terminology Used in This Chapter

9-4 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

as being either “non-currency-based” or “currency-based,” depending on which functional dimension is selected:

Local Currency versus Reporting CurrencyWhen processing multicurrency data, we generally refer to the currency as one of the following:

■ Local Currency

This can be any active currency. It is the currency in which the record is denominated; for example, USD (US Dollars) or JPY (Japanese Yen).

■ Reporting Currency

This is the target for currency translation; that is, the cash flow engine translates cash flows or values on the instrument record by using the exchange rate from the local currency to the reporting currency.

Default Currency (Code 000)Risk Manager enables users to define modeling assumptions (for example, market value Discount Rates, new business Pricing Margins, Maturity Strategies, and so on.) for each Product/Currency combination. Generally, the cash flow engine retrieves currency-based assumptions based on Product + Currency. If no such assumptions exist, it uses the assumptions the user has defined for the Product + Default Currency (Code ‘000’). If it still cannot find a match, it employs a default or may write out an error message.

[m] Forecast (in memory) versus [r] Actual (on record)As a cash flow instrument is modeled through time, the data associated with this instrument changes due to payments, repricings, or other circumstances. These changes apply only in memory and do not affect the information stored in the instrument tables.

Currency Processing Type Functional Dimension in Process ID

Non-Currency-Based Product

Product/Organizational Unit

Currency-Based Product/Currency

Product/Organizational Unit/Currency

Page 499: fe115trm

Cash Flow Calculation Process

Cash Flow Calculations 9-5

Oracle Proprietary, Confidential Information - Use Restricted by Contract

A subscript notation of [m] for memory and [r] for detail record differentiates between the forecasted data and the actual data. For example, current paymentr refers to the current payment stored in the instrument table. Current paymentm refers to the current payment in memory that is updated each time a payment recalculation occurs.

Cash Flow Calculation ProcessThe following steps summarize the cash flow calculation process:

1. Initialize modeling data and parameters for instrument to be modeled.

2. Process modeling event(s) until current date equals the maturity date or the modeling end date, or the current balance equals zero:

■ Calculate changes to underlying instrument

■ Calculate financial elements associated with event

■ Increment forward event dates

3. Generate secondary results:

■ Deferred amortization recognition

■ Market values

■ Duration

■ Gap

4. Accumulate daily information into appropriate time buckets.

5. Optionally translate and consolidate values in each time bucket for Risk-Manager currency-based processes.

Initialization of DataThe first step in the process is to gather the information necessary to model the current instrument. This information is available from several sources, including:

■ the instrument table

■ payment Schedule table

■ the active Configuration ID

■ payment Pattern interface

Page 500: fe115trm

Cash Flow Calculation Process

9-6 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

■ repricing Pattern interface

■ the IDs specified in the Process ID

■ the historical exchange rates table

Determine Account Type of InstrumentAccount types classify instruments by their use in financial statements and determine how the cash flow engine processes an individual instrument. The Common COA ID value determines the account type of an individual record. The Leaf Setup interface classifies each Common COA ID leaf as an account type. Based on these account types, there are five categories of cash flow processing, as shown in the following table.

Cash FlowCategory Process Description - Detail

Process Description - New Business Associated Account Type

Detail cash flow Process daily cash flow events and generate necessary financial elements.

Process daily cash flow events and generate necessary financial elements.

Interest-Earning AssetInterest-bearing LiabilityOff Balance Sheet ReceivableOff Balance Sheet Payable

Balance Only Process the record originating on the origination date and running off on the maturity date. No payments are processed.

Show ending balances equal to the forecasted amounts in each bucket.

Other AssetOther Liability

Interest Only Process the instrument as a single interest payment covering the time from the origination date to the maturity date. Recognize the current balance as an interest cash flow on the maturity date, but accrue interest from the origination date to the maturity date.

Show interest cash flows/accruals equal to forecasted amounts in each bucket.

Interest IncomeInterest Expense

Non-Interest Income/ Expense

Process the instrument as a single non-interest payment covering the time from the origination date to the maturity date. Recognize the current balance as a non- interest cash flow on the maturity date.

Show non-interest financial elements equal to forecasted amounts in each bucket.

Non-Interest IncomeNon-Interest Expense

Page 501: fe115trm

Cash Flow Calculation Process

Cash Flow Calculations 9-7

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Initialize Interface DataData retrieved from the interface impacts how an instrument is processed. The following pieces of interface data affect processing:

■ Model with Gross Rates

■ Interest Credited

■ Percent Taxable

■ Currency Gain/Loss Basis

■ Pay-Equivalent Compounding Convention

■ User-Defined Payment Patterns

■ User-Defined Repricing Patterns

Model with Gross RatesThe Model with Gross Rates option is available in the Risk Manager Leaf Characteristics ID, and in the Transfer Pricing product’s Transfer Pricing ID.

Interest CreditedThe interest credited switch resides in the Leaf Characteristics ID used by the Risk Manager product. The switch can be enabled for any leaf. However, it affects only the cash flows of Simple/Non-Amortizing instruments.

When the switch is enabled for a non-amortizing instrument, interest cash flows are added to the principal balance at each payment prior to maturity. On the maturity date, the initial principal balance plus the accumulated interest cash flows are

Special Autobalancing

Detail information is used only to update the current position.

Generate results as needed during the autobalancing process if account is specified as autobalancing account.

TaxesDividendsEquity

Note: See the Financial Element Calculations table for more information about financial element output by account type.

Cash FlowCategory Process Description - Detail

Process Description - New Business Associated Account Type

Page 502: fe115trm

Cash Flow Calculation Process

9-8 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

reflected as principal runoff at maturity. When the switch is enabled for amortizing instruments, it is ignored by the cash flow engine.

Percent TaxableThe Risk Manager autobalancing option requires the Percent Taxable to determine the percentage of total income/expense that is subject to tax. This can be set up in the Leaf Characteristics ID, and should be defined for each Product/Reporting currency (or Product/Default Currency 000) combination.

Currency Gain/Loss BasisRisk Manager enables users to select the currency accounting method for each Product/Currency combination modeled in multicurrency simulations. This is referred to as the Currency Gain/Loss Basis; it is an option in the Leaf Characteristics ID.

Pay-Equivalent Compounding ConventionThis switch is in the Risk Manager Leaf Characteristics ID. When the cash flow engine calculates interest, this switch indicates when it needs to convert rates from the quoted compounding basis to the payment basis for the record.

User-Defined Payment PatternsPayment pattern data is retrieved when the cash flow engine must process an instrument with an amortization code in the payment pattern range from 1000 to 29999. The amortization code from the detail instrument record is matched to the set of pattern data with the same code. If no match is found to the amortization code from the detail record, the record is processed as a non-amortizing instrument.

User-Defined Repricing PatternsRepricing pattern data is retrieved when the cash flow engine must process an instrument with an adjustable type code in the repricing pattern range from 500 to 998. If no match is made, the engine defaults to the record characteristics in the repricing frequency column and processes the instrument as a standard adjustable instrument.

When a match is made, the instrument is modeled based on the repricing pattern. The cash flow engine first evaluates what the status of the instrument is as of the starting date of the cash flow process. The current repricing date is determined by rolling forward from the origination date to the next repricing date that follows the

Page 503: fe115trm

Cash Flow Calculation Process

Cash Flow Calculations 9-9

Oracle Proprietary, Confidential Information - Use Restricted by Contract

process start date. If that date does not correspond to the next repricing date, the repricing date from the record is used.

A repricing event is triggered when the period of time between events has elapsed. When this occurs, the defined rates are assigned to the detail record of the instrument. If the repricing type is Flat Rate, the rate from the event detail of the repricing pattern is applied to the detail record of the instrument. If the repricing type is Indexed Rate, a rate lookup is triggered for the customer rate and the transfer pricing rate. If the interest rate code (IRC) is a yield curve, the point on the yield curve used is the repricing term associated with the current repricing information, unless the IRC term has been specified in the repricing pattern event. This rate, plus the specified margin, is the new fully indexed rate. Rate caps and floors are applied after this calculation occurs.

Initialize Cash Flow DataThe cash flow engine gathers cash flow data for the instrument to be processed, representing a subset of the information stored in the instrument tables for this record. The Detail Cash Flow Data Table lists the columns referenced in this process.

Cash flow data provides current information about the characteristics of a cash flow instrument. This information must be consistent to ensure consistent output. Prior to processing cash flows, cash flow edit checks should be run to avoid producing unreasonable results.

Cash flow data can be classified into categories defining its use during the processing of an event:

■ Static characteristics

■ Dynamic characteristics

■ Triggers

Static CharacteristicsStatic characteristics provide information to the cash flow engine about how the instrument should be modeled. For non-pattern and non-schedule instruments, all of the following characteristics remain constant during the modeling process.

■ Event frequencies

■ Repricing

■ Payment

■ Payment change

Page 504: fe115trm

Cash Flow Calculation Process

9-10 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

■ Financial code values

■ Accrual basis code

■ Amortization type code

■ Rate change round code

■ Leaf values

■ Product leaf

■ Common COA ID

■ Currency Code

■ Repricing parameters

■ Margin

■ Rate caps

■ Rate increase period

■ Rate change minimum

For pattern and schedule instruments, the payment frequency and/or repricing frequency can vary throughout the life of the instrument.

Dynamic CharacteristicsDynamic characteristics are updated each time an event occurs, as a result of what has occurred during the event. They include:

■ Balances

■ Current

■ Current deferred

■ Rates

■ Current net

■ Current gross

■ Current transfer

■ Event counters (remaining number of payments)

Page 505: fe115trm

Cash Flow Calculation Process

Cash Flow Calculations 9-11

Oracle Proprietary, Confidential Information - Use Restricted by Contract

TriggersTriggers signal the cash flow engine, indicating it is time to model a particular event and can therefore change their value during the modeling horizon:

■ Event dates

■ Next payment

■ Next reprice

■ Payment change

■ Negative Amortization balance in conjunction with neg-am limit

Translation (Non-Currency-Based Processes)If the process is non-currency-based (for example, the Process ID specifies a functional dimension of “Product” or “Product/Organizational Unit”), the cash flow engine compares the local currency (on the instrument) with the reporting currency (specified in the Process ID) to determine whether balance and payment amounts in the instrument need to be translated. If the instrument is already denominated in the reporting currency, no translation is necessary. If it is in a different currency, the process must translate all amounts prior to processing cash flows. It translates those values from the local currency to the reporting currency by dividing by the exchange rate in effect at the As-of-Date.

The following is a list of all instrument values requiring translation for non-currency-based processing:

■ Original Par Balance

■ Current Par Balance (from instrument table or Transaction Strategy)

■ Original Payment Amount

■ Current Payment Amount

■ Negative Amortization Amount

■ Current Deferred Balance (from instrument table or Transaction Strategy)

Note: In currency-based processes (that is, where the Process ID specifies a functional dimension of “Product/Currency” or “Product/Organizational Unit/Currency), no translation is required because the instrument is processed in its local currency and all results are accumulated in the local currency.

Page 506: fe115trm

Cash Flow Calculation Process

9-12 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Initializing Schedule RecordsProcessing of scheduled amortization instruments requires gathering additional data from the OFSA_PAYMENT_SCHEDULE table. An amortization code of 800, 801, or 802 signals to the cash flow engine that this instrument record is a schedule record. To properly model schedule instruments, the cash flow engine must retrieve payment dates and payment amounts from the Schedule table. A match is made between the ID number and Instrument type code from the instrument record to the same data in the Schedule table. If no match is found, the instrument is processed as a non-amortizing record.

Amortization Code 800The different schedule amortization codes relay to the cash flow engine what type of payment is stored in the schedule table. An amortization code of “800” signifies that payment amounts are principal and interest amounts. On payment dates, these payments are processed as conventional amortization payments.

Amortization Code 801An amortization code of “801” is used for level principal payment schedules. On the schedules for these instruments, the payment amount represents the principal portion of the payment only. For 800 and 801 schedules, the payment amounts should be expressed gross of any participations.

Amortization Code 802Instruments with amortization code of “802” do not reference the payment amount column in the schedule tables. These instruments are processed as interest only records, with all principal, with the exception of prepayments, running off on the maturity date.

The data in the maturity date, next payment date, last payment date, remaining number of payments, and current payment columns from the instrument record should coincide with the same information in the schedule table. When this information is inconsistent, the information in the detail record supersedes the data in the schedule table.

In this case, the payment on the next payment date occurs on the date defined in the next payment date column of the instrument record, for the amount defined in the current payment column of the instrument record.

All payments after this date and prior to the maturity date are made according to the payment date in the schedule table. On the maturity date, the date from the maturity date column of the instrument record is used to pay off the remaining

Page 507: fe115trm

Cash Flow Calculation Process

Cash Flow Calculations 9-13

Oracle Proprietary, Confidential Information - Use Restricted by Contract

balance of the instrument record. If payment dates exist in the schedule beyond this date, they are ignored.

Translation (Non-Currency-Based Processes)

Similar to the considerations discussed earlier under “Initializing Instrument Records,” if the process is non-currency-based, the scheduled payment amount must be translated from the local currency to the reporting currency. The cash flow engine uses the exchange rate in effect at the As of Date, based on the local currency stated in the instrument record associated with this schedule record.

Initializing Pattern RecordsThe following logic applies to both User-Defined Payment Patterns and User-Defined Repricing Patterns. Applicability to repricing is indicated in parenthesis.

Single Timeline PatternsTo initialize an instrument record whose payment (or repricing) characteristics are defined by a single timeline pattern, the cash flow engine must synchronize the detail instrument record with the payment (or repricing) pattern. Synchronization determines the current payment of the instrument within the payment (or repricing) pattern.

The synchronization process depends on whether the pattern is relative or absolute. To synchronize a relative pattern, the cash flow engine calculates the payment (or repricing) dates for the instrument record by rolling the origination date forward by the pattern frequencies. Once it calculates a payment (or repricing) date greater than the as-of-date, it stops. The number of times it was necessary to roll the date forward determines the current payment (or repricing event) number for the record.

ExampleAn instrument record processed on an as-of-date of 03/31/1996 with an origination date of 01/01/1996, and a next payment (or repricing) date of 05/15/1996 is matched to the following pattern:

ROW # Frequency Repetitions

1 1 M 3

2 3 M 3

Page 508: fe115trm

Cash Flow Calculation Process

9-14 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

The origination date is rolled forward in the following manner:

■ Starting point -- 01/01/1996

■ Add first monthly payment (or repricing) frequency -- 02/01/1996

■ Add second monthly payment (or repricing) frequency -- 03/01/1996

■ Add third monthly payment (or repricing) frequency -- 04/01/1996

After the third roll forward, the payment (or repricing) date is greater than the as-of-date. The cash flow engine interprets that the record is on its third payment (or repricing), which is the final monthly payment (or repricing). It models this payment (or repricing) on the next payment (or repricing) date from the detail record, in this case, 05/15/1996. The next payment (or repricing) is scheduled for 8/15/1996, using the three month frequency from the fourth payment (or repricing) in the schedule.

Absolute patterns do not require the same rolling mechanism for synchronization. The next payment (or repricing) date from an absolute pattern is determined by the first month and day after the as-of-date. If this date does not correspond to the next payment (or repricing) date from the detail record, the next payment (or repricing) date of the detail record supersedes the date of the pattern. From that point on in the process, the payment (or repricing) dates from the pattern are used.

The cash flow engine has been designed in this manner to provide greater flexibility in modeling payment and repricing patterns. However, this flexibility increases the importance of detail data accuracy to ensure that when discrepancies exist between detail data and patterns, the differences are intended.

Multiple Timeline Patterns (Payment Patterns Only)To initialize a detail instrument record tied to a split pattern, the cash flow engine must generate a separate record for each split. The current balance for each split record is calculated using the percentage apportioned to that split, as defined through the payment pattern interface. The original balance, original payment, and current payment columns are also apportioned according to the percent defined through the interface.

For each timeline resulting from the split of a detail instrument record, the current payment date must be determined. The method for determining the payment date is the same as described for single timeline patterns with one exception. For these instruments, the next payment date from the original instrument record does not override the calculated next payment date. The date derived from rolling the origination date forward for relative timelines or locating the next date for absolute timeliness is assumed to be the correct payment date.

Page 509: fe115trm

Cash Flow Calculation Process

Cash Flow Calculations 9-15

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Translate Values (Non-Currency-Based Processes)

If the Payment Pattern is defined using an absolute payment amount, the engine may need to translate the amount to the reporting currency specified in the Process ID. This is similar to the considerations discussed earlier under “Initializing Instrument Records,” that is, if the process is non-currency-based, the Pattern’s Payment Amount needs to be translated. The cash flow engine uses the exchange rate in effect at the As of Date, based on the local currency stated in the instrument or new business record associated with this pattern record.

Modeling Start and End DatesModeling start and end dates are determined by the type of processing (Risk Manager or Transfer Pricing) and the instrument being processed, as shown in the following table:

Only records that have a value in the As of Date column of the database equal to the as of date in the active Configuration ID are processed.

Additionally Derived Data

Initialization of Adjustable Rate Instruments for Transfer PricingFor transfer pricing of adjustable rate instruments, data is reset to values consistent with the last reprice date. The next payment date is rolled back by the payment frequency to the first payment date after the last reprice date. The remaining number of payments is increased by the number of payments added in the rollback process.

OFSA Transfer Pricing - Adjustable

OFSA Transfer Pricing - Fixed

OFSA Transfer Pricing- Adjustable Remaining Term

OFSA Transfer Pricing - Fixed Remaining Term

OFSA Risk Manager

start date

last reprice date origination date As of Date + 1 day (Config ID)

As of Date + 1 day (Config ID)

As of Date + 1 day (Config ID)

end date next reprice date

maturity date next reprice date maturity date last day of last modeling bucket (Config ID)

Page 510: fe115trm

Cash Flow Calculation Process

9-16 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

The field Last Reprice Date Balance is used in place of the current balance in a transfer pricing process. If the balance as of the last reprice date is not available, update this column with the current balance. The transfer pricing program has a special feature that re-amortizes the current payment if the following conditions are met:

■ The last reprice date equals the current balance

■ Payments occur between the last reprice date and the as-of-date

■ The instrument is not tied to an amortization pattern or an amortization schedule

These three conditions signal to the transfer pricing engine that the balance as of the last reprice date was not available and the current balance should be used as a proxy.

Percent Sold AdjustmentBalances must be adjusted for participations:

■ Current net balance = current par balance * (100 - percent sold)

■ Current payment net = current payment * (100 - percent sold)

■ Original net balance = original par balance * (100 - percent sold).

■ Last reprice balance net = last reprice balance * (100 - percent sold)

■ Original payment net = original payment * (100 - percent sold)

Forecast Balance assumptions■ Non-currency-based processing

If the Process ID includes Forecast Balance new business, only the assumptions for the reporting currency are applied. For associated new business assumptions in the Pricing Margin ID, Maturity Strategy ID, and Leaf Characteristics ID and if no assumptions exist for the reporting currency, the cash flow engine uses assumptions defined for the Default Currency (Code “000”). If it still cannot find a match, it employs a default or may write out an error message.

■ Currency-based processing

In currency-based processes, results are produced in their local currency. Therefore, Risk Manager reads all Forecast Balance assumptions regardless of their associated currency.

Page 511: fe115trm

Cash Flow Calculation Process

Cash Flow Calculations 9-17

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Process Modeling EventsThere are four events modeled in the cash flow engine:

■ Payment

■ Payment change

■ Reprice

■ Prepayment

When multiple events occur on the same day the order of processing is as follows:

Interest in Arrears

1. Payment calculation

2. Payment

3. Prepayment

4. Reprice

Interest in Advance

1. Reprice

2. Payment

3. Prepayment

For interest in advance instruments, payment calculation is not applicable. Payment calculation occurs only on conventionally amortizing instruments.

Processing of an event includes these steps:

■ Dynamic information is updated

■ Financial elements summarizing the event is generated

■ Event dates are incremented to the next event date

Payment Calculation EventCash flow data characteristics are:

Static Information - Conventional Adjustable and Payment Patterns■ Current gross rate

■ Current par balance

Page 512: fe115trm

Cash Flow Calculation Process

9-18 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

■ Amortization term and multiplier

■ Amortization type

■ Adjustable Type Code

■ Compounding Basis Code

Additional Information - Adjustable Neg-Am:■ Payment increase cycle

■ Payment increase life

■ Payment decrease cycle

■ Payment decrease life

■ Payment change frequency and multiplier

■ NGAM Equalization frequency and multiplier

■ Original payment amount

■ Dynamic Information

■ Current payment

Event Trigger - Transfer Pricing■ Cash flow transfer pricing of an Adjustable instrument

Event Triggers - Conventional Adjustable and Conventional Payment Patterns■ Reprice Event

Event Triggers - Adjustable Neg Am■ Next payment change date

■ NGAM balance > NGAM limit

■ NGAM Equalization date

Payment Calculation Steps1. Calculate new current payment.

Conventionally Amortizing Payment =

Page 513: fe115trm

Cash Flow Calculation Process

Cash Flow Calculations 9-19

Oracle Proprietary, Confidential Information - Use Restricted by Contract

where Current RateC = Current compounded customer rate per payment.

rem pmtsa = remaining number of payments based on amortization

Current Par Balancem = current balance at time of payment recalculation

For conventional schedules that reprice, payment recalculation does not occur. For patterns that reprice, payment recalculation does not occur during the repricing event. For these instruments, the payment is calculated at the time of payment. See the Payment Event section for more details.

Current Compounded Customer Rate per PaymentThe customer rate must be adjusted to a rate per payment. If no compounding occurs, the rate can be divided by the payments per year.

Example: current customer rate: 7.5%

If the instrument compounds, the rate must be adjusted for compounding. For monthly rates that compound daily, an average number of days assumption of 30.412 is used.

Remaining Number of Payments Based on AmortizationIf the amortization term is equal to the original term, then the remaining number of payments is used.

If the amortization term <> original term, the remaining number of amortized payments are calculated by adding the amortization term to the origination date to determine the amortization end date. The remaining number of

Payment Frequency Calculation Rate per Payment

monthly 7.5 ÷12 0.625

quarterly 7.5 ÷ 4 1.875

yearly 7.5 ÷ 1 7.5

( )Current Par Balance

Current RateC

1 + Current RateC

-1 * rem pmts

a

m

11∗

Page 514: fe115trm

Cash Flow Calculation Process

9-20 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

payments are calculated by determining how many payments can be made from and including the next payment date and this date.

The remaining number of payments is calculated for patterns based on the payment frequency at the time of repricing. As with conventional instruments, the amortization end date is used for payment recalculation. The remaining term is calculating using the difference between this date and the next payment date. This term is divided by the active payment frequency and one additional payment is added to it for the payment on the next payment date.

2. Apply periodic payment change limits.

Periodic payment change limits restrict the amount the payment can increase over its previous value. These limits are applied only when the payment recalculation is triggered by a payment adjustment date or a negative amortization limit. Because of these limits, principal may continue to negatively amortize when the negative amortization limit has been reached.

3. Apply lifetime payment change limits.

Lifetime payment caps and floor set a maximum and a minimum amount for the payment. These limits are applied only when the payment recalculation is triggered by a payment adjustment date or a negative amortization limit. Because of these limits, principal may continue to negatively amortize when the negative amortization limit has been reached.

Increasing Payment Decreasing Payment

Condition Newly Calculated Payment > (1 + (Payment Increase Lifer/100)) * Original Paymentr

Newly Calculated Payment < (1 + (Payment Decrease Lifer/100)) * Original Paymentr

Adjustment if True Current Paymentm = (1+ (Payment Increase Lifer/100)) * Original Paymentr

Current Paymentm = (1 + (Payment Decrease Lifer/100)) * Original Paymentr

Increasing Payment Decreasing Payment

Condition Newly Calculated Payment > (1 + (Payment Increase Lifer/100)) * Original Paymentr

Newly Calculated Payment < (1 + (Payment Decrease Lifer/100)) * Original Paymentr

Page 515: fe115trm

Cash Flow Calculation Process

Cash Flow Calculations 9-21

Oracle Proprietary, Confidential Information - Use Restricted by Contract

4. NGAM equalization event:

If the payment recalculation is triggered by a NGAM equalization date, payment change limits do not apply. If the newly calculated payment is greater than the lifetime payment cap or less than the lifetime payment floor, the appropriate lifetime payment limit (cap/floor) is set equal to the newly calculated payment.

5. Update current payment field.

Once all payment limits have been applied, the new current payment is updated in memory for processing of future events.

Payment EventCash flow data characteristics are:

■ Static Information

■ Dynamic Information

■ Event Triggers

■ Additional Assumption Information

Static Information■ Amortization type

■ Current Payment

■ Accrual Basis code

■ Current gross rate

■ Current net rate

■ Current transfer rate

■ Origination Date

■ Payment Frequency and multiplier

Adjustment if True

Current Paymentm = (1+ (Payment Increase Lifer/100)) * Original Paymentr

Current Paymentm = (1 + (Payment Decrease Lifer/100)) * Original Paymentr

Increasing Payment Decreasing Payment

Page 516: fe115trm

Cash Flow Calculation Process

9-22 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

■ Interest Type

■ Compounding Basis Code

■ Last Payment Date

Dynamic Information■ Current Par Balance

■ Remaining Number of Payments

■ NGAM Balance

Event Triggers ■ Next Payment Date

■ Maturity Date

Additional Assumption Information■ Interest credited switch

■ Compounding Method

Payment Event StepsThe following are descriptions of the Payment Event Steps:

1. Calculate interest cash flow(s).

The amount of interest to be paid on a payment date is calculated as follows:

Interest Cash Flow Calculation

Interest cash flow gross Current net par balance * gross rate per payment

Interest cash flow net Current net par balance * net rate per payment

Interest cash flow transfer rate

Current net par balance * t-rate per payment

Note: Rule of 78’s Exception: The Rule of 78’s loans have a pre-computed interest schedule.

Page 517: fe115trm

Cash Flow Calculation Process

Cash Flow Calculations 9-23

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Rate per Payment -- Accrual AdjustmentThe annual coupon rate must be adjusted to a rate per payment. The accrual basis code defines how this adjustment should be made.

Accrual Factor CodesExample: rate per payment for a June 30 payment (annual rate = 6.0%, payment frequency = 3 months)

This formula assumes a single rate per payment period. If an instrument reprices multiple times within a payment period, only the last repricing event affects the interest cash flow.

Rate per Payment -- Compounding AdjustmentCompounding is applied to the rate used in interest calculation if the compounding frequency is less than the payment frequency. The compounding formula that is applied to the current rate is as follows:

Accrual Basis Code Payment Adjustment Rate per Payment

30/360 (3*30)/360 * 6.0 1.500%

30/365 (3*30)/365 * 6.0 1.4795%

30/Actual 90/365 * 6.0 1.4795%

Actual/Actual (30+31+30)/365 * 6.0 1.4959%

Actual/365 (30+31+30)/365 * 6.0 1.4959%

Actual/360 (30+31+30)/360 * 6.0 1.5167%

Compounding Code Calculation

Simple No compounding is calculated.

At Maturity No compounding is calculated

Continuous e^(rate per payment) -1

Daily (1 + rate/365 or 366) ^ (days in payment) -1

Monthly, Quarterly, Semi-Annually, Annually

(1 + rate per pmt/cmp pds per pmt) ^ (cmp pds per pmt) -1

Page 518: fe115trm

Cash Flow Calculation Process

9-24 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Rate per Payment - Stub and Extended Payment AdjustmentAn adjustment may be made if the expected days in the payment are different than the actual days in the payment.

The number of days between the next payment date and the last payment date is compared to the payment frequency, specified in days. The payment frequency specified in days depends on the month the payment occurs. If these numbers are not equal, the interest cash flow is adjusted by the ratio (next payment date - last payment date) /payment frequency in days.

On the last payment processed in the modeling horizon, the number of days between the maturity date and the last payment prior to the maturity date is compared to the payment frequency specified in days. The payment frequency specified in days depends on the month in which the maturity date occurs. If these numbers are not equal, the interest cash flow is adjusted by the ratio (maturity date - last payment date)/ payment frequency in days.

2. Calculate current payment for patterns and schedules.

For amortization patterns, the payment amount can be defined independently for each payment date. Therefore, on each payment, the payment amount must be calculated according to the characteristics defined for that date. Payment amounts can be driven by several different factors. These following factors are each explained:

Percent of Original Payment■ Oracle Risk Manager

On the first modeled payment on a detail instrument record, the amount in the current payment column is assumed to accurately represent the payment amount as of the next payment date. If this instrument record is partially sold, the current payment is multiplied by (100-percent sold) to get the net payment amount.

If this is the first payment made by a new business record, the payment amount is calculated using the original balance, original rate, and original number of payments. The original number of payments is calculated by using the amortization term, as specified through the Maturity Strategies ID or Transaction Strategies ID, and the original payment frequency.

On subsequent payment dates, OFSA calculates the amount paid by multiplying the pattern percent by the amount in the original payment amount column, adjusted for percent sold, if applicable. The pattern percent

Page 519: fe115trm

Cash Flow Calculation Process

Cash Flow Calculations 9-25

Oracle Proprietary, Confidential Information - Use Restricted by Contract

is the percent of original payment specified in the interface for that payment.

■ Oracle Transfer Pricing

For standard transfer pricing, the model calculates the payment amount for each payment that falls between the last reprice date and the next reprice date (adjustable rate instruments) or between the origination date and maturity date (fixed rate instruments) by using the original payment from the instrument record, and applying the pattern percent from the interface.

For remaining term transfer pricing, the model calculates the payment amount in the same manner as described above for Risk Manager.

Percent of Current Payment■ Risk Manager and Transfer Pricing

On the payment date, OFSA determines the amount to be paid by first calculating a new payment according to the “active” characteristics, including the current balance, current rate, current payment frequency, and calculated remaining number of payments. The remaining number of payments is calculated by determining the amount of time remaining in the amortization term and dividing this term by the current payment frequency.

After the payment has been calculated, the pattern percent is applied.

Percent of Current Balance■ Risk Manager

Percent of Current Balance is applicable only for Level Principal payment patterns. On the first modeled payment, the amount in the current payment column is assumed to accurately represent the payment amount as of the next payment date. If the instrument is partially sold, the amount should be multiplied by (100- percent sold) to get the net payment amount.

For all subsequent payments, the payment amount should be calculated at the time of payment by multiplying the outstanding balance by the pattern percent.

■ Transfer Pricing

Calculations for Transfer Pricing works similarly to Risk Manager. However, for fixed rate instruments, modeling begins at the origination

Page 520: fe115trm

Cash Flow Calculation Process

9-26 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

date, using the original balance. For adjustable rate instruments, modeling begins at the last reprice date, using the last reprice date balance.

Percent of Original Balance■ Risk Manager and Transfer Pricing

Percent of Original Balance is applicable only for Level Principal payment patterns. On the first modeled payment, the amount in the current payment column is assumed to accurately represent the payment amount as of the next payment date. If the instrument is partially sold, the amount should be multiplied by (100- percent sold) to get the net payment amount.

For all subsequent payments, the payment amount should be calculated at the time of payment by multiplying the original balance, net of participations, by the pattern percent.

Absolute Value■ Risk Manager

Absolute value is available for detail instruments; it cannot be used for new business instruments. On the first modeled payment, the amount in the current payment column is assumed to accurately represent the payment amount as of the next payment date. If the instrument is partially sold, the amount should be multiplied by (100- percent sold) to get the net payment amount.

For all subsequent payments, the absolute value amount from the pattern is used. If the instrument has a percent sold, the percent sold is applied to the absolute payment amount.

■ Transfer Pricing

For standard transfer pricing, the absolute payment amount is used, adjusted for the participation percent.

Interest Only■ Risk Manager and Transfer Pricing

On all interest only payments, the payment amount is calculated as the interest due on that date. No reference is made to the current payment column from the detail instrument record. Any payments in the current payment column are ignored.

3. Calculate principal runoff.

Page 521: fe115trm

Cash Flow Calculation Process

Cash Flow Calculations 9-27

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Principal runoff is a function of the amortization type of the instrument and the current payment. The current payment on a conventionally amortizing record represents the total P&I payment, while the current payment on a level principal record represents the principal portion of the total payment.

Simple Amortization (code = 700, 802, and any Non-Amoritizing Pattern Codes)

General case: Principal Runoff = 0

Interest Credited:-1 * interest cash flow gross

Conventional Amortization (code = 100, 500, 600, 800, and any conventionally amortizing pattern codes)

Principal Runoff = current paymentm - interest cash flow gross

Level Principal Amortization (code = 820, 801, and any level principal amortizing pattern codes)

Principal Runoff = current paymentm

Rule of 78’s (code = 710)

Principal Runoff = current paymentm - interest cash flow gross

4. Special negative amortization check.

If principal runoff is negative and the instrument record is adjustable neg-am; then additional checks must be made to ensure that the record is not exceeding neg-am limits. The check that is made is the following:

-1 * principal runoff + neg am balancem > neg am limitt /100 * original balancer

If this condition is true, the payment is not made. The payment is recalculated (see payment calculation event). After the new payment has been calculated, the scheduled principal runoff is recalculated, based on the new payment information.

5. Maturity date case.

If the payment date is also the maturity date, then the remaining balance must be paid off.

Principal At Maturity = Current Balancem - Scheduled Principal Runoff

6. Update current balance.

Page 522: fe115trm

Cash Flow Calculation Process

9-28 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

The current balance must be updated to reflect the principal portion of the payments and any interest credited.

Current Balancem = Current Balancem - Principal Runoff - Principal At Maturity + Interest Credited

7. Update remaining number of payments.

After a payment has been made, the underlying information must be updated in preparation for the next event.

The remaining number of payments is reduced by 1. If remaining number of payments is zero, the modeling for this instrument is complete.

Remaining Paymentsm = Remaining Paymentsm - 1

8. Update next payment date.

For standard amortization instruments, the next payment date is set equal to the current payment date plus the payment frequency.

Next payment datem = Current payment date + payment frequency

If instrument is an amortization schedule, the next payment date is determined from the dates in the schedule table.

If the instrument is an amortization pattern, the next payment date is determined by incrementing the current payment date by the current payment frequency for relative patterns. For absolute patterns, the next payment date is determined by the next consecutive date in the pattern.

If the remaining number of payments is equal to 1, or the next payment date is greater than the maturity date, the next payment date is set equal to the maturity date

Interest in Advance CalculationsThe following steps are applicable to interest in advance records only. Interest in advance instruments make their first payment on the origination date. The last payment, on the maturity date, is a principal only payment.

1. Determine new current payment on schedules and patterns.

Current payment is calculated as described in Step 2 above.

2. Calculate principal runoff.

For interest in advance records, the principal runoff occurs before the interest cash flow is calculated. Because conventionally amortizing instruments cannot

Page 523: fe115trm

Cash Flow Calculation Process

Cash Flow Calculations 9-29

Oracle Proprietary, Confidential Information - Use Restricted by Contract

have interest in advance characteristics, amortizing interest in advance instruments are always level principal. Therefore, the principal runoff equals the current payment amount.

For the payment on the maturity date, all remaining principal is also paid off.

3. Update current balance.

Prior to calculating the interest cash flow, the current balance must be updated for the amount of principal runoff. If the payment is the maturity date, the balance is set to zero, and no further calculations are necessary.

4. Calculate interest cash flow.

If the payment date is not the maturity date, an interest cash flow is made. The interest cash flow calculation for interest in advance instruments is similar to the interest in arrears calculation. The calculation differs in the count for number of days. Rather than counting from the last payment date to the current payment date, the number of days is counted from the current payment date to the next payment date.

5. Update remaining number of payments.

After a payment has been made, the underlying data must be updated in preparation for the next event. The remaining number of payments is reduced by 1.

6. Update next payment date.

For standard amortization instruments, the next payment date is set equal to the current payment date plus the payment frequency.

Next payment datem = Current payment date + payment frequency

If the instrument is an amortization schedule, the next payment date is determined from the dates in the schedule table.

If the instrument is an amortization pattern, the next payment date is determined by incrementing the current payment date by the current payment frequency for relative patterns. For absolute patterns, the next payment date is determined by the next consecutive date in the pattern.

If the remaining number of payments is equal to 1, or the next payment date is greater than the maturity date, the next payment date is set equal to the maturity date.

Page 524: fe115trm

Cash Flow Calculation Process

9-30 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Prepayment EventCash flow data characteristics are:

Static Information■ Current gross rate

■ Current net rate

■ Payment frequency and multiplier

■ Origination date

■ Original Term

■ Next Reprice Date

■ Reprice Frequency

■ Maturity Date

Dynamic Information■ Current Par Balance

■ Current Payment

Additional Assumption Information■ Prepayment Assumption ID

■ Prepayment Table ID

■ Forecast Rates ID

Event Trigger■ Next Payment Date

Prepayment Event StepsPerform the following in order to execute prepayment event steps:

1. Update value of prepayment dimensions.

Depending on the prepayment assumptions for the product leaf, values for the prepayment dimensions may need to be updated. The prepayment assumptions for the product leaf are defined in a Prepayment ID, which is then selected for the current processing run.

Page 525: fe115trm

Cash Flow Calculation Process

Cash Flow Calculations 9-31

Oracle Proprietary, Confidential Information - Use Restricted by Contract

If the prepayment method is Constant Rate, these updates are not necessary. If the prepayment method is Arctangent, only the rate ratio is necessary to calculate. For Prepayment Table method, the required updates depend on the dimension within the table for the proper origination date range.

Listed below are all possible prepayment dimensions and their calculations:

Market Rate

The market rate is selected per product within the Prepayment ID. You must select an IRC from the list of IRCs contained in the active Historical Rates database. The chosen IRC provides the base value for the market rate.

Additionally, you must specify the term point you want to use for IRCs that are yield curves. There are three possible methods for you to select:

■ Original Term

The calculation retrieves the forecasted rate from the term point equaling the original term on the instrument.

■ Reprice Frequency

The calculation retrieves the forecasted rate from the term point equaling the reprice frequency of the instrument. If the instrument is fixed rate and, therefore, does not have a reprice frequency, the calculation retrieves the forecasted rate associated with the term point equaling the original term on the instrument.

■ Remaining Term

The calculation retrieves the forecasted rate from the term point equaling the remaining term of the instrument. See the description of the remaining term calculation listed below for more details.

The market rate is determined by retrieving the proper forecasted rate and adding the user-input spread.

Market Rate = f(Current Date, IRC, yield curve term) + spread

Coupon Rate

The coupon rate is the current gross rate of the instrument record (as of the current date in the forecast).

Rate Difference

The rate difference is the spread between the coupon rate and the market rate. Prior to calculating this dimension, the market rate must be retrieved.

Page 526: fe115trm

Cash Flow Calculation Process

9-32 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Rate Difference = Coupon Rate - Market Rate

Rate Ratio

The rate ratio is the proportional difference between the coupon rate and the market rate. Prior to calculating this dimension, the market rate must be retrieved.

Rate Ratio = Coupon Rate / Market Rate

Original Term

The original term is retrieved from the original term of the instrument. If the original term is expressed in months, no translation is necessary. Otherwise, the following calculations are applied:

Original Termmonths = ROUND((Original Termdays)/30.412)

Original Termmonths = Original Termyears*12

Reprice Frequency

The value for reprice frequency depends on the adjustable type code and the tease characteristics of the instrument data.

■ Fixed Rate

If the instrument is fixed rate, as designated by an adjustable type code = fixed (code value = “0”), the original term, as defined above, is used as the reprice frequency.

Reprice Frequency = Original Term (months)

■ Non-Tease Floating

If the adjustable type of the instrument is floating (code value of “30” or “50” and not in a tease period), the reprice frequency is assumed to be one day, which when rounded to a month value, becomes 0 months.

Reprice Frequency = 0 months

■ Non-Tease Adjustable

If the adjustable type of the instrument is adjustable (code value of “250”) and not in a tease period, the reprice frequency columns is used. All cases where terms are not expressed in months should be translated into months, calculated as follows:

Page 527: fe115trm

Cash Flow Calculation Process

Cash Flow Calculations 9-33

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Reprice Frequencymonths = Reprice Frequencyyears*12

Reprice Frequencymonths = Round (Reprice Frequency days/30.412

■ Teased Loans

The tease period is identified by a tease end date > current date. The reprice frequency during the tease period is calculated as follows, rounded to the nearest whole number of months.

Reprice Frequency = ROUND((Tease End Date - Origination Date) /30.412)

Remaining Term

The remaining term value represents the remaining number of months until maturity. The value is rounded to the nearest whole number of months.

Remaining Term = ROUND((Maturity Date - Current Date)/30.412)

Expired Term (Age)

The expired term represents the age of the instrument. It represents the time elapsed since the origination of the instrument. The value is rounded to the nearest whole number of months.

Expired Term = ROUND((Current Date - Origination Date)/30.412)

Term to Reprice

As with reprice frequency, the calculation of term to reprice depends on the adjustable type code and tease characteristics of the instrument characteristics.

■ Fixed Rate

If the instrument is fixed rate, as designated by an adjustable type code = fixed (code value = “0”), the term to reprice is calculated in the same manner as remaining term. The value is rounded to the nearest whole number of months.

Term to Reprice = Round (Maturity Date - Current Date/30.412)

■ Non-Tease Floating

If the adjustable type of the instrument is floating (code value of “30” or “50”), and is not in its tease period, the reprice frequency is taken as 1 day. The term to reprice is assumed to be one day, which when rounded to a month value, becomes 0 months.

Term to Reprice = 0 months

Page 528: fe115trm

Cash Flow Calculation Process

9-34 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

■ Non-Tease Adjustable

If the adjustable type of the instrument is adjustable (code value of “250”) and not in its tease period, the term to reprice is calculated as the difference between the current date and the next reprice date. The value is rounded to the nearest whole number of months.

Term to Reprice = ROUND((Maturity Date - Current Date)/30.412)

■ Teased Loans

The tease period is identified by a tease end date > current date. The term to reprice, while in this period, is calculated as the difference between the current date and the tease end date. The value is rounded to the nearest whole number of months.

Term to Reprice = ROUND((Tease End Date - Current Date)/30.412)

2. Determine Base Annual Prepayment Rate.

The method for determining the annual prepayment rate depends on the prepayment method.

Constant Rate

Constant prepayment rates can vary for different origination date ranges. The rate is determined by finding the proper range of origination dates and using the constant rate from this range.

Base Annual PP Rate = Constant Rate

Arctangent

The arctangent formula describes the relationship between prepayments and the ratio of coupon rate to market rate. Four coefficients you enter define the shape of the curve. These coefficients can vary by origination date range.

Page 529: fe115trm

Cash Flow Calculation Process

Cash Flow Calculations 9-35

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Base Annual PP Rate = Coeff1 - Coeff2 * ARCTANGENT(Coeff3* (Coeff4 - Rate Ratio))

Prepayment Table

Under the Prepayment Table method, a Prepayment Table ID is referenced within the Prepayment ID for a particular product and origination date range. This prepayment table may be factored by a coefficient to scale the prepayment rates that reside in the table up or down. The prepayment table factor is also defined per product and origination date.

The Prepayment Table ID contains a table of prepayment rates dimensioned by other characteristics, as listed in Step 1 above. The Prepayment Table ID can hold a maximum of three dimensions. For each dimension, you can define the lookup method along that dimension, either range or interpolate.

Range Lookup

Range Lookups treats the nodes within the dimension as a starting value for a range that extends to the next node dimension. For example, take an original term dimension with node values of 0,12, and 24. The range lookup treats these values as three sets of ranges: 0 to 11, 12 to 23, and >= 24.

Interpolation Lookup

If the interpolation method is selected, the lookup applies straight line interpolation to determine the proper prepayment rate for values that fall between nodes.

Lookups Outside the Given Range

For both lookup methods, lookup for values less than the lowest node value receives the prepayment rate associated with the lowest node. Values

0

0.1

0.2

0.3

0.4

0.5

0.6

0.5 1 1.5 2 2.5 3

Customer Rate/Market Rate

Pre

pay

Rat

e

Page 530: fe115trm

Cash Flow Calculation Process

9-36 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

greater than the highest node receive the prepayment rate associated with the highest node.

Along each dimension of the table, range lookup or interpolation is performed to pinpoint the proper prepayment rate from the table. Once the prepayment rate is retrieved from the prepayment table, the prepayment table factor is applied to this rate.

Base Annual PP Rate = PPTableFactor * PPTableLOOKUP(dimensionx, dimensiony, dimensionz)

3. Adjust for Seasonality.

For each prepayment method, seasonality factors can be applied to adjust the prepayment rate. The seasonality factors are defined per month. The month of the current date is used to determine the proper seasonality factor to use.

Annual PP Rate = Seasonality Factor(Current Month) * Base Annual PP Rate

4. Check Prepayment in Full Option.

If the adjusted final prepayment rate is equal to 100%, the instrument is paid off in full.

5. De-annualize the Prepayment Option.

The annual prepayment rate is adjusted to a rate per payment. The formula is as follows:

Prepayment Factor = (1-(1- Annual PPRate)^(1/payments per year)

6. Adjust Prepayment Rate for Stub or Extended Payments.

The prepayment rate per payment is adjusted if the payment is a stub or extended payment. This adjustment is made in the same manner that interest cash flows are adjusted, as follows:

Adjusted prepayment factor = Prepayment Factor * (next payment date - last payment date) / (payment frequency in days)

7. Determine prepayment amount.

The amount of runoff due to prepayments is calculated. The prepayment factor is applied to the current balance.

Prepayment Runoff = Current Balance * prepayment factor

8. Update current balance.

Page 531: fe115trm

Cash Flow Calculation Process

Cash Flow Calculations 9-37

Oracle Proprietary, Confidential Information - Use Restricted by Contract

The current balance must be reduced by the amount of prepayment runoff.

Current Balance = Current Balance - Prepayment runoff

9. Apply prepayment factor to current payment.

An option exists in the Prepayment ID to reduce the payment proportionally to reflect the amount of principal that has been prepaid. If the prepayment treatment is “Refinance”, the current payment is reduced as follows:

Current Payment = Current Payment * (1 - prepayment factor)

If the payment treatment is “Curtailment”, the current payment remains constant, effectively reducing the term of the instrument.

Reprice EventCash flow data characteristics are:

Static Information:■ Adjustable type code

■ Interest rate code

■ Transfer Rate Interest Rate code

■ Net Margin

■ Net Margin Code

■ Gross Margin

■ Transfer Rate Margin

■ Reprice frequency and multiplier

■ Rate cap life

■ Rate floor life

■ Rate increase period

■ Rate decrease period

■ Rate set lag and multiplier

■ Rate change minimum

■ Rate change rounding code

■ Rate change rounding factor

Page 532: fe115trm

Cash Flow Calculation Process

9-38 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Dynamic Information■ Current gross rate

■ Current net rate

■ Current transfer rate

Event Triggers■ Bucket start date

■ Tease end date

■ Next reprice date

Additional Assumption information■ Forecast Rates ID

Notes About Reprice Event

Transfer PricingThe modeling of adjustable rate instruments in TP begins at the last reprice date and ends at the next reprice date, with the next repricing date treated like a maturity date for funding purposes. Therefore, no repricing events occur during a transfer pricing process.

Customer Rate DefinitionRepricing characteristics (rate caps, floors, periodic change limits) are based on the customer rate. In a standard processing run, the current net rate is defined as the customer rate. However, when the Modeling with Gross Rates option is used, the customer rate is defined as the current gross rate.

Reprice Steps1. Determine new IRC value(s).

The raw customer rate (Raw RateC) is determined from the set of forecasted IRC values contained in the Forecast Rates ID chosen within the processing ID. Additionally, a raw transfer rate (Raw RateT) is derived if the Modeling with Transfer Rates option is used. The variables used to determine the raw rates are:

Raw RateC = ƒ(Rate set date, IRC, yield curve term)

Page 533: fe115trm

Cash Flow Calculation Process

Cash Flow Calculations 9-39

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Raw RateT = ƒ(Rate set date, transfer rate IRC, yield curve term)

Rate Set DateThe rate set date is the date from which the IRC value is taken. The date is determined as follows:

Rate Set Date = Next Reprice Datem - Rate Lagr

If the rate set date is less than the As of Date, the historical rate is retrieved from up to one year prior to the As of Date.

Yield Curve TermIf the IRC is a single point IRC (Prime, LIBOR), then the forecasted rate is used. If the IRC is a yield curve (Treasury Yield Curve), the point on the yield curve equivalent to the repricing frequency is used. If no such point exists, straight line interpolation is used between the two nearest terms.

Example:

An instrument has a repricing frequency of 18 months, which does not exist on the yield curve. The two nearest points are the 12 month point and the 24 month point.

The 18 month point is determined as follows:

Interpolated Rate = Rate(Begin) + (Rate(End) - Rate(Begin))*(Term(interpolated rate)-Term(Begin))/(Term(End)-Term(Begin))

Rate(18 M) = 6.00% + (9.00%-6.00%) * (24 M - 18 M) / (24 M - 12 M) = 6.00% + 3.00% * (6 M) / (12 M) = 6.00% + 1.50% = 7.50%

2. Add applicable margin to raw customer rate.

The margin of the customer is added to the raw customer rate. If using the Modeling with Gross Rates option, the gross margin is used. Otherwise, repricing depends on the Net Margin Flag. If the Net Margin Flag is set to floating net rate, the net margin is used. If the Net Margin Flag is set to fixed net rate, no repricing occurs.

Term Rate

12 months 6.00%

24 months 9.00%

Page 534: fe115trm

Cash Flow Calculation Process

9-40 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Raw RateC = Raw RateC + MarginC

3. Update current transfer rate if modeling transfer rates.

At this point the current transfer rate (Current RateT) can be updated. Unlike the customer rates, no further adjustments are necessary.

Current RateT = Raw RateT + marginT

4. Apply rounding codes.

The raw customer rate is adjusted using the method defined by the rounding codes and to the precision specified by the rounding factor. If the rounding factor is set equal to zero, no rounding occurs.

5. Apply rate change minimum.

The raw customer rate including margin is compared with the current customer rate (Current RateC). If the amount the current customer rate would change by is less than the rate change minimum then the rate does not change. Therefore, raw customer rate is set equal to the current customer rate.

6. Set value of fully indexed rate(s).

Method DescriptionExample (Raw rate = 5.123; rounding factor = 0.01)

No Rounding Rate is not rounded. 5.123

Round Up Rate is rounded to the nearest value greater than the Raw rate with the specified precision.

5.13

Round Down Rate is rounded to the nearest value less than the Raw rate with the specified precision.

5.12

Truncate Rate is truncated to whole value. 5.000

Round Nearest Rate is rounded to nearest value to the Raw rate with the specified precision.

5.12

ConditionAbsolute Value (Raw Rate - Current RateC ) < Rate Change Minimum

Adjustment if True Raw Rate = Current RateC

Page 535: fe115trm

Cash Flow Calculation Process

Cash Flow Calculations 9-41

Oracle Proprietary, Confidential Information - Use Restricted by Contract

The fully indexed rates are updated after rate change minimums and rounding codes are applied, and before caps and floors are applied to the raw rate.

7. Calculate tease effect financial elements for instruments in a tease period.

For instruments in a tease period, determined by tease end date > current date in modeling horizon, no adjustments are made to the current rate. However, the effect of the tease is recorded in two financial elements that are used at the next payment to calculate the income effect of the tease. On a tease record, the processing of a reprice event is complete at this point.

8. Check periodic caps and floors.

The customer rate cannot change by more than the amount specified by the periodic change limits (periodic floor and periodic cap). If the raw customer rate would effect a change to the current customer rate that exceeds the periodic change limitations, the current customer rate is adjusted only by the amount specified by the periodic change limit. If periodic limits are applied to the raw customer rate, then this adjustment occurred should be recorded in the periodic cap/floor financial elements.

Customer RateDefinition Floating Net Rate Fixed Net Rate

Gross Rate Fully Indexed RateG = Raw RateCFully Indexed RateN = Raw RateG - MarginG + MarginN

Fully Indexed RateG = Raw RateCFully Indexed RateN = Current RateN

Net Rate Fully Indexed RateN = Current RateN

Fully Indexed RateN = Raw RateC

Financial Element Calculation

tease rate Fully Indexed RateC - Raw RateC

tease balance Current Balancem

Decreasing RateEnvironment Increasing Rate Environment

Condition Raw RateC < Current RateC and Current RateC - Raw RateC > periodic floor

Raw RateC > Current RateC and Raw RateC - Current RateC > periodic cap

Page 536: fe115trm

Cash Flow Calculation Process

9-42 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

9. Check lifetime caps and floors.

The customer rate cannot be greater than the lifetime cap or less than the lifetime floor. If the raw customer rate fails either of these conditions, the raw customer rate is set equal to the appropriate value.

10. Update current rates.

11. Update next repricing date.

The next reprice date is rolled forward in preparation for the next repricing event. If the adjustable type code is “Adjustable”, the next reprice date is calculated as:

Next reprice date = Current reprice date + reprice frequency

If the adjustable type code is “Floating” or “Variable,” the next reprice date is set equal to the first date in the next modeling bucket.

12. Trigger payment recalculation.

If the amortization type is a standard conventional amortization, the current payment on the instrument data is updated based on the new rate. (See payment Calculation Event.)

Adjustment if True Raw RateC = Current RateC - periodic floor

Raw RateC = Current RateC + periodic cap

Decreasing RateEnvironment Increasing Rate Environment

Condition Raw RateC > Rate Floor Life Raw RateC > Rate Cap Life

Adjustment if True Raw RateC = Rate Floor Life Raw RateC = Rate Cap Life

Customer Rate = Gross Rate Current RateG = Raw RateCCurrent RateN = Raw RateC - MarginG + MarginN

Customer Rate = Net Rate Current RateN = Raw RateC

Decreasing RateEnvironment Increasing Rate Environment

Page 537: fe115trm

Additional Processing Events

Cash Flow Calculations 9-43

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Additional Processing Events

Deferred Amortization Calculation Steps1. Determine the flat rate scenario.

a. The process may already have a flat rate scenario. If the change from the base rates is zero for all buckets and all interest rate codes, then there is a flat rate scenario.

b. If there is not a flat rate scenario, then a flat rate scenario is created. This scenario is created by reading in the base rates and applying a zero change for all buckets.

2. Determine if a record needs to have deferred amortization records calculation applied to it.

Deferred amortization records are instrument or new business records where the column Deferred_cur_bal is not equal to zero.

3. Calculate cash flows for instrument from as-of-date until maturity using the flat rate scenario.

a. If one of the scenarios within the process is a flat rate scenario, further cash flows do not need to be generated. The cash flows from the flat rate scenario can be used.

b. If the instrument is not rate-sensitive, further cash flows do not need to be generated. The cash flows from any scenario can be used.

c. In all other cases, cash flows in a flat rate scenario must be generated.

4. Calculate the internal rate of return.

a. Calculate the market value of the instrument using the coupon rate, the cur_net_rate, as the discount rate from as-of-date to maturity date. The principal and interest cash flows from the as-of-date to the maturity date should be used in all cases.

b. Use the following simple market value calculation:

( )Market Value =

+=∑ CF

c

n

nn

N

11

Page 538: fe115trm

Additional Processing Events

9-44 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

c = coupon rate (cur_net_rate) from instrument record

n = payment number

N = remaining number of payments

CFn= cash flow at payment n = total runoff plus interest cash flow net

c. Calculate the duration of the instrument using the same discount rate.

d. Find the amount necessary to add to the coupon rate to more closely approximate the internal rate of return, using the following formula:

e. Using a new discount rate equal to the coupon plus the rate change calculated above, recalculate the market value and duration.

f. Repeat steps 4 and 5 until the rate change is very small (less than 0.001% in absolute value). The discount rate used when this state is reached is the internal rate of return. It is negative if:

5. Calculate the spread to use in each scenario.

a. The calculation is:

( )

( )

Duration = +

+

+=

=

CF n

cCF

c

n

nn

N

n

nn

N

*

1

1

11

1

( )Rate Change =

MV ParBal Deferred

duration MV

− +*

CF ParBal Deferrednn

N

< +=∑

1

( )spread = -IRR c

Page 539: fe115trm

Additional Processing Events

Cash Flow Calculations 9-45

Oracle Proprietary, Confidential Information - Use Restricted by Contract

b. The value for the coupon, c, in the formula above is the cur_net_rate after the first true repricing event. A true repricing event is a non-tease repricing event.

c. If the instrument is fixed rate, the cur_net_rate from the record is sufficient.

6. Calculate the deferred financial elements in each bucket and each scenario.

a. The deferred runoff must be calculated first.

For each modeling bucket, calculate the amount of total income to be recognized as:

a = accrual factor, see description below

cb = Average Rate

ParBal = Average Balance

Deferred = Deferred End Balance in previous bucket, Deferred_cur_bal in bucket 1

InterestAccrued = Interest Accrual Net for Current Bucket

■ The value “a” in the formula above is the accrual factor associated with that bucket. The accrual factor is the portion of the year that the modeling bucket represents. This calculation varies according to the accrual basis code associated with the instrument.

■ The financial element 140, Average Balance should be used for ParBal is the formula above.

■ The financial element 160, Average Rate should be used for cb in the formula above.

■ In the bucket in which the instrument matures, if this bucket falls within the modeling horizon, the deferred runoff should be set equal to the remaining

( )Total Income = ParBal Deferredc spread

a

b+ +*

Total Income = +DeferredRunoff InterestAccrued

( )Deferred Runoff = +ParBal Deferredc spread

aInterestAccruedb*

+−

Page 540: fe115trm

Accounting for Exchange Rate Fluctuations

9-46 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

deferred balance. This is to ensure that the entire deferred balance is run off by the maturity date.

b. Calculate the change in the deferred balance as:

c. Assume that the average deferred balance is equal to the beginning deferred balance.

Accounting for Exchange Rate FluctuationsThe following discussion applies to Risk Manager currency-based processing. As mentioned earlier in this chapter, currency-based processing occurs when a Risk Manager scenario-based Process ID is set up with functional dimensions of either Product/Currency or Product/Organizational Unit/Currency.

Definition of Currency MethodsThe effect of currency fluctuations on balance sheet accounts can be modeled in Risk Manager in one of three ways. In the Leaf Characteristics ID, the user selects one of the following currency accounting methods for each Product/Currency combination. If no method is specified, the Temporal method is used:

Temporal Method Currency gains/losses on the outstanding balance are reflected in the income statement each reporting period. Because currency effects have already been reflected in the income statement, no additional translation adjustment accounts are necessary.

Current Rate Method

The reported balance at the end of the period reflects the value at the current exchange rate. An Accumulated Translation adjustment account is maintained, which stores the accumulated unrealized gains/losses on principal as a contra-equity account on the balance sheet. When principal payments are made, the realized gain/loss is recognized in the income statement and the contra-equity account is adjusted appropriately.

Historical Basis Method

Balances are carried at the historical cost. The effect of exchange rate fluctuation on cash flows is recorded as a realized gain/loss in the income statement when received.

( )Deferred Balance = Deferred Balance - Deferred Runoffend beginning

Page 541: fe115trm

Accounting for Exchange Rate Fluctuations

Cash Flow Calculations 9-47

Oracle Proprietary, Confidential Information - Use Restricted by Contract

For auditing purposes, the currency financial elements are retained separately for each local currency. Realized and unrealized gain/loss entries are recorded in a series of financial elements, as described in the following chart.

Terms used in this chart:

■ Current Exchange Rate: Rate in effect for that particular modeling bucket.

■ Previous Exchange Rate: Rate in effect for the previous modeling bucket.

■ Original Exchange Rate: Rate in effect at the origination of the instrument.

See the Financial Element Calculations chart for a complete listing of financial elements used for cash flow results.

Examples of Exchange Rate FluctuationsThe following example illustrates the differences among the currency accounting methods.

Code Description Method(s) Purpose Calculation

950 Accumulated Translation Amount

Current Rate

Accumulated effect of unrealized currency gain/loss on balances at the end of each period.

(FE100 Ending Balance) * [(1/Current Exchange Rate) - (1/Original Exchange Rate)]

465 Total Currency Gain/Loss (Principal)

Temporal Effect of exchange rate fluctuation on the existing balance over the current period.

(FE60 Beginning Balance) * [(1/Current Exchange Rate) - (1/Previous Exchange Rate)]

475 Realized Currency Gain/Loss (Principal)

Current Rate and Historical Basis

Actual change in value of the principal cash flow due to exchange rate fluctuation.

(FE210,212 Total Runoff) * [(1/Current Exchange Rate) - (1/Original Exchange Rate)]

485, 486 or 487

Realized Currency Gain/Loss (Interest-- Net, Gross, or Transfer Rate)

All methods

Actual change in value of the interest cash flow due to exchange rate fluctuation.

Interest Cash Flow * [(1/Current Exchange Rate) - (1/Original Exchange Rate)]

Page 542: fe115trm

Accounting for Exchange Rate Fluctuations

9-48 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

This is a United States Bank (USD) with holdings in Japan (JPY) and Germany (DEM).

In this example, the Japanese Yen holdings have decreased their US Dollar value since origination, and the German Mark holdings have increased their US Dollar value since origination. One month into the forecast, the Yen-to-Dollar exchange rate is forecast at 130 and the Deutschmark-to-Dollar exchange rate is forecast at 1.60.

■ Temporal Method

If the Temporal method is used, the change in value should be reflected in net income and passed through to retained earnings. The change in value from the current USD balances to the USD balance in Month 1 is reflected as a realized gain. In this case, the currency gain account would reflect a net amount of $83.92 for Month 1.

That is, (see Financial Element 465) the formula for total gain/loss on principal is:

Beginning Balance * [(1/current exchange rate) - (1/previous exchange rate)]

■ Current Rate Method

If we apply the Current Rate method, the Accumulated Translation Amount, a separate contra-equity account, reflects a total of $74.79. This is derived from the accumulated difference between the USD balance from origination to Month 1 of the forecast. In this case, no principal payments have been made; USD value of Yen holdings have decreased in value since origination, but the USD

Historical Rate

(at origination)

Current Rate

(at As of Date) Forecast (Month 1)

Local Balance

Exchange Rate

USD Balance

Exchange Rate

USD Balance

Exchange Rate

USD Balance

JPY 100,000 120 JPY/USD

$833.33 133 JPY/USD

$751.88 130 JPY/USD

$769.23

DEM 2,000 1.80 DEM/USD

$1,111.11 1.69 DEM/USD

$1,183.43 1.60 DEM/USD

$1,250.00

JPY currency change $ 17.35

DEM currency change $66.57

Currency gain for Month 1 $83.92

Page 543: fe115trm

Accounting for Exchange Rate Fluctuations

Cash Flow Calculations 9-49

Oracle Proprietary, Confidential Information - Use Restricted by Contract

value of Deutschmark holdings have appreciated more, resulting in a net increase in value.

That is, (see Financial Element 950) the formula for unrealized gain/loss on principal is:

Ending Balance * [(1/current exchange rate) - (1/original exchange rate)]

■ Historical Basis Method

All balances are carried at the historical rate, so there is no need for an accumulated translation account. Currency gains/losses are realized when cash flows are received.

Effect of Exchange Rate Forecasts on Cash Flows

Let’s modify our example slightly, to show a payment made in Month 1. Amortization of principal and payments of interest must reflect the effect of changes in the exchange rate.

All methods treat interest payments in the same manner: They are valued when received and corresponding gains or losses are then realized (see Financial Elements 485-487). Therefore, the following discussion focuses on currency accounting for principal amortization. In this example, both the Yen and Deutschmark accounts have runoff equal to 5% of the outstanding balances.

■ Temporal Method

In the Temporal method, the effect of exchange rate fluctuations on the balance sheet is reflected at the period end based on the balance at the beginning of the

JPY Accumulated Translation Amount - $64.10

DEM Accumulated Translation Amount $138.89

Accumulated Translation $74.79

Local Currency Runoff Amount

USD Runoff Amount (historical rate)

USD Runoff Amount (current rate)

Realized Gain/Loss on Principal

JPY 5,000 120 JPY/USD

$41.67 130 JPY/USD

$38.46 - $3.21

DEM 100 1.80 DEM/USD

$55.56 1.60 DEM/USD

$62.50 $6.94

Page 544: fe115trm

Market Value Calculation

9-50 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

period. This method requires no additional recognition of gain/loss on principal because it has already been recognized on the beginning balance (see Financial Element 465, discussed earlier).

■ Current Rate Method

In the Current Rate method, the Accumulated Translation Balance (Financial Element 950) should reflect only the change in value of the remaining balance, based on the current and historical exchange rates.

[JPY 95,000 / (130 JPY/$)] – [JPY 95,000 / (120 JPY/$)] =

$730.77 - $791.67 = -$60.90... or compute as:

Ending Balance * [(1/current exchange rate) - (1/original exchange rate)]

In addition to the Accumulated Translation Balance, a realized currency gain/loss should be reflected in the income statement. Realized currency gain/loss transactions reflect the change in currency from the time of origination of an instrument to the time of cash flow repayment, when the initial balance loaned/invested/borrowed must be translated into the reporting currency. At each payment, the realized gain/loss on the principal cash flows (scheduled payments, maturing balances, and prepayments) are calculated based on the amount of the cash flow and the change in exchange rate. That is, (see Financial Element 475) the formula for realized gain/loss on principal is:

Principal Cash Flow * [(1/current exchange rate) - (1/original exchange rate)]

■ Historical Basis Method

When payments are made, Historical Basis accounts should also reflect the realized gain/loss on currency in the income statement. The method used should be the same as the method described for the Current Rate method; that is (see Financial Element 475), the formula for realized gain/loss on principal is:

Principal Cash Flow * [(1/current exchange rate) - (1/original exchange rate)]

Market Value Calculation

Cash Flow InputsInterest Cash Flow (Net, Gross, or Transfer Rate)

Total Runoff

Repricing Balance

Page 545: fe115trm

Market Value Calculation

Cash Flow Calculations 9-51

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Deferred Runoff

Interface InputsDiscount Rates ID

Forecast Rates ID

Market Value Calculation Steps1. Define components of cash flow.

Within the interface, you must define what components make up the cash flow that is discounted to derive the market value. The standard components of a cash flow are the following:

■ Interest Cash Flow Net

■ Scheduled Principal Runoff

■ Principal At Maturity

■ Prepayments

Choosing special options in the Discount Rates ID adjusts the cash flow definition in the following manner:

Future Originations AdjustmentInstruments that originate after a designated start date can be included in the market value for that start date if the issue date is less than or equal to the start date. In this case, the negative flow of funds on the origination date is considered to be a cash flow for discounting purposes.

2. Determine discount rate for cash flow.

Within the Discount Rates ID, you specify an IRC and a discount method. The methodology determines whether current or forecasted rates are referenced and which yield curve point from the chosen IRC is used.

Cash Flow Switches Effect on Cash Flow

Interest Cash Flow Value interest component of cash flow only

Mature At Reprice Value instrument as if it matured on the first repricing date after the start date

Page 546: fe115trm

Market Value Calculation

9-52 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

3. Calculate market value of cash flow.

For the market value of an instrument as of a particular start date, the present value of each cash is calculated for all cash flows that occur after the start date, using the appropriate discount factor.

4. Treat reprice date as maturity where necessary.

For repricing instruments, the cash flows are evaluated from the start date up to the reprice date, effecting a maturity on the reprice date for duration calculation. For market values, this method is used if the “Mature At Reprice” option is enabled in the Discount Rates interface.

If this methodology is used and the reprice date falls mid-payment, an extra interest cash flow must be calculated. This interest cash flow represents the portion of the next interest cash flow that applies from the last payment date prior to the reprice date and the reprice date.

5. Sum market values of cash flows.

The market value per payment are summed to arrive at a total market value number.

Total Market Value =

6. Calculate duration of instrument.

The duration of the instrument is calculated by weighting the market value of each payment by time.

Total Duration =

Discount Method Date of IRC Yield Curve Point

Spot Input not applicable not applicable

Spot IRC start date payment date - start date

Forecast Original Term payment date fixed rate: original term adjustable: reprice frequency

Forecast Remaining Term payment date payment date - start date

( )MVcf

n=1

n

( )MV t

MV

cf

n=1

n

cf

n=1

n pmtsyear

∗∑

∑ ∗

Page 547: fe115trm

Consolidation of Results

Cash Flow Calculations 9-53

Oracle Proprietary, Confidential Information - Use Restricted by Contract

7. Update instrument data.

Within the interface, you can write the market value for a specified start date back to the instrument table. If this option has been selected, the market value price is written to the Market Value price column in the instrument table. To calculate the price, the calculated market value is divided by the instrument’s balance as of the specified start date.

Market Value price = Total Market Value / Balancet

Consolidation of ResultsIf the Risk Manager Process ID optionally specifies “Consolidate to Reporting Currency,” a cross-currency consolidation is performed. The local currency results are consolidated into a single reporting currency based on the historical and forecast exchange rates. Once translated into the reporting currency, common products are aggregated and output to a separate table. For example, if the Process ID is identified by Sys_ID_Num 99999, results would be held as follows:

The currency accounting method determines which exchange rates are used for the translation of each Financial Element. Typically, forecast exchange rates are used for the Temporal and Current Rate methods, and original exchange rates are used for the Historical Basis method. For the Temporal and Current Rate methods, some exceptions apply:

Results Table(s) Calculations

Detailed results

Res_Dtl_99999

OFSA_Result_Master, identified by Result_Sys_ID

The instrument is processed in its local currency and all results are accumulated in the local currency.

Currency gain/loss is computed based on currency method defined for Product/Currency.

Consolidated results

Cons_Dtl_99999

OFSA_Consolidated_Master, identified by Result_Sys_ID

Translates cash flows in each modeling bucket; consolidates across currencies.

Page 548: fe115trm

Currency-Based Gap Modeling

9-54 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

■ Deferred Balances

Deferred balances are balances that reflect prepaid amounts, that is prepaid fees, amortized costs, premiums or discounts. Because the cash flows associated with these balances have already occurred, there is no currency risk associated with them. Therefore, these financial elements are reflected at cost, at the exchange rate at the time of origination.

■ Interest Accruals

The standard historical interest accrual financial element is reflected at the original exchange rate because the currency gain/loss account already reflects the change in interest due to currency. However, in order to calculate yields consistently with the average balance, a separate financial element is calculated for the current basis interest accrual; this reflects the interest accrual based on the current bucket exchange rate.

■ Gap Financial Elements

See “Currency-Based Gap Modeling” for further details.

For Consolidated Master results: Deferred balances are translated using the exchange rate in effect when the instrument was originated; all other balances are translated using the exchange rate in effect at the As-of-Date or future Start Date:

■ As-of-Date values use the actual exchange rate in effect on the As-of-Date.

■ Future originations and Dynamic Start Date values respectively use the forecast exchange rate in effect on the future origination date or Start Date.

If no exchange rate is found, the cash flow engine logs an error message and set the exchange rate equal to 1.

Currency-Based Gap ModelingThe processing steps depend on the relationship between the gap and cash flow modeling buckets. Because modeling buckets may differ between the cash flow results and the gap results and exchange rate forecasts are defined for cash flow modeling buckets only, additional processing steps are employed when there are bucket differences.

■ “Compatible” (consistent) gap and cash flow buckets

If cash flow modeling buckets and gap buckets are equal, or if multiple gap modeling buckets can evenly fit into one cash flow modeling bucket, the forecast exchange rates for the cash flow modeling buckets are used.

Page 549: fe115trm

Detail Cash Flow Data

Cash Flow Calculations 9-55

Oracle Proprietary, Confidential Information - Use Restricted by Contract

■ “Unevenly-Overlapping” gap and cash flow buckets

If cash flow modeling buckets are smaller than gap modeling buckets or if their respective start and end dates do not coincide, the engine must derive the forecast exchange rates for the gap modeling buckets.

In this special case, the cash flow engine calculates a time-weighted exchange rate forecast for the gap bucket. Bear in mind that with a time-weighted rate, the consolidated gap results may be different than the consolidated cash flow results, even though they came from the same local balance. For example, a cash flow of $10 at an exchange rate of 1 and a cash flow of $20 at an exchange rate of 2 sums up to a translated cash flow of 20 (10 divided by 1, plus 20 divided by 2). If the weighted-average exchange rate is calculated as 1.5, the translated cash flow equals 20 (10 plus 20, divided by 1.5).

We recommend that consistent modeling and gap buckets be used in multicurrency simulations, to eliminate potential data inconsistency issues.

Detail Cash Flow Data

Column Name Column Description Column Type Event use

ID_NUMBER Unique identifier. static I

COMMON_COA_ID Leaf value used to determine financial account type of detail instrument.

static I

ADJUSTABLE_TYPE_CD Determines whether reprice occurs, and, if it occurs, whether it occurs according to reprice dates or bucket dates.

static R

ACCRUAL_BASIS_CD Method of accrual used in determining the rate per payment.

static P

AMRT_TERM & AMRT_TERM_MULT

Determines time over which principal is amortized; used in payment recalculation.

static P, PC

AMRT_TYPE_CD Determines method for amortizing principal. Used to match to payment pattern data.

static PC

CUR_PAYMENT Amount of current payment, meaning depends on amortization type code.

dynamic P, PC

Page 550: fe115trm

Detail Cash Flow Data

9-56 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

CUR_PAR_BAL Balance on which principal runoff, interest cash flows, deferred runoff are based.

dynamic P, PC, PP

CUR_NET_RATE Interest rate than the financial institution pays/receives.

dynamic P, R, PC, PP

CUR_GROSS_RATE Interest rate that the customer pays/receives; used in determining payments and prepayments.

dynamic P, R, PC, PP

DEFERRED_CUR_BAL Holds current unamortized premium, discount, fees, costs, an so on.

dynamic D

ISSUE_DATE Date instrument is recognized as “on-the-books”. Used in dynamic gap and market value calculations.

I

INTEREST_RATE_CD Code value that determines the forecasted rate to base repricing on.

static R

INT_TYPE Determines how interest is calculated and accrued.

static P

INSTR_TYPE_CD Used to match a schedule instrument record to its scheduled payment dates and amounts.

static I

LAST_PAYMENT_DATE Date of last payment before the as-of-date, used to calculate days in first payment for interest in arrears instruments and to calculate accruals prior to first payment in interest in advance instruments.

static P

LRD_BALANCE Balance as of last reprice date static I

LAST_REPRICE_DATE Last date instrument rate repriced. static I

MARGIN Pricing spread added to the IRC value for current net rate.

static R

MATURITY_DATE Date of final payment. static P, PP

NEG_AMRT_AMT Amount of current balance due to negative amortization of interest payments.

dynamic P

NEG_AMRT_EQ_DATE Date that instrument fully re-amortizes, irrespective of payment caps.

event trigger PC

Column Name Column Description Column Type Event use

Page 551: fe115trm

Detail Cash Flow Data

Cash Flow Calculations 9-57

Oracle Proprietary, Confidential Information - Use Restricted by Contract

NEG_AMRT_EQ_FREQ &

NEG_AMRT_EQ_MULT Frequency of neg am equalization events. 0 denotes neg-am equalization never occurs.

static PC

NEG_AMRT_LIMIT Maximum amount that instrument can negatively amortize, stored as a percent of original balance.

event trigger PC

NEXT_PAYMENT_DATE Date of next payment. event trigger P, PC

NEXT_REPRICE_DATE Date of next rate change. event trigger R, PP

ORG_PAYMENT_AMT Payment used for cash flow transfer pricing of fixed rate records. Used by pattern instruments to calculate payment amount.

static PC,I

ORG_PAR_BAL Used in conjunction with neg am limit to determine the maximum amount that instrument can negatively amortize. Used for Rule of 78ís schedules. Used by pattern instruments to calculate payment amount.

static PC,I

ORG_TERM & ORG_TERM_MULT

Time from origination date to maturity date. Used in determining whether an instrument balloons for payment recalculation purposes.

static PC,PP

ORIGINATION_DATE Determines age of instrument for prepayments. Used in calculating remaining amortization term. Used in determining payment number in pattern records.

static PP,PC

PERCENT_SOLD Determines net balance. static I

PMT_ADJUST_DATE Date of next scheduled payment recalculation for neg am instruments.

event trigger PC

PMT_CHG_FREQ & PMT_CHG_FREQ_MULT

Frequency of regular payment change calculation for neg-am instruments only. 0 denote payment never changes.

static PC

PMT_DECR_CYCLE Maximum percent payment can decrease from its previous value.

static PC

Column Name Column Description Column Type Event use

Page 552: fe115trm

Detail Cash Flow Data

9-58 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

PMT_DECR_LIFE Minimum payment amount; stored as a percent of original payment amount; can be overwritten on ngam equalization dates.

static PC

PMT_FREQ & PMT_FREQ_MULT

Frequency of payments; should be set equal to original term if instrument is bullet (principal and interest at maturity date) or account type of other asset, other liability, interest income, interest expense, non-interest income, non-interest expense.

static P, PC, PP

PMT_INCR_CYCLE Maximum percent payment can increase from previous value.

static PC

PMT_INCR_LIFE Maximum payment amount; stored as a percent of original payment amount; can be overwritten on ngam equalization dates.

static PC

RATE_CAP_LIFE Maximum value to which current rate can reprice.

static R

RATE_CHG_MIN Minimum amount that current rate must change before a rate change occurs.

static R

RATE_CHG_RND_CD Type of rounding to be applied to current rate.

static R

RATE_CHG_RND_FAC Precision of rounding; 0 denotes no rounding.

static R

RATE_DECR_CYCLE Maximum amount rate can decrease within a repricing period.

static R

RATE_FLOOR_LIFE Minimum value to which current rate can reprice

static R

RATE_INCR_CYCLE Maximum amount rate can increase within a repricing period.

static R

RATE_SET_LAG & RATE_SET_LAG_MULT

Time lag used when repricing. Used to determine rate set date on reprice event.

static R

REMAIN_NO_PMTS_C Number of payments left to be made on the instrument from the As of Date to the maturity date.

dynamic P, PC

REPRICE_FREQ & REPRICE_FREQ_MULT

Frequency that instrument reprices; 0 denotes fixed rate.

static R, PP

Column Name Column Description Column Type Event use

Page 553: fe115trm

Rule of 78’s Example

Cash Flow Calculations 9-59

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Event Use Code Values

Rule of 78’s ExampleExample: 12 month loan with current payment of $93.33 and original balance = $1,000.00

1. Sum all principal and interest payments made over the life of the instrument:

ORG_PAYMENT_AMT Payment used for cash flow transfer pricing of fixed rate records.

static I

TEASER_END_DATE Date that teased instrument begins repricing.

event trigger R, PP

MARGIN_GROSS Pricing spread added to IRC for current gross rate.

static R

MARGIN_T_RATE Pricing spread added to IRC for current transfer rate.

static R

T_RATE_INT_RATE_CD Interest rate code used for determining transfer rate.

static R

NET_MARGIN_CODE Defines relationship between gross rate and net rate; 0 denotes floating net rate; 1 denotes constant net rate.

static R

I = Initialization of record

P = Payment

PC = Payment Recalculation

PP = Prepayment

R = Reprice

D = Deferred amortization

∑cash flow = current payment * total number of payments= $93.33 * 12 = $1,120.00

Column Name Column Description Column Type Event use

Page 554: fe115trm

Rule of 78’s Example

9-60 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

2. Determine total amount of interest paid over the life of the instrument

3. Sum the payment numbers.

4. Calculate principal and interest amount at each payment.

∑ interest = ∑ cash flow - original par balance= $1,000.00 - $1,120.00 = $120.00

∑ pmts = total no. payments * (total no. payments + 1)/2= 12 * 13/2= 78

interest = ∑ interest * (payments remaining/∑ pmts)

principal = current payment - interest

MonthInterestCalculation Interest Principal

RemainingBalance

1 12/78 * 120 $18.46 $74.87 $925.13

2 11/78 * 120 $16.92 $76.41 $848.72

3 10/78 * 120 $15.38 $77.95 $770.77

4 9/78 * 120 $13.85 $79.48 $691.29

5 8/78 * 120 $12.31 $81.02 $610.27

6 7/78 * 120 $10.77 $82.56 $527.71

7 6/78 * 120 $9.23 $84.10 $443.61

8 5/78 * 120 $7.69 $85.64 $357.97

9 4/78 * 120 $6.15 $87.18 $270.79

10 3/78 * 120 $4.61 $88.72 $182.07

11 2/78 * 120 $3.08 $90.25 $91.82

12 1/78 * 120 $1.54 $91.79 $0.00

Page 555: fe115trm

Cash Flow Dictionary 10-1

Oracle Proprietary, Confidential Information - Use Restricted by Contract

10Cash Flow Dictionary

Cash flow processing is executed from Oracle Risk Manager and Oracle Transfer Pricing. This processing accesses specific fields from instrument tables to perform cash flow calculations.

This chapter includes a list of columns required for this processing as well as a list of columns required to run the Oracle Financial Services Applications (OFSA) cash flow edits. The OFSA cash flow edits are executed from Oracle Balance & Control and are used to correct data in the columns used in OFSA cash flow processing.

In order for OFSA cash flow processing to generate appropriate results, the data within the accessed instrument tables must be appropriate and consistent. The OFSA cash flow edits function provides a measure of validation for this data. How-ever, the cash flow edits function cannot ensure that the input data from the instru-ment tables is correct and faithfully reflects reality. Therefore, this chapter contains detailed information necessary for correct data population, including field defini-tions, formulas used in the cash flow process calculations, and recommended default values for the cash flow processing fields.

Unless otherwise stated, when calculations refer to frequency or term fields in this chapter, the implication is that both the frequency (or term) and its associated multi-plier field are used. For example, if PMT_FREQ is used in a formula, it refers to PMT_FREQ and PMT_FREQ_MULT to determine the true payment frequency.

Note: Both lists overlap for a majority of the columns.

Page 556: fe115trm

Cash Flow Columns

10-2 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Cash Flow ColumnsThis section describes in detail the cash flow processing and cash flow edit columns for OFSA.

Cash Flow Columns ListedThe OFSA cash flow columns are listed in table format in this section along with information on whether they are associated with cash flow processing, cash flow edits or both.

Column Name Cash Flow Processing Cash Flow Edits

ACCRUAL_BASIS_CD Yes Yes

ADJUSTABLE_TYPE_CD Yes Yes

All Leaf Fields Yes No

AMRT_TERM Yes Yes

AMRT_TERM_MULT Yes Yes

AMRT_TYPE_CD Yes Yes

AS_OF_DATE Yes Yes

COMPOUND_BASIS_CD Yes Yes

CUR_BOOK_BAL Yes Yes

CUR_GROSS_RATE Yes Yes

CUR_NET_PAR_BAL_C No Yes

CUR_NET_RATE Yes Yes

CUR_OAS Yes No

CUR_PAR_BAL Yes Yes

CUR_PAYMENT Yes Yes

CUR_STATIC_SPREAD Yes No

CUR_TP_PER_ADB Yes No

DEFERRED_CUR_BAL Yes Yes

DEFERRED_ORG_BAL Yes Yes

HISTORIC_OAS Yes No

HISTORIC_STATIC_SPREAD Yes No

Page 557: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-3

Oracle Proprietary, Confidential Information - Use Restricted by Contract

ID_NUMBER Yes Yes

IDENTITY_CODE Yes Yes

INSTRUMENT_TYPE_CD Yes No

INT_TYPE Yes Yes

INTEREST_RATE_CD Yes Yes

ISSUE_DATE Yes Yes

LAST_PAYMENT_DATE Yes Yes

LAST_REPRICE_DATE Yes Yes

LRD_BALANCE Yes Yes

MARGIN Yes No

MARGIN_GROSS Yes No

MARGIN_T_RATE Yes No

MARKET_VALUE_C Yes No

MATCHED_SPREAD_C Yes No

MATURITY_DATE Yes Yes

NEG_AMRT_AMT Yes No

NEG_AMRT_EQ_DATE Yes Yes

NEG_AMRT_EQ_FREQ Yes Yes

NEG_AMRT_EQ_MULT Yes Yes

NEG_AMRT_LIMIT Yes Yes

NET_MARGIN_CD Yes Yes

NEXT_PAYMENT_DATE Yes Yes

NEXT_REPRICE_DATE Yes Yes

ORG_BOOK_BAL No Yes

ORG_MARKET_VALUE Yes No

ORG_PAR_BAL Yes Yes

ORG_PAYMENT_AMT Yes Yes

ORG_TERM Yes Yes

Column Name Cash Flow Processing Cash Flow Edits

Page 558: fe115trm

Cash Flow Columns

10-4 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

ORG_TERM_MULT Yes Yes

ORIGINATION_DATE Yes Yes

PERCENT_SOLD Yes Yes

PMT_ADJUST_DATE Yes Yes

PMT_CHG_FREQ Yes Yes

PMT_CHG_FREQ_MULT Yes Yes

PMT_DECR_CYCLE Yes Yes

PMT_DECR_LIFE Yes Yes

PMT_FREQ Yes Yes

PMT_FREQ_MULT Yes Yes

PMT_INCR_CYCLE Yes Yes

PMT_INCR_LIFE Yes Yes

PRIOR_TP_PER_ADB Yes No

PMT_SET_LAG No No

PMT_SET_LAG_MULT No No

RATE_CAP_LIFE Yes Yes

RATE_CHG_MIN Yes Yes

RATE_CHG_RND_CD Yes Yes

RATE_CHG_RND_FAC Yes Yes

RATE_DECR_CYCLE Yes Yes

RATE_DECR_LIFE Yes No

RATE_FLOOR_LIFE Yes Yes

RATE_INCR_CYCLE Yes Yes

RATE_INCR_LIFE Yes No

RATE_SET_LAG Yes Yes

RATE_SET_LAG_MULT Yes Yes

REMAIN_NO_PMTS_C Yes Yes

REMAIN_TERM_MULT_C No No

Column Name Cash Flow Processing Cash Flow Edits

Page 559: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-5

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Field DefinitionsThis section describes, in detail, the usage of these columns. For each column, the following information is provided:

■ Column name as it appears in the appendix (upper and lower case) and as it appears in the database (upper case with underscores).

■ The affected OFSA products are affected (Risk Manager or Transfer Pricing).

■ Data verification requirements and suggested defaults.

Accrual Basis Code (ACCRUAL_BASIS_CD)

Definition The basis on which the interest accrual is calculated.

Module UsageOracle Risk Manager and Oracle Transfer Pricing cash flow methodologies use ACCRUAL_BASIS_CD for calculating interest income (financial element 430).

The accrual basis values are represented by code values as indicated below:

REPRICE_FREQ Yes Yes

REPRICE_FREQ_MULT Yes Yes

T_RATE_INT_RATE_CD Yes Yes

TEASER_END_DATE Yes Yes

TRAN_RATE_REM_TERM Yes No

TRANSFER_RATE Yes No

Code Value Accrual Basis

1 30/360

2 Actual/360

3 Actual/Actual

4 30/365

5 30/Actual

Column Name Cash Flow Processing Cash Flow Edits

Page 560: fe115trm

Cash Flow Columns

10-6 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Oracle Risk Manager and Oracle Transfer Pricing cash flow methodologies refer-ence INT_TYPE in determining whether interest payments are made in arrears or in advance.

If INT_TYPE = 1, the record is considered interest in arrears. Interest payments are paid at the end of the payment period along with the principal payments. The cal-culations detailed below assume that the interest is to be calculated as interest in arrears.

If INT_TYPE = 2, the record is considered interest in advance. See Interest Type Code (INT_TYPE) for a description of the formula used to calculate interest in advance.

For calculation purposes, the accrual basis codes can be grouped in the following manner.

1. If the ACCRUAL_BASIS_CD is 30/360, 30/365 or 30/Actual, OFSA uses the following formula to calculate interest income on a payment date:

Previous Periods Ending Balance * Cur Net Rate/100 * PMT_FREQ [number of months] * x * (Next Payment Date - Last Payment Date)/(Next Payment Date - Calculated Last Payment Date)

Replace ’x’ with one of the three accrual basis values from above.

6 Actual/365

Note: The calculations below assume a monthly payment frequency.

Note: The actual denominator refers to the actual number of days in the year. Other than leap years, this equals 365 days. Also note that the Calculated Last Payment Date is the Next Payment Date rolled back by the number of months in PMT_ FREQ.

Code Value Accrual Basis

Page 561: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-7

Oracle Proprietary, Confidential Information - Use Restricted by Contract

The final portion of the above calculation,

(Next Payment Date - Last Payment Date)/(Next Payment Date - Calculated Last Payment Date)

is a ratio that calculates the percentage of the payment frequency period that should be applied to calculate the Interest Income amount. This adjustment is necessary because, for the first forecasted payment, the Last Payment Date is not necessarily equal to the Calculated Last Payment Date. This would be the case of a stub or extended payment at the origination or maturity of a record.

If the Last Payment Date is precisely equal to the Calculated Last Payment Date, then the ratio is equal to 1 and therefore does not impact the Interest Income calculation.

2. If the ACCRUAL_BASIS_CD is Actual/365, Actual/Actual, or Actual/360, OFSA uses the following formula to calculate interest income on a payment date:

Previous Period’s Ending Balance * Cur Net Rate/100 * (Next Payment Date - Last Payment Date)/y

Replace ’y’ with the denominator of one of the three accrual basis values from above.

The above two equations represent Interest in Arrears income calculations. The interest in advance calculations are indicated in the INT_TYPE section.

Data Verification Requirements and Suggested Defaults■ Must be equal to values 1 - 6.

■ Suggested default depends on product characteristics of institution’s data Default to the most common ACCRUAL_BASIS_CD for the product leaf.

Note: The actual numerator refers to the actual number of days in the current month.

Note: If a compounding method has been chosen, OFSA derives the compounded rate before calculating the above interest income amounts. See Compounding Basis Code (COMPOUND_BASIS_CD) for further information.

Page 562: fe115trm

Cash Flow Columns

10-8 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

■ If AMRT_TYPE_CD = 800, 801, or 802 (Schedule) or 1000 to 29999 (Pattern), the ACCRUAL_BASIS_CD cannot equal ’1’, ’4’, or ’5’.

Adjustable Type Code (ADJUSTABLE_TYPE_CD)

DefinitionIdentifies the repricing method and repricing characteristics of the record.

Module Usage For Risk Manager, this field works in conjunction with REPRICE_FREQ to deter-mine the repricing characteristics of an instrument. An ADJUSTABLE_TYPE_CD must be specified if the record reprices.

Risk Manager

1. The code values for this field are as follows:

*(if not in tease period)

a. If the ADJUSTABLE_TYPE_CD = 0 and the REPRICE_FREQ = 0, then the record is fixed-rate.

b. If the ADJUSTABLE_TYPE_CD = 30 or 50 and the REPRICE_FREQ > 0, then the reprice dates are driven by forecasted yield curve rate changes rather than by the REPRICE_FREQ. For these codes, Risk Manager reprices the record by referencing the Forecast Rates ID interest rate code (IRC) when producing cash flow information at the beginning of each bucket. There is one reference to the IRC per modeling bucket.

The database field, NEXT_REPRICE_DATE, is not used when the ADJUSTABLE_TYPE_CD = 30 or 50. The database field, REPRICE_FREQ, is

Code Value DefinitionRepricing Frequency Repricing Method

000 Fixed 0 No Repricing

030 Administered Rate > 0 Reprices when IRC (interest rate code) changes.*

050 Floating Rate > 0 Reprices when IRC (interest rate code) changes.*

250 Adjustable > 0 Last Reprice Date + Reprice Frequency.*

Page 563: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-9

Oracle Proprietary, Confidential Information - Use Restricted by Contract

used to determine the yield curve point when the IRC is a yield curve as opposed to a single rate IRC.

c. If the ADJUSTABLE_TYPE_CD = 250 and the REPRICE_FREQ > 0, then the repricing frequency of the record is determined by the REPRICE_FREQ and NEXT_REPRICE_DATE. See these fields for further explanations of the repricing process.

2. The value input into the ADJUSTABLE_TYPE_CD overrides the REPRICE_FREQ value. For instance, even though the REPRICE_FREQ > 0 and if the ADJUSTABLE_TYPE_CD = 0, OFSA treats the record as a fixed-rate instrument.

Transfer Pricing Oracle Transfer Pricing references REPRICE_FREQ to determine if the record is adjustable.

Data Verification Requirements and Suggested Defaults■ If the record is an adjustable floating or administered product, ADJUSTABLE_

TYPE_CD = 30 or 50.

■ If the record reprices according to NEXT_REPRICE_DATE and REPRICE_FREQ information, ADJUSTABLE_TYPE_CD = 250.

■ If the ADJUSTABLE_TYPE_CD > 0, REPRICE_FREQ > 0.

■ If the record is fixed, ADJUSTABLE_TYPE_CD = 0.

Amortization Type Code (AMRT_TYPE_CD)

DefinitionDefines the method by which an account’s principal and interest is amortized.

Note: Floating/Administered ADJUSTABLE_TYPE_CD should not be used for instruments with periodic caps and/or floors because periodic caps and floors infer a specific repricing frequency.

Page 564: fe115trm

Cash Flow Columns

10-10 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Module UsageOracle Risk Manager and Transfer Pricing cash flow methodologies use AMRT_TYPE_CD to determine the calculation method of the record’s amortization of prin-cipal and interest. Listed below are the AMRT_TYPE code values.

Conventionally Amortizing

100 Conventional Fixed

400 Balloon

500 Adjustable Conventional

600 Adjustable Negative Amortizing

Non-conventional Amortizing

700 Simple Interest

710 Rule of 78s

800 - 802 Schedule

820 Level Principal

999 Default Value

1000 - 29999 User-Defined Payment Patterns

Page 565: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-11

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Below are explanations of each of the amortization type codes.

100, 400, 500, 600 - Conventionally Amortizing AMRT_TYPE_CDs

The conventional amortization loan types have loan payments that are unevenly divided between principal balance and interest owed. Total payment amount (prin-cipal + interest) is generally equal throughout the life of the loan. The interest por-tion (non-shaded portion) of each payment is calculated based on the record’s interest rate and the remaining balance of the loan. Therefore, close to the loan’s origination, a higher portion of the payment consists of interest rather than princi-pal. As the loan is paid down, an increasing portion of each payment is allocated to principal until a zero balance is reached at maturity.

For these four AMRT_TYPE_CDs, the amount in the CUR_PAYMENT field should equal principal plus interest.

Below is a breakout of these four conventionally amortizing AMRT_TYPE_CDs:

Conventional Loan Type Description

100 Conventional Fixed (Described above)

400 Balloon A loan in which the amortization term (AMRT_TERM) of an instrument exceeds the maturity term (ORG_TERM). For example a loan with an original term of seven years is amortized conventionally as if it were a 30-year instrument. At the end of the 7th year, there exists a large balloon payment that represents 23 years of non-amortized loan balance.

500 Conventional Adjustable Repricing instrument with conventional amortization.

Interest

Principal

Maturity Date

Page 566: fe115trm

Cash Flow Columns

10-12 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OFSA does not treat AMRT_TYPE_CD 100, 400 or 500 differently. For a given record, the use of any of these three types produces identical results. The division is simply for product distinction purposes. For instance, AMRT_TYPE_CD 100 can be used for a fixed-rate, adjustable-rate or a balloon record. However only an AMRT_TYPE 600 record uses the OFSA negative amortization fields.

OFSA does not use AMRT_TYPE_CD to identify whether a record is adjustable or not. OFSA uses REPRICE_FREQ (and in Risk Manager, ADJUSTABLE_TYPE_CD) for this purpose. Therefore, any amortization type can be adjustable.

OFSA does not use AMRT_TYPE_CD to determine whether a record is a balloon or not. OFSA uses AMRT_TERM and ORG_TERM for this purpose. Therefore, even a level principal AMRT_TYPE_CD could be treated as a balloon instrument.

A record must be AMRT_TYPE_CD 600 in order for OFSA to process the record using the negative amortization fields.

700 Simple Interest (Non-amortizing)

For simple interest amortization type, no principal is paid until maturity. If NEXT_PAYMENT_DATE < MATURITY_DATE, OFSA calculates interim interest-only pay-ments as shown in the above diagram. OFSA pays the entire record’s principal bal-ance on the maturity date along with the appropriate interest amount.

For this AMRT_TYPE_CD, the CUR_PAYMENT field should equal ’0’.

600 Adjustable Neg Am In a negatively amortizing instrument, the principal of a loan increases when the loan payments are insufficient to pay the interest due. The unpaid interest is added to the outstanding loan balance, causing the principal to increase rather than decrease, as payments are made. Please see NEG_AMRT_AMT for more details.

Conventional Loan Type Description

Interest

Principal

Maturity Date

Page 567: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-13

Oracle Proprietary, Confidential Information - Use Restricted by Contract

710: Rule of 78s An amortization type in which the following calculation is used in computing the interest rebated when a borrower pays off a loan before maturity.

For example, in a 12-month loan, the total is 78 (1 + 2 + ... 12 = 78). For the first month, 12/78 of the total interest is due. In the second month, this amount is 11/78 of the total.

For Rule of 78 AMRT_TYPE_CDs, the amount in the CUR_PAYMENT field should equal principal plus interest. See Chapter 9, "Cash Flow Calculations" for further information.

800 - 802: Payment ScheduleThe key for matching the instrument record with its corresponding payment sched-ule record is the INSTRUMENT_TYPE_CD and ID_NUMBER.

800: Conventional Payment Schedule This AMRT_TYPE_CD conventionally amortizes a record whose cash flows are defined in the PAYMENT_SCHEDULE table. Payment amounts should contain both principal + interest.

801: Level Principal Payment Schedule This AMRT_TYPE_CD level principal amortizes a record whose cash flows are defined in the PAYMENT_SCHEDULE table. Payment amounts should contain principal only.

802: Simple interest Payment Schedule This AMRT_TYPE_CD simple interest amortizes a record whose cash flow dates are defined in the PAYMENT_ SCHED-ULE table. Payment amounts should equal 0 (the engine calculates interest and ignores payment amount in the schedule records). Principal balanceis paid on the maturity date as defined in the schedule.

820 Level Principal Payments

Level principal payment is the amortization type in which the principal portion of the loan payment remains constant for the life of loan. Interest (non-shaded por-tion) is calculated as a percentage of the remaining balance, and therefore,

Interest

Principal

Maturity Date

Page 568: fe115trm

Cash Flow Columns

10-14 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

the interest portion decreases as the maturity date nears. Because the principal por-tion of payment is constant for life, the total payment amount (principal plus inter-est) decreases as the loan approaches maturity.

For this AMRT_TYPE_CD, the amount in the CUR_PAYMENT field should equal the principal portion only.

1000 - 29999: User-Defined Payment PatternsRecords with this range of AMRT_TYPE_CDs are matched to the user-defined amortizations in the OFSA interface. The key for matching is the AMRT_TYPE_CD value. These records can only be defined as conventionally amortizing, level-princi-pal, or simple interest.

999: Other Amortization Type.If this value is used, OFSA uses the AMRT_TYPE_CD 700, simple interest amortiza-tion method. Using this AMRT_TYPE_CD for product identification purposes is not recommended. This should be reserved for indicating erroneous data extraction.

For calculation methods of the different AMRT_TYPE_CDs, see Current Payment (CUR_PAYMENT).

Data Verification Requirements and Suggested Defaults■ All accounts require a valid AMRT_TYPE_CD as listed above.

■ If the AMRT TYPE <> 700 or is not a simple interest-amortizing schedule or pattern record, CUR_PAYMENT must be valid. If CUR_PAYMENT value is too small or equal to ’0’, OFSA may generate erroneous cash flows, depending on the AMRT_TYPE_CD selected.

■ If the record is defaulted to AMRT_TYPE_CD 999, or if it cannot find a match in PAYMENT_SCHEDULE or PAYMENT_PATTERNS, OFSA processes the record as AMRT_TYPE_CD 700.

■ Suggested defaults in the table below are dependent on basic knowledge of product characteristics:

Loan TypeSuggested AMRT_TYPE_CD

Non-amortizing, such as Certificates of Deposit 700

Fixed amortizing, such as short term consumer loans 100

Variable amortizing, such as adjustable-rate mortgages 500

Page 569: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-15

Oracle Proprietary, Confidential Information - Use Restricted by Contract

■ Rule of 78s instruments are implicitly fixed.

If AMRT_TYPE_CD = 710, REPRICE_FREQ = 0.

Amortization Term (AMRT_TERM)

DefinitionAmortization term is used in conjunction with AMRT_TERM_MULT to define the term over which the payment is amortized.

Module UsageAMRT_TERM is used by Oracle Risk Manager and Oracle Transfer Pricing adjust-able-rate cash flow transfer-priced records.

Amortization TermAmortization term has two main purposes:

■ Identifies whether a record is a balloon and is used in calculation of payment amounts.

■ Used when re-calculating payment amounts for User-Defined Payment Pattern records that are defined as % Current Payment and have more than one payment frequency defined in the OFSA interface.

Balloon Check

As an initial step before processing a record’s cash flows, OFSA compares the record’s ORG_TERM with its AMRT_TERM. If AMRT_TERM = ORG_TERM. OFSA then uses the CUR_PAYMENT from the record. When appropriate, OFSA later recalculates the CUR_PAYMENT if: 1) The record reprices; 2) The TEASER_END_DATE is reached; or 3) A negative amortization-related recalculation date is reached.

If the AMRT_TERM > ORG_TERM, OFSA recognizes the record as a balloon, and recalculates the payment amount. In order to perform this calculation (see Current Payment (CUR_PAYMENT) for the formula), OFSA must derive the remaining number of payments until the end of the amortization term. This is calculated by adding the AMRT_TERM to the ORIGINATION_DATE to determine the amortiza-tion end date. The remaining number of payments is calculated by determining how many payments can be made from and including the NEXT_PAYMENT_DATE and this date. Below is the formula used for determining the remaining number of payments:

Page 570: fe115trm

Cash Flow Columns

10-16 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

(((ORIGINATION_DATE - Beginning of Payment Period Date) / 30.41667 + AMRT_TERM) / PMT_FREQ)

Beginning of Payment Period Date refers to the date of the current payment that OFSA is calculating. This would equal the detail record’s NEXT_PAYMENT DATE if OFSA were calculating the first forecasted cash flow. After the remaining number of payments have been calculated, OFSA derives the CUR_PAYMENT amount and apply it to the record’s cash flows. Ignoring repricings and other recalculation events, this payment amount is paid until maturity, at which time OFSA pays the record’s balloon payment (the remaining principal portion).

User-Defined Pattern

Records that are defined as ’% Current Payment’ in the User-Defined Payment Pat-tern screen and have more than one payment frequency defined in the OFSA inter-face also recalculate the payment amount using the above formula.

The remaining number of payments on pattern records is calculated by rounding to the nearest number of payments when the remaining term is not exactly divisible by the payment frequency.

Data Verification Requirements and Suggested Defaults■ If the record is a balloon, AMRT_TERM > ORG_TERM.

■ If the record is not a balloon, AMRT_TERM = ORG_TERM.

■ AMRT_TERM should never be less than ORG_TERM.

■ Do not default AMRT_TERM or ORG_TERM to ’0’. Use ’1’.

■ The validation of AMRT_TERM should always be done in conjunction with AMRT_TERM_MULT.

Amortization Term Multiplier (AMRT_TERM_MULT)

DefinitionUsed in conjunction with AMRT_TERM to define the term over which the payment is amortized.

Module UsageThis field is the multiplier of the AMRT_TERM field. It is used in conjunction with AMRT_TERM to define the term over which the payment is amortized. Oracle Risk Manager and Oracle Transfer Pricing cash flow transfer-priced records reference

Page 571: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-17

Oracle Proprietary, Confidential Information - Use Restricted by Contract

AMRT_TERM_MULT when recalculating the current payment as defined under the AMRT_TERM section. AMRT_TERM_MULT determines the units (Months, Days or Years) of AMRT_TERM.

Data Verification Requirements and Suggested DefaultsValues are:

As of Date (AS_OF_DATE)

DefinitionThe date that the extracted data represents.

Module UsageAS_OF_DATE is used for the following purposes:

■ Configuration ID filter (Oracle Risk Manager and Oracle Transfer Pricing)

■ Market value calculations (Oracle Risk Manager)

■ ’t’ calculation

■ Term of cash flow from AS_OF_DATE is used for matching cash flow for discounting purposes.

■ Payment Schedules and Patterns - used to determine where in the life of the loan the record is.

■ Transfer Pricing Remaining Term Pricing Basis

Configuration ID

Oracle Risk Manager and Oracle Transfer Pricing use AS_OF_DATE as a primary data filter. When executing a Risk Manager or Transfer Pricing processing run, OFSA compares the AS_OF_DATE in the active Configuration ID against the AS_OF_DATE field of the detail instrument record. If AS_OF_DATE from the instru-ment record is the same date as that from the Configuration ID, then OFSA pro-cesses the instrument record. Otherwise, OFSA does not process the instrument record.

D = Days

M = Months

Y = Years

Page 572: fe115trm

Cash Flow Columns

10-18 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Market Value Calculations

■ When calculating the market valuation of a daily paying record (PMT_FREQ_ M = D), Risk Manager uses the AS_OF_DATE when calculating the ’t’ period variable. See “Market Valuation Calculation” in the Chapter 9, "Cash Flow Calculations," for calculations.

■ For the Risk Manager Discount ID methods Spot Interest Rate Code and Forecast Remaining Term, the AS_OF_DATE is used in calculating the cash flow’s discounting term. The cash flow date (payment date) is subtracted from the AS_OF_DATE to determine this term. This term is then applied to the appropriate discount yield curve in the Risk Manager Forecast Rates ID to determine the discount rate for the record.

Payment Schedules and User-Defined Payment Patterns

■ Relative Patterns - AS_OF_DATE is used to determine where in the life of an Payment Pattern a record is currently positioned. For relative patterns, the Payment Frequencies specified in the Pattern interface are rolled forward from the ORIGINATION_DATE until the rolled date is greater than the AS_OF_DATE.

■ Absolute Patterns - In determining the first forecasted payment date, OFSA selects the payment date in the pattern that corresponds to the first date after the AS_OF_DATE.

■ Payment Schedules - OFSA makes the first forecasted payment based on the first date in the payment schedule table after the AS_OF_DATE.

Transfer Pricing Remaining Term Pricing Basis When the Remaining Term Pric-ing Basis is selected for the Transfer Pricing ID, transfer rates for the relevant meth-odologies are calculated from the AS_OF_DATE.

Note: If NEXT_PAYMENT_DATE is different from the next defined payment date in the absolute pattern, the NEXT_PAYMENT_DATE is used instead. Therefore, OFSA requires that the NEXT_PAYMENT_DATE correspond to the appropriate date in the absolute payment pattern. See Next Payment Date (NEXT_PAYMENT_DATE) for additional information.

Page 573: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-19

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Data Verification Requirements and Suggested DefaultsUnless the record has a future ORIGINATION_DATE, the following conditions exist:

■ AS_OF_DATE = MATURITY_DATE - REMAIN TERM C.

■ AS_OF_DATE < NEXT_REPRICE_DATE

■ AS_OF_DATE < NEXT_PAYMENT_DATE

■ AS_OF_DATE < MATURITY_DATE

■ AS_OF_DATE >= ORIGINATION_DATE

■ AS_OF_DATE > ISSUE_DATE

■ AS_OF_DATE < PMT_ADJUST_DATE

■ AS_OF_DATE > LAST_PAYMENT_DATE

Compounding Basis Code (COMPOUND_BASIS_CD)

DefinitionIndicates the compounding used to calculate interest income.

Module UsageOracle Risk Manager and Oracle Transfer Pricing cash flow calculations reference the COMPOUND_BASIS_CD when determining the detail record’s compounding method to be applied during interest income (financial element 430) calculations.

1. The following table shows the code values for the COMPOUND_BASIS_CD and the interest calculation logic for an annual-paying instrument with 30/360 accrual basis code.

Code Value Description Annual Payment Calculation

110 Daily Balance * [(1 + Rate/365)^365-1]

120 Monthly Balance * [(1 + Rate/12)^12-1]

130 Quarterly Balance * [(1 + Rate/4)^4-1]

140 Semi-annual Balance * [(1 + Rate/2)^2-1]

150 Annual Balance * [(1 + Rate/1)^1-1]

160 Simple Balance * Rate (no compounding)

Page 574: fe115trm

Cash Flow Columns

10-20 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

The annualized rate that is applied to the record for interest income calculations is compounded according to one of the methods listed above.

2. OFSA compounds the rate on the record at the time of interest income calculation. If the record has repriced, OFSA calculates the new rate, applies any rounding, caps/floors, or tease periods, and then applies the compounding calculation (COMPOUND_BASIS_CD) before calculating interest income (financial element 430).

3. Simple and At Maturity calculate interest in the same manner. These two codes do not compound the rate.

4. Compounded interest is calculated only when the compounding frequency is less than the PMT_FREQ. If the compounding frequency is greater than the PMT_FREQ, the model assumes simple compounding.

Data Verification Requirements and Suggested Defaults■ A valid COMPOUND_BASIS_CD must be one of the values listed above.

■ Suggested default - If the record’s compounding is unknown, default to COMPOUND_BASIS_CD = 160, Simple.

Current Book Balance (CUR_BOOK_BAL)

DefinitionCurrent Gross Book Balance.

Module Usage

Risk Manager

When there is deferred balance (DEFERRED_CUR_BAL), Oracle Risk Manager uses CUR_BOOK_BAL to calculate accretion/amortization (financial element 540) and the deferred ending and average balances (financial element 520, 530).

170 Continuous eRate Per Payment -1

200 At Maturity Balance * Rate (no compounding)

999 Other Balance * Rate (no compounding)

Code Value Description Annual Payment Calculation

Page 575: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-21

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Transfer Pricing Oracle Transfer Pricing uses CUR_BOOK_BAL during calcula-tions for LEDGER_STAT transfer pricing.

When Remaining Term Calculation Mode is selected in the TP Process ID, and the Target Balance for the subject product leaf is Book Balance, Oracle Transfer Pricing Option Cost calculations use CUR_BOOK_BAL as the target balance to which the sum of future discounted cash flows is set equal.

Data Verification Requirements and Suggested Defaults■ Validate that CUR_BOOK_BAL = CUR_PAR_BAL + DEFERRED_CUR_BAL.

Current Gross Rate (CUR_GROSS_RATE)

DefinitionCoupon rate of account, expressed in terms of an annualized rate.

Module UsageWhen the Model with Gross Rates switch is turned on in the Risk Manager Leaf Characteristics ID, or in the Process ID in Oracle Transfer Pricing, CUR_GROSS_RATE is used to calculate forecasted cash flow. When switched on, OFSA uses the record’s CUR_GROSS_RATE for two calculations:

Amortization When conventionally amortizing a record’s balance with the ’Model with Gross Rates’ option selected, OFSA uses the CUR_GROSS_RATE as the customer rate. If the option is not selected, then OFSA uses CUR_NET_RATE as the customer rate for amortization calculation.

Prepayments - In order to determine the rate at which the customer prepays, the current customer rate must be compared to the market rate. If ’Model with Gross Rates’ is switched on, then the customer rate is represented by the CUR_GROSS_RATE. If the switch is not turned on, the CUR_NET_RATE is used as the current customer rate.

If ’Model with Gross Rates’ is used, the Oracle Risk Manager Knowledge Engine uses the CUR_GROSS_RATE for gross interest cash flow (financial element 435) cal-culations. This means that the record amortizes and prepays according to the CUR_

Page 576: fe115trm

Cash Flow Columns

10-22 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

GROSS_RATE, but the net cash flows associated interest income (financial element 430) are calculated from the CUR_NET_RATE.

For a complete explanation of the relationship between NET_MARGIN_CD, CUR_GROSS_RATE, and CUR_NET_RATE see Net Margin Code (NET_MARGIN_CD).

Following is an explanation of how Oracle Risk Manager calculates CUR_GROSS_RATE:

Before the NEXT_REPRICE_DATE, OFSA uses the CUR_GROSS_RATE from the detail record as the gross rate.

At or beyond the NEXT_REPRICE_DATE, OFSA matches the REPRICE_FREQ, INTEREST_RATE_CD and the reprice date to the information contained in the Risk Manager Forecast Rates ID. This is to assign a forecasted rate. The MARGIN_GROSS is then added to this forecasted rate. Any rounding, rate caps/floors, and tease periods are applied and the resulting rate is applied to the record as the gross rate.

Data Verification Requirements and Suggested Defaults■ All term accounts require a valid CUR_GROSS_RATE.

■ For non-interest earning/bearing accounts, CUR_GROSS_RATE = 0.

■ For transaction accounts where the rate changes daily, based upon average balances, CUR_GROSS_RATE should be the spot rate at the time the extract program is run.

■ CUR_GROSS_RATE >= 0.

■ CUR_GROSS_RATE = MARGIN_GROSS + value of index (IRC) that the account is tied to (assuming periodic/lifetime caps/floors, tease periods do not apply and rounding is taken into consideration).

■ CUR_GROSS_RATE should be validated while validating CUR_PAYMENT. See Current Payment (CUR_PAYMENT) for validation formulas.

Note: Depending on the NET_MARGIN_CD value, interest income is calculated differently.

Note: ADJUSTABLE_TYPE_CD = 30 or 50 does not reference Reprice Dates.

Page 577: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-23

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Current Net Rate (CUR_NET_RATE)

DefinitionInterest rate that interest income due to the bank is based upon.

Module UsageOracle Risk Manager and Oracle Transfer Pricing cash flow calculations reference CUR_NET_RATE for the following purposes:

Interest Income (Financial Element 430) Calculation CUR_NET_RATE is used to derive the interest cash flow (income/expense) that is due to the financial institu-tion (referred to as net). OFSA uses different Interest Income calculations depend-ing on the ACCRUAL_BASIS_CD and INT TYPE. These calculations are presented under the field heading Accrual Basis Code (ACCRUAL_BASIS_CD) and Interest Type Code (INT_TYPE). Interest income is calculated on payment dates or the record’s maturity date. As the calculations indicate, after referencing the ACCRUAL_BASIS_CD, OFSA applies the CUR_NET_RATE to the entire payment period (last ’Previous’ payment date to next ’Current’ payment date). If any repric-ing occurred during the payment period, OFSA uses the last repriced rate that occurred immediately before the next ’Current’ payment date.

Prepayments As defined in the Prepayment ID interface, the Knowledge Engine compares the customer rate to the market rate when determining the prepayment rate. If the Model with Gross Rates option is not selected, the CUR_NET_RATE is the customer rate and therefore is used for prepayment calculations.

Amortization When amortizing a record’s balance, a key input is the record’s cus-tomer rate. If Model with Gross Rates is not selected, then OFSA uses the CUR_NET_RATE for amortization purposes.

Note: Whether or not the Model with Gross Rates option has been selected in Leaf Characteristics (Risk Manager) or the Process ID screen (Transfer Pricing), OFSA always calculates the bank’s income according to the CUR_NET_RATE.

Note: Depending on the NET_MARGIN_CD value, interest income are calculated differently. For a complete explanation of the relationship between NET_MARGIN_CD, CUR_GROSS_RATE, and CUR_NET_RATE see Net Margin Code (NET_MARGIN_CD).

Page 578: fe115trm

Cash Flow Columns

10-24 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Following is an explanation of how Oracle Risk Manager calculates CUR_NET_RATE:

Before the NEXT_REPRICE_DATE, Risk Manager uses the CUR_NET_RATE from the detail record as the net rate.

At or beyond the NEXT_REPRICE_DATE, Risk Manager matches the REPRICE_FREQ, INTEREST_RATE_CD and the reprice date to the information contained in the Forecast Rates ID. This is to assign a forecasted rate. The MARGIN is then added to this forecasted rate. Any rounding, rate caps/floors, and tease periods are applied and the resulting rate is applied to the record as the net rate.

Data Verification Requirements and Suggested Defaults■ All term accounts require a valid CUR_NET_RATE.

■ For non-interest earning/bearing accounts, CUR_NET_RATE = 0.

■ For transaction accounts where the rate changes daily based upon average balances, CUR_NET_RATE should be the spot rate at the time the extract program is run.

■ For interest-bearing accounts, CUR_NET_RATE >= 0.

■ CUR_NET_RATE = MARGIN + value of index that the account is tied to (assuming periodic/lifetime caps/floors do not apply and rounding is taken into consideration).

Current Option-Adjusted Spread (CUR_OAS)

DefinitionThe average spread over all stochastic rate paths that equate the discounted sum of future cash flows to the target balance at the As Of Date.

Module Usage

Transfer Pricing When Remaining Term Calculation Mode is selected in the TP Process ID, the Oracle Transfer Pricing option cost module writes the result of its option-adjusted spread calculations to this column

Note: ADJUSTABLE_TYPE_CD = 30 or 50 does not reference reprice dates.

Page 579: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-25

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Current Par Balance (CUR_PAR_BAL)

DefinitionRepresents the starting balance from which Oracle Risk Manager cash flows are generated.

Module UsageOracle Risk Manager and Transfer Pricing Cash Flow Remaining Term Pricing Basis methodologies use the CUR_PAR_BAL field to derive the starting balance for amor-tization calculations. For amortizing accounts, CUR_PAR_BAL is the balance the Knowledge Engine amortizes over the remaining number of payments.

Risk Manager1. As Risk Manager processes the record’s payment dates and its maturity date,

the CUR_PAR_BAL is reduced by the principal portion of the CUR_PAYMENT amount until the principal balance reaches ’0’. Once the balance has been reduced to ’0’, processing of the record ceases. The calculation method that defines how the CUR_PAR_BAL amount is reduced is represented by the AMRT_TYPE_CD and the CUR_PAYMENT fields.

2. The CUR_PAR_BAL is represented as Bucket 001 under financial element 60 (beginning balance in Risk Manager Result Detail Table (RES_DTL_XXXXXX)) and as the CUR_PAR_BAL in the RESULT_MASTER Table. Generally the CUR_PAR_BAL from the detail record matches the balances in the Result Detail and RESULT_MASTER Tables. However, there are three exceptions.

a. Exception 1 - If the record’s PERCENT_SOLD > 0, OFSA recalculates the balance to equal CUR_PAR_BAL * (100 - PERCENT_SOLD). This is because if any percentage of the balance is not actually owned by the financial institution, it is not included in the forecast. See Percent Sold (PERCENT_SOLD) for details. In this case, the RESULT_MASTER CUR_NET_PAR_BAL and Result Detail balances would be smaller than the record’s CUR_PAR_BAL.

b. Exception 2 - This exception applies to Discount/Premium records where the DEFERRED CUR BAL <> 0. OFSA reads in the CUR_PAR_BAL amount but processes only book balances when calculating cash flows. OFSA calculates the book balance by adding the CUR_PAR_BAL and the DEFERRED_CUR_BAL. See Deferred Current Balance (DEFERRED_CUR_BAL) for details.

Page 580: fe115trm

Cash Flow Columns

10-26 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

c. Exception 3 - This exception applies when the NEXT_PAYMENT_DATE < AS_OF_DATE. If the record’s NEXT_PAYMENT_DATE is less than the AS_OF_DATE and the record’s AMRT_TYPE_CD <> 700, OFSA reduces the CUR_PAR_BAL by the amount of the payments before the AS_OF_DATE.

For example, if the record’s CUR_PAR_BAL = $1000 and there are two payments (each worth $100 of principal), OFSA’s beginning balance (financial element 60) would be equal to $800.

3. For User-Defined Payment Patterns where the payment method is defined as ’% Current Balance’, Oracle Risk Manager references the CUR_PAR_BAL field for all payment amounts beyond the first forecasted payment amount.

Transfer Pricing1. For the cash flow ’Remaining Term Pricing Basis’ methodologies in Oracle

Transfer Pricing, as OFSA processes the record’s payment dates and its maturity date, the CUR_PAR_BAL is reduced by the principal portion of the CUR_PAYMENT amount until the principal balance reaches ’0’. Once the balance has been reduced to ’0’, processing of the record ceases. The calculation method that defines how the CUR_PAR_BAL amount is reduced is represented by the AMRT_TYPE_CD and the CUR_PAYMENT fields.

2. For User-Defined Payment Patterns where the payment method is defined as "% Current Balance”, Oracle Transfer Pricing references the CUR_PAR_BAL field for all payment amounts including the first one.

When Remaining Term Calculation Mode is selected in the TP Process ID, and the Target Balance for the subject product leaf is Par Balance, Oracle Transfer Pricing Option Cost calculations use CUR_PAR_BAL as the target balance to which the sum of future discounted cash flows is set equal.

Data Verification Requirements and Suggested Defaults■ CUR_PAR_BAL requires a valid balance for all accounts. If CUR_PAR_BAL = 0,

OFSA does not process the record.

■ CUR_PAR_BAL = CUR_BOOK_BAL - DEFERRED_CUR_BAL

■ CUR_PAR_BAL should have the same sign as CUR_PAYMENT.

Page 581: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-27

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Current Payment (CUR_PAYMENT)

DefinitionRepresents the current periodic payment made against the outstanding balance.

Module UsageFor standard amortization types (those that are not non-patterned and non-sched-uled), Oracle Risk Manager and Oracle Transfer Pricing use the CUR_PAYMENT from the detail record for the life of the record until a payment recalculation occurs. A payment recalculation occurs when the record is an:

■ Adjustable record and a reprice date (NEXT_REPRICE_DATE) is reached.

■ Adjustable record and the TEASER_END_DATE is reached (if TEASER_END_DATE < NEXT_REPRICE_DATE, TEASER_END_DATE takes precedence).

■ AMRT TYPE = 600 and the PMT_ADJUST_DATE, NEG_AMRT_EQ_DATE, or the NEG_AMRT_LIMIT is reached.

Depending on AMRT_TYPE_CD, CUR_PAYMENT may be composed of principal or interest or both.

AMRT_TYPE_CD 700 (Simple Interest): CUR_PAYMENT equals interest only. OFSA always calculates the interest component of any payment amount. Therefore, for extracting purposes, a simple interest record’s CUR_PAYMENT = 0. If a repric-ing event (payment recalculation event) occurs, the interest amount of the payment (financial element 430, and if applicable, 435) is recalculated as indicated under the ACCRUAL_BASIS_CD. The only principal payment is made at maturity (Maturity Payment = financial element 195, 197).

AMRT_TYPE_CD 100, 400, 500, 600 (Conventionally Amortizing): For extracting purposes, CUR_PAYMENT = principal + interest. If a payment recalculation event occurs, OFSA recalculates the total CUR_PAYMENT amount using the following formula:

This calculation derives the total payment amount, principal, and interest. To deter-mine the interest income (financial element 430) portion and the principal (financial element 190 or 192) portion of this payment amount, OFSA calculates the interest

Current Par Balance

1/Current Rate * (1-(1+Current Rate) ^(Remaining # of Payments)

Page 582: fe115trm

Cash Flow Columns

10-28 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

income as indicated under the ACCRUAL_BASIS_CD. This income amount is then subtracted from the calculated total payment amount to determine the principal portion.

See Negative Amortization Amount (NEG_AMRT_AMT) for additional informa-tion on AMRT_TYPE_CD 600.

AMRT_TYPE_CD 820 (Level Principal): For extracting purposes, CUR_PAYMENT = principal only. If a repricing event occurs, OFSA recalculates the total CUR_PAY-MENT amount using the following formula:

This calculation yields the principal payment amount only (financial element 190 or 192). To derive the total payment amount, the interest amount (financial element 430) calculation (see Accrual Basis Code (ACCRUAL_BASIS_CD)) is applied and added to the principal portion.

■ AMRT_TYPE_CD 800: Conventional payment schedule ’Payment Amount’ should contain both principal + interest. Payment recalculation is the same as for conventionally amortizing. OFSA uses the CUR_PAYMENT from the detail record for the first forecasted payment. Therefore, the CUR_PAYMENT on the detail record should equal the corresponding payment in the PAYMENT_SCHEDULE table.

■ AMRT_TYPE_CD 801: Level principal payment schedule ’Payment Amount’ should contain principal only. Payment recalculation is the same as under level principal AMRT_TYPE_CD 820. OFSA uses the CUR_PAYMENT from the detail record for the first forecasted payment. Therefore, the CUR_PAYMENT on the detail record should equal the corresponding payment in the PAYMENT_SCHEDULE table.

■ AMRT_TYPE_CD 802: Simple interest payment schedule ’Payment Amount’ should be equal to zero (for simple interest, the engine ignores this field and just looks at the scheduled payment date). Interest recalculation is the same as indicated under simple interest AMRT_TYPE_CD 700.

AMRT_TYPE_CD 1000 - 29999, User-Defined Payment Patterns: Depending on the payment method defined in the interface, Oracle Risk Manager may or may not reference the CUR_PAYMENT field from the detail record.

Current Par Balance

Remaining Number of Payments

Page 583: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-29

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Below is a grid that outlines the Oracle Risk Manager use of the CUR_PAYMENT field depending on the payment method.

The method of recalculating payments for User-Defined Payment Patterns is depen-dent on the payment type that is defined for the payment pattern: conventional, level principal, or simple interest. Amortization recalculations correspond to AMRT_TYPE_CDs 100, 820, and 700 respectively. Each is defined above.

Data Verification Requirements and Suggested Defaults■ If AMRT_TYPE_CD = 100, 400, 500, 600, 710, 800 or is a

conventionally-amortizing payment pattern, CUR_PAYMENT should include principal and interest.

■ If AMRT_TYPE_CD = 820, 801 or is a level principal-amortizing payment pattern, CUR_PAYMENT should include principal only.

■ If AMRT_TYPE_CD = 700, 802, or is a simple interest-amortizing payment pattern, CUR_PAYMENT can be ’0’.

■ For AMRT_TYPE_CD <> Simple Interest AMRT_TYPE_CDs, CUR_PAYMENT must have the same sign as CUR_BOOK_BAL.

■ CUR_PAYMENT must be the same sign as the CUR_BOOK_BAL and CUR_PAR_BAL fields.

■ If AMRT_TYPE_CD = 600 (Negative Amortization) and PMT_DECR_LF <> 0, CUR_PAYMENT should be greater than or equal to ORG_PAYMENT_AMT * (1 - PMT_DECR_LF/100).

% Current Payment

% Original Payment

Interest Only

% Original Balance

%Current Balance

Never (always calculated)

Risk Manager -Referenced for first cash flow only.

Never (always calculated)

Risk Manager -Referenced for first cash flow only.

Risk Manager -Referenced for first cash flow only

Note: Oracle Transfer Pricing does not reference CUR_PAYMENT when using the User-Defined Payment Patterns.

Page 584: fe115trm

Cash Flow Columns

10-30 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

■ If AMRT_TYPE_CD = 600 (Negative Amortization) and PMT_ INCR_LF <> 0, CUR_PAYMENT should be less than or equal to ORG_PAYMENT_AMT * (1 + PMT_INCR_LF/100).

■ CUR_PAYMENT can be validated by performing the following calculations:

■ For conventionally amortizing and Rule of 78s:

CUR_PAYMENT = (CUR_BOOK_BAL* (CUR_GROSS_ RATE/((12/PMT_FREQ[in months]) *100))) / (1 - ((1+(CUR_GROSS_RATE /((12/ PMT_FREQ [in months])*100))) ^-(REMAIN_NO_PMTS_ C)))

■ For fixed rate accounts:

CUR_PAYMENT = (ORG_BOOK_BAL* (CUR_GROSS_ RATE/((12/PMT_FREQ[in months]) *100))) / (1 - ((1+(CUR_GROSS_RATE /((12/ PMT_FREQ [in months])*100))) ^-(ORG_TERM/PMT_FREQ [in months])))

■ For Level Principal records:

CUR_PAYMENT = CUR_BOOK_BAL / REMAIN_NO_PMTS_C

■ For fixed-rate accounts level principal records, the following should also be true:

CUR_PAYMENT = ORG_BOOK_BAL/ (ORG_TERM/ PMT_FREQ [in months])

■ For balloon records, the calculated remaining number of payments in the amortization term (CRPAT) must be calculated first. This is demonstrated in the Remaining Number of Payments (REMAIN_NO_PMTS_C) section. The following calculation is used:

CUR_PAYMENT = (CUR_BOOK_BAL* (CUR_GROSS RATE/((12/PMT_FREQ[in months]) *100))) / (1 - ((1+(CUR_GROSS_RATE /((12/ PMT_FREQ [in months])*100))) ^-(CRPAT)))

■ For fixed rate accounts, the following should be true:

CUR_PAYMENT = (ORG_BOOK_BAL* (CUR_GROSS_ RATE/((12/PMT_FREQ[in months]) *100))) / (1 - ((1+(CUR_GROSS_RATE /((12/ PMT_FREQ [in months])*100))) ^-(AMRT_TERM/PMT_FREQ [in months])))

Page 585: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-31

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Current Static Spread (CUR_STATIC_SPREAD)

DefinitionThe spread over the implied forward rates that equates the discounted sum of future cash flows to the target balance at the As Of Date.

Module Usage

Transfer Pricing When Remaining Term Calculation Mode is selected in the TP Process ID, the Oracle Transfer Pricing Option Cost module writes the result of its static spread calculations to this column.

Current Transfer Pricing Period Average Daily Balance (CUR_TP_PER_ADB)

DefinitionThe average balance at the LAST_REPRICE_DATE.

Module Usage

Risk Manager

Oracle Risk Manager does not reference CUR_TP_PER_ADB or PRIOR_TP_PER_ADB.

Transfer Pricing

When processing with the mid-period repricing option, Oracle Transfer Pricing ref-erences CUR_TP_PER_ADB as the average daily balance at the time of the last repricing event. This field is used in conjunction with the PRIOR_TP_PER_ADB field.

1. Mid-period repricing produces an average transfer rate over the current processing month if the LAST_REPRICE_DATE occurred since the beginning of the processing month. CUR_TP_PER_ADB and PRIOR_TP_PER_ADB are used as average balance weightings in the mid-period pricing equation.

Page 586: fe115trm

Cash Flow Columns

10-32 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

An example of a mid-period pricing scenario follows. The table provides the scenario specifics, followed by an explanation.

Without the mid-period repricing option, OFSA would assign a 5% transfer rate to the record for the month of December. However, this is the transfer rate only for the second half of December. The true transfer rate for the month should be a balance-weighted average transfer rate over the entire month. Mid-period repricing provides this by calculating the final transfer rate by weighting the transfer rate results (from current and previous repricing periods) by average balances and days. This final transfer rate is then applied to the detail record’s TRANSFER_RATE field.

The equation used by Oracle Transfer Pricing for calculating Mid-Period Repricing is as follows:

((CUR_TP_PER_ADB * Current Period Transfer Rate * Current Period Days) + S(PRIOR_TP_PER_ADB * Prior Period Transfer Rate * Prior Period Days)) / ((CUR_TP_PER_ADB * Current Period Days) + S(PRIOR_TP_PER_ADB * Prior Period Days))

From the example from above, the equation would be:

((10,000 * 5% * 31) + (15,000 * 3% * 30))/ ((10,000 * 31) + (15,000 * 30)) = 3.82%

Therefore, the correct transfer rate is 3.82%.

2. In reference to the above calculation, the CUR_TP_PER_ADB is used to determine the balance as of the LAST_REPRICE_DATE and PRIOR_TP_PER_

Fields Scenario

AS_OF_DATE 12/31/1997

LAST_REPRICE_DATE 12/15/1997

lAST_PAYMENT_DATE 12/15/1997 (balance was reduced on this date)

CUR_TP_PER_ADB $10,000

PRIOR_TP_PER_ADB $15,000

TRANSFER_RATE 3% from 11/15/1997 to 12/15/1997 (prior period, 30 days in the period)

TRANSFER_RATE 5% from 12/15/1997 to 1/15/1998 (current period, 31 days in the period)

Page 587: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-33

Oracle Proprietary, Confidential Information - Use Restricted by Contract

ADB is used to determine the balance as of the repricing dates prior to the LAST_REPRICE_DATE.

3. If the TEASER_END_DATE is greater than the AS_OF_DATE, the Mid-Period Repricing does not apply and the CUR_TP_PER_ADB and PRIOR_TP_PER_ADB fields are not used.

4. See the Oracle Transfer Pricing Reference Guide for more information.

Data Verification Requirements and Suggested Defaults■ If the record is adjustable and repricing occurs within the month, CUR_TP_

PER_ADB = (average) balance at the time of the LAST_REPRICE_DATE.

■ If the CUR_TP_PER_ADB and PRIOR_TP_PER_ADB are not available, use CUR_PAR_BAL as your default (otherwise mid-period repricing could result in a zero transfer rate).

Deferred Current Balance (DEFERRED_CUR_BAL)

DefinitionCurrent non-amortized deferred balance representing future income/expense, such as premium, discount, fees, and costs.

Module UsageDEFERRED_CUR_BAL holds the discount or premium (fee or cost) associated with a bond or loan record.

Discounted Instrument A discount loan or instrument is one with interest deducted from the face amount (CUR_PAR_BAL) of the loan at its origination. The discount amount (DEFERRED_CUR_BAL) is the difference between the loan’s cur-rent market price (CUR_BOOK_BAL) and its stated par value (CUR_PAR_BAL). The DEFERRED_CUR_BAL, which represents income, is amortized over the life of the instrument according to a constant yield calculation. Therefore, as the instru-ment approaches maturity, the CUR_BOOK_BAL approaches the CUR_PAR_BAL.

For discounted instruments, the DEFERRED_CUR_BAL should be a negative bal-ance. This indicates to OFSA that the balance is income.

Premium Instrument A premium bond or instrument is one in which the face value is issued below the book value. The premium is represented by the DEFERRED_CUR_BAL field, and, as with discounts, the deferred portion is

Page 588: fe115trm

Cash Flow Columns

10-34 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

accreted over the life of the instrument. For a premium instrument the DEFERRED_CUR_BAL represents an expense.

For instruments sold at a premium, DEFERRED_CUR_BAL should be positive, indicating that the balance is an expense.

The relationship in OFSA between book, par and the deferred amount is as follows:

CUR_BOOK_BAL = CUR_PAR_BAL + DEFERRED_CUR_BAL

An example of this relationship for a discounted loan follows:

1. OFSA performs a constant-yield amortization of the DEFERRED_CUR_BAL. This enables the deferred balance to be accreted evenly over the life of the instrument. This life-long accretion rather than a one-time realization of the deferred amount at the inception of the instrument is dictated by general accounting rules regarding discount or premium instruments. For certain fees and costs, as well as premiums and discounts, banks must recognize income/expense over the life of an account instead of at the inception of the account. Hence, some deferred balances are amortized over an account’s maturity term even if the account itself does not amortize (Chapter 9, "Cash Flow Calculations," provides a textual explanation for the constant-yield calculation.)

2. If the DEFERRED_CUR_BAL = 0, OFSA recognizes this record as having no discount or premium (CUR_BOOK_BAL = CUR_PAR_BAL).

Data Verification Requirements and Suggested Defaults■ For deferred income, (fees, discount), DEFERRED_CUR_BAL < 0.

■ For deferred expense, (costs, premium), DEFERRED_CUR_BAL > 0.

■ For accounts with deferred balances, the following equation must hold true:

CUR_BOOK_BAL = CUR_PAR_BAL + DEFERRED_CUR_BAL

■ For accounts with no deferred balances, DEFERRED_CUR_BAL = 0

CUR_PAR_BAL = $10,000

CUR_BOOK_BAL = $9,000

DEFERRED_CUR_BAL = $1,000

Page 589: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-35

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Deferred Original Balance (DEFERRED_ORG_BAL)

DefinitionOriginal non-amortized deferred balance representing future income/expense, such as premium, discount, fees, and costs.

Module UsageThis field must exist on the instrument table for cash flow processing, but is not used in any of the cash flow calculations.

Data Verification Requirements and Suggested DefaultsNot applicable.

Gross Margin (MARGIN_GROSS)

DefinitionThe contractual spread that is added to the pricing index, which results in the cus-tomer (Gross) rate, for adjustable rate accounts.

Module Usage

Risk Manager

1. If the Oracle Risk Manager Leaf Characteristics ID Model With Gross Rates is switched on, MARGIN_GROSS is used by Risk Manager during cash flow generation.

2. For adjustable-type records, MARGIN_GROSS is the contractual spread above/below the index that is applied throughout the instrument’s life. The customer’s gross rate (CUR_GROSS_RATE) is equal to the index to which the record is tied to plus a spread, which is defined by the MARGIN_GROSS field.

3. The events of a repricing involving MARGIN_GROSS are as follows:

At a repricing event (or a TEASER_END_DATE) for an adjustable-rate record, OFSA matches the INTEREST_RATE_CD, REPRICE_FREQ and repricing date of the detail record to the Forecast Rates ID of Oracle Risk Manager.

Page 590: fe115trm

Cash Flow Columns

10-36 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

After matching the rate from the Forecast Rates ID, OFSA adds the MARGIN_GROSS amount and applies any teases, rate caps/floors, and rounding to derive the rate that is applied to the record.

4. The repriced rate, defined in Step 3, equals the coupon rate that is used for amortization and prepayment purposes only. Interest income (financial element 430) are still derived from the CUR_NET_RATE + MARGIN.

For additional information see Current Gross Rate (CUR_GROSS_RATE).

Transfer Pricing

MARGIN_GROSS is not used by Oracle Transfer Pricing.

Data Verification Requirements and Suggested Defaults■ For fixed rate accounts, MARGIN_GROSS = 0.

■ For adjustable rate accounts with no contractual margin, MARGIN_GROSS = 0.

■ For administered rate accounts, MARGIN_GROSS = 0.

Historic Option-Adjusted Spread (HISTORIC_OAS)

DefinitionThe average spread over all stochastic rate paths that equates the discounted sum of future cash flows to the target balance at origination.

Note: As explained in the ADJUSTABLE_TYPE_CD section, OFSA does not reference repricing date information for ADJUSTABLE_TYPE_CD = 30 or 50.

Note: If the Risk Manager Process ID has the Model with Gross Rates option switched off, OFSA uses the CUR_NET_RATE and MARGIN for amortization, prepayment, and interest income calculation purposes.

However, there is one exception to this, which is described in Net Margin Code (NET_MARGIN_CD) section.

Page 591: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-37

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Module Usage

Transfer Pricing When Standard Calculation Mode is selected in the TP Process ID, the Oracle Transfer Pricing option cost module writes the result of its option-adjusted spread calculations to this column.

Historic Static Spread (HISTORIC_STATIC_SPREAD)

DefinitionThe spread over the implied forward rates that equates the discounted sum of future cash flows to the target balance at origination.

Module Usage

Transfer Pricing When Standard Calculation Mode is selected in the TP Process ID, the Oracle Transfer Pricing option cost module writes the result of its static spread calculations to this column.

Page 592: fe115trm

Cash Flow Columns

10-38 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

ID Number (ID_NUMBER)

DefinitionAccount number identifying individual customer accounts.

Module UsageID_NUMBER identifies the individual customer accounts in instrument tables. The ID_NUMBER should be unique for a given IDENTITY_CODE within an instru-ment table. OFSA cash flow processing uses ID_NUMBER to identify each account as it is processed.

It is also important for instruments with Payment Schedules (AMRT_TYPE_CD 800, 801, 802) because OFSA uses the INSTRUMENT_TYPE_CD and ID_NUMBER to determine the payment dates and amounts from PAYMENT_SCHEDULE.

Data Verification Requirements and Suggested Defaults■ ID_NUMBER is loaded into instrument tables from the source data. Because the

database ensures that ID_NUMBER is unique for each IDENTITY_CODE, there are no edits or defaults for this field.

Identity Code (IDENTITY_CODE)

DefinitionData identifier.

Module UsageIDENTITY_CODE is an identifier for sets of data loaded into an instrument table. IDENTITY_CODE identifies the data source for the individual customer account. OFSA uses IDENTITY_CODE to uniquely identify individual customer accounts.

The combination of ID_NUMBER and IDENTITY_CODE must be unique.

Data Verification Requirements and Suggested Defaults■ IDENTITY_CODE is loaded into instrument tables from the source data.

Because the database ensures that the combination of IDENTITY_CODE and ID_NUMBER is unique, there are no edits or defaults for this field.

Page 593: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-39

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Instrument Type Code (INSTRUMENT_TYPE_CD)

DefinitionCode identifying the instrument category of the customer account.

Module UsageINSTRUMENT_TYPE_CD identifies the account’s instrument. The following table lists each of the available INSTRUMENT_TYPE_CD values:

OFSA uses the INSTRUMENT_TYPE_CD to determine the instrument of an account when accounts of different instruments are grouped together (on a report or other query).

It is also important for instruments with Payment Schedules (AMRT_TYPE_CD 800, 801, 802) because OFSA uses the INSTRUMENT_TYPE_CD and ID_NUMBER to determine the payment dates and amounts from PAYMENT_SCHEDULE.

Data Verification Requirements and Suggested DefaultsThe INSTRUMENT_TYPE_CD value for an individual account should match the instrument type of the table in which it is stored. For example, all account records stored in the DEPOSITS table should be assigned INSTRUMENT_TYPE_CD = 210.

Code Value Description

110 Commercial loans

120 Consumer loans

130 Mortgages

140 Investments

141 MBS

150 Credit card

210 Deposits

220 Wholesale funding

Page 594: fe115trm

Cash Flow Columns

10-40 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Interest Type Code (INT_TYPE)

DefinitionDetermines whether interest cash flows are paid in advance or in arrears.

Module UsageOracle Risk Manager and Oracle Transfer Pricing cash flow methodologies refer-ence INT_TYPE in determining whether interest payments are made in arrears or in advance. INT_TYPE impacts the calculation of interest income (financial element 430, 435).

1. If INT_TYPE = 1, the record is considered ’interest in arrears’. Interest payments are paid at the end of the payment period along with the principal payments. See Accrual Basis Code (ACCRUAL_BASIS_CD) for interest income formulas.

2. If INT_TYPE = 2, the record is considered ’interest in advance’. Interest payments are paid at the beginning of the payment period starting from the ORIGINATION_DATE. Payments are made on every payment date except for the MATURITY_DATE.

3. The calculation used to determine interest income (financial element 430) for an interest in advance record depends also on the ACCRUAL_BASIS_CD. Below are the relevant equations for an ’interest in advance’ calculation:

For ACCRUAL_BASIS_CD 30/360, 30/365 and, 30/Actual the interest income cal-culation, when PMT_FREQ_MULT = M (assuming no compounding), is:

Current Period’s Ending Balance * Cur Net Rate/100 * PMT_FREQ [number of months] * [accrual basis] * (Following Payment Date - Next Payment Date)/(Calculated Following Payment Date - Next Payment Date)

where:

■ ’Following Payment Date’ is the payment after ’Next Payment Date’

■ ’Calculated Following Payment Date’ is the ’Next Payment Date’ rolled forward by the number of months in PMT_FREQ

Page 595: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-41

Oracle Proprietary, Confidential Information - Use Restricted by Contract

In most cases (a) would be the same as (b); however, if there is a short or extended maturity, (a) <> (b), and therefore the last interest cash flow (in other words, the payment just prior to maturity) would need to consider this factor.

For ACCRUAL_BASIS_CD Actual/365, Actual/Actual, Actual/360 (the example is for an Actual/365 record), the interest income calculation is:

Current Period’s Ending Balance * Cur Net Rate/100 * (Following Payment Date - Current Payment Date)/365

4. Even though OFSA pays ’interest in advance’ on every payment date except for the MATURITY_DATE, the REMAIN_NO_PMTS_C field should count MATURITY_DATE as a payment date because principal is still paid on this date.

Data Verification Requirements and Suggested Defaults■ If INT_TYPE = 2, AMRT_TYPE_CD = 700, 820, 801, 802 or non-conventionally

amortizing User-Defined Payment Patterns.

■ INT_TYPE valid values are ’1’ and ’2’.

■ If INT_TYPE = 2, REMAIN_NO_PMTS_C should still count MATURITY_DATE as a payment date.

■ If INT_TYPE = 2 and ORIGINATION_DATE > AS_OF_DATE, NEXT_PAYMENT_DATE and LAST_PAYMENT_DATE = ORIGINATION_DATE.

■ If the ORIGINATION_DATE > AS_OF_DATE, the NEXT_PAYMENT_DATE and LAST_PAYMENT_DATE should both equal the ORIGINATION_DATE.

■ For conventionally amortizing records, interest in advance is not a valid INT_TYPE code. Interest in advance functions with simple interest and level principal AMRT_TYPE_CDs.

■ If a compounding method has been chosen, OFSA derives the compounded rate before calculating the above interest income amounts. See Compounding Basis Code (COMPOUND_BASIS_CD) for further information.

Note: The ’Following Payment Date’ is the payment that follows the one currently being calculated.

Page 596: fe115trm

Cash Flow Columns

10-42 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Interest Rate Code (INTEREST_RATE_CD)

DefinitionIdentifies the index to which adjustable rate accounts are tied.

Module Usage

Risk Manager

The Oracle Risk Manager Knowledge Engine references INTEREST_RATE_CD when calculating a forecasted interest rate for Oracle Risk Manager.

1. The detail record’s INTEREST_RATE_CD has a corresponding reference in the Risk Manager Forecast Rate ID and Historical Rate ID. These Risk Manager IDs contain the term structure and rate values of the yield curve.

2. At a repricing event (or a TEASER_END_DATE) for an adjustable-rate record, OFSA matches the INTEREST_RATE_CD, REPRICE_FREQ and repricing date of the detail record to the Forecast Rates ID of Risk Manager. After matching the rate from the Forecast Rates ID, OFSA adds the MARGIN amount and applies any teases, rate caps/floors, and rounding to derive the rate that is applied to the record.

3. The exact value of the INTEREST_RATE_CD is user-defined, but it must be within the range of 001 - 999. However, fixed-rate records, which do not reference the INTEREST_RATE_CD, can be defaulted to a value of ë0í.

Transfer Pricing

Oracle Transfer Pricing does not reference INTEREST_RATE_CD because it pro-cesses cash flows within repricing periods.

Note: As explained in the Adjustable Type Code (ADJUSTABLE_TYPE_CD) section, OFSA does not reference repricing date information for ADJUSTABLE_TYPE_CD = 30 or 50.

Page 597: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-43

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Data Verification Requirements and Suggested Defaults■ If ADJUSTABLE_TYPE_CD = 0, INTEREST_RATE_CD can be defaulted to ë0í.

■ If ADJUSTABLE_TYPE_CD <> 0, INTEREST_RATE_CD = 001 - 999.

Issue Date (ISSUE_DATE)

DefinitionDate the account was originated (issued) by the originating institution.

Module UsageThe Oracle Risk Manager Knowledge Engine references ISSUE_DATE for future originating accounts.

ISSUE_DATE is referenced by the Knowledge Engine in Market Value and GAP cal-culations when processing records with future origination dates. If ISSUE_DATE <= AS_OF_DATE and ORIGINATION_DATE > AS_OF_DATE, the record is an account which has been traded but not settled. Therefore, the record is included in the Risk Manager Market Value and GAP results if these processing options have been selected.

However, if ISSUE_DATE > AS_OF_DATE and ORIGINATION_DATE > AS_OF_DATE, the record has been neither traded nor originated. Therefore the balance associated with the record is not included in static Market Value or static GAP results (static means as of the AS_OF_DATE).

Data Verification Requirements and Suggested Defaults■ For accounts originated by the current institution, ISSUE_DATE =

ORIGINATION_DATE.

■ For accounts acquired through acquisition of another institution, or purchase of a pool of accounts, ISSUE_DATE < ORIGINATION_DATE.

■ If ORIGINATION_DATE from the original institution is not available, ISSUE_DATE = ORIGINATION_DATE.

■ ISSUE_DATE + ISSUE TERM = MATURITY_DATE

Note: If the dynamic start dates in the Risk Manager Configuration ID are set on or beyond the future ORIGINATION_DATE of the record, Market Value and GAP results are calculated.

Page 598: fe115trm

Cash Flow Columns

10-44 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

■ ISSUE_DATE <= LAST_REPRICE_DATE

■ ISSUE_DATE <= ORIGINATION_DATE. ISSUE_DATE cannot be greater than ORIGINATION_DATE.

■ For adjustable-rate records, when the LAST_REPRICE_DATE is less than the ISSUE_DATE, transfer pricing does not occur. If ADJUSTABLE_TYPE_CD = 0, LAST_REPRICE_DATE can be defaulted to be less than or equal to the ISSUE_DATE.

Last Payment Date (LAST_PAYMENT_DATE)

DefinitionThe date on which the record’s last payment was made.

Module Usage

Risk Manager

Oracle Risk Manager uses LAST_PAYMENT_DATE to calculate the payment period and interest income (financial element 430) for the first forecasted cash flow.

1. The first forecasted cash flow from the AS_OF_DATE references NEXT_PAYMENT_DATE minus LAST_PAYMENT_DATE in order to determine the payment period for interest income calculations. The use of LAST_PAYMENT_DATE rather than (NEXT_PAYMENT_DATE - PMT_FREQ) provides for short or extended first period payments. Beyond the first forecasted cash flow (NEXT_PAYMENT_DATE), OFSA rolls forward by PMT_FREQ until MATURITY_DATE. See Next Payment Date (NEXT_PAYMENT_DATE) for further information.

2. For instruments that have been originated in the past (AS_OF_DATE >= ORIGINATION_DATE), the LAST_PAYMENT_DATE should always be greater than or equal to the ORIGINATION_DATE.

3. For future originations (AS_OF_DATE < ORIGINATION_DATE), LAST_PAYMENT_DATE should always be equal to the ORIGINATION_DATE.

4. Even though the first forecasted cash flow may be extended, the PMT_FREQ should always be extracted as the records general frequency of payment.

5. For interest income calculation examples that reference LAST_PAYMENT_DATE, see Accrual Basis Code (ACCRUAL_BASIS_CD) and Interest Type Code (INT_TYPE).

Page 599: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-45

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Transfer Pricing

Oracle Transfer Pricing does not reference LAST_PAYMENT_DATE.

Data Verification Requirements and Suggested Defaults■ Default to NEXT_PAYMENT_DATE - PMT_FREQ if actual LAST_PAYMENT_

DATE is not available.

■ LAST_PAYMENT_DATE < NEXT_PAYMENT_DATE.

■ If ORIGINATION_DATE > AS_OF_DATE, LAST_PAYMENT_DATE = ORIGINATION_DATE.

■ If ORIGINATION_DATE <= AS_OF_DATE, LAST_PAYMENT_DATE >= ORIGINATION_DATE.

■ If INT_TYPE = 2 and ORIGINATION_DATE > AS_OF_DATE, NEXT_PAYMENT_DATE and LAST_PAYMENT_DATE = ORIGINATION_DATE.

Last Repricing Date (LAST_REPRICE_DATE)

DefinitionFor adjustable rate accounts, the‘ last date that the current interest rate changed.

Module Usage

Risk Manager

Oracle Risk Manager does not reference the LAST_REPRICE_DATE field for either fixed or adjustable-rate records. All rate information in Risk Manager is generated in the future from the AS_OF_DATE. CUR_NET_RATE, CUR_GROSS_RATE, and TRANSFER_RATE information from the detail record are referenced to obtain the rate information from the LAST_REPRICE_DATE.

Page 600: fe115trm

Cash Flow Columns

10-46 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Transfer Pricing

1. For an adjustable-rate straight term transfer-priced record, Oracle Transfer Pricing uses the LAST_REPRICE_DATE to identify the assignment date (Yield Curve Date). The Interest Rate Code’s assignment date just before (or equal to) the record’s LAST_REPRICE_DATE is used as the transfer pricing yield curve.

For example, if the record’s LAST_REPRICE_DATE = 1/15/1997 and the Historical Rate ID’s interest rate code (IRC) is defined at monthly intervals and only at month-end, the assignment date would be 12/31/1996. The REPRICE_FREQ is then matched to the same term on the transfer pricing yield curve (IRC) defined in the Historical Rates ID in Oracle Transfer Pricing.

2. For an adjustable-rate cash flow transfer-priced record, OFSA cash flow transfer prices all payments that occur from the LAST_REPRICE_DATE to the NEXT_REPRICE_DATE. In this case, the term and date as defined by these two fields are not used directly to define the transfer rate. They are the starting and ending points within which OFSA applies cash flow transfer pricing.

3. For fixed-rate records, the LAST_REPRICE_DATE and NEXT_REPRICE_DATE are not referenced. ORIGINATION_DATE and MATURITY_DATE are used instead.

Data Verification Requirements and Suggested Defaults■ Oracle Transfer Pricing specific:

■ If REPRICE_FREQ = 0, LAST_REPRICE_DATE = ORIGINATION_DATE.

■ If REPRICE_FREQ <> 0, LAST_REPRICE_DATE >= ORIGINATION_DATE

■ If REPRICE_FREQ <> 0, LAST_REPRICE_DATE <= AS_OF_DATE

■ If REPRICE_FREQ <> 0 and TEASER_END_DATE <= AS_OF_DATE, LAST_REPRICE_DATE + REPRICE_FREQ = NEXT_REPRICE_DATE LAST_

REPRICE_DATE < NEXT_REPRICE_DATE

Note: In addition to REPRICE_FREQ, Oracle Risk Manager also uses the ADJUSTABLE_TYPE_CD to determine if a record is adjustable.

Page 601: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-47

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Last Reprice Date Balance (LRD_BALANCE)

DefinitionBalance as of the record’s previous repricing event.

Module Usage

Risk Manager

Oracle Risk Manager does not reference the LRD_BALANCE.

Transfer Pricing

Oracle Transfer Pricing cash flow methodologies reference LRD_BALANCE when transfer-pricing adjustable-rate records. LRD_BALANCE holds the balance as of the LAST_REPRICE_DATE.

When transfer pricing adjustable-rate records, LRD_BALANCE is used as the start-ing balance from the LAST_REPRICE_DATE. When cash flow transfer pricing an adjustable-rate record, OFSA calculates the payment events from the LAST_REPRICE_DATE to the NEXT_REPRICE_DATE. If payments (amortization) occurred in between the LAST_REPRICE_DATE and the AS_OF_DATE, the record’s existing CUR_PAR_BAL is smaller than it was on the LAST_REPRICE_DATE. Therefore, in order to provide an accurate balance amount at the time of the LAST_REPRICE_DATE, the LRD_BALANCE has been provided. Oracle Transfer Pricing amortizes the LRD_BALANCE from the LAST_REPRICE_DATE until the NEXT_REPRICE_DATE.

Data Verification Requirements and Suggested Defaults■ If the record is fixed-rate, LRD_BALANCE = ORG_PAR_BAL.

■ If the record is adjustable-rate, LRD_BALANCE = balance as of the last reprice date.

■ If the balance as of the last reprice date is not known, default LRD_BALANCE to CUR_PAR_BAL.

Page 602: fe115trm

Cash Flow Columns

10-48 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Margin (MARGIN)

DefinitionMARGIN is the contractual spread in Oracle Risk Manager that is added to the pric-ing index and results in the financial institution’s retention (net) rate, for adjust-able-rate accounts.

Module Usage

Risk Manager

1. MARGIN is used during cash flow generation.

2. For adjustable-type records, MARGIN is the contractual spread above/below the index that is applied throughout the instrument’s life. The financial institution’s retention rate (CUR_NET_RATE) is equal to the index that the record is tied to plus a spread, which is defined by the MARGIN field.

3. The events of a repricing involving MARGIN are as follows:

At a repricing event (or a TEASER_END_DATE) for an adjustable-rate record, OFSA matches the INTEREST_RATE_CD, REPRICE_FREQ and repricing date of the detail record to the Forecast Rates ID. After matching the rate from the Forecast Rates ID, OFSA adds the MARGIN amount and applies any teases, rate caps/floors, and rounding to derive the rate that is applied to the record.

Note: As explained in the Adjustable Type Code (ADJUSTABLE_TYPE_CD) section, OFSA does not reference repricing date information for ADJUSTABLE_TYPE_CD = 30 or 50.

Page 603: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-49

Oracle Proprietary, Confidential Information - Use Restricted by Contract

4. The repriced rate defined in Step 3 equals the coupon rate that is used for amortization, prepayment, and interest income (financial element 430) calculations.

For more detailed information on this see the Current Gross Rate (CUR_GROSS_RATE) section.

Transfer Pricing

MARGIN is used only when mid-period repricing is selected for spread from Note Rate to compute the rate from a prior period.

Data Verification Requirements and Suggested Defaults■ For administered rate accounts, MARGIN = 0.

■ For adjustable rate accounts with no contractual margin, MARGIN = 0.

■ For applicable accounts, margin can be positive or negative.

Market Value (MARKET_VALUE_C)

DefinitionMarket Value Price, calculated by Oracle Risk Manager, or populated by the institu-tion for use by Oracle Transfer Pricing Option Cost calculations.

OFSA Module Usage

Risk Manager

Oracle Risk Manager computes MARKET_VALUE_C when the Market Value option is selected in the Risk Manager Process ID and the ’Calculate MV’ and ’Update Instr Data’ options are selected in the active Configuration ID (dynamic buckets section).

Note: If the OFSA/RM Leaf Characteristics ID has the ’Model with Gross Rates’ option switched on, OFSA uses the CUR_GROSS_RATE and MARGIN_GROSS for amortization and prepayment purposes.

Page 604: fe115trm

Cash Flow Columns

10-50 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

It is calculated as:

Market Value / CUR_NET_PAR_BAL_C * 100

where the Market Value is based on the Discount Rate ID assumptions used in the Process ID.

Transfer Pricing

Oracle Transfer Pricing does not use MARKET_VALUE_C, except in Option Cost-ing. When Remaining Term Calculation Mode is selected in the TP Process ID, and the Target Balance for the subject product leaf is Market Value, Oracle Transfer Pric-ing Option Cost calculations use the product of CUR_PAR_BAL and MARKET_VALUE_C as the target balance to which the sum of future discounted cash flows is set equal.

Data Verification Requirements and Suggested DefaultsBecause Oracle Risk Manager calculates MARKET_VALUE_C, the default can be set to 0 for organizations that use Oracle Risk Manager only. Organizations that use Oracle Transfer Pricing option cost calculations may need to populate the column during the extract and record loading process.

Matched Spread (MATCHED_SPREAD_C)

DefinitionInterest margin on a product, calculated by Oracle Transfer Pricing.

Module Usage

Risk Manager

Oracle Risk Manager does not use MATCHED_SPREAD_C.

Page 605: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-51

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Transfer Pricing

Oracle Transfer Pricing computes MATCHED_SPREAD_C when processing using the standard pricing basis (when the remaining term pricing basis switch in the Transfer Pricing Process ID is off). It is calculated as follows:

Data Verification Requirements and Suggested DefaultsBecause OFSA calculates MATCHED_SPREAD_C, the default can be set to 0.

For assets: Current Net Rate - Transfer Rate

For liabilities: Transfer Rate - Current Net Rate

Page 606: fe115trm

Cash Flow Columns

10-52 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Maturity Date (MATURITY_DATE)

DefinitionContractual date on which the principal balance of an earning asset or debt instru-ment is due and payable to the holder.

Module UsageFor both Oracle Risk Manager and Oracle Transfer Pricing, MATURITY_DATE defines the final date of payment for the record. The MATURITY_DATE signals the end of processing for a given record.

Risk Manager

1. As described in the NEXT_PAYMENT_DATE section, OFSA processes a record until the MATURITY_DATE has been reached. This occurs in one of two ways:

■ The PMT_FREQ is rolled until it finally reaches the MATURITY_DATE.

■ The REMAIN_NO_PMTS_C is reduced to ’1’, in which case, the record immediately moves to its MATURITY_DATE. See Remaining Number of Payments (REMAIN_NO_PMTS_C) and Amortization term (AMRT_TERM) for details, including special considerations for payment-patterned records.

2. MATURITY_DATE is considered the final payment date. Any remaining principal balance that was not reduced by a scheduled payment date is paid on the MATURITY_DATE (regularly scheduled principal runoff is financial element 190 or 192 and maturity principal runoff is financial element 195 or 197). Therefore, at the MATURITY_DATE, the record’s balance is reduced to ’0’.

3. If the record has a balloon amortization, the maturity payment iincludes the balloon or large final payment.

4. User-Defined Payment Schedules are an exception. Payment Schedules make their final payment on the last day as defined in the PAYMENT_SCHEDULE table. MATURITY_DATE is not referenced.

5. User-Defined Payment Patterns reference the MATURITY_DATE as the final payment date. In addition, in order to calculate the remaining number of payments, if the payment pattern is ’split’ or if the balance is a new business record, Oracle Risk Manager references the payment pattern payment frequencies and counts the number of payments from the AS_OF_DATE to the MATURITY_DATE (new business records reference the future date of origination rather than the AS_OF_DATE).

Page 607: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-53

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Transfer Pricing

1. MATURITY_DATE is referenced for fixed-rate straight term transfer pricing methodologies. When defining the record’s transfer pricing term, OFSA subtracts the ORIGINATION_DATE from the MATURITY_DATE. The term is then matched to the relevant Interest Rate Code (IRC) in the Historical Rates ID. The derived rate are applied to the record as the TRANSFER_RATE.

2. MATURITY_DATE is referenced by cash flow transfer pricing methodologies for both adjustable and fixed-rate records. For adjustable records, OFSA transfer prices all cash flows on payment dates within the LAST_REPRICE_DATE and NEXT_REPRICE_DATE. The MATURITY_DATE is used to determine the last payment of a record. Its use is the same as described below for Oracle Risk Manager records.

3. The MATURITY_DATE is also referenced in order to determine the remaining number of payments for user-defined payment pattern records. OFSA references the payment pattern payment frequencies and counts the number of payments from the ORIGINATION_DATE to the MATURITY_DATE.

Data Verification Requirements and Suggested Defaults■ For non-term accounts, MATURITY_DATE = AS_OF_DATE + 1 Day. If

MATURITY_DATE is defaulted to 19000101, the record’s balance is not processed by Oracle Risk Manager.

■ For term accounts, MATURITY_DATE is required.

■ If the record is not past due or defaulted, MATURITY_DATE > AS_OF_DATE.

■ MATURITY_DATE = ORIGINATION_DATE + ORG_TERM

■ MATURITY_DATE = ISSUE_DATE + ISSUE_TERM

■ MATURITY_DATE = AS_OF_DATE + REMAIN_TERM_C

■ MATURITY_DATE <= NEXT_PAYMENT_DATE + (REMAIN_NO_PMTS_C * PMT_FREQ).

Assume that MATURITY_DATE is less than NEXT_PAYMENT_DATE + (REMAIN_NO_PMTS_C * PMT_FREQ). This implies that an account’s calculated final payment date differs from MATURITY_DATE (the condition results in what is called a stub payment). In this case, the Knowledge Engine forces the true last payment to be made on the maturity date. If condition ’7’ is not met (most likely caused because REMAIN_NO_PMTS_C is too low), the Knowledge Engine skips scheduled payments.

Page 608: fe115trm

Cash Flow Columns

10-54 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Negative Amortization Amount (NEG_AMRT_AMT)

DefinitionThe total amount of principal added to outstanding principal, resulting from pay-ments which were not large enough to cover interest due.

Module UsageThe Oracle Risk Manager and Oracle Transfer Pricing adjustable-type cash flow methodologies reference NEG_AMRT_AMT in calculating the current payment for negative amortization-type accounts. This is relevant only for adjustable-rate accounts with AMRT_TYPE_CD = 600.

1. In a negatively amortizing record, the CUR_PAYMENT is less than the principal and interest that is due on the payment date. The interest portion that is not included in the payment goes to two places. It is added to the NEG_AMRT_AMT field and is added back to the principal amount. Because the NEG_AMRT_AMT balance is already included in the outstanding principal balance, NEG_AMRT_AMT is not explicitly used when the Knowledge Engine fully re-amortizes the account.

2. NEG_AMRT_AMT is used by the Knowledge Engine to keep track of negative amortization separately from non-negative amortization (normal) principal balance. It is separate for two reasons:

■ Because OFSA pays down the negatively amortized portion before the principal portion, a separation of the two amounts must be done to enable OFSA to identify what portion of the principal balance is negatively amortized.

■ When calculating the current payment, the Knowledge Engine uses NEG_AMRT_AMT in its check to see if NEG_AMRT_LIMIT has been exceeded. See the Negative Amortization Limit (NEG_AMRT_LIMIT) for more details.

Following is the process of events in regards to NEG_AMRT_AMT and related neg-ative amortization fields:

1. Record is currently negatively amortizing because the payment amount, as defined by CUR_PAYMENT, is not enough to cover the principal and interest portion. The unpaid interest at each payment date goes into the NEG_AMRT_AMT field and back into the principal

2. While calculating a payment event (payment date), if the Knowledge Engine calculates negative principal runoff, OFSA checks the negative amortization

Page 609: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-55

Oracle Proprietary, Confidential Information - Use Restricted by Contract

limit (NEG_AMRT_LIMIT) in order to ensure that the current NEG_AMRT_AMT is not exceeding its limit. NEG_AMRT_LIMIT is defined as a percentage of the original principal balance. If NEG_AMRT_AMT is exceeding this limit, OFSA recalculates the payment amount in order to fully amortize the instrument.

3. However, when deriving the recalculated payment amount after a NEG_AMRT_LIMIT has been exceeded, OFSA also applies payment decrease/increase limits per period (PMT_DECR_CYCLE, PMT_INCR_CYCLE) and payment decrease/increase limits for the life of the record (PMT_DECR_LIFE, PMT_INCR_LIFE). Because these fields limit how much the CUR_PAYMENT can be changed, it is possible that the record continues to negatively amortize even after a NEG_AMRT_LIMIT has been exceeded. If negative amortization does continue, the NEG_AMRT_AMT continues to grow.

4. OFSA also attempts to recalculate the negatively amortizing payment amount on a PMT_ADJUST_DATE. Just like a payment recalculation for a NEG_AMRT_LIMIT, a payment recalculation on the PMT_ADJUST_DATE takes into account the effects of payment decrease/increase limits per period and payment decrease/increase limits for the life of the record. This provides for additional negative amortization to occur even after the PMT_ADJUST_DATE has recalculated the payment amount. PMT_ADJUST_DATE is incremented forward by the PMT_CHG_FREQ field until the maturity.

5. In addition to PMT_ADJUST_DATE and NEG_AMRT_LIMIT, the record can experience a payment recalculation on the negative amortization equalization date (NEG_AMRT_EQ_DATE). On this date, the record’s CUR_PAYMENT will be fully re-amortized. NEG_AMRT_EQ_DATE will ignore payment decrease/increase limits per period and payment decrease/increase limits for the life of the record. Therefore, after the payment recalculation of a NEG_AMRT_EQ_DATE, the record will no longer be negatively amortizing and the NEG_AMRT_EQ_DATE is incremented forward by the NEG_AMRT_EQ_FREQ until maturity.

Data Verification Requirements and Suggested Defaults■ NEG_AMRT_LIMIT must be within the range of ë0í to ë100í.

■ For AMRT_TYPE_CD <> 600, NEG_AMRT_AMT = 0.

■ If AMRT_TYPE_CD = 600, 0 <= NEG_AMRT_AMT <= NEG_AMRT_LIMIT/100 * ORG_PAR_BAL

■ If not applicable, default to 0.

Page 610: fe115trm

Cash Flow Columns

10-56 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Negative Amortization Equalization Date (NEG_AMRT_EQ_DATE)

DefinitionThe next date that a negative amortization-type account will fully re-amortize, regardless of payment caps and floors.

Module UsageThe Oracle Risk Manager and Oracle Transfer Pricing adjustable-type cash flow methodologies reference NEG_AMRT_EQ_DATE when calculating the current pay-ment for negative amortization-type accounts. NEG_AMRT_EQ_DATE is relevant only for adjustable-rate accounts with AMRT_TYPE_CD = 600.

1. On the NEG_AMRT_EQ_DATE, a negatively amortizing record’s payment will be recalculated. On this date, the record’s CUR_PAYMENT will be fully re-amortized. NEG_AMRT_EQ_DATE will ignore payment decrease/increase limits per period and payment decrease/increase limits for the life of the record. Therefore, after the payment recalculation of a NEG_AMRT_EQ_DATE, the record will no longer be negatively amortizing.

2. NEG_AMRT_EQ_DATE is incremented forward by the NEG_AMRT_EQ_FREQ until the maturity date is reached.

3. For an explanation of NEG_AMRT_EQ_DATE’s relationship with other related negative amortization fields, see Negative Amortization Amount (NEG_AMRT_AMT).

Data Verification Requirements and Suggested Defaults■ If AMRT_TYPE_CD <> 600, NEG_AMRT_EQ_DATE = 19000101.

■ If AMRT_TYPE_CD = 600, NEG_AMRT_EQ_DATE > ORIGINATION_DATE

■ If AMRT_TYPE_CD = 600, NEG_AMRT_EQ_DATE < MATURITY_DATE

Note: If NEG_AMRT_EQ_FREQ = 0, once the modeling date is past the NEG_AMRT_EQ_DATE, the Knowledge Engine does not attempt to re-amortize the negative amortized amount.

Page 611: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-57

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Negative Amortization Equalization Frequency (NEG_AMRT_EQ_FREQ)

DefinitionUsed in conjunction with NEG_ AMRT_EQ_MULT to define the frequency that neg-atively amortizing accounts are fully re-amortized.

Module UsageOracle Risk Manager and Oracle Transfer Pricing cash flow methodologies refer-ence NEG_AMRT_EQ_FREQ in calculating the current payment for negative amor-tization-type accounts. This is relevant only for adjustable-rate accounts with AMRT_TYPE_CD = 600.

1. From the NEG_AMRT_EQ_DATE, OFSA rolls forward by the NEG_AMRT_EQ_FREQ until the maturity date.

2. At each instance of a NEG_AMRT_EQ_FREQ, OFSA recalculates the payment as it did for the NEG_AMRT_EQ_DATE. On these roll dates, the record’s CUR_PAYMENT will be fully re-amortized. NEG_AMRT_EQ_FREQ will ignore payment decrease/increase limits per period and payment decrease/increase limits for the life of the record. Therefore, after the payment recalculation of a NEG_AMRT_EQ_FREQ, the record will no longer be negatively amortizing.

3. If NEG_AMRT_EQ_FREQ = 0, once the modeling date is past the NEG_AMRT_EQ_DATE, the Knowledge Engine will not attempt to re-amortize the negative amortized amount. In this case, any negative amortized balance will balloon at maturity.

4. For an explanation of NEG_AMRT_EQ_FREQ’s relationship with other related negative amortization fields, see NEG_AMRT_AMT.

Data Verification Requirements and Suggested Defaults■ If AMRT_TYPE_CD = 600, NEG_AMRT_EQ_FREQ must be either 0 or a

positive value. NEG_AMRT_EQ_FREQ cannot be negative.

■ If AMRT_TYPE_CD <> 600, NEG_AMRT_EQ_FREQ = 0.

■ If AMRT_TYPE_CD = 600, 0 <= NEG_AMRT_EQ_FREQ < ORG_TERM

■ If AMRT_TYPE_CD = 600, AS_OF_DATE < NEG_AMRT_EQ_DATE <= MATURITY_DATE

■ Validation of NEG_AMRT_EQ_FREQ should always be done in conjunction with NEG_AMRT_EQ_MULT.

Page 612: fe115trm

Cash Flow Columns

10-58 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Negative Amortization Equalization Frequency Multiplier (NEG_AMRT_EQ_MULT)

DefinitionUsed in conjunction with NEG_AMRT_EQ_FREQ to define the frequency that nega-tively amortizing accounts are fully re-amortized.

Module UsageThis field is the multiplier of the NEG_AMRT_EQ_FREQ field. It is used in conjunc-tion with NEG_AMRT_EQ_FREQ to define the frequency that negatively amortiz-ing accounts are fully re-amortized. Oracle Risk Manager and Oracle Transfer Pricing cash flow calculations reference NEG_AMRT_EQ_MULT when recalculat-ing the current payment as defined under the NEG_AMRT_EQ_FREQ section. NEG_AMRT_EQ_MULT determines the units (Months, Days or Years) of NEG_AMRT_EQ_FREQ.

Data Verification Requirements and Suggested Defaults■ Valid values are:

■ D - Days

■ M - Months

■ Y - Years

■ Refer to the validation discussion for Negative Amortization Equalization Frequency (NEG_AMRT_EQ_FREQ) for information on NEG_AMRT_EQ_MULT validation.

■ Suggested default is ’M’.

Negative Amortization Limit (NEG_AMRT_LIMIT)

DefinitionMaximum negative amortization allowed as a percentage of the original balance.

Module UsageOracle Risk Manager and Oracle Transfer Pricing cash flow methodologies refer-ence NEG_AMRT_LIMIT when determining if the NEG_AMRT_AMT is exceeding its defined limits. This is relevant only for adjustable-rate accounts with AMRT_TYPE_CD = 600.

Page 613: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-59

Oracle Proprietary, Confidential Information - Use Restricted by Contract

1. While calculating a payment event (payment date), if the Knowledge Engine calculates negative principal runoff, OFSA checks the negative amortization limit (NEG_AMRT_LIMIT) in order to ensure that the current NEG_AMRT_AMT is not exceeding its limit. NEG_AMRT_LIMIT is defined as a percentage of the original principal balance.

For example, NEG_AMRT_LIMIT = 25 means that the negative amortization amount should never exceed 25% of the original principal balance (principal balance should never exceed 125% of the original balance). The formula for this check is:

(-1 * calculated (negative) principal runoff + negative amortization balance > NEG_AMRT_LIMIT/100 * ORG_PAR_BAL)

If NEG_AMRT_AMT is exceeding this limit, OFSA recalculates the payment amount in order to fully amortize the instrument.

2. When deriving the recalculated payment amount after a NEG_AMRT_LIMIT has been reached, OFSA also applies payment decrease/increase limits per period (PMT_DECR_CYCLE, PMT_INCR_CYCLE) and payment decrease/increase limits for the life of the record (PMT_DECR_LIFE, PMT_INCR_LIFE). Because these fields limit how much the CUR_PAYMENT can be changed, it is possible that the record will continue to negatively amortize even after a NEG_AMRT_LIMIT has been exceeded. If negative amortization does continue, the NEG_AMRT_AMT will continue to grow.

3. For an explanation of NEG_AMRT_LIMIT’s relationship with other related negative amortization fields, see Negative Amortization Amount (NEG_AMRT_AMT).

Data Verification Requirements and Suggested Defaults1. If AMRT_TYPE_CD <> 600, NEG_AMRT_LIMIT = 0

2. If AMRT_TYPE_CD = 600, NEG_AMRT_LIMIT >= 0

Net Margin Code (NET_MARGIN_CD)

DefinitionNET_MARGIN_CD defines the relationship between CUR_GROSS_RATE and CUR_NET_RATE for the Knowledge Engine.

Page 614: fe115trm

Cash Flow Columns

10-60 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Module UsageOracle Risk Manager and Oracle Transfer Pricing cash flow methodologies refer-ence NET_MARGIN_CD when calculating a forecasted interest rate. NET_MARGIN_CD has the following two, valid values:

■ Floating Net Rate = ’0’

■ Fixed Net Rate = ’1’

These are described below:

Floating Net Rate (NET_MARGIN_CD = 0): This is the default value for the Net Margin Code. If the detail data’s NET_MARGIN_CD field is set to ’0’ (floating), the Existing Business record will reprice at the relevant reprice dates, as described under the NEXT_REPRICE_DATE section. If the Leaf Characteristics’ Net Margin Flag is set to Floating Net Rate, the New Business record will also reprice at the rele-vant reprice dates. Interest Income (FE 430) will be based off of the CUR_NET_RATE.

Fixed Net Rate (NET_MARGIN_CD = 1): This setting is used by financial institu-tions that maintain the loans of other financial institutions. For example, Bank A may service (operate and process) the loans of Bank B. Bank B pays Bank A a fixed spread or margin as payment for maintaining the loans. Because Bank A receives a guaranteed fixed spread, only Bank B gains or loses when the actual loan reprices. For this reason, if the record reprices, Bank A should not experience any change in interest income.

If the detail record’s NET_MARGIN_CD field is set to ’1’ (fixed) and the ’Model With Gross Rates’ switch is turned on in the RM LEAF CHARACTERICS ID, the existing business record does not reprice even if the record is an adjustable-rate product (CUR_NET_RATE does not reprice). It is assumed that the rate received by the bank (Bank A) equals the fixed spread that the bank is receiving as payment for maintaining the loans. The record’s CUR_NET_RATE field represents this fixed spread and is used for interest income (financial element 430) calculations while the record’s CUR_GROSS_RATE is used for prepayments and amortization.

With regards to business (business originating beyond the AS_OF_DATE), if the Leaf Characteristics ID’s Net Margin Flag is set to Fixed Net Rate and the ’Model With Gross Rates’ switch is turned on in the Risk Manager Forecast Rates ID, the rate used to derive new business interest income is taken from the Pricing Margin ID Net Margin and not from the Forecast Rates ID. This is because it is assumed that the Pricing Margin ID contains the fixed spread that the bank is receiving as payment for maintaining the loans. The Net Margin

Page 615: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-61

Oracle Proprietary, Confidential Information - Use Restricted by Contract

from the Pricing Margin ID is used for interest income calculations while the gross rate, which is derived from the Forecast Rates ID, is used for prepayment and amortization calculations.

3. If the NET_MARGIN_CD is set to Fixed Net Rate, but the ’Model with Gross Rates’ switch is not turned on, OFSA treats the records as if they were Floating Net Rate.

Data Verification Requirements and Suggested Defaults■ NET_MARGIN_CD must be equal to ’0’ or ’1’.

■ For fixed-rate accounts and adjustable accounts that reprice, NET_MARGIN_CD = 0.

■ For adjustable-rate accounts that represent records being serviced for a fixed fee, set NET_MARGIN_CD = 1.

Next Payment Date (NEXT_PAYMENT_DATE)

DefinitionDue date of the next scheduled payment. Otherwise known as cash flow date or date of runoff.

Module UsageNEXT_PAYMENT_DATE is used to define the next scheduled (forecasted) payment date.

Risk Manager

Processing order in regards to NEXT_PAYMENT_DATE is as follows:

1. From the AS_OF_DATE, the first cash flow event processed by OFSA is the NEXT_PAYMENT_DATE. OFSA references the NEXT_PAYMENT_DATE for the first forecasted payment date only. This applies to payment patterns (relative and absolute), but not for Payment Schedules. See below for details.

Note: The CUR_GROSS_RATE is used for amortization and prepayment calculation purposes and reflects the correct repriced rate for all such calculations.

Page 616: fe115trm

Cash Flow Columns

10-62 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

2. From the NEXT_PAYMENT_DATE, OFSA increments forward by the PMT_FREQ until the MATURITY_DATE is reached.

3. On the payment date OFSA calculates the interest payments, principal payments, current deferred payments, prepayments, and negative amortization, if applicable. For an adjustable-type record where REPRICE_FREQ < PMT_FREQ, OFSA applies only the last repriced rate for the purpose of payment calculation. If the record is not an AMRT_TYPE_CD 700 (non-amortizing) or an AMRT_TYPE_CD 600 (negatively amortizing), the record’s principal balance is reduced at each payment date.

4. As each payment is made, OFSA reduces the REMAIN_NO_PMTS_C by ë1í. If the newly calculated REMAIN_NO_PMTS_C = 1, the next payment date is set to MATURITY_DATE.

5. MATURITY_DATE is the final payment date. If the record’s principal was not reduced by the payment amounts, the remaining principal balance is paid on the MATURITY_DATE.

Transfer Pricing

Note: For User-Defined Payment Schedules or Patterns, OFSA does not reference the PMT_FREQ field. Instead, OFSA references the schedule or pattern information to define the additional forecasted payment dates.

Note: The use of REMAIN_NO_PMTS_C varies depending on record type. See the Remaining Number of Payments (REMAIN_NO_PMTS_C) and Amortization Term (AMRT_TERM) sections for details, including special considerations for payment-patterned records.

Note: For Payment Schedules, OFSA does not use the NEXT_PAYMENT_DATE field. For these records, OFSA makes the next payment on the first date in the schedule after the AS_OF_DATE. However, for Payment Schedules and User-Defined Payment Patterns, the NEXT_PAYMENT_DATE from the detail record should correspond to the next defined payment date after the AS_OF_DATE in the Schedule or Pattern interface.

Page 617: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-63

Oracle Proprietary, Confidential Information - Use Restricted by Contract

NEXT_PAYMENT_DATE is used for adjustable-rate cash flow transfer-priced records. In defining the transfer rate for an adjustable rate record, OFSA produces cash flows for each payment date from the LAST_REPRICE_DATE to the NEXT_REPRICE_DATE. In order to define all the payment events within this period, OFSA rolls back from the NEXT_PAYMENT_DATE by the PMT_FREQ until just before the LAST_REPRICE_DATE. From this calculated payment date, OFSA again rolls forward by the PMT_FREQ, but this time cash flows are produced. The cash flows produced are used by one of the three cash flow transfer pricing methodolo-gies in order to derive the transfer rate.

Data Verification Requirements and Suggested DefaultsRequired Conditions:

■ NEXT_PAYMENT_DATE > AS_OF_DATE

■ Also included in NEXT_PAYMENT_DATE is the modeling of past due, delinquent, or non-term accounts, if they are to be processed by the Knowledge Engine.

For example, if the NEXT_PAYMENT_DATE is defaulted to 1900/01/01, OFSA rolls the record by PMT_FREQ from that date until the maturity date.

■ NEXT_PAYMENT_DATE <= MATURITY_DATE

■ If REMAIN_NO_PMTS_C > 1, NEXT_PAYMENT_DATE < MATURITY_DATE

■ If REMAIN_NO_PMTS_C = 1, NEXT_PAYMENT_DATE = MATURITY_DATE

■ MATURITY_DATE <= NEXT_PAYMENT_DATE + (REMAIN_NO_PMTS_C * PMT_FREQ).

■ If the amortization type is an absolute pattern or payment schedule, the payment dates are predefined. The NEXT_PAYMENT_DATE on the detail record should always correspond to the relevant (next payment date after the AS_OF_DATE) predefined payment date information of the Absolute Pattern interface or PAYMENT_SCHEDULE table.

■ Suggested default:

If next payment date is unknown, set to either:

■ AS_OF_DATE + PMT_FREQ , or

Note: This consumes considerable processing time.

Page 618: fe115trm

Cash Flow Columns

10-64 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

■ MATURITY_DATE

Next Repricing Date (NEXT_REPRICE_DATE)

DefinitionDate of next scheduled interest rate change for adjustable rate accounts.

Module UsageNEXT_REPRICE_DATE defines the first forecasted repricing event from the AS_OF_DATE.

Risk Manager

In Oracle Risk Manager the processing and use of NEXT_REPRICE_DATE is as fol-lows:

1. If the record is defined as ADJUSTABLE_TYPE_CD = 250 and REPRICE_FREQ > 0, OFSA references NEXT_REPRICE_DATE when calculating the first forecasted interest rate change.

2. OFSA rolls forward from NEXT_REPRICE_DATE to define the record’s remaining forecasted Reprice Dates. Rolling by the REPRICE_FREQ continues until MATURITY_DATE.

3. In defining the customer rate, on each reprice date, OFSA matches the record’s INTEREST_RATE_CD, the reprice date and the REPRICE_FREQ to the appropriate term point on the forecasted Interest Rate Code (IRC) in the Forecast Rates ID. To this derived rate, OFSA adds the MARGIN (or MARGIN_GROSS, if applicable).

4. OFSA then applies interest rate rounding and periodic/lifetime rate caps/floors. If the record’s TEASER_END_DATE is less than or equal to the AS_OF_DATE, OFSA applies the calculated forecasted rate to the record. Otherwise OFSA applies the defined teased rate.

Note: AMRT_TYPE_CD definition does not impact whether the record is adjustable or not.

If ADJUSTABLE_TYPE_CD = 30 or 50, OFSA does not reference the NEXT_REPRICE_DATE. See Adjustable Type Code (ADJUSTABLE_TYPE_CD) for details.

Page 619: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-65

Oracle Proprietary, Confidential Information - Use Restricted by Contract

5. On a payment date, the forecasted rate derived on the repricing date is used for recalculating payment amounts.

6. If the ’Process with Transfer Rates’ option has been selected, OFSA produces transfer rates by matching the record’s T_RATE_INT_RATE_CD, the reprice date and the REPRICE_FREQ to the appropriate term point on the forecasted transfer pricing IRC in the Oracle Risk Manager Forecast Rates ID. To this derived rate, OFSA adds the MARGIN_T_RATE. However, unlike the customer rate calculation (CUR_NET_RATE, CUR_GROSS_RATE), no rounding, rate cap/floor or tease checks are made.

Transfer Pricing

1. NEXT_REPRICE_DATE is used by adjustable-rate straight term transfer-priced records when using the Remaining Term Pricing Basis. The AS_OF_DATE and NEXT_REPRICE_DATE define the term of the transfer pricing period. This term is matched to the relevant Interest Rate Code (IRC) in the Historical Rates ID to derive a transfer rate.

2. Adjustable-rate cash flow transfer-priced records use LAST_REPRICE_DATE and NEXT_REPRICE_DATE as the starting and ending points of the transfer-pricing period. In order to define all the payment events within this period, OFSA rolls back from the NEXT_PAYMENT_DATE by the PMT_FREQ until just after the LAST_REPRICE_DATE. From this calculated payment date, OFSA again rolls forward by the PMT_FREQ until just before the NEXT_REPRICE_DATE. As OFSA rolls forward, cash flows are produced. The cash flows produced are used by one of the three cash flow transfer pricing methodologies in order to derive the transfer rate.

For additional information also see Teaser-rate End Date (TEASER_END_DATE).

Data Verification Requirements and Suggested Defaults■ For fixed-rate accounts, NEXT_REPRICE_DATE = MATURITY_DATE.

Note: If multiple reprice dates exist within one payment period (that is, if REPRICE_FREQ < PMT_FREQ), only the forecasted rate of the reprice date immediately preceding the payment date is used for payment calculation purposes. Oracle Risk Manager stores ’Before Reprice’ and ’After Reprice’, ’Gross Rates’ and ’Net Rates’ as financial elements 260 - 290.

Page 620: fe115trm

Cash Flow Columns

10-66 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

■ For administered rate accounts and floating rate accounts, use ADJUSTABLE_TYPE_CD 30 or 50, which does not reference NEXT_REPRICE_DATE. Set the default to NEXT_REPRICE_DATE = NEXT_PAYMENT_DATE or MATURITY_DATE.

■ If ADJUSTABLE_TYPE_CD = 250 and repricing information is available, then:

■ NEXT_REPRICE_DATE > AS_OF_DATE

■ NEXT_REPRICE_DATE <= MATURITY_DATE

Original Market Value (ORG_MARKET_VALUE)

DefinitionThe market value of the instrument at origination, expressed as a percentage of the Original Par Balance.

OFSA Module Usage

Transfer Pricing

Oracle Transfer Pricing does not use ORG_MARKET_VALUE except in Option Costing.

When Standard Calculation Mode is selected in the TP Process ID, and the Target Balance for the subject product leaf is Market Value, Oracle Transfer Pricing Option Cost calculations use the product of ORG_PAR_BAL and ORG_MARKET_VALUE as the target balance to which the sum of future discounted cash flows is set equal.

Original Payment Amount (ORG_PAYMENT_AMT)

DefinitionThe original payment amount at the date of origination.

Module UsageOracle Risk Manager and Oracle Transfer Pricing cash flow methodologies refer-ence ORG_PAYMENT_AMT when referencing the payment amount at the time of the record’s origination.

Page 621: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-67

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Risk Manager

For User-Defined Payment Patterns with the payment method defined as ’%Origi-nal Payment’, OFSA uses the record’s ORG_PAYMENT_AMT for all payments beyond the first forecasted one. The first forecasted one uses CUR_PAYMENT. For all other payment pattern payment methods, OFSA uses the ORG_PAYMENT_AMT.

Transfer Pricing

1. Cash flow transfer pricing methodologies for fixed-rate records use ORG_PAYMENT_AMT as the payment amount for amortization purposes. For a fixed-rate record, OFSA rolls forward from the ORIGINATION_DATE by PMT_FREQ when defining payment dates up to the record’s MATURITY_DATE. From origination, OFSA amortizes the original balance (ORG_PAR_BAL) by the ORG_PAYMENT_AMT. The precise method of this amortization depends on the AMRT_TYPE_CD.

2. ORG_PAYMENT_AMT is also used if the User-Defined Payment Pattern payment method % Original Payment is designated.

Risk Manager and Transfer Pricing

ORG_PAYMENT_AMT is also used in determining if the NEG_AMRT_AMT is exceeding its defined limits. This is relevant only for adjustable-rate accounts where AMRT_TYPE_CD = 600.

1. For negative amortization-type accounts, the Knowledge Engine uses ORG_PAYMENT_AMT in determining whether a recalculated payment increase or decrease exceeds PMT_INCR_LIFE and PMT_DECR_LIFE.

2. On a recalculation date caused by a NEG_AMRT_LIMIT or PMT_ADJUST_DATE, OFSA recalculates the payment amount in order to create a fully amortized record. After the recalculation, OFSA references payment life increases/decreases fields (PMT_INCR_LIFE, PMT_DECR_LIFE). These fields limit the amount that the recalculated payment amount can change from the original payment amount (ORG_PAYMENT_AMT).

For example, if PMT_INCR_LIFE = 25.00, the recalculated payment amount is not allowed to increase by more than 25% of the ORG_PAYMENT_AMT.

See Payment Increase Limit - Life (PMT_INCR_LIFE) and Payment Decrease Limit - Life (PMT_DECR_LIFE) for additional information.

Page 622: fe115trm

Cash Flow Columns

10-68 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Data Verification Requirements and Suggested Defaults■ If AMRT_TYPE_CD <> 600, ORG_PAYMENT_AMT = 0.

■ If adjustable-rate and AMRT_TYPE_CD = 600, ORG_PAYMENT should be a valid non-zero value.

■ ORG_PAYMENT may be validated using the following formula:

ORG_PAYMENT = (ORG_BOOK_BAL* (CUR GROSS RATE/((12/PMT_FREQ[in months]) *100))) / (1 - ((1+(CUR_GROSS_RATE /((12/ PMT_FREQ [in months])*100))) ^-(ORG_TERM/PMT_FREQ [in months])))

■ If ORG_PAYMENT_AMT is unknown, default to CUR_PAYMENT.

Page 623: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-69

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Original Par Balance (ORG_PAR_BAL)

DefinitionRepresents the starting balance from which all fixed rate transfer pricing cash flows are generated, including principal run-off, prepayments, and interest cash flows.

Module Usage

Risk Manager

ORG_PAR_BAL is referenced when processing User-Defined Payment Patterns in which the payment method is ’%Original Balance’. When this payment pattern is selected, OFSA applies payment amounts throughout the life of the loan that are a percentage of the value in the detail record’s ORG_PAR_BAL field.

Transfer Pricing

Cash flow transfer pricing methodologies for fixed-rate records use ORG_PAR_BAL as the starting balance for all cash flow generation. For the treatment of adjust-able-rate records, see Last Reprice Date Balance ( LRD_BALANCE).

The Oracle Risk Manager Knowledge Engine bases interest cash flows and princi-pal runoff on ORG_PAR_BAL when transfer pricing cash flow methodology fixed-rate accounts. During processing, OFSA rolls forward from the ORIGINATION_DATE by PMT_FREQ when defining payment dates up until the record’s MATURITY_DATE. From origination, OFSA amortizes the original bal-ance (ORG_PAR_BAL) by the ORG_PAYMENT_AMT. The precise method of this amortization depends on the AMRT_TYPE_CD.

When Standard Calculation Mode is selected in the TP Process ID, and the Target Balance for the subject product leaf is Par Balance, Oracle Transfer Pricing Option Cost calculations use ORG_PAR_BAL as the target balance to which the sum of future discounted cash flows is set equal.

Note: If ’%Original Balance’ is selected, the first forecasted cash flow references the CUR_PAYMENT, but all remaining cash flows use the ORG_PAR_BAL.

Page 624: fe115trm

Cash Flow Columns

10-70 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Data Verification Requirements and Suggested Defaults■ ORG_PAR_BAL requires a valid balance for all accounts.

■ ORG_PAR_BAL = ORG_BOOK_BAL - DEFERRED_ORG_BAL

■ ORG_PAR_BAL must have the same sign as ORG_PAYMENT_AMT and CUR_PAYMENT.

For the transfer pricing of fixed-rate instruments, the original balance should be populated. If REPRICE_FREQ = 0, ORG_PAR_BAL <> 0.

■ Original balance on Rule of 78 instruments should not be greater than the current balance. If AMRT_TYPE_CD = 710, ORG_PAR_BAL should be less than CUR_PAR_BAL.

Original Term (ORG_TERM)

DefinitionUsed in conjunction with ORG_TERM_MULT to define the contractual term at orig-ination date.

Module UsageThe ORG_TERM of the instrument is referenced by Oracle Transfer Pricing and Oracle Risk Manager as the period from ORIGINATION_DATE to MATURITY_DATE.

Transfer Pricing

ORG_TERM is referenced by Oracle Transfer Pricing when calculating cash flows for fixed-rate cash flow methodologies.

Transfer Pricing and Risk Manager

1. Oracle Transfer Pricing and Oracle Risk Manager cash flow methodologies use ORG_TERM when calculating the current payment for adjustable-rate accounts and in transfer pricing fixed-rate accounts. For adjustable-rate accounts, the Knowledge Engine compares ORG_TERM against AMRT_TERM, checking to see if the account is a balloon-type account.

2. If ORG_TERM < AMRT_TERM, the Knowledge Engine recognizes the record as a balloon. OFSA amortizes the outstanding principal balance over the calculated number of payments, based upon the amortization maturity date. See the Amortization Term (AMRT_TERM) section for a detailed explanation.

Page 625: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-71

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Data Verification Requirements and Suggested Defaults■ ORG_TERM > 0

■ ORG_TERM <= ISSUE_TERM

■ ORG_TERM <= AMRT_TERM

■ ORG_TERM >= REPRICE_FREQ

■ ORG_TERM >= PMT_FREQ

■ ORG_TERM >= REMAIN_TERM_C

■ ORG_TERM + ORIGINATION_DATE = MATURITY_DATE

Original Term Multiplier (ORG_TERM_MULT)

DefinitionUsed in conjunction with ORG_TERM to define the contractual term at origination date.

Module UsageThe Oracle Risk Manager Knowledge Engine references ORG_TERM_MULT when calculating current payments for adjustable-rate accounts and in transfer pricing fixed-rate accounts. ORG_TERM MULT determines the units (Months, Days or Years) of ORG_TERM.

Data Verification Requirements and Suggested Defaults■ Valid values are:

■ D - Days

■ M - Months

■ Y - Years

■ For non-term accounts, default to ’M’.

Note: Validation of ORG_TERM should always be done in conjunction with ORG_TERM_MULT.

Setting ORG_TERM to ’0’ may result in Oracle Risk Manager processing errors.

Page 626: fe115trm

Cash Flow Columns

10-72 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

■ Refer to the validation discussion for Original Term (ORG_TERM) for information on ORG_TERM_MULT validation.

Origination Date (ORIGINATION_DATE)

DefinitionThe date the current institution originated or acquired the instrument.

Module UsageBoth Oracle Risk Manager and Oracle Transfer Pricing reference the ORIGINATION_DATE as the start date of the record. See Issue Date (ISSUE_DATE) for additional information.

Prepayment assumptions also reference ORIGINATION_DATE. Separate assump-tions can be defined for ORIGINATION_DATE ranges.

Additionally, when using a Prepayment Table ID:

■ If the prepayment rate is driven by the Expired Term, the ORIGINATION_DATE is used to determine the age of the instrument using the following formula:

(ROUND(Current Bucket Date - ORIGINATION_DATE)/30.42, 0)

■ If the prepayment rate is driven by the ORIGINATION_DATE and the instrument is still in its tease period (that is, TEASE_END_DATE > Current Bucket Date), then the REPRICE_FREQ is calculated as:

(ROUND(TEASE_END_DATE - ORIGINATION_DATE)/30.42,0)

Risk Manager

1. ORIGINATION_DATE is used to determine the last payment date. If the LAST_PAYMENT_DATE is erroneously before the ORIGINATION_DATE, OFSA uses the ORIGINATION_DATE value instead. This is used during interest income calculations where the LAST_PAYMENT_DATE is referenced for the first forecasted interest income cash flows (financial element 430). See Last Payment Date (LAST_PAYMENT_DATE) for details.

2. User-Defined amortization payment patterns that are defined as ’%Current Payment’ and have multiple payment frequencies (as defined in the OFSA interface) use ORIGINATION_DATE when calculating amortization in order to determine the payment amount. This calculation is defined in the AMRT_TERM section.

Page 627: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-73

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Transfer Pricing

1. Fixed-rate cash flow transfer-priced records reference ORIGINATION_DATE in order to calculate the payment dates for amortization purposes.

When defining the record’s payment dates, OFSA starts from the record’s ORIGINATION_DATE and roll forward by PMT_FREQ until the MATURITY_DATE is reached. The Oracle Risk Manager Knowledge Engine bases interest cash flows and principal runoff on ORG_PAR_BAL when transfer pricing cash flow methodology fixed-rate accounts. From ORIGINATION_DATE, OFSA amortizes the original balance (ORG_PAR_BAL) by the ORG_PAYMENT_AMT. The precise method of this amortization depends on the AMRT_TYPE_CD.

2. Straight term methodology references ORIGINATION_DATE when defining the transfer pricing term that is matched to the term on the yield curve (Historical Rate ID’s Interest Rate Code). For fixed-rate instruments, the term defined by (MATURITY_DATE - ORIGINATION_DATE) is matched to the relevant Interest Rate Code (IRC).

For adjustable-rate instruments in their tease period, the term is figured as the (TEASE_END_DATE - ORIGINATION_DATE). The transfer pricing assignment date for the IRC is also determined by the ORIGINATION_DATE of the record. That is, the date of the yield curve (IRC) is matched to the date of the record’s origination.

3. If the record is transfer-priced using a ’Spread From Interest Rate Code’ or ’Redemption Curve’ methodology, the option of choosing the IRC’s assignment date is available. If the ’Origination Date’ is chosen as the assignment date, or if the assignment date is the ’Last Repricing Date’ and the instrument is fixed rate, the date of the IRC used for transfer rate calculations is the same as the detail record’s ORIGINATION_DATE. If an IRC of the same date does not exist OFSA uses the closest preceding date’s yield curve information.

4. For records that reference the User-Defined Payment Patterns, OFSA derives the remaining number of payments by counting the number of payments from the ORIGINATION_DATE to the MATURITY_DATE.

Note: For adjustable rate accounts, transfer pricing cash flow calculations begin on LAST_REPRICE_DATE.

Page 628: fe115trm

Cash Flow Columns

10-74 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Data Verification Requirements and Suggested Defaults■ For all accounts, a valid ORIGINATION_DATE is required.

■ ORIGINATION_DATE >= ISSUE_DATE

■ ORIGINATION_DATE <= AS_OF_DATE (unless future originations booked on system)

■ ORIGINATION_DATE <= LAST_REPRICE_DATE

■ For term accounts only:

■ ORIGINATION_DATE + ORG_TERM = MATURITY_DATE

■ ORIGINATION_DATE <= TEASER_END_DATE (if TEASER_END_DATE is valid)

Payment Adjustment Date (PMT_ADJUST_DATE)

DefinitionDate of next payment adjustment for adjustable-rate, negative amortization-type accounts.

Module UsageOracle Risk Manager and Oracle Transfer Pricing cash flow methodologies refer-ence PMT_ADJUST_DATE when processing and calculating the current payment for negative amortization-type accounts. This is relevant only for adjustable-rate accounts where AMRT_TYPE_CD = 600.

1. OFSA recalculates negatively amortizing payment amounts on a PMT_ADJUST_DATE. Just like a payment recalculation for a NEG_AMRT_LIMIT, a payment recalculation on the PMT_ADJUST_DATE takes into account the effects of payment decrease/increase limits per period (PMT_DECR_CYCLE, PMT_INCR_CYCLE) and payment decrease/increase limits for the life of the record (PMT_DECR_LIFE, PMT_INCR_LIFE). This provides for additional negative amortization to occur even after the PMT_ADJUST_DATE has recalculated the payment amount.

2. PMT_ADJUST_DATE is incremented forward by the PMT_CHG_FREQ field until maturity.

3. PMT_ADJUST_DATE differs from NEG_AMRT_EQ_DATE because on PMT_ADJUST_DATE, the calculated payment is constrained by payment decrease/increase limits per period and payment decrease/increase limits for

Page 629: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-75

Oracle Proprietary, Confidential Information - Use Restricted by Contract

the life of the record. However, on the NEG_AMRT_EQ_DATE, the calculated payment overrides these payment change limits.

4. See the Negative Amortization Amount (NEG_AMRT_AMT) section for an explanation of the relationships among the relevant negative amortization fields.

Data Verification Requirements and Suggested Defaults■ For fixed-rate and non-term accounts, PMT_ADJUST_DATE = 19000101.

■ For adjustable-rate accounts with AMRT_TYPE_CD <> 600, PMT_ADJUST_DATE = NEXT_REPRICE_DATE.

■ For adjustable-rate accounts with AMRT_TYPE_CD = 600, the following conditions should exist:

■ PMT_ADJUST_DATE > AS_OF_DATE

■ PMT_ADJUST_DATE > ORIGINATION_DATE

■ PMT_ADJUST_DATE <= AS_OF_DATE + PMT_CHG_FREQ) PMT_ADJUST_DATE <= MATURITY_DATE

Payment Change Frequency (PMT_CHG_FREQ)

DefinitionUsed in conjunction with PMT_CHG_FREQ_MULT to define the frequency at which an account’s payment adjusts.

Module UsageOracle Risk Manager and Oracle Transfer Pricing cash flow methodologies refer-ence PMT_CHG_FREQ when processing and calculating the current payment for negative amortization-type accounts. This is relevant only for adjustable-rate accounts where AMRT_TYPE_CD = 600.

1. The PMT_CHG_FREQ is used to increment forward from the PMT_ADJUST_DATE.

2. OFSA recalculates negatively amortizing payment amounts on a PMT_CHG_FREQ. Just like a payment recalculation for a NEG_AMRT_LIMIT, a payment recalculation on the PMT_CHG_FREQ takes into account the effects of payment decrease/increase limits per period (PMT_DECR_CYCLE, PMT_INCR_CYCLE) and payment decrease/increase limits for the life of the record (PMT_DECR_

Page 630: fe115trm

Cash Flow Columns

10-76 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

LIFE, PMT_INCR_LIFE). This provides for additional negative amortization to occur even after the PMT_CHG_FREQ event has recalculated the payment amount.

3. See the Negative Amortization Amount (NEG_AMRT_AMT) section for an explanation of the relationships among the relevant negative amortization fields.

Data Verification Requirements and Suggested Defaults■ If AMRT_TYPE_CD = 600, PMT_CHG_FREQ must be either ’0’ or a positive

value. PMT_CHG_FREQ cannot be negative.

■ For fixed-rate and non-term accounts, PMT_CHG_FREQ = 0.

■ For adjustable-rate accounts with AMRT_TYPE_CD <> 600, PMT_CHG_FREQ = REPRICE_FREQ.

■ For adjustable-rate accounts with AMRT_TYPE_CD = 600, the following conditions should exist:

■ PMT_CHG_FREQ <> 0

■ PMT_CHG_FREQ <= PMT_ADJUST_DATE - AS_OF_DATE

Payment Change Frequency Multiplier (PMT_CHG_FREQ_MULT)

DefinitionUsed in conjunction with PMT_CHG_FREQ to define the frequency at which an account’s payment adjusts.

Module UsageOracle Risk Manager and Oracle Transfer Pricing cash flow methodologies refer-ence PMT_CHG_FREQ_MULT when processing and calculating the current pay-ment for negative amortization-type accounts. PMT_CHG_FREQ_MULT determines the units (Months, Days or Years) of PMT_CHG_FREQ.

Note: Validation of PMT_CHG_FREQ should always be done in conjunction with PMT_CHG_FREQ_MULT.

Page 631: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-77

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Data Verification Requirements and Suggested Defaults■ Valid values are:

■ D - Days

■ M - Months

■ Y - Years

■ Refer to the validation discussion for Payment Change Frequency (PMT_CHG_FREQ) for information on PMT_CHG_FREQ_MULT validation.

Payment Decrease Limit - Cycle (PMT_DECR_CYCLE)

DefinitionMaximum payment decrease allowed during a payment change cycle of an adjust-able-rate instrument.

Module UsageOracle Risk Manager and Oracle Transfer Pricing cash flow methodologies refer-ence PMT_DECR_CYCLE when recalculating the current payment for negative amortization events such as NEG_AMRT_LIMIT, PMT_ADJUST_DATE, and PMT_CHG_FREQ. This is relevant only for adjustable-rate accounts where AMRT_TYPE_CD = 600.

1. For negative amortization-type accounts, the Knowledge Engine uses PMT_DECR_CYCLE to calculate the maximum decrease in the payment amount allowed from the previous payment change to the next.

2. PMT_DECR_CYCLE is defined in terms of a percentage. The Knowledge Engine performs the following check:

Previous Current Payment - Newly calculated payment > (PMT_DECR_CYCLE/100 * Previous Current Payment)

If the newly calculated payment satisfies the above equation, the Knowledge Engine limits the decrease to the amount = (PMT_DECR_CYCLE * Previous Current Payment).

For example, if PMT_DECR_CYCLE = 5.00, the calculated current payment is not allowed to decrease by more than 5% of the previous current payment.

3. If PMT_DECR_CYCLE = 0, the Knowledge Engine assumes that there is no payment decrease limit per payment change period.

Page 632: fe115trm

Cash Flow Columns

10-78 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

4. The PMT_DECR_CYCLE is referenced when the following negative amortization events occur: NEG_AMRT_LIMIT, PMT_ADJUST_DATE, and PMT_CHG_FREQ.

5. For an explanation of PMT_DECR_CYCLE’s relationship with other related negative amortization fields, see Negative Amortization Amount (NEG_AMRT_AMT).

Data Verification Requirements and Suggested Defaults■ For accounts with AMRT_TYPE_CD <> 600, PMT_DECR_CYCLE = 0.

■ For accounts with AMRT_TYPE_CD = 600, 0 <= PMT_DECR_CYCLE < 100

Payment Decrease Limit - Life (PMT_DECR_LIFE)

DefinitionMaximum payment decrease allowed during the life of an adjustable-rate instru-ment.

Module UsageOracle Risk Manager and Oracle Transfer Pricing cash flow methodologies refer-ence PMT_DECR_LIFE when recalculating the current payment for negative amor-tization events such as NEG_AMRT_LIMIT, PMT_ADJUST_DATE, and PMT_CHG_FREQ. This is relevant only for adjustable-rate accounts where AMRT_TYPE_CD = 600.

1. For negative amortization-type accounts, OFSA uses PMT_DECR_LIFE to calculate the maximum decrease in the payment allowed during the life of the account. PMT_DECR_LIFE is defined in terms of a percentage of ORG_PAYMENT. The Knowledge Engine performs the following check:

ORG_PAYMENT - Newly calculated payment > (PMT_DECR_LIFE/100 * ORG_PAYMENT)

If the newly calculated payment satisfies the above equation, the Knowledge Engine limits the decrease to the amount = (PMT_DECR_LIFE * ORG_PAYMENT).

For example, if PMT_DECR_LIFE = 25.00, the calculated current payment is not allowed to decrease by more than 25% of ORG_PAYMENT.

2. If PMT_DECR_LIFE = 0, the Knowledge Engine assumes that there is no lifetime payment decrease limit.

Page 633: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-79

Oracle Proprietary, Confidential Information - Use Restricted by Contract

3. The PMT_DECR_LIFE field is referenced when the following negative amortization events occur:

■ NEG_AMRT_LIMIT

■ PMT_ADJUST_DATE

■ PMT_CHG_FREQ

4. For an explanation of PMT_DECR_LIFE’s relationship with other related negative amortization fields, see Negative Amortization Amount (NEG_AMRT_AMT).

Data Verification Requirements and Suggested Defaults1. For accounts with AMRT_TYPE_CD <> 600, PMT_DECR_LIFE = 0.

2. For accounts with AMRT_TYPE_CD = 600, 0 <= PMT_DECR_LIFE < 100

Payment Frequency (PMT_FREQ)

DefinitionUsed in conjunction with PMT_FREQ_MULT to define the payment frequency of an account.

Module UsageOracle Risk Manager and Oracle Transfer Pricing cash flow methodologies refer-ence PMT_FREQ for calculating and processing payments, prepayments, and mar-ket valuation. The Knowledge Engine forecasts future next payment dates by incrementing NEXT_PAYMENT_DATE forward by PMT_FREQ.

Risk Manager

PMT_FREQ is used in the Market Value calculation. The calculation is as follows:

MV = Cash Flow/(1 +r)t

PMT_FREQ is used to derive the ’r’ and ’t’ value for records when PMT_FREQ_ MULT = M.

Following is an explanation of how the calculations use the PMT_FREQ.

Page 634: fe115trm

Cash Flow Columns

10-80 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

For records with PMT_FREQ MULT = M, ’r’ is defined as the discount rate divided by the number of payments per period. The number of payments per period is cal-culated as (12/PMT_FREQ).

r = Discount Rate/12/PMT_FREQ

The ’t’ value is defined as the number of days in the payment period from the AS_OF_DATE divided by 30.41667. This amount is then rounded to a whole integer and then divided by the PMT_FREQ. The equation is as follows:

t = (Round((Current Payment Date - AS_OF_DATE) / 30.41667))/PMT_FREQ

For user-defined Payment Schedules and Patterns, the Market Value formula is the same as used for PMT_FREQ = D records. That formula is:

t = (Current Payment Date - AS_OF_DATE/PMT_FREQ).

Transfer Pricing

PMT_FREQ is referenced by the cash flow transfer pricing methodologies when deriving discounted cash flows. See Chapter 9, "Cash Flow Calculations," for calcu-lation details.

Risk Manager and Transfer Pricing

Both Oracle Risk Manager and Oracle Transfer Pricing use PMT_FREQ in defining payment dates.

1. Oracle Risk Manager defines the date of payment using PMT_FREQ in the following manner:

During cash flow generation, from the NEXT_PAYMENT_DATE, OFSA increments forward by the PMT_FREQ until the MATURITY_DATE. Oracle Risk Manager does not use NEXT_PAYMENT_DATE for payment schedule

Note: For User-Defined Payment Schedules and Patterns, the Market Value formula is the same as used for PMT_FREQ = D records. That formula is t = (Current Payment Date - AS_OF_DATE/PMT_FREQ).

Page 635: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-81

Oracle Proprietary, Confidential Information - Use Restricted by Contract

records. See the Next Payment Date (NEXT_PAYMENT_DATE) section for a full description of processing.

2. Oracle Transfer Pricing defines the date of payment using PMT_FREQ in the following ways:

Adjustable-rate Cash Flow Transfer-priced Records In defining the transfer rate for an adjustable-rate record, OFSA uses the PMT_FREQ to define the payment dates from the LAST_REPRICE_DATE to the NEXT_REPRICE_DATE. In order to define all the payment events within this period, OFSA rolls back from the NEXT_PAYMENT_DATE by the PMT_FREQ until just before the LAST_REPRICE_DATE. From this calculated payment date, OFSA again rolls forward by the PMT_FREQ, but this time cash flows are produced. The cash flows produced are used by one of the three cash flow transfer pricing methodologies in order to derive the transfer rate.

Fixed-rate Cash Flow Transfer-priced Records In defining the payment dates for cash flow transfer-priced fixed-rate records, OFSA starts from the record’s ORIGINATION_DATE and roll forward by the PMT_FREQ until the MATURITY_DATE.

3. Oracle Risk Manager and Oracle Transfer Pricing both use the PMT_FREQ in the following, similar manner:

■ On date of payment, OFSA calculates the interest payments, principal payments, current deferred payments, prepayments, unscheduled prepayments, and negative amortization, if applicable. For an adjustable-type record where REPRICE_FREQ < PMT_FREQ, Oracle Risk Manager applies only the last repriced rate for the purposes of payment calculation.

Note: If the record uses user-defined Payment Schedules or Patterns, PMT_FREQ is not referenced for payment date information. Instead, the Payment Schedules and Pattern information are used to define all future payments.

Note: If the transfer pricing record uses User-Defined Payment Schedules or Patterns, PMT_FREQ is not referenced for payment date information.

Page 636: fe115trm

Cash Flow Columns

10-82 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

■ During the payment calculation processing, PMT_FREQ is used for interest income calculations (financial element 430) for records with ACCRUAL_BASIS_CDs of 30/360, 30/365, 30/ACTUAL. See Accrual Basis Code (ACCRUAL_BASIS_CD) and Interest Type Code (INT_TYPE) for formulas.

■ PMT_FREQ is used in the ’Remaining Number of Payments’ calculation when calculating the payment amounts for balloon records and specific user-defined payment pattern instances. See the Amortization Term (AMRT_TERM) section for the formula and further details.

■ As each payment is made on the PMT_FREQ, OFSA reduces the REMAIN_NO_PMTS_C by ’1’. If the newly calculated REMAIN_NO_PMTS_C = 1, the next payment date is set to MATURITY_DATE.

Data Verification Requirements and Suggested Defaults■ PMT_FREQ > 0 in all cases. PMT_FREQ = 0 can cause incorrect calculations to

occur.

■ PMT_FREQ <= ORG_TERM

■ MATURITY_DATE <= NEXT_PAYMENT_DATE + (REMAIN_NO_PMTS_C * PMT_FREQ).

PMT_FREQ = ’1’ and PMT_FREQ MULT = ’D’ require OFSA to perform cash flow calculations for every day of the modeling horizon. This slows processing significantly.

Note: The use of REMAIN_NO_PMTS_C varies depending on record type. See the Remaining Number of Payments (REMAIN_NO_PMTS_C) and Amortization Term (AMRT_TERM) sections for more details and special considerations for payment-patterned records.

Note: Validation of PMT_FREQ should always be done in conjunction with PMT_FREQ_MULT.

Page 637: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-83

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Payment Frequency Multiplier (PMT_FREQ_MULT)

DefinitionUsed in conjunction with PMT_FREQ to define the payment frequency of an account.

Module UsageOracle Risk Manager and Oracle Transfer Pricing cash flow methodologies refer-ence PMT_FREQ_MULT for calculating and processing payments. PMT_FREQ_MULT determines the units (Months, Days or Years) of PMT_FREQ.

Data Verification Requirements and Suggested Defaults■ Valid values are:

■ D - Days

■ M - Months

■ Y - Years

■ Refer to the validation discussion for Payment Frequency (PMT_FREQ) for information on PMT_FREQ_MULT validation.

Payment Increase Limit - Cycle (PMT_INCR_CYCLE)

DefinitionMaximum payment increase allowed during a payment change cycle of an adjust-able-rate instrument.

Module UsageOracle Risk Manager and Oracle Transfer Pricing cash flow methodologies refer-ence PMT_INCR_CYCLE when recalculating the current payment for negative amortization events such as NEG_AMRT_LIMIT, PMT_ADJUST_DATE, and PMT_CHG_FREQ. This is relevant only for adjustable-rate accounts where AMRT_TYPE_CD = 600.

1. For negative amortization-type accounts, the Knowledge Engine uses PMT_INCR_CYCLE to calculate the maximum increase in the payment amount allowed from the previous payment change to the next.

Page 638: fe115trm

Cash Flow Columns

10-84 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

2. PMT_INCR_CYCLE is defined in terms of a percentage. The Knowledge Engine performs the following check:

Newly calculated payment - Previous Current Payment > (PMT_INCR_CYCLE/100 * Previous Current Payment)

If the newly calculated payment satisfies the above equation, the Knowledge Engine limits the increase to the amount = (PMT_INCR_CYCLE * Previous Current Payment).

For example, if PMT_INCR_CYCLE = 5.00, the calculated current payment is not allowed to increase by more than 5% of the previous current payment.

3. If PMT_INCR_CYCLE = 0, the Knowledge Engine assumes that there is no payment increase limit per payment change period.

4. The PMT_INCR_CYCLE is referenced when the following negative amortization events occur:

■ NEG_AMRT_LIMIT

■ PMT_ADJUST_DATE

■ PMT_CHG_FREQ

5. For an explanation of PMT_INCR_CYCLE’s relationship with other related negative amortization fields, see Negative Amortization Amount (NEG_AMRT_AMT).

Data Verification Requirements and Suggested Defaults1. If AMRT_TYPE_CD <> 600, PMT_INCR_CYCLE = 0

2. If AMRT_TYPE_CD = 600, 0 <= PMT_INCR_CYCLE < 100

Payment Increase Limit - Life (PMT_INCR_LIFE)

DefinitionMaximum payment increase allowed during the life of an adjustable-rate instru-ment.

Module UsageOracle Risk Manager and Oracle Transfer Pricing cash flow methodologies refer-ence PMT_INCR_LIFE when recalculating the current payment for negative amorti-zation events such as NEG_AMRT_LIMIT, PMT_ADJUST_DATE, and

Page 639: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-85

Oracle Proprietary, Confidential Information - Use Restricted by Contract

PMT_CHG_FREQ. This is relevant only for adjustable-rate accounts where AMRT_TYPE_CD = 600.

1. For negative amortization-type accounts, the Knowledge Engine uses PMT_INCR_LIFE to calculate the maximum increase in the payment allowed during the life of the account.

2. PMT_INCR_LIFE is defined in terms of a percentage of ORG_PAYMENT. The Knowledge Engine performs the following check:

Newly calculated payment - ORG_PAYMENT > (PMT_INCR_LIFE/100 * ORG_PAYMENT)

If the newly calculated payment satisfies the above equation, the Knowledge Engine limits the increase to the amount = (PMT_INCR_LIFE * ORG_PAYMENT).

For example, if PMT_INCR_LIFE = 25.00, the calculated current payment is not allowed to increase by more than 25% of ORG_PAYMENT.

3. The PMT_INCR_LIFE is referenced when the following negative amortization events occur:

■ NEG_AMRT_LIMIT

■ PMT_ADJUST_DATE

■ PMT_CHG_FREQ

4. For an explanation of PMT_INCR_LIFE’s relationship with other related negative amortization fields, see Negative Amortization Amount (NEG_AMRT_AMT).

Data Verification Requirements and Suggested Defaults■ If PMT_INCR_LIFE = 0, the Knowledge Engine assumes that there is no lifetime

payment increase limit.

■ If AMRT_TYPE_CD <> 600, PMT_INCR_LIFE = 0

■ If AMRT_TYPE_CD = 600, 0 <= PMT_INCR_LIFE < 100

Page 640: fe115trm

Cash Flow Columns

10-86 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Percent Sold (PERCENT_SOLD)

DefinitionPercent of balance sold to investors.

Module UsagePERCENT_SOLD is used to calculate net balance and net payment when the instru-ment is partially participated out to another financial institution. In the case of a participated loan, the bank partially owns the loan. A bank would participate out the balance of the loan to another financial institution if it was not able to lend the entire amount or if lending the entire amount would exceed the bank’s legal lend-ing limits. By selling most of the financing to another financial institution, the bank would earn fee income from servicing the loan and would be able to retain other banking relationships, such as checking accounts.

1. Oracle Risk Manager and Oracle Transfer Pricing cash flow methodologies use PERCENT_SOLD to perform all net balance calculations.

2. The Knowledge Engine performs all of the cash flow calculations on a gross balance basis, but must net out the principal and interest portions not owned/owed by the bank. PERCENT_SOLD defines the percent of the balances participated (sold) by the bank.

3. The calculation performed to net out participations sold is:

[Net Balance] = [Gross Balance] * (100 - PERCENT_SOLD)/100

4. PERCENT_SOLD does not apply if an account has been sold to another subsidiary of the same company. In the case of accounts that have had portions sold from one legal entity of a holding company to another, PERCENT_SOLD = 0.

5. For wholly (100%) owned accounts, PERCENT_SOLD = 0.

6. Oracle Risk Manager only writes out Result Detail balance results net of participations.

Data Verification Requirements and Suggested DefaultsFor accounts with PERCENT_SOLD <> 0, the following conditions should exist:

■ 0 < PERCENT_SOLD <= 100

■ CUR_NET_BOOK_BAL_C = CUR_BOOK_BAL * (100 - PERCENT_SOLD) / 100.

Page 641: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-87

Oracle Proprietary, Confidential Information - Use Restricted by Contract

■ CUR_NET_PAR_BAL_C = CUR_PAR_BAL * (100 - PERCENT_SOLD) / 100

■ ORG_NET_BOOK_BAL_C = ORG_BOOK_BAL * (100 - PERCENT_SOLD) / 100.

■ ORG_NET_PAR_BAL_C = ORG_PAR_BAL * (100 - PERCENT_SOLD) / 100

■ If not applicable, PERCENT_SOLD = 0.

Prior Transfer Pricing Period Average Daily Balance (PRIOR_TP_PER_ADB)

DefinitionThe average balance at the reprice date(s) prior to the LAST_REPRICE_DATE.

Module Usage

Risk Manager

Oracle Risk Manager does not reference PRIOR_TP_PER_ADB or CUR_TP_PER_ADB.

Transfer Pricing

When processing with the mid-period repricing option, Oracle Transfer Pricing ref-erences PRIOR_TP_PER_ADB as the average daily balance at the time of the last repricing event prior to the LAST_REPRICE_DATE. This field is used in conjunc-tion with the CUR_TP_PER_ADB field.

1. Mid-period repricing produces an average transfer rate over the current processing month if the LAST_REPRICE_DATE occurred since the beginning of the processing month. PRIOR_TP_PER_ADB and CUR_TP_PER_ADB are used as average balance weightings in the mid-period pricing equation. PRIOR_TP_PER_ADB is used to determine the balance on the reprice date prior to the LAST_REPRICE_DATE and CUR_TP_PER_ADB is used to determine the balance as of the LAST_REPRICE_DATE.

See Current Transfer Pricing Period Average Daily Balance (CUR_TP_PER_ADB) for an example and explanation of the relationship between PRIOR_TP_PER_ADB and CUR_TP_PER_ADB. See the Transfer Pricing Methods chapter in the Oracle Transfer Pricing Reference Guide for additional information.

2. If the CUR_TP_PER_ADB and PRIOR_TP_PER_ADB are not available, use CUR_PAR_BAL as the default.

Page 642: fe115trm

Cash Flow Columns

10-88 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

3. If the TEASER_END_DATE is greater than the AS_OF_DATE, the mid-period repricing does not apply and the CUR_TP_PER_ADB and PRIOR_TP_PER_ADB fields is not used.

Data Verification Requirements and Suggested Defaults■ If the record is adjustable and repricing occurs within the month, PRIOR_TP_

PER_ADB = (average) balance at the time of the reprice date prior to the LAST_REPRICE_DATE.

■ If the average balance at the time of the reprice date prior to the LAST_REPRICE_DATE is not available, use CUR_PAR_BAL.

Rate Cap Life (RATE_CAP_LIFE)

DefinitionMaximum interest rate allowed during life of an adjustable-rate instrument.

Module Usage

Risk Manager

Oracle Risk Manager references RATE_CAP_LIFE when calculating a forecasted interest rate for adjustable rate records.

Existing business adjustable-rate records OFSA matches the REPRICE_FREQ, INTEREST_RATE_CD, and the reprice date to the information contained in the Forecast Rates ID to assign a forecasted rate. The margin is then added to this fore-casted rate. Any rounding, rate caps (RATE_CAP_LIFE) or floors and tease periods are applied, and the resulting rate is applied to the record as the record’s repriced rate.

For accounts beyond the tease period After the rounding and rate change mini-mum are applied to the Forecast Rates ID rate plus margin, if the resulting rate is

Note: ADJUSTABLE_TYPE_CD = 30 or 50 does not reference reprice dates.

Page 643: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-89

Oracle Proprietary, Confidential Information - Use Restricted by Contract

> RATE_CAP_LIFE, the Knowledge Engine sets the record’s forecasted rate = RATE_CAP_LIFE.

Transfer Pricing

Oracle Transfer Pricing does not reference RATE_CAP_LIFE because it processes cash flows within repricing periods.

Data Verification Requirements and Suggested Defaults■ If the record is fixed-rate, RATE_CAP_LIFE = 0.

■ If the record is adjustable without a rate cap, RATE_CAP_LIFE = 0.

■ If RATE_CAP_LIFE <> 0, CUR_GROSS_RATE and CUR_NET_RATE <= RATE_CAP_LIFE.

■ If RATE_CAP_LIFE <> 0, RATE_CAP_LIFE = ORG_RATE + RATE_INCR_LIFE.

Rate Change Minimum (RATE_CHG_MIN)

DefinitionMinimum change in the repricing index that is necessary for a change to be made to the interest rate.

Module Usage

Risk Manager

Oracle Risk Manager references RATE_CHG_MIN when calculating a forecasted interest rate.

1. For existing business adjustable-rate records, OFSA matches the REPRICE_FREQ, INTEREST_RATE_CD, and the reprice date to the information contained in the Forecast Rates ID to assign a forecasted rate. The margin is then added to this forecasted rate. Any rounding is applied, followed by a check of the RATE_CHG_MIN, when determining the fully indexed rate. Rate caps or floors and

Note: For details of the repricing process see the Next Repricing Date (NEXT_REPRICE_DATE) section and Chapter 9, "Cash Flow Calculations."

Page 644: fe115trm

Cash Flow Columns

10-90 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

tease periods are applied, and the resulting rate is used as the record’s repriced rate.

2. If the absolute value of [(forecasted rate + margin) - (previous rate + margin)] < RATE_CHG_MIN, the Knowledge Engine sets the new forecasted rate = previous rate. OFSA does not change the previous rate to the new forecasted rate. The previous rate is defined as either the rate on the detail record (CUR_NET_RATE or CUR_GROSS_RATE) or the previous forecasted rate from the Forecast Rates ID. After the RATE_CHG_MIN is calculated any other cap/floor, rounding, and tease periods are then applied.

For details of the repricing process see the Next Repricing Date (NEXT_REPRICE_DATE) section and Chapter 9, "Cash Flow Calculations."

Transfer Pricing

Oracle Transfer Pricing does not reference RATE_CHG_MIN because it processes cash flows within repricing periods.

Data Verification Requirements and Suggested Defaults■ If the record is fixed-rate, RATE_CHG_MIN = 0.

■ If the record is adjustable, without a minimum rate change amount, RATE_CHG_MIN = 0.

■ If RATE_CHG_MIN <> 0, 0 < RATE_CHG_MIN <= 1.

Note: ADJUSTABLE_TYPE_CD = 30 or 50 does not reference reprice dates.

Page 645: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-91

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Rate Change Rounding Code (RATE_CHG_RND_CD)

DefinitionMethod used for rounding of the interest rate change.

Module Usage

Risk Manager

Oracle Risk Manager uses RATE_CHG_RND_CD to determine the rounding method that is applied to the current rate after a repricing event. RATE_CHG_RND_CD is used in conjunction with RATE_CHG_RND_FAC.

1. For existing business adjustable-rate records, OFSA matches the REPRICE_FREQ, INTEREST_RATE_CD and the reprice date to the information contained in the Forecast Rates ID. This is to assign a forecasted rate. The margin is then added to this forecasted rate. Any rounding (RATE_CHG_RND_CD and RATE_CHG_RND_FAC), rate caps/floors, and tease periods are applied, and the resulting rate is applied to the record as the record’s repriced rate.

2. The RATE_CHG_RND_CD accepts values 1 - 4. Depending on the value input, the value of the forecasted rate as calculated above will differ.

Below are explanations of the possible values:

Note: ADJUSTABLE_TYPE_CD = 30 or 50 does not reference reprice dates.

Rate Change Rounding Code Description

RATE_CHG_RND_CD = 1 Truncate

The Knowledge Engine truncates the forecasted rate to a whole value. For example, if unrounded forecasted = 8.65, the truncated forecasted rate = 8.00.

RATE_CHG_RND_CD = 2 Round Up

The Knowledge Engine rounds the rate up to the nearest multiple of the RATE_CHG_RND_FAC. For example, if the unrounded forecasted rate is 8.65 and the RATE_CHG_RND_FAC = 0.5, the rounded forecasted rate = 9.00.

Page 646: fe115trm

Cash Flow Columns

10-92 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Transfer Pricing

Oracle Transfer Pricing does not reference RATE_CHG_RND_CD because it pro-cesses cash flows within repricing periods.

Data Verification Requirements and Suggested Defaults■ RATE_CHG_RND_CD must be within the range of ’0’ to ’4’.

■ For fixed-rate accounts, RATE_CHG_RND_CD = 4 and RATE_CHG_RND_FAC = 0.

■ For variable-rate accounts with rates that are not rounded, RATE_CHG_RND_CD = 4 and RATE_CHG_RND_FAC = 0.

Rate Change Rounding Factor (RATE_CHG_RND_FAC)

DefinitionFactor to which the rate change on an adjustable instrument is rounded.

Module Usage

Risk Manager

Oracle Risk Manager references RATE_CHG_RND_FAC when calculating a fore-casted interest rate, and contains the value to which forecasted interest rates are

RATE_CHG_RND_CD = 3 Round Down

The Knowledge Engine rounds the rate down to the nearest multiple of RATE_CHG_RND_FAC. For example, if the unrounded forecasted rate is 8.65 and the RATE_CHG_RND_FAC = 0.25, the rounded forecasted rate = 8.50.

RATE_CHG_RND_CD = 4 Round Nearest

The Knowledge Engine rounds the rate to the nearest multiple of RATE_CHG_RND_FAC. For example, if the unrounded forecasted rate is 8.65 and the RATE_CHG_RND_FAC = 0.25, the rounded forecasted rate = 8.75.

Rate Change Rounding Code Description

Page 647: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-93

Oracle Proprietary, Confidential Information - Use Restricted by Contract

rounded. RATE_CHG_RND_FAC is used in conjunction with RATE_CHG_RND_CD.

1. For existing business adjustable-rate records, OFSA matches the REPRICE_FREQ, INTEREST_RATE_CD and the reprice date to the information contained in the Forecast Rates ID. This is to assign a forecasted rate. The margin is then added to this forecasted rate. Any rounding (RATE_CHG_RND_CD and RATE_CHG_RND_FAC), rate caps/floors, and tease periods are applied, and the resulting rate is applied to the record as the record’s repriced rate.

2. For an explanation of usage and the relationship between RATE_CHG_RND_FAC and RATE_CHG_RND_CD, see the Rate Change Rounding Code (RATE_CHG_RND_CD) section.

Transfer Pricing

Oracle Transfer Pricing does not reference RATE_CHG_RND_FAC because it pro-cesses cash flows within repricing periods.

Data Verification Requirements and Suggested Defaults■ For fixed-rate accounts, RATE_CHG_RND_CD = 4 and RATE_CHG_RND_FAC

= 0.

■ For variable-rate accounts with rates that are not rounded, RATE_CHG_RND_CD = 4 and RATE_CHG_RND_FAC = 0.

■ For variable-rate accounts with RATE_CHG_RND_FAC <> 0, 0 < RATE_CHG_RND_FAC <= 1.

Note: ADJUSTABLE_TYPE_CD = 30 or 50 does not reference reprice dates.

Page 648: fe115trm

Cash Flow Columns

10-94 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Rate Decrease Limit - Cycle (RATE_DECR_CYCLE)

DefinitionMaximum rate decrease allowed during a repricing cycle for an adjustable-rate instrument.

Module Usage

Risk Manager

Oracle Risk Manager references RATE_DECR_CYCLE when calculating a fore-casted interest rate. RATE_DECR_CYCLE sets the maximum amount (in terms of basis points) that the interest rate may decrease in a given REPRICE_FREQ.

1. For existing business adjustable-rate records, OFSA matches the REPRICE_FREQ, INTEREST_RATE_CD and the reprice date to the information contained in the Forecast Rates ID. This is to assign a forecasted rate. The margin is then added to this forecasted rate. Any rounding, rate caps/floors (RATE_DECR_CYCLE), and tease periods are applied, and the resulting rate is applied to the record as the record’s repriced rate.

2. When applying the RATE_DECR_CYCLE, the Knowledge Engine checks for the following:

■ Previous Current Rate > Calculated forecasted rate

■ Previous Current Rate - Calculated forecasted rate > RATE_DECR_CYCLE

If both equations are true, the rate change during the repricing period has exceeded RATE_DECR_CYCLE. In this case, the new forecasted rate is limited to the previous current rate - RATE_DECR_CYCLE.

Note: ADJUSTABLE_TYPE_CD = 30 or 50 does not reference reprice dates.

Page 649: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-95

Oracle Proprietary, Confidential Information - Use Restricted by Contract

This is illustrated in the following example:

Transfer Pricing

Oracle Transfer Pricing does not reference RATE_DECR_CYCLE because it pro-cesses cash flows within repricing periods.

Data Verification Requirements and Suggested Defaults■ For fixed-rate accounts, RATE_DECR_CYCLE = 0.

■ For variable-rate accounts without a maximum rate decrease, RATE_DECR_CYCLE = 0.

■ For RATE_DECR_CYCLE <> 0, 0 <= RATE_DECR_CYCLE <= RATE DECR LIFE.

Rate Floor Life (RATE_FLOOR_LIFE)

DefinitionMinimum interest rate allowed during life of an adjustable-rate instrument.

Module Usage

Risk Manager

Oracle Risk Manager references RATE_FLOOR_LIFE when calculating a forecasted interest rate for adjustable-rate records.

1. For existing business adjustable-rate records, OFSA matches the REPRICE_FREQ, INTEREST_RATE_CD and the reprice date to the information contained in the Forecast Rates ID. This is to assign a forecasted rate. The margin is then added to this forecasted rate. Any rounding, rate caps/floors (RATE_FLOOR_

RATE_DECR_CYCLE = 2.00 (200 basis points)

Previous Current Rate = 10.00

Calculated (raw) rate = 7.75

■ 10.00 > 7.75

■ 10.00 - 7.75 (= 2.25) > 2.00

New current rate = 10.00 - 2.00 = 8.00

Page 650: fe115trm

Cash Flow Columns

10-96 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

LIFE), and tease periods are applied, and the resulting rate is applied to the record as the repriced rate.

2. If the Forecast Rates ID rate plus margin < RATE_FLOOR_LIFE, the Knowledge Engine sets the record’s forecasted rate = RATE_FLOOR_LIFE. Rounding and tease periods are then applied.

For details of the repricing process see the Next Repricing Date (NEXT_REPRICE_DATE) section.

3. For any forecasted rate changes throughout the life of the instrument, OFSA references RATE_FLOOR_LIFE.

Transfer Pricing

Oracle Transfer Pricing does not reference RATE_FLOOR_LIFE because it processes cash flows within repricing periods.

Data Verification Requirements and Suggested Defaults■ If the record is fixed-rate, RATE_FLOOR_LIFE = 0.

■ If the record is adjustable without a rate floor, RATE_FLOOR_LIFE = 0.

■ If RATE_FLOOR_LIFE <> 0, CUR_GROSS_RATE and CUR_NET_RATE >= RATE_FLOOR_LIFE

■ If RATE_FLOOR_LIFE <> 0, RATE_FLOOR_LIFE = ORG_RATE - RATE_DECR_LIFE

Rate Increase Limit - Cycle (RATE_INCR_CYCLE)

DefinitionMaximum rate increase allowed during a repricing cycle for an adjustable-rate instrument.

Module Usage

Risk Manager

Note: ADJUSTABLE_TYPE_CD = 30 or 50 does not reference reprice dates.

Page 651: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-97

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Oracle Risk Manager references RATE_INCR_CYCLE when calculating a fore-casted interest rate. RATE_INCR_CYCLE sets the maximum amount (in terms of basis points) that the interest rate may increase in a given REPRICE_FREQ.

1. For existing business adjustable-rate records, OFSA matches the REPRICE_FREQ, INTEREST_RATE_CD and the reprice date to the information contained in the Forecast Rates ID. This is to assign a forecasted rate. The margin is then added to this forecasted rate. Any rounding, rate caps (RATE_INCR_CYCLE) or floors, and tease periods are applied, and the resulting rate is applied to the record as the record’s repriced rate.

2. When applying the RATE_INCR_CYCLE, the Knowledge Engine checks for the following:

■ Calculated forecasted rate > Previous Current Rate

■ Calculated forecasted rate - Previous Current Rate > RATE_INCR_CYCLE.

If both equations are true, the rate change during the repricing period has exceeded RATE_INCR_CYCLE. In this case, the new forecasted rate is limited to the previous current rate + RATE_INCR_CYCLE.

This is illustrated in the following example:

Transfer Pricing

Oracle Transfer Pricing does not reference RATE_INCR_CYCLE because it pro-cesses cash flows within repricing periods.

Note: ADJUSTABLE_TYPE_CD = 30 or 50 does not reference reprice dates.

RATE_INCR_CYCLE = 2.00 (200 basis points)

Previous Current Rate = 10.00

Calculated rate = 12.25

■ 12.25 > 10.00

■ 12.25 -10.00 (= 2.25) > 2.00

New current rate = 10.00 + 2.00 = 12.00

Page 652: fe115trm

Cash Flow Columns

10-98 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Data Verification Requirements and Suggested Defaults■ For fixed-rate accounts, RATE_INCR_CYCLE = 0.

■ For variable-rate accounts without a maximum rate increase, RATE_INCR_CYCLE = 0.

■ For RATE_INCR_CYCLE <> 0, 0 <= RATE_INCR_CYCLE <= RATE INCR LIFE

Rate Set Lag (RATE_SET_LAG)

DefinitionUsed in conjunction with RATE_SET_LAG_MULT to define the period by which repricing lags the current interest rate changes.

Module Usage

Risk Manager

Oracle Risk Manager references RATE_SET_LAG when calculating a forecasted interest rate.

1. For existing business adjustable-rate records, OFSA matches the REPRICE_FREQ, INTEREST_RATE_CD and the lagged reprice date (after referencing RATE_SET_LAG) to the information contained in the Risk Manager Forecast Rates ID. This is to assign a forecasted rate. The margin is then added to this forecasted rate. Any rounding, rate caps/floors, and tease periodsare applied, and the resulting rate is applied to the record as the record’s repriced rate.

2. If RATE_SET_LAG > 0, the Knowledge Engine does not assign a forecasted interest rate based upon NEXT_REPRICE_DATE. Instead, the Knowledge Engine assigns the account an interest rate based upon the date NEXT_REPRICE_DATE - RATE_SET_LAG.

Note: ADJUSTABLE_TYPE_CD = 30 or 50 does not reference reprice dates.

Page 653: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-99

Oracle Proprietary, Confidential Information - Use Restricted by Contract

This is illustrated in the following example:

In this example the account is tied to the Treasury Yield Curve. Because of the RATE_SET_LAG, Oracle Risk Manager references the Treasury Yield Curve one month before the NEXT_REPRICE_DATE. The 3-Month point on the Treasury Yield Curve on 3/01/96 equals 5%. Therefore the repriced rate equals 6% (5% plus the 1% margin).

3. If the RATE_SET_LAG > (Cash Flow Date - AS_OF_DATE), OFSA uses the base rate from the Forecast Rates ID. OFSA does not reference the rates historically. For instance, if a 3-month RATE_SET_LAG is applied to a repricing event that is two months from the AS_OF_DATE, OFSA does not reference the Historical Rates ID to obtain the yield curve information that is one month before the AS_OF_DATE. Instead, OFSA applies the base rate from the Oracle Risk Manager Forecast Rates ID.

Transfer Pricing

Oracle Transfer Pricing does not reference RATE_SET_LAG because it processes cash flows within repricing periods.

Data Verification Requirements and Suggested Defaults1. RATE_SET_LAG must be either ë0í or a positive value.

2. If the record is a fixed-rate account, RATE_SET_LAG = 0.

3. If the record is an adjustable-rate account, RATE_SET_LAG >= 0

REPRICE_FREQ = 3

REPRICE_FREQ_MULT = M

NEXT_REPRICE_DATE = 04/01/1996

RATE_SET_LAG = 1

RATE_SET_LAG_ MULT = M

MARGIN = 1.00

Note: Validation of RATE_SET_LAG should always be done in conjunction with RATE_SET_LAG_MULT.

Page 654: fe115trm

Cash Flow Columns

10-100 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Rate Set Lag Multiplier (RATE_SET_LAG_MULT)

DefinitionUsed in conjunction with RATE_SET_LAG to define the rate set lag period.

Module UsageThe Oracle Risk Manager Knowledge Engine references RATE_SET_LAG_MULT when calculating a forecasted interest rate. RATE_SET_LAG_MULT determines the units (Months, Days or Years) of RATE_SET_LAG.

Data Verification Requirements and Suggested Defaults■ Valid values are:

■ D - Days

■ M - Months

■ Y - Years

■ Refer to the validation discussion for Rate Set Lag (RATE_SET_LAG) for information on RATE_SET_LAG_MULT validation.

Remaining Number of Payments (REMAIN_NO_PMTS_C)

DefinitionThe remaining number of principal, interest, or principal and interest payments to be made from the AS_OF_DATE until the MATURITY_DATE of the record.

Module UsageThe Oracle Risk Manager and Oracle Transfer Pricing cash flow methodologies ref-erence REMAIN_NO_PMTS_C when calculating and processing payments. The Knowledge Engine uses REMAIN_NO_PMTS_C to determine the number of pay-ments that remain to be paid until the account matures.

Risk Manager and Transfer Pricing

The number of remaining payments is used by OFSA for two purposes:

Page 655: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-101

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Definition of payment dates on which principal and interest are paid As each payment is made during the life of the instrument, OFSA reduces the REMAIN_NO_PMTS_C by ’1’ and rolls the payment period forward by the PMT_FREQ. If the newly calculated REMAIN_NO_PMTS_C = 1, OFSA no longer rolls the PMT_FREQ and makes the next (and final) payment on the MATURITY_DATE. See Amortiza-tion Term (AMRT_TERM) for additional details, including special considerations for payment-patterned records.

Amortization recalculation purposes When a recalculation occurs (repricing or negative amortization event), OFSA references the REMAIN_NO_PMTS_C for recalculation of amortization. See Current Payment (CUR_PAYMENT) for details on calculation.

You should be aware that there are some exceptions to the use of REMAIN_NO_PMTS_C for balloon records and specific User-Defined Payment Patterns and schedules. Depending on the record characteristics, OFSA may calculate the remain-ing number of payments itself. See the Amortization Term (AMRT_TERM) section for further explanations.

Transfer Pricing

1. The Transfer Pricing Remaining Term Pricing Basis cash flow methodology for fixed-rate records uses REMAIN_NO_PMTS_C as described above.

2. The Transfer Pricing Standard Pricing Basis cash flow methodology for an adjustable-rate record calculates the remaining number of payments as follows:

REMAIN_NO_PMTS_C + number of payment periods between the NEXT_PAYMENT_DATE and the LAST_REPRICING_DATE

Data Verification Requirements and Suggested Defaults ■ REMAIN_NO_PMTS_C >= 1

■ If REMAIN_NO_PMTS_C = 0, record is invalid.

■ If REMAIN_NO_PMTS_C = 1, NEXT_PAYMENT_DATE = MATURITY_DATE

■ If REMAIN_NO_PMTS_C > 1, NEXT_PAYMENT_DATE < MATURITY_DATE

Page 656: fe115trm

Cash Flow Columns

10-102 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

■ Generally:

■ REMAIN_NO_PMTS_C * PMT_FREQ <= ORG_TERM * ORG_TERM_ MULT

■ REMAIN_NO_PMTS_C * PMT_FREQ <= ISSUE_TERM * ISSUE_TERM_ MULT

■ MATURITY_DATE <= NEXT_PAYMENT_DATE + (REMAIN_NO_PMTS_C * PMT_FREQ).

■ For non-term accounts, REMAIN_NO_PMTS_C = 1.

■ The maximum number of payment and repricing events that can be modeled cannot exceed 2000. REMAIN_NO_PMTS_C + (REMAIN_TERM_C (in days)) / (REPRICE_FREQ (in days)) > 2000.

Repricing Frequency (REPRICE_FREQ)

DefinitionUsed in conjunction with REPRICE_FREQ_MULT to define the frequency of rate change of an account.

Module UsageOracle Risk Manager and Oracle Transfer Pricing reference REPRICE_FREQ when identifying adjustable-rate instruments and calculating a transfer pricing term or forecasted interest rate.

Risk Manager

1. In identifying an adjustable record, Oracle Risk Manager uses ADJUSTABLE_TYPE_CD and REPRICE_FREQ. If the ADJUSTABLE_TYPE_CD > 0 and the REPRICE_FREQ > 0, the record is adjustable.

2. OFSA uses the REPRICE_FREQ to identify repricing events beyond the NEXT_REPRICE_DATE. OFSA rolsl forward from NEXT_REPRICE_DATE by the REPRICE_FREQ to define the record’s remaining forecasted reprice dates. Rolling by the REPRICE_FREQ continues until MATURITY_DATE.

Note: Even if REPRICE_FREQ > 0, if ADJUSTABLE_TYPE_CD = 0, the record is fixed-rate.

Page 657: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-103

Oracle Proprietary, Confidential Information - Use Restricted by Contract

For additional information on the repricing process see Next Repricing Date (NEXT_REPRICE_DATE).

3. In defining the CUR_NET_RATE, CUR_GROSS_RATE, and TRANSFER_RATE on each reprice date, OFSA matches the record’s INTEREST_RATE_CD (T_ RATE_INT_RATE_CD in the case of transfer rates), the reprice date, and the REPRICE_FREQ to the appropriate term point on the forecasted Interest Rate Code (IRC) in the Oracle Risk Manager Forecast Rates ID. To this derived rate, OFSA adds the relevant margin amount (MARGIN, MARGIN_GROSS, MARGIN T RATE).

Any rate caps/floors, tease periods, and rounding is then applied.

Transfer Pricing

1. REPRICE_FREQ is used to identify whether records are adjustable or not. If REPRICE_FREQ > 0, the record is considered adjustable. If REPRICE_FREQ = 0, the record is fixed-rate.

2. For adjustable-rate straight term methodology, Oracle Transfer Pricing matches the REPRICE_FREQ to the same term on the Transfer Pricing yield curve (Interest Rate Code) defined in the Historical Rates ID. See Last Repricing Date (LAST_REPRICE_DATE) for additional information.

Data Verification Requirements and Suggested Defaults■ If REPRICE_FREQ > 0, MATURITY_DATE >= NEXT_REPRICE_DATE > AS_

OF_DATE

■ If REPRICE_FREQ > 0, INTEREST_RATE_CD is in the range of 001 - 999

■ If REPRICE_FREQ > 0, ADJUSTABLE_TYPE_CD > 0

■ REPRICE_FREQ must be either ’0’ or positive.

Note: ADJUSTABLE_TYPE_CD = 30 and 50 does not reference reprice date

Note: In Risk Manager, ADJUSTABLE_TYPE_CD is used in conjunction with REPRICE_FREQ to define adjustable-rate records.

Page 658: fe115trm

Cash Flow Columns

10-104 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Repricing Frequency Multiplier (REPRICE_FREQ_MULT)

DefinitionUsed in conjunction with REPRICE_FREQ to define the frequency of rate change of an account.

Module UsageOracle Risk Manager and Oracle Transfer Pricing reference REPRICE_FREQ when identifying adjustable-rate instruments and calculating a transfer pricing term or forecasted interest rate. REPRICE_FREQ_MULT determines the units (Months, Days or Years) of REPRICE_FREQ.

Data Verification Requirements and Suggested DefaultsValid values are:

■ D - Days

■ M - Months

■ Y - Years

Teaser-rate End Date (TEASER_END_DATE)

DefinitionDate that the tease rate (introductory rate) ends and the normal product rate begins.

Module UsageOFSA references TEASER_END_DATE when calculating a forecasted interest rate. The TEASER_END_DATE defines the end of a tease period, which is an initial low interest rate period from the origination of a loan. At the TEASER_END_DATE, the low rate is repriced to a value defined by the market index plus margin.

Risk Manager

1. The Knowledge Engine does not adjust the rate on an adjustable-rate account until the TEASER_END_DATE is less than the current date within the modeling horizon.

2. TEASER_END_DATE takes precedence over NEXT_REPRICE_DATE and REPRICE_FREQ. Even if NEXT_REPRICE_DATE < TEASER_END_DATE, the record does not reprice until the TEASER_END_DATE.

Page 659: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-105

Oracle Proprietary, Confidential Information - Use Restricted by Contract

3. TEASER_END_DATE does not apply to fixed-rate accounts.

Transfer Pricing

1. Because TEASER_END_DATE overrides the other repricing fields, if a record is currently in its tease period, the last repricing date equals the ORIGINATION_DATE and the next repricing date equals the TEASER_END_DATE.

2. If the TEASER_END_DATE is greater than the AS_OF_DATE, the Oracle Transfer Pricing mid-period repricing does not apply. See the “Mid-period Repricing” section of the Transfer Pricing Methods chapter in the Oracle Transfer Pricing Reference Guide for further information.

Data Verification Requirements and Suggested Defaults■ TEASER_END_DATE > ORIGINATION_DATE

■ TEASER_END_DATE < MATURITY_DATE

■ For fixed-rate accounts TEASER_END_DATE = 19000101.

■ TEASER_END_DATE >= NEXT_REPRICE_DATE

Transfer Rate Interest Rate Code (T_RATE_INT_RATE_CD)

DefinitionHolds code value to identify the index that account is tied to for assigning fore-casted transfer rates.

Module Usage

Risk Manager

Oracle Risk Manager references T_RATE_INT_RATE_CD when forecasting transfer rates for adjustable rate accounts.

1. The detail record’s T_RATE_INT_RATE_CD has a corresponding reference in the Forecast Rates ID and Historical Rate ID. These IDs contain the term structure and rate values of the yield curve.

2. At a repricing event for an adjustable-rate record, OFSA matches the T_RATE_INT_RATE_CD, REPRICE_FREQ and repricing date of the detail record to the Forecast Rates ID. After matching the rate from the Forecast Rates ID, OFSA adds the MARGIN_T_RATE amount and applies the transfer rate to the record.

Page 660: fe115trm

Cash Flow Columns

10-106 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

3. The exact value of the T_RATE_INT_RATE_CD is user-defined, but it must be within the range of 001 - 999. However, fixed-rate records, that do not reference the T_RATE_INT_RATE_CD can be defaulted to a value of ’0’.

Transfer Pricing

T_RATE_INT_RATE_CD is not used by Oracle Transfer Pricing.

Data Verification Requirements and Suggested Defaults■ If ADJUSTABLE_TYPE_CD = 0, T_RATE_INT_RATE_CD can be defaulted to

’0’.

■ If ADJUSTABLE_TYPE_CD > 0 and REPRICE_FREQ > 0, T_RATE_INT_RATE_CD = 001 - 999.

Transfer Rate Margin (MARGIN_T_RATE)

DefinitionThe spread added to the forecasted transfer rate for adjustable-rate accounts.

Module Usage

Risk Manager

1. Oracle Risk Manager references MARGIN_T_RATE when forecasting transfer rates in adjustable-rate records only. MARGIN_T_RATE is added to the forecasted transfer rate (T_RATE_INT_RATE_CD) to derive the transfer rate.

2. The events of a transfer rate assignment involving MARGIN_T_RATE are as follows:

At a repricing event for an adjustable-rate record, OFSA matches the T_RATE_INT_RATE_CD, REPRICE_FREQ and repricing date of the detail record to the Forecast Rates ID. After matching the rate from the Forecast Rates ID, OFSA adds the MARGIN_T_RATE to this forecasted rate to derive the transfer rate.

Note: Unlike repricing involving MARGIN or MARGIN_GROSS, transfer rate assignment involves no tease periods, rounding or rate caps/floors.

Page 661: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-107

Oracle Proprietary, Confidential Information - Use Restricted by Contract

For example, a record’s transfer rate index is based on the 91 Day Treasury. Risk Manager matches the term and repricing date information of the record to the forecasted 91 Day Treasury rate from the Forecast Rates ID. The MARGIN_T_RATE is then added to the forecasted rate. If the 91 Day Treasury rate from the Forecast Rates ID is 5% and MARGIN_T_RATE is 3%, the record’s forecasted transfer rate is 8.00%.

Transfer Pricing

Oracle Transfer Pricing does not reference MARGIN_T_RATE.

Data Verification Requirements and Suggested Defaults■ For fixed-rate accounts, the default MARGIN_T_RATE to ’0’.

■ For adjustable-rate term accounts, MARGIN_T_RATE may be <> 0 depending on user preference.

Transfer Rate (TRANSFER_RATE)

DefinitionThe associated transfer rate for the account, using the standard pricing basis.

Module Usage

Risk Manager

The TRANSFER_RATE from the detail record is used to calculate Cost/Credit for funds (financial element 450) and Weighted Average Transfer Rate (financial ele-ment 170) until the record’s NEXT_REPRICE DATE. At the NEXT_REPRICE DATE, Oracle Risk Manager matches the T_RATE_INT_RATE_CD, REPRICE_FREQ and repricing date to the relevant yield curve in the Forecast Rates ID. The transfer rate derived from the yield curve is then applied to the record.

Transfer Pricing

After calculating a record’s transfer rate using one of the transfer pricing methodol-ogies and the standard pricing basis, the result is written out to the TRANSFER_RATE field.

Note: When the remaining term pricing basis is used, the transfer rate is written to the TRAN_RATE_REM_TERM field.

Page 662: fe115trm

Cash Flow Columns

10-108 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Risk Manager

The TRANSFER_RATE from the detail record is used to calculate Cost/Credit for funds (financial element 450) and Weighted Average Transfer Rate (financial ele-ment 170) until the record’s NEXT_REPRICE DATE. At the NEXT_REPRICE DATE, Oracle Risk Manager matches the T_RATE_INT_RATE_CD, REPRICE_FREQ and repricing date to the relevant yield curve in the Forecast Rates ID. The transfer rate derived from the yield curve is then applied to the record.

Data Verification Requirements and Suggested Defaults■ If TRANSFER_RATES are to be loaded directly from client systems, data must

be in % format (10% = 10 not 0.10).

Transfer Rate Remaining Term (TRAN_RATE_REM_TERM)

DefinitionThe associated transfer rate for the account, using the remaining term pricing basis.

Page 663: fe115trm

Cash Flow Columns

Cash Flow Dictionary 10-109

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Module Usage

Risk Manager

Oracle Risk Manager does not use TRAN_RATE_REM_TERM.

Transfer Pricing

After calculating a record’s transfer rate using one of the transfer pricing methodol-ogies and the remaining term pricing basis, the result is written out to the TRAN_RATE_REM_TERM field.

Data Verification Requirements and Suggested Defaults■ If TRAN_RATE_REM_TERM values are to be loaded directly from client

systems, data must be in % format (10% = 10 not 0.10).

Note: When the standard pricing basis is used, the transfer rate is written to the TRANSFER_RATE field.

Page 664: fe115trm

Cash Flow Columns

10-110 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Page 665: fe115trm

Distributed Originations 11-1

Oracle Proprietary, Confidential Information - Use Restricted by Contract

11Distributed Originations

New business instruments must be generated as part of an Oracle Risk Manager or Oracle Budgeting and Planning forecast to replace balances that have run off for a particular product. New business impacts the total amount of income and market value in future periods. Without new business, both values will be understated in future periods because, over time, existing balances run off. The income and market value associated with new business is a function of the balance booked, the rate booked, and the timing of the booking. The balance and rate are determined by the assumptions input by the user. The timing of the bookings is a function of the modeling methodology.

The booking of new business can be viewed as coming from three sources:

■ Internal roll-over of existing accounts (hereafter referred to as “roll-over”)

■ Rolling of existing of accounts into other accounts (hereafter referred to as “roll-into”)

■ New money unrelated to existing business (hereafter referred to as “new originations”)

In modeling the timing of new business, the modeling goal is to come as close as possible in reflecting reality while adding minimal processing time.

New bookings generated from run-off (roll-over and roll-into) would realistically occur on the date the run-off occurred. On run-off date, the source of funds becomes available. For a practical example, consider the rollover of a CD. When a customer opts to rollover a CD, the funds are rolled into a new CD on the maturity date of the previous CD.

Page 666: fe115trm

New Business from Rollover

11-2 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

This chapter contains the following topics:

■ New Business from Rollover

■ New Originations

■ Rollover Accounts

■ Current Target Average Approach

■ Rolling between Accounts

■ Procedures for Implementation

New Business from RolloverTo model new business generated from rollover, the new business should be booked on the date the principal run-off occurs. A new record would be created on each date principal run-off occurs during the modeling period, as shown in Figure 11–1.

Figure 11–1 Roll-over (150% of Principal Runoff)

New OriginationsFor new originations, users could make several assumptions about the timing. For instance, they could assume that it occurs at a single date within the bucket, that it

Ending Balance = $57.50

Average Balance = ($50 * 4 days + $52.50 * 10 days + $57.50 * 17 days)/ 31 days = $54.9193

0

10

20

30

40

50

60

New Business

Current Position Runoff

Page 667: fe115trm

New Originations

Distributed Originations 11-3

Oracle Proprietary, Confidential Information - Use Restricted by Contract

occurs evenly over the bucket, or that it accelerates over the bucket. For our purposes, we are assuming that new originations are booked evenly over the modeling bucket; thee balance will grow gradually over the modeling period.

For new originations, the booking of new accounts are done in a manner that best approximates the user’s assumptions about the timing of new business over the bucket. In the case of even bookings over the bucket, the balance in the account appear graphically as a straight, positively sloped line. To match this assumption in the model, a new business record must be generated for each day in the bucket, as shown in Figure 11–2.

Page 668: fe115trm

New Originations

11-4 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Figure 11–2 New Originations (30% Growth)

Figure 11–3 Average Date Roll-over Method

Ending Balance = $65

Average Balance = ($50 + $65)/ 2 = $57.50

0

10

20

30

40

50

60

70

New Business

Current Position Runoff

0

10

20

30

40

50

60

70

Approximated New Business

Current Position Runoff

50 31+

÷∑ (65 - 50)

31* n

n=1

312or =

Page 669: fe115trm

Rollover Accounts

Distributed Originations 11-5

Oracle Proprietary, Confidential Information - Use Restricted by Contract

The problem with both of these approaches is performance. The more new business instruments generated per bucket, the longer the processing time will be. For processing efficiency, it is necessary to minimize the number of dates during the bucket when new business is added.

To create the most accurate results, the new business should come as close as possible to matching the area between the new business curve and the current position curve. By matching the area under the curve, we generate the same ending balance and average balance as would be generated if new bookings were made every day.

Rollover AccountsFor rollover accounts, the area under the curve is a function of the timing of runoff and the amount of principal runoff. By calculating an average day of run-off, the area under the new business curve can be matched by generating new bookings on the average date, as shown in Figure 11–4.

Figure 11–4 Flat Balance Sheet

Average day of runoff = ($5 * 5 days + $10 * 15 days)/$15 = 11 2/3 days

Balance Plug: 1/3 * $15* 1.5 = $7.50 on the 11th

2/3 * $15* 1.5 = $15 on the 12th

Ending Balance = $57.50

Average Balance = ($50 * 4 days + $45 * 6 days + $52.50 * 1 day + $67.50 * 3 days + $57.50 * 17 days)/ 31 = 54.9193

0

5

10

15

20

25

30

35

40

45

50

100% Roll-over

Current Position Runoff

Page 670: fe115trm

Rollover Accounts

11-6 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

When comparing the average and ending balance with the numbers generated from Figure 11–1, note that the values are exactly the same. This is because we have changed the shape of the new business curve, but matched the area under the curve.

For new originations, the area under the curve is a function of the targeted change in the balance over the bucket, the timing of the runoff of the current position at the start of the bucket, and the amount of principal runoff.

This can broken into two components:

■ A component of new business that assumes a flat balance sheet. This is equal to 100% roll-over, as shown in Figure 11–4.

■ The new origination component, which can be viewed as a gradually increasing balance over the flat balance sheet, as shown in Figure 11–5.

Figure 11–5 New Originations Separated by Components

New Business is approximated by splitting the new business into the two components: the average day roll-over method displayed in example 3 to account for the 100% roll-over component of new business plus an additional method to account for the new originations.

Because the shape of the new originations curve is a triangle, the area of this shape can be calculated as

1/2 days in bucket * new origination balance.

0

10

20

30

40

50

60

70

New Originations

100% Roll-over

Current Position Runoff

Page 671: fe115trm

Current Target Average Approach

Distributed Originations 11-7

Oracle Proprietary, Confidential Information - Use Restricted by Contract

The same area can be achieved by booking the entire balance at the mid-point of the bucket. Because, in this case, the mid-point of the bucket falls between two days, the balance should be spread evenly over those two days: $7.50 on the 15th and $7.50 on the 16th, as shown in Figure 11–6.

Figure 11–6 New Origination Average Date Method

These approaches assume that, after new business has been added, no payments will not occur within the same bucket. To avoid this issue, any payments that occur within the bucket must trigger a secondary set of new originations.

Current Target Average ApproachIn the current target average approach, a new business instrument is booked on the first day of the bucket so that the average of this instrument plus the average of the current position will equal the targeted average balance.

The problem with this approach is that the results are not always logical to an end-user because they do not follow the business logic of new business generated throughout the bucket. In the case represented in Figure 11–7, "Current Average Balance Method", the user has targeted an average balance of $55 from a starting balance of $50. The logical assumption would be that the balance grows over the bucket from $50 to a final value greater than the average. However, in this case, the

Ending Balance = $65

Average Balance = $50 * 4 days + $45 * 6 days + $50 * 1 day + $60 * 3 days + $50.00 *1 day + 57.50 * 1 day + 65 * 15 days = $57.50

0

10

20

30

40

50

60

70

New Origination approx

100% Roll-over approx

Current Position Runoff

Page 672: fe115trm

Current Target Average Approach

11-8 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

ending balance is $49.84, lower than the beginning balance. Although the average balance is correct, the ending balance makes no sense.

Figure 11–7 Current Average Balance Method

A more appropriate method would be to assume a gradual booking over the month to generate the average balance. In this case, an approach similar to the target end method could be used, where both average date and mid-bucket methods are used, as shown in Figure 11–8.

0

10

20

30

40

50

60

70

New Add Instrument

Current Position Runoff

Page 673: fe115trm

Procedures for Implementation

Distributed Originations 11-9

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Figure 11–8 Targeting an Average Balance

This example is the same as the example in Figure 11–5, "New Originations Separated by Components" with slightly different ending balance values. The method used to solve this case can be the same one that is demonstrated in Figure 11–6, "New Origination Average Date Method", using a combination of the average date method and the mid-bucket method.

Rolling between AccountsInter-account rolling can be achieved with no difficulty if the new instruments do not pay during the modeling bucket in which they are originated. In this simple case, the current position runoff that occurs in bucket 1 will define the new business generated in bucket 1. The new business run-off generated in bucket 2 plus the current position run-off in bucket 2 will impact the business generated in bucket 2, and so on.

If the instruments do pay during the bucket in which they are originated, then, ideally, a new business instrument should be created on the day of run-off for the new instrument for the account that it is rolling into.

Procedures for ImplementationAll of the methods described above employ one of two techniques: Average Day of Runoff and Mid-Bucket. The implementation of these technique is described per method listed below:

0

10

20

30

40

50

60

New Origination

100% Roll-over

Current Position Runoff

Page 674: fe115trm

Procedures for Implementation

11-10 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

In each case where mid-bucket logic is used, the new add balance will be calculated in a different manner. Listed below are the different methods for new add balance calculation:

Forecast Balance Method Previous Approach New Approach

Target End New instrument added at end of bucket equal to target balance minus the current position ending balance.

Average day of runoff with 100% roll-over plus mid-bucket on new add balance.

Target Average New instrument added at beginning of bucket so that the current position average balance plus the average balance of the new instrument equals the target average balance.

Average day of runoff with 100% roll-over plus mid-bucket on new add balance.

New Add End New instrument is added at the end of the bucket equal to the new add balance.

Mid-bucket on new add balance

New Add Average New instrument is added at the beginning of the bucket whose average balance over the bucket is equal to the new add average balance.

Will be eliminated

Roll-over On non-amortizing accounts, new business produced from maturing balances is booked on day of run-off. All other run-off from non-amortizing instruments (prepayments, payments, total) is booked at end of bucket. New business generated from all run-off on amortizing accounts is booked at end of bucket.

Average day of runoff with roll-over percentages specified by user

Roll-into New business is generated at end of bucket Average day of runoff with roll-over specified

Target Growth Did not exist. Average day of runoff with 100% roll-over plus mid-bucket on new add balance.

Target End Target End Balance - Beginning Balance of bucket

Target Average (Target Average Balance - Beginning Balance of bucket)* 2/(days in bucket - 1)

New Add New Add Balance

Target Growth Beginning Balance of bucket * growth percent

Page 675: fe115trm

Procedures for Implementation

Distributed Originations 11-11

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Mid-Bucket1. Determine the mid-point of the bucket by taking the total number of days in the

bucket and dividing by two.

2. If the mid-point is not a fractional date, add all new add balance on the mid-point date.

3. If the mid-point is a fractional date, add half of the new add balance on each day.

Average Day of Runoff1. Calculate and output the average day of runoff for each type of runoff: maturity,

prepayments, and payment. Calculate as the balance times the difference between the date of runoff minus the beginning bucket date. Independently store values for positive and negative runoff of each runoff category.

2. For each bucket and each type of runoff, calculate the amount of balance to roll-over by multiplying the run-off amount by the percent roll-over specified by the user.

3. Add new business on the average date of run-off for each instrument using the proper balance roll-over.

4. If the new records make payments during the bucket, roll the instruments over at the time of payment.

Further OptimizationsBecause all of these methods, when combined to produce a balance forecast for a particular leaf, could result in a large number of new originations on different dates, the logic finds the earliest date and the latest date of all the different possible originations and adds only new business on these two dates within the bucket.

The first and last plug dates are determined by finding the minimum and maximum date over all average date values. For example, given an average runoff date for payments of 13.4 and an average plug date for maturing balances of 15.6, four plug dates will be derived: 13, 14, 15, and 16. The first plug date will be the minimum date, the 13th. The second plug date will be the maximum plug date, the 16th.

When determining how much of the run-off balance to plug on each date, the calculation will be done as follows:

Plug Balancefirst plug = Run-off * (first plug date - average run-off date) / (second plug date - first plug date)

Page 676: fe115trm

Procedures for Implementation

11-12 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

A Note About Dynamic Market Value and Gap ResultsThe dynamic market value and dynamic gap values will be sensitive to the booking date if the dynamic valuation date is in the middle of a modeling bucket. To prevent this type of sensitivity, we should limit dynamic valuation dates to the start date for a bucket.

A Note About Beginning Versus End of Date AveragesRisk Manager assumes that all events occur at the end of the day on which they occur.

Plug Balance second plug = Run-off * (second plug date - average run-off date) / (second plug date - first plug date)

Page 677: fe115trm

Transfer Pricing Option Cost 12-1

Oracle Proprietary, Confidential Information - Use Restricted by Contract

12Transfer Pricing Option Cost

The purpose of option cost calculations is to quantify the cost of optionality, in terms of a spread over the transfer rate, for a single instrument. The cash flows of an instrument with an optionality feature change under different interest rate environments and thus should be priced accordingly.

For example, many mortgages may be prepaid by the borrower at any time without penalty. In effect, the lender has granted the borrower an option to buy back the mortgage at par, even if interest rates have fallen in value. Thus, this option has value.

In another case, an adjustable rate loan may be issued with rate caps (floors) that limit its maximum (minimum) periodic cash flows. These caps and floors constitute options. For the lender, the option cost of a cap is positive and negative for a floor.

Such flexibility given to the borrower raises the bank’s cost of funding the loan and affects the underlying profit. The calculated cost of these options may be used in conjunction with the transfer rate to analyze profitability.

Oracle Transfer Pricing uses the Monte Carlo methodology to calculate option cost. This methodology is described in Chapter 15, "Monte Carlo Analytics"in the context of Oracle Risk Manager. Although Monte Carlo simulation in Risk Manager generates different types of results than in Transfer Pricing, the underlying calculations are very similar.

The option cost is calculated indirectly. Oracle Transfer Pricing calculates and outputs two spreads:

■ static spread

■ option-adjusted spread (OAS)

The option cost is defined by:

■ option cost = static spread - OAS

Page 678: fe115trm

Architecture of the Calculations

12-2 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

In the theory section we show that the static spread is equal to margin and the OAS to the risk-adjusted margin of an instrument. Therefore, the option cost quantifies the loss or gain due to risk.

This chapter contains the following topics:

■ Architecture of the Calculations

■ Theory

■ Model Usage Hints

Architecture of the CalculationsFor clarity, this chapter assumes the following:

■ the instrument pays K cash flows occurring each at the end of the month

■ each month has the same duration, in number of years, such as 1/12

■ the discount factor calculation does not use the approximation for small OAS described in the Oracle Financial Data Manager Rate Manager Reference Guide.

DefinitionsNeither the static spread nor the OAS can be defined directly as they are solutions of two different equations. We give hereafter a simplified version of the equations that the system solves, using the assumptions described above. The static spread is the value ss that solves the following equation:

Equation 12–1

where:

:MV market, or book, or par value of the instrument

CF(k) cash flow occurring at the end of month k along the forward rate scenario

:f(j) forward rate for month j

Page 679: fe115trm

Architecture of the Calculations

Transfer Pricing Option Cost 12-3

Oracle Proprietary, Confidential Information - Use Restricted by Contract

In the Monte Carlo methodology, the option adjusted-spread is the value OAS that solves the following equation:

Equation 12–2

where:

Note that:

■ cash flows are calculated up till maturity even if the instrument is adjustable1

■ in the real calculations, the formula for the stochastic discount factor is simplified

ExampleIn this example, the Transfer Pricing curve is the Treasury curve. It is flat at 5%, which means that the forward rate is equal to 1%. We use only two Monte Carlo scenarios:

length (in years) of the compounding period; hard-coded to a month, such as 1/12

:N total number of Monte Carlo scenarios

cash flow occurring at the end of month k along scenario

fstochastic discount factor at the end of month k along scenario for a particular OAS (see “Architecture of the Rate Generator” in Chapter 15, "Monte Carlo Analytics")

1 Otherwise the calculations would not catch the cost of caps or floors.

Page 680: fe115trm

Architecture of the Calculations

12-4 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

■ up scenario: 1-year rate one year from now equal to 6%

■ down scenario: 1-year rate one year from now equal to 5%

Observe that the average of these 2 stochastic rates is equal to 5%.

The instrument record is 2 year adjustable, paying yearly, with simple amortization. Its rate is Treasury plus 2%, with a cap at 7.5%. Par value and market value are equal to $1.

For simplicity in this example we assume that the compounding period used for discounting is equal to a year, for example:

Equation 12–3

The static spread is the solution of the following equation:

Equation 12–4

It is intuitively obvious that the static spread should be equal to the margin1, for example:

static spread=coupon rate - forward rate= 7%-5%=2%

1 We prove this claim in the "Theory" section of this chapter.

Page 681: fe115trm

Architecture of the Calculations

Transfer Pricing Option Cost 12-5

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Plugging this value in the right side of the above equation yields:

Equation 12–5

This is equal to par. Our guess was correct.

The OAS is the solution of the following equation:

Equation 12–6

By trial and error we find a value of 1.88%. To summarize:

option cost = static spread - OAS=2%-1.88%=12 bp

Page 682: fe115trm

Architecture of the Calculations

12-6 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Process Flow

In this section we describe only the following steps:

■ calculate forward rates

■ calculate static spread

■ calculate OAS

The other steps are described later.

CalculateForward Rates

ForwardRates

Transfer PricingYield Curve

CalculateDeterminsticCash Flows

Stochastic RateGenerator

CalculateStochastic Cash

Flows

Term StructureParameters

InstrumentData

StochasticCashFlows

Determ.CashFlows

StochasticRates

StochasticDiscountFactors

(OAS=0)Calculate Static

SpreadCalculate OAS

Number ofScenarios

Page 683: fe115trm

Architecture of the Calculations

Transfer Pricing Option Cost 12-7

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Calculate Forward RatesThe cubic spline interpolation routine first calculates smoothed continuously compounded zero-coupon yields Y(j) with maturity equal to the end of month j. The formula for the one-month annually compounded forward rate spanning month j+1 is:

Equation 12–7

Calculate Static SpreadThe static spread is calculated using Newton-Raphson algorithm. In the event that Newton-Raphson algorithm does not converge1, we revert to a brute search algorithm, which is much slower.

The user can control the convergence speed of the algorithm by adjusting the value of the variable OptionCostSpeedFactor. This variable is defined in the OFSTP.INI file by making the following entry:

[OptionCost} OptionCostSpeedFactor = <value>.

The default value is equal to one. A lower speed factor results in a better accuracy of the results2:

For convenience we recap hereafter Newton’s algorithm. Let x be the static spread. At each iteration m we define the function F(m) by the following equation:

1 This can happen if cash flows alternate in sign2 In all our experiments, a speed factor equal to one resulted in a maximum error (on the

static spread and OAS) lower than half a basis point.

Page 684: fe115trm

Architecture of the Calculations

12-8 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Equation 12–8

The algorithm is:

Equation 12–9

For performance reasons, the code uses a more complicated algorithm albeit similar in spirit than the one described above. This is the reason why we did not give specific values for tol and MaxIterations, or details on the brute search.

Calculate OASFor fixed rate instruments, such as instruments for which the deterministic cash flows are the same as the stochastic cash flows, the OAS is by definition equal to the static spread.1

The OAS is also calculated with an optimized version of Newton-Raphson algorithm. To get a gist of the Newton-Raphson method, refer to the previous section, with the following substitutions:

1 This statement is true in the case of continuous compounding. For discrete compounding, this approximation has a negligible impact on the accuracy of the results.

Page 685: fe115trm

Theory

Transfer Pricing Option Cost 12-9

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Equation 12–10

TheoryIn this section we show that the static spread is equal to margin and the OAS to the risk-adjusted margin of an instrument, when the user selects the market value of the instrument to equate the discounted stream of cash flows. We assume in this section that the reader has a good knowledge of no-arbitrage theory.

We first need some assumptions and definitions

■ to acquire the instrument, the bank pays an initial amount V(0), the current market value

■ the risk-free rate is denoted by r(t)

■ the instrument receives a cash flow rate equal to C(t), with . (= maturity)

■ the bank reinvests the cash flows in a money market account that, with the instrument, composes the portfolio

■ the total return on a portfolio is equal to the expected future value divided by the initial value of the investment

■ the margin p on a portfolio is the difference between the rate of return (used to calculate the total return) and the risk free rate r

■ the risk-adjusted expected future value of a portfolio is equal to its expected future value after hedging all diversifiable risks

■ the total risk-adjusted return of a portfolio is equal to the risk-adjusted expected future value divided by the initial value of the investment

■ the risk-adjusted margin m of a portfolio is the difference between the risk-adjusted rate of return (used to calculate the total risk-adjusted return) and the risk-free rate r

Page 686: fe115trm

Theory

12-10 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

More precisely,

Equation 12–11

Equation 12–12

Equivalence of the OAS and Risk-Adjusted MarginIn a no-arbitrage economy with complete markets, the market value at time t of an instrument with cash flow rate C(t) is given by:

Equation 12–13

and expectation is taken with respect to the risk-neutral measure. The expected change in value is given by:

Page 687: fe115trm

Theory

Transfer Pricing Option Cost 12-11

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Equation 12–14

The variation in value is therefore equal to the expected value of the change dV plus the change in value of a martingale M in the risk-neutral measure:

Equation 12–15

Let I be the market value of the money market account in which cash flows are reinvested.

Equation 12–16

Note that unlike V this is a process of finite variation. By Ito’s lemma,

Equation 12–17

Let S be the market value of a portfolio composed of the instrument plus the money market account. We have:

Page 688: fe115trm

Theory

12-12 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Equation 12–18

In other terms, the portfolio (and not the instrument) earns the risk-free rate of return. An alternate representation of this process is:

Equation 12–19

where N is another martingale in the risk-neutral measure. The expected value of the portfolio is then:

Equation 12–20

where

is the quadratic variation of N. This is equivalent to:

Equation 12–21

Let us define the martingale:

Page 689: fe115trm

Theory

Transfer Pricing Option Cost 12-13

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Equation 12–22

This represents the relative risk of the portfolio with respect to the standard money market account, that is, the account where only an initial investment of V(0) is made. Then

Equation 12–23

In other terms the expected future value of the portfolio is equal to the expected future value of the money market account adjusted by the correlation between the standard money market account and the relative risk. Assuming complete and efficient markets, banks can fully hedge their balance sheet against this relative risk, which should be neglected to calculate the contribution of a particular portfolio to the profitability of the balance sheet. Therefore,

Equation 12–24

Equation 12–25

In this example, the risk-adjusted rate of return of the bank on its portfolio is equal to the risk-free rate of return.

Let us suppose now that another instrument offers cash flows

Assuming complete and efficient markets its market value will then be:

Page 690: fe115trm

Theory

12-14 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Equation 12–26

The value of the corresponding portfolio is denoted by

By analogy with the previous development, we have:

Equation 12–27

Again, the risk-adjusted rate of return of the bank on its portfolio is equal to the risk-free rate of return. Suppose now that markets are not complete and inefficient. The bank pays the value V(0) and receives cash flows equal to C’ . We have:

Equation 12–28

By definition of the total risk-adjusted return for Equation 12–12 we have:

Equation 12–29

Therefore, by analogy with the previous development,

Equation 12–30

This can be decomposed into

Page 691: fe115trm

Theory

Transfer Pricing Option Cost 12-15

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Equation 12–31

Equation 12–32

Equation 12–33

The solution of Equation 12–31 and Equation 12–33 is:

Equation 12–34

By the law of large numbers, Equation 12–31 and Equation 12–33 result in:

Equation 12–35

for example, the OAS is equal to the risk-adjusted margin.

Equivalence of the Static Spread and MarginStatic spread calculations are deterministic, therefore they are a special case of the equations in the previous section where, roughly speaking, all processes are equal to their expected value, and the margin p is substituted to the risk-adjusted margin m. The equivalent of Equation 12–29 is then

Page 692: fe115trm

Theory

12-16 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Equation 12–36

where f is the instantaneous forward rate. The equivalent of Equation 12–31 and Equation 12–33 is then

Equation 12–37

Equation 12–38

Equation 12–39

The solution of Equation 12–37 and Equation 12–39 is:

Equation 12–40

Comparing Equation 12–40 and Equation 12–8:

Equation 12–41

for example, the static spread is equal to the margin.

Page 693: fe115trm

Model Usage Hints

Transfer Pricing Option Cost 12-17

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Model Usage Hints

Non-Unicity of the Static Spread In some very rare cases there is more than one value that solves the static spread equation. This section describes one of these cases.

The market value of the instrument is $0.445495. It has 2 cash flows. The table below shows the value of the cash flows and corresponding discount factors (assuming a static spread of zero).

The continuously compounded static spread solves the following equation:

Equation 12–42

There are two possible solutions for the static spread:

■ static spread=0.19%

■ static spread =1.81$

AccuracyIn case you desire a better numerical precision than the default precision, you can take two actions:

■ decrease the speed factor (see the section on "Calculate Static Spread")

■ increase the number of Monte Carlo scenarios

Both actions increase calculation time.

Equivalence Static Spread and Margin

First event Second event

Time 1 2

Cash flow value 1 -0.505025

Discount factor(static spread=0)

0.9 0.8

Page 694: fe115trm

Model Usage Hints

12-18 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Page 695: fe115trm

Rate Conversion 13-1

Oracle Proprietary, Confidential Information - Use Restricted by Contract

13Rate Conversion

Interest rates come in a variety of formats. Within Oracle Risk Manager and Oracle Transfer Pricing, interest rates are used for multiple purposes, with each rate requiring a specific format. The system must apply conversion formulas to translate the interest rates from their starting format into the format proper for its use in any given process.

This chapter contains the following sections:

■ Definitions

■ Rate Format Usage

■ Rate Conversion Algorithms

DefinitionsThe following characteristics define an interest rate code:

■ accrual basis

■ compound basis

■ rate format

The accrual basis1 can be:

■ 30/360

■ 30/365

■ 30/Actual

1 See Stigum, M., and Robinson Money Market and Bond Calculations, Irwin, 1981, for definition

Page 696: fe115trm

Definitions

13-2 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

■ Actual/Actual

■ Actual/365

■ Actual/360

The compound basis can be:

■ daily

■ monthly

■ quarterly

■ semi-annual

■ annual

■ simple

The rate format can be

■ zero-coupon yield

■ yield-to-maturity

■ discount factor

Discount factor is used only internally and cannot be specified as an input rate format in Oracle Financial Data Manager (FDM) Rate Manager. For bonds issued at par with payment frequency equal to the compound basis, the yield-to-maturity at origination is equal to the coupon. There are several definitions of yield-to-maturity. The unconventional “true yield” definition of Stigum is not used. Instead, the Street convention1 is preferred.

The yield curve is composed of r par bonds with different terms. Par value is equal to $1.

1 See Fabozzi, F. The Handbook of Fixed Income Securities. McGraw Hill, 1977.

Symbol Name Notes

Accrued interest for the i-th security

Coupon value of the i-th security This is the true $value of the cash flow (not annualized)

Page 697: fe115trm

Definitions

Rate Conversion 13-3

Oracle Proprietary, Confidential Information - Use Restricted by Contract

The zero-coupon yield is the vector of r values that solve the following set of r equations:

Compounding frequency (per year) Possible values are:

12 - monthly

2 - semi-annual

1 - annual

0 - simple

Number of full compounding periods

from As of Date up to term

Discount factor with term Value of a zero-coupon bond

with term and par=$1

Total number of securities

Term in Act/Act years of the i-th security

Sorted in ascending order

Time in Act/Act years of the start of the

k-th (k=0.. ) compounding period for security i

Residual, that is, number of compounding periods between the current date and the next compounding date for i-th security

Yield-to-maturity of the i-th security

Zero-coupon yield of the i-th security

Symbol Name Notes

Page 698: fe115trm

Definitions

13-4 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Equation13–1

if compounding is simple, or

Equation13–2

otherwise.

The yield-to maturity for the i-th security is the value that solves the equation:

Equation13–3

if compounding is simple, or

Equation13–4

otherwise.

Page 699: fe115trm

Rate Format Usage

Rate Conversion 13-5

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Rate Format Usage

Scenario-based Forecast Rates Scenario-based forecast rates are the interest rates used for repricing events, rate setting of new business, and market rate observations for prepayment assumptions and new business assumptions. The Forecast Rates ID stores the definition of forecasted rate scenarios.

Within the Forecast Rates ID, the user creates scenario(s) for each IRC, defining the forecasted rates in each modeling bucket for that IRC and scenario. Most methods use the as-of-date rates, stored in history tables, as the basis for the rates forecast. The following methods are available:

■ Structured Change

■ User Input

■ Change from Base

■ Implied Forward

Structured ChangeThe user inputs a series of rate changes that can vary over the yield curve terms and over the modeling horizon. At runtime and display time, the rate changes are added to the as-of-date rates to create the future scenario. No conversion is applied before the rate is passed to the Cash Flow Engine.

User InputThe user input method requires direct input of the forecasted rate scenarios. At runtime and display time, the inputted rates will be pulled directly.

Prior to applying the rates to a cash flow record, the rates must be converted to annual compounded rates. The accrual basis must be converted to either Actual/Actual or 30/360.

No conversion is applied before the rate is passed to the Cash Flow Engine.

Change From BaseFor change from base, the user defines a shock to the rate forecast from another scenario, the base scenario. At runtime and display time, the system must first calculate the base scenario rate and then apply the shock to the rate forecast.

Page 700: fe115trm

Rate Format Usage

13-6 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

No conversion is applied before the rate is passed to the Cash Flow Engine.

Implied ForwardThe implied forward calculation assumes that the rate is a zero coupon yield. If the IRC rate format is yield-to-maturity the following process occurs:

■ Translate input rates from yield-to-maturity to zero coupon yield

■ Apply implied forward calculations on zero coupon yields.

■ Translate results of implied forward calculation from zero coupon yields back into yield-to-maturity.

For IRCs that are already in zero-coupon yield format, the implied forward calculations can be applied directly to the historical rates and no conversion between formats is required.

Derivation of Exchange Rate ForecastsWith the Forecast Rates ID, exchange rates can be forecast as a function of the interest rate scenarios. Each currency has a reference yield curve that drives the parity exchange rate relationships between this currency and other currencies. The two methods that require interest rate forecasts are forward and parity.

If the reference IRC is in a yield-to-maturity format, the system converts the rate to a zero coupon yield format prior to calculation of the exchange rate.

Scenario-based Market Value CalculationsIn scenario-based processes, users select, per product and currency, an IRC as their valuation curve. Market value sensitivity processes use shocks to the as-of-date rates to drive the market value changes. Dynamic market value calculations use the forecasted curve as of the dynamic valuation date. The set of valuation curves can be determined from the Discount Rates ID. The system converts all rates to zero-coupon format prior to processing.

Monte Carlo Rate Path GenerationMonte Carlo processes require annually compounded Act/Act zero-coupon yields as the input. If the input IRC format is anything other than that, a conversion process is applied.

Stochastic rates output from Monte Carlo are also annually compounded Act/Act zero-coupon yields.

Page 701: fe115trm

Rate Format Usage

Rate Conversion 13-7

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Rate Index Calculation from Monte Carlo Rate PathsThe Rate Index ID formulas are formulas applied to the yields forecasted from the valuation curve in the Monte Carlo process. A formula for each additional IRC must exist in the Rate Index ID. The formulas are applied during processing when one of the additional IRCs is required for pricing new business or repricing.

A typical use of the Rate Index ID would be to convert rate format, see Chapter 15, "Monte Carlo Analytics".

Transfer PricingThere are both cash flow and non-cash flow transfer pricing methods.

Non Cash Flow MethodsThe non-cash flow transfer pricing methods use historical IRC data pulled directly from the historical rates tables. For these methods, the format of the IRC used as the transfer pricing yield curve is assumed to be a yield-to-maturity.

Cash Flow MethodsThere are three cash flow methods:

■ Weighted Average Term

■ Duration

■ Zero Coupon

Weighted Average Term Weighted Average Term calculates the cash flows over the funding period, treating the next repricing date as a maturity date. The cash flows are discounted by the current net rate. The discounted cash flow at each payment/maturity is used as the weighting factor for the rate from the transfer pricing yield curve. The term from the origination to the cash flow date is used as the term for lookup to the transfer pricing yield curve.

For this method, the transfer pricing yield curve is assumed to be in the proper rate format. No adjustment will be made to the current net rate or the transfer pricing yield curve.

Duration The duration method calculates the duration by taking the cash flows over the funding period and calculating duration for the series of cash flows. The current net rate is used as the discount rate. The duration of the cash flows is used as the term for lookup to the transfer pricing yield curve.

Page 702: fe115trm

Rate Conversion Algorithms

13-8 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

For this method, the transfer pricing yield curve is assumed to be in the proper format. No adjustment will be made to the current net rate.

Zero Coupon The zero coupon method must calculate discount factors for the transfer pricing yield curve. If the transfer pricing yield curve is stored as yield-to-maturity rates, the rates must first be translated into zero-coupon yields so that the discount factor can be calculated from them. If the transfer pricing yield curve is already in zero-coupon yield format, then discount factors can be calculated directly from the rates.

Rate Conversion AlgorithmsConversion of accrual basis or compounding basis are straightforward. Rate format conversions (zero-coupon and yield-to-maturity) are more difficult.

Conversion From Yield-to-Maturity to Zero-Coupon YieldBased on Equation 13–3 and Equation 13–4, the system first calculates the values

Then the system bootstraps the yield curve using the BFGS algorithm1 to solve Equation 13–1 and Equation 13–2.

Conversion From Zero-Coupon Yield to Yield-to-MaturityBased on equations Equation 13–1 and Equation 13–2, the system first calculates the values

Then, the system solves Equation 13–1 and Equation 13–2 using the Newton-Raphson algorithm.

1 See, for instance, Press W., Flannery, Teukolsky, and Vetterling. Numerical Recipes in C: The Art of Scientific Computing, Cambridge University Press, Second Edition, 1992.

Page 703: fe115trm

Forecast Rate Calculations 14-1

Oracle Proprietary, Confidential Information - Use Restricted by Contract

14Forecast Rate Calculations

Forecast assumptions for currency exchange rates and interest rates are defined within the Oracle Risk Manager Forecast Rates ID. The resulting rates can be calculated and viewed through the ID. These calculations are also used during Risk Manager scenario-based processing, at which time the resulting rates can be output for auditing purposes or for Oracle Budgeting & Planning processes.

This chapter contains the following sections:

■ Currency Forecasting

■ Interest Rate Forecasting

Currency ForecastingIn order to model the effect of currency fluctuations on income, a process must include a forecast of future exchange rates between currencies. The exchange rates forecast will affect calculation of gains/losses and consolidation to the reporting currency.

When a new Forecast Rates ID is created, it is designated with a specific reporting currency. All exchange rates in that ID are defined as exchange rates to one unit of the reporting currency.

Page 704: fe115trm

Currency Forecasting

14-2 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

The following forecasting options are available:

This section covers calculations used for the Structured Change, Parity, and Forward currency exchange rate methods.

Structured ChangeFor Structured Change input, the user can incrementally increase or decrease exchange rates over specific time periods. Structured rate changes are applied to the exchange rates in effect during the previous period. Rate changes have two components:

■ a change amount

■ a period over which the change occurs

The minimum period over which a change occurs is one modeling bucket. If a rate change occurs over more than one modeling bucket, the rate change is apportioned across each modeling bucket using a straight-line method based on the amount of time in each bucket.

If the modeling bucket lengths are not even, each modeling bucket’s length is converted to units of months. Risk Manager employs the same method to calculate an equal-month percentage for daily modeling buckets, as described later in this chapter for the Implied Forward calculations.

Method Description

Flat Exchange rates throughout the forecast remain equal to the rate in effect on the As-of-Date.

Structured Change Exchange rates are based on an incremental change from the previous period.

Direct Input The user manually inputs the exchange rate for each modeling bucket.

Parity The exchange rate between the selected currency and the reporting currency is based on interest rate forecasts for the Reference IRC associated with each of the two currencies.

Forward The exchange rate between the selected currency and the reporting currency depends on the interest rates in effect on the As-of-Date for the Reference IRCs of the two currencies.

Page 705: fe115trm

Currency Forecasting

Forecast Rate Calculations 14-3

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Once all modeling buckets are expressed in monthly units, the apportionment of rate changes can occur.

1. Add total number of months for the modeling bucket range.

2. Divide total rate change by total number of months.

3. Apply rate change in each bucket by multiplying the monthly rate change by the number of months for that bucket.

For example, assume that the active Configuration ID defines each bucket as 1 month, and the following Structured Change is forecast:

With monthly buckets, the amount of change to apply in this example is as follows:

Start Bucket

End Bucket From Date To Date

Total Rate Change

1 3 01/01/2001 03/31/2001 0.25

4 12 04/01/2001 12/31/2001 1.25

Bucket(s) Rate Change per bucket

1 - 3 0.25 / 3 = 0.0833

4 - 12 1.25 / 9 = 0.1389

Page 706: fe115trm

Currency Forecasting

14-4 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Applying this change in each bucket results in the following forecast rates:

ParityThe Parity exchange rate method derives the exchange rate between the selected currency and the reporting currency based on the forecasted reference interest rates for each respective currency. This enables the user to forecast different interest rates associated with the two currencies and maintain a parity relationship in the exchange rate.

The parity method can be used only if both the reporting currency and the selected currency have a Reference IRC (defined through Oracle Financial Data Manager Rate Manager).

Bucket # Bucket Start Bucket End Rate

0 N/A 12/31/2000 5.2000

1 01/01/2001 01/31/2001 5.2833

2 02/01/2001 02/28/2001 5.3667

3 03/01/2001 03/31/2001 5.4500

4 04/01/2001 04/30/2001 5.5889

5 05/01/2001 05/31/2001 5.7278

6 06/01/2001 06/30/2001 5.8667

7 07/01/2001 07/31/2001 6.0056

8 08/01/2001 08/31/2001 6.1444

9 09/01/2001 09/30/2001 6.2833

10 10/01/2001 10/31/2001 6.4222

11 11/01/2001 11/30/2001 6.5611

12 12/01/2001 12/31/2001 6.7000

13 + 01/01/2002 end of modeling horizon

6.7000

Page 707: fe115trm

Currency Forecasting

Forecast Rate Calculations 14-5

Oracle Proprietary, Confidential Information - Use Restricted by Contract

For parity conditions to hold, an investment made at currency a’s interest rate should equal an investment made at currency b’s interest rate for the same period of time, taking into account the exchange rate between the two currencies. Interest rates are converted to equal formats of accrual basis and compounding basis. This is achieved by converting the rates to a discount factor. (For complete details on conversion to a discount factor, see Chapter 13, "Rate Conversion".) As a simple example, let’s use annual compounding. The Parity formula would be:

ban+t = ban * [(1 + rnbt) ^m / (1 + rna

t) ^m]where

To calculate the exchange rate in each modeling bucket, the process loops through all values of n from zero to the maximum modeling bucket minus 1. The value for t in the calculation for any one exchange rate is determined by the modeling bucket term for modeling bucket n + 1.

For example, consider the following modeling bucket configuration:

Variable Definition

ban+t Exchange rate from currency b (the selected currency) to currency a (the reporting currency) at time n+t

t Modeling bucket term for modeling bucket n+1

ban Exchange rate from currency b to currency a, at time n

rnbt Reference interest rate in currency b for term t, at time n

rnat Reference interest rate in currency a for term t, at time n

m Portion of year equivalent to t

Bucket # Term Start Date End Date

1 1 Month 01/01/1999 01/31/1999

2 1 Month 02/01/1999 02/28/1999

3 3 Months 03/01/1999 05/31/1999

4 6 Months 06/01/1999 11/30/1999

Page 708: fe115trm

Currency Forecasting

14-6 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

The process will loop from n = 0 to n = 3. Assuming the interest rates listed below, the resulting exchange rates are as follows:

n t ban rnbt rna

t ba(n+t)

0 1 Month

(length of Bucket 1)

2.125

(Actual exchange rate from b to a on As-of-Date 12/31/1998)

4.25

(Actual 1-month interest rate for currency b on 12/31/1998)

2.3

(Actual 1-month interest rate for currency a on 12/31/1998)

2.12841

(Forecast Exchange Rate for Bucket 1)

1 1 Month

(length of Bucket 2)

2.12841

(Calculated exchange rate from b to a for first modeling bucket)

4.375

(Forecast 1-month interest rate in currency b for first modeling bucket)

2.425

(Forecast 1-month interest rate in currency a for first modeling bucket)

2.13149

(Forecast Exchange Rate for Bucket 2)

2 3 Months

(length of Bucket 3)

2.13149

(Calculated exchange rate from b to a for second modeling bucket)

4.75

(Forecast 3-month interest rate in currency b for second modeling bucket)

2.9

(Forecast 3-month interest rate in currency a for second modeling bucket)

2.14109

(Forecast Exchange Rate for Bucket 3)

3 6 Months

(length of Bucket 4)

2.14109

(Calculated exchange rate from b to a for third modeling bucket)

5.25

(Forecast 6-month interest rate in currency b for third modeling bucket)

3.275

(Forecast 6-month interest rate in currency a for third modeling bucket)

2.16152

(Forecast Exchange Rate for Bucket 4)

Page 709: fe115trm

Currency Forecasting

Forecast Rate Calculations 14-7

Oracle Proprietary, Confidential Information - Use Restricted by Contract

ForwardForward exchange rate forecasting is similar to the Parity method, but it relies only on the interest rates in effect on the As-of-Date for each respective currency. Based on the relative interest rates in each country, the Forward method tells the user what the forward exchange rates must be to maintain no-arbitrage between the two currencies. Interest rates are converted to equal formats of accrual basis and compounding basis. This is achieved by converting the rates to a discount factor. (For complete details on conversion to a discount factor, see Chapter 13, "Rate Conversion".) As a simple example, let’s use annual compounding; the basic formula for Forward exchange rates would be:

bat = ba0 * [ (1 + rbt) ^m / (1 + ra

t) ^m ]

where

Calculations then loop through all modeling buckets.

For example, consider the following modeling bucket configuration (and related variables):

Variable Definition

bat Exchange rate from currency b (the selected currency) to currency a (the reporting currency) at time t

ba0 Exchange rate from currency b to currency a at As-of-Date

t Time from As-of-Date to Start Date of bucket

rat Reference interest rate in currency a for term t, at As-of-Date

rbt Reference interest rate in currency b for term t, at As-of-Date

m Portion of year equivalent to t

Bucket # Term Start Date End Date t = Start Date - As-of-Date

m = t / 365

1 1 Month 01/01/1999 01/31/1999 1 Day 0.002740

2 1 Month 02/01/1999 02/28/1999 32 Days 0.087671

3 3 Month 03/01/1999 05/31/1999 60 Days 0.164384

4 6 Month 06/01/1999 11/30/1999 152 Days 0.416438

Page 710: fe115trm

Interest Rate Forecasting

14-8 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Further, the exchange rate on the As-of-Date (ba0) is 3.8, and interest rates on that date are as follows:

Therefore, exchange rates would be:

Interest Rate ForecastingThe available IRC forecasting methods are as follows:

Term rbt ra

t

1 Day 3.625 2.100

32 Days 4.500 2.625

60 Days 4.875 2.750

152 Days 5.900 3.500

Bucket # bat = ba0 * [ (1 + rbt) ^m / (1 + ra

t) ^m ]

1 3.8 * 1.000041 = 3.800154

2 3.8 * 1.001589 = 3.806037

3 3.8 * 1.003371 = 3.812808

4 3.8 * 1.009592 = 3.836450

Method Description

Flat Interest rates stay constant throughout the forecast.

Structured Change The user defines rate changes for each term point over specified periods of time.

Direct Input The user manually inputs the interest rate for each modeling bucket and term.

Implied Forward The interest rates will be derived from the term structure of the IRC. This method is available only for yield curves, which are IRCs that consist of multiple terms. If the selected IRC is a single point index, this option is disabled.

Change From Base The scenario represents a delta from another scenario. This option is available only if the Forecast Rates ID has more than one scenario. Otherwise, this option is disabled.

Page 711: fe115trm

Interest Rate Forecasting

Forecast Rate Calculations 14-9

Oracle Proprietary, Confidential Information - Use Restricted by Contract

This section explains calculations for the Structured Change, Implied Forward, and Change From Base interest rate forecast methods.

Structured ChangeThe calculations for Structured Change of interest rates are similar to the calculations for Structured Change of exchange rates. Structured rate changes for each term point are applied to the interest rates in effect in the previous period. If a rate change occurs over more than one modeling bucket, the rate change is apportioned across each modeling bucket using a straight-line method based on the amount of time in each bucket.

Implied ForwardImplied forward rates are calculated by looking at today’s yield curve and inferring the future rate value.

1. Retrieve Yield Curve

The implied forward calculation starts with the current yield curve. The yield curve is retrieved from the historical rates database.

2. Calculate equal-month terms from yield curve.

The terms of the yield curve must be translated into equal-month values.

For daily terms, the system must calculate the portion of a month the daily value represents.

For monthly terms, the exact unit of the term point is used.

For yearly terms, the unit of the term point is multiplied by 12.

3. Calculate equal-month time for the modeling buckets

The modeling buckets are also translated into equal-month time. The same process can be followed as above.

Page 712: fe115trm

Interest Rate Forecasting

14-10 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

4. Apply formula calling cubic spline function

To determine the implied forward rates, the process must step through each modeling bucket and each term on the yield curve. The process will loop as follows:

For n = 1 to n (modeling bucket loop)

For m = 1 to m (term loop)

Yieldc (bucketn,termm) =

[cubicspline (bucketn + termm) * (bucketn + termm) – cubics-pline (bucketn) * bucketn] / termm

Next m

Next n

In the formula above, cubicspline refers to the cubic spline function. This function, currently used in the Rate Generator for Monte Carlo, takes a term as an argument and returns the smoothed yield for that term.

5. Translate continuous yields to discrete yields

The output of the formula above produces a continuous yield, referred to as Yieldc. The required format for yield is a discrete yield. To translate from the continuous yield to the discrete yield (Yieldd ), the following formula must be applied:

Yieldd = e^ Yieldc - 1

Change From BaseFor Change From Base interest rate forecasting, the base scenario is calculated first and then the incremental change is applied to all rates.

Page 713: fe115trm

Monte Carlo Analytics 15-1

Oracle Proprietary, Confidential Information - Use Restricted by Contract

15Monte Carlo Analytics

Monte Carlo is a valuation technique that provides a direct and robust simulation of interest rate paths and provides for market value and Value-at-Risk calculations. Monte Carlo becomes a necessary tool in financial markets for solving problems when other methods are unavailable for problems in high dimensions, simulation, and optimization. For Oracle Risk Manager processes, Monte Carlo is a particularly useful tool for valuing instruments with uncertain cash flows. Examples of such instruments include:

■ Callable debt

■ Capped loans

■ Prepayable mortgages

Page 714: fe115trm

15-2 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

This chapter contains the following topics:

■ Overview

■ Architecture of the Rate Generator

■ Arbitrage Term Structure Model

■ No-Arbitrage Term Structure Models

■ Yield Curve Smoothing

■ Calibration

■ Random Number Generation

■ Rate Conversion

■ Output from Monte Carlo

■ Value-at-Risk

■ Varying the At-Risk Period

■ Earnings-At-RiskRecommended Configuration

■ Term Structure Models

■ Term Structure Parameters Format

■ Choosing a Smoothing Method

■ Defining a Rate Index Formula

■ References

Page 715: fe115trm

Overview

Monte Carlo Analytics 15-3

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OverviewThe Monte Carlo rate generator is a calculation engine that forecasts future rate changes within a stochastic process. Central to the understanding of the rate generator is the acknowledgment that a rate forecast will always be imperfect. This means that future rates will not fully match the prognosis given by the model. However, it is possible to quantify the uncertainty of future interest rates or, in other terms, to forecast a probability distribution of interest rates.

Economic theory tells us that there are two types of forecasts:

■ forecast of the real interest rates, based on a “subjective” assessment of the economy

■ forecast of the risk-neutral interest rates, based on the original yield curve and the no-arbitrage condition.

The two types of prognosis will not necessarily match. A bank would typically use the first type of rates to model future income, because it wants its income forecast to be as close as possible to the actual future income. A bank would typically use the second type of rates to calculate present and future market value because market value depends not only on the rates but also on the degree of risk-aversion of each agent in the economy. “Risk-neutral rates” are a theoretical construction that enables us to calculate rates as if nobody were risk-averse.

Many types of analysis in interest rate management require computing the expected value of a function of the interest rate. One example is to calculate the probability that portfolio loss is within a certain range. The probability of such an event is nothing but the expected value of the indicator function of this occurrence, which is worth one if the event is true and zero otherwise. Another example is to compute the market value of a derivative instrument.

In mathematical terms, the market value of a security that pays a cash flow at time T is equal to the expected value of the product of the stochastic discount factor at time T and the cash flow, that is:

Market Value = E [Discount Factor * Cash Flow] Equation (1)

where the stochastic discount factor is equal to the present value (along a rate scenario) of one dollar received at time T. It therefore is a function of the rate.

The goal of term structure models is to forecast probability distributions of interest rates under which the expected value is defined.

Most term structure models used in practice, and all term structure models available in the system, are single factor models of the short term interest rate. Short

Page 716: fe115trm

Architecture of the Rate Generator

15-4 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Rate modeling prevails because the problem of correlating multiple factors is greatly simplified. With single factor models the value in the future depends only on the value at the current time, and not on any previous data. This property is referred to as a Markov process.

Monte Carlo is the most popular numerical technique to compute an expected value, in our case market value and Value-at-Risk. The methodology consists of generating rate scenarios using random numbers, computing a function of the rates for each scenario, and then averaging it. Market value is the average across all scenarios of the sum of all cash flows discounted by the (scenario-specific) rate. Value-at-Risk is the maximum loss in value over a specific horizon and confidence level.

Monte Carlo simulation works forward from the beginning to the end of the life of an instrument and can accommodate complex payoffs, for instance path-dependent cash flows. The other numerical methods, such as lattice and finite difference, cannot handle the valuation of these path-dependent securities. The drawback of Monte Carlo is its slow convergence compared to other methods. We address this problem by implementing better random sequences of random numbers, namely Low-Discrepancy Sequences.Monte Carlo has better performance than other techniques, however, when the dimension of a problem is large.

Architecture of the Rate GeneratorThe Rate Generator takes as input the information from the Oracle Financial Data Manager (FDM) Rate Manager tables (which include term structure parameters and smoothing technique, and risk-free yield curve yields), Leaf Characteristic ID (OAS), Process ID (risk-free yield curve, number of rate scenarios, risk period at which to compute VaR), Rate Index ID (formulas for rate indices), and generates monthly rates and stochastic discount factors for each scenario and monthly bucket.

We take the benchmark securities to be zero-coupon bonds whose yields are stored in the FDM Rate Manager and identified as the risk-free yield curve.

The Monte Carlo Rate Generator also calculates future rates (for a maturity other than one month) for each scenario and beginning at any month within the modeling horizon. These rates are used by the cash flow engine for repricing events and as market rates within the prepayment function.

The process flow of the Rate Generator depends on the type of a term structure model. However, all processes share the same building blocks.

Page 717: fe115trm

Arbitrage Term Structure Model

Monte Carlo Analytics 15-5

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Computation of Rates and Stochastic Discount Factors At the beginning of a RM Process the Rate Generator calculates and stores monthly rates for 360 months and for all scenarios.

Upon request by the Cash Flow engine, the Rate Generator will calculate the rate, that is, the annually compounded yield at any time T for a discount bond maturing at time T, as follows:

1. compute the future bond price using a closed form solution (a discretized version of Hull and White solution.)

2. convert discount bond prices into discrete yields.

We limit the simulation horizon to 30 years from the As-of-Date. After that period rates are set equal to the 30-year rate. Also, the closed form formula is limited to a 30-year term. Rates with a longer term are set equal to the 30-year term rate.

The cash flow engine may need rates from another IRC (Index) than the risk-free IRC. In this case, the value of the IRC with maturity T will be a function of the value of the risk-free IRC.

The Rate Generator pre-computes the stochastic discount factor for every scenario, for the first day of every monthly bucket. The computation can be selected with or without an Option Adjusted Spread (OAS) added. The OAS depends on the Common Chart of Account, and is expressed in terms of discrete annual compounding rate. For internal code optimization reasons we limit the maximum OAS value to 5%.

Arbitrage Term Structure ModelArbitrage models (Merton and Vasicek) use the first rate from today’s yield curve (smoothed and converted to continuous compounding, as described later in the section). It feeds directly the Rate Generator along with the term structure parameters to produce monthly rates, stochastic discount factors for each scenario and month, and discrete rates for any maturity

The following diagram shows the process flow for Vasicek (or Merton) models in the Rate Generator:

Page 718: fe115trm

No-Arbitrage Term Structure Models

15-6 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

The disadvantage of these models is that they do not automatically fit today’s term structure. The parameters can be chosen so that arbitrage models provide a close fit to many of the real yield curves, but the fit is usually not exact and often gives significant errors.

To achieve no-arbitrage conditions, the model itself can be used to calibrate the parameters of the model. Given the prices of benchmark securities, the model finds the rate probabilities such that, when they are used as input to the pricing tool, the output will be as close as possible to the original prices.

No-Arbitrage Term Structure ModelsThe no-arbitrage models (Ho and Lee and Extended Vasicek) are designed in order to fit the current term structure of interest rates exactly. This is achieved when the price of zero coupon bond computed through the Monte Carlo process exactly

Speed of MeanReversion,Volatility

Compute Rates and Discount Factors

Random NumberGeneration

RatesStochasticDiscountFactors

First Rate from theOriginal Yield

Curve

Yield Curve Smoothing

SmoothedRate

Rate Conversion

Page 719: fe115trm

Yield Curve Smoothing

Monte Carlo Analytics 15-7

Oracle Proprietary, Confidential Information - Use Restricted by Contract

matches today’s observable market rates, as defined by the risk free curve selection. The market price of risk is a function of time that takes care about this fit.

To adhere to this condition, the process flow for no-arbitrage models is more complicated. A trinomial lattice is used to compute the market price of risk to calibrate the term structure. The full original As-of-Date yield curve is used, smoothed and converted to continuous compounding, to be fed into the lattice.

Yield Curve SmoothingToday’s yield curve from an Oracle Financial Data Manager (FDM) Rate Manager IRC might not have enough terms for a term structure model to give the best rates forecast. In particular, the trinomial lattice needs the value of the yield for every month. To do this, two smoothing techniques have been introduced into the Rate Generator: Cubic spline and linear interpolation.

As-of-Date YieldCurve

Yield Curve Smoothing

SmoothedCurve

Speed ofMean

Reversion,Volatility

Trinomial Lattice

MarketPrice of risk

Compute Rates andDiscount Factors

Random NumberGeneration

Rates

Rate Conversion

StochasticDiscountFactors

Page 720: fe115trm

Calibration

15-8 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

CalibrationHull and White have shown how trinomial trees (lattice) can be used to value interest rate derivatives. The goal of the trinomial lattice is to compute the market price of risk for all buckets for the Ho and Lee or Extended Vasicek (no-arbitrage) term structure models.

Hull and White lattice is a popular methodology to calibrate a term structure model. The lattice is constructed for up to 360 monthly buckets, from bucket zero to either (the last maturity on the IRC + 15 years) or 30 years, whichever is shorter.

Random Number GenerationTo model a discrete-time stochastic process using Monte Carlo method we need to use some random variables. Numbers generated by computers are not truly random. Standard random number generators produce uniformly distributed pseudo-random numbers that are made to have the statistical properties of truly random numbers.

Non-uniform variables are sampled through transformation of uniform variables. There are several methods developed for this purpose, both general (to produce random variables of a given density) and special (to directly generate normal random variables): transformation, acceptance-rejection, Box-Muller, and so on. We use the so-called “polar algorithm” technique.

You have a choice to use low-discrepancy sequences, also called quasi-random numbers, as a substitute to pseudo-random numbers. One more important feature of LDS is to reach the consistency across all computers in generating rate paths (pseudo-random numbers generated by different machines are different).

Page 721: fe115trm

Rate Conversion

Monte Carlo Analytics 15-9

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Low Discrepancy SequencesLow-discrepancy sequences, also called quasi-random numbers, are a recent substitute to the traditional random numbers used by all compilers (usually called pseudo-random numbers). They were introduced in the 50’s and 60’s by mathematicians like Halton, Sobol, and Niederreiter. The theory and implementation of low-discrepancy sequences have enjoyed tremendous progress in the past 10 years, and they are now becoming increasingly popular in the area of financial mathematics.

The main objective of low-discrepancy sequences is to reduce the error of Monte Carlo methods. Because error in Monte Carlo methods decreases with the number of scenarios, we can also state that Monte Carlo with LDS needs fewer scenarios than traditional Monte Carlo to obtain the same result. Therefore, Monte Carlo with LDS should be faster than traditional Monte Carlo.

Rate ConversionThere are two major procedures applied by the Rate Generator to the original risk-free rates from the FDM Rate Manager IRC: timescale conversion and compounding basis conversion.

Timescale ConversionWe introduced two timescales, the normal timescale and the equal-month timescale, in order to satisfy three requirements:

■ monthly buckets have to be an integer number of days in length, because the cash flow engine works on a daily timescale

■ it is better for performance to generate rates with an equal-month timescale

■ we cannot set the bucket length to be 30 days, because buckets will start 5 days earlier each year, and this conflicts with reporting requirements.

The equal-month timescale is used only internally in the Rate Generator. It assumes that each month is constant and is equal to 1/12 of a year. The normal timescale counts the actual number of days, that is each monthly bucket has a different length1. The convention is the regular RM convention for a month: if bucket zero starts on day n then all next buckets start on day n except when this day does not

1 In other words, the normal timescale assumes an Actual/Actual day count basis, whereas the equal-month timescale assumes 30/360 count basis.

Page 722: fe115trm

Rate Conversion

15-10 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

exist (February 30 for instance), in which case it reverts to the last existing day of the month (for example, February 28).

There is a one-to-one relationship between the timescales.

Example:

Let us suppose that the As-of-Date is January 15,1997. By definition, every bucket will then start at the 15-Th. of that corresponding month.

In this example, the discrete yield (quoted Actual/Actual) is constant. However, the 2-month smoothed yield is lower than the 1 month smoothed yield because the timescale transformation overestimates the length of the second month.

Compounding Basis ConversionThe Monte Carlo process requires annually compounded Actual/Actual zero-coupon yields as the input. If the input IRC format is different from that, a rate conversion process is applied (refer to Chapter 13, "Rate Conversion" of this reference manual for more information).

In addition, the Rate Generator converts rates from the yield curves (which are discretely compounded, on the normal timescale) into continuously compounded rates on the equal-month timescale. This conversion has to be done for all the points in today’s yield curve.

The Rate Generator always uses the latest yield curve from the FDM Rate Manager IRC and assumes that the same yield curve prevails at the As-of-Date. Monte Carlo simulation always starts from the As-of-Date.

Calendar time

Time on normal timescale

Bucket Number

Length of the Bucket

Time in equal month timescale

Discrete rate on normal timescale

Converted rate on equal month timescale

1/15/97 0 0 31/365 0 - -

1/20/97 5/365 0 31/365 5/(12*31) 0.05 0.049726

2/14/97 30/365 0 31/365 30/(12*31) 0.05 0.049726

2/15/97 31/365 1 28/365 1/12 0.05 0.049726

3/14/97 58/365 1 28/365 1/12+27/(12*28) 0.05 0.047364

Page 723: fe115trm

Output from Monte Carlo

Monte Carlo Analytics 15-11

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Output from Monte CarloThe amount of data to be output in a Monte Carlo processing run depends on the type of processing and the requirements of the users. A stochastic process using Monte Carlo provides the following results:

■ Market value at the chart of account level

■ Value-at-Risk at the chart of account level

■ Value-at-Risk at the portfolio level

The smallest set of the output will result from the market value processing run. Market value is the average across all scenarios of the sum of all cash flows discounted by the (scenario-specific) rate.

The output will be a single value the market value per leaf stored in the OFSA_TM_STOCH_MKT_VAL table. The table has a simple structure:

An additional view exists in the database, OFSA_TM_STOCH_MKT_VAL-V, for reporting purposes. This is a view of the table that includes the specific product leaf column names (Example: COMMON_COA_ID). You must use this table in order to see leaf descriptions in your reports.

Value-at-Risk is the maximum loss in value over a specific horizon (risk period) and confidence level. The horizon is specified by the user. Unlike many other products, OFSA/RM outputs VaR for any confidence level, that is, it outputs the full probability distribution of loss for each COA. The output is written to the OFSA_TM_STOCH_VAR table:

LEAF_NODES MARKET_VALUES CUR BALANCE NUM: RATE PATHS

Fixed Mortgages 55000.00 54000.00 2000

Deposits 10000.00 10100.00 2000

Probability Fixed Mortgages VAR Deposits VAR

10% -200 -100

20% -150 -20

30% -100 -10

40% -20 10

50% 60 50

60% 70 75

Page 724: fe115trm

Output from Monte Carlo

15-12 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

As with the market value table, an additional view, named OFSA_TM_STOCH_VAR_V is available for reporting.

The system will also output VAR at the portfolio level (into the OFSA_TM_STOCH_TOT_VAR table). In this example we assume that our portfolio has only deposits and fixed mortgages.

As you can see from the following graph, the total VaR does not necessary equal the sum of the VaR for each portfolio product because of the correlation between mortgages and deposits.

70% 110 90

80% 150 100

90% 160 120

100% 175 160

Probability Portfolio

10% -130

20% -100

30% -90

40% -30

50% -5

60% 10

70% 15

80% 20

90% 20

100% 40

Probability Fixed Mortgages VAR Deposits VAR

Page 725: fe115trm

Output from Monte Carlo

Monte Carlo Analytics 15-13

Oracle Proprietary, Confidential Information - Use Restricted by Contract

We selected Monte Carlo method to implement VaR over J.P. Morgan’s Riskmetrics approach because of the following advantages:

■ Better accuracy in analyzing nonlinear assets such as options.

■ More flexibility to model the distribution of economic factors vs. normal assumption in Riskmetrics.

■ No need to decompose securities into “risk factors”; a complicated process for fixed income.

Risk Manager also provides auditing options. Monthly rates correspond to yields of a risk-free zero-coupon bond with maturity of one month. These rates are used for all other calculations in the stochastic Rate Generator. They are output into the OFSA_INTEREST_RATES_AUDIT table, where the values are displayed for each scenario and every time step, that is, up to 2,000 scenarios times 360 time steps. Because of the amount of data being written, this process can be very time consuming.

Cash flows are also available for auditing purposes, for the first five records processed in each scenario. See Chapter 8, "Detail Cash Flow Audit Options" for more details on this process.

The stochastic discount factors are also output as an auditing feature. This is extremely valuable for testing purposes. The user can check this output any time the “Detail Cash Flow” option is on. The table used is called OFSA_PROCESS_CASH_FLOWS, Financial Element 490.

-200

-150

-100

-50

0

50

100

150

200

Pr oba bility

VA

R

Fixed Mortgages VARDeposits VAR

Portfolio VAR

Page 726: fe115trm

Output from Monte Carlo

15-14 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

VaR Output Including LiabilitiesThis article explains how to interpret the meaning of the Value-at-Risk (VaR) output from OFSA/RM (Risk Manager) when the balance sheet includes liabilities. We will specifically explain the difference between the output on the product level (as stored in the OFSA_TM_STOCH_VAR table) from output on the balance sheet level (as stored in the OFSA_TM_STOCH_TOT_VAR table). For simplicity, let us consider a simple balance sheet with only one liability instrument and five rate scenarios.

An Example: Product Versus Balance Sheet Level ResultsLet us assume that for the 1 liability instrument, OFSA/RM calculates a market value of $100,000 and the following accrued dynamic present values for each scenario:

Though the actual value to the bank is -$100,000, OFSA/RM by convention reports a positive market value for all instruments Therefore, it is important to remember that a positive market value for a liability is in effect a loss. The same convention applies to VaR. Though VaR is defined as the “maximum loss (to the bank)”, it must be substituted with “maximum gain (to the bank)” when interpreting the VaR output for an instrument that is a liability.

Scenario Accrued Dynamic Present Value

1 126,408

2 124,773

3 91,192

4 82,043

5 76,851

Page 727: fe115trm

Output from Monte Carlo

Monte Carlo Analytics 15-15

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Assume OFSA/RM outputs the first three columns of the following table to the OFSA_TM_STOCH_VAR table for the 1 liability product. Recall that OFSA_TM_STOCH_VAR contains product level output. When interpreting the VaR output for a liability on a product output level, you must remember that VaR is the “maximum gain (to the bank)”.

The discrete probability of a gain of exactly -$26,408, -$24,733, $8,808, $17,957, $23,149 is 20% for a 5 scenarios simulation. Notice that the sum of all probabilities add up to a total of 100% probability.

Scenario Probability VaR Interpretation

1 0.2 100,00 - 126,408 = -26,408 With a prob. of 20%, gain

-26,408

2 0.4 100,00 - 124,773 = -24,773 With a prob. of 40%, gain

-24,773

3 0.6 100,00 - 91,192 = 8,808With a prob. of 60%, gain 8,808

4 0.8 100,00 - 82,043 = 17,957With a prob. of 80%, gain 17,957

5 1.0 100,00 - 76,851 = 23,149With a prob. of 100%, gain 23,149

Page 728: fe115trm

Output from Monte Carlo

15-16 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

In Value at Risk interpretation, we need to convert the discrete probability to a cumulative distribution function. For example, we know that there is a chance of a gain of $-26,408 with a probability of 20% and a gain of -$24,773 with a probability of 20%. This means that there is a 40% probability of a gain less than or equal to -$24,773. This comes from adding 20% discrete probability from gain of $-26,408 and 20% discrete probability from a gain of -$24,773.

Dis c rete P robab ility

0.2 0.2 0.2 0.2 0.2

0

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

0.2

-26,408 -24,773 8,808 17,957 23,149

V a lu e a t R isk

Dis

cret

e P

rob

abili

ty

Page 729: fe115trm

Output from Monte Carlo

Monte Carlo Analytics 15-17

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Now let’s assume OFSA/RM outputs the first three columns of the following table to OFSA_TM_STOCH_TOT_VAR table for the 1 liability product. Recall that OFSA_TM_STOCH_TOT_VAR contains balance sheet level output. At the balance sheet level, we aggregate gain/loss information for different products that can be either assets or liabilities. OFSA/RM by convention reports the aggregated VaR number as a “maximum loss”; therefore, the sign of VaR for all liabilities must be reversed.

Scenario Probability VaR Interpretation

5 0.2 -23,149With a prob. of 20%, loss -23,149

4 0.4 -17,957 With a prob. of 40%, loss -17,957

3 0.6 - 8,808With a prob. of 60%, loss -8,808

2 0.8 24,773 With a prob. of 80%, loss 24,773

1 1.0 26,408With a prob. of 100%, loss 26,408

C um ulat ive D is tribut ion F unc t ion

0 .2

0 .4

0.6

0.8

1

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

-26,408 -24 ,773 8,808 17,957 23,149

V a lu e a t R isk

Cu

mu

lati

ve D

istr

ibu

tio

n F

un

ctio

n

Page 730: fe115trm

Output from Monte Carlo

15-18 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Validating InterpretationLet us analyze the most beneficial scenario (to the bank) to prove that our interpretation is correct. In scenario 5, the “gain = 23,149” has a probability of 20% due to the fact that it is a discrete event. We also have the following events and probabilities:

When we apply the signage to liability, the discrete probability is undisturbed for each event. Notice that each event still has the discrete probability of 20%.

We see here that there is a 20% probability of a maximum loss of -$23,149. There is a 40% probability of a maximum loss of -$23,149 (20% discrete probability from -$23,149 plus 20% discrete probability from -$17,957).

Event Probability

gain < 23,149 80%

gain = 23,149 20%

gain > 23,149 0

Disc rete P robability

0.2 0.2 0.2 0.2 0.2

0

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

0.18

0.2

-23,149 -17,957 -8,808 24,773 26,408

V a lue a t Risk

Dis

cret

e P

rob

abili

ty

Page 731: fe115trm

Output from Monte Carlo

Monte Carlo Analytics 15-19

Oracle Proprietary, Confidential Information - Use Restricted by Contract

The event “gain 23,149” corresponds to the union of these two events:

“gain < 23,149”

“gain = 23,149”

Because these two events are disjoint - making each event’s probability discrete - the probability that “gain 23,149” is the sum of their respective probabilities. It is equal to 80%+20%=100% as reported in the OFSA_TM_STOCH_VAR table.

The event “loss -23,149” on the other hand corresponds to the union of these two events:

“loss = - 23,149”, that is, “gain = 23,149”

“loss < - 23,149”, that is, “gain > 23,149”

Because these two events are also disjoint - making each event’s probability discreet - the probability that “loss -23,149” is the sum of their respective probabilities. It is equal to 20%+0%=20% as reported in the OFSA_TM_STOCH_TOT_VAR table.

Cumulative Distribution Function

0.2

0.4

0.6

0.8

1

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

-23,149 -17,957 -8,808 24,773 26,408

Value at Risk

Cu

mu

lati

ve D

istr

ibu

tio

n F

un

ctio

n

Page 732: fe115trm

Value-at-Risk

15-20 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Value-at-RiskIn our current implementation Value-at-Risk is the worst loss of present value over an At-Risk period (time horizon), given a confidence level. The maximal At-Risk period is 10 years.

Risk Manager outputs Value-at-Risk for as many confidence levels as there are scenarios in Monte Carlo simulation. In other terms it outputs the full present value loss probability distribution and its inverse, which are a much richer statistics than a single VaR number.

The following section describes our current approach to estimate Value-at-Risk.

Present Value-at-RiskThe approach is as follows:

1. for each scenario, compute the accrued dynamic present value by dividing the (scenario-specific) present value by the stochastic discount factor; we do not take new business into account

2. for each scenario, compute VaR as market value minus accrued dynamic present value

3. sort VaR in ascending order and output it along with its normalized ranking (that is, the ranking divided by the total number of scenarios).

The normalized ranking is an unbiased estimator of the probability that loss of value is less than VaR, that is, each couple of values (normalized ranking, VaR) is a point on the loss probability distribution curve.

Page 733: fe115trm

Value-at-Risk

Monte Carlo Analytics 15-21

Oracle Proprietary, Confidential Information - Use Restricted by Contract

ILLUSTRATION OF THE APPROACHWe have only 10 scenarios. Today’s market value is $80.

After sorting we have:

Scenario Number

Stochastic Discount Factor Present value

Accrued Dynamic Present Value VaR

1 0.99 81.6 82.4 -2.4

2 0.98 83.1 84.8 -4.8

3 0.97 81.5 84 -4

4 0.965 80.1 83 -3

5 0.95 79.9 84.1 -4.1

6 0.95 79 83.2 -3.2

7 0.949 79.2 83.5 -3.5

8 0.948 78.3 82.6 -2.6

9 0.947 75.1 79.3 0.7

10 0.946 70.1 74.1 5.9

Scenario Number Probability VaR

2 0.1 -4.8

5 0.2 -4.1

3 0.3 -4

7 0.4 -3.5

6 0.5 -3.2

4 0.6 -3

8 0.7 -2.6

1 0.8 -2.4

9 0.9 0.7

10 1 5.9

Page 734: fe115trm

Varying the At-Risk Period

15-22 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Varying the At-Risk PeriodThis example tries to give an intuition behind the numbers by varying the At-Risk period for a typical case. The instrument we analyze is a two-year discount bond with a principal of $100. Market value is $78.

To ease comprehension of the graph we display the probability mass function, and not the cumulative probability distribution.

This graph reflects two important features of a fixed rate instrument:

1. on average VaR decreases with time because dynamic present value increases with time

2. the dispersion of VaR goes to zero when approaching maturity.

-37.

877

-30.

593

-23.

309

-16.

025

-8.7

405

-1.4

565

5.82

759

13.1

116

20.3

957

27.6

797

34.9

638

0

612

1824

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

P.m

.f.

VaR

Months

Page 735: fe115trm

Earnings-At-Risk

Monte Carlo Analytics 15-23

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Earnings-At-RiskEarnings-At-Risk is a methodology for income sensitivity that combines the Monte Carlo Rate Generator with the cash flow engine to produce statistical information about forecasted income. Earnings-At-Risk functionality uses the stochastic processing methodology to provide users with a probabilistic view of forecasted earnings for individual products and the entire balance sheet. A probability distribution of earnings enables users to view expected income as well as the potential loss of income in the future due to interest rate fluctuations. With this information, users can efficiently determine what is likely to happen as well as identify the scenarios that may provide the greatest risks to the institution.

An Earnings-At-Risk process reads records from the following sources:

■ Instrument data

■ Transaction Strategy

■ Forecast Balance

Cash flows are calculated for each record, for every rate path generated by the Rate Generator. Earnings results may include the following financial data, depending on the account type of the product:

■ Net interest accrual

■ Deferred runoff

■ Non-interest income

■ Non-interest expense

■ Dividends

■ Taxes

The following four sets of output data are available after an Earnings-At-Risk processing run, for each modeling bucket as defined in the active Configuration ID:

■ Average income over all rate paths for each product

■ Average income over all rate paths for the total bank

■ Income in each rate path for each product

■ Income in each rate path for the total bank

From the list above, the average income data sets are output for every Earnings-At-Risk process. The other two output sets are optional and may be selected as a part of the process definition.

Page 736: fe115trm

Recommended Configuration

15-24 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

The output is stored in the following tables:

EAR_LEAF_DTL_xxx - (optional) earnings are aggregated by product and stored for each rate scenario. Note that earnings are equivalent to net interest accrual in a scenario-based processing.

EAR_LEAF_AVG_xxx - average earnings are calculated for each product by taking the simple average across all rate paths for each modeling bucket.

EAR_TOTAL_DTL_xxx- (optional) both net interest income and net income values are calculated, aggregated across products and stored for every rate scenario per modeling bucket. Net interest income is calculated as interest income less interest expense. Net income is calculated as net interest income and non-interest income combined, less non-interest expense, less taxes, if applicable.

EAR_TOTAL_AVG_xxx - net interest income and net income values as described above are averaged across all rate paths for each modeling bucket.

In addition, the initial balances and rates are output to OFSA_RESULT_MASTER based on the instrument records being processed. This records information on each product such as the par balance, deferred balance, weighted current rates and weighted average remaining maturity.

As with any stochastic process, users have the option to output audit results for cash flows and rates (see the Audit Page section in the Process ID chapter in the Oracle Risk Manager Reference Guide.)

Recommended ConfigurationFor maximum precision, use the following settings in a Process ID:

■ Extended Vasicek term structure model

■ Cubic spline smoothing technique

■ Low-discrepancy sequences

■ 2,000 rate scenarios1

The following section attempts to explain some criteria and issues related to choosing the optimal configuration for stochastic processing.

1 This is the recommended configuration for precision. Because 2000 scenarios may require a significant amount of computing time, the user may prefer to lose some precision by selecting fewer scenarios.

Page 737: fe115trm

Term Structure Models

Monte Carlo Analytics 15-25

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Term Structure ModelsSelect the Extended Vasicek model for the computation of market value and Value-at-Risk.

You have a choice of four term structure models:

■ Merton (requires only the parameter volatility to be specified);

■ Vasicek (requires all three parameters to be specified: mean reversion speed, volatility and long run rate);

■ Ho and Lee (requires only the parameter volatility to be specified);

■ Extended Vasicek (requires mean reversion speed and volatility parameters to be specified).

Merton ModelOne simple assumption about interest rates is that they follow a simple random walk with a zero drift. In stochastic process terms, we would write the change in r as:

The change in the short rate of interest r equals a constant sigma times a random shock term where Z represents a standard Wiener process with mean zero and standard deviation of 1.

This model has the following virtues and liabilities:

■ It is a simple analytical formula.

■ Zero coupon bond prices are a quadratic function of time to maturity.

■ Yields turn negative (and zero coupon bond prices rise above one) beyond a certain point.

■ If interest rate volatility is zero, zero coupon bond yields are constant for all maturities and equal to r.

The Merton model gives us very important insights into the process of deriving a term structure model. Its simple formulas make it a useful expository tool, but the negative yields that result from the formula are a major concern.

d r = d Zσ

Page 738: fe115trm

Term Structure Models

15-26 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Ho and Lee ModelHo and Lee [7] extended the Merton model to fit a given initial yield curve perfectly in a discrete time framework. In the Ho and Lee model case, we assume that the short rate of interest is again the single stochastic factor driving movements in the yield curve. Instead of assuming that the short rate r is a random walk,

however, we assume that it has a time dependent drift term :

As before, Z represents a standard Wiener process with mean zero and standard deviation of 1.

By applying the no-arbitrage condition, the function q(t) is chosen such that the theoretical zero coupon yield to maturity and the actual zero coupon yield are exactly the same. The function q(t) is the plug that makes the model fit and corrects for model error, which would otherwise cause the model to give implausible results. Because any functional form for yields can be adapted to fit a yield curve precisely, it is critical, in examining any model for plausibility, to minimize the impact of this extension term. The reason for this is that the extension term itself contains no economic content.

In the case of the Ho and Lee model, the underlying model would otherwise cause interest rates to sink to negative infinity, just as in the Merton model. The extension term’s magnitude, therefore, must offset the negative interest zero coupon bond yields that would otherwise be predicted by the model. As maturities get infinitely long, the magnitude of the extension term will become infinite in size. This is a significant cause for concern, even in the extended form of the model.

Vasicek ModelBoth the Merton model and its extended counterpart the Ho and Lee model are based on an assumption about random interest rate movements that imply that for any positive interest rate volatility, zero coupon bond yields will be negative at every single instant in time, for long maturities beyond a critical maturity t. The extended version of the Merton model, the Ho and Lee model, offsets the negative yields with an extension factor that must grow larger and larger as maturities lengthen. Vasicek [19] proposed a model that avoids the certainty of negative yields and eliminates the need for a potentially infinitely large extension factor. Vasicek accomplishes this by assuming that the short rate r has a constant volatility sigma

θ(t)

d r = (t)d t + d Zθ σ

Page 739: fe115trm

Term Structure Models

Monte Carlo Analytics 15-27

Oracle Proprietary, Confidential Information - Use Restricted by Contract

like the models above, with an important twist: the short rate exhibits mean reversion:

where

r is the instantaneous short rate of interest

is the speed of mean reversion

is the long run expected value for rate, and

σ is the instantaneous standard deviation of r

Z is the standard Wiener process with mean zero and standard deviation of 1. The stochastic process used by Vasicek is known as the Ornstein-Uhlenbeck process. This process enables us to calculate the expected value and variance of the short rate at any time in the future s from the perspective of current time t.

Because r(s) is normally distributed, there is a positive probability that r(s) can be negative. As pointed out by Black [1], this is inconsistent with a no arbitrage economy in the special sense that consumers hold an option to hold cash instead of investing at negative interest rates. The magnitude of this theoretical problem with the Vasicek model1 depends on the level of interest rates and the parameters chosen. In general, it should be a minor consideration for most applications. Very low interest rates in Japan in early 1996, with short rates well under 0.5%, did lead to high probabilities of negative rates using both the Vasicek and extended Vasicek models, when sigma was set to match observable prices of caps and floors. Although the price of a floor with a strike price of zero was positive during this period2 (indicating that the market perceived a real probability of negative rates), the best fitting values of sigma for all caps and floors prices indicated a probability of negative rates that was unrealistically large. For most economies, the Vasicek and extended Vasicek models are very robust with wide-ranging benefits from practical use.

1 The same objection applies to the Merton and Ho and Lee models and a wide range of other modes that assume a constant volatility of interest rates, regardless of the level of short term interest rates.

2 Lehman Brothers was quoting a floor on six month yen LIBOR with a three year maturity and a strike price of zero at 1 basis point bid, 3 basis points offered during the fall, 1995.

dr= (b-r)dt+ dZα σ

α

b

Page 740: fe115trm

Term Structure Models

15-28 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Extended Vasicek (Hull and White) ModelHull and White bridged the gap between the observable yield curve and the theoretical yield curve implied by the Vasicek model by extending or stretching the theoretical yield curve to fit the actual market data. A theoretical yield curve that is identical to observable market data is absolutely essential in practical application. A model that does not fit actual data will propagate errors resulting from this lack of fit into hedge ratio calculations and valuation estimates for more complex securities. No sophisticated user would be willing to place large bets on the valuation of a bond option by a model that cannot fit observable bond prices.

Hull and White apply the identical logic as described in the previous section, but they allow the market price of risk term to drift over time, instead of assuming it is constant as in the Vasicek model. This could be written as:

where:

r is the instantaneous short rate of interest

is the speed of mean reversion

is the long run expected value for rate

σ is the instantaneous standard deviation of r, and

is the market price of risk for time t

As noted earlier the Extended Vasicek (Hull and White) model is currently the most popular term structure model. It has a clear economic meaning, and is computationally very robust. Because of its popularity numerous studies have documented and continue to document what parameters (speed of mean reversion and volatility) should be used. Another advantage of the Extended Vasicek model is that bond prices have an easy closed form formula. This closed form formula leads to very fast computation of rates for any term inside Monte Carlo simulation.

dr = t r dt + dZ( ( ) )θ α σ−

α

b

θ( )t

Page 741: fe115trm

Term Structure Parameters Format

Monte Carlo Analytics 15-29

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Term Structure Parameters FormatAs mentioned above, speed of mean reversion, volatility and long run rate are the parameters the user will have to specify for the chosen model. Speed of Mean Reversion represents the long-run drift factor (1/mean reversion = interest rate cycle). Volatility is the standard deviation of the one-month rate, annually compounded on the equal-month timescale. Long Run Rate (b) represents the equilibrium value of the one-month rate, annually compounded.

Sometimes α and σ are available from external sources, but they are quoted differently. The following equations shows how to obtain the “one month” speed of mean reversion and volatility from the values of a and s corresponding to:

1. instantaneous rate, (hereafter: αi and σi hereafter)

2. rate with term ∆t years (α∆t and σ∆t hereafter)

(For clarity we write and for the one-month parameters)

The following graph shows the change in the ratio varying Dt ( = 0.1):

α i

α1m σ1m

αα

σα

σ α

σα

σ α

α

α

αα α

αα α

112

1

1212 6

2

12 1

1

12 121

1 2

11 2

m

tt

mi

i i

t

t

i

it t

i

e

e t

ee e

e

t te e

i

i

i

i i

i

i i

= ∗ −= −

= ∗−

=−

−−

−−

( )

( ) /

( ) /

( ) /

/

// /

∆∆

∆∆ ∆

∆ ∆

σ σ1m i/ α i

Page 742: fe115trm

Term Structure Parameters Format

15-30 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Though the decision on the best choice for the term structure parameters is left to the user, the software imposes certain restrictions on those as following:

■ 0 < α <1

■ 0.01% < σ < 10%

■ 0% < b < 200%

One more restriction has been set on the parameter combination for no-arbitrage models:

(σ - 23α) > 0.7

If this inequality does not hold the system outputs a warning message and continues processing. Be aware that the resulting rates may not be fully no-arbitrage if the yield curve is very erratic.

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

1 d 1 mo 3 mo 4 mo 6 mo 1 yr 2 yr 5 yr 10 yr

dt

sig

ma

rati

o

Page 743: fe115trm

Term Structure Parameters Format

Monte Carlo Analytics 15-31

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Estimating Term Structure ParametersMany discussions of the use of term structure models in risk management overlook the difficulties of estimating the parameters for such models. Market participants have become used to the idea of estimating parameters from observable market data through the popularity of the Black-Scholes option pricing model and the accepted market practice of estimating volatility for use in the model from market option prices. “Implied volatility” is the value of volatility in the Black-Scholes model that makes the theoretical price equal to the observable market price.

TSC1 and Kamakura Corporation made an in-depth analysis of this parameter estimation problem. The analysis was based on the data set that includes 2,320 days of Canadian Government Bond data provided by a major Canadian financial institution. The data spanned the time period January 2, 1987 to March 6, 1996. In the last section, American swaption data provided by one of the leading New York derivatives dealers is used.

Estimating procedures for term structure models have not progressed as rapidly as the theory of the term structure itself, and leading-edge practice is progressing rapidly. There is a hierarchy of approaches of varying quality to determine the appropriate parameters.

Traditional Academic ApproachThis approach follows theory precisely to estimate the stochastic process for the short term risk-less rate of interest, in this case the one-month Canadian government bill yield. This approach is generally not satisfactory in any market and was found to be unsatisfactory with Canadian data as well.

For an example of a well done analysis of the parameters of a number of theoretical models, see Chan, Karolyi, Longstaff and Sanders2 [4]. The study, while well done, suffers from the typical outcome of such studies: in no case does the assumed stochastic process explain more than three percent of the variation in the short term rate of interest. We find the same problem when running the regression on 2,320 days of data using the one-month Canadian bill rate as the short rate proxy. It is concluded that this approach is not useful in the Canadian market because of the lack of correlation between the level of interest rates and change in the level of the short rate.

1 Treasury Services Corporation (TSC) has been acquired by Oracle in September of 1997.2 K.C. Chan, G.A. Karolyi, F.A. Longstaff and A.B. Sanders, “An Empirical Comparison of

Alternative Models of the Short-Term Interest Rate”, Journal of Finance, Vol. 47, No 3, July 1992.

Page 744: fe115trm

Term Structure Parameters Format

15-32 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Volatility Curve ApproachThis approach matches parameters to the historical relative volatilities of bond yields at different maturities. This approach worked moderately well.

Many market participants use parameter estimates that are consistent with the historical relative degree of volatility of longer term “yields” in relationship to the short rate. Market participants calculate observable variances for bond yields and then select values of s and a that best fit historical “volatility.” The findings for the Canadian Government Bond market were based on the use of par bond coupon rates as proxies for zero coupon bond yields. The results of this analysis are summarized in the following table:

Variance in Canadian Government Interest Rates

January 2, 1987 to March 6, 1996

Note: Interest Rates and Variances are in %.

The best fitting a value was 0.305. This is a fairly large speed of mean reversion and reflects the relatively large variation in short term Canadian rates, relative to long rates, over the sample period. Interest rate volatility was also high at .0285. At the 1996 low levels of Canadian interest rates, this volatility level would clearly be too high. Comparable figures for the United States swap market, based on a fit to 100

Canadian Treasury Bills Canadian Government Bonds

1 mth 2 mth 3 mth 6 mth 1 yr 2 yrs 3 yrs 4yrs 5yrs 7 yrs 10 yrs 25 yrs

Actual Variance

7.677 8.346 7.433 6.842 6.529 3.880 3.044 2.623 2.237 1.909 1.471 0.006

Estimated Variance

7.943 7.745 7.552 7.008 6.051 4.564 3.496 2.717 2.143 1.389 0.794 0.140

Error -0.266 0.602 -0.119 -0.166 0.478 -0.684 -0.452 -0.095 0.094 0.520 0.677 0.856

Squared Error

0.071 0.362 0.014 0.028 0.228 0.468 0.204 0.009 0.009 0.270 0.458 0.732

Best Fitting Parameter Values:

a 0.305172

s 2.854318%

Maturity 0.083 0.167 0.25 0.5 1 2 3 4 5 7 10 25

Page 745: fe115trm

Term Structure Parameters Format

Monte Carlo Analytics 15-33

Oracle Proprietary, Confidential Information - Use Restricted by Contract

swaptions prices, reflected a speed of mean reversion of 0.05 and an interest rate volatility of 0.013.

Advanced Historical Volatility ApproachThis approach fits relative yield changes on all 2,320 days based on the theoretical relationship between the short rate and longer term yields by regression analysis, and then fits term structure model parameters to the regression coefficients.

For the Canadian market, a regression of par bond coupon yields (as proxies for zero coupon bond yields) on the one-month Canadian Government bill rate was performed. The results of this regression showed a higher implied mean reversion speed at shorter maturities.

Implied Speed of Mean Reversion

By Historical Sensitivity to Movements

in the Canadian Treasury Bill Rate (1987 - 1996)

The best fitting a at three years was a very high 1.00921. At 25 years, the a at 0.296 is much more consistent with the historical variances. This chart provides a strong indication that a two-factor model would add value in the Canadian market (assuming other problems, like parameter estimation and the valuation of American options, that are strong disadvantages of two-factor models). This is true of most markets where recent interest rate fluctuations have been large and where current rate levels are near historical lows. The Australian market has had similar experiences.

3 - Year Bond Yield 10 - Year Bond Yield 25 - Year Bond Yield

Coefficient of Short Rate

0.31430 0.17709 0.13505

Standard Error 0.01960 0.01573 0.01349

t - score 16.03177 11.26116 10.01270

R2 0.09985 0.05189 0.04422

Best Fitting α 1.00921 0.56275 0.29600

Page 746: fe115trm

Term Structure Parameters Format

15-34 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Single-Day Yield Curve FittingThis approach is the yield curve equivalent of "implied volatility" using Black-Scholes. Most market participants feel more comfortable basing analysis on parameter values implied from observable securities prices than on historical data when observable prices are sufficient for this task. For example, if the only observable data is the yield curve itself, we can still attempt to fit the actual data to the theory by maximizing the goodness of fit from the theoretical model.

We arbitrarily set the market price of risk to zero and the long run expected value of the short rate to equal the ten-year bond yield. They then find the best fitting a and s. The result is generally of marginal acceptability. This is a common conclusion, as pointed out by the former head of derivatives research at Merrill Lynch1, and one of the reasons why market participants often feel compelled to supplement current yield curve data with historical parameter data.

To illustrate the yield curve fitting approach, we took yield curve data for the beginning, middle and end of the data set and picked the days for which the ten-year Canadian government bond yield reached its highest and lowest points. The following maturities have been used: one-month, six-months, two, three, four, five, seven and ten years. The results of this analysis, using simple spreadsheet software to obtain parameters, were as follows:

■ Best Fitting Parameters from Selected Yield

■ Canadian Government Bond Market,

■ Extended Vasicek Model,

■ Using Common Spreadsheet Non-Linear Equation Solver

1 B. Flesaker, “Testing the Heath-Jarrow-Morton/ Ho-Lee Model of Interest Rate Contingent Claims Pricing”, Journal of Financial and Quantitative Analysis, Vol. 28, No 4, December 1993, pp. 483-495.

Environment

Data Beginning

Highest Rates

Data Mid-Point

Lowest Rates

Date Ending

DateJanuary 2, 1987

April 19, 1990

August 1, 1991

January 28, 1994

March 6, 1996

Mean Reversion 0.01462 0.25540 0.62661 0.70964 0.58000

Volatility 0.00000 0.05266 0.00000 0.00000 0.00100

Mkt Price of Risk 0.00000 0.00000 0.00000 0.00000 0.00000

Page 747: fe115trm

Term Structure Parameters Format

Monte Carlo Analytics 15-35

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Note: Spreadsheet solver capabilities are limited. Market price of risk and long run rate were arbitrarily set to displayed values with optimization speed of mean reversion and volatility.

The results were consistent with other approaches in generally showing a high degree of mean reversion. The lack of power in spreadsheet non-linear equation solving is reflected in the low or zero values for interest rate volatility and illustrate the need for other data (caps, floors, swaptions, bond options prices, and so on) and more powerful techniques for obtaining these parameters.

The Best ApproachGiven these results, we think it is essential to use parameters estimated from observable caps, floors, and swaptions data (or other option-related securities prices) to the extent it is available. To illustrate the power of this approach, consider now the U.S. dollar data on European swaption prices observable in August 1995. At the time the data were obtained, there were 54 observable swaption prices. A swaption gives the holder the right to initiate a swap of a predetermined maturity and fixed rate level on an exercise date in the future. We estimated extended Vasicek model parameters by choosing the speed of mean reversion (a) and interest rate volatility (s), which minimized the sum of the squared errors in pricing these 54 swaptions. The “price” of the swaption was obtained by converting the Black-Scholes volatility quotation for the swaption price to the percentage of notional principal that the equivalent dollar swaption price represented. The exercise periods on the swaptions were 0.5, one, two, three, four and five years. The underlying swap maturities were 0.5, one, two, three, four, five, six, seven and ten years.

Overall, the extended Vasicek model’s performance was extraordinary. The average model error was literally 0 basis points with a mean absolute error of five basis points of notional principal, even though only two parameters (in addition to the current yield curve) were used to price 54 securities. Compare this to the Black model for commodity futures, which is often used for swaptions and caps and

Long Run Rate 0.08730 0.11950 0.09885 0.06335 0.07600

Estimate Quality Low Medium Low Low Low

Environment

Data Beginning

Highest Rates

Data Mid-Point

Lowest Rates

Date Ending

DateJanuary 2, 1987

April 19, 1990

August 1, 1991

January 28, 1994

March 6, 1996

Page 748: fe115trm

Choosing a Smoothing Method

15-36 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

floors pricing. The Black model required 54 different implied volatility values to match actual market prices, even though the model, in theory, assumes that one volatility parameter should correctly price all 54 swaptions. Volatilities in the Black model ranged from 0.13 to 0.226, a very wide range that should indicate to swaption market participants the need for caution.

In summary, the extended version of the Vasicek model, when applied to swaption prices, proved two things:

■ Swaptions provide a rich data set with excellent convergence properties that enable market participants to use even common spreadsheet software to obtain high quality term structure parameter estimates.

■ The accuracy of the extended Vasicek model using only two parameters held constant over 54 swaptions, is far superior to that of the Black commodity futures model in predicting actual market prices.

In estimating term structure parameters, the lesson is clear. A rich data set of current prices of securities with significant optionality is necessary to provide an easy-to-locate global optimum for almost any popular term structure model.

Choosing a Smoothing MethodOne of the most fundamental steps in fixed-income option valuation is calculating a smooth yield curve. The original yield curve from the FDM Rate Manager IRC may not have enough terms for the term structure parameter estimation routine to work properly. In particular, the trinomial lattice needs the value of the yield for every bucket point.

The simple description of a smoothing is to draw a smooth, continuous line through observable market data points. Because an infinite number of smooth, continuous lines pass through a given set of points, some other criterion has to be provided to select among the alternatives. There are many different ways to smooth a yield curve. The best technique is the one that results in the best term structure parameters.

The Rate Generator has two different smoothing techniques:

■ Cubic Spline

■ Linear Interpolation

Page 749: fe115trm

Choosing a Smoothing Method

Monte Carlo Analytics 15-37

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Cubic Spline of YieldsOne approach to smoothing yield curves is the use of cubic splines. A cubic spline is a series of third degree polynomials that have the form:

y = a + bx + cx2 + dx3

These polynomials are used to connect-the-dots formed by observable data. For example, a US Treasury yield curve might consist of interest rates observable at 1, 2, 3, 5, 7, and 10 years. To value a fixed-income option, we need a smooth yield curve that can provide yields for all possible yields to maturity between zero and 10 years. A cubic spline fits a different third degree polynomial to each interval between data points (0 to 1 years, 1 to 2 years, 2 to 3 years, and so on). In the case of a spline fitted to swap yields, the variable x (independent variable) is years to maturity and the variable y (dependent variable) is yield. The polynomials are constrained so they fit together smoothly at each knot point (the observable data point); that is, the slope and the rate of change in the slope with respect to time to maturity have to be equal for each polynomial at the knot point where they join. If this is not true, there will be a kink in the yield curve (that is, continuous but not differentiable).

However, two more constraints are needed to make the cubic spline curve unique. The first constraint restricts the zero-maturity yield to equal the 1-day interest rate (for example, the federal funds rate in the U.S. market). At the long end of the maturity spectrum a number of alternatives exist. The most common one restricts the yield curve at the longest maturity to be either straight (y"=0) or flat (y’=0). There are other alternatives if the cubic spline is fitted to zero coupon bond prices instead of yields.

Our function will also extrapolate the original yield curve outside its domain of definition. The resulting smoothed yield curve will be constant and equal to:

■ the first term yield for first term

■ the last term yield for last term.

T ≤T ≥

Page 750: fe115trm

Defining a Rate Index Formula

15-38 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Linear Interpolation Cubic splines have historically been the method preferred for yield curve smoothing. In spite of the popularity of the cubic spline approach, market participants have often relied on linear yield curve smoothing as a technique that is especially easy to implement, but its limitations are well-known:

■ Linear yield curves are continuous but not smooth; at each knot point there is a kink in the yield curve.

■ Forward rate curves associated with linear yield curves are linear and discontinuous at the knot points. This means that linear yield curve smoothing sometimes cannot be used with the Heath, Jarrow, and Morton term structure model because it usually assumes the existence of a continuous forward rate curve.

■ Estimates for the parameters associated with popular term structure models like the extended Vasicek model are unreliable because the structure of the yield curve is unrealistic. The shape of the yield curve, because of its linearity, is fundamentally incompatible with an academically sound term structure model. Resulting parameter estimates are therefore, often implausible.

Note that as in the case of cubic spline, we extrapolate for the maturities less than the first term yield and greater than the last term yield: in the former, the yield is set to be equal to the first term yield, and for the latter it is set to be the last term yield.

Defining a Rate Index FormulaThe purpose of the Index ID is to define a forecast of the index rates (such as Libor or Prime) based on the Monte Carlo forecast of the risk-free rate. This forecast is applicable for every time in the future and every scenario. “Future” means any time after the As-of-Date.

The rate index primarily should be defined under the following situations:

■ The index is a contractual function of the risk-free yield

■ The index is defined through a conjunction of exogenous factors, in which case time series analysis finds the best formula.

In this section we analyze one important special case of a contractual function, namely how to translate simple rates (zero-coupon yields) into par bond coupon rates for a risk-free bond with one payment. We first describe the general formula a user can enter.

t

Page 751: fe115trm

Defining a Rate Index Formula

Monte Carlo Analytics 15-39

Oracle Proprietary, Confidential Information - Use Restricted by Contract

General Case The user can enter the following formula for each index and index term:

where:

■ are coefficients, Š 0

■ are exponents; they can be integer only

■ refers to the Monte Carlo scenario

■ is the term of the index for which the formula applies

■ is the term of each forecasted risk-free rate

■ is the risk-free rate at time for a term of .

In this formula we included the scenario for notational convenience, although it cannot be specified by the user: the same formula is applied on each scenario - what

varies is the risk-free rate. The user can specify only , and of course the identity of the Index IRC for which the formula applies.

If an adjustable instrument in the database is linked to an index term for which the user did not define a formula, the engine will linearly interpolate (or extrapolate) along term. For instance, suppose the user defined formulae only for Libor 1 month and Libor 5 months, but an instrument record is linked to Libor 3 months, the engine will calculate the index rate for Libor 3 months as the average of Libor 1 month and 5 months.

Formula for a Coupon Rate Suppose that the security is issued at time and pays year(s) after it has been issued. A typical example would be a 6-month T-bill, that is, . The owner of the security will receive at time :

Cash flow = principal * ( ),

where is the unknown (annual) coupon rate. In a no-arbitrage economy this cash flow should be equal to:

Future value of principal = principal *

Index Max( , , ) ( , ( , , ) )t t T a a R t tk ii

ibi+ = + +

=∑ω τ ω0

1

8

0

ai ai

bi

ωTk

τ i

R t t i( , , )+τ ω t τ i

ω

a b Ti i k i, , ,τ

t TT = 0 5.

t T+1+ cT

c

( ( , , ))1+ +R t t T Tω

Page 752: fe115trm

Defining a Rate Index Formula

15-40 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Solving for the coupon rate gives the equation:

Because yields are usually much smaller than 100%, we can expand the numerator of the right handside in a Taylor series:

Therefore,

The user would then input the following formula coefficients:

1 1 1

2 2

3 3

cR t t T

T

T

=+ + −( ( , , ))1 1ω

( )( ) ( )( )

...1 11

2

1 2

62 3+ ≅ + +

−+

− −+R TR

T TR

T T TRT

c RT

RT T

R= +−

+− −

+1

2

1 2

62 3( )( )

...

i ai bi τ i

T

( ) /T −1 2 T

( )( ) /T T− −1 2 6 T

Page 753: fe115trm

Defining a Rate Index Formula

Monte Carlo Analytics 15-41

Oracle Proprietary, Confidential Information - Use Restricted by Contract

and all other coefficients equal to zero. The following example shows that we do not need to go very far in the Taylor series to converge to the true value of the coupon rate. This is important to remember because a long formula necessitates more computing time than a slow one.

Example:

Term:

Yield:

Order of approximation Formula Coupon

1 0.05

2 0.049375

3 0.049390625

True value 0.049390153

T = 0 5.

R = 0 05.

R

RT

R+−1

22

RT

RT T

R+−

+− −1

2

1 2

22 3( )( )

( )1 1+ −R

T

T

Page 754: fe115trm

Defining a Rate Index Formula

15-42 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Computation of Duration and ConvexityRisk Manager does not directly output duration. However, a simple manual procedure computes delta and therefore duration. We describe this procedure hereafter.

1. Run RM to compute market value using the original yield curve; we call this value.

2. Select a rate increment, to be 100 basis points (1%) for example.

3. Create a new yield curve, equal to the original yield curve plus a parallel shift equal to the rate increment.

4. Run RM to compute market value with the same parameters as in (1), but with

the new yield curve; we call this value

5. Delta can be computed manually:

6. Modified duration is equal to [ ]

To compute gamma (and therefore convexity), we need two yield curve shocks, one upward, and one downward, with the same rate increment. Gamma is equal to the difference between the duration corresponding to each shock over the rate increment.

A parallel yield curve shift will result in a change of value of the instantaneous short rate but will not change the value of the market price of risk because all term structure models we use are affine.

This justifies the parallel yield curve shift.

MV ( )1

∆r

MV ( )2

∆∆

=−MV MV

r

( ) ( )1 2

− ∆ / ( )MV 1

Page 755: fe115trm

References

Monte Carlo Analytics 15-43

Oracle Proprietary, Confidential Information - Use Restricted by Contract

References[1] F. Black, “Interest Rates as Options”, Journal of Finance, December 1995, pp.1371-1376.

[2] P. Bratley, and Fox, “Algorithm 659: Implementing Sobol’s Quasirandom Sequence generator”, ACM Transactions on Mathematical Software, Vol. 15, No 1, March 1988.

[3] R. Caflisch, Morokoff, and A. Owen “Valuation of Mortgage Backed Securities Using Brownian Bridges to Reduce Effective Dimension”, Caflisch’ World Wide Web site, January 15, 1997.

[4] K.C. Chan, G.A. Karolyi, F.A. Longstaff and A.B. Sanders, “An Empirical Comparison of Alternative Models of the Short-Term Interest Rate”, Journal of Finance, Vol. 47, No 3, July 1992.

[5] P. Fitton, “Hybrid Low Discrepancy Sequences. Effective Path Reduction for Yield Curve Scenario Generation”. To appear in the Journal of Fixed Income.

[6] B. Flesaker, “Testing the Heath-Jarrow-Morton/ Ho-Lee Model of Interest Rate Contingent Claims Pricing”, Journal of Financial and Quantitative Analysis, Vol. 28, No 4, December 1993, pp. 483-495.

[7] T.S.Y. Ho and S.-B Lee, “Term Structure Movements and Pricing Interest Rate Contingence Claims”, Journal of Finance, Vol. 41, 1986, pp. 1011-1029.

[8] J. Hull, “Options, Futures, and other Derivatives”, 2-nd Edition, Prentice Hall, 1993.

[9] J. Hull, “Options, Futures, and other Derivatives”, 3-rd Edition, Prentice Hall, 1997. ISBN 01-13-186479.

[10] J. Hull and A. White, “One-factor Interest-Rate Models and the Valuation of Interest-Rate Derivative Securities”, Journal of Financial and Quantitative Analysis, Vol. 28, No 2, June 1993.

[11] C. Joy, Boyle and Tan, “Quasi-Monte Carlo Methods in Numerical Finance”, Management Science, Vol. 42, No 6, June 1996.

[12] Lord G., Paskov, Vanderhoof, “Using Low-Discrepancy Points to Value Complex Financial Instruments”, Contingencies, September/October 1996.

[13] W. Morokoff, and R. Caflisch, “Quasi-Random Sequences and Their Discrepancies”, SIAM Journal of. Scientific Computing, Vol. 15, No 6, pp. 1251-1279, November 1994.

Page 756: fe115trm

References

15-44 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

[14] H. Niederreiter, “Random Number Generation and Quasi-Monte Carlo Methods”, Regional Conference Series in Applied Mathematics, SIAM, 1992.

[15] A.Owen, “Monte Carlo Variance of Scrambled Equidistribution Quadrature”, SIAM Journal of Numerical Analysis, 1996.

[16] W. Press, S. Teukolski, W. Vetterling, B. Flannery, “Numerical Recipes in C, The Art of Scientific Computing”, 2nd Edition, Cambridge University Press, 1992.

[17] J. Spanier, private communication. July 1997.

[18] J. Spanier and Li. “Quasi-Monte Carlo Methods for Integral Equations”. Unpublished.

[19] O.A. Vasicek, “An Equilibrium Characterization of the Term Structure”, Journal of Financial Economics, Vol. 5, 1977, pp. 177-188.

Page 757: fe115trm

Oracle Risk Manager Financial Elements 16-1

Oracle Proprietary, Confidential Information - Use Restricted by Contract

16Oracle Risk Manager Financial Elements

This chapter contains the descriptions and calculation details of Oracle Risk Manager financial elements. This chapter contains the following topics:

■ Accumulation Methods

■ Financial Element Listed by Description

■ Financial Elements Listed by Number

■ Element Type - Cash Flow Financial Elements: Non-Maturity Accounts

■ Element Type - Cash Flow: Income Statement Accounts

■ Element Type - Cash Flow: Simple Accounts

■ Element Type - Gap

■ Element Type - Market Value

■ Financial Element Output by Account Type

■ Financial Element Calculations

■ Translation Methods for Financial Elements

Page 758: fe115trm

Accumulation Methods

16-2 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Accumulation MethodsAccumulation methods are applied to the summary financial information calculated at each event in order to generate financial element data for each modeling bucket. There are five different accumulation methods:

■ Average Method

■ Accrual Method

■ Sum Method

■ At First Method

■ At Last Method

Each of these methods is described in detail in this section.

Average MethodThe average method is used to calculate an average value (such as Average Balance, Average Net Rate) over a bucket. The calculation sums up the daily values and divided by the number of days in the bucket.

Daily Average Balance = ∑(Daily Balance)/days in bucket

All simulated events (originations, payments, prepayments, and repricings) are assumed to happen at the end of the event date. This implies that the balance and rate on the day of an event is counted as the value prior to any changes made by the event. Changes made impact the value of the next day.

Accrual MethodThe accrual method is used to determine how much accrual has occurred over the modeling bucket. The accrual method is determined by the code value in the detail record. Interest in advance instruments calculate interest accruals from the current payment date to the next payment date. Interest in arrears instruments calculate interest accruals from the current payment date to the previous payment date.

The interest cash flow is divided by the number of days between these two dates to determine a daily accrual for each day within the modeling term. Daily interest accruals are summed by modeling bucket.

Daily Interest Accrual = Interest Cash Flow/ number of days in payment

The example below demonstrates an interest accrual for an arrears record:

Page 759: fe115trm

Accumulation Methods

Oracle Risk Manager Financial Elements 16-3

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Example:

Modeling Start Date = January 1

Sum MethodSummed financial element values are calculated by adding together all values associated with events occurring during the modeling bucket.

Principal Runoff = ∑(Principal Runoff)

At First MethodAt First accumulation method determines the value from the first event within a modeling bucket (for example, Beginning Balance).

At Last MethodAt Last accumulation method determines the value from the last event within a modeling bucket (for example, Ending Balance).There are two Financial Element listings in this chapter. The first lists all elements by element number and the second by element description.

Payment Date Interest Cash Flow Days in Payment Daily Accrual

January 15 950 31 30.64

February 15 900 31 29.03

March 15 850 28 30.36

Bucket End Date Accrual Calculation Interest Accrual

January 31 15 days @ 30.64 + 16 days @ 29.03 924.08

February 28 13 days @ 29.03 + 15 days @ 30.36 832.79

Page 760: fe115trm

Financial Element Listed by Description

16-4 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Financial Element Listed by Description

Financial Element Description

FinancialElementNumber Averaging Type Weighting Factor

Account TypeProcessing *

Accumulated Translation Amount

950 At Last

After Reprice Balance 255 At Last DCF

After Reprice Gross Rate 290 At Last After Reprice Balance DCF

After Reprice Net Rate 300 At Last After Reprice Balance DCF

After Reprice Transfer Rate 310 At Last After Reprice Balance DCF

Average Balance 140 Daily average B, DCF

Average Gross Rate 150 Daily average Average Balance DCF

Average Net Rate 160 Daily average Average Balance DCF

Average Transfer Rate 170 Daily average Average Balance DCF

Before Reprice Balance 250 At First DCF

Before Reprice Gross Rate 260 At First Before Reprice Balance DCF

Before Reprice Net Rate 270 At First Before Reprice Balance DCF

Before Reprice Transfer Rate 280 At First Before Reprice Balance DCF

Beginning Balance 60 At first B, DCF

Beginning Gross Rate 70 At first Beginning Balance DCF

Beginning Net Rate 80 At first Beginning Balance DCF

Beginning Transfer Rate 90 At first Beginning Balance DCF

Deferred Average Balance 530 Daily average DCF

Deferred Ending Balance 520 At last DCF

Deferred Runoff 540 Accrual DCF

Dividends 940 Sum A

Ending Balance 100 At last B, DCF

Ending Gross Rate 110 At last Ending Balance DCF

Ending Net Rate 120 At last Ending Balance DCF

Page 761: fe115trm

Financial Element Listed by Description

Oracle Risk Manager Financial Elements 16-5

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Ending Transfer Rate 130 At last Ending Balance DCF

Fully Indexed Gross Rate 320 Sum DCF

Fully Indexed Net Rate 330 Sum DCF

Interest Accrual - Gross 445 Accrual DCF, I

Interest Accrual - Net 440 Accrual DCF, I

Interest Accrual - Transfer Rate

450 Accrual DCF, I

Interest Cash Flow Gross 435 Sum DCF, I

Interest Cash Flow Net 430 Sum DCF, I

Interest Cash Flow Transfer Rate

437 Sum DCF, I

Interest Credited 480 Sum DCF

Lifetime Cap Balance 580 Daily Average DCF

Lifetime Cap Effect 600 Accrual DCF

Lifetime Cap Rate 590 Daily Average Lifetime Cap Balance DCF

Fee Income Percent 905 Sum Average Balance

New Add Balance 340 Sum DCF

New Add Gross Rate 350 Sum New Add Balance DCF

New Add Net Rate 360 Sum New Add Balance DCF

New Add Transfer Rate 370 Sum New Add Balance DCF

NGAM Balance 640 Daily Average DCF

NGAM Interest 650 Accrual DCF

Non-Interest Income 455 Sum N

Non-Interest Expense 457 Sum N

Payment Runoff (positive) 190 Sum DCF

Payment Runoff (negative) 192 Sum DCF

Periodic Cap Balance 550 Daily Average DCF

Financial Element Description

FinancialElementNumber Averaging Type Weighting Factor

Account TypeProcessing *

Page 762: fe115trm

Financial Element Listed by Description

16-6 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Periodic Cap Effect 570 Accrual DCF

Periodic Cap Rate 560 Daily Average Periodic Cap Balance DCF

Prepay Balance 515 Sum DCF

Prepay Rate (Annual) 510 Sum Prepay Balance DCF

Prepay Runoff (positive) 180 Sum DCF

Prepay Runoff (negative) 182 Sum DCF

Realized Currency Gain/Loss (Principal)

475 Sum DCF

Prepay Runoff Gross Rate 225 Sum By Prepay Runoff DCF

Prepay Runoff Net Rate 235 Sum By Prepay Runoff DCF

Prepay Runoff Transfer Rate 245 Sum By Prepay Runoff DCF

Realized Currency Gain/Loss (Interest--Net)

485 Sum DCF

Realized Currency Gain/Loss (Interest--Gross)

486 Sum DCF

Realized Currency Gain/Loss (Interest--Tran. Rate)

487 Sum DCF

Roll Add Balance 380 Sum DCF

Roll Add Gross Rate 390 Sum DCF

Roll Add Net Rate 400 Sum DCF

Roll Add Transfer Rate 410 Sum DCF

Taxes - Federal 930 Sum A

Taxes - Local 935 Sum A

Tease Balance 610 Daily Average DCF

Tease Effect 630 Accrual DCF

Tease Rate 620 Daily Average Tease Balance DCF

Timing of Payment Runoff (positive)

191 Sum Payment Runoff (positive)

DCF

Financial Element Description

FinancialElementNumber Averaging Type Weighting Factor

Account TypeProcessing *

Page 763: fe115trm

Financial Element Listed by Description

Oracle Risk Manager Financial Elements 16-7

Oracle Proprietary, Confidential Information - Use Restricted by Contract

* This specifies for which account types the financial elements will be processed. The code values are B = Balance only; I = Interest only; DCF = Detail Cash Flow; A = Autobalancing; N = Non Interest

Timing of Payment Runoff (negative)

193 Sum Payment Runoff (positive)

DCF

Timing of Prepay Runoff (positive)

181 Sum Prepay Runoff (positive) DCF

Timing of Prepay Runoff (negative)

183 Sum Prepay Runoff (negative) DCF

Timing of Total Runoff (positive)

211 Sum Total Runoff (positive) DCF

Timing of Total Runoff (negative

213 Sum Total Runoff (negative) DCF

Total Currency Gain/Loss (Principal)

465 Sum

Total Runoff (positive) 210 Sum DCF

Total Runoff (negative) 212 Sum DCF

Total Runoff Gross Rate 220 Sum Total Runoff DCF

Total Runoff Net Rate 230 Sum DCF

Total Runoff Transfer Rate 240 Sum DCF

Weighted Average Term 500 Sum Ending Balance DCF

Financial Element Description

FinancialElementNumber Averaging Type Weighting Factor

Account TypeProcessing *

Page 764: fe115trm

Financial Elements Listed by Number

16-8 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Financial Elements Listed by Number

Financial Element Description

FinancialElementNumber Averaging Type Weighting Factor Output Group

Beginning Balance 60 At first Standard

Beginning Gross Rate 70 At first By Beginning Balance Standard

Beginning Net Rate 80 At first By Beginning Balance Standard

Beginning Transfer Rate 90 At first By Beginning Balance Standard

Ending Balance 100 At last Standard

Ending Gross Rate 110 At last By Ending Balance Standard

Ending Net Rate 120 At last By Ending Balance Standard

Ending Transfer Rate 130 At last By Ending Balance Standard

Average Balance 140 Daily average Standard

Average Gross Rate 150 Daily average By Average Balance Standard

Average Net Rate 160 Daily average By Average Balance Standard

Average Transfer Rate 170 Daily average By Average Balance Standard

Prepay Runoff - Positive 180 Sum Standard

Timing of Prepay Runoff - positive

181 Sum By Prepay Runoff (positive)

Prepay Detail

Prepay Runoff - negative 182 Sum Prepay Detail

Timing of Prepay Runoff - negative

183 Sum By Prepay Runoff (negative)

Prepay Detail

Payment Runoff - positive 190 Sum Runoff Detail

Timing of Payment Runoff - positive

191 Sum By Principal Runoff (positive)

Runoff Detail

Payment Runoff - negative 192 Sum Runoff Detail

Timing of Payment Runoff - negative

193 Sum By Principal Runoff (negative)

Runoff Detail

Maturity Runoff - positive 195 Sum Runoff Detail

Timing of Maturity Runoff - positive

196 Sum By Principal at Maturity (positive)

Runoff Detail

Page 765: fe115trm

Financial Elements Listed by Number

Oracle Risk Manager Financial Elements 16-9

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Maturity Runoff - negative 197 Sum Runoff Detail

Timing of Maturity Runoff - negative

198 Sum By Principal at Maturity (negative)

Runoff Detail

Total Runoff - positive 210 Sum Standard

Timing of Total Runoff - positive

211 Sum By Total Runoff (positive) Standard

Total Runoff - negative 212 Sum Standard

Timing of Total Runoff - negative

213 Sum By Total Runoff (negative)

Standard

Total Runoff Gross Rate 220 Sum By Total Runoff Standard

Prepay Runoff Gross Rate 225 Sum By Prepay Runoff DCF

Total Runoff Net Rate 230 Sum Standard

Prepay Runoff Net Rate 235 Sum By Prepay Runoff DCF

Total Runoff Transfer Rate 240 Sum Standard

Prepay Runoff Transfer Rate 245 Sum By Prepay Runoff DCF

Before Reprice Balance 250 At First Repricing

After Reprice Balance 255 At Last Repricing

Before Reprice Gross Rate 260 At First Before Reprice Balance Repricing

Before Reprice Net Rate 270 At First Before Reprice Balance Repricing

Before Reprice Transfer Rate 280 At First Before Reprice Balance Repricing

After Reprice Gross Rate 290 At Last After Reprice Balance Repricing

After Reprice Net Rate 300 At Last After Reprice Balance Repricing

After Reprice Transfer Rate 310 At Last After Reprice Balance Repricing

Fully Indexed Gross Rate 320 Sum Repricing

Fully Indexed Net Rate 330 Sum Repricing

New Add Balance 340 Sum New Origination

New Add Gross Rate 350 Sum New Add Balance New Origination

New Add Net Rate 360 Sum New Add Balance New Origination

Financial Element Description

FinancialElementNumber Averaging Type Weighting Factor Output Group

Page 766: fe115trm

Financial Elements Listed by Number

16-10 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

New Add Transfer Rate 370 Sum New Add Balance New Origination

Roll Add Balance 380 Sum New Origination

Roll Add Gross Rate 390 Sum New Origination

Roll Add Net Rate 400 Sum New Origination

Roll Add Transfer Rate 410 Sum New Origination

Interest Cash Flow Net 430 Sum Standard

Interest Cash Flow Gross 435 Sum Standard

Interest Cash Flow Transfer Rate

437 Sum Standard

Interest Accrual - Net 440 Accrual Standard

Interest Accrual - Gross 445 Accrual Standard

Interest Accrual - Transfer Rate

450 Accrual Standard

Non-Interest Income 455 Sum Standard

Non-Interest Expense 457 Sum Standard

Interest Credited 480 Sum Runoff Detail

Weighted Average Term 500 Sum Ending Balance Standard

Prepay Rate (Annual) 510 Sum Prepay Balance Prepay Detail

Prepay Balance 515 Sum Prepay Detail

Deferred Ending Balance 520 At last Standard

Deferred Average Balance 530 Daily average Standard

Deferred Runoff 540 Accrual Standard

Periodic Cap Balance 550 Daily Average Cap/Floor/Tease/NGAM

Periodic Cap Rate 560 Daily Average Periodic Cap Balance Cap/Floor/Tease/NGAM

Periodic Cap Effect 570 Accrual Cap/Floor/Tease/NGAM

Financial Element Description

FinancialElementNumber Averaging Type Weighting Factor Output Group

Page 767: fe115trm

Financial Elements Listed by Number

Oracle Risk Manager Financial Elements 16-11

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Lifetime Cap Balance 580 Daily Average Cap/Floor/Tease/NGAM

Lifetime Cap Rate 590 Daily Average Lifetime Cap Balance Cap/Floor/Tease/NGAM

Lifetime Cap Effect 600 Accrual Cap/Floor/Tease/NGAM

Tease Balance 610 Daily Average Cap/Floor/Tease/NGAM

Tease Rate 620 Daily Average Tease Balance Cap/Floor/Tease/NGAM

Tease Effect 630 Accrual Cap/Floor/Tease/NGAM

NGAM Balance 640 Daily Average Cap/Floor/Tease/NGAM

NGAM Interest 650 Accrual Cap/Floor/Tease/NGAM

Gap Runoff 660 Sum Standard

Gap Principal Runoff 661 Sum Runoff Detail

Gap Repricing Runoff 662 Sum Repricing

Gap Deferred Runoff 663 Sum Runoff Detail

Gap Runoff Term 670 Sum By Gap Runoff Bal Standard

Gap Interest Cash Flow Gross Rate

671 Sum Runoff Detail

Gap Interest Cash Flow Net Rate

672 Sum Runoff Detail

Gap Interest Cash Flow Transfer Rate

673 Sum Runoff Detail

Gap Accrued Interest Gross Rate

674 Accrual Runoff Detail

Gap Accrued Interest Net Rate

675 Accrual Runoff Detail

Financial Element Description

FinancialElementNumber Averaging Type Weighting Factor Output Group

Page 768: fe115trm

Element Type - Cash Flow Financial Elements: Non-Maturity Accounts

16-12 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Element Type - Cash Flow Financial Elements: Non-Maturity Accounts

Gap Accrued Interest Transfer Rate

676 Accrual Runoff Detail

Gap Interest Credited 677 Sum Runoff Detail

Gap Runoff Gross Rate 680 Sum By Gap Runoff Bal Standard

Gap Runoff Net Rate 690 Sum By Gap Runoff Bal Standard

Gap Runoff Transfer Rate 700 Sum By Gap Runoff Bal Standard

Fee Income Percent 905 Sum Average Balance

Taxes - Federal 930 Sum Standard

Taxes - Local 935 Sum Standard

Dividends 940 Sum StandardA

Financial Element

Other Assets/Liability/

EquityNon-Mat. Acct

(Multi Rts)Non-Mat. Acct

(Net Rts)Non-Mat. Acct

(No T-Rts)Non-Mat. Acct (No Grss Rts)

60 Beg Bal X X X X X

70 Beg Gross X X

80 Beg Net X X X X

90 Beg T-Rate X X

100 End Balance X X X X X

110 Ending Gross Rate X X

120 Ending Net Rate X X X X

130 Ending Transfer Rate X X

140 Average Bal X X X X X

150 Average Gross Rate X X

160 Average Net Rate X X X X

170 Average Transfer Rate X X

Financial Element Description

FinancialElementNumber Averaging Type Weighting Factor Output Group

Page 769: fe115trm

Element Type - Cash Flow: Simple Accounts

Oracle Risk Manager Financial Elements 16-13

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Element Type - Cash Flow: Income Statement Accounts

Element Type - Cash Flow: Simple Accounts

440 Interest Accrued X X X X

445 Interest Accrued Gross X X X

450 Charge/Credit X

Financial ElementIncome Interest

IncomeNon-Interest

Expense Taxes Dividends

455 Non-Interest Income X

457 Non-Interest Expense X

930 Taxes - Federal X

935 Taxes - State X

940 Dividends X

Financial Element

Simple Acct Type

(No T-Rts)

Simple Acct Type

(No Grss Rts)

Simple Acct Type

(Net Rts)

Simple Acct Type

(Multi Rts)

60 Beg Bal X X X X

70 Beg Gross X X

80 Beg Net X X X X

90 Beg T-Rate X X

100 End Balance X X X X

110 Ending Gross Rate X X

120 Ending Net Rate X X X X

130 Ending Transfer Rate X X

140 Average Bal X X X X

150 Average Gross Rate X X

160 Average Net Rate X X X X

170 Average Transfer Rate X X

Financial Element

Other Assets/Liability/

EquityNon-Mat. Acct

(Multi Rts)Non-Mat. Acct

(Net Rts)Non-Mat. Acct

(No T-Rts)Non-Mat. Acct (No Grss Rts)

Page 770: fe115trm

Element Type - Gap

16-14 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Element Type - Gap

210 Total Runoff - positive X X X X

211 Timing of Total Runoff - positive X X X X

212 Total Runoff - negative X X X X

213 Timing of Total Runoff - negative X X X X

220 Total Runoff Gross Rate X X

230 Total Runoff Net Rate X X X X

240 Total Runoff Transfer Rate X X

340 New Add Balance X X X X

350 New Add Gross Rate X X

360 New Add Net Rate X X X X

370 New Add Transfer Rate X X

440 Interest Accrued X X X X

445 Interest Accrued Gross X X

450 Charge/Credit X X

Element Number Element Name

660 Gap Runoff

661 Gap Principal Runoff

662 Gap Repricing Runoff

663 Deferred Runoff

670 Gap Runoff Term

671 Gap Interest Cash Flow Gross

672 Gap Interest Cash Flow Net

673 Gap Interest Cash Flow Transfer

674 Gap Accrued Interest Gross

675 Gap Accrued Interest Net

676 Gap Accrued Interest Transfer

Financial Element

Simple Acct Type

(No T-Rts)

Simple Acct Type

(No Grss Rts)

Simple Acct Type

(Net Rts)

Simple Acct Type

(Multi Rts)

Page 771: fe115trm

Element Type - Market Value

Oracle Risk Manager Financial Elements 16-15

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Element Type - Market Value

677 Gap Interest Credited

680 Gap Runoff Gross Rate

690 Gap Runoff Net Rate

700 Gap Runoff Transfer Rate

Element Number Element Name

2001 Static Gross Par Balance

2002 Static Net par Balance

2003 Static Deferred Balance

2004 Static Accrued Interest Balance

2005 Static Net Rate

2006 Static Transfer Rate

2007 Static Remaining Term

2008 Static Market Value

Element Number Element Name

Page 772: fe115trm

Financial Element Output by Account Type

16-16 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Financial Element Output by Account TypeAccount Types are assigned through the Leaf Set-Up interface for each Common COA ID. Product leaves other than Common COA ID are assigned the same account type as their associated Common COA ID. During Risk Manager processing, the financial elements generated are dependent on the account type associated with each instrument record’s product leaf value. The following table defines which financial elements are produced for instruments of a specific account type classification.

Fin. Elmt. # Description

Autobal Accts

Earning Asset/

Interest-bearing Liability

Interest Income/ Interest Expense

OBS Recv./ Pay. Equity

Other Assets/ Other Liabs

Non- Interest Income

Non- Interest Expense Taxes Dividends

60 Beginning Balance

Y Y Y Y Y

70 Beginning Gross Rate

Y Y Y

80 Beginning Net Rate

Y Y Y

90 Beginning Transfer Rate

Y Y Y

100 Ending Balance Y Y Y Y Y

110 Ending Gross Rate

Y Y Y

120 Ending Net Rate Y Y Y

130 Ending Transfer Rate

Y Y Y

140 Average Balance Y Y Y Y Y

150 Average Gross Rate

Y Y Y

160 Average Net Rate

Y Y Y

170 Average Transfer Rate

Y Y Y

180 Prepay Runoff Y Y

181 Timing of Prepay Runoff- positive

Y Y

Page 773: fe115trm

Financial Element Output by Account Type

Oracle Risk Manager Financial Elements 16-17

Oracle Proprietary, Confidential Information - Use Restricted by Contract

182 Prepay Runoff- negative

Y Y

183 Timing of Prepay Runoff - negative

Y Y

190 Schedule Principal Runoff

Y Y

192 Pmnt Runoff- negative

Y Y

193 Timing of Pmnt Runoff- negative

Y Y

195 Maturity Runoff- positive

Y Y

196 Timing of Mat. Runoff-positive

Y Y

197 Maturity Runoff-negative

Y Y

198 Timing of Mat. Runoff-negative

Y Y

210 Total Runoff - positive

Y Y

211 Timing of Total Runoff-positive

Y Y

212 Total Runoff- negative

Y Y

213 Timing of Total Runoff-negative

Y Y

220 Total Runoff Gross Rate

Y Y

230 Total Runoff Net Rate

Y Y

240 Total Runoff Transfer Rate

Y Y

250 Reprice Balance Beginning

Y Y

255 Reprice Balance Ending

Y Y

Fin. Elmt. # Description

Autobal Accts

Earning Asset/

Interest-bearing Liability

Interest Income/ Interest Expense

OBS Recv./ Pay. Equity

Other Assets/ Other Liabs

Non- Interest Income

Non- Interest Expense Taxes Dividends

Page 774: fe115trm

Financial Element Output by Account Type

16-18 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

260 Before Reprice Gross Rate

Y Y

270 After Reprice Gross Rate

Y Y

280 Before Reprice Net Rate

Y Y

290 After Reprice Net Rate

Y Y

300 Before Reprice Transfer Rate

Y Y

310 After Reprice Transfer Rate

Y Y

320 Fully Indexed Gross Rate

Y Y

330 Fully Indexed Net Rate

Y Y

340 New Add Balance

Y Y Y Y Y

350 New Add Gross Rate

Y Y

360 New Add Net Rate

Y Y

370 New Add Transfer Rate

Y Y

380 Roll Add Balance

Y Y

390 Roll Add Gross Rate

Y Y

400 Roll Add Net Rate

Y Y

410 Roll Add Transfer Rate

Y Y

430 Interest Cash Flow Net

Y Y Y Y

435 Interest Cash Flow Gross

Y Y Y Y

Fin. Elmt. # Description

Autobal Accts

Earning Asset/

Interest-bearing Liability

Interest Income/ Interest Expense

OBS Recv./ Pay. Equity

Other Assets/ Other Liabs

Non- Interest Income

Non- Interest Expense Taxes Dividends

Page 775: fe115trm

Financial Element Output by Account Type

Oracle Risk Manager Financial Elements 16-19

Oracle Proprietary, Confidential Information - Use Restricted by Contract

437 Interest Cash Flow Transfer Rate

Y Y Y Y

440 Int Accrd - Net Y Y Y Y

445 Int Accrd - Gross

Y Y Y Y

450 Int Accrd - Tran Rt

Y Y Y Y

455 Non-Interest Income

Y

457 Non-Interest Expense

Y

480 Interest Credited Y Y

500 Weighted Average Remaining Term

Y Y

510 Annual Prepayment Rate

Y Y

515 Prepay Balance Y Y

520 Deferred Ending Balance

Y Y

530 Deferred Average Balance

Y Y

540 Deferred Runoff Y Y

550 Periodic Cap Balance

Y Y

560 Periodic Cap Effect - Rate

Y Y

570 Periodic Cap Effect - Amount

Y Y

580 Lifetime Cap Balance

Y Y

590 Lifetime Cap Effect - Rate

Y Y

Fin. Elmt. # Description

Autobal Accts

Earning Asset/

Interest-bearing Liability

Interest Income/ Interest Expense

OBS Recv./ Pay. Equity

Other Assets/ Other Liabs

Non- Interest Income

Non- Interest Expense Taxes Dividends

Page 776: fe115trm

Financial Element Output by Account Type

16-20 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

600 Lifetime Cap Effect - Amount

Y Y

610 Tease Balance Y Y

620 Tease Effect - Rate

Y Y

630 Tease effect - Amount

Y Y

640 NGAM Balance Y Y

650 NGAM Interest Y Y

660 Gap Total Runoff

Y Y Y Y

661 Gap Principal Runoff

Y Y Y Y

662 Gap Repricing Y Y Y

663 Gap Deferred Runoff

Y Y Y

670 Gap Runoff Term

Y Y Y Y

671 Gap Interest Cash Flow Gross

Y Y Y Y Y Y

672 Gap Interest Cash Flow Net

Y Y Y Y Y Y

673 Gap Interest Cash Flow Transfer Rate

Y Y Y Y Y Y

674 Gap Accrued Interest Gross

Y Y Y Y Y Y

675 Gap Accrued Interest Net

Y Y Y Y Y Y

676 Gap Accrued Interest Transfer Rate

Y Y Y Y Y Y

677 Gap Interest Credited

Y Y Y

680 Gap Runoff Gross Rate

Y Y Y

Fin. Elmt. # Description

Autobal Accts

Earning Asset/

Interest-bearing Liability

Interest Income/ Interest Expense

OBS Recv./ Pay. Equity

Other Assets/ Other Liabs

Non- Interest Income

Non- Interest Expense Taxes Dividends

Page 777: fe115trm

Financial Element Calculations

Oracle Risk Manager Financial Elements 16-21

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Financial Element Calculations

690 Gap Runoff Net Rate

Y Y Y

700 Gap Runoff Transfer Rate

Y Y Y

930 Taxes Y

935 Taxes Y

940 Dividends Y

Financial Element Description

FinancialElementNumber Averaging Type Weighting Factor

Account TypeProcessing *

After Reprice Balance 255 At Last DCF

After Reprice Gross Rate 290 At Last After Reprice Balance DCF

After Reprice Net Rate 300 At Last After Reprice Balance DCF

After Reprice Transfer Rate 310 At Last After Reprice Balance DCF

Average Balance 140 Daily average B, DCF

Average Gross Rate 150 Daily average Average Balance DCF

Average Net Rate 160 Daily average Average Balance DCF

Average Transfer Rate 170 Daily average Average Balance DCF

Before Reprice Balance 250 At First DCF

Before Reprice Gross Rate 260 At First Before Reprice Balance DCF

Before Reprice Net Rate 270 At First Before Reprice Balance DCF

Before Reprice Transfer Rate 280 At First Before Reprice Balance DCF

Beginning Balance 60 At first B, DCF

Beginning Gross Rate 70 At first Beginning Balance DCF

Beginning Net Rate 80 At first Beginning Balance DCF

Fin. Elmt. # Description

Autobal Accts

Earning Asset/

Interest-bearing Liability

Interest Income/ Interest Expense

OBS Recv./ Pay. Equity

Other Assets/ Other Liabs

Non- Interest Income

Non- Interest Expense Taxes Dividends

Page 778: fe115trm

Financial Element Calculations

16-22 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Beginning Transfer Rate 90 At first Beginning Balance DCF

Deferred Average Balance 530 Daily average DCF

Deferred Ending Balance 520 At last DCF

Deferred Runoff 540 Accrual DCF

Dividends 940 Sum A

Ending Balance 100 At last B, DCF

Ending Gross Rate 110 At last Ending Balance DCF

Ending Net Rate 120 At last Ending Balance DCF

Ending Transfer Rate 130 At last Ending Balance DCF

Fully Indexed Gross Rate 320 Sum DCF

Fully Indexed Net Rate 330 Sum DCF

Interest Accrual - Gross 445 Accrual DCF, I

Interest Accrual - Net 440 Accrual DCF, I

Interest Accrual - Transfer Rate

450 Accrual DCF, I

Interest Cash Flow Gross 435 Sum DCF, I

Interest Cash Flow Net 430 Sum DCF, I

Interest Cash Flow Transfer Rate

437 Sum DCF, I

Interest Credited 480 Sum DCF

Lifetime Cap Balance 580 Daily Average DCF

Lifetime Cap Effect 600 Accrual DCF

Lifetime Cap Rate 590 Daily Average Lifetime Cap Balance DCF

New Add Balance 340 Sum DCF

New Add Gross Rate 350 Sum New Add Balance DCF

New Add Net Rate 360 Sum New Add Balance DCF

New Add Transfer Rate 370 Sum New Add Balance DCF

Financial Element Description

FinancialElementNumber Averaging Type Weighting Factor

Account TypeProcessing *

Page 779: fe115trm

Financial Element Calculations

Oracle Risk Manager Financial Elements 16-23

Oracle Proprietary, Confidential Information - Use Restricted by Contract

NGAM Balance 640 Daily Average DCF

NGAM Interest 650 Accrual DCF

Non-Interest Income 455 Sum N

Non-Interest Expense 457 Sum N

Periodic Cap Balance 550 Daily Average DCF

Periodic Cap Effect 570 Accrual DCF

Periodic Cap Rate 560 Daily Average Periodic Cap Balance DCF

Prepay Balance 515 Sum DCF

Prepay Rate (Annual) 510 Sum Prepay Balance DCF

Prepay Runoff 180 Sum DCF

Prepay Runoff 182 Sum DCF

Roll Add Balance 380 Sum DCF

Roll Add Gross Rate 390 Sum DCF

Roll Add Net Rate 400 Sum DCF

Roll Add Transfer Rate 410 Sum DCF

Scheduled Principal Runoff 190 Sum DCF

Taxes - Federal 930 Sum A

Taxes - Local 935 Sum A

Tease Balance 610 Daily Average DCF

Tease Effect 630 Accrual DCF

Tease Rate 620 Daily Average Tease Balance DCF

Timing of Prepay Runoff (positive)

181 Sum Prepay Runoff (positive) DCF

Prepay Runoff (negative) 182 Sum DCF

Timing of Prepay Runoff (negative)

183 Sum Prepay Runoff (negative) DCF

Timing of Total Runoff (positive)

211 Sum Total Runoff (positive) DCF

Financial Element Description

FinancialElementNumber Averaging Type Weighting Factor

Account TypeProcessing *

Page 780: fe115trm

Translation Methods for Financial Elements

16-24 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

* This specifies for which account types the financial elements will be processed. The code values are B = Balance only; I = Interest only; DCF = Detail Cash Flow; A = Autobalancing; N = Non Interest

Translation Methods for Financial ElementsThe following table defines the translation methods used for each financial element:

Total Runoff (negative) 212 Sum DCF

Timing of Total Runoff (negative

213 Sum Total Runoff (negative) DCF

Total Runoff 210 Sum DCF

Total Runoff (negative) 212 Sum DCF

Total Runoff Gross Rate 220 Sum Total Runoff DCF

Total Runoff Net Rate 230 Sum DCF

Total Runoff Transfer Rate 240 Sum DCF

Weighted Average Term 500 Sum Ending Balance DCF

Code Financial ElementsTemporal and Current Rate Methods Historical Basis Method

(most) All elements not listed below

Current bucket exchange rate should be applied to all financial elements, except those listed below.

Exchange Rate at origination should be applied to all financial elements, except those listed below.

60 Beginning Balance Previous bucket exchange rate Exchange rate at origination

70, 80, 90 Beginning Rate Previous bucket exchange rate Exchange rate at origination

440 Net Interest Accrued (historical basis)

Exchange rate at origination Exchange rate at origination

441 Net Interest Accrued (current basis)

Current bucket exchange rate N/A

445 Gross Interest Accrued (historical basis)

Exchange rate at origination Exchange rate at origination

Financial Element Description

FinancialElementNumber Averaging Type Weighting Factor

Account TypeProcessing *

Page 781: fe115trm

Translation Methods for Financial Elements

Oracle Risk Manager Financial Elements 16-25

Oracle Proprietary, Confidential Information - Use Restricted by Contract

446 Gross Interest Accrued (current basis)

Current bucket exchange rate N/A

520 Deferred Ending Balance

Exchange rate at origination Exchange rate at origination

530 Deferred Average Balance

Exchange rate at origination Exchange rate at origination

540 Deferred Runoff Exchange rate at origination Exchange rate at origination

465 Total Currency Gain/Loss

No translation (used only for Temporal)

N/A

475 Realized Currency Gain/Loss (Principal)

No translation (used only for Temporal & Historical methods)

No translation

485, 486, 487 Realized Currency Gain/Loss (Interest)

No translation No translation

950 Accumulated Translation Amount

No translation (used only for Current Rate method)

N/A

660 - 700 All Gap financial elements

Calculate values for reporting currencies from translated financial elements

Exchange rate at origination

Code Financial ElementsTemporal and Current Rate Methods Historical Basis Method

Page 782: fe115trm

Translation Methods for Financial Elements

16-26 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Page 783: fe115trm

Insurance Data Model A-1

Oracle Proprietary, Confidential Information - Use Restricted by Contract

AInsurance Data Model

The Property/Casualty and Life Insurance data models for insurance profitability and reporting solutions are new in Release 4.5. This chapter includes the following Entity/Relationship diagrams to show the table structures in these data models.

■ Property Casualty Insurance

■ Property Casualty Insurance

■ Vehicle Policies

■ Floater and Umbrella Policies

■ Life Insurance

■ Term Life Policies

■ Whole/Universal Life Policies

■ Life Insurance Participants

Note: Each diagram shows only the unique key and mandatory columns for each table. Each diagram is followed by full column listings for each table, showing the column name, its data type and size, and its display name as it appears within any of the OFS applications. The columns are shown in the same order as they appear in their respective tables.

Page 784: fe115trm

A-2 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Note: Because the CUST and the OFSA_INSTRUMENT_ACCOUNT_CUST tables are pre-existing tables already documented in the Oracle Financial Data Manager Data Dictionary, their column lists are not included in this appendix chapter. Note also that the LIFE_PARTICIPANTS, LIFE_PARTICIPANTS_POLICIES, TERM_LIFE_POLICIES, and WHOLE_UL_LIFE_POLICIES tables appear in more than one diagram, but their column listings are included only once.

Page 785: fe115trm

Property Casualty Insurance

Insurance Data Model A-3

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Property Casualty Insurance

Home Policies

OFSA_INSTRUMENT_ACCOUNT_CUST* IDENTITY_CODE* ID_NUMBER* INSTRUMENT_TYPE_CD* CUS_KEY

CUST# CUS_NO

HOME_POLICY_SURCHARGES# IDENTITY_CODE# ID_NUMBER# HOME_SURCHARGE_CD* AS_OF_DATE

HOME_POLICY_DISCOUNTS# IDENTITY_CODE# ID_NUMBER# HOME_DISCOUNT_CD* AS_OF_DATE

HOME_POLICY_DEDUCTIBLES# IDENTITY_CODE# ID_NUMBER# DEDUCTIBLE_CD# DEDUCTIBLE_APPLIES_TO_CD* AS_OF_DATE

HOME_POLICIES# IDENTITY_CODE# ID_NUMBER* ORG_UNIT_ID* COMMON_COA_ID* GL_ACCOUNT_ID* COVERAGE_ID* AS_OF_DATE* ISO_CURRENCY_CD* POLICY_NUMBER* EFFECTIVE_DATE* INCEPTION_DATE

HOME_CVRG_ENDRSMNT_SURCH# IDENTITY_CODE# ID_NUMBER# COVERAGE_ID# HOME_SURCHARGE_CD* AS_OF_DATE

HOME_CVRG_ENDRSMNT_DISC# IDENTITY_CODE# ID_NUMBER# COVERAGE_ID# HOME_DISCOUNT_CD* AS_OF_DATE

HOME_CVRG_ENDRSMNT_DED# IDENTITY_CODE# ID_NUMBER# COVERAGE_ID# DEDUCTIBLE_CD# DEDUCTIBLE_APPLIES_TO_CD* AS_OF_DATE

HOME_CVRG_ENDRSMNT_CLAIMS# IDENTITY_CODE# ID_NUMBER# COVERAGE_ID# CLAIM_NUMBER# CLAIM_OCCURRENCE_NUMBER* AS_OF_DATE

HOME_COVERAGES_ENDORSEMENTS# IDENTITY_CODE# ID_NUMBER# COVERAGE_ID* ORG_UNIT_ID* COMMON_COA_ID* GL_ACCOUNT_ID* AS_OF_DATE* ISO_CURRENCY_CD* POLICY_NUMBER* EFFECTIVE_DATE

HOME_CLAIMS# IDENTITY_CODE# ID_NUMBER# CLAIM_NUMBER# CLAIM_OCCURRENCE_NUMBER# CLAIM_CLASS_CD* AS_OF_DATE

HOMES_DETAIL# ID_NUMBER# AS_OF_DATEinsures

may be insured by

relates policy to customersowns

relates customer to policies

may be owned by

applies to

may have

applies to

may have

applies to

may have

applies to

may have

applies to

may have

applies to

may have

is submitted againstmay have

is a component of or an addition to

may have

is submitted against

may have

Page 786: fe115trm

Property Casualty Insurance

A-4 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Table: HOMES_DETAILColumn Name Data Type Display Name

ID_NUMBER NUMBER(25) ID Number

AS_OF_DATE DATE As of Date

ADDITION_TYPE_CD VARCHAR2(5) Addition Type Code

ADDITION_TYPE_AMT NUMBER(14,2) Addition Type Amount

ADDITIONAL_FEATURES_AMT NUMBER(14,2) Additional Features Amount

ADJ_BASE_RESIDENCE_COST NUMBER(14,2) Adj Base Residence Cost

AIR_CONDITIONING_CD VARCHAR2(15) Air Conditioning Code

ALARM_DESCRIPTION_CD VARCHAR2(5) Alarm Description Code

ATTACHED_STRUCTURES_CD VARCHAR2(15) Attached Structures Code

BASE_COST NUMBER(14,2) Base Cost

BASE_COST_YEAR NUMBER(4) Base Cost Year

BASEMENT_CONSTR_TYPE_CD VARCHAR2(15) Basement Constr Type Code

BASEMENT_FINISHED_FLG NUMBER(1) Basement Finished Flag

BASEMENT_FLG NUMBER(1) Basement Flag

BASE_RESIDENCE_COST NUMBER(14,2) Base Residence Cost

BATH_MASTER_TYPE_CD VARCHAR2(15) Bath Master Type Code

BATH_MAST_CONSTR_QLTY_CD VARCHAR2(10) Bath Mast Constr Qlty Code

BATH_OTHER_TYPE_CD VARCHAR2(15) Bath Other Type Code

BATH_OTH_CONSTR_QLTY_CD VARCHAR2(10) Bath Oth Constr Qlty Code

BREEZEWAY_TYPE_CD VARCHAR2(10) Breezeway Type Code

BLDG_ELEVATED_CD VARCHAR2(5) Building Elevated Code

BLDG_ELEVATED_FLG NUMBER(1) Building Elevated Flag

BLDG_FLOOD_PROOFED_FLG NUMBER(1) Building Flood Proofed Flag

BLDG_IMPROVED_FLG NUMBER(1) Building Improved Flag

BODY_OF_WATER_PRXMTY_CD VARCHAR2(5) Body of Water Proximity Code

BUILT_IN_YEAR NUMBER(4) Built In Year

BUILTINS_TOTAL_AMT NUMBER(14,2) Builtins Total Amount

BUSINESS_ON_PREMISES_FLG NUMBER(1) Business on Premises Flag

CHIMNEY_CD VARCHAR2(5) Chimney Code

CONDITION_CD VARCHAR2(5) Condition Code

CONDO_FLOOD_COVERAGE_FLG NUMBER(1) Condo Flood Coverage Flag

CONDO_WALL_COVERAGE_FLG NUMBER(1) Condo Wall Coverage Flag

CNSCTVE_MONTHS_OCC_EACH_YEAR NUMBER(2) Cnsctve Months Occ Each Year

CONSTR_COST NUMBER(14,2) Constr Cost

CONSTR_TYPE_CD VARCHAR2(15) Constr Type Code

DATE_INSPECTED DATE Date Inspected

DAYTIME_OCCUPANCY_FLG NUMBER(1) Daytime Occupancy Flag

DECK_TYPE_CD VARCHAR2(10) Deck Type Code

DETACHED_STRUCT_TYPE_CD VARCHAR2(10) Detached Struct Type Code

Page 787: fe115trm

Property Casualty Insurance

Insurance Data Model A-5

Oracle Proprietary, Confidential Information - Use Restricted by Contract

DISTANCE_TO_BRUSH_FT NUMBER(8) Distance to Brush Feet

DISTANCE_TO_FIRE_STATION NUMBER(8) Distance to Fire Station

DISTANCE_TO_HYDRANT NUMBER(8) Distance to Hydrant

DISTANCE_TO_BODY_OF_WATER NUMBER(8) Distance to Body of Water

DIVING_BOARD_FLG NUMBER(1) Diving Board Flag

DOG_TYPE_CD VARCHAR2(10) Dog Type Code

DOOR_LOCK_CD VARCHAR2(5) Door Lock Code

DWELL_CDRC_FLG NUMBER(1) Dwelling CDRC Flag

DWELL_RENTED_TO_OTHERS_FLG NUMBER(1) Dwelling Rented to Others Flag

DWELL_STYLE_CD VARCHAR2(10) Dwelling Style Code

DWELL_USE_CD VARCHAR2(5) Dwelling Use Code

DWELL_VALUATION_DATE DATE Dwelling Valuation Date

EARTHQUAKE_BLDG_GRND_CD VARCHAR2(5) Earthquake Bldg Ground Code

EARTHQUAKE_RETROFIT_BOLT_FLG NUMBER(1) Earthquake Retrofit Bolt Flag

ELECTRIC_SERV_PANEL_CD VARCHAR2(10) Electric Serv Panel Code

ENCLOSED_PORCH_TYPE_CD VARCHAR2(5) Enclosed Porch Type Code

EQUIPMENT_STORAGE_CD VARCHAR2(5) Equipment Storage Code

EVALUATION_METHOD_CD VARCHAR2(5) Evaluation Method Code

EVALUATION_SYSTEM_CD VARCHAR2(5) Evaluation System Code

EXTERIOR_BUILTINS_CD VARCHAR2(10) Exterior Builtins Code

EXTERIOR_PAINT_TYPE_CD VARCHAR2(10) Exterior Paint Type Code

EXTERIOR_PAINT_YEAR NUMBER(4) Exterior Paint Year

EXT_WALL_MATERIAL_CD VARCHAR2(15) Exterior Wall Material Code

FT_ABOVE_TIDE_OR_FLOOD_PLAIN NUMBER(8) Ft Above Tide or Flood Plain

FINISHED_ATTIC_FLG NUMBER(1) Finished Attic Flag

FINISHED_BASEMENT_FLG NUMBER(1) Finished Basement Flag

FIRE_DISTRICT_CD VARCHAR2(5) Fire District Code

FIRE_EXTINGUISHER_FLG NUMBER(1) Fire Extinguisher Flag

FIRE_PROTECTION_CLASS_CD VARCHAR2(5) Fire Protection Class Code

FIREPLACE_TYPE_CD VARCHAR2(15) Fireplace Type Code

FLOOD_FLOORS_IN_BLDG_CD VARCHAR2(5) Flood Floors In Building Code

FLOOD_INFO_SOURCE_CD VARCHAR2(5) Flood Info Source Code

FLOOD_MEANS_OFF_GRND_CD VARCHAR2(5) Flood Means Off Ground Code

FLOOD_PROOF_FLG NUMBER(1) Flood Proof Flag

FLOOD_ZONE_CD VARCHAR2(5) Flood Zone Code

FLOOR_CONSTRUCTION_CD VARCHAR2(5) Floor Construction Code

FOUNDATION_CD VARCHAR2(10) Foundation Code

GARAGE_TYPE_CD VARCHAR2(10) Garage Type Code

HEATING_IMPROVEMENT_YEAR NUMBER(4) Heating Improvement Year

HEATING_SYSTEM_CD VARCHAR2(15) Heating System Code

HEAT_SOURCE_PRIMARY_CD VARCHAR2(10) Heat Source Primary Code

Page 788: fe115trm

Property Casualty Insurance

A-6 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

HILLSIDE_CD VARCHAR2(5) Hillside Code

HILLSIDE_PERCENT NUMBER(2) Hillside Percent

HYDRANT_DISTANCE NUMBER(8) Hydrant Distance

HYDRANT_LOCATION_CD VARCHAR2(5) Hydrant Location Code

HYDRANT_TYPE_CD VARCHAR2(5) Hydrant Type Code

INSPECTION_DATE DATE Inspection Date

INSPECTION_DISP_CD VARCHAR2(5) Inspection Disposition Code

INTERIOR_BUILTINS_CD VARCHAR2(15) Interior Builtins Code

ISO_EXCEPTION_CD VARCHAR2(5) ISO Exception Code

KITCHEN_CONSTR_QLTY_CD VARCHAR2(10) Kitchen Constr Qlty Code

MARKET_VALUE_AMT NUMBER(14,2) Market Value Amount

MARKET_VALUE_DATE DATE Market Value Date

MH_IN_PARK_FLG NUMBER(1) Motor Home In Park Flag

MH_PARK_EST_DATE DATE Motor Home Park Est Date

MH_TIE_DOWN_CD VARCHAR2(5) Motor Home Tie Down Code

MH_WIDTH NUMBER(8) Motor Home Width

MH_FOUNDATION_CD VARCHAR2(5) Motor Home Foundation Code

MH_SKIRTED_FLG NUMBER(1) Motor Home Skirted Flag

NUM_CARS_IN_GARAGE NUMBER(2) Number of Cars In Garage

NUM_CHIMNEYS NUMBER(2) Number of Chimneys

NUM_BATHROOMS NUMBER(3,1) Number of Bathrooms

NUM_DECKS NUMBER(2) Number of Decks

NUM_FIREPLACES NUMBER(2) Number of Fireplaces

NUM_GARAGES NUMBER(2) Number of Garages

NUM_KITCHENS NUMBER(2) Number of Kitchens

NUM_PORCHES NUMBER(2) Number of Porches

NUM_ROOMS NUMBER(2) Number of Rooms

NUM_STORIES_CD VARCHAR2(10) Number of Stories Code

NUM_SWIMMING_POOLS NUMBER(2) Number of Swimming Pools

INSURANCE_OCCUPANCY_CD VARCHAR2(5) Insurance Occupancy Code

PERM_CONNECT_TO_ELECTRIC_FLG NUMBER(1) Perm Connect to Electric Flag

PERM_CONNECT_TO_PHONE_FLG NUMBER(1) Perm Connect to Phone Flag

PERM_CONNECT_TO_SEWER_FLG NUMBER(1) Perm Connect to Sewer Flag

PERM_CONNECT_TO_WATER_FLG NUMBER(1) Perm Connect to Water Flag

PLUMBING_IMPROVEMENT_CD VARCHAR2(5) Plumbing Improvement Code

PLUMBING_IMPROVEMENT_YEAR NUMBER(4) Plumbing Improvement Year

PLUMBING_SYSTEM_TYPE_CD VARCHAR2(10) Plumbing System Type Code

POOL_SLIDE_FLG NUMBER(1) Pool Slide Flag

PORCH_TYPE_CD VARCHAR2(10) Porch Type Code

PRTCTV_DEVICE_BURGLAR_CD VARCHAR2(5) Protective Device Burglar Code

PRTCTV_DEVICE_FIRE_CD VARCHAR2(5) Protective Device Fire Code

Page 789: fe115trm

Property Casualty Insurance

Insurance Data Model A-7

Oracle Proprietary, Confidential Information - Use Restricted by Contract

PRTCTV_DEVICE_SMOKE_CD VARCHAR2(5) Protective Device Smoke Code

PRTCTV_DEVICE_SPRNKLR_CD VARCHAR2(5) Protective Device Sprnklr Code

PURCHASE_DATE DATE Purchase Date

RECORD_COUNT NUMBER(6) Record Count

RENOVATION_DATE DATE Renovation Date

REPL_CST_CONSTR_CLASS_CD VARCHAR2(5) Repl Cost Constr Class Code

REPL_CST_EXT_WALL_CAT_CD VARCHAR2(10) Repl Cost Ext Wall Cat Code

REPL_COST_ITEM_TYPE_CD VARCHAR2(5) Repl Cost Item Type Code

REPL_COST_QUALIFIER_CD VARCHAR2(5) Repl Cost Qualifier Code

ROOFING_IMPROVEMENT_CD VARCHAR2(5) Roofing Improvement Code

ROOFING_IMPROVEMENT_YEAR NUMBER(4) Roofing Improvement Year

ROOF_MATERIAL_CD VARCHAR2(10) Roof Material Code

ROOF_TYPE_CD VARCHAR2(5) Roof Type Code

RM_ADDITION_ABOVE_GARAGE_FLG NUMBER(1) Rm Addition Above Garage Flag

RURAL_FIRE_DISTRICT_CD VARCHAR2(5) Rural Fire District Code

SLAB_FLG NUMBER(1) Slab Flag

SLAB_SQ_FOOTAGE NUMBER(8) Slab Sq Footage

SPECIALTY_ROOM_CD VARCHAR2(10) Specialty Room Code

SQ_FOOTAGE_ADDITION NUMBER(8) Sq Footage Addition

SQ_FOOTAGE_ATTIC NUMBER(8) Sq Footage Attic

SQ_FOOTAGE_ATTIC_FINISHED NUMBER(8) Sq Footage Attic Finished

SQ_FOOTAGE_BALCONY_DECK NUMBER(8) Sq Footage Balcony Deck

SQ_FOOTAGE_BASEMENT NUMBER(8) Sq Footage Basement

SQ_FOOTAGE_BASEMENT_FINISHED NUMBER(8) Sq Footage Basement Finished

SQ_FOOTAGE_BREEZEWAY NUMBER(8) Sq Footage Breezeway

SQ_FOOTAGE_COVERED_PATIO NUMBER(8) Sq Footage Covered Patio

SQ_FOOTAGE_DECK NUMBER(8) Sq Footage Deck

SQ_FOOTAGE_FIRST_FLOOR NUMBER(8) Sq Footage First Floor

SQ_FOOTAGE_GARAGE NUMBER(8) Sq Footage Garage

SQ_FOOTAGE_PORCH NUMBER(8) Sq Footage Porch

SQ_FOOTAGE_SECOND_FLOOR NUMBER(8) Sq Footage Second Floor

SQ_FOOTAGE_THIRD_FLOOR NUMBER(8) Sq Footage Third Floor

SQ_FOOTAGE_TOTAL_LIVING NUMBER(8) Sq Footage Total Living

STORM_SHUTTERS_CD VARCHAR2(5) Storm Shutters Code

SWIMMING_POOL_CD VARCHAR2(5) Swimming Pool Code

TOWNHOUSE_ROWHOUSE_CD VARCHAR2(5) Townhouse Rowhouse Code

USE_CD VARCHAR2(5) Use Code

WIND_CLASS_CD VARCHAR2(5) Wind Class Code

WIND_PLAN_FLG NUMBER(1) Wind Plan Flag

WIRING_IMPROVEMENT_CD VARCHAR2(5) Wiring Improvement Code

WIRING_IMPROVEMENT_YEAR NUMBER(4) Wiring Improvement Year

Page 790: fe115trm

Property Casualty Insurance

A-8 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

WIRING_TYPE_CD VARCHAR2(10) Wiring Type Code

YEAR_BUILT NUMBER(4) Year Built

YEAR_OF_OCCUPANCY NUMBER(4) Year of Occupancy

Table: HOME_CLAIMSColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

CLAIM_NUMBER VARCHAR2(25) Claim Number

CLAIM_OCCURRENCE_NUMBER NUMBER(10) Claim Occurrence Number

CLAIM_CLASS_CD VARCHAR2(5) Claim Class Code

ORG_UNIT_ID NUMBER(14) Organizational Unit ID

COMMON_COA_ID NUMBER(14) Common Chart of Accounts ID

AS_OF_DATE DATE As of Date

ISO_CURRENCY_CD VARCHAR2(3) ISO Currency Code

ADDITIONAL_CLAIM_FLG NUMBER(1) Additional Claim Flag

ADJUSTER_ASSIGNED_CD VARCHAR2(5) Adjuster Assigned Code

ALAE_AMT_PAID NUMBER(14,2) ALAE Amount Paid

ALAE_CASE_RESERVE_BEG NUMBER(14,2) ALAE Case Reserve Beg

ALAE_CASE_RESERVE_BEG_BULK NUMBER(14,2) ALAE Case Reserve Beg Bulk

ALAE_CASE_RESERVE_END NUMBER(14,2) ALAE Case Reserve End

ALAE_CASE_RESERVE_END_BULK NUMBER(14,2) ALAE Case Reserve End Bulk

ALAE_CASE_INCURRED_LOSS NUMBER(14,2) ALAE Case Incurred Loss

ALAE_PAID_DATE DATE ALAE Paid Date

ATTORNEY_OR_AUTH_REP_CD VARCHAR2(5) Attorney or Auth Rep Code

CATASTROPHE_CD VARCHAR2(5) Catastrophe Code

CATASTROPHE_CD_SOURCE_CD VARCHAR2(5) Catastrophe Code Source Code

CATASTROPHE_FLG NUMBER(1) Catastrophe Flag

CATASTROPHE_LOSS_FLG NUMBER(1) Catastrophe Loss Flag

CAUSE_OF_LOSS_CD VARCHAR2(10) Cause of Loss Code

CLAIM_ACTIVITY_CD VARCHAR2(5) Claim Activity Code

CLAIM_PAY_ACTIVITY_CD VARCHAR2(10) Claim Pay Activity Code

CLAIM_PAY_TYPE_CD VARCHAR2(10) Claim Pay Type Code

CLAIMANT_RELATIONSHIP_CD VARCHAR2(5) Claimant Relationship Code

COUNT_PAID NUMBER(8) Count Paid

COUNT_REPORTED NUMBER(8) Count Reported

DAMAGE_DESCRIPTION_CD VARCHAR2(15) Damage Description Code

DATE_ADJUSTER_ASSIGNED DATE Date Adjuster Assigned

DATE_CLAIM_NOTICE_RECEIVED DATE Date Claim Notice Received

LOSS_AMT_PAID NUMBER(14,2) Loss Amount Paid

LOSS_CASE_RESERVE_BEG NUMBER(14,2) Loss Case Reserve Beg

Page 791: fe115trm

Property Casualty Insurance

Insurance Data Model A-9

Oracle Proprietary, Confidential Information - Use Restricted by Contract

LOSS_CASE_RESERVE_BEG_BULK NUMBER(14,2) Loss Case Reserve Beg Bulk

LOSS_CASE_RESERVE_END NUMBER(14,2) Loss Case Reserve End

LOSS_CASE_RESERVE_END_BULK NUMBER(14,2) Loss Case Reserve End Bulk

LOSS_CASE_INCURRED NUMBER(14,2) Loss Case Incurred

LOSS_DATE DATE Loss Date

LOSS_PAID_DATE DATE Loss Paid Date

NUM_CLAIMANTS NUMBER(8) Number of Claimants

RECORD_COUNT NUMBER(6) Record Count

REINSURANCE_RECOVERABLES NUMBER(14,2) Reinsurance Recoverables

SALVAGE_ANTICIPATED NUMBER(14,2) Salvage Anticipated

SALVAGE_RECOV_RECEIVED NUMBER(14,2) Salvage Recoverables Received

CLAIM_SETTLEMENT_TYPE_CD VARCHAR2(5) Claim Settlement Type Code

SUBROGATION_ANTICIPATED NUMBER(14,2) Subrogation Anticipated

SUBROGATION_RECEIVED NUMBER(14,2) Subrogation Received

TOTAL_LOSS_FLG NUMBER(1) Total Loss Flag

Table: HOME_COVERAGES_ENDORSEMENTSColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

COVERAGE_ID NUMBER(14) Coverage ID

ORG_UNIT_ID NUMBER(14) Organizational Unit ID

COMMON_COA_ID NUMBER(14) Common Chart of Accounts ID

GL_ACCOUNT_ID NUMBER(14) General Ledger Account ID

AS_OF_DATE DATE As of Date

ISO_CURRENCY_CD VARCHAR2(3) ISO Currency Code

POLICY_NUMBER VARCHAR2(25) Policy Number

EFFECTIVE_DATE DATE Effective Date

IDENTITY_CODE_CHG NUMBER(10) Identity Code Change

ALAE_AMT_PAID NUMBER(14,2) ALAE Amount Paid

ALAE_CASE_RESERVE_BEG NUMBER(14,2) ALAE Case Reserve Beg

ALAE_CASE_RESERVE_END NUMBER(14,2) ALAE Case Reserve End

ALAE_CASE_RESERVE_BEG_BULK NUMBER(14,2) ALAE Case Reserve Beg Bulk

ALAE_CASE_RESERVE_END_BULK NUMBER(14,2) ALAE Case Reserve End Bulk

ALAE_IBNR_BEG NUMBER(14,2) ALAE IBNR Beg

ALAE_IBNR_END NUMBER(14,2) ALAE IBNR End

ALAE_INCURRED_LOSS NUMBER(14,2) ALAE Incurred Loss

AMT_OF_INSURANCE NUMBER(14,2) Amount of Insurance

CANCEL_EFFECTIVE_DATE DATE Cancel Effective Date

CANCEL_TYPE_CD VARCHAR2(5) Cancel Type Code

COMMISSIONS NUMBER(14,2) Commissions

Page 792: fe115trm

Property Casualty Insurance

A-10 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

DIVIDENDS NUMBER(14,2) Dividends

EC_PREMIUM_GROUP_CD VARCHAR2(5) EC Premium Group Code

EXPECTED_LOSS_AMT NUMBER(14,2) Expected Loss Amount

EXPECTED_LOSS_RATIO NUMBER(8,4) Expected Loss Ratio

EXPIRATION_DATE DATE Expiration Date

EXPOSURES_EARNED NUMBER(8,4) Exposures Earned

EXPOSURES_WRITTEN NUMBER(8,4) Exposures Written

GENERAL_EXPENSE NUMBER(14,2) General Expense

LIMIT_CD VARCHAR2(5) Limit Code

LOB_CD VARCHAR2(10) LOB Code

LOSS_AMT_PAID NUMBER(14,2) Loss Amount Paid

LOSS_CASE_RESERVE_END NUMBER(14,2) Loss Case Reserve End

LOSS_CASE_RESERVE_BEG NUMBER(14,2) Loss Case Reserve Beg

LOSS_CASE_RESERVE_END_BULK NUMBER(14,2) Loss Case Reserve End Bulk

LOSS_CASE_RESERVE_BEG_BULK NUMBER(14,2) Loss Case Reserve Beg Bulk

LOSS_IBNR_BEG NUMBER(14,2) Loss IBNR Beg

LOSS_IBNR_END NUMBER(14,2) Loss IBNR End

LOSS_INCURRED NUMBER(14,2) Loss Incurred

OTHER_ACQUISITION_COSTS NUMBER(14,2) Other Acquisition Costs

PREM_EARNED_CEDED NUMBER(14,2) Premium Earned Ceded

PREM_EARNED_DIRECT NUMBER(14,2) Premium Earned Direct

PREM_EARNED_NET NUMBER(14,2) Premium Earned Net

PREM_FULL_TERM NUMBER(14,2) Premium Full Term

PREM_IN_FORCE NUMBER(14,2) Premium In Force

PREM_UNEARNED_CEDED_CUR_MONTH NUMBER(14,2) Premium Unearned Ceded Cur Month

PREM_UNEARNED_CEDED_PRI_MONTH NUMBER(14,2) Premium Unearned Ceded Pri Month

PREM_UNEARNED_CEDED_PRI_YEAR NUMBER(14,2) Premium Unearned Ceded Pri Year

PREM_UNEARNED_DIRECT_CUR_MONTH NUMBER(14,2) Premium Unearned Direct Cur Month

PREM_UNEARNED_DIRECT_PRI_MONTH NUMBER(14,2) Premium Unearned Direct Pri Month

PREM_UNEARNED_DIRECT_PRI_YEAR NUMBER(14,2) Premium Unearned Direct Pri Year

PREM_UNEARNED_NET_CUR_MONTH NUMBER(14,2) Premium Unearned Net Cur Month

PREM_UNEARNED_NET_PRI_MONTH NUMBER(14,2) Premium Unearned Net Pri Month

PREM_UNEARNED_NET_PRI_YEAR NUMBER(14,2) Premium Unearned Net Pri Year

PREM_WRITTEN_CEDED NUMBER(14,2) Premium Written Ceded

PREM_WRITTEN_CHANGE_AMT NUMBER(14,2) Premium Written Change Amount

PREM_WRITTEN_DIRECT NUMBER(14,2) Premium Written Direct

PREM_WRITTEN_NET NUMBER(14,2) Premium Written Net

PREMIUM_GROUP_CD VARCHAR2(5) Premium Group Code

PROPERTY_CLASS_CD VARCHAR2(10) Property Class Code

POLICIES_IN_FORCE NUMBER(1) Policies In Force

RECORD_COUNT NUMBER(6) Record Count

Page 793: fe115trm

Property Casualty Insurance

Insurance Data Model A-11

Oracle Proprietary, Confidential Information - Use Restricted by Contract

REINSTATEMENT_DATE DATE Reinstatement Date

REINSURANCE_PREMIUMS NUMBER(14,2) Reinsurance Premiums

REINSURANCE_RECOVERABLES NUMBER(14,2) Reinsurance Recoverables

REPLACEMENT_COST NUMBER(14,2) Replacement Cost

SALVAGE_ANTICIPATED NUMBER(14,2) Salvage Anticipated

SALVAGE_RECOV_RECEIVED NUMBER(14,2) Salvage Recoverables Received

SUBROGATION_ANTICIPATED NUMBER(14,2) Subrogation Anticipated

SUBROGATION_RECEIVED NUMBER(14,2) Subrogation Received

TAXES_LICENSE_FEES NUMBER(14,2) Taxes License Fees

TERMINATION_DATE DATE Termination Date

TERMINATION_CD VARCHAR2(5) Termination Code

TERRITORY_CD VARCHAR2(5) Territory Code

UNALLOC_LOSS_ADJ_EXP NUMBER(14,2) Unallocated Loss Adj Expense

VALUE NUMBER(14,2) Value

VALUATION_TYPE_CD VARCHAR2(5) Valuation Type Code

VEHICLE_ID_NUM VARCHAR2(25) Vehicle ID Number

Table: HOME_CVRG_ENDRSMNT_CLAIMSColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

COVERAGE_ID NUMBER(14) Coverage ID

CLAIM_NUMBER VARCHAR2(25) Claim Number

CLAIM_OCCURRENCE_NUMBER NUMBER(10) Claim Occurrence Number

ORG_UNIT_ID NUMBER(14) Organizational Unit ID

COMMON_COA_ID NUMBER(14) Common Chart of Accounts ID

AS_OF_DATE DATE As of Date

ISO_CURRENCY_CD VARCHAR2(3) ISO Currency Code

ADDITIONAL_CLAIM_FLG NUMBER(1) Additional Claim Flag

ADJUSTER_ASSIGNED_CD VARCHAR2(5) Adjuster Assigned Code

ALAE_AMT_PAID NUMBER(14,2) ALAE Amount Paid

ALAE_CASE_RESERVE_BEG NUMBER(14,2) ALAE Case Reserve Beg

ALAE_CASE_RESERVE_BEG_BULK NUMBER(14,2) ALAE Case Reserve Beg Bulk

ALAE_CASE_RESERVE_END NUMBER(14,2) ALAE Case Reserve End

ALAE_CASE_RESERVE_END_BULK NUMBER(14,2) ALAE Case Reserve End Bulk

ALAE_CASE_INCURRED_LOSS NUMBER(14,2) ALAE Case Incurred Loss

ALAE_PAID_DATE DATE ALAE Paid Date

ATTORNEY_OR_AUTH_REP_CD VARCHAR2(5) Attorney or Auth Rep Code

CATASTROPHE_CD VARCHAR2(5) Catastrophe Code

CATASTROPHE_CD_SOURCE_CD VARCHAR2(5) Catastrophe Code Source Code

CATASTROPHE_FLG NUMBER(1) Catastrophe Flag

Page 794: fe115trm

Property Casualty Insurance

A-12 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

CATASTROPHE_LOSS_FLG NUMBER(1) Catastrophe Loss Flag

CAUSE_OF_LOSS_CD VARCHAR2(10) Cause of Loss Code

CLAIM_ACTIVITY_CD VARCHAR2(5) Claim Activity Code

CLAIM_PAY_ACTIVITY_CD VARCHAR2(10) Claim Pay Activity Code

CLAIM_PAY_TYPE_CD VARCHAR2(10) Claim Pay Type Code

CLAIMANT_RELATIONSHIP_CD VARCHAR2(5) Claimant Relationship Code

COUNT_PAID NUMBER(8) Count Paid

COUNT_REPORTED NUMBER(8) Count Reported

DAMAGE_DESCRIPTION_CD VARCHAR2(15) Damage Description Code

DATE_ADJUSTER_ASSIGNED DATE Date Adjuster Assigned

DATE_CLAIM_NOTICE_RECEIVED DATE Date Claim Notice Received

LOSS_AMT_PAID NUMBER(14,2) Loss Amount Paid

LOSS_CASE_RESERVE_BEG NUMBER(14,2) Loss Case Reserve Beg

LOSS_CASE_RESERVE_BEG_BULK NUMBER(14,2) Loss Case Reserve Beg Bulk

LOSS_CASE_RESERVE_END NUMBER(14,2) Loss Case Reserve End

LOSS_CASE_RESERVE_END_BULK NUMBER(14,2) Loss Case Reserve End Bulk

LOSS_CASE_INCURRED NUMBER(14,2) Loss Case Incurred

LOSS_DATE DATE Loss Date

LOSS_PAID_DATE DATE Loss Paid Date

NUM_CLAIMANTS NUMBER(8) Number of Claimants

RECORD_COUNT NUMBER(6) Record Count

REINSURANCE_RECOVERABLES NUMBER(14,2) Reinsurance Recoverables

SALVAGE_ANTICIPATED NUMBER(14,2) Salvage Anticipated

SALVAGE_RECOV_RECEIVED NUMBER(14,2) Salvage Recoverables Received

CLAIM_SETTLEMENT_TYPE_CD VARCHAR2(5) Claim Settlement Type Code

SUBROGATION_ANTICIPATED NUMBER(14,2) Subrogation Anticipated

SUBROGATION_RECEIVED NUMBER(14,2) Subrogation Received

TOTAL_LOSS_FLG NUMBER(1) Total Loss Flag

Table: HOME_CVRG_ENDRSMNT_DEDColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

COVERAGE_ID NUMBER(14) Coverage ID

DEDUCTIBLE_CD NUMBER(5) Deductible Code

DEDUCTIBLE_APPLIES_TO_CD NUMBER(5) Deductible Applies to Code

AS_OF_DATE DATE As of Date

DEDUCTIBLE_BASIS_CD VARCHAR2(5) Deductible Basis Code

DEDUCTIBLE_TYPE_CD VARCHAR2(10) Deductible Type Code

Page 795: fe115trm

Property Casualty Insurance

Insurance Data Model A-13

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Table: HOME_CVRG_ENDRSMNT_DISCColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

COVERAGE_ID NUMBER(14) Coverage ID

HOME_DISCOUNT_CD NUMBER(5) Home Discount Code

AS_OF_DATE DATE As of Date

Table: HOME_CVRG_ENDRSMNT_SURCHColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

COVERAGE_ID NUMBER(14) Coverage ID

HOME_SURCHARGE_CD NUMBER(5) Home Surcharge Code

AS_OF_DATE DATE As of Date

Table: HOME_POLICIESColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

ORG_UNIT_ID NUMBER(14) Organizational Unit ID

COMMON_COA_ID NUMBER(14) Common Chart of Accounts ID

GL_ACCOUNT_ID NUMBER(14) General Ledger Account ID

COVERAGE_ID NUMBER(14) Coverage ID

AS_OF_DATE DATE As of Date

ISO_CURRENCY_CD VARCHAR2(3) ISO Currency Code

POLICY_NUMBER VARCHAR2(25) Policy Number

EFFECTIVE_DATE DATE Effective Date

INCEPTION_DATE DATE Inception Date

IDENTITY_CODE_CHG NUMBER(10) Identity Code Change

INSTRUMENT_TYPE_CD NUMBER(5) Instrument Type Code

ACTIVITY_CD VARCHAR2(5) Activity Code

ADDITIONAL_RESIDENCE_FLG NUMBER(1) Additional Residence Flag

AGENT_CD VARCHAR2(5) Agent Code

ALAE_AMT_PAID NUMBER(14,2) ALAE Amount Paid

ALAE_CASE_RESERVE_BEG NUMBER(14,2) ALAE Case Reserve Beg

ALAE_CASE_RESERVE_END NUMBER(14,2) ALAE Case Reserve End

ALAE_CASE_RESERVE_BEG_BULK NUMBER(14,2) ALAE Case Reserve Beg Bulk

ALAE_CASE_RESERVE_END_BULK NUMBER(14,2) ALAE Case Reserve End Bulk

ALAE_IBNR_BEG NUMBER(14,2) ALAE IBNR Beg

ALAE_IBNR_END NUMBER(14,2) ALAE IBNR End

Page 796: fe115trm

Property Casualty Insurance

A-14 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

ALAE_INCURRED_LOSS NUMBER(14,2) ALAE Incurred Loss

BILL_FREQ NUMBER(5) Bill Frequency

BILLED_DATE DATE Billed Date

BILLING_ACCT_NUMBER NUMBER(25) Billing Account Number

BILLING_METHOD_CD VARCHAR2(5) Billing Method Code

BLDG_ACTUAL_CASH_VALUE NUMBER(14,2) Building Actual Cash Value

BLDG_AMT_OF_INS NUMBER(14,2) Building Amount of Insurance

BLDG_REPLACEMENT_COST NUMBER(14,2) Building Replacement Cost

CANCEL_EFFECTIVE_DATE DATE Cancel Effective Date

CANCEL_TYPE_CD VARCHAR2(5) Cancel Type Code

CARRIER_CD VARCHAR2(5) Carrier Code

COMMISSIONS NUMBER(14,2) Commissions

CONTENTS_AMT_OF_INS NUMBER(14,2) Contents Amount of Insurance

CONTENTS_VALUE NUMBER(14,2) Contents Value

COST_CENTER_CD VARCHAR2(5) Cost Center Code

DECL_CANCELED_NONRENEWED_FLG NUMBER(1) Decl Cancelled Nonrenewed Flag

DISTRIBUTION_CD VARCHAR2(5) Distribution Code

DIVIDENDS NUMBER(14,2) Dividends

EXPECTED_LOSS_AMT NUMBER(14,2) Expected Loss Amount

EXPECTED_LOSS_RATIO NUMBER(8,4) Expected Loss Ratio

EXPIRATION_DATE DATE Expiration Date

EXPOSURES_EARNED NUMBER(8,4) Exposures Earned

EXPOSURES_WRITTEN NUMBER(8,4) Exposures Written

GENERAL_EXPENSE NUMBER(14,2) General Expense

INSTALLMENT_FEE NUMBER(14,2) Installment Fee

INSTALLMENT_NUMBER NUMBER(8) Installment Number

LOB_CD VARCHAR2(10) LOB Code

LOSS_AMT_PAID NUMBER(14,2) Loss Amount Paid

LOSS_ASSESSMENT_AMT_OF_INS NUMBER(14,2) Loss Assessment Amount of Insurance

LOSS_CASE_RESERVE_END NUMBER(14,2) Loss Case Reserve End

LOSS_CASE_RESERVE_BEG NUMBER(14,2) Loss Case Reserve Beg

LOSS_CASE_RESERVE_END_BULK NUMBER(14,2) Loss Case Reserve End Bulk

LOSS_CASE_RESERVE_BEG_BULK NUMBER(14,2) Loss Case Reserve Beg Bulk

LOSS_IBNR_BEG NUMBER(14,2) Loss IBNR Beg

LOSS_IBNR_END NUMBER(14,2) Loss IBNR End

LOSS_INCURRED NUMBER(14,2) Loss Incurred

LOSS_OF_USE_AMT_OF_INS NUMBER(14,2) Loss of Use Amount of Insurance

MEDICAL_LIMIT_CD VARCHAR2(5) Medical Limit Code

METHOD_OF_PAYMENT_CD VARCHAR2(10) Method of Payment Code

NAIC_CD VARCHAR2(5) NAIC Code

OCCUPANCY_TYPE_CD VARCHAR2(10) Occupancy Type Code

Page 797: fe115trm

Property Casualty Insurance

Insurance Data Model A-15

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OPT_OUT_FLG NUMBER(1) Opt Out Flag

OTHER_ACQUISITION_COSTS NUMBER(14,2) Other Acquisition Costs

OTHER_STRUCT_ACTUAL_CASH_VALUE NUMBER(14,2) Other Struct Actual Cash Value

OTHER_STRUCT_AMT_OF_INS NUMBER(14,2) Other Struct Amount of Insurance

OTHER_STRUCT_REPLACEMENT_COST NUMBER(14,2) Other Struct Replacement Cost

PACKAGE_POLICY_FLG NUMBER(1) Package Policy Flag

PAYMENT_AMT NUMBER(14,2) Payment Amount

PAYMENT_DATE DATE Payment Date

PAYMENT_DUE_DATE DATE Payment Due Date

PAYMENT_PLAN_CD VARCHAR2(5) Payment Plan Code

PERSONAL_LIAB_LIMIT_CD VARCHAR2(5) Personal Liab Limit Code

PREM_EARNED_CEDED NUMBER(14,2) Premium Earned Ceded

PREM_EARNED_DIRECT NUMBER(14,2) Premium Earned Direct

PREM_EARNED_NET NUMBER(14,2) Premium Earned Net

PREM_FULL_TERM NUMBER(14,2) Premium Full Term

PREM_IN_FORCE NUMBER(14,2) Premium In Force

PREM_UNEARNED_CEDED_CUR_MONTH NUMBER(14,2) Premium Unearned Ceded Cur Month

PREM_UNEARNED_CEDED_PRI_MONTH NUMBER(14,2) Premium Unearned Ceded Pri Month

PREM_UNEARNED_CEDED_PRI_YEAR NUMBER(14,2) Premium Unearned Ceded Pri Year

PREM_UNEARNED_DIRECT_CUR_MONTH NUMBER(14,2) Premium Unearned Direct Cur Month

PREM_UNEARNED_DIRECT_PRI_MONTH NUMBER(14,2) Premium Unearned Direct Pri Month

PREM_UNEARNED_DIRECT_PRI_YEAR NUMBER(14,2) Premium Unearned Direct Pri Year

PREM_UNEARNED_NET_CUR_MONTH NUMBER(14,2) Premium Unearned Net Cur Month

PREM_UNEARNED_NET_PRI_MONTH NUMBER(14,2) Premium Unearned Net Pri Month

PREM_UNEARNED_NET_PRI_YEAR NUMBER(14,2) Premium Unearned Net Pri Year

PREM_WRITTEN_CEDED NUMBER(14,2) Premium Written Ceded

PREM_WRITTEN_CHANGE_AMT NUMBER(14,2) Premium Written Change Amount

PREM_WRITTEN_DIRECT NUMBER(14,2) Premium Written Direct

PREM_WRITTEN_NET NUMBER(14,2) Premium Written Net

PREMIUM_GROUP_CD VARCHAR2(5) Premium Group Code

PRIMARY_RESIDENCE_FLG NUMBER(1) Primary Residence Flag

POLICIES_IN_FORCE NUMBER(1) Policies In Force

POLICY_STATUS_PC_CD VARCHAR2(5) Policy Status PC Code

POLICY_TERM NUMBER(5) Policy Term

POLICY_TERM_MULT CHAR(1) Policy Term Multiplier

POSTAL_CODE VARCHAR2(11) Postal Code

RECORD_COUNT NUMBER(6) Record Count

REGIONAL_OFFICE_CD VARCHAR2(5) Regional Office Code

REINSTATEMENT_DATE DATE Reinstatement Date

REINSURANCE_PREMIUMS NUMBER(14,2) Reinsurance Premiums

REINSURANCE_RECOVERABLES NUMBER(14,2) Reinsurance Recoverables

Page 798: fe115trm

Property Casualty Insurance

A-16 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

RENEWAL_CHANNEL_CD VARCHAR2(5) Renewal Channel Code

SALVAGE_ANTICIPATED NUMBER(14,2) Salvage Anticipated

SALVAGE_RECOV_RECEIVED NUMBER(14,2) Salvage Recoverables Received

SUBROGATION_ANTICIPATED NUMBER(14,2) Subrogation Anticipated

SUBROGATION_RECEIVED NUMBER(14,2) Subrogation Received

STATE_CD VARCHAR2(5) State Code

TAXES_LICENSE_FEES NUMBER(14,2) Taxes License Fees

TENURE NUMBER(3) Tenure

TERMINATION_DATE DATE Termination Date

TERMINATION_CD VARCHAR2(5) Termination Code

TERRITORY_CD VARCHAR2(5) Territory Code

UNALLOC_LOSS_ADJ_EXP NUMBER(14,2) Unallocated Loss Adj Expense

VALUATION_TYPE_CD VARCHAR2(5) Valuation Type Code

Table: HOME_POLICY_DEDUCTIBLESColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

DEDUCTIBLE_CD NUMBER(5) Deductible Code

DEDUCTIBLE_APPLIES_TO_CD NUMBER(5) Deductible Applies to Code

AS_OF_DATE DATE As of Date

DEDUCTIBLE_BASIS_CD VARCHAR2(5) Deductible Basis Code

DEDUCTIBLE_TYPE_CD VARCHAR2(10) Deductible Type Code

Table: HOME_POLICY_DISCOUNTSColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

HOME_DISCOUNT_CD NUMBER(5) Home Discount Code

AS_OF_DATE DATE As of Date

Table: HOME_POLICY_SURCHARGESColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

HOME_SURCHARGE_CD NUMBER(5) Home Surcharge Code

AS_OF_DATE DATE As of Date

Page 799: fe115trm

Property Casualty Insurance

Insurance Data Model A-17

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Vehicle Policies

OFSA_INSTRUMENT_ACCOUNT_CUST* IDENTITY_CODE* ID_NUMBER* INSTRUMENT_TYPE_CD* CUS_KEY

CUST# CUS_NO

VEH_OPERATOR_CITATION_HIST# OPERATOR_NUMBER# CITATION_NUMBER* CITATION_DATE

VEH_OPERATOR_ACCIDENT_HIST# OPERATOR_NUMBER# ACCIDENT_NUMBER* ACCIDENT_VIOLATION_DATE

VEHICLE_OWNERS# CUS_KEY# VEHICLE_ID_NUM* AS_OF_DATE

VEHICLE_OPERATORS# OPERATOR_NUMBER# AS_OF_DATE

VEHICLES_DETAIL# VEHICLE_ID_NUM# AS_OF_DATE

PL_VEHICLE_SURCHARGES# IDENTITY_CODE# ID_NUMBER# COVERAGE_ID# VEHICLE_SURCHARGE_CD* AS_OF_DATE

PL_VEHICLE_OPERATORS_POLICIES# IDENTITY_CODE# ID_NUMBER# OPERATOR_NUMBER* AS_OF_DATE

PL_VEHICLE_DISCOUNTS# IDENTITY_CODE# ID_NUMBER# COVERAGE_ID# VEHICLE_DISCOUNT_CD* AS_OF_DATE

PL_VEHICLE_COVERAGES# IDENTITY_CODE# ID_NUMBER# COVERAGE_ID* ORG_UNIT_ID* COMMON_COA_ID* GL_ACCOUNT_ID* AS_OF_DATE* ISO_CURRENCY_CD* VEHICLE_ID_NUM* PRIMARY_OPERATOR_NUMBER* EFFECTIVE_DATE

PL_VEHICLE_CLAIMS# IDENTITY_CODE# ID_NUMBER# COVERAGE_ID# CLAIM_NUMBER# CLAIM_OCCURRENCE_NUMBER* AS_OF_DATE

PL_VEHICLE_ POLICIES# IDENTITY_CODE# ID_NUMBER* ORG_UNIT_ID* COMMON_COA_ID* GL_ACCOUNT_ID* COVERAGE_ID* AS_OF_DATE* ISO_CURRENCY_CD* VEHICLE_ID_NUM* PRIMARY_OPERATOR_NUMBER* POLICY_NUMBER* EFFECTIVE_DATE* INCEPTION_DATE

relates customer to policiesmay be owned by

relates vehicle to customers

owns

relates customer to vehicles

may be owned by

on driving record of

may have

on driving record of

may have

increases premium for

premium may be increased by

relates policy to operators

is insured by

relates operator to policies

insures

decreases premium for

premium may be decreased by

is a component of

may consist of

is submitted against

may have

insures

may be insured by

relates policy to customersowns

Page 800: fe115trm

Property Casualty Insurance

A-18 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Table: PL_VEHICLE_CLAIMSColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

COVERAGE_ID NUMBER(14) Coverage ID

CLAIM_NUMBER VARCHAR2(25) Claim Number

CLAIM_OCCURRENCE_NUMBER NUMBER(10) Claim Occurrence Number

ORG_UNIT_ID NUMBER(14) Organizational Unit ID

COMMON_COA_ID NUMBER(14) Common Chart of Accounts ID

AS_OF_DATE DATE As of Date

ISO_CURRENCY_CD VARCHAR2(3) ISO Currency Code

VEHICLE_ID_NUM VARCHAR2(25) Vehicle ID Number

PRIMARY_OPERATOR_NUMBER NUMBER(10) Primary Operator Number

EFFECTIVE_DATE DATE Effective Date

ADDITIONAL_CLAIM_FLG NUMBER(1) Additional Claim Flag

ADJUSTER_ASSIGNED_CD VARCHAR2(5) Adjuster Assigned Code

ALAE_AMT_PAID NUMBER(14,2) ALAE Amount Paid

ALAE_CASE_RESERVE_BEG NUMBER(14,2) ALAE Case Reserve Beg

ALAE_CASE_RESERVE_BEG_BULK NUMBER(14,2) ALAE Case Reserve Beg Bulk

ALAE_CASE_RESERVE_END NUMBER(14,2) ALAE Case Reserve End

ALAE_CASE_RESERVE_END_BULK NUMBER(14,2) ALAE Case Reserve End Bulk

ALAE_CASE_INCURRED_LOSS NUMBER(14,2) ALAE Case Incurred Loss

ALAE_PAID_DATE DATE ALAE Paid Date

AT_FAULT_FLG NUMBER(1) At Fault Flag

ATTORNEY_OR_AUTH_REP_CD VARCHAR2(5) Attorney or Auth Rep Code

CATASTROPHE_CD VARCHAR2(5) Catastrophe Code

CATASTROPHE_CD_SOURCE_CD VARCHAR2(5) Catastrophe Code Source Code

CATASTROPHE_FLG NUMBER(1) Catastrophe Flag

CATASTROPHE_LOSS_FLG NUMBER(1) Catastrophe Loss Flag

CLAIM_ACTIVITY_CD VARCHAR2(5) Claim Activity Code

CLAIM_CLASS_CD VARCHAR2(5) Claim Class Code

CLAIM_PAY_ACTIVITY_CD VARCHAR2(10) Claim Pay Activity Code

CLAIM_PAY_TYPE_CD VARCHAR2(10) Claim Pay Type Code

CLAIMANT_RELATIONSHIP_CD VARCHAR2(5) Claimant Relationship Code

COUNT_PAID NUMBER(8) Count Paid

COUNT_REPORTED NUMBER(8) Count Reported

DAMAGE_DESCRIPTION_CD VARCHAR2(15) Damage Description Code

DATE_ADJUSTER_ASSIGNED DATE Date Adjuster Assigned

DATE_CLAIM_NOTICE_RECEIVED DATE Date Claim Notice Received

DRIVER_REL_TO_INSURED_CD VARCHAR2(5) Driver Rel to Insured Code

FATALITY_FLG NUMBER(1) Fatality Flag

Page 801: fe115trm

Property Casualty Insurance

Insurance Data Model A-19

Oracle Proprietary, Confidential Information - Use Restricted by Contract

LOSS_AMT_PAID NUMBER(14,2) Loss Amount Paid

LOSS_CASE_RESERVE_BEG NUMBER(14,2) Loss Case Reserve Beg

LOSS_CASE_RESERVE_BEG_BULK NUMBER(14,2) Loss Case Reserve Beg Bulk

LOSS_CASE_RESERVE_END NUMBER(14,2) Loss Case Reserve End

LOSS_CASE_RESERVE_END_BULK NUMBER(14,2) Loss Case Reserve End Bulk

LOSS_CASE_INCURRED NUMBER(14,2) Loss Case Incurred

LOSS_DATE DATE Loss Date

LOSS_PAID_DATE DATE Loss Paid Date

NUM_CLAIMANTS NUMBER(8) Number of Claimants

OTHER_INSURANCE_FLG NUMBER(1) Other Insurance Flag

RECORD_COUNT NUMBER(6) Record Count

REINSURANCE_RECOVERABLES NUMBER(14,2) Reinsurance Recoverables

SALVAGE_ANTICIPATED NUMBER(14,2) Salvage Anticipated

SALVAGE_RECOV_RECEIVED NUMBER(14,2) Salvage Recoverables Received

CLAIM_SETTLEMENT_TYPE_CD VARCHAR2(5) Claim Settlement Type Code

SUBROGATION_ANTICIPATED NUMBER(14,2) Subrogation Anticipated

SUBROGATION_RECEIVED NUMBER(14,2) Subrogation Received

TOTAL_LOSS_FLG NUMBER(1) Total Loss Flag

Table: PL_VEHICLE_COVERAGESColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

COVERAGE_ID NUMBER(14) Coverage ID

ORG_UNIT_ID NUMBER(14) Organizational Unit ID

COMMON_COA_ID NUMBER(14) Common Chart of Accounts ID

GL_ACCOUNT_ID NUMBER(14) General Ledger Account ID

AS_OF_DATE DATE As of Date

ISO_CURRENCY_CD VARCHAR2(3) ISO Currency Code

VEHICLE_ID_NUM VARCHAR2(25) Vehicle ID Number

PRIMARY_OPERATOR_NUMBER NUMBER(10) Primary Operator Number

EFFECTIVE_DATE DATE Effective Date

IDENTITY_CODE_CHG NUMBER(10) Identity Code Change

ALAE_AMT_PAID NUMBER(14,2) ALAE Amount Paid

ALAE_CASE_RESERVE_BEG NUMBER(14,2) ALAE Case Reserve Beg

ALAE_CASE_RESERVE_END NUMBER(14,2) ALAE Case Reserve End

ALAE_CASE_RESERVE_BEG_BULK NUMBER(14,2) ALAE Case Reserve Beg Bulk

ALAE_CASE_RESERVE_END_BULK NUMBER(14,2) ALAE Case Reserve End Bulk

ALAE_IBNR_BEG NUMBER(14,2) ALAE IBNR Beg

ALAE_IBNR_END NUMBER(14,2) ALAE IBNR End

ALAE_INCURRED_LOSS NUMBER(14,2) ALAE Incurred Loss

Page 802: fe115trm

Property Casualty Insurance

A-20 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

COMMISSIONS NUMBER(14,2) Commissions

DEDUCTIBLE_CD NUMBER(5) Deductible Code

DIVIDENDS NUMBER(14,2) Dividends

EXPECTED_LOSS_AMT NUMBER(14,2) Expected Loss Amount

EXPECTED_LOSS_RATIO NUMBER(8,4) Expected Loss Ratio

EXPOSURES_EARNED NUMBER(8,4) Exposures Earned

EXPOSURES_WRITTEN NUMBER(8,4) Exposures Written

GENERAL_EXPENSE NUMBER(14,2) General Expense

LAST_MODIFIED_DATE DATE Last Modified Date

LIMIT_PER_ACCIDENT_CD VARCHAR2(5) Limit per Accident Code

LIMIT_PER_PERSON_CD VARCHAR2(5) Limit per Person Code

LOB_CD VARCHAR2(10) LOB Code

LOSS_AMT_PAID NUMBER(14,2) Loss Amount Paid

LOSS_CASE_RESERVE_END NUMBER(14,2) Loss Case Reserve End

LOSS_CASE_RESERVE_BEG NUMBER(14,2) Loss Case Reserve Beg

LOSS_CASE_RESERVE_END_BULK NUMBER(14,2) Loss Case Reserve End Bulk

LOSS_CASE_RESERVE_BEG_BULK NUMBER(14,2) Loss Case Reserve Beg Bulk

LOSS_IBNR_BEG NUMBER(14,2) Loss IBNR Beg

LOSS_IBNR_END NUMBER(14,2) Loss IBNR End

LOSS_INCURRED NUMBER(14,2) Loss Incurred

OTHER_ACQUISITION_COSTS NUMBER(14,2) Other Acquisition Costs

POLICIES_IN_FORCE NUMBER(1) Policies In Force

PREM_EARNED_CEDED NUMBER(14,2) Premium Earned Ceded

PREM_EARNED_DIRECT NUMBER(14,2) Premium Earned Direct

PREM_EARNED_NET NUMBER(14,2) Premium Earned Net

PREM_FULL_TERM NUMBER(14,2) Premium Full Term

PREM_IN_FORCE NUMBER(14,2) Premium In Force

PREM_UNEARNED_CEDED_CUR_MONTH NUMBER(14,2) Premium Unearned Ceded Cur Month

PREM_UNEARNED_CEDED_PRI_MONTH NUMBER(14,2) Premium Unearned Ceded Pri Month

PREM_UNEARNED_CEDED_PRI_YEAR NUMBER(14,2) Premium Unearned Ceded Pri Year

PREM_UNEARNED_DIRECT_CUR_MONTH NUMBER(14,2) Premium Unearned Direct Cur Month

PREM_UNEARNED_DIRECT_PRI_MONTH NUMBER(14,2) Premium Unearned Direct Pri Month

PREM_UNEARNED_DIRECT_PRI_YEAR NUMBER(14,2) Premium Unearned Direct Pri Year

PREM_UNEARNED_NET_CUR_MONTH NUMBER(14,2) Premium Unearned Net Cur Month

PREM_UNEARNED_NET_PRI_MONTH NUMBER(14,2) Premium Unearned Net Pri Month

PREM_UNEARNED_NET_PRI_YEAR NUMBER(14,2) Premium Unearned Net Pri Year

PREM_WRITTEN_CEDED NUMBER(14,2) Premium Written Ceded

PREM_WRITTEN_CHANGE_AMT NUMBER(14,2) Premium Written Change Amount

PREM_WRITTEN_DIRECT NUMBER(14,2) Premium Written Direct

PREM_WRITTEN_NET NUMBER(14,2) Premium Written Net

RECORD_COUNT NUMBER(6) Record Count

Page 803: fe115trm

Property Casualty Insurance

Insurance Data Model A-21

Oracle Proprietary, Confidential Information - Use Restricted by Contract

REINSURANCE_PREMIUMS NUMBER(14,2) Reinsurance Premiums

REINSURANCE_RECOVERABLES NUMBER(14,2) Reinsurance Recoverables

SALVAGE_ANTICIPATED NUMBER(14,2) Salvage Anticipated

SALVAGE_RECOV_RECEIVED NUMBER(14,2) Salvage Recoverables Received

SUBROGATION_ANTICIPATED NUMBER(14,2) Subrogation Anticipated

SUBROGATION_RECEIVED NUMBER(14,2) Subrogation Received

TAXES_LICENSE_FEES NUMBER(14,2) Taxes License Fees

TERRITORY_CD VARCHAR2(5) Territory Code

UNALLOC_LOSS_ADJ_EXP NUMBER(14,2) Unallocated Loss Adj Expense

VALUATION_TYPE_CD VARCHAR2(5) Valuation Type Code

Table: PL_VEHICLE_DISCOUNTSColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

COVERAGE_ID NUMBER(14) Coverage ID

VEHICLE_DISCOUNT_CD NUMBER(5) Vehicle Discount Code

AS_OF_DATE DATE As of Date

RECORD_COUNT NUMBER(6) Record Count

Table: PL_VEHICLE_OPERATORS_POLICIESColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

OPERATOR_NUMBER NUMBER(10) Operator Number

AS_OF_DATE DATE As of Date

PRIMARY_OPERATOR_FLG NUMBER(1) Primary Operator Flag

Table: PL_VEHICLE_POLICIESColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

ORG_UNIT_ID NUMBER(14) Organizational Unit ID

COMMON_COA_ID NUMBER(14) Common Chart of Accounts ID

GL_ACCOUNT_ID NUMBER(14) General Ledger Account ID

COVERAGE_ID NUMBER(14) Coverage ID

AS_OF_DATE DATE As of Date

ISO_CURRENCY_CD VARCHAR2(3) ISO Currency Code

VEHICLE_ID_NUM VARCHAR2(25) Vehicle ID Number

PRIMARY_OPERATOR_NUMBER NUMBER(10) Primary Operator Number

POLICY_NUMBER VARCHAR2(25) Policy Number

Page 804: fe115trm

Property Casualty Insurance

A-22 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

EFFECTIVE_DATE DATE Effective Date

INCEPTION_DATE DATE Inception Date

IDENTITY_CODE_CHG NUMBER(10) Identity Code Change

INSTRUMENT_TYPE_CD NUMBER(5) Instrument Type Code

ACTIVITY_CD VARCHAR2(5) Activity Code

AGENT_CD VARCHAR2(5) Agent Code

ALAE_AMT_PAID NUMBER(14,2) ALAE Amount Paid

ALAE_CASE_RESERVE_BEG NUMBER(14,2) ALAE Case Reserve Beg

ALAE_CASE_RESERVE_END NUMBER(14,2) ALAE Case Reserve End

ALAE_CASE_RESERVE_BEG_BULK NUMBER(14,2) ALAE Case Reserve Beg Bulk

ALAE_CASE_RESERVE_END_BULK NUMBER(14,2) ALAE Case Reserve End Bulk

ALAE_IBNR_BEG NUMBER(14,2) ALAE IBNR Beg

ALAE_IBNR_END NUMBER(14,2) ALAE IBNR End

ALAE_INCURRED_LOSS NUMBER(14,2) ALAE Incurred Loss

BILL_FREQ NUMBER(5) Bill Frequency

BILLED_DATE DATE Billed Date

BILLING_ACCT_NUMBER NUMBER(25) Billing Account Number

BILLING_METHOD_CD VARCHAR2(5) Billing Method Code

CANCEL_EFFECTIVE_DATE DATE Cancel Effective Date

CANCEL_TYPE_CD VARCHAR2(5) Cancel Type Code

CARRIER_CD VARCHAR2(5) Carrier Code

COMMISSIONS NUMBER(14,2) Commissions

COST_CENTER_CD VARCHAR2(5) Cost Center Code

DISTANT_STUDENT_FLG NUMBER(1) Distant Student Flag

DISTRIBUTION_CD VARCHAR2(5) Distribution Code

DIVIDENDS NUMBER(14,2) Dividends

EXPECTED_LOSS_AMT NUMBER(14,2) Expected Loss Amount

EXPECTED_LOSS_RATIO NUMBER(8,4) Expected Loss Ratio

EXPIRATION_DATE DATE Expiration Date

EXPOSURES_EARNED NUMBER(8,4) Exposures Earned

EXPOSURES_WRITTEN NUMBER(8,4) Exposures Written

GENERAL_EXPENSE NUMBER(14,2) General Expense

INSTALLMENT_FEE NUMBER(14,2) Installment Fee

INSTALLMENT_NUMBER NUMBER(8) Installment Number

LOSS_AMT_PAID NUMBER(14,2) Loss Amount Paid

LOSS_CASE_RESERVE_END NUMBER(14,2) Loss Case Reserve End

LOSS_CASE_RESERVE_BEG NUMBER(14,2) Loss Case Reserve Beg

LOSS_CASE_RESERVE_END_BULK NUMBER(14,2) Loss Case Reserve End Bulk

LOSS_CASE_RESERVE_BEG_BULK NUMBER(14,2) Loss Case Reserve Beg Bulk

LOSS_IBNR_BEG NUMBER(14,2) Loss IBNR Beg

LOSS_IBNR_END NUMBER(14,2) Loss IBNR End

Page 805: fe115trm

Property Casualty Insurance

Insurance Data Model A-23

Oracle Proprietary, Confidential Information - Use Restricted by Contract

LOSS_INCURRED NUMBER(14,2) Loss Incurred

METHOD_OF_PAYMENT_CD VARCHAR2(10) Method of Payment Code

NAIC_CD VARCHAR2(5) NAIC Code

NUM_YOUTH_OPERATORS NUMBER(2) Number of Youth Operators

OCCUPANCY_TYPE_CD VARCHAR2(10) Occupancy Type Code

OPT_OUT_FLG NUMBER(1) Opt Out Flag

OTHER_ACQUISITION_COSTS NUMBER(14,2) Other Acquisition Costs

PAYMENT_AMT NUMBER(14,2) Payment Amount

PAYMENT_DATE DATE Payment Date

PAYMENT_DUE_DATE DATE Payment Due Date

PAYMENT_PLAN_CD VARCHAR2(5) Payment Plan Code

PREM_EARNED_CEDED NUMBER(14,2) Premium Earned Ceded

PREM_EARNED_DIRECT NUMBER(14,2) Premium Earned Direct

PREM_EARNED_NET NUMBER(14,2) Premium Earned Net

PREM_FULL_TERM NUMBER(14,2) Premium Full Term

PREM_IN_FORCE NUMBER(14,2) Premium In Force

PREM_UNEARNED_CEDED_CUR_MONTH NUMBER(14,2) Premium Unearned Ceded Cur Month

PREM_UNEARNED_CEDED_PRI_MONTH NUMBER(14,2) Premium Unearned Ceded Pri Month

PREM_UNEARNED_CEDED_PRI_YEAR NUMBER(14,2) Premium Unearned Ceded Pri Year

PREM_UNEARNED_DIRECT_CUR_MONTH NUMBER(14,2) Premium Unearned Direct Cur Month

PREM_UNEARNED_DIRECT_PRI_MONTH NUMBER(14,2) Premium Unearned Direct Pri Month

PREM_UNEARNED_DIRECT_PRI_YEAR NUMBER(14,2) Premium Unearned Direct Pri Year

PREM_UNEARNED_NET_CUR_MONTH NUMBER(14,2) Premium Unearned Net Cur Month

PREM_UNEARNED_NET_PRI_MONTH NUMBER(14,2) Premium Unearned Net Pri Month

PREM_UNEARNED_NET_PRI_YEAR NUMBER(14,2) Premium Unearned Net Pri Year

PREM_WRITTEN_CEDED NUMBER(14,2) Premium Written Ceded

PREM_WRITTEN_CHANGE_AMT NUMBER(14,2) Premium Written Change Amount

PREM_WRITTEN_DIRECT NUMBER(14,2) Premium Written Direct

PREM_WRITTEN_NET NUMBER(14,2) Premium Written Net

POLICIES_IN_FORCE NUMBER(1) Policies In Force

POLICY_STATUS_PC_CD VARCHAR2(5) Policy Status PC Code

POLICY_TERM NUMBER(5) Policy Term

POLICY_TERM_MULT CHAR(1) Policy Term Multiplier

POSTAL_CODE VARCHAR2(11) Postal Code

RECORD_COUNT NUMBER(6) Record Count

REGIONAL_OFFICE_CD VARCHAR2(5) Regional Office Code

REINSTATEMENT_DATE DATE Reinstatement Date

REINSURANCE_PREMIUMS NUMBER(14,2) Reinsurance Premiums

REINSURANCE_RECOVERABLES NUMBER(14,2) Reinsurance Recoverables

RENEWAL_CHANNEL_CD VARCHAR2(5) Renewal Channel Code

SALVAGE_ANTICIPATED NUMBER(14,2) Salvage Anticipated

Page 806: fe115trm

Property Casualty Insurance

A-24 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

SALVAGE_RECOV_RECEIVED NUMBER(14,2) Salvage Recoverables Received

SUBROGATION_ANTICIPATED NUMBER(14,2) Subrogation Anticipated

SUBROGATION_RECEIVED NUMBER(14,2) Subrogation Received

STATE_CD VARCHAR2(5) State Code

TAXES_LICENSE_FEES NUMBER(14,2) Taxes License Fees

TENURE NUMBER(3) Tenure

TERMINATION_DATE DATE Termination Date

TERMINATION_CD VARCHAR2(5) Termination Code

TERRITORY_CD VARCHAR2(5) Territory Code

UNALLOC_LOSS_ADJ_EXP NUMBER(14,2) Unallocated Loss Adj Expense

Table: PL_VEHICLE_SURCHARGESColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

COVERAGE_ID NUMBER(14) Coverage ID

VEHICLE_SURCHARGE_CD NUMBER(5) Vehicle Surcharge Code

AS_OF_DATE DATE As of Date

RECORD_COUNT NUMBER(6) Record Count

Table: VEHICLES_DETAILColumn Name Data Type Display Name

VEHICLE_ID_NUM VARCHAR2(25) Vehicle ID Number

AS_OF_DATE DATE As of Date

AIRBAG_TYPE_CD VARCHAR2(10) Airbag Type Code

ALTERATIONS_AMT NUMBER(14,2) Alterations Amount

ALTERED_FLG NUMBER(1) Altered Flag

ALTERED_VEHICLE_CD VARCHAR2(5) Altered Vehicle Code

ANTILOCK_BRAKE_CD VARCHAR2(10) Antilock Brake Code

ANTITHEFT_DEVICE_CD VARCHAR2(5) Antitheft Device Code

AUTO_CUSTOMIZED_FLG NUMBER(1) Auto Customized Flag

BUMBER_DISCOUNT_FLG NUMBER(1) Bumber Discount Flag

CAR_SPECIAL_CONTROLS_FLG NUMBER(1) Car Special Controls Flag

CARPOOL_FLG NUMBER(1) Carpool Flag

COLLISION_SYMBOL_CD VARCHAR2(5) Collision Symbol Code

CO_OWNERSHIP_FLG NUMBER(1) Co-Ownership Flag

COMB_PHYS_DAM_SYMBOL_CD VARCHAR2(5) Comb Phys Dam Symbol Code

COMPREHENSIVE_SYMBOL_CD VARCHAR2(5) Comprehensive Symbol Code

COOKING_LOCATION_CD VARCHAR2(5) Cooking Location Code

COST_NEW_AMT NUMBER(14,2) Cost New Amount

CURRENT_VALUE_OF_VEHICLE NUMBER(14,2) Current Value of Vehicle

Page 807: fe115trm

Property Casualty Insurance

Insurance Data Model A-25

Oracle Proprietary, Confidential Information - Use Restricted by Contract

DAMAGEABILITY_CD VARCHAR2(5) Damageability Code

DAYS_DRIVEN_PER_WEEK NUMBER(1) Days Driven per Week

DAYTIME_RUNNING_LIGHT_FLG NUMBER(1) Daytime Running Light Flag

ENGINE_TYPE_CD VARCHAR2(5) Engine Type Code

ESTIMATED_ANNUAL_MILEAGE NUMBER(8) Estimated Annual Mileage

EXISTING_UNREPAIRED_DAMAGE_FLG NUMBER(1) Existing Unrepaired Dam Flag

FOUR_WHEEL_DRIVE_FLG NUMBER(1) Four Wheel Drive Flag

FUEL_TANK_CD VARCHAR2(5) Fuel Tank Code

FUEL_TYPE_CD VARCHAR2(5) Fuel Type Code

GARAGING_TYPE_CD VARCHAR2(5) Garaging Type Code

GARAGING_POSTAL_CODE VARCHAR2(11) Garaging Postal Code

HORSEPOWER NUMBER(8) Horsepower

HORSEPOWER_DISPLACEMENT NUMBER(8) Horsepower Displacement

HULL_DESIGN_TYPE_CD VARCHAR2(5) Hull Design Type Code

HULL_MATERIAL_TYPE_CD VARCHAR2(5) Hull Material Type Code

INSPECTION_DATE DATE Inspection Date

INSPECTION_STATUS_CD VARCHAR2(5) Inspection Status Code

LEASED_VALUE NUMBER(14,2) Leased Value

LENGTH NUMBER(8) Length

LIABILITY_SYMBOL_CD VARCHAR2(5) Liability Symbol Code

LIC_PLATE_EFFECTIVE_DATE DATE License Plate Effective Date

LIC_PLATE_JURISDICTN_CD VARCHAR2(5) License Plate Jurisdictn Code

LIC_PLATE_NUMBER VARCHAR2(10) License Plate Number

MAXIMUM_SPEED NUMBER(8) Maximum Speed

MC_CCS NUMBER(8) Motorcycle CCs

MC_NUM_WHEELS NUMBER(1) Motorcycle Number of Wheels

MC_TYPE_CD VARCHAR2(5) Motorcycle Type Code

MH_DOUBLEWIDE_TRAILER_FLG NUMBER(1) Motor Home Doublewide Trailer Flag

MH_TYPE_CD VARCHAR2(5) Motor Home Type Code

NEW_FLG NUMBER(1) New Flag

NON_OWNED_VEHICLE_FLG NUMBER(1) Non Owned Vehicle Flag

NUM_AXLES NUMBER(2) Number of Axles

NUM_BEDS NUMBER(2) Number of Beds

NUM_CYLINDERS NUMBER(2) Number of Cylinders

ODOMETER_READING NUMBER(8) Odometer Reading

PERM_CONNECT_TO_ELECTRIC_FLG NUMBER(1) Perm Connect to Electric Flag

PERM_CONNECT_TO_PHONE_FLG NUMBER(1) Perm Connect to Phone Flag

PERM_CONNECT_TO_SEWER_FLG NUMBER(1) Perm Connect to Sewer Flag

PERM_CONNECT_TO_WATER_FLG NUMBER(1) Perm Connect to Water Flag

PROPULSION_TYPE_CD VARCHAR2(5) Propulsion Type Code

PURCHASE_DATE DATE Purchase Date

Page 808: fe115trm

Property Casualty Insurance

A-26 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

PURCHASED_NEW_FLG NUMBER(1) Purchased New Flag

RECORD_COUNT NUMBER(6) Record Count

REGISTRATION_STATE_CD VARCHAR2(5) Registration State Code

RV_NON_PROFESSIONAL_CONV_FLG NUMBER(1) RV Non-Professional Conv Flag

RV_PERSONAL_EFFECTS NUMBER(14,2) RV Personal Effects

RV_PRIMARY_RESIDENCE_FLG NUMBER(1) RV Primary Residence Flag

SALVAGE_FLG NUMBER(1) Salvage Flag

SEATBELT_TYPE_CD VARCHAR2(10) Seatbelt Type Code

TRACTION_CONTROL_FLG NUMBER(1) Traction Control Flag

TT_TYPE_CD VARCHAR2(5) Travel Trailer Type Code

VEH_INSPECTION_STATUS_CD VARCHAR2(5) Vehicle Inspection Status Code

VEHICLE_BODY_TYPE_CD VARCHAR2(10) Vehicle Body Type Code

VEHICLE_CATEGORY_CD VARCHAR2(5) Vehicle Category Code

VEHICLE_OWNERSHIP_CD VARCHAR2(5) Vehicle Ownership Code

VEHICLE_LEASE_CD VARCHAR2(5) Vehicle Lease Code

VEHICLE_MAKE_CD VARCHAR2(5) Vehicle Make Code

VEHICLE_MODEL_CD VARCHAR2(5) Vehicle Model Code

VEHICLE_MODEL_YEAR NUMBER(4) Vehicle Model Year

VEHICLE_PERFORMANCE_CD VARCHAR2(5) Vehicle Performance Code

VEHICLE_TYPE_CD VARCHAR2(10) Vehicle Type Code

VEHICLE_USE_CD VARCHAR2(5) Vehicle Use Code

WATERSKIING_FLG NUMBER(1) Waterskiing Flag

WC_EQUIPMENT_TYPE_CD VARCHAR2(5) WC Equipment Type Code

WC_LAYUP_TYPE_CD VARCHAR2(5) WC Layup Type Code

WC_NUM_MOTORS NUMBER(2) WC Number of Motors

WC_PROPULSION_CD VARCHAR2(5) WC Propulsion Code

WC_TYPE_CD VARCHAR2(5) WC Type Code

WC_WATER_SUPPLY_QTY_CD VARCHAR2(5) WC Water Supply Quantity Code

WC_WATER_SUPPLY_SRC_CD VARCHAR2(5) WC Water Supply Source Code

WC_WATER_UNIT_TYPE_CD VARCHAR2(5) WC Water Unit Type Code

WC_WATERS_NAVIGATED_CD VARCHAR2(5) WC Waters Navigated Code

Table: VEHICLE_OPERATORSColumn Name Data Type Display Name

OPERATOR_NUMBER NUMBER(10) Operator Number

AS_OF_DATE DATE As of Date

AGE NUMBER(3) Age

ATTEND_SCHOOL_FLG NUMBER(1) Attend School Flag

ASSIGNED_RISK_REASON_CD VARCHAR2(5) Assigned Risk Reason Code

AUTO_ASSOC_MEMBER_FLG NUMBER(1) Auto Association Member Flag

COVERAGE_LAPSE_CD VARCHAR2(5) Coverage Lapse Code

Page 809: fe115trm

Property Casualty Insurance

Insurance Data Model A-27

Oracle Proprietary, Confidential Information - Use Restricted by Contract

CREDIT_SCORE VARCHAR2(10) Credit Score

CREDIT_SCORE_DATE DATE Credit Score Date

CUS_KEY VARCHAR2(30) Customer Key

GENDER CHAR(1) Gender

GRADE_AVERAGE NUMBER(14,2) Grade Average

DATE_SINCE_ASSIGNED_RISK DATE Date Since Assigned Risk

DECL_CANCELLED_NONRENEWED_FLG NUMBER(1) Decl Cancelled Nonrenewed Flag

DEFENSIVE_DRIVER_DATE DATE Defensive Driver Date

DEFENSIVE_DRIVER_EXPIRE_DATE DATE Defensive Driver Expire Date

DEFENSIVE_DRIVER_FLG NUMBER(1) Defensive Driver Flag

DRIVER_ASSIGNED_RISK_FLG NUMBER(1) Driver Assigned Risk Flag

DRIVERS_LICENSE_NUMBER VARCHAR2(25) Drivers License Number

DRIVERS_LICENSE_POINTS NUMBER(8) Drivers License Points

DRIVER_TRAINING_DATE DATE Driver Training Date

DRIVER_TRAINING_FLG NUMBER(1) Driver Training Flag

DRIVER_TYPE_CD VARCHAR2(5) Driver Type Code

EDUCATION_LEVEL_PC_CD VARCHAR2(5) Education Level PC Code

FILING_FLG NUMBER(1) Filing Flag

FILING_JURISDICTION_CD VARCHAR2(5) Filing Jurisdiction Code

FILING_ORIGINAL_DATE DATE Filing Original Date

FILING_REASON_CD VARCHAR2(5) Filing Reason Code

FILING_STATUS_CD VARCHAR2(5) Filing Status Code

FIRST_DATE_LICENSED DATE First Date Licensed

GOOD_DRIVER_FLG NUMBER(1) Good Driver Flag

GOOD_STUDENT_DATE DATE Good Student Date

GOOD_STUDENT_EXPIRATION_DATE DATE Good Student Expiration Date

GOOD_STUDENT_FLG NUMBER(1) Good Student Flag

INCIDENT_DATE DATE Incident Date

LIC_CLASS_CD VARCHAR2(5) License Class Code

LIC_STATE_CD VARCHAR2(5) License State Code

LIC_RESTRICTION_CD VARCHAR2(5) License Restriction Code

LIC_SUSPENSED_REVOKED_FLG NUMBER(1) License Suspended Revoked Flag

LIC_ORIGINAL_DATE DATE License Original Date

LOSSES_ACCIDENTS_CONVICT_FLG NUMBER(1) Losses Accidents Convict Flag

LOSSES_FLG NUMBER(1) Losses Flag

MARITAL_STATUS_PC_CD VARCHAR2(5) Marital Status PC Code

MATURE_DRIVER_DATE DATE Mature Driver Date

MATURE_DRIVER_EXPIRATION_DATE DATE Mature Driver Expiration Date

MATURE_DRIVER_FLG NUMBER(1) Mature Driver Flag

MC_ASSOCIATION_CD VARCHAR2(15) Motorcycle Association Code

MC_EXPERIENCE_TERM NUMBER(5) Motorcycle Experience Term

Page 810: fe115trm

Property Casualty Insurance

A-28 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

MC_EXPERIENCE_MULT CHAR(1) Motorcycle Experience Multiplier

MC_SAFETY_COURSE_FLG NUMBER(1) Motorcycle Safety Course Flag

MVR_TYPE_CD VARCHAR2(5) Motor Vehicle Report Type Code

NUM_MILES_ONE_WAY_TO_SCHOOL NUMBER(3) Number of Miles One Way to School

NUM_MILES_ONE_WAY_TO_WORK NUMBER(3) Number of Miles One Way to Work

NUM_YEARS_DRIVING NUMBER(2) Number of Years Driving

OCCUPATION_CD VARCHAR2(5) Occupation Code

OWNED_VEHICLE_FLG NUMBER(1) Owned Vehicle Flag

PERCENT_OF_USE NUMBER(3) Percent of Use

POLICY_LAPSE_FLG NUMBER(1) Policy Lapse Flag

RATE_CLASS_CD VARCHAR2(5) Rate Class Code

RELATION_TO_VEH_OWNER_CD VARCHAR2(5) Relation to Vehicle Owner Code

RESIDE_WITH_PARENTS_FLG NUMBER(1) Reside With Parents Flag

RESIDENCE_TYPE_CD VARCHAR2(15) Residence Type Code

RESTRICTED_AUTO_USE_FLG NUMBER(1) Restricted Auto Use Flag

SUSPENSION_REVOCATION_DATE DATE Suspension Revocation Date

SUSP_REVOC_REASON_CD VARCHAR2(5) Susp Revoc Reason Code

TT_ASSOCIATION_CD VARCHAR2(15) Travel Trailer Association Code

TT_EXPERIENCE_TERM NUMBER(5) Travel Trailer Experience Term

TT_EXPERIENCE_MULT CHAR(1) Travel Trailer Experience Multiplier

TT_SAFETY_COURSE_FLG NUMBER(1) Travel Trailer Safety Course Flag

WC_ASSOC_CD VARCHAR2(15) WC Association Code

WC_EXPERIENCE_TERM NUMBER(5) WC Experience Term

WC_EXPERIENCE_MULT CHAR(1) WC Experience Multiplier

WC_SAFETY_COURSE_FLG NUMBER(1) WC Safety Course Flag

Table: VEHICLE_OWNERSColumn Name Data Type Display Name

CUS_KEY VARCHAR2(30) Customer Key

VEHICLE_ID_NUM VARCHAR2(25) Vehicle ID Number

AS_OF_DATE DATE As of Date

Table: VEH_OPERATOR_ACCIDENT_HISTColumn Name Data Type Display Name

OPERATOR_NUMBER NUMBER(10) Operator Number

ACCIDENT_NUMBER NUMBER(10) Accident Number

ACCIDENT_VIOLATION_DATE DATE Accident Violation Date

AGE_OF_ACCIDENT NUMBER(8) Age of Accident

ACCIDENT_VIOLATION_CD VARCHAR2(5) Accident Violation Code

ACCIDENT_RECORD_TYPE_CD VARCHAR2(5) Accident Record Type Code

BODILY_INJURY_INVOLVED_FLG NUMBER(1) Bodily Injury Involved Flag

Page 811: fe115trm

Property Casualty Insurance

Insurance Data Model A-29

Oracle Proprietary, Confidential Information - Use Restricted by Contract

CONVICTION_DATE DATE Conviction Date

DRIVER_AT_FAULT_FLG NUMBER(1) Driver at Fault Flag

FATALITY_INVOLVED_FLG NUMBER(1) Fatality Involved Flag

NUM_SURCHARGE_POINTS NUMBER(8) Number of Surcharge Points

RECORD_COUNT NUMBER(6) Record Count

TOTAL_DAMAGE_AMT NUMBER(14,2) Total Damage Amount

Table: VEH_OPERATOR_CITATION_HISTColumn Name Data Type Display Name

OPERATOR_NUMBER NUMBER(10) Operator Number

CITATION_NUMBER NUMBER(10) Citation Number

CITATION_DATE DATE Citation Date

AGE_OF_CITATION NUMBER(8) Age of Citation

CITATION_VIOLATION_CD VARCHAR2(5) Citation Violation Code

CONVICTION_DATE DATE Conviction Date

NUM_SURCHARGE_POINTS NUMBER(8) Number of Surcharge Points

RECORD_COUNT NUMBER(6) Record Count

Page 812: fe115trm

Property Casualty Insurance

A-30 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Floater and Umbrella Policies

OFSA_INSTRUMENT_ACCOUNT_CUST* IDENTITY_CODE* ID_NUMBER* INSTRUMENT_TYPE_CD* CUS_KEY

CUST# CUS_NO

UMBRELLA_UNDERLYING_POLICIES# IDENTITY_CODE# ID_NUMBER# UNDERLYING_POLICY_NUMBER* UNDERLYING_POLICY_TYPE_CD* AS_OF_DATE

UMBRELLA_POLICIES# IDENTITY_CODE# ID_NUMBER* ORG_UNIT_ID* COMMON_COA_ID* GL_ACCOUNT_ID* COVERAGE_ID* AS_OF_DATE* ISO_CURRENCY_CD* POLICY_NUMBER* EFFECTIVE_DATE* INCEPTION_DATE

UMBRELLA_CLAIMS# IDENTITY_CODE# ID_NUMBER# CLAIM_NUMBER# CLAIM_OCCURRENCE_NUMBER* AS_OF_DATE

PL_FLOATER_POLICIES# IDENTITY_CODE# ID_NUMBER* ORG_UNIT_ID* COMMON_COA_ID* GL_ACCOUNT_ID* COVERAGE_ID* AS_OF_DATE* ISO_CURRENCY_CD* POLICY_NUMBER* EFFECTIVE_DATE* INCEPTION_DATE

PL_FLOATER_DISCOUNTS# IDENTITY_CODE# ID_NUMBER# FLOATER_DISCOUNT_CD* AS_OF_DATE

PL_FLOATER_CLAIMS# IDENTITY_CODE# ID_NUMBER# COVERAGE_ID# CLAIM_NUMBER* AS_OF_DATE

PL_FLOATER_ARTICLES# IDENTITY_CODE# ID_NUMBER# COVERAGE_ID* ORG_UNIT_ID* COMMON_COA_ID* GL_ACCOUNT_ID* AS_OF_DATE* ISO_CURRENCY_CD* POLICY_NUMBER* EFFECTIVE_DATE* INCEPTION_DATE

is submitted against

may have

is a prerequisite for

insures beyond

decreases premium for

premium may be decreased by

is submitted for

may have

is insured by

insures

relates policy to customers

owns

relates customer to policies

may be owned by

relates customer to policies

may be owned by

Page 813: fe115trm

Property Casualty Insurance

Insurance Data Model A-31

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Table: PL_FLOATER_ARTICLESColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

COVERAGE_ID NUMBER(14) Coverage ID

ORG_UNIT_ID NUMBER(14) Organizational Unit ID

COMMON_COA_ID NUMBER(14) Common Chart of Accounts ID

GL_ACCOUNT_ID NUMBER(14) General Ledger Account ID

AS_OF_DATE DATE As of Date

ISO_CURRENCY_CD VARCHAR2(3) ISO Currency Code

POLICY_NUMBER VARCHAR2(25) Policy Number

EFFECTIVE_DATE DATE Effective Date

INCEPTION_DATE DATE Inception Date

IDENTITY_CODE_CHG NUMBER(10) Identity Code Change

INSTRUMENT_TYPE_CD NUMBER(5) Instrument Type Code

ALAE_AMT_PAID NUMBER(14,2) ALAE Amount Paid

ALAE_CASE_RESERVE_BEG NUMBER(14,2) ALAE Case Reserve Beg

ALAE_CASE_RESERVE_END NUMBER(14,2) ALAE Case Reserve End

ALAE_CASE_RESERVE_BEG_BULK NUMBER(14,2) ALAE Case Reserve Beg Bulk

ALAE_CASE_RESERVE_END_BULK NUMBER(14,2) ALAE Case Reserve End Bulk

ALAE_IBNR_BEG NUMBER(14,2) ALAE IBNR Beg

ALAE_IBNR_END NUMBER(14,2) ALAE IBNR End

ALAE_INCURRED_LOSS NUMBER(14,2) ALAE Incurred Loss

AMT_OF_INSURANCE NUMBER(14,2) Amount of Insurance

CANCEL_EFFECTIVE_DATE DATE Cancel Effective Date

CANCEL_TYPE_CD VARCHAR2(5) Cancel Type Code

COMMISSIONS NUMBER(14,2) Commissions

DEDUCTIBLE_CD NUMBER(5) Deductible Code

DIVIDENDS NUMBER(14,2) Dividends

EXPECTED_LOSS_AMT NUMBER(14,2) Expected Loss Amount

EXPECTED_LOSS_RATIO NUMBER(8,4) Expected Loss Ratio

EXPIRATION_DATE DATE Expiration Date

EXPOSURES_EARNED NUMBER(8,4) Exposures Earned

EXPOSURES_WRITTEN NUMBER(8,4) Exposures Written

GENERAL_EXPENSE NUMBER(14,2) General Expense

INSTALLMENT_FEE NUMBER(14,2) Installment Fee

INSTALLMENT_NUMBER NUMBER(8) Installment Number

LOSS_AMT_PAID NUMBER(14,2) Loss Amount Paid

LOSS_CASE_RESERVE_END NUMBER(14,2) Loss Case Reserve End

LOSS_CASE_RESERVE_BEG NUMBER(14,2) Loss Case Reserve Beg

LOSS_CASE_RESERVE_END_BULK NUMBER(14,2) Loss Case Reserve End Bulk

Page 814: fe115trm

Property Casualty Insurance

A-32 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

LOSS_CASE_RESERVE_BEG_BULK NUMBER(14,2) Loss Case Reserve Beg Bulk

LOSS_IBNR_BEG NUMBER(14,2) Loss IBNR Beg

LOSS_IBNR_END NUMBER(14,2) Loss IBNR End

LOSS_INCURRED NUMBER(14,2) Loss Incurred

OTHER_ACQUISITION_COSTS NUMBER(14,2) Other Acquisition Costs

PREM_EARNED_CEDED NUMBER(14,2) Premium Earned Ceded

PREM_EARNED_DIRECT NUMBER(14,2) Premium Earned Direct

PREM_EARNED_NET NUMBER(14,2) Premium Earned Net

PREM_FULL_TERM NUMBER(14,2) Premium Full Term

PREM_IN_FORCE NUMBER(14,2) Premium In Force

PREM_UNEARNED_CEDED_CUR_MONTH NUMBER(14,2) Premium Unearned Ceded Cur Month

PREM_UNEARNED_CEDED_PRI_MONTH NUMBER(14,2) Premium Unearned Ceded Pri Month

PREM_UNEARNED_CEDED_PRI_YEAR NUMBER(14,2) Premium Unearned Ceded Pri Year

PREM_UNEARNED_DIRECT_CUR_MONTH NUMBER(14,2) Premium Unearned Direct Cur Month

PREM_UNEARNED_DIRECT_PRI_MONTH NUMBER(14,2) Premium Unearned Direct Pri Month

PREM_UNEARNED_DIRECT_PRI_YEAR NUMBER(14,2) Premium Unearned Direct Pri Year

PREM_UNEARNED_NET_CUR_MONTH NUMBER(14,2) Premium Unearned Net Cur Month

PREM_UNEARNED_NET_PRI_MONTH NUMBER(14,2) Premium Unearned Net Pri Month

PREM_UNEARNED_NET_PRI_YEAR NUMBER(14,2) Premium Unearned Net Pri Year

PREM_WRITTEN_CEDED NUMBER(14,2) Premium Written Ceded

PREM_WRITTEN_CHANGE_AMT NUMBER(14,2) Premium Written Change Amount

PREM_WRITTEN_DIRECT NUMBER(14,2) Premium Written Direct

PREM_WRITTEN_NET NUMBER(14,2) Premium Written Net

PROPERTY_CLASS_CD VARCHAR2(10) Property Class Code

POLICIES_IN_FORCE NUMBER(1) Policies In Force

RECORD_COUNT NUMBER(6) Record Count

REINSTATEMENT_DATE DATE Reinstatement Date

REINSURANCE_PREMIUMS NUMBER(14,2) Reinsurance Premiums

REINSURANCE_RECOVERABLES NUMBER(14,2) Reinsurance Recoverables

SALVAGE_ANTICIPATED NUMBER(14,2) Salvage Anticipated

SALVAGE_RECOV_RECEIVED NUMBER(14,2) Salvage Recoverables Received

SCHEDULED_TYPE_CD VARCHAR2(5) Scheduled Type Code

SUBROGATION_ANTICIPATED NUMBER(14,2) Subrogation Anticipated

SUBROGATION_RECEIVED NUMBER(14,2) Subrogation Received

TAXES_LICENSE_FEES NUMBER(14,2) Taxes License Fees

TERMINATION_DATE DATE Termination Date

TERMINATION_CD VARCHAR2(5) Termination Code

UNALLOC_LOSS_ADJ_EXP NUMBER(14,2) Unallocated Loss Adj Expense

VALUATION_TYPE_CD VARCHAR2(5) Valuation Type Code

VALUE NUMBER(14,2) Value

Page 815: fe115trm

Property Casualty Insurance

Insurance Data Model A-33

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Table: PL_FLOATER_CLAIMSColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

COVERAGE_ID NUMBER(14) Coverage ID

CLAIM_NUMBER VARCHAR2(25) Claim Number

ORG_UNIT_ID NUMBER(14) Organizational Unit ID

COMMON_COA_ID NUMBER(14) Common Chart of Accounts ID

AS_OF_DATE DATE As of Date

ISO_CURRENCY_CD VARCHAR2(3) ISO Currency Code

ADDITIONAL_CLAIM_FLG NUMBER(1) Additional Claim Flag

ADJUSTER_ASSIGNED_CD VARCHAR2(5) Adjuster Assigned Code

ALAE_AMT_PAID NUMBER(14,2) ALAE Amount Paid

ALAE_CASE_RESERVE_BEG NUMBER(14,2) ALAE Case Reserve Beg

ALAE_CASE_RESERVE_BEG_BULK NUMBER(14,2) ALAE Case Reserve Beg Bulk

ALAE_CASE_RESERVE_END NUMBER(14,2) ALAE Case Reserve End

ALAE_CASE_RESERVE_END_BULK NUMBER(14,2) ALAE Case Reserve End Bulk

ALAE_CASE_INCURRED_LOSS NUMBER(14,2) ALAE Case Incurred Loss

ALAE_PAID_DATE DATE ALAE Paid Date

ATTORNEY_OR_AUTH_REP_CD VARCHAR2(5) Attorney or Auth Rep Code

CATASTROPHE_CD VARCHAR2(5) Catastrophe Code

CATASTROPHE_CD_SOURCE_CD VARCHAR2(5) Catastrophe Code Source Code

CATASTROPHE_FLG NUMBER(1) Catastrophe Flag

CATASTROPHE_LOSS_FLG NUMBER(1) Catastrophe Loss Flag

CAUSE_OF_LOSS_CD VARCHAR2(10) Cause of Loss Code

CLAIM_ACTIVITY_CD VARCHAR2(5) Claim Activity Code

CLAIM_PAY_ACTIVITY_CD VARCHAR2(10) Claim Pay Activity Code

CLAIM_PAY_TYPE_CD VARCHAR2(10) Claim Pay Type Code

COUNT_PAID NUMBER(8) Count Paid

COUNT_REPORTED NUMBER(8) Count Reported

DAMAGE_DESCRIPTION_CD VARCHAR2(15) Damage Description Code

DATE_ADJUSTER_ASSIGNED DATE Date Adjuster Assigned

DATE_CLAIM_NOTICE_RECEIVED DATE Date Claim Notice Received

LOSS_AMT_PAID NUMBER(14,2) Loss Amount Paid

LOSS_CASE_RESERVE_BEG NUMBER(14,2) Loss Case Reserve Beg

LOSS_CASE_RESERVE_BEG_BULK NUMBER(14,2) Loss Case Reserve Beg Bulk

LOSS_CASE_RESERVE_END NUMBER(14,2) Loss Case Reserve End

LOSS_CASE_RESERVE_END_BULK NUMBER(14,2) Loss Case Reserve End Bulk

LOSS_CASE_INCURRED NUMBER(14,2) Loss Case Incurred

LOSS_DATE DATE Loss Date

LOSS_PAID_DATE DATE Loss Paid Date

Page 816: fe115trm

Property Casualty Insurance

A-34 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OTHER_INSURANCE_FLG NUMBER(1) Other Insurance Flag

RECORD_COUNT NUMBER(6) Record Count

REINSURANCE_RECOVERABLES NUMBER(14,2) Reinsurance Recoverables

SALVAGE_ANTICIPATED NUMBER(14,2) Salvage Anticipated

SALVAGE_RECOV_RECEIVED NUMBER(14,2) Salvage Recoverables Received

CLAIM_SETTLEMENT_TYPE_CD VARCHAR2(5) Claim Settlement Type Code

SUBROGATION_ANTICIPATED NUMBER(14,2) Subrogation Anticipated

SUBROGATION_RECEIVED NUMBER(14,2) Subrogation Received

TOTAL_LOSS_FLG NUMBER(1) Total Loss Flag

Table: PL_FLOATER_DISCOUNTSColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

FLOATER_DISCOUNT_CD NUMBER(5) Floater Discount Code

AS_OF_DATE DATE As of Date

RECORD_COUNT NUMBER(6) Record Count

Table: PL_FLOATER_POLICIESColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

ORG_UNIT_ID NUMBER(14) Organizational Unit ID

COMMON_COA_ID NUMBER(14) Common Chart of Accounts ID

GL_ACCOUNT_ID NUMBER(14) General Ledger Account ID

COVERAGE_ID NUMBER(14) Coverage ID

AS_OF_DATE DATE As of Date

ISO_CURRENCY_CD VARCHAR2(3) ISO Currency Code

POLICY_NUMBER VARCHAR2(25) Policy Number

EFFECTIVE_DATE DATE Effective Date

INCEPTION_DATE DATE Inception Date

IDENTITY_CODE_CHG NUMBER(10) Identity Code Change

INSTRUMENT_TYPE_CD NUMBER(5) Instrument Type Code

ACTIVITY_CD VARCHAR2(5) Activity Code

AGENT_CD VARCHAR2(5) Agent Code

ALAE_AMT_PAID NUMBER(14,2) ALAE Amount Paid

ALAE_CASE_RESERVE_BEG NUMBER(14,2) ALAE Case Reserve Beg

ALAE_CASE_RESERVE_END NUMBER(14,2) ALAE Case Reserve End

ALAE_CASE_RESERVE_BEG_BULK NUMBER(14,2) ALAE Case Reserve Beg Bulk

ALAE_CASE_RESERVE_END_BULK NUMBER(14,2) ALAE Case Reserve End Bulk

ALAE_IBNR_BEG NUMBER(14,2) ALAE IBNR Beg

Page 817: fe115trm

Property Casualty Insurance

Insurance Data Model A-35

Oracle Proprietary, Confidential Information - Use Restricted by Contract

ALAE_IBNR_END NUMBER(14,2) ALAE IBNR End

ALAE_INCURRED_LOSS NUMBER(14,2) ALAE Incurred Loss

BILL_FREQ NUMBER(5) Bill Frequency

BILLED_DATE DATE Billed Date

BILLING_ACCT_NUMBER NUMBER(25) Billing Account Number

BILLING_METHOD_CD VARCHAR2(5) Billing Method Code

CANCEL_EFFECTIVE_DATE DATE Cancel Effective Date

CANCEL_TYPE_CD VARCHAR2(5) Cancel Type Code

CARRIER_CD VARCHAR2(5) Carrier Code

COMMISSIONS NUMBER(14,2) Commissions

COST_CENTER_CD VARCHAR2(5) Cost Center Code

DISTRIBUTION_CD VARCHAR2(5) Distribution Code

DIVIDENDS NUMBER(14,2) Dividends

EXPECTED_LOSS_AMT NUMBER(14,2) Expected Loss Amount

EXPECTED_LOSS_RATIO NUMBER(8,4) Expected Loss Ratio

EXPIRATION_DATE DATE Expiration Date

EXPOSURES_EARNED NUMBER(8,4) Exposures Earned

EXPOSURES_WRITTEN NUMBER(8,4) Exposures Written

FLOATER_TYPE_CD VARCHAR2(5) Floater Type Code

GENERAL_EXPENSE NUMBER(14,2) General Expense

INSTALLMENT_FEE NUMBER(14,2) Installment Fee

INSTALLMENT_NUMBER NUMBER(8) Installment Number

LOB_CD VARCHAR2(10) LOB Code

LOSS_AMT_PAID NUMBER(14,2) Loss Amount Paid

LOSS_CASE_RESERVE_END NUMBER(14,2) Loss Case Reserve End

LOSS_CASE_RESERVE_BEG NUMBER(14,2) Loss Case Reserve Beg

LOSS_CASE_RESERVE_END_BULK NUMBER(14,2) Loss Case Reserve End Bulk

LOSS_CASE_RESERVE_BEG_BULK NUMBER(14,2) Loss Case Reserve Beg Bulk

LOSS_IBNR_BEG NUMBER(14,2) Loss IBNR Beg

LOSS_IBNR_END NUMBER(14,2) Loss IBNR End

LOSS_INCURRED NUMBER(14,2) Loss Incurred

METHOD_OF_PAYMENT_CD VARCHAR2(10) Method of Payment Code

NAIC_CD VARCHAR2(5) NAIC Code

OCCUPANCY_TYPE_CD VARCHAR2(10) Occupancy Type Code

OPT_OUT_FLG NUMBER(1) Opt Out Flag

OTHER_ACQUISITION_COSTS NUMBER(14,2) Other Acquisition Costs

PAYMENT_AMT NUMBER(14,2) Payment Amount

PAYMENT_DATE DATE Payment Date

PAYMENT_DUE_DATE DATE Payment Due Date

PAYMENT_PLAN_CD VARCHAR2(5) Payment Plan Code

PREM_EARNED_CEDED NUMBER(14,2) Premium Earned Ceded

Page 818: fe115trm

Property Casualty Insurance

A-36 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

PREM_EARNED_DIRECT NUMBER(14,2) Premium Earned Direct

PREM_EARNED_NET NUMBER(14,2) Premium Earned Net

PREM_FULL_TERM NUMBER(14,2) Premium Full Term

PREM_IN_FORCE NUMBER(14,2) Premium In Force

PREM_UNEARNED_CEDED_CUR_MONTH NUMBER(14,2) Premium Unearned Ceded Cur Month

PREM_UNEARNED_CEDED_PRI_MONTH NUMBER(14,2) Premium Unearned Ceded Pri Month

PREM_UNEARNED_CEDED_PRI_YEAR NUMBER(14,2) Premium Unearned Ceded Pri Year

PREM_UNEARNED_DIRECT_CUR_MONTH NUMBER(14,2) Premium Unearned Direct Cur Month

PREM_UNEARNED_DIRECT_PRI_MONTH NUMBER(14,2) Premium Unearned Direct Pri Month

PREM_UNEARNED_DIRECT_PRI_YEAR NUMBER(14,2) Premium Unearned Direct Pri Year

PREM_UNEARNED_NET_CUR_MONTH NUMBER(14,2) Premium Unearned Net Cur Month

PREM_UNEARNED_NET_PRI_MONTH NUMBER(14,2) Premium Unearned Net Pri Month

PREM_UNEARNED_NET_PRI_YEAR NUMBER(14,2) Premium Unearned Net Pri Year

PREM_WRITTEN_CEDED NUMBER(14,2) Premium Written Ceded

PREM_WRITTEN_CHANGE_AMT NUMBER(14,2) Premium Written Change Amount

PREM_WRITTEN_DIRECT NUMBER(14,2) Premium Written Direct

PREM_WRITTEN_NET NUMBER(14,2) Premium Written Net

POLICIES_IN_FORCE NUMBER(1) Policies In Force

POLICY_STATUS_PC_CD VARCHAR2(5) Policy Status PC Code

POLICY_TERM NUMBER(5) Policy Term

POLICY_TERM_MULT CHAR(1) Policy Term Multiplier

POSTAL_CODE VARCHAR2(11) Postal Code

RECORD_COUNT NUMBER(6) Record Count

REGIONAL_OFFICE_CD VARCHAR2(5) Regional Office Code

REINSTATEMENT_DATE DATE Reinstatement Date

REINSURANCE_PREMIUMS NUMBER(14,2) Reinsurance Premiums

REINSURANCE_RECOVERABLES NUMBER(14,2) Reinsurance Recoverables

RENEWAL_CHANNEL_CD VARCHAR2(5) Renewal Channel Code

SALVAGE_ANTICIPATED NUMBER(14,2) Salvage Anticipated

SALVAGE_RECOV_RECEIVED NUMBER(14,2) Salvage Recoverables Received

SUBROGATION_ANTICIPATED NUMBER(14,2) Subrogation Anticipated

SUBROGATION_RECEIVED NUMBER(14,2) Subrogation Received

STATE_CD VARCHAR2(5) State Code

TAXES_LICENSE_FEES NUMBER(14,2) Taxes License Fees

TENURE NUMBER(3) Tenure

TERMINATION_DATE DATE Termination Date

TERMINATION_CD VARCHAR2(5) Termination Code

TERRITORY_CD VARCHAR2(5) Territory Code

UNALLOC_LOSS_ADJ_EXP NUMBER(14,2) Unallocated Loss Adj Expense

Page 819: fe115trm

Property Casualty Insurance

Insurance Data Model A-37

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Table: UMBRELLA_CLAIMSColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

CLAIM_NUMBER VARCHAR2(25) Claim Number

CLAIM_OCCURRENCE_NUMBER NUMBER(10) Claim Occurrence Number

ORG_UNIT_ID NUMBER(14) Organizational Unit ID

COMMON_COA_ID NUMBER(14) Common Chart of Accounts ID

AS_OF_DATE DATE As of Date

ISO_CURRENCY_CD VARCHAR2(3) ISO Currency Code

ADDITIONAL_CLAIM_FLG NUMBER(1) Additional Claim Flag

ADJUSTER_ASSIGNED_CD VARCHAR2(5) Adjuster Assigned Code

ALAE_AMT_PAID NUMBER(14,2) ALAE Amount Paid

ALAE_CASE_RESERVE_BEG NUMBER(14,2) ALAE Case Reserve Beg

ALAE_CASE_RESERVE_BEG_BULK NUMBER(14,2) ALAE Case Reserve Beg Bulk

ALAE_CASE_RESERVE_END NUMBER(14,2) ALAE Case Reserve End

ALAE_CASE_RESERVE_END_BULK NUMBER(14,2) ALAE Case Reserve End Bulk

ALAE_CASE_INCURRED_LOSS NUMBER(14,2) ALAE Case Incurred Loss

ALAE_PAID_DATE DATE ALAE Paid Date

ATTORNEY_OR_AUTH_REP_CD VARCHAR2(5) Attorney or Auth Rep Code

CATASTROPHE_CD VARCHAR2(5) Catastrophe Code

CATASTROPHE_CD_SOURCE_CD VARCHAR2(5) Catastrophe Code Source Code

CATASTROPHE_FLG NUMBER(1) Catastrophe Flag

CATASTROPHE_LOSS_FLG NUMBER(1) Catastrophe Loss Flag

CAUSE_OF_LOSS_CD VARCHAR2(10) Cause of Loss Code

CLAIM_ACTIVITY_CD VARCHAR2(5) Claim Activity Code

CLAIM_CLASS_CD VARCHAR2(5) Claim Class Code

CLAIM_PAY_ACTIVITY_CD VARCHAR2(10) Claim Pay Activity Code

CLAIM_PAY_TYPE_CD VARCHAR2(10) Claim Pay Type Code

CLAIMANT_RELATIONSHIP_CD VARCHAR2(5) Claimant Relationship Code

COUNT_PAID NUMBER(8) Count Paid

COUNT_REPORTED NUMBER(8) Count Reported

DATE_ADJUSTER_ASSIGNED DATE Date Adjuster Assigned

DATE_CLAIM_NOTICE_RECEIVED DATE Date Claim Notice Received

LOSS_AMT_PAID NUMBER(14,2) Loss Amount Paid

LOSS_CASE_RESERVE_BEG NUMBER(14,2) Loss Case Reserve Beg

LOSS_CASE_RESERVE_BEG_BULK NUMBER(14,2) Loss Case Reserve Beg Bulk

LOSS_CASE_RESERVE_END NUMBER(14,2) Loss Case Reserve End

LOSS_CASE_RESERVE_END_BULK NUMBER(14,2) Loss Case Reserve End Bulk

LOSS_CASE_INCURRED NUMBER(14,2) Loss Case Incurred

LOSS_DATE DATE Loss Date

Page 820: fe115trm

Property Casualty Insurance

A-38 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

LOSS_PAID_DATE DATE Loss Paid Date

OTHER_INSURANCE_FLG NUMBER(1) Other Insurance Flag

NUM_CLAIMANTS NUMBER(8) Number of Claimants

RECORD_COUNT NUMBER(6) Record Count

REINSURANCE_RECOVERABLES NUMBER(14,2) Reinsurance Recoverables

SALVAGE_ANTICIPATED NUMBER(14,2) Salvage Anticipated

SALVAGE_RECOV_RECEIVED NUMBER(14,2) Salvage Recoverables Received

CLAIM_SETTLEMENT_TYPE_CD VARCHAR2(5) Claim Settlement Type Code

SUBROGATION_ANTICIPATED NUMBER(14,2) Subrogation Anticipated

SUBROGATION_RECEIVED NUMBER(14,2) Subrogation Received

TOTAL_LOSS_FLG NUMBER(1) Total Loss Flag

Table: UMBRELLA_POLICIESColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

ORG_UNIT_ID NUMBER(14) Organizational Unit ID

COMMON_COA_ID NUMBER(14) Common Chart of Accounts ID

GL_ACCOUNT_ID NUMBER(14) General Ledger Account ID

COVERAGE_ID NUMBER(14) Coverage ID

AS_OF_DATE DATE As of Date

ISO_CURRENCY_CD VARCHAR2(3) ISO Currency Code

POLICY_NUMBER VARCHAR2(25) Policy Number

EFFECTIVE_DATE DATE Effective Date

INCEPTION_DATE DATE Inception Date

IDENTITY_CODE_CHG NUMBER(10) Identity Code Change

INSTRUMENT_TYPE_CD NUMBER(5) Instrument Type Code

ACTIVITY_CD VARCHAR2(5) Activity Code

AGENT_CD VARCHAR2(5) Agent Code

ALAE_AMT_PAID NUMBER(14,2) ALAE Amount Paid

ALAE_CASE_RESERVE_BEG NUMBER(14,2) ALAE Case Reserve Beg

ALAE_CASE_RESERVE_END NUMBER(14,2) ALAE Case Reserve End

ALAE_CASE_RESERVE_BEG_BULK NUMBER(14,2) ALAE Case Reserve Beg Bulk

ALAE_CASE_RESERVE_END_BULK NUMBER(14,2) ALAE Case Reserve End Bulk

ALAE_IBNR_BEG NUMBER(14,2) ALAE IBNR Beg

ALAE_IBNR_END NUMBER(14,2) ALAE IBNR End

ALAE_INCURRED_LOSS NUMBER(14,2) ALAE Incurred Loss

BILL_FREQ NUMBER(5) Bill Frequency

BILLED_DATE DATE Billed Date

BILLING_ACCT_NUMBER NUMBER(25) Billing Account Number

BILLING_METHOD_CD VARCHAR2(5) Billing Method Code

Page 821: fe115trm

Property Casualty Insurance

Insurance Data Model A-39

Oracle Proprietary, Confidential Information - Use Restricted by Contract

CANCEL_EFFECTIVE_DATE DATE Cancel Effective Date

CANCEL_TYPE_CD VARCHAR2(5) Cancel Type Code

CARRIER_CD VARCHAR2(5) Carrier Code

COMMISSIONS NUMBER(14,2) Commissions

COST_CENTER_CD VARCHAR2(5) Cost Center Code

DEFENSE_COSTS_CD VARCHAR2(5) Defense Costs Code

DEFENSE_COSTS_FLG NUMBER(1) Defense Costs Flag

DISTRIBUTION_CD VARCHAR2(5) Distribution Code

DIVIDENDS NUMBER(14,2) Dividends

EXPECTED_LOSS_AMT NUMBER(14,2) Expected Loss Amount

EXPECTED_LOSS_RATIO NUMBER(8,4) Expected Loss Ratio

EXPIRATION_DATE DATE Expiration Date

EXPOSURES_EARNED NUMBER(8,4) Exposures Earned

EXPOSURES_WRITTEN NUMBER(8,4) Exposures Written

GENERAL_EXPENSE NUMBER(14,2) General Expense

INSTALLMENT_FEE NUMBER(14,2) Installment Fee

INSTALLMENT_NUMBER NUMBER(8) Installment Number

LIMIT_CD VARCHAR2(5) Limit Code

LOB_CD VARCHAR2(10) LOB Code

LOSS_AMT_PAID NUMBER(14,2) Loss Amount Paid

LOSS_CASE_RESERVE_END NUMBER(14,2) Loss Case Reserve End

LOSS_CASE_RESERVE_BEG NUMBER(14,2) Loss Case Reserve Beg

LOSS_CASE_RESERVE_END_BULK NUMBER(14,2) Loss Case Reserve End Bulk

LOSS_CASE_RESERVE_BEG_BULK NUMBER(14,2) Loss Case Reserve Beg Bulk

LOSS_IBNR_BEG NUMBER(14,2) Loss IBNR Beg

LOSS_IBNR_END NUMBER(14,2) Loss IBNR End

LOSS_INCURRED NUMBER(14,2) Loss Incurred

METHOD_OF_PAYMENT_CD VARCHAR2(10) Method of Payment Code

NAIC_CD VARCHAR2(5) NAIC Code

NUM_AUTO_POLICIES NUMBER(8) Number of Auto Policies

NUM_BUSINESS_POLICIES NUMBER(8) Number of Business Policies

NUM_HOME_POLICIES NUMBER(8) Number of Home Policies

OCCUPANCY_TYPE_CD VARCHAR2(10) Occupancy Type Code

OPT_OUT_FLG NUMBER(1) Opt Out Flag

OTHER_ACQUISITION_COSTS NUMBER(14,2) Other Acquisition Costs

PAYMENT_AMT NUMBER(14,2) Payment Amount

PAYMENT_DATE DATE Payment Date

PAYMENT_DUE_DATE DATE Payment Due Date

PAYMENT_PLAN_CD VARCHAR2(5) Payment Plan Code

PREM_EARNED_CEDED NUMBER(14,2) Premium Earned Ceded

PREM_EARNED_DIRECT NUMBER(14,2) Premium Earned Direct

Page 822: fe115trm

Property Casualty Insurance

A-40 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

PREM_EARNED_NET NUMBER(14,2) Premium Earned Net

PREM_FULL_TERM NUMBER(14,2) Premium Full Term

PREM_IN_FORCE NUMBER(14,2) Premium In Force

PREM_UNEARNED_CEDED_CUR_MONTH NUMBER(14,2) Premium Unearned Ceded Cur Month

PREM_UNEARNED_CEDED_PRI_MONTH NUMBER(14,2) Premium Unearned Ceded Pro Month

PREM_UNEARNED_CEDED_PRI_YEAR NUMBER(14,2) Premium Unearned Ceded Pro Year

PREM_UNEARNED_DIRECT_CUR_MONTH NUMBER(14,2) Premium Unearned Direct Cur Month

PREM_UNEARNED_DIRECT_PRI_MONTH NUMBER(14,2) Premium Unearned Direct Pro Month

PREM_UNEARNED_DIRECT_PRI_YEAR NUMBER(14,2) Premium Unearned Direct Pro Year

PREM_UNEARNED_NET_CUR_MONTH NUMBER(14,2) Premium Unearned Net Cur Month

PREM_UNEARNED_NET_PRI_MONTH NUMBER(14,2) Premium Unearned Net Pro Month

PREM_UNEARNED_NET_PRI_YEAR NUMBER(14,2) Premium Unearned Net Pro Year

PREM_WRITTEN_CEDED NUMBER(14,2) Premium Written Ceded

PREM_WRITTEN_CHANGE_AMT NUMBER(14,2) Premium Written Change Amount

PREM_WRITTEN_DIRECT NUMBER(14,2) Premium Written Direct

PREM_WRITTEN_NET NUMBER(14,2) Premium Written Net

POLICIES_IN_FORCE NUMBER(1) Policies In Force

POLICY_STATUS_PC_CD VARCHAR2(5) Policy Status PC Code

POLICY_TERM NUMBER(5) Policy Term

POLICY_TERM_MULT CHAR(1) Policy Term Multiplier

POSTAL_CODE VARCHAR2(11) Postal Code

RECORD_COUNT NUMBER(6) Record Count

REGIONAL_OFFICE_CD VARCHAR2(5) Regional Office Code

REINSTATEMENT_DATE DATE Reinstatement Date

REINSURANCE_PREMIUMS NUMBER(14,2) Reinsurance Premiums

REINSURANCE_RECOVERABLES NUMBER(14,2) Reinsurance Recoverable

RENEWAL_CHANNEL_CD VARCHAR2(5) Renewal Channel Code

SALVAGE_ANTICIPATED NUMBER(14,2) Salvage Anticipated

SALVAGE_RECOV_RECEIVED NUMBER(14,2) Salvage Recoverables Received

SELF_INSURED_RETENTION NUMBER(14,2) Self Insured Retention

SUBROGATION_ANTICIPATED NUMBER(14,2) Subrogation Anticipated

SUBROGATION_RECEIVED NUMBER(14,2) Subrogation Received

STATE_CD VARCHAR2(5) State Code

TAXES_LICENSE_FEES NUMBER(14,2) Taxes License Fees

TENURE NUMBER(3) Tenure

TERMINATION_DATE DATE Termination Date

TERMINATION_CD VARCHAR2(5) Termination Code

TERRITORY_CD VARCHAR2(5) Territory Code

UNALLOC_LOSS_ADJ_EXP NUMBER(14,2) Unallocated Loss Adj Expense

Page 823: fe115trm

Property Casualty Insurance

Insurance Data Model A-41

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Table: UMBRELLA_UNDERLYING_POLICIESColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

ULYING_POLICY_NUMBER VARCHAR2(25) Underlying Policy Number

ULYING_POLICY_TYPE_CD VARCHAR2(5) Underlying Policy Type Code

AS_OF_DATE DATE As of Date

ULYING_AGENT_CD VARCHAR2(5) Underlying Agent Code

ULYING_BI_PERSON_LIM_CD VARCHAR2(5) UL Bod Inj Person Limit Code

ULYING_BI_ACC_LIMIT_CD VARCHAR2(5) UL Bod Inj Accident Limit Code

ULYING_CARRIER_CD VARCHAR2(5) Underlying Carrier Code

ULYING_LIABILITY_LIM_CD VARCHAR2(5) Underlying Liability Limit Code

ULYING_MEDICAL_LIMIT_CD VARCHAR2(5) Underlying Medical Limit Code

ULYING_OTHER_LIMIT_CD VARCHAR2(5) Underlying Other Limit Code

ULYING_UM_PERSON_LIM_CD VARCHAR2(5) UL UM Person Limit Code

ULYING_UM_ACC_LIMIT_CD VARCHAR2(5) UL UM Accident Limit Code

ULYING_UIM_PERSON_LIM_CD VARCHAR2(5) UL UIM Person Limit Code

ULYING_UIM_ACC_LIMIT_CD VARCHAR2(5) UL UIM Accident Limit Code

Page 824: fe115trm

Life Insurance

A-42 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Life Insurance

Term Life Policies

OFSA_INSTRUMENT_ACCOUNT_CUST* IDENTITY_CODE* ID_NUMBER* INSTRUMENT_TYPE_CD* CUS_KEY

CUST# CUS_NO

TERM_LIFE_POLICIES# IDENTITY_CODE# ID_NUMBER* ORG_UNIT_ID* COMMON_COA_ID* GL_ACCOUNT_ID* COVERAGE_ID* AS_OF_DATE* ISO_CURRENCY_CD* POLICY_NUMBER* GROUP_PLAN_NUM* PRIMARY_PARTICIPANT_NUMBER

TERM_LIFE_OPTIONS_SUMMARY# IDENTITY_CODE# ID_NUMBER# OPTION_ID* ORG_UNIT_ID* COMMON_COA_ID* GL_ACCOUNT_ID* COVERAGE_ID* AS_OF_DATE* ISO_CURRENCY_CD* POLICY_NUMBER

TERM_LIFE_COVERAGE_OPTIONS# IDENTITY_CODE# ID_NUMBER# COVERAGE_ID# OPTION_ID* ORG_UNIT_ID* COMMON_COA_ID* GL_ACCOUNT_ID* AS_OF_DATE* ISO_CURRENCY_CD* POLICY_NUMBER

TERM_LIFE_COVERAGES# IDENTITY_CODE# ID_NUMBER# COVERAGE_ID* ORG_UNIT_ID* COMMON_COA_ID* GL_ACCOUNT_ID* AS_OF_DATE* ISO_CURRENCY_CD* POLICY_NUMBER* PRIMARY_PARTICIPANT_NUMBER

LIFE_PARTICIPANTS_POLICIES# IDENTITY_CODE# ID_NUMBER# PARTICIPANT_NUMBER# AS_OF_DATE# INSTRUMENT_TYPE_CD

LIFE_PARTICIPANTS# PARTICIPANT_NUMBER# AS_OF_DATE

GROUP_TERM_LIFE_POLICIES# IDENTITY_CODE# ID_NUMBER* ORG_UNIT_ID* COMMON_COA_ID* GL_ACCOUNT_ID* COVERAGE_ID* AS_OF_DATE* ISO_CURRENCY_CD

summarized option for

may be modified by

is a component of

may consist of

relates customer to term policies

may be owned by

may summarize to

group summary of

may summarize to

is summary of

is a condition of

may be modified by

relates policy to customers

may own

relates policy to life participants

is insured by

relates life participants to term policies

insures

Page 825: fe115trm

Life Insurance

Insurance Data Model A-43

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Table: GROUP_TERM_LIFE_POLICIESColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

ORG_UNIT_ID NUMBER(14) Organizational Unit ID

COMMON_COA_ID NUMBER(14) Common Chart of Accounts ID

GL_ACCOUNT_ID NUMBER(14) General Ledger Account ID

COVERAGE_ID NUMBER(14) Coverage ID

AS_OF_DATE DATE As of Date

ISO_CURRENCY_CD VARCHAR2(3) ISO Currency Code

GROUP_PLAN_NUMBER VARCHAR2(25) Group Plan Number

IDENTITY_CODE_CHG NUMBER(10) Identity Code Change

INSTRUMENT_TYPE_CD NUMBER(5) Instrument Type Code

ACQUISITION_COSTS NUMBER(14,2) Acquisition Costs

AGENT_CD VARCHAR2(5) Agent Code

ANNUAL_STATEMENT_CAT_CD VARCHAR2(5) Annual Statement Category Code

CANCELLATION_DATE DATE Cancellation Date

CARRIER_CD VARCHAR2(5) Carrier Code

COMMISSIONS NUMBER(14,2) Commissions

CONTINGENCIES NUMBER(14,2) Contingencies

COUNT_DEATH_PAID NUMBER(8) Count Death Paid

COUNT_DEATH_INCURRED NUMBER(8) Count Death Incurred

COUNT_ENDOWMENT_PAID NUMBER(8) Count Endowment Paid

COUNT_ENDOWMENT_INCURRED NUMBER(8) Count Endowment Incurred

COUNT_IN_FORCE_LIVES NUMBER(8) Count In Force Lives

COUNT_IN_FORCE_PLAN NUMBER(8) Count In Force Plan

COUNT_IN_FORCE_POLICY NUMBER(8) Count In Force Policy

COST_CENTER_CD VARCHAR2(5) Cost Center Code

DEATH_BENEFIT_AMT NUMBER(14,2) Death Benefit Amount

DEATH_BENEFITS_PAID NUMBER(14,2) Death Benefits Paid

DISTRIBUTION_CD VARCHAR2(5) Distribution Code

EFFECTIVE_DATE DATE Effective Date

ENDOWMENT_BENEFIT_AMT NUMBER(14,2) Endowment Benefit Amount

ENDOWMENT_BENEFIT_PAID NUMBER(14,2) Endowment Benefit Paid

EXPOSURES_WRITTEN NUMBER(8,4) Exposures Written

EXP_ALLOWANCE NUMBER(14,2) Expense Allowance

EXPIRATION_DATE DATE Expiration Date

FLAT_EXTRA_RATE_ATD NUMBER(14,2) Flat Extra Rate ATD

FLAT_EXTRA_RATE_ITD NUMBER(14,2) Flat Extra Rate ITD

FLAT_EXTRA_RATE_MONTH NUMBER(14,2) Flat Extra Rate Month

FULL_POLICY_PREMIUM NUMBER(14,2) Full Policy Premium

Page 826: fe115trm

Life Insurance

A-44 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

FULLY_COMM_PREM_ANNUALIZED NUMBER(14,2) Fully Comm Premium Annualized

GENERAL_EXP NUMBER(14,2) General Expense

HOLDFORM_CD NUMBER(5) Holdform Code

INSTALLMENT_FEE NUMBER(14,2) Installment Fee

ISSUE_DATE DATE Issue Date

LINE_OF_BUSINESS_CD NUMBER(5) Line of Business Code

MAINTENANCE_EXP NUMBER(14,2) Maintenance Expense

MEDICAL_EXAM_CD VARCHAR2(5) Medical Exam Code

MEDICAL_AND_INSPECTION NUMBER(14,2) Medical and Inspection

NON_COMM_PREM_ANNUALIZED NUMBER(14,2) Non-Comm Premium Annualized

PER_POLICY_RESERVE_BEG_SUM NUMBER(14,2) Per Policy Reserve Beg Sum

PER_POLICY_RESERVE_END_SUM NUMBER(14,2) Per Policy Reserve End Sum

PLAN_CD VARCHAR2(5) Plan Code

POLICY_STATUS_LF_CD NUMBER(5) Policy Status Life Code

POLICY_TERM NUMBER(5) Policy Term

POLICY_TERM_MULT CHAR(1) Policy Term Multiplier

PREM_ANNUAL_AMT_EXCL_OPTIONS NUMBER(14,2) Prem Annual Amt Excl Options

PREM_ANNUAL_AMT_INCL_OPTIONS NUMBER(14,2) Prem Annual Amt Incl Options

PREM_EARNED_CEDED NUMBER(14,2) Premium Earned Ceded

PREM_EARNED_DIRECT NUMBER(14,2) Premium Earned Direct

PREM_EARNED_ITD NUMBER(14,2) Premium Earned ITD

PREM_EARNED_MONTH NUMBER(14,2) Premium Earned Month

PREM_EARNED_NET NUMBER(14,2) Premium Earned Net

PREM_EARNED_SUBSTD_MONTH NUMBER(14,2) Premium Earned Substandard Month

PREM_EARNED_SUBSTD_ITD NUMBER(14,2) Premium Earned Substandard ITD

PREM_GROSS_AMT_ATD NUMBER(14,2) Premium Gross Amount ATD

PREM_GROSS_AMT_ITD NUMBER(14,2) Premium Gross Amount ITD

PREM_GROSS_AMT_MONTH NUMBER(14,2) Premium Gross Amount Month

PREM_GROSS_SUBSTD_AMT_ATD NUMBER(14,2) Prem Gross Substandard Amt ATD

PREM_GROSS_SUBSTD_AMT_ITD NUMBER(14,2) Prem Gross Substandard Amt ITD

PREM_GROSS_SUBSTD_AMT_MONTH NUMBER(14,2) Prem Gross Substandard Amt Month

PREM_IN_FORCE NUMBER(14,2) Premium In Force

PREM_UNEARNED_CEDED_CUR_MONTH NUMBER(14,2) Premium Unearned Ceded Cur Month

PREM_UNEARNED_CEDED_PRI_MONTH NUMBER(14,2) Premium Unearned Ceded Pri Month

PREM_UNEARNED_CEDED_PRI_YEAR NUMBER(14,2) Premium Unearned Ceded Pri Year

PREM_UNEARNED_DIRECT_CUR_MONTH NUMBER(14,2) Premium Unearned Direct Cur Month

PREM_UNEARNED_DIRECT_PRI_MONTH NUMBER(14,2) Premium Unearned Direct Pri Month

PREM_UNEARNED_DIRECT_PRI_YEAR NUMBER(14,2) Premium Unearned Direct Pri Year

PREM_UNEARNED_NET_CUR_MONTH NUMBER(14,2) Premium Unearned Net Cur Month

PREM_UNEARNED_NET_PRI_MONTH NUMBER(14,2) Premium Unearned Net Pri Month

PREM_UNEARNED_NET_PRI_YEAR NUMBER(14,2) Premium Unearned Net Pri Year

Page 827: fe115trm

Life Insurance

Insurance Data Model A-45

Oracle Proprietary, Confidential Information - Use Restricted by Contract

PREM_WRITTEN_CEDED NUMBER(14,2) Premium Written Ceded

PREM_WRITTEN_DIRECT NUMBER(14,2) Premium Written Direct

PREM_WRITTEN_NET NUMBER(14,2) Premium Written Net

PROFIT NUMBER(14,2) Profit

RECORD_COUNT NUMBER(6) Record Count

REGIONAL_OFFICE_CD VARCHAR2(5) Regional Office Code

REINSTATEMENT_DATE DATE Reinstatement Date

REINSURANCE_FLG NUMBER(1) Reinsurance Flag

REINSURANCE_PREMIUM NUMBER(14,2) Reinsurance Premium

TAXES_AND_FEES NUMBER(14,2) Taxes and Fees

TERMINATION_DATE DATE Termination Date

TERMINATION_CD VARCHAR2(5) Termination Code

Table: TERM_LIFE_COVERAGESColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

COVERAGE_ID NUMBER(14) Coverage ID

ORG_UNIT_ID NUMBER(14) Organizational Unit ID

COMMON_COA_ID NUMBER(14) Common Chart of Accounts ID

GL_ACCOUNT_ID NUMBER(14) General Ledger Account ID

AS_OF_DATE DATE As of Date

ISO_CURRENCY_CD VARCHAR2(3) ISO Currency Code

POLICY_NUMBER VARCHAR2(25) Policy Number

PRIMARY_PARTICIPANT_NUMBER NUMBER(10) Primary Participant Number

SECONDARY_PARTICIPANT_NUMBER NUMBER(10) Secondary Participant Number

IDENTITY_CODE_CHG NUMBER(10) Identity Code Change

INSTRUMENT_TYPE_CD NUMBER(5) Instrument Type Code

ALLOCATION_PREM_ITC NUMBER(14,2) Allocation Premium ITD

ACQUISITION_COSTS NUMBER(14,2) Acquisition Costs

BENEFIT_PERIOD_CD NUMBER(5) Benefit Period Code

CANCELLATION_DATE DATE Cancellation Date

CEASE_AGE NUMBER(3) Cease Age

COMMISSIONS NUMBER(14,2) Commissions

CONTINGENCIES NUMBER(14,2) Contingencies

CONVERSION_BASIS_CD VARCHAR2(5) Conversion Basis Code

CONVERSION_CREDIT NUMBER(14,2) Conversion Credit

CONVERSION_DATE DATE Conversion Date

CONVERSION_PRIVILEGE_FLG NUMBER(1) Conversion Privilege Flag

COUNT_DEATH_PAID NUMBER(8) Count Death Paid

COUNT_DEATH_INCURRED NUMBER(8) Count Death Incurred

Page 828: fe115trm

Life Insurance

A-46 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

COUNT_ENDOWMENT_PAID NUMBER(8) Count Endowment Paid

COUNT_ENDOWMENT_INCURRED NUMBER(8) Count Endowment Incurred

COUNT_IN_FORCE_LIVES NUMBER(8) Count In Force Lives

COUNT_IN_FORCE_POLICY NUMBER(8) Count In Force Policy

COVERAGE_STATUS_CD NUMBER(5) Coverage Status Code

COVERAGE_ISSUE_CD NUMBER(5) Coverage Issue Code

DEATH_BENEFIT_AMT NUMBER(14,2) Death Benefit Amount

DEATH_BENEFIT_DATE_PAID DATE Death Benefit Date Paid

DEATH_BENEFIT_OPTION_CD NUMBER(5) Death Benefit Option Code

DEATH_BENEFITS_PAID NUMBER(14,2) Death Benefits Paid

DURATION_DESIGN NUMBER(5) Duration Design

EFFECTIVE_DATE DATE Effective Date

ELIMINATION_PERIOD NUMBER(5) Elimination Period

ENDOWMENT_BENEFIT_AMT NUMBER(14,2) Endowment Benefit Amount

ENDOWMENT_BENEFIT_DATE_PAID NUMBER(14,2) Endowment Benefit Date Paid

ENDOWMENT_BENEFIT_PAID NUMBER(14,2) Endowment Benefit Paid

EQUIVALENT_AGE NUMBER(3) Equivalent Age

EXPOSURES_WRITTEN NUMBER(8,4) Exposures Written

EXP_ALLOWANCE NUMBER(14,2) Expense Allowance

EXPIRATION_DATE DATE Expiration Date

FLAT_EXTRA_RATE_ATD NUMBER(14,2) Flat Extra Rate ATD

FLAT_EXTRA_RATE_ITD NUMBER(14,2) Flat Extra Rate ITD

FLAT_EXTRA_RATE_MONTH NUMBER(14,2) Flat Extra Rate Month

FULL_COVERAGE_PREMIUM NUMBER(14,2) Full Coverage Premium

FULLY_COMM_PREM_ANNUALIZED NUMBER(14,2) Fully Comm Premium Annualized

GENERAL_EXP NUMBER(14,2) General Expense

GROSS_RATE NUMBER(14,2) Gross Rate

INIT_COVERAGE_AMT NUMBER(14,2) Initial Coverage Amount

ISSUE_AGE NUMBER(3) Issue Age

ISSUE_DATE DATE Issue Date

LIVES_TYPE_CD NUMBER(5) Lives Type Code

MAINTENANCE_EXP NUMBER(14,2) Maintenance Expense

MEDICAL_AND_INSPECTION NUMBER(14,2) Medical and Inspection

MORTALITY_CHARGE NUMBER(14,2) Mortality Charge

NET_AMT_OF_RISK NUMBER(14,2) Net Amount of Risk

NET_RATE NUMBER(14,2) Net Rate

NON_COMM_PREM_ANNUALIZED NUMBER(14,2) Non-Comm Premium Annualized

PAYMENT_AMT NUMBER(14,2) Payment Amount

PAYMENT_DATE DATE Payment Date

PAYMENT_DUE_DATE DATE Payment Due Date

PAYMENT_METHOD_CD NUMBER(5) Payment Method Code

Page 829: fe115trm

Life Insurance

Insurance Data Model A-47

Oracle Proprietary, Confidential Information - Use Restricted by Contract

PAYMENT_MODE_CD NUMBER(5) Payment Mode Code

PAYMENT_STRUCTURE_CD NUMBER(5) Payment Structure Code

PER_POLICY_RESERVE_BEG NUMBER(14,2) Per Policy Reserve Beg

PER_POLICY_RESERVE_END NUMBER(14,2) Per Policy Reserve End

POLICY_STATUS_LF_CD NUMBER(5) Policy Status Life Code

POLICY_TERM NUMBER(5) Policy Term

POLICY_TERM_MULT CHAR(1) Policy Term Multiplier

PERM_FLAT_EXTRA_AMT NUMBER(14,2) Permanent Flat Extra Amount

PERM_PERCENTAGE_LOADING NUMBER(8,4) Permanent Percentage Loading

PERM_TABLE_RATING_CD NUMBER(5) Permanent Table Rating Code

PREM_ANNUAL_AMT_EXCL_OPTIONS NUMBER(14,2) Prem Annual Amt Excl Options

PREM_ANNUAL_AMT_INCL_OPTIONS NUMBER(14,2) Prem Annual Amt Incl Options

PREM_DURATION_DATE DATE Premium Duration Date

PREM_EARNED_CEDED NUMBER(14,2) Premium Earned Ceded

PREM_EARNED_ITD NUMBER(14,2) Premium Earned ITD

PREM_EARNED_DIRECT NUMBER(14,2) Premium Earned Direct

PREM_EARNED_MONTH NUMBER(14,2) Premium Earned Month

PREM_EARNED_NET NUMBER(14,2) Premium Earned Net

PREM_EARNED_SUBSTD_MONTH NUMBER(14,2) Premium Earned Substandard Month

PREM_EARNED_SUBSTD_ITD NUMBER(14,2) Premium Earned Substandard ITD

PREM_FREEZE_DATE DATE Premium Freeze Date

PREM_GROSS_AMT_ATD NUMBER(14,2) Premium Gross Amount ATD

PREM_GROSS_AMT_ITD NUMBER(14,2) Premium Gross Amount ITD

PREM_GROSS_AMT_MONTH NUMBER(14,2) Premium Gross Amount Month

PREM_GROSS_SUBSTD_AMT_ATD NUMBER(14,2) Prem Gross Substandard Amt ATD

PREM_GROSS_SUBSTD_AMT_ITD NUMBER(14,2) Prem Gross Substandard Amt ITD

PREM_GROSS_SUBSTD_AMT_MONTH NUMBER(14,2) Prem Gross Substandard Amt Month

PREM_IN_FORCE NUMBER(14,2) Premium In Force

PREM_SOURCE_TYPE_CD NUMBER(5) Premium Source Type Code

PREM_UNEARNED_CEDED_CUR_MONTH NUMBER(14,2) Premium Unearned Ceded Cur Month

PREM_UNEARNED_CEDED_PRI_MONTH NUMBER(14,2) Premium Unearned Ceded Pri Month

PREM_UNEARNED_CEDED_PRI_YEAR NUMBER(14,2) Premium Unearned Ceded Pri Year

PREM_UNEARNED_DIRECT_CUR_MONTH NUMBER(14,2) Premium Unearned Direct Cur Month

PREM_UNEARNED_DIRECT_PRI_MONTH NUMBER(14,2) Premium Unearned Direct Pri Month

PREM_UNEARNED_DIRECT_PRI_YEAR NUMBER(14,2) Premium Unearned Direct Pri Year

PREM_UNEARNED_NET_CUR_MONTH NUMBER(14,2) Premium Unearned Net Cur Month

PREM_UNEARNED_NET_PRI_MONTH NUMBER(14,2) Premium Unearned Net Pri Month

PREM_UNEARNED_NET_PRI_YEAR NUMBER(14,2) Premium Unearned Net Pri Year

PREM_WRITTEN_CEDED NUMBER(14,2) Premium Written Ceded

PREM_WRITTEN_DIRECT NUMBER(14,2) Premium Written Direct

PREM_WRITTEN_NET NUMBER(14,2) Premium Written Net

Page 830: fe115trm

Life Insurance

A-48 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

PREMIUMS_PAID_UP_TO_AGE NUMBER(3) Premiums Paid Up to Age

PREMIUMS_PAID_UP_TO_YEARS NUMBER(3) Premiums Paid Up to Years

PROFIT NUMBER(14,2) Profit

RECORD_COUNT NUMBER(6) Record Count

REENTRY_POLICY_TYPE_CD VARCHAR2(5) Reentry Policy Type Code

REINSTATEMENT_DATE DATE Reinstatement Date

RENEWABLE_FLG NUMBER(1) Renewable Flag

RENEWABLE_PERIOD NUMBER(5) Renewable Period

TAXES_AND_FEES NUMBER(14,2) Taxes and Fees

TEMP_FLAT_END_DATE DATE Temp Flat End Date

TEMP_FLAT_EXTRA_AMT NUMBER(14,2) Temp Flat Extra Amount

TEMP_PERCENTAGE_LOADING NUMBER(8,4) Temp Percentage Loading

TEMP_TABLE_RATING_CD NUMBER(5) Temp Table Rating Code

TEMP_TABLE_RATING_END_DATE DATE Temp Table Rating End Date

TERMINATION_DATE DATE Termination Date

Table: TERM_LIFE_COVERAGE_OPTIONSColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

COVERAGE_ID NUMBER(14) Coverage ID

OPTION_ID NUMBER(14) Option ID

ORG_UNIT_ID NUMBER(14) Organizational Unit ID

COMMON_COA_ID NUMBER(14) Common Chart of Accounts ID

GL_ACCOUNT_ID NUMBER(14) General Ledger Account ID

AS_OF_DATE DATE As of Date

ISO_CURRENCY_CD VARCHAR2(3) ISO Currency Code

POLICY_NUMBER VARCHAR2(25) Policy Number

IDENTITY_CODE_CHG NUMBER(10) Identity Code Change

INSTRUMENT_TYPE_CD NUMBER(5) Instrument Type Code

ACQUISITION_COSTS NUMBER(14,2) Acquisition Costs

BENEFIT_PERIOD_CD NUMBER(5) Benefit Period Code

CANCELLATION_DATE DATE Cancellation Date

CEASE_AGE NUMBER(3) Cease Age

COMMISSIONS NUMBER(14,2) Commissions

CONTINGENCIES NUMBER(14,2) Contingencies

COVERAGE_ISSUE_CD NUMBER(5) Coverage Issue Code

CVRG_OPTION_STATUS_CD NUMBER(5) Coverage Option Status Code

DEATH_BENEFIT_AMT NUMBER(14,2) Death Benefit Amount

DEATH_BENEFIT_DATE_PAID DATE Death Benefit Date Paid

DEATH_BENEFIT_OPTION_CD NUMBER(5) Death Benefit Option Code

Page 831: fe115trm

Life Insurance

Insurance Data Model A-49

Oracle Proprietary, Confidential Information - Use Restricted by Contract

DEATH_BENEFITS_PAID NUMBER(14,2) Death Benefits Paid

DURATION_DESIGN NUMBER(5) Duration Design

EFFECTIVE_DATE DATE Effective Date

ELIMINATION_PERIOD NUMBER(5) Elimination Period

ENDOWMENT_BENEFIT_AMT NUMBER(14,2) Endowment Benefit Amount

ENDOWMENT_BENEFIT_DATE_PAID NUMBER(14,2) Endowment Benefit Date Paid

ENDOWMENT_BENEFIT_PAID NUMBER(14,2) Endowment Benefit Paid

EQUIVALENT_AGE NUMBER(3) Equivalent Age

EXERCISE_DATE DATE Exercise Date

EXPOSURES_WRITTEN NUMBER(8,4) Exposures Written

EXP_ALLOWANCE NUMBER(14,2) Expense Allowance

EXPIRATION_DATE DATE Expiration Date

FLAT_EXTRA_RATE_ATD NUMBER(14,2) Flat Extra Rate ATD

FLAT_EXTRA_RATE_ITD NUMBER(14,2) Flat Extra Rate ITD

FLAT_EXTRA_RATE_MONTH NUMBER(14,2) Flat Extra Rate Month

FULL_OPTION_PREMIUM NUMBER(14,2) Full Option Premium

FULLY_COMM_PREM_ANNUALIZED NUMBER(14,2) Fully Comm Premium Annualized

GENERAL_EXP NUMBER(14,2) General Expense

GROSS_RATE NUMBER(14,2) Gross Rate

ISSUE_AGE NUMBER(3) Issue Age

ISSUE_DATE DATE Issue Date

MAINTENANCE_EXP NUMBER(14,2) Maintenance Expense

MEDICAL_AND_INSPECTION NUMBER(14,2) Medical and Inspection

NET_RATE NUMBER(14,2) Net Rate

NON_COMM_PREM_ANNUALIZED NUMBER(14,2) Non-Comm Premium Annualized

OPTION_AMT NUMBER(14,2) Option Amount

OPTION_TERM NUMBER(5) Option Term

OPTION_TERM_MULT CHAR(1) Option Term Multiplier

PAYMENT_AMT NUMBER(14,2) Payment Amount

PAYMENT_DATE DATE Payment Date

PAYMENT_DUE_DATE DATE Payment Due Date

PAYMENT_METHOD_CD NUMBER(5) Payment Method Code

PAYMENT_MODE_CD NUMBER(5) Payment Mode Code

PERM_FLAT_EXTRA_AMT NUMBER(14,2) Permanent Flat Extra Amount

PERM_PERCENTAGE_LOADING NUMBER(8,4) Permanent Percentage Loading

PERM_TABLE_RATING_CD NUMBER(5) Permanent Table Rating Code

PREM_ANNUAL_AMT NUMBER(14,2) Premium Annual Amount

PREM_DURATION_DATE DATE Premium Duration Date

PREM_EARNED_CEDED NUMBER(14,2) Premium Earned Ceded

PREM_EARNED_ITD NUMBER(14,2) Premium Earned ITD

PREM_EARNED_DIRECT NUMBER(14,2) Premium Earned Direct

Page 832: fe115trm

Life Insurance

A-50 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

PREM_EARNED_MONTH NUMBER(14,2) Premium Earned Month

PREM_EARNED_NET NUMBER(14,2) Premium Earned Net

PREM_EARNED_SUBSTD_MONTH NUMBER(14,2) Premium Earned Substandard Month

PREM_EARNED_SUBSTD_ITD NUMBER(14,2) Premium Earned Substandard ITD

PREM_FREEZE_DATE DATE Premium Freeze Date

PREM_GROSS_AMT_ATD NUMBER(14,2) Premium Gross Amount ATD

PREM_GROSS_AMT_ITD NUMBER(14,2) Premium Gross Amount ITD

PREM_GROSS_AMT_MONTH NUMBER(14,2) Premium Gross Amount Month

PREM_GROSS_SUBSTD_AMT_ATD NUMBER(14,2) Prem Gross Substandard Amt ATD

PREM_GROSS_SUBSTD_AMT_ITD NUMBER(14,2) Prem Gross Substandard Amt ITD

PREM_GROSS_SUBSTD_AMT_MONTH NUMBER(14,2) Prem Gross Substandard Amt Month

PREM_IN_FORCE NUMBER(14,2) Premium In Force

PREM_SOURCE_TYPE_CD NUMBER(5) Premium Source Type Code

PREM_UNEARNED_CEDED_CUR_MONTH NUMBER(14,2) Premium Unearned Ceded Cur Month

PREM_UNEARNED_CEDED_PRI_MONTH NUMBER(14,2) Premium Unearned Ceded Pri Month

PREM_UNEARNED_CEDED_PRI_YEAR NUMBER(14,2) Premium Unearned Ceded Pri Year

PREM_UNEARNED_DIRECT_CUR_MONTH NUMBER(14,2) Premium Unearned Direct Cur Month

PREM_UNEARNED_DIRECT_PRI_MONTH NUMBER(14,2) Premium Unearned Direct Pri Month

PREM_UNEARNED_DIRECT_PRI_YEAR NUMBER(14,2) Premium Unearned Direct Pri Year

PREM_UNEARNED_NET_CUR_MONTH NUMBER(14,2) Premium Unearned Net Cur Month

PREM_UNEARNED_NET_PRI_MONTH NUMBER(14,2) Premium Unearned Net Pri Month

PREM_UNEARNED_NET_PRI_YEAR NUMBER(14,2) Premium Unearned Net Pri Year

PREM_WRITTEN_CEDED NUMBER(14,2) Premium Written Ceded

PREM_WRITTEN_DIRECT NUMBER(14,2) Premium Written Direct

PREM_WRITTEN_NET NUMBER(14,2) Premium Written Net

PROFIT NUMBER(14,2) Profit

RECORD_COUNT NUMBER(6) Record Count

REINSTATEMENT_DATE DATE Reinstatement Date

RENEWABLE_FLG NUMBER(1) Renewable Flag

TAXES_AND_FEES NUMBER(14,2) Taxes and Fees

TEMP_FLAT_END_DATE DATE Temp Flat End Date

TEMP_FLAT_EXTRA_AMT NUMBER(14,2) Temp Flat Extra Amount

TEMP_PERCENTAGE_LOADING NUMBER(8,4) Temp Percentage Loading

TEMP_TABLE_RATING_CD NUMBER(5) Temp Table Rating Code

TEMP_TABLE_RATING_END_DATE DATE Temp Table Rating End Date

TERMINATION_DATE DATE Termination Date

UNDERWRITING_CLASS_CD NUMBER(5) Underwriting Class Code

Page 833: fe115trm

Life Insurance

Insurance Data Model A-51

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Table: TERM_LIFE_OPTIONS_SUMMARYColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

OPTION_ID NUMBER(14) Option ID

ORG_UNIT_ID NUMBER(14) Organizational Unit ID

COMMON_COA_ID NUMBER(14) Common Chart of Accounts ID

GL_ACCOUNT_ID NUMBER(14) General Ledger Account ID

COVERAGE_ID NUMBER(14) Coverage ID

AS_OF_DATE DATE As of Date

ISO_CURRENCY_CD VARCHAR2(3) ISO Currency Code

POLICY_NUMBER VARCHAR2(25) Policy Number

IDENTITY_CODE_CHG NUMBER(10) Identity Code Change

INSTRUMENT_TYPE_CD NUMBER(5) Instrument Type Code

ACQUISITION_COSTS NUMBER(14,2) Acquisition Costs

COMMISSIONS NUMBER(14,2) Commissions

CONTINGENCIES NUMBER(14,2) Contingencies

DEATH_BENEFIT_AMT NUMBER(14,2) Death Benefit Amount

DEATH_BENEFITS_PAID NUMBER(14,2) Death Benefits Paid

ENDOWMENT_BENEFIT_AMT NUMBER(14,2) Endowment Benefit Amount

ENDOWMENT_BENEFIT_PAID NUMBER(14,2) Endowment Benefit Paid

EXPOSURES_WRITTEN NUMBER(8,4) Exposures Written

EXP_ALLOWANCE NUMBER(14,2) Expense Allowance

FULL_OPTION_PREMIUM NUMBER(14,2) Full Option Premium

FULLY_COMM_PREM_ANNUALIZED NUMBER(14,2) Fully Comm Premium Annualized

GENERAL_EXP NUMBER(14,2) General Expense

MAINTENANCE_EXP NUMBER(14,2) Maintenance Expense

MEDICAL_AND_INSPECTION NUMBER(14,2) Medical and Inspection

NON_COMM_PREM_ANNUALIZED NUMBER(14,2) Non-Comm Premium Annualized

OPTION_AMT NUMBER(14,2) Option Amount

PREM_ANNUAL_AMT NUMBER(14,2) Premium Annual Amount

PREM_EARNED_CEDED NUMBER(14,2) Premium Earned Ceded

PREM_EARNED_ITD NUMBER(14,2) Premium Earned ITD

PREM_EARNED_DIRECT NUMBER(14,2) Premium Earned Direct

PREM_EARNED_MONTH NUMBER(14,2) Premium Earned Month

PREM_EARNED_NET NUMBER(14,2) Premium Earned Net

PREM_EARNED_SUBSTD_MONTH NUMBER(14,2) Premium Earned Substandard Month

PREM_EARNED_SUBSTD_ITD NUMBER(14,2) Premium Earned Substandard ITD

PREM_GROSS_AMT_ATD NUMBER(14,2) Premium Gross Amount ATD

PREM_GROSS_AMT_ITD NUMBER(14,2) Premium Gross Amount ITD

PREM_GROSS_AMT_MONTH NUMBER(14,2) Premium Gross Amount Month

Page 834: fe115trm

Life Insurance

A-52 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

PREM_GROSS_SUBSTD_AMT_ATD NUMBER(14,2) Prem Gross Substandard Amt ATD

PREM_GROSS_SUBSTD_AMT_ITD NUMBER(14,2) Prem Gross Substandard Amt ITD

PREM_GROSS_SUBSTD_AMT_MONTH NUMBER(14,2) Prem Gross Substandard Amt Month

PREM_IN_FORCE NUMBER(14,2) Premium In Force

PREM_UNEARNED_CEDED_CUR_MONTH NUMBER(14,2) Premium Unearned Ceded Cur Month

PREM_UNEARNED_CEDED_PRI_MONTH NUMBER(14,2) Premium Unearned Ceded Pri Month

PREM_UNEARNED_CEDED_PRI_YEAR NUMBER(14,2) Premium Unearned Ceded Pri Year

PREM_UNEARNED_DIRECT_CUR_MONTH NUMBER(14,2) Premium Unearned Direct Cur Month

PREM_UNEARNED_DIRECT_PRI_MONTH NUMBER(14,2) Premium Unearned Direct Pri Month

PREM_UNEARNED_DIRECT_PRI_YEAR NUMBER(14,2) Premium Unearned Direct Pri Year

PREM_UNEARNED_NET_CUR_MONTH NUMBER(14,2) Premium Unearned Net Cur Month

PREM_UNEARNED_NET_PRI_MONTH NUMBER(14,2) Premium Unearned Net Pri Month

PREM_UNEARNED_NET_PRI_YEAR NUMBER(14,2) Premium Unearned Net Pri Year

PREM_WRITTEN_CEDED NUMBER(14,2) Premium Written Ceded

PREM_WRITTEN_DIRECT NUMBER(14,2) Premium Written Direct

PREM_WRITTEN_NET NUMBER(14,2) Premium Written Net

PROFIT NUMBER(14,2) Profit

RECORD_COUNT NUMBER(6) Record Count

TAXES_AND_FEES NUMBER(14,2) Taxes and Fees

TERMINATION_DATE DATE Termination Date

Table: TERM_LIFE_POLICIESColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

ORG_UNIT_ID NUMBER(14) Organizational Unit ID

COMMON_COA_ID NUMBER(14) Common Chart of Accounts ID

GL_ACCOUNT_ID NUMBER(14) General Ledger Account ID

COVERAGE_ID NUMBER(14) Coverage ID

AS_OF_DATE DATE As of Date

ISO_CURRENCY_CD VARCHAR2(3) ISO Currency Code

POLICY_NUMBER VARCHAR2(25) Policy Number

GROUP_PLAN_NUM NUMBER(25) Group Plan Number

PRIMARY_PARTICIPANT_NUMBER NUMBER(10) Primary Participant Number

SECONDARY_PARTICIPANT_NUMBER NUMBER(10) Secondary Participant Number

GROUP_PLAN_NUMBER VARCHAR2(25) Group Plan Number

IDENTITY_CODE_CHG NUMBER(10) Identity Code Change

INSTRUMENT_TYPE_CD NUMBER(5) Instrument Type Code

ACQUISITION_COSTS NUMBER(14,2) Acquisition Costs

AGENT_CD VARCHAR2(5) Agent Code

ANNUAL_STATEMENT_CAT_CD VARCHAR2(5) Annual Statement Category Code

Page 835: fe115trm

Life Insurance

Insurance Data Model A-53

Oracle Proprietary, Confidential Information - Use Restricted by Contract

BENEFIT_PAYMENT_CD VARCHAR2(5) Benefit Payment Code

BRANCH_CODE VARCHAR2(10) Branch Code

CANCELLATION_DATE DATE Cancellation Date

CARRIER_CD VARCHAR2(5) Carrier Code

CAUSE_OF_DEATH_CD VARCHAR2(5) Cause of Death Code

CLAIM_STATUS_CD NUMBER(5) Claim Status Code

COMMISSIONS NUMBER(14,2) Commissions

CONTINGENCIES NUMBER(14,2) Contingencies

CONVERSION_BASIS_CD VARCHAR2(5) Conversion Basis Code

CONVERSION_CREDIT NUMBER(14,2) Conversion Credit

CONVERSION_DATE DATE Conversion Date

CONVERSION_PRIVILEGE_FLG NUMBER(1) Conversion Privilege Flag

COUNT_DEATH_PAID NUMBER(8) Count Death Paid

COUNT_DEATH_INCURRED NUMBER(8) Count Death Incurred

COUNT_ENDOWMENT_PAID NUMBER(8) Count Endowment Paid

COUNT_ENDOWMENT_INCURRED NUMBER(8) Count Endowment Incurred

COUNT_IN_FORCE_LIVES NUMBER(8) Count In Force Lives

COUNT_IN_FORCE_POLICY NUMBER(8) Count In Force Policy

COST_CENTER_CD VARCHAR2(5) Cost Center Code

DEATH_BENEFIT_AMT NUMBER(14,2) Death Benefit Amount

DEATH_BENEFIT_DATE_PAID DATE Death Benefit Date Paid

DEATH_BENEFITS_PAID NUMBER(14,2) Death Benefits Paid

DEATH_DATE DATE Death Date

DEATH_REPORT_DATE DATE Death Report Date

DISTRIBUTION_CD VARCHAR2(5) Distribution Code

DURATION_DESIGN NUMBER(5) Duration Design

EFFECTIVE_DATE DATE Effective Date

ENDOWMENT_BENEFIT_AMT NUMBER(14,2) Endowment Benefit Amount

ENDOWMENT_BENEFIT_DATE_PAID NUMBER(14,2) Endowment Benefit Date Paid

ENDOWMENT_BENEFIT_PAID NUMBER(14,2) Endowment Benefit Paid

ESTIMATED_MORTALITY_DATE DATE Estimated Mortality Date

EXPOSURES_WRITTEN NUMBER(8,4) Exposures Written

EXP_ALLOWANCE NUMBER(14,2) Expense Allowance

EXPIRATION_DATE DATE Expiration Date

FACE_AMT NUMBER(14,2) Face Amount

FLAT_EXTRA_RATE_ATD NUMBER(14,2) Flat Extra Rate ATD

FLAT_EXTRA_RATE_ITD NUMBER(14,2) Flat Extra Rate ITD

FLAT_EXTRA_RATE_MONTH NUMBER(14,2) Flat Extra Rate Month

FULL_POLICY_PREMIUM NUMBER(14,2) Full Policy Premium

FULLY_COMM_PREM_ANNUALIZED NUMBER(14,2) Fully Comm Premium Annualized

GENERAL_EXP NUMBER(14,2) General Expense

Page 836: fe115trm

Life Insurance

A-54 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

GROSS_RATE NUMBER(14,2) Gross Rate

GROUP_PLAN_FLG NUMBER(1) Group Plan Flag

GUARANTEE_ISSUE_FLG NUMBER(1) Guarantee Issue Flag

GUARANTEE_PERIOD_AGE NUMBER(3) Guarantee Period Age

GUARANTEE_PERIOD_DATE DATE Guarantee Period Date

INSTALLMENT_FEE NUMBER(14,2) Installment Fee

ISSUE_DATE DATE Issue Date

ISSUE_STATE_CD NUMBER(5) Issue State Code

ISSUE_NATION_CD NUMBER(5) Issue Nation Code

ISSUE_TYPE_CD NUMBER(5) Issue Type Code

LINE_OF_BUSINESS_CD NUMBER(5) Line of Business Code

MAINTENANCE_EXP NUMBER(14,2) Maintenance Expense

MEDICAL_EXAM_CD VARCHAR2(5) Medical Exam Code

MEDICAL_AND_INSPECTION NUMBER(14,2) Medical and Inspection

MORTALITY_CHARGE NUMBER(14,2) Mortality Charge

NAIC_CD VARCHAR2(5) NAIC Code

NET_AMT_OF_RISK NUMBER(14,2) Net Amount of Risk

NET_RATE NUMBER(14,2) Net Rate

NON_COMM_PREM_ANNUALIZED NUMBER(14,2) Non-Comm Premium Annualized

NUM_BENEFICIARIES NUMBER(3) Number Beneficiaries

PAYMENT_AMT NUMBER(14,2) Payment Amount

PAYMENT_DATE DATE Payment Date

PAYMENT_DUE_DATE DATE Payment Due Date

PAYMENT_METHOD_CD NUMBER(5) Payment Method Code

PAYMENT_MODE_CD NUMBER(5) Payment Mode Code

PER_POLICY_RESERVE_BEG NUMBER(14,2) Per Policy Reserve Beg

PER_POLICY_RESERVE_END NUMBER(14,2) Per Policy Reserve End

PLAN_CD VARCHAR2(5) Plan Code

POLICY_AGE NUMBER(8) Policy Age

POLICY_STATUS_LF_CD NUMBER(5) Policy Status Life Code

POLICY_TERM NUMBER(5) Policy Term

POLICY_TERM_MULT CHAR(1) Policy Term Multiplier

POSTAL_CODE_ISSUE VARCHAR2(11) Postal Code Issue

POSTAL_CODE_RESIDENCE VARCHAR2(11) Postal Code Residence

PREM_ANNUAL_AMT_EXCL_OPTIONS NUMBER(14,2) Prem Annual Amt Excl Options

PREM_ANNUAL_AMT_INCL_OPTIONS NUMBER(14,2) Prem Annual Amt Incl Options

PREM_DURATION_DATE DATE Premium Duration Date

PREM_EARNED_CEDED NUMBER(14,2) Premium Earned Ceded

PREM_EARNED_DIRECT NUMBER(14,2) Premium Earned Direct

PREM_EARNED_ITD NUMBER(14,2) Premium Earned ITD

PREM_EARNED_MONTH NUMBER(14,2) Premium Earned Month

Page 837: fe115trm

Life Insurance

Insurance Data Model A-55

Oracle Proprietary, Confidential Information - Use Restricted by Contract

PREM_EARNED_NET NUMBER(14,2) Premium Earned Net

PREM_EARNED_SUBSTD_MONTH NUMBER(14,2) Premium Earned Substandard Month

PREM_EARNED_SUBSTD_ITD NUMBER(14,2) Premium Earned Substandard ITD

PREM_GROSS_AMT_ATD NUMBER(14,2) Premium Gross Amount ATD

PREM_GROSS_AMT_ITD NUMBER(14,2) Premium Gross Amount ITD

PREM_GROSS_AMT_MONTH NUMBER(14,2) Premium Gross Amount Month

PREM_GROSS_SUBSTD_AMT_ATD NUMBER(14,2) Prem Gross Substandard Amt ATD

PREM_GROSS_SUBSTD_AMT_ITD NUMBER(14,2) Prem Gross Substandard Amt ITD

PREM_GROSS_SUBSTD_AMT_MONTH NUMBER(14,2) Prem Gross Substandard Amt Month

PREM_IN_FORCE NUMBER(14,2) Premium In Force

PREM_OFFSET_METHOD_CD NUMBER(5) Premium Offset Method Code

PREM_UNEARNED_CEDED_CUR_MONTH NUMBER(14,2) Premium Unearned Ceded Cur Month

PREM_UNEARNED_CEDED_PRI_MONTH NUMBER(14,2) Premium Unearned Ceded Pri Month

PREM_UNEARNED_CEDED_PRI_YEAR NUMBER(14,2) Premium Unearned Ceded Pri Year

PREM_UNEARNED_DIRECT_CUR_MONTH NUMBER(14,2) Premium Unearned Direct Cur Month

PREM_UNEARNED_DIRECT_PRI_MONTH NUMBER(14,2) Premium Unearned Direct Pri Month

PREM_UNEARNED_DIRECT_PRI_YEAR NUMBER(14,2) Premium Unearned Direct Pri Year

PREM_UNEARNED_NET_CUR_MONTH NUMBER(14,2) Premium Unearned Net Cur Month

PREM_UNEARNED_NET_PRI_MONTH NUMBER(14,2) Premium Unearned Net Pri Month

PREM_UNEARNED_NET_PRI_YEAR NUMBER(14,2) Premium Unearned Net Pri Year

PREM_WRITTEN_CEDED NUMBER(14,2) Premium Written Ceded

PREM_WRITTEN_DIRECT NUMBER(14,2) Premium Written Direct

PREM_WRITTEN_NET NUMBER(14,2) Premium Written Net

PROFIT NUMBER(14,2) Profit

RECORD_COUNT NUMBER(6) Record Count

REDETERMINATION_CAT_CD VARCHAR2(5) Redetermination Category Code

REDETERMINATION_LAST_DATE DATE Redetermination Last Date

REDETERMINATION_NEXT_DATE DATE Redetermination Next Date

REDETERMINATION_PERIOD NUMBER(5) Redetermination Period

REENTRY_POLICY_TYPE_CD VARCHAR2(5) Reentry Policy Type Code

REGIONAL_OFFICE_CD VARCHAR2(5) Regional Office Code

REINSTATEMENT_DATE DATE Reinstatement Date

REINSURANCE_FLG NUMBER(1) Reinsurance Flag

REINSURANCE_PREMIUM NUMBER(14,2) Reinsurance Premium

RENEWABLE_FLG NUMBER(1) Renewable Flag

RENEWABLE_PERIOD NUMBER(5) Renewable Period

RESIDENCE_STATE_CD NUMBER(5) Residence State Code

STATEMENT_BASIS_CD NUMBER(5) Statement Basis Code

TAXES_AND_FEES NUMBER(14,2) Taxes and Fees

TERRITORY_CD VARCHAR2(5) Territory Code

TERMINATION_DATE DATE Termination Date

Page 838: fe115trm

Life Insurance

A-56 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

TERMINATION_CD VARCHAR2(5) Termination Code

UNDERWRITING_CATEGORY_CD VARCHAR2(5) Underwriting Category Code

Whole/Universal Life Policies

OFSA_INSTRUMENT_ACCOUNT_CUST* IDENTITY_CODE* ID_NUMBER* INSTRUMENT_TYPE_CD* CUS_KEY

CUST# CUS_NO

WHOLE_UL_OPTIONS_SUMMARY# IDENTITY_CODE# ID_NUMBER# OPTION_ID* ORG_UNIT_ID* COMMON_COA_ID* GL_ACCOUNT_ID* COVERAGE_ID* AS_OF_DATE* ISO_CURRENCY_CD* POLICY_NUMBER

WHOLE_UL_LOANS# IDENTITY_CODE# ID_NUMBER# LOAN_ACCOUNT_NUMBER* AS_OF_DATE* POLICY_NUMBER

WHOLE_UL_LIFE_POLICIES# IDENTITY_CODE# ID_NUMBER* ORG_UNIT_ID* COMMON_COA_ID* GL_ACCOUNT_ID* COVERAGE_ID* AS_OF_DATE* ISO_CURRENCY_CD* POLICY_NUMBER* GROUP_PLAN_NUM* PRIMARY_PARTICIPANT_NUMBER

WHOLE_UL_INVEST_SUB_ACCOUNTS# IDENTITY_CODE# ID_NUMBER# INVESTMENT_ACCOUNT_NUMBER# INVESTMENT_SUBACCT_NUMBER* AS_OF_DATE

WHOLE_UL_INVESTMENTS# IDENTITY_CODE# ID_NUMBER# INVESTMENT_ACCOUNT_NUMBER* AS_OF_DATE* POLICY_NUMBER

WHOLE_UL_COVERAGE_OPTIONS# IDENTITY_CODE# ID_NUMBER# COVERAGE_ID# OPTION_ID* ORG_UNIT_ID* COMMON_COA_ID* GL_ACCOUNT_ID* AS_OF_DATE* ISO_CURRENCY_CD* POLICY_NUMBER

WHOLE_UL_COVERAGES# IDENTITY_CODE# ID_NUMBER# COVERAGE_ID* ORG_UNIT_ID* COMMON_COA_ID* GL_ACCOUNT_ID* AS_OF_DATE* ISO_CURRENCY_CD* POLICY_NUMBER* PRIMARY_PARTICIPANT_NUMBER

LIFE_PARTICIPANTS_POLICIES# IDENTITY_CODE# ID_NUMBER# PARTICIPANT_NUMBER# AS_OF_DATE# INSTRUMENT_TYPE_CD

LIFE_PARTICIPANTS# PARTICIPANT_NUMBER# AS_OF_DATE

GROUP_WHOLE_UL_POLICIES# IDENTITY_CODE# ID_NUMBER* ORG_UNIT_ID* COMMON_COA_ID* GL_ACCOUNT_ID* COVERAGE_ID* AS_OF_DATE* ISO_CURRENCY_CD

belongs to

may have

relates policy to life participants

is insured by

summarized option for

may be modified by

may summarize to

group summary of

belongs to

may have

is a component of

consists of

is a component of

may consist of

may summarize to

is summary of

is a condition of

may be modified by

relates policy to customers

may own

relates customer to whole/UL policies

may be owned by

relates life participants to whole/UL policies

insures

Page 839: fe115trm

Life Insurance

Insurance Data Model A-57

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Table: GROUP_WHOLE_UL_POLICIESColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

ORG_UNIT_ID NUMBER(14) Organizational Unit ID

COMMON_COA_ID NUMBER(14) Common Chart of Accounts ID

GL_ACCOUNT_ID NUMBER(14) General Ledger Account ID

COVERAGE_ID NUMBER(14) Coverage ID

AS_OF_DATE DATE As of Date

ISO_CURRENCY_CD VARCHAR2(3) ISO Currency Code

GROUP_PLAN_NUMBER VARCHAR2(25) Group Plan Number

IDENTITY_CODE_CHG NUMBER(10) Identity Code Change

INSTRUMENT_TYPE_CD NUMBER(5) Instrument Type Code

ACQUISITION_COSTS NUMBER(14,2) Acquisition Costs

AGENT_CD VARCHAR2(5) Agent Code

ANNUAL_STATEMENT_CAT_CD VARCHAR2(5) Annual Statement Category Code

BRANCH_CODE VARCHAR2(10) Branch Code

CANCELLATION_DATE DATE Cancellation Date

CARRIER_CD VARCHAR2(5) Carrier Code

CASH_SURRENDER_VALUE NUMBER(14,2) Cash Surrender Value

CASH_VALUE_AMT_BEG NUMBER(14,2) Cash Value Amount Beg

CASH_VALUE_AMT_END NUMBER(14,2) Cash Value Amount End

CASH_VALUE_INCR_AMT_ATD NUMBER(14,2) Cash Value Increase Amount ATD

CASH_VALUE_INCR_AMT_PRI_YEAR NUMBER(14,2) Cash Value Increase Amt Pri Year

COMMISSIONS NUMBER(14,2) Commissions

CONTINGENCIES NUMBER(14,2) Contingencies

COUNT_DEATH_PAID NUMBER(8) Count Death Paid

COUNT_DEATH_INCURRED NUMBER(8) Count Death Incurred

COUNT_ENDOWMENT_PAID NUMBER(8) Count Endowment Paid

COUNT_ENDOWMENT_INCURRED NUMBER(8) Count Endowment Incurred

COUNT_FULL_SURRENDER NUMBER(8) Count Full Surrender

COUNT_IN_FORCE_LIVES NUMBER(8) Count In Force Lives

COUNT_IN_FORCE_PLAN NUMBER(8) Count In Force Plan

COUNT_IN_FORCE_POLICY NUMBER(8) Count In Force Policy

COUNT_PARTIAL_SURRENDER NUMBER(8) Count Partial Surrender

COST_CENTER_CD VARCHAR2(5) Cost Center Code

DEATH_BENEFIT_AMT NUMBER(14,2) Death Benefit Amount

DEATH_BENEFIT_AMT_NET NUMBER(14,2) Death Benefit Amount Net

DEATH_BENEFITS_PAID NUMBER(14,2) Death Benefits Paid

DISTRIBUTION_CD VARCHAR2(5) Distribution Code

DIVIDEND_AMT_ATD NUMBER(14,2) Dividend Amount ATD

Page 840: fe115trm

Life Insurance

A-58 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

DIVIDEND_AMT_ITD NUMBER(14,2) Dividend Amount ITD

DIVIDEND_AMT_MONTH NUMBER(14,2) Dividend Amount Month

DIVIDEND_PAID_IN_CASH_ATD NUMBER(14,2) Dividend Paid In Cash ATD

DIVIDEND_PAID_IN_CASH_ITD NUMBER(14,2) Dividend Paid In Cash ITD

DIVIDEND_PAID_IN_CASH_MONTH NUMBER(14,2) Dividend Paid In Cash Month

EFFECTIVE_DATE DATE Effective Date

ENDOWMENT_BENEFIT_AMT NUMBER(14,2) Endowment Benefit Amount

ENDOWMENT_BENEFIT_AMT_NET NUMBER(14,2) Endowment Benefit Amount Net

ENDOWMENT_BENEFIT_PAID NUMBER(14,2) Endowment Benefit Paid

EXCESS_PREM_AMT_ATD NUMBER(14,2) Excess Premium Amount ATD

EXCESS_PREM_AMT_ITD NUMBER(14,2) Excess Premium Amount ITD

EXCESS_PREM_AMT_MONTH NUMBER(14,2) Excess Premium Amount Month

EXPOSURES_WRITTEN NUMBER(8,4) Exposures Written

EXP_ALLOWANCE NUMBER(14,2) Expense Allowance

EXPIRATION_DATE DATE Expiration Date

FLAT_EXTRA_RATE_ATD NUMBER(14,2) Flat Extra Rate ATD

FLAT_EXTRA_RATE_ITD NUMBER(14,2) Flat Extra Rate ITD

FLAT_EXTRA_RATE_MONTH NUMBER(14,2) Flat Extra Rate Month

FULL_POLICY_PREMIUM NUMBER(14,2) Full Policy Premium

FULLY_COMM_PREM_ANNUALIZED NUMBER(14,2) Fully Comm Premium Annualized

FUND_BAL_PER_POLICY_SUM_BEG NUMBER(14,2) Fund Bal per Policy Sum Beg

FUND_BAL_PER_POLICY_SUM_END NUMBER(14,2) Fund Bal per Policy Sum End

GENERAL_EXP NUMBER(14,2) General Expense

GDB_PREMS_SUM NUMBER(14,2) GDB Premiums Sum

GDM_LIM_PREM_SUM NUMBER(14,2) GDB Limit Premium Sum

HOLDFORM_CD NUMBER(5) Holdform Code

INSTALLMENT_FEE NUMBER(14,2) Installment Fee

INT_EARN_ACTUAL_EXCESS_ATD NUMBER(14,2) Int Earnings Actual Excess ATD

INT_EARN_ACTUAL_EXCESS_ITD NUMBER(14,2) Int Earnings Actual Excess ITD

INT_EARN_ACTUAL_EXCESS_MONTH NUMBER(14,2) Int Earnings Actual Excess Month

INT_EARN_BONUS_ATD NUMBER(14,2) Interest Earnings Bonus ATD

INT_EARN_BONUS_ITD NUMBER(14,2) Interest Earnings Bonus ITD

INT_EARN_BONUS_MONTH NUMBER(14,2) Interest Earnings Bonus Month

INT_EARN_CUR_ATD NUMBER(14,2) Interest Earnings Current ATD

INT_EARN_CUR_ITD NUMBER(14,2) Interest Earnings Current ITD

INT_EARN_CUR_MONTH NUMBER(14,2) Interest Earnings Cur Month

INT_EARN_MIN_ATD NUMBER(14,2) Interest Earnings Minimum ATD

INT_EARN_MIN_ITD NUMBER(14,2) Interest Earnings Minimum ITD

INT_EARN_MIN_MONTH NUMBER(14,2) Interest Earnings Minimum Month

ISSUE_DATE DATE Issue Date

LINE_OF_BUSINESS_CD NUMBER(5) Line of Business Code

Page 841: fe115trm

Life Insurance

Insurance Data Model A-59

Oracle Proprietary, Confidential Information - Use Restricted by Contract

LOAN_AMT_ATD NUMBER(14,2) Loan Amount ATD

LOAN_AMT_OUTSTANDING NUMBER(14,2) Loan Amount Outstanding

LOAN_BALANCE_FOR_IMPAIRED NUMBER(14,2) Loan Balance For Impaired

LOAN_INT_AMT_ATD NUMBER(14,2) Loan Interest Amount ATD

MAINTENANCE_EXP NUMBER(14,2) Maintenance Expense

MEDICAL_EXAM_CD VARCHAR2(5) Medical Exam Code

MEDICAL_AND_INSPECTION NUMBER(14,2) Medical and Inspection

NET_ADDITION_TO_FUND NUMBER(14,2) Net Addition to Fund

NET_SURR_VALUE_AMT NUMBER(14,2) Net Surrender Value Amount

NON_COMM_PREM_ANNUALIZED NUMBER(14,2) Non-Comm Premium Annualized

PARTIAL_SURRENDER_VALUE_PAID NUMBER(14,2) Partial Surrender Value Paid

PER_POLICY_RESERVE_BEG_SUM NUMBER(14,2) Per Policy Reserve Beg Sum

PER_POLICY_RESERVE_END_SUM NUMBER(14,2) Per Policy Reserve End Sum

PLAN_AGE NUMBER(8) Plan Age

PLAN_CD VARCHAR2(5) Plan Code

POLICY_STATUS_LF_CD NUMBER(5) Policy Status Life Code

PREM_ANNUAL_AMT_EXCL_OPTIONS NUMBER(14,2) Prem Annual Amt Excl Options

PREM_ANNUAL_AMT_INCL_OPTIONS NUMBER(14,2) Prem Annual Amt Incl Options

PREM_EARNED_CEDED NUMBER(14,2) Premium Earned Ceded

PREM_EARNED_DIRECT NUMBER(14,2) Premium Earned Direct

PREM_EARNED_ITD NUMBER(14,2) Premium Earned ITD

PREM_EARNED_MONTH NUMBER(14,2) Premium Earned Month

PREM_EARNED_NET NUMBER(14,2) Premium Earned Net

PREM_EARNED_SUBSTD_MONTH NUMBER(14,2) Premium Earned Substandard Month

PREM_EARNED_SUBSTD_ITD NUMBER(14,2) Premium Earned Substandard ITD

PREM_GROSS_AMT_ATD NUMBER(14,2) Premium Gross Amount ATD

PREM_GROSS_AMT_ITD NUMBER(14,2) Premium Gross Amount ITD

PREM_GROSS_AMT_MONTH NUMBER(14,2) Premium Gross Amount Month

PREM_GROSS_SUBSTD_AMT_ATD NUMBER(14,2) Prem Gross Substandard Amt ATD

PREM_GROSS_SUBSTD_AMT_ITD NUMBER(14,2) Prem Gross Substandard Amt ITD

PREM_GROSS_SUBSTD_AMT_MONTH NUMBER(14,2) Prem Gross Substandard Amt Month

PREM_IN_FORCE NUMBER(14,2) Premium In Force

PREM_UNEARNED_CEDED_CUR_MONTH NUMBER(14,2) Premium Unearned Ceded Cur Month

PREM_UNEARNED_CEDED_PRI_MONTH NUMBER(14,2) Premium Unearned Ceded Pri Month

PREM_UNEARNED_CEDED_PRI_YEAR NUMBER(14,2) Premium Unearned Ceded Pri Year

PREM_UNEARNED_DIRECT_CUR_MONTH NUMBER(14,2) Premium Unearned Direct Cur Month

PREM_UNEARNED_DIRECT_PRI_MONTH NUMBER(14,2) Premium Unearned Direct Pri Month

PREM_UNEARNED_DIRECT_PRI_YEAR NUMBER(14,2) Premium Unearned Direct Pri Year

PREM_UNEARNED_NET_CUR_MONTH NUMBER(14,2) Premium Unearned Net Cur Month

PREM_UNEARNED_NET_PRI_MONTH NUMBER(14,2) Premium Unearned Net Pri Month

PREM_UNEARNED_NET_PRI_YEAR NUMBER(14,2) Premium Unearned Net Pri Year

Page 842: fe115trm

Life Insurance

A-60 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

PREM_WRITTEN_CEDED NUMBER(14,2) Premium Written Ceded

PREM_WRITTEN_DIRECT NUMBER(14,2) Premium Written Direct

PREM_WRITTEN_NET NUMBER(14,2) Premium Written Net

PROFIT NUMBER(14,2) Profit

RECORD_COUNT NUMBER(6) Record Count

REGIONAL_OFFICE_CD VARCHAR2(5) Regional Office Code

REINSTATEMENT_DATE DATE Reinstatement Date

REINSURANCE_FLG NUMBER(1) Reinsurance Flag

REINSURANCE_PREMIUM NUMBER(14,2) Reinsurance Premium

SURRENDER_BENEFITS_PAID NUMBER(14,2) Surrender Benefits Paid

SURRENDER_BENEFITS_PAID_DATE NUMBER(14,2) Surrender Benefits Paid Date

SURRENDER_CHARGE_AMT NUMBER(14,2) Surrender Charge Amount

SURRENDER_TARGET_PREM NUMBER(14,2) Surrender Target Premium

TARGET_PREM_AMT NUMBER(14,2) Target Premium Amount

TAXES_AND_FEES NUMBER(14,2) Taxes and Fees

TERMINATION_DATE DATE Termination Date

TERMINATION_CD VARCHAR2(5) Termination Code

UNDERWRITING_CATEGORY_CD VARCHAR2(5) Underwriting Category Code

UNSCHED_PREM_AMT_ATD NUMBER(14,2) Unscheduled Premium Amount ATD

UNSCHED_PREM_AMT_ITD NUMBER(14,2) Unscheduled Premium Amount ITD

UNSCHED_PREM_AMT_MONTH NUMBER(14,2) Unscheduled Premium Amount Month

WITHDRAWAL_AMT_GROSS NUMBER(14,2) Withdrawal Amount Gross

WITHDRAWAL_AMT_TOTAL_ITD NUMBER(14,2) Withdrawal Amount Total ITD

WITHDRAWAL_AMT_TOTAL_ATD NUMBER(14,2) Withdrawal Amount Total ATD

Table: WHOLE_UL_COVERAGESColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

COVERAGE_ID NUMBER(14) Coverage ID

ORG_UNIT_ID NUMBER(14) Organizational Unit ID

COMMON_COA_ID NUMBER(14) Common Chart of Accounts ID

GL_ACCOUNT_ID NUMBER(14) General Ledger Account ID

AS_OF_DATE DATE As of Date

ISO_CURRENCY_CD VARCHAR2(3) ISO Currency Code

POLICY_NUMBER VARCHAR2(25) Policy Number

PRIMARY_PARTICIPANT_NUMBER NUMBER(10) Primary Participant Number

SECONDARY_PARTICIPANT_NUMBER NUMBER(10) Secondary Participant Number

IDENTITY_CODE_CHG NUMBER(10) Identity Code Change

INSTRUMENT_TYPE_CD NUMBER(5) Instrument Type Code

ALLOCATION_PREM_ITC NUMBER(14,2) Allocation Premium ITD

Page 843: fe115trm

Life Insurance

Insurance Data Model A-61

Oracle Proprietary, Confidential Information - Use Restricted by Contract

ACQUISITION_COSTS NUMBER(14,2) Acquisition Costs

BENEFIT_PERIOD_CD NUMBER(5) Benefit Period Code

CANCELLATION_DATE DATE Cancellation Date

CASH_SURRENDER_VALUE NUMBER(14,2) Cash Surrender Value

CASH_VALUE_AMT_BEG NUMBER(14,2) Cash Value Amount Beg

CASH_VALUE_AMT_END NUMBER(14,2) Cash Value Amount End

CASH_VALUE_INCR_AMT_ATD NUMBER(14,2) Cash Value Increase Amount ATD

CASH_VALUE_INCR_AMT_PRI_YEAR NUMBER(14,2) Cash Value Increase Amt Pri Year

CEASE_AGE NUMBER(3) Cease Age

COMMISSIONS NUMBER(14,2) Commissions

CONTINGENCIES NUMBER(14,2) Contingencies

COUNT_DEATH_PAID NUMBER(8) Count Death Paid

COUNT_DEATH_INCURRED NUMBER(8) Count Death Incurred

COUNT_ENDOWMENT_PAID NUMBER(8) Count Endowment Paid

COUNT_ENDOWMENT_INCURRED NUMBER(8) Count Endowment Incurred

COUNT_FULL_SURRENDER NUMBER(8) Count Full Surrender

COUNT_IN_FORCE_LIVES NUMBER(8) Count In Force Lives

COUNT_IN_FORCE_POLICY NUMBER(8) Count In Force Policy

COUNT_PARTIAL_SURRENDER NUMBER(8) Count Partial Surrender

COVERAGE_STATUS_CD NUMBER(5) Coverage Status Code

COVERAGE_ISSUE_CD NUMBER(5) Coverage Issue Code

DBO_SWITCH_FLG NUMBER(1) DBO Switch Flag

DEATH_BENEFIT_AMT NUMBER(14,2) Death Benefit Amount

DEATH_BENEFIT_AMT_NET NUMBER(14,2) Death Benefit Amount Net

DEATH_BENEFIT_DATE_PAID DATE Death Benefit Date Paid

DEATH_BENEFIT_OPTION_CD NUMBER(5) Death Benefit Option Code

DEATH_BENEFITS_PAID NUMBER(14,2) Death Benefits Paid

DIVIDEND_AMT_ATD NUMBER(14,2) Dividend Amount ATD

DIVIDEND_AMT_ITD NUMBER(14,2) Dividend Amount ITD

DIVIDEND_AMT_MONTH NUMBER(14,2) Dividend Amount Month

DIVIDEND_PAID_IN_CASH_ATD NUMBER(14,2) Dividend Paid In Cash ATD

DIVIDEND_PAID_IN_CASH_ITD NUMBER(14,2) Dividend Paid In Cash ITD

DIVIDEND_PAID_IN_CASH_MONTH NUMBER(14,2) Dividend Paid In Cash Month

DIVIDEND_PAID_DATE_LAST DATE Dividend Paid Date Last

DIVIDEND_TYPE_CD NUMBER(5) Dividend Type Code

DURATION_DESIGN NUMBER(5) Duration Design

EFFECTIVE_DATE DATE Effective Date

ELIMINATION_PERIOD NUMBER(5) Elimination Period

ENDOWMENT_BENEFIT_AMT NUMBER(14,2) Endowment Benefit Amount

ENDOWMENT_BENEFIT_AMT_NET NUMBER(14,2) Endowment Benefit Amount Net

ENDOWMENT_BENEFIT_DATE_PAID NUMBER(14,2) Endowment Benefit Date Paid

Page 844: fe115trm

Life Insurance

A-62 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

ENDOWMENT_BENEFIT_PAID NUMBER(14,2) Endowment Benefit Paid

EQUIVALENT_AGE NUMBER(3) Equivalent Age

EXCESS_PREM_AMT_ATD NUMBER(14,2) Excess Premium Amount ATD

EXCESS_PREM_AMT_ITD NUMBER(14,2) Excess Premium Amount ITD

EXCESS_PREM_AMT_MONTH NUMBER(14,2) Excess Premium Amount Month

EXPOSURES_WRITTEN NUMBER(8,4) Exposures Written

EXP_ALLOWANCE NUMBER(14,2) Expense Allowance

EXPIRATION_DATE DATE Expiration Date

FLAT_EXTRA_RATE_ATD NUMBER(14,2) Flat Extra Rate ATD

FLAT_EXTRA_RATE_ITD NUMBER(14,2) Flat Extra Rate ITD

FLAT_EXTRA_RATE_MONTH NUMBER(14,2) Flat Extra Rate Month

FULL_COVERAGE_PREMIUM NUMBER(14,2) Full Coverage Premium

FULLY_COMM_PREM_ANNUALIZED NUMBER(14,2) Fully Comm Premium Annualized

FUND_BAL_PER_POLICY_BEG NUMBER(14,2) Fund Bal per Policy Beg

FUND_BAL_PER_POLICY_END NUMBER(14,2) Fund Bal per Policy End

GENERAL_EXP NUMBER(14,2) General Expense

GROSS_RATE NUMBER(14,2) Gross Rate

GDB_PREMS_MONTH NUMBER(14,2) GDB Premiums Month

GDB_PREMS_SUM NUMBER(14,2) GDB Premiums Sum

GDM_LIM_PREM_MONTH NUMBER(14,2) GDB Limit Premium Month

GDM_LIM_PREM_SUM NUMBER(14,2) GDB Limit Premium Sum

GUARANTEED_CASH_VALUE NUMBER(14,2) Guaranteed Cash Value

GUARANTEED_FACE_VALUE NUMBER(14,2) Guaranteed Face Value

GUARANTEED_FUTURE_PREM NUMBER(14,2) Guaranteed Future Premium

GUARANTEED_INTEREST_RATE NUMBER(8,4) Guaranteed Interest Rate

INIT_COVERAGE_AMT NUMBER(14,2) Initial Coverage Amount

INT_EARN_ACTUAL_EXCESS_ATD NUMBER(14,2) Int Earnings Actual Excess ATD

INT_EARN_ACTUAL_EXCESS_ITD NUMBER(14,2) Int Earnings Actual Excess ITD

INT_EARN_ACTUAL_EXCESS_MONTH NUMBER(14,2) Int Earnings Actual Excess Month

INT_EARN_BONUS_ATD NUMBER(14,2) Interest Earnings Bonus ATD

INT_EARN_BONUS_ITD NUMBER(14,2) Interest Earnings Bonus ITD

INT_EARN_BONUS_MONTH NUMBER(14,2) Interest Earnings Bonus Month

INT_EARN_CUR_ATD NUMBER(14,2) Interest Earnings Current ATD

INT_EARN_CUR_ITD NUMBER(14,2) Interest Earnings Current ITD

INT_EARN_CUR_MONTH NUMBER(14,2) Interest Earnings Cur Month

INT_EARN_MIN_ATD NUMBER(14,2) Interest Earnings Minimum ATD

INT_EARN_MIN_ITD NUMBER(14,2) Interest Earnings Minimum ITD

INT_EARN_MIN_MONTH NUMBER(14,2) Interest Earnings Minimum Month

INTEREST_RATE_CUR NUMBER(8,4) Interest Rate Current

ISSUE_AGE NUMBER(3) Issue Age

ISSUE_DATE DATE Issue Date

Page 845: fe115trm

Life Insurance

Insurance Data Model A-63

Oracle Proprietary, Confidential Information - Use Restricted by Contract

LIVES_TYPE_CD NUMBER(5) Lives Type Code

LOAN_AMT_ATD NUMBER(14,2) Loan Amount ATD

LOAN_AMT_OUTSTANDING NUMBER(14,2) Loan Amount Outstanding

LOAN_BALANCE_FOR_IMPAIRED NUMBER(14,2) Loan Balance For Impaired

LOAN_INT_AMT_ATD NUMBER(14,2) Loan Interest Amount ATD

LOAN_MAX_AVAILABLE NUMBER(14,2) Loan Maximum Available

MAINTENANCE_EXP NUMBER(14,2) Maintenance Expense

MEDICAL_AND_INSPECTION NUMBER(14,2) Medical and Inspection

MORTALITY_CHARGE NUMBER(14,2) Mortality Charge

MORTALITY_CHARGE_MAX NUMBER(14,2) Mortality Charge Maximum

MORTALITY_CHARGE_REFUND NUMBER(14,2) Mortality Charge Refund

NET_ADDITION_TO_FUND NUMBER(14,2) Net Addition to Fund

NET_AMT_OF_RISK NUMBER(14,2) Net Amount of Risk

NET_AMT_OF_RISK_MAX NUMBER(14,2) Net Amount of Risk Maximum

NET_RATE NUMBER(14,2) Net Rate

NET_SURR_VALUE_AMT NUMBER(14,2) Net Surrender Value Amount

NON_COMM_PREM_ANNUALIZED NUMBER(14,2) Non-Comm Premium Annualized

PAID_UP_TO_DATE DATE Paid Up to Date

PAID_UP_ADDITIONS NUMBER(14,2) Paid Up Additions

PAYMENT_AMT NUMBER(14,2) Payment Amount

PAYMENT_DATE DATE Payment Date

PAYMENT_DUE_DATE DATE Payment Due Date

PAYMENT_METHOD_CD NUMBER(5) Payment Method Code

PAYMENT_MODE_CD NUMBER(5) Payment Mode Code

PAYMENT_STRUCTURE_CD NUMBER(5) Payment Structure Code

PARTIAL_SURRENDER_VALUE_PAID NUMBER(14,2) Partial Surrender Value Paid

PER_POLICY_RESERVE_BEG NUMBER(14,2) Per Policy Reserve Beg

PER_POLICY_RESERVE_END NUMBER(14,2) Per Policy Reserve End

PERM_FLAT_EXTRA_AMT NUMBER(14,2) Permanent Flat Extra Amount

PERM_PERCENTAGE_LOADING NUMBER(8,4) Permanent Percentage Loading

PERM_TABLE_RATING_CD NUMBER(5) Permanent Table Rating Code

POLICY_STATUS_LF_CD NUMBER(5) Policy Status Life Code

POLICY_TERM NUMBER(5) Policy Term

POLICY_TERM_MULT CHAR(1) Policy Term Multiplier

PREM_ANNUAL_AMT_EXCL_OPTIONS NUMBER(14,2) Prem Annual Amt Excl Options

PREM_ANNUAL_AMT_INCL_OPTIONS NUMBER(14,2) Prem Annual Amt Incl Options

PREM_DURATION_DATE DATE Premium Duration Date

PREM_EARNED_CEDED NUMBER(14,2) Premium Earned Ceded

PREM_EARNED_ITD NUMBER(14,2) Premium Earned ITD

PREM_EARNED_DIRECT NUMBER(14,2) Premium Earned Direct

PREM_EARNED_MONTH NUMBER(14,2) Premium Earned Month

Page 846: fe115trm

Life Insurance

A-64 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

PREM_EARNED_NET NUMBER(14,2) Premium Earned Net

PREM_EARNED_SUBSTD_MONTH NUMBER(14,2) Premium Earned Substandard Month

PREM_EARNED_SUBSTD_ITD NUMBER(14,2) Premium Earned Substandard ITD

PREM_FREEZE_DATE DATE Premium Freeze Date

PREM_GROSS_AMT_ATD NUMBER(14,2) Premium Gross Amount ATD

PREM_GROSS_AMT_ITD NUMBER(14,2) Premium Gross Amount ITD

PREM_GROSS_AMT_MONTH NUMBER(14,2) Premium Gross Amount Month

PREM_GROSS_SUBSTD_AMT_ATD NUMBER(14,2) Prem Gross Substandard Amt ATD

PREM_GROSS_SUBSTD_AMT_ITD NUMBER(14,2) Prem Gross Substandard Amt ITD

PREM_GROSS_SUBSTD_AMT_MONTH NUMBER(14,2) Prem Gross Substandard Amt Month

PREM_IN_FORCE NUMBER(14,2) Premium In Force

PREM_MIN_PREM_AMT NUMBER(14,2) Premium Minimum Amount

PREM_MIN_PREM_AMT_ITD NUMBER(14,2) Premium Minimum Amount ITD

PREM_MAX_PREM_AMT NUMBER(14,2) Premium Maximum Amount

PREM_MAX_PREM_AMT_ITD NUMBER(14,2) Premium Maximum Amount ITD

PREM_SOURCE_TYPE_CD NUMBER(5) Premium Source Type Code

PREM_UNEARNED_CEDED_CUR_MONTH NUMBER(14,2) Premium Unearned Ceded Cur Month

PREM_UNEARNED_CEDED_PRI_MONTH NUMBER(14,2) Premium Unearned Ceded Pri Month

PREM_UNEARNED_CEDED_PRI_YEAR NUMBER(14,2) Premium Unearned Ceded Pri Year

PREM_UNEARNED_DIRECT_CUR_MONTH NUMBER(14,2) Premium Unearned Direct Cur Month

PREM_UNEARNED_DIRECT_PRI_MONTH NUMBER(14,2) Premium Unearned Direct Pri Month

PREM_UNEARNED_DIRECT_PRI_YEAR NUMBER(14,2) Premium Unearned Direct Pri Year

PREM_UNEARNED_NET_CUR_MONTH NUMBER(14,2) Premium Unearned Net Cur Month

PREM_UNEARNED_NET_PRI_MONTH NUMBER(14,2) Premium Unearned Net Pri Month

PREM_UNEARNED_NET_PRI_YEAR NUMBER(14,2) Premium Unearned Net Pri Year

PREM_WRITTEN_CEDED NUMBER(14,2) Premium Written Ceded

PREM_WRITTEN_DIRECT NUMBER(14,2) Premium Written Direct

PREM_WRITTEN_NET NUMBER(14,2) Premium Written Net

PREMIUMS_PAID_UP_TO_AGE NUMBER(3) Premiums Paid Up to Age

PREMIUMS_PAID_UP_TO_YEARS NUMBER(3) Premiums Paid Up to Years

PROFIT NUMBER(14,2) Profit

QUAL_ADD_BENEFIT_FLG NUMBER(1) Qual Add Benefit Flag

RECORD_COUNT NUMBER(6) Record Count

REINSTATEMENT_DATE DATE Reinstatement Date

RENEWABLE_FLG NUMBER(1) Renewable Flag

SALARY_PCT NUMBER(8,4) Salary Percent

SURRENDER_BENEFITS_PAID NUMBER(14,2) Surrender Benefits Paid

SURRENDER_BENEFITS_PAID_DATE NUMBER(14,2) Surrender Benefits Paid Date

SURRENDER_CHARGE_AMT NUMBER(14,2) Surrender Charge Amount

SURRENDER_TARGET_PREM NUMBER(14,2) Surrender Target Premium

TARGET_PREM_AMT NUMBER(14,2) Target Premium Amount

Page 847: fe115trm

Life Insurance

Insurance Data Model A-65

Oracle Proprietary, Confidential Information - Use Restricted by Contract

TAXES_AND_FEES NUMBER(14,2) Taxes and Fees

TERMINATION_DATE DATE Termination Date

UNSCHED_PREM_AMT_ATD NUMBER(14,2) Unscheduled Premium Amount ATD

UNSCHED_PREM_AMT_ITD NUMBER(14,2) Unscheduled Premium Amount ITD

WITHDRAWAL_AMT_GROSS NUMBER(14,2) Withdrawal Amount Gross

WITHDRAWAL_DATE_LAST DATE Withdrawal Date Last

WITHDRAWAL_AMT_TOTAL_ITD NUMBER(14,2) Withdrawal Amount Total ITD

WITHDRAWAL_AMT_TOTAL_ATD NUMBER(14,2) Withdrawal Amount Total ATD

GUIDELINE_ANN_PREM NUMBER(14,2) Guideline Annual Premium

GUIDELINE_ANN_PREM_SUM NUMBER(14,2) Guideline Annual Premium Sum

GUIDELINE_SINGLE_PREM NUMBER(14,2) Guideline Single Premium

GUIDELINE_FACE NUMBER(14,2) Guideline Face

MEC_7DB_LOWEST NUMBER(14,2) MEC 7DB Lowest

SEC_GUIDELINE_PREM NUMBER(14,2) SEC Guideline Premium

Table: WHOLE_UL_COVERAGE_OPTIONSColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

COVERAGE_ID NUMBER(14) Coverage ID

OPTION_ID NUMBER(14) Option ID

ORG_UNIT_ID NUMBER(14) Organizational Unit ID

COMMON_COA_ID NUMBER(14) Common Chart of Accounts ID

GL_ACCOUNT_ID NUMBER(14) General Ledger Account ID

AS_OF_DATE DATE As of Date

ISO_CURRENCY_CD VARCHAR2(3) ISO Currency Code

POLICY_NUMBER VARCHAR2(25) Policy Number

IDENTITY_CODE_CHG NUMBER(10) Identity Code Change

INSTRUMENT_TYPE_CD NUMBER(5) Instrument Type Code

ACQUISITION_COSTS NUMBER(14,2) Acquisition Costs

BENEFIT_PERIOD_CD NUMBER(5) Benefit Period Code

CANCELLATION_DATE DATE Cancellation Date

CEASE_AGE NUMBER(3) Cease Age

COMMISSIONS NUMBER(14,2) Commissions

CONTINGENCIES NUMBER(14,2) Contingencies

COVERAGE_ISSUE_CD NUMBER(5) Coverage Issue Code

CVRG_OPTION_STATUS_CD NUMBER(5) Coverage Option Status Code

DEATH_BENEFIT_AMT NUMBER(14,2) Death Benefit Amount

DEATH_BENEFIT_AMT_NET NUMBER(14,2) Death Benefit Amount Net

DEATH_BENEFIT_DATE_PAID DATE Death Benefit Date Paid

DEATH_BENEFIT_OPTION_CD NUMBER(5) Death Benefit Option Code

Page 848: fe115trm

Life Insurance

A-66 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

DEATH_BENEFITS_PAID NUMBER(14,2) Death Benefits Paid

DURATION_DESIGN NUMBER(5) Duration Design

EFFECTIVE_DATE DATE Effective Date

ELIMINATION_PERIOD NUMBER(5) Elimination Period

ENDOWMENT_BENEFIT_AMT NUMBER(14,2) Endowment Benefit Amount

ENDOWMENT_BENEFIT_AMT_NET NUMBER(14,2) Endowment Benefit Amount Net

ENDOWMENT_BENEFIT_DATE_PAID NUMBER(14,2) Endowment Benefit Date Paid

ENDOWMENT_BENEFIT_PAID NUMBER(14,2) Endowment Benefit Paid

EQUIVALENT_AGE NUMBER(3) Equivalent Age

EXERCISE_DATE DATE Exercise Date

EXPOSURES_WRITTEN NUMBER(8,4) Exposures Written

EXP_ALLOWANCE NUMBER(14,2) Expense Allowance

EXPIRATION_DATE DATE Expiration Date

FLAT_EXTRA_RATE_ATD NUMBER(14,2) Flat Extra Rate ATD

FLAT_EXTRA_RATE_ITD NUMBER(14,2) Flat Extra Rate ITD

FLAT_EXTRA_RATE_MONTH NUMBER(14,2) Flat Extra Rate Month

FULL_OPTION_PREMIUM NUMBER(14,2) Full Option Premium

FULLY_COMM_PREM_ANNUALIZED NUMBER(14,2) Fully Comm Premium Annualized

GENERAL_EXP NUMBER(14,2) General Expense

GROSS_RATE NUMBER(14,2) Gross Rate

GDB_PREMS_MONTH NUMBER(14,2) GDB Premiums Month

GDB_PREMS_SUM NUMBER(14,2) GDB Premiums Sum

GDM_LIM_PREM_MONTH NUMBER(14,2) GDB Limit Premium Month

GDM_LIM_PREM_SUM NUMBER(14,2) GDB Limit Premium Sum

ISSUE_DATE DATE Issue Date

MAINTENANCE_EXP NUMBER(14,2) Maintenance Expense

MEDICAL_AND_INSPECTION NUMBER(14,2) Medical and Inspection

NET_RATE NUMBER(14,2) Net Rate

NON_COMM_PREM_ANNUALIZED NUMBER(14,2) Non-Comm Premium Annualized

OPTION_AMT NUMBER(14,2) Option Amount

PAYMENT_AMT NUMBER(14,2) Payment Amount

PAYMENT_DATE DATE Payment Date

PAYMENT_DUE_DATE DATE Payment Due Date

PAYMENT_METHOD_CD NUMBER(5) Payment Method Code

PAYMENT_MODE_CD NUMBER(5) Payment Mode Code

PARTIAL_SURRENDER_VALUE_PAID NUMBER(14,2) Partial Surrender Value Paid

PERM_FLAT_EXTRA_AMT NUMBER(14,2) Permanent Flat Extra Amount

PERM_PERCENTAGE_LOADING NUMBER(8,4) Permanent Percentage Loading

PERM_TABLE_RATING_CD NUMBER(5) Permanent Table Rating Code

POLICY_STATUS_LF_CD NUMBER(5) Policy Status Life Code

POLICY_TERM NUMBER(5) Policy Term

Page 849: fe115trm

Life Insurance

Insurance Data Model A-67

Oracle Proprietary, Confidential Information - Use Restricted by Contract

POLICY_TERM_MULT CHAR(1) Policy Term Multiplier

PREM_ANNUAL_AMT NUMBER(14,2) Premium Annual Amount

PREM_DURATION_DATE DATE Premium Duration Date

PREM_EARNED_CEDED NUMBER(14,2) Premium Earned Ceded

PREM_EARNED_ITD NUMBER(14,2) Premium Earned ITD

PREM_EARNED_DIRECT NUMBER(14,2) Premium Earned Direct

PREM_EARNED_MONTH NUMBER(14,2) Premium Earned Month

PREM_EARNED_NET NUMBER(14,2) Premium Earned Net

PREM_EARNED_SUBSTD_MONTH NUMBER(14,2) Premium Earned Substandard Month

PREM_EARNED_SUBSTD_ITD NUMBER(14,2) Premium Earned Substandard ITD

PREM_FREEZE_DATE DATE Premium Freeze Date

PREM_GROSS_AMT_ATD NUMBER(14,2) Premium Gross Amount ATD

PREM_GROSS_AMT_ITD NUMBER(14,2) Premium Gross Amount ITD

PREM_GROSS_AMT_MONTH NUMBER(14,2) Premium Gross Amount Month

PREM_GROSS_SUBSTD_AMT_ATD NUMBER(14,2) Prem Gross Substandard Amt ATD

PREM_GROSS_SUBSTD_AMT_ITD NUMBER(14,2) Prem Gross Substandard Amt ITD

PREM_GROSS_SUBSTD_AMT_MONTH NUMBER(14,2) Prem Gross Substandard Amt Month

PREM_IN_FORCE NUMBER(14,2) Premium In Force

PREM_SOURCE_TYPE_CD NUMBER(5) Premium Source Type Code

PREM_UNEARNED_CEDED_CUR_MONTH NUMBER(14,2) Premium Unearned Ceded Cur Month

PREM_UNEARNED_CEDED_PRI_MONTH NUMBER(14,2) Premium Unearned Ceded Pri Month

PREM_UNEARNED_CEDED_PRI_YEAR NUMBER(14,2) Premium Unearned Ceded Pri Year

PREM_UNEARNED_DIRECT_CUR_MONTH NUMBER(14,2) Premium Unearned Direct Cur Month

PREM_UNEARNED_DIRECT_PRI_MONTH NUMBER(14,2) Premium Unearned Direct Pri Month

PREM_UNEARNED_DIRECT_PRI_YEAR NUMBER(14,2) Premium Unearned Direct Pri Year

PREM_UNEARNED_NET_CUR_MONTH NUMBER(14,2) Premium Unearned Net Cur Month

PREM_UNEARNED_NET_PRI_MONTH NUMBER(14,2) Premium Unearned Net Pri Month

PREM_UNEARNED_NET_PRI_YEAR NUMBER(14,2) Premium Unearned Net Pri Year

PREM_WRITTEN_CEDED NUMBER(14,2) Premium Written Ceded

PREM_WRITTEN_DIRECT NUMBER(14,2) Premium Written Direct

PREM_WRITTEN_NET NUMBER(14,2) Premium Written Net

PROFIT NUMBER(14,2) Profit

QUAL_ADD_BENEFIT_FLG NUMBER(1) Qual Add Benefit Flag

RECORD_COUNT NUMBER(6) Record Count

REINSTATEMENT_DATE DATE Reinstatement Date

RENEWABLE_FLG NUMBER(1) Renewable Flag

SURRENDER_BENEFITS_PAID NUMBER(14,2) Surrender Benefits Paid

SURRENDER_BENEFITS_PAID_DATE NUMBER(14,2) Surrender Benefits Paid Date

SURRENDER_CHARGE_AMT NUMBER(14,2) Surrender Charge Amount

SURRENDER_TARGET_PREM NUMBER(14,2) Surrender Target Premium

TAXES_AND_FEES NUMBER(14,2) Taxes and Fees

Page 850: fe115trm

Life Insurance

A-68 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

TEMP_FLAT_END_DATE DATE Temp Flat End Date

TEMP_FLAT_EXTRA_AMT NUMBER(14,2) Temp Flat Extra Amount

TEMP_PERCENTAGE_LOADING NUMBER(8,4) Temp Percentage Loading

TEMP_TABLE_RATING_CD NUMBER(5) Temp Table Rating Code

TEMP_TABLE_RATING_END_DATE DATE Temp Table Rating End Date

TERMINATION_DATE DATE Termination Date

UNDERWRITING_CLASS_CD NUMBER(5) Underwriting Class Code

WITHDRAWAL_AMT_GROSS NUMBER(14,2) Withdrawal Amount Gross

WITHDRAWAL_DATE_LAST DATE Withdrawal Date Last

WITHDRAWAL_AMT_TOTAL_ITD NUMBER(14,2) Withdrawal Amount Total ITD

WITHDRAWAL_AMT_TOTAL_ATD NUMBER(14,2) Withdrawal Amount Total ATD

Table: WHOLE_UL_INVESTMENTSColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

INVESTMENT_ACCOUNT_NUMBER VARCHAR2(25) Investment Account Number

AS_OF_DATE DATE As of Date

POLICY_NUMBER VARCHAR2(25) Policy Number

ACCT_OPEN_DATE DATE Account Open Date

CARRIER_CD VARCHAR2(5) Carrier Code

LIABILITY NUMBER(14,2) Liability

LONG_TERM_CAP_GAINS_CUR_YEAR NUMBER(14,2) Long Term Capital Gains Cur Year

LT_NONTAX_CAP_GAINS_CUR_YEAR NUMBER(14,2) LT Nontax Capital Gains Cur Year

QUAL_PLAN_TYPE_CD NUMBER(5) Qualified Plan Type Code

REDEMPTION_CD NUMBER(5) Redemption Code

SHORT_TERM_CAP_GAINS_CUR_YEAR NUMBER(14,2) Short Term Capital Gains Cur Year

ST_NONTAX_CAP_GAINS_CUR_YEAR NUMBER(14,2) ST Nontax Capital Gains Cur Year

TAX_STATUS_CD NUMBER(5) Tax Status Code

Table: WHOLE_UL_INVEST_SUB_ACCOUNTSColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

INVESTMENT_ACCOUNT_NUMBER VARCHAR2(25) Investment Account Number

INVESTMENT_SUBACCT_NUMBER VARCHAR2(25) Investment Sub-Account Number

AS_OF_DATE DATE As of Date

PORTFOLIO_NUM NUMBER(25) Portfolio Number

ACTUAL_END_DATE DATE Actual End Date

ALLOC_PERCENT NUMBER(8,4) Allocation Percent

ASSET_ACCOUNT_BALANCE_BEG NUMBER(14,2) Asset Account Balance Beg

Page 851: fe115trm

Life Insurance

Insurance Data Model A-69

Oracle Proprietary, Confidential Information - Use Restricted by Contract

ASSET_ACCOUNT_BALANCE_END NUMBER(14,2) Asset Account Balance End

ASSET_CLASS_CD NUMBER(5) Asset Class Code

CAP_GAIN_OPT_CD NUMBER(5) Capital Gain Option Code

CARRIER_CD VARCHAR2(5) Carrier Code

COMPOUND_MODE_CD NUMBER(5) Compound Mode Code

CUR_RATE NUMBER(8,4) Current Rate

CUR_NUMBER_UNITS NUMBER(8,4) Current Number Units

DIVIDEND_OYT_CD NUMBER(5) Dividend One Yr Termination Code

FUTURE_EXP_ALLOC_PERCENT NUMBER(8,4) Future Expense Allocation Pct

INVEST_LOAD_CD NUMBER(5) Investment Load Code

INVEST_TYPE_CD NUMBER(5) Investment Type Code

LIABILITY NUMBER(14,2) Liability

MATURITY_DATE DATE Maturity Date

MATURITY_VALUE NUMBER(14,2) Maturity Value

PRICING_AS_OF_DATE DATE Pricing As of Date

PRODUCT_OBJECTIVE_CD NUMBER(5) Product Objective Code

INVESTMENT_PURPOSE_CD NUMBER(5) Investment Purpose Code

SECURITY_PURCH_TYPE_CD NUMBER(5) Security Purchase Type Code

SUB_ACCOUNT_STATUS_CD NUMBER(5) Sub Account Status Code

SYSTEMATIC_ACTV_TYPE_CD NUMBER(5) Systematic Activity Type Code

SYSTEMATIC_ACTIVITY_START_DATE DATE Systematic Activity Start Date

SYSTEMATIC_AMT NUMBER(14,2) Systematic Amount

SYSTEMATIC_MODE_CD NUMBER(5) Systematic Mode Code

TAX_BASIS NUMBER(14,2) Tax Basis

TOT_COST NUMBER(14,2) Total Cost

TOT_INC_AMT_YTD NUMBER(14,2) Total Income Amount YTD

TOT_ISSUED_UNITS NUMBER(8,4) Total Issued Units

TOT_REDEMPTION_AMT_ITD NUMBER(14,2) Total Redemption Amount ITD

TOT_UNISSUED_UNITS NUMBER(8,4) Total Unissued Units

UNIT_VALUE NUMBER(14,2) Unit Value

VALUATION_AS_OF_DATE DATE Valuation As of Date

Table: WHOLE_UL_LIFE_POLICIESColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

ORG_UNIT_ID NUMBER(14) Organizational Unit ID

COMMON_COA_ID NUMBER(14) Common Chart of Accounts ID

GL_ACCOUNT_ID NUMBER(14) General Ledger Account ID

COVERAGE_ID NUMBER(14) Coverage ID

AS_OF_DATE DATE As of Date

Page 852: fe115trm

Life Insurance

A-70 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

ISO_CURRENCY_CD VARCHAR2(3) ISO Currency Code

POLICY_NUMBER VARCHAR2(25) Policy Number

GROUP_PLAN_NUM NUMBER(25) Group Plan Number

PRIMARY_PARTICIPANT_NUMBER NUMBER(10) Primary Participant Number

SECONDARY_PARTICIPANT_NUMBER NUMBER(10) Secondary Participant Number

GROUP_PLAN_NUMBER VARCHAR2(25) Group Plan Number

IDENTITY_CODE_CHG NUMBER(10) Identity Code Change

INSTRUMENT_TYPE_CD NUMBER(5) Instrument Type Code

ACQUISITION_COSTS NUMBER(14,2) Acquisition Costs

AGENT_CD VARCHAR2(5) Agent Code

ANNUAL_STATEMENT_CAT_CD VARCHAR2(5) Annual Statement Category Code

BAILOUT_PROVISION_FLG NUMBER(1) Bailout Provision Flag

BENEFIT_PAYMENT_CD VARCHAR2(5) Benefit Payment Code

BRANCH_CODE VARCHAR2(10) Branch Code

CANCELLATION_DATE DATE Cancellation Date

CARRIER_CD VARCHAR2(5) Carrier Code

CASH_SURRENDER_VALUE NUMBER(14,2) Cash Surrender Value

CASH_VALUE_AMT_BEG NUMBER(14,2) Cash Value Amount Beg

CASH_VALUE_AMT_END NUMBER(14,2) Cash Value Amount End

CASH_VALUE_INCR_AMT_ATD NUMBER(14,2) Cash Value Increase Amount ATD

CASH_VALUE_INCR_AMT_PRI_YEAR NUMBER(14,2) Cash Value Increase Amt Pri Year

CAUSE_OF_DEATH_CD VARCHAR2(5) Cause of Death Code

CLAIM_STATUS_CD NUMBER(5) Claim Status Code

COMMISSIONS NUMBER(14,2) Commissions

CONTINGENCIES NUMBER(14,2) Contingencies

COUNT_DEATH_PAID NUMBER(8) Count Death Paid

COUNT_DEATH_INCURRED NUMBER(8) Count Death Incurred

COUNT_ENDOWMENT_PAID NUMBER(8) Count Endowment Paid

COUNT_ENDOWMENT_INCURRED NUMBER(8) Count Endowment Incurred

COUNT_FULL_SURRENDER NUMBER(8) Count Full Surrender

COUNT_IN_FORCE_LIVES NUMBER(8) Count In Force Lives

COUNT_IN_FORCE_POLICY NUMBER(8) Count In Force Policy

COUNT_PARTIAL_SURRENDER NUMBER(8) Count Partial Surrender

COST_CENTER_CD VARCHAR2(5) Cost Center Code

DEATH_BENEFIT_AMT NUMBER(14,2) Death Benefit Amount

DEATH_BENEFIT_AMT_NET NUMBER(14,2) Death Benefit Amount Net

DEATH_BENEFIT_DATE_PAID DATE Death Benefit Date Paid

DEATH_BENEFIT_OPTION_CD NUMBER(5) Death Benefit Option Code

DEATH_BENEFITS_PAID NUMBER(14,2) Death Benefits Paid

DEATH_DATE DATE Death Date

DEATH_REPORT_DATE DATE Death Report Date

Page 853: fe115trm

Life Insurance

Insurance Data Model A-71

Oracle Proprietary, Confidential Information - Use Restricted by Contract

DISTRIBUTION_CD VARCHAR2(5) Distribution Code

DIVIDEND_AMT_ATD NUMBER(14,2) Dividend Amount ATD

DIVIDEND_AMT_ITD NUMBER(14,2) Dividend Amount ITD

DIVIDEND_AMT_MONTH NUMBER(14,2) Dividend Amount Month

DIVIDEND_PAID_IN_CASH_ATD NUMBER(14,2) Dividend Paid In Cash ATD

DIVIDEND_PAID_IN_CASH_ITD NUMBER(14,2) Dividend Paid In Cash ITD

DIVIDEND_PAID_IN_CASH_MONTH NUMBER(14,2) Dividend Paid In Cash Month

DIVIDEND_PAID_DATE DATE Dividend Paid Date

DIVIDEND_TYPE_CD NUMBER(5) Dividend Type Code

EFFECTIVE_DATE DATE Effective Date

ENDOWMENT_BENEFIT_AMT NUMBER(14,2) Endowment Benefit Amount

ENDOWMENT_BENEFIT_AMT_NET NUMBER(14,2) Endowment Benefit Amount Net

ENDOWMENT_BENEFIT_DATE_PAID NUMBER(14,2) Endowment Benefit Date Paid

ENDOWMENT_BENEFIT_PAID NUMBER(14,2) Endowment Benefit Paid

ESTIMATED_MORTALITY_DATE DATE Estimated Mortality Date

EXCESS_PREM_AMT_ATD NUMBER(14,2) Excess Premium Amount ATD

EXCESS_PREM_AMT_ITD NUMBER(14,2) Excess Premium Amount ITD

EXCESS_PREM_AMT_MONTH NUMBER(14,2) Excess Premium Amount Month

EXPOSURES_WRITTEN NUMBER(8,4) Exposures Written

EXP_ALLOWANCE NUMBER(14,2) Expense Allowance

EXPIRATION_DATE DATE Expiration Date

FACE_AMT NUMBER(14,2) Face Amount

FLAT_EXTRA_RATE_ATD NUMBER(14,2) Flat Extra Rate ATD

FLAT_EXTRA_RATE_ITD NUMBER(14,2) Flat Extra Rate ITD

FLAT_EXTRA_RATE_MONTH NUMBER(14,2) Flat Extra Rate Month

FULL_POLICY_PREMIUM NUMBER(14,2) Full Policy Premium

FULLY_COMM_PREM_ANNUALIZED NUMBER(14,2) Fully Comm Premium Annualized

FUND_BAL_PER_POLICY_BEG NUMBER(14,2) Fund Bal per Policy Beg

FUND_BAL_PER_POLICY_END NUMBER(14,2) Fund Bal per Policy End

GENERAL_EXP NUMBER(14,2) General Expense

GROSS_RATE NUMBER(14,2) Gross Rate

GROUP_PLAN_FLG NUMBER(1) Group Plan Flag

GDB_PREMS_SUM NUMBER(14,2) GDB Premiums Sum

GDM_LIM_PREM_SUM NUMBER(14,2) GDB Limit Premium Sum

GUARANTEED_CASH_VALUE NUMBER(14,2) Guaranteed Cash Value

GUARANTEED_FACE_VALUE NUMBER(14,2) Guaranteed Face Value

GUARANTEED_FUTURE_PREM NUMBER(14,2) Guaranteed Future Premium

GUARANTEED_INTEREST_RATE NUMBER(8,4) Guaranteed Interest Rate

GUARANTEE_ISSUE_FLG NUMBER(1) Guarantee Issue Flag

GUARANTEE_PERIOD_AGE NUMBER(3) Guarantee Period Age

GUARANTEE_PERIOD_DATE DATE Guarantee Period Date

Page 854: fe115trm

Life Insurance

A-72 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

INSTALLMENT_FEE NUMBER(14,2) Installment Fee

INT_EARN_ACTUAL_EXCESS_ATD NUMBER(14,2) Int Earnings Actual Excess ATD

INT_EARN_ACTUAL_EXCESS_ITD NUMBER(14,2) Int Earnings Actual Excess ITD

INT_EARN_ACTUAL_EXCESS_MONTH NUMBER(14,2) Int Earnings Actual Excess Month

INT_EARN_BONUS_ATD NUMBER(14,2) Interest Earnings Bonus ATD

INT_EARN_BONUS_ITD NUMBER(14,2) Interest Earnings Bonus ITD

INT_EARN_BONUS_MONTH NUMBER(14,2) Interest Earnings Bonus Month

INT_EARN_CUR_ATD NUMBER(14,2) Interest Earnings Current ATD

INT_EARN_CUR_ITD NUMBER(14,2) Interest Earnings Current ITD

INT_EARN_CUR_MONTH NUMBER(14,2) Interest Earnings Cur Month

INT_EARN_MIN_ATD NUMBER(14,2) Interest Earnings Minimum ATD

INT_EARN_MIN_ITD NUMBER(14,2) Interest Earnings Minimum ITD

INT_EARN_MIN_MONTH NUMBER(14,2) Interest Earnings Minimum Month

INTEREST_RATE_CUR NUMBER(8,4) Interest Rate Current

ISSUE_DATE DATE Issue Date

ISSUE_STATE_CD NUMBER(5) Issue State Code

ISSUE_NATION_CD NUMBER(5) Issue Nation Code

ISSUE_TYPE_CD NUMBER(5) Issue Type Code

LINE_OF_BUSINESS_CD NUMBER(5) Line of Business Code

LOAN_AMT_ATD NUMBER(14,2) Loan Amount ATD

LOAN_AMT_OUTSTANDING NUMBER(14,2) Loan Amount Outstanding

LOAN_BALANCE_FOR_IMPAIRED NUMBER(14,2) Loan Balance For Impaired

LOAN_INT_AMT_ATD NUMBER(14,2) Loan Interest Amount ATD

LOAN_MAX_AVAILABLE NUMBER(14,2) Loan Maximum Available

MAINTENANCE_EXP NUMBER(14,2) Maintenance Expense

MATURED_POLICY_FLG NUMBER(1) Matured Policy Flag

MEDICAL_EXAM_CD VARCHAR2(5) Medical Exam Code

MEDICAL_AND_INSPECTION NUMBER(14,2) Medical and Inspection

MORTALITY_CHARGE NUMBER(14,2) Mortality Charge

MORTALITY_CHARGE_MAX NUMBER(14,2) Mortality Charge Maximum

MORTALITY_CHARGE_REFUND NUMBER(14,2) Mortality Charge Refund

NAIC_CD VARCHAR2(5) NAIC Code

NET_ADDITION_TO_FUND NUMBER(14,2) Net Addition to Fund

NET_AMT_OF_RISK NUMBER(14,2) Net Amount of Risk

NET_AMT_OF_RISK_MAX NUMBER(14,2) Net Amount of Risk Maximum

NET_RATE NUMBER(14,2) Net Rate

NET_SURR_VALUE_AMT NUMBER(14,2) Net Surrender Value Amount

NON_COMM_PREM_ANNUALIZED NUMBER(14,2) Non-Comm Premium Annualized

NON_FORFEIT_PROVISION_CD NUMBER(5) Non-Forfeit Provision Code

NUM_BENEFICIARIES NUMBER(3) Number Beneficiaries

PAID_UP_TO_DATE DATE Paid Up to Date

Page 855: fe115trm

Life Insurance

Insurance Data Model A-73

Oracle Proprietary, Confidential Information - Use Restricted by Contract

PAID_UP_ADDITIONS NUMBER(14,2) Paid Up Additions

PAID_UP_POLICY_FLG NUMBER(1) Paid Up Policy Flag

PAYMENT_AMT NUMBER(14,2) Payment Amount

PAYMENT_DATE DATE Payment Date

PAYMENT_DUE_DATE DATE Payment Due Date

PAYMENT_METHOD_CD NUMBER(5) Payment Method Code

PAYMENT_MODE_CD NUMBER(5) Payment Mode Code

PARTIAL_SURRENDER_VALUE_PAID NUMBER(14,2) Partial Surrender Value Paid

PARTICIPATING_FLG NUMBER(1) Participating Flag

PER_POLICY_RESERVE_BEG NUMBER(14,2) Per Policy Reserve Beg

PER_POLICY_RESERVE_END NUMBER(14,2) Per Policy Reserve End

PLAN_CD VARCHAR2(5) Plan Code

POLICY_AGE NUMBER(8) Policy Age

POLICY_STATUS_LF_CD NUMBER(5) Policy Status Life Code

POLICY_TERM NUMBER(5) Policy Term

POLICY_TERM_MULT CHAR(1) Policy Term Multiplier

POSTAL_CODE_ISSUE VARCHAR2(11) Postal Code Issue

POSTAL_CODE_RESIDENCE VARCHAR2(11) Postal Code Residence

PREM_ANNUAL_AMT_EXCL_OPTIONS NUMBER(14,2) Prem Annual Amt Excl Options

PREM_ANNUAL_AMT_INCL_OPTIONS NUMBER(14,2) Prem Annual Amt Incl Options

PREM_DURATION_DATE DATE Premium Duration Date

PREM_EARNED_CEDED NUMBER(14,2) Premium Earned Ceded

PREM_EARNED_DIRECT NUMBER(14,2) Premium Earned Direct

PREM_EARNED_ITD NUMBER(14,2) Premium Earned ITD

PREM_EARNED_MONTH NUMBER(14,2) Premium Earned Month

PREM_EARNED_NET NUMBER(14,2) Premium Earned Net

PREM_EARNED_SUBSTD_MONTH NUMBER(14,2) Premium Earned Substandard Month

PREM_EARNED_SUBSTD_ITD NUMBER(14,2) Premium Earned Substandard ITD

PREM_GROSS_AMT_ATD NUMBER(14,2) Premium Gross Amount ATD

PREM_GROSS_AMT_ITD NUMBER(14,2) Premium Gross Amount ITD

PREM_GROSS_AMT_MONTH NUMBER(14,2) Premium Gross Amount Month

PREM_GROSS_SUBSTD_AMT_ATD NUMBER(14,2) Prem Gross Substandard Amt ATD

PREM_GROSS_SUBSTD_AMT_ITD NUMBER(14,2) Prem Gross Substandard Amt ITD

PREM_GROSS_SUBSTD_AMT_MONTH NUMBER(14,2) Prem Gross Substandard Amt Month

PREM_IN_FORCE NUMBER(14,2) Premium In Force

PREM_MIN_PREM_AMT_ATD NUMBER(14,2) Premium Minimum Amount ATD

PREM_MIN_PREM_AMT_ITD NUMBER(14,2) Premium Minimum Amount ITD

PREM_MIN_PREM_AMT_MONTH NUMBER(14,2) Premium Minimum Amount Month

PREM_MAX_PREM_AMT_ATD NUMBER(14,2) Premium Maximum Amount ATD

PREM_MAX_PREM_AMT_ITD NUMBER(14,2) Premium Maximum Amount ITD

PREM_MAX_PREM_AMT_MONTH NUMBER(14,2) Premium Maximum Amount Month

Page 856: fe115trm

Life Insurance

A-74 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

PREM_OFFSET_METHOD_CD NUMBER(5) Premium Offset Method Code

PREM_SUSPENSE_AMT NUMBER(14,2) Premium Suspense Amount

PREM_SUSPENSE_REASON_CD NUMBER(5) Premium Suspense Reason Code

PREM_UNEARNED_CEDED_CUR_MONTH NUMBER(14,2) Premium Unearned Ceded Cur Month

PREM_UNEARNED_CEDED_PRI_MONTH NUMBER(14,2) Premium Unearned Ceded Pri Month

PREM_UNEARNED_CEDED_PRI_YEAR NUMBER(14,2) Premium Unearned Ceded Pri Year

PREM_UNEARNED_DIRECT_CUR_MONTH NUMBER(14,2) Premium Unearned Direct Cur Month

PREM_UNEARNED_DIRECT_PRI_MONTH NUMBER(14,2) Premium Unearned Direct Pri Month

PREM_UNEARNED_DIRECT_PRI_YEAR NUMBER(14,2) Premium Unearned Direct Pri Year

PREM_UNEARNED_NET_CUR_MONTH NUMBER(14,2) Premium Unearned Net Cur Month

PREM_UNEARNED_NET_PRI_MONTH NUMBER(14,2) Premium Unearned Net Pri Month

PREM_UNEARNED_NET_PRI_YEAR NUMBER(14,2) Premium Unearned Net Pri Year

PREM_WRITTEN_CEDED NUMBER(14,2) Premium Written Ceded

PREM_WRITTEN_DIRECT NUMBER(14,2) Premium Written Direct

PREM_WRITTEN_NET NUMBER(14,2) Premium Written Net

PREMIUMS_PAID_UP_TO_AGE NUMBER(3) Premiums Paid Up to Age

PREMIUMS_PAID_UP_TO_YEARS NUMBER(3) Premiums Paid Up to Years

PROFIT NUMBER(14,2) Profit

QUAL_PLAN_TYPE_CD NUMBER(5) Qualified Plan Type Code

RECORD_COUNT NUMBER(6) Record Count

REDETERMINATION_CAT_CD VARCHAR2(5) Redetermination Category Code

REDETERMINATION_LAST_DATE DATE Redetermination Last Date

REDETERMINATION_NEXT_DATE DATE Redetermination Next Date

REDETERMINATION_PERIOD NUMBER(5) Redetermination Period

REGIONAL_OFFICE_CD VARCHAR2(5) Regional Office Code

REINSTATEMENT_DATE DATE Reinstatement Date

REINSURANCE_FLG NUMBER(1) Reinsurance Flag

REINSURANCE_PREMIUM NUMBER(14,2) Reinsurance Premium

RESIDENCE_STATE_CD NUMBER(5) Residence State Code

ROLLOVER_AMT_TOTAL NUMBER(14,2) Rollover Amount Total

STATEMENT_BASIS_CD NUMBER(5) Statement Basis Code

SURRENDER_BENEFITS_PAID NUMBER(14,2) Surrender Benefits Paid

SURRENDER_BENEFITS_PAID_DATE NUMBER(14,2) Surrender Benefits Paid Date

SURRENDER_CHARGE_AMT NUMBER(14,2) Surrender Charge Amount

SURRENDER_TARGET_PREM NUMBER(14,2) Surrender Target Premium

TARGET_PREM_AMT NUMBER(14,2) Target Premium Amount

TAXES_AND_FEES NUMBER(14,2) Taxes and Fees

TERRITORY_CD VARCHAR2(5) Territory Code

TERMINATION_DATE DATE Termination Date

TERMINATION_CD VARCHAR2(5) Termination Code

UNDERWRITING_CATEGORY_CD VARCHAR2(5) Underwriting Category Code

Page 857: fe115trm

Life Insurance

Insurance Data Model A-75

Oracle Proprietary, Confidential Information - Use Restricted by Contract

UNSCHED_PREM_AMT_ATD NUMBER(14,2) Unscheduled Premium Amount ATD

UNSCHED_PREM_AMT_ITD NUMBER(14,2) Unscheduled Premium Amount ITD

UNSCHED_PREM_AMT_MONTH NUMBER(14,2) Unscheduled Premium Amount Month

WITHDRAWAL_AMT_GROSS NUMBER(14,2) Withdrawal Amount Gross

WITHDRAWAL_DATE_LAST DATE Withdrawal Date Last

WITHDRAWAL_AMT_TOTAL_ITD NUMBER(14,2) Withdrawal Amount Total ITD

WITHDRAWAL_AMT_TOTAL_ATD NUMBER(14,2) Withdrawal Amount Total ATD

ACCUM_VALUE_1035 NUMBER(14,2) Accumulation Value 1035

AMT_1035 NUMBER(14,2) Exchange Amount 1035

BASIS_1035 NUMBER(14,2) Cost Basis 1035

CUM_SEVEN_PAY_PREM NUMBER(14,2) Cumulative MEC 7 Pay Premium

DEEMED_CASH_VALUE_AMT NUMBER(14,2) Deemed Cash Value Amount

DEF_LIFE_INS_METHOD_CD NUMBER(5) Definition of Life Ins Method Code

DEFRA_DISBURSE_AV_L2Y NUMBER(14,2) DEFRA Disburse Aviation L2Y

DEFRA_DISBURSE_BASIS_L2Y NUMBER(14,2) DEFRA Disburse Basis L2Y

DEFRA_DISBURSE_DATE_L2Y DATE DEFRA Disburse Date L2Y

DEFRA_SUM_DISBURSE_L2Y NUMBER(14,2) DEFRA Sum Disburse L2Y

DEFRA_SUM_PREMS_ITD NUMBER(14,2) DEFRA Sum Premiums ITD

DEFRA_TAXABLE_PORTION_L2Y NUMBER(14,2) DEFRA Taxable Portion L2Y

GUIDELINE_ANN_PREM NUMBER(14,2) Guideline Annual Premium

GUIDELINE_ANN_PREM_SUM NUMBER(14,2) Guideline Annual Premium Sum

GUIDELINE_SINGLE_PREM NUMBER(14,2) Guideline Single Premium

HIGH_AVG_AMTS_PAID NUMBER(14,2) High Average Amounts Paid

INTERNAL_1035_FLG NUMBER(1) Internal 1035 Flag

LIFE_INS_TEST_MAX_CONTRIB NUMBER(14,2) Life Ins Test Maximum Contrib

LOAN_1035 NUMBER(14,2) Loan 1035

MAT_CHANGE_NSP NUMBER(8,4) Net Single Prem Last Matl Change

MAT_CHANGE_AV NUMBER(14,2) Acct Value Last Material Change

MATERIAL_CHANGE_DATE DATE Material Change Date

MEC_1035_FLG NUMBER(1) MEC 1035 Flag

MEC_FLG NUMBER(1) MEC Flag

MEC_DATE DATE MEC Date

MEC_MAX_CONTRIBUTION NUMBER(14,2) MEC Maximum Contribution

SEVEN_PAY_PREM NUMBER(14,2) Seven Pay Premium

TAMRA_SUM_PREMS_ITD NUMBER(14,2) TAMRA Sum Premiums ITD

TAX_GRANDFATHERED_TYP_CD NUMBER(5) Tax Grandfathered Type Code

TAXABLE_AMT NUMBER(14,2) Taxable Amount

TAXABLE_INC_AMT NUMBER(14,2) Taxable Income Amount

UNADJUST_7PAY_PREM NUMBER(14,2) Unadjusted 7 Pay Premium

UNNEC_GAP NUMBER(14,2) Unnecsry Guideline Annual Prem

UNNEC_GSP NUMBER(14,2) Unnecsry Guideline Single Prem

Page 858: fe115trm

Life Insurance

A-76 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

UNNEC_PREM_PAID_ITD NUMBER(14,2) Unnecessary Premium Paid ITD

CLAIM_TAX_DEDUCTION_FLG NUMBER(1) Claim Tax Deduction Flag

EARLIEST_START_DATE DATE Earliest Start Date

EMP_ADD_DISC_CONT_AMT NUMBER(14,2) Employer Addl Discr Contrib Amt

EMP_ADD_DISC_CONT_FREQ NUMBER(5) Employer Addl Discr Contrib Freq

EMP_ADD_DISC_SALARY_PCT NUMBER(8,4) Employer Addl Discr Salary Pct

EMP_STD_DISC_CONT_AMT NUMBER(14,2) Employer Std Discr Contrib Amt

EMP_STD_DISC_CONT_FREQ NUMBER(5) Employer Std Discr Contrib Freq

EMP_STD_DISC_SALARY_PCT NUMBER(8,4) Employer Std Discr Salary Pct

GUAR_CONT_AMT NUMBER(14,2) Guarantee Superannuation Amount

GUAR_FREQ_CD NUMBER(5) Guarantee Frequency Code

GUAR_SALARY_PCT NUMBER(8,4) Guarantee Salary Percent

INDEX_COVER_FLG NUMBER(1) Index Cover Flag

INDEX_RATE NUMBER(8,4) Index Rate

MEM_CONT_AMT NUMBER(14,2) Member Contribution Amount

MEM_CONT_FREQ_CD NUMBER(5) Member Contribution Freq Code

MEM_COVERAGE_SALARY_AMT NUMBER(14,2) Member Coverage Salary Amount

MEM_SALARY_PCT NUMBER(8,4) Member Salary Percent

ROLLOVER_DATE DATE Rollover Date

UNDEDUCTED_CONT_VALUE_ITD NUMBER(14,2) Undeducted Contrib Value ITD

Table: WHOLE_UL_LOANSColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

LOAN_ACCOUNT_NUMBER VARCHAR2(25) Loan Account Number

AS_OF_DATE DATE As of Date

POLICY_NUMBER VARCHAR2(25) Policy Number

CUR_LOAN_INT_RATE NUMBER(8,4) Current Loan Interest Rate

CUR_LOAN_VALUE NUMBER(14,2) Current Loan Value

INSTALLMENT_AMT NUMBER(14,2) Installment Amount

LOAN_BALANCE_FOR_IMPAIRED NUMBER(14,2) Loan Balance For Impaired

LOAN_DATE DATE Loan Date

LOAN_EXIPIRY_DATE DATE Loan Exipiry Date

LOAN_INT_DUE NUMBER(14,2) Loan Interest Due

LOAN_INT_METHOD_CD NUMBER(5) Loan Interest Method Code

LOAN_INT_TIMING_CD NUMBER(5) Loan Interest Timing Code

LOAN_INT_TYPE_CD NUMBER(5) Loan Interest Type Code

LOAN_PAYMENT_AMT NUMBER(14,2) Loan Payment Amount

LOAN_PAYMENT_DATE DATE Loan Payment Date

LOAN_PAYMENT_METHOD NUMBER(14,2) Loan Payment Method

Page 859: fe115trm

Life Insurance

Insurance Data Model A-77

Oracle Proprietary, Confidential Information - Use Restricted by Contract

LOAN_PAYMENT_MODE NUMBER(14,2) Loan Payment Mode

LOAN_REASON_CD NUMBER(5) Loan Reason Code

LOAN_STATUS_CD VARCHAR2(5) Loan Status Code

LOAN_TYPE_CD NUMBER(5) Loan Type Code

LOANED_AMT_INT_RATE NUMBER(8,4) Loaned Amount Interest Rate

ORIGINAL_LOAN_AMT NUMBER(14,2) Original Loan Amount

PREFERRED_LOAN_BALANCE NUMBER(14,2) Preferred Loan Balance

Table: WHOLE_UL_OPTIONS_SUMMARYColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

OPTION_ID NUMBER(14) Option ID

ORG_UNIT_ID NUMBER(14) Organizational Unit ID

COMMON_COA_ID NUMBER(14) Common Chart of Accounts ID

GL_ACCOUNT_ID NUMBER(14) General Ledger Account ID

COVERAGE_ID NUMBER(14) Coverage ID

AS_OF_DATE DATE As of Date

ISO_CURRENCY_CD VARCHAR2(3) ISO Currency Code

POLICY_NUMBER VARCHAR2(25) Policy Number

IDENTITY_CODE_CHG NUMBER(10) Identity Code Change

INSTRUMENT_TYPE_CD NUMBER(5) Instrument Type Code

ACQUISITION_COSTS NUMBER(14,2) Acquisition Costs

COMMISSIONS NUMBER(14,2) Commissions

CONTINGENCIES NUMBER(14,2) Contingencies

DEATH_BENEFIT_AMT NUMBER(14,2) Death Benefit Amount

DEATH_BENEFITS_PAID NUMBER(14,2) Death Benefits Paid

ENDOWMENT_BENEFIT_AMT NUMBER(14,2) Endowment Benefit Amount

ENDOWMENT_BENEFIT_PAID NUMBER(14,2) Endowment Benefit Paid

EXPOSURES_WRITTEN NUMBER(8,4) Exposures Written

EXP_ALLOWANCE NUMBER(14,2) Expense Allowance

FULL_OPTION_PREMIUM NUMBER(14,2) Full Option Premium

FULLY_COMM_PREM_ANNUALIZED NUMBER(14,2) Fully Comm Premium Annualized

GENERAL_EXP NUMBER(14,2) General Expense

GDB_PREMS_MONTH NUMBER(14,2) GDB Premiums Month

GDB_PREMS_SUM NUMBER(14,2) GDB Premiums Sum

GDM_LIM_PREM_MONTH NUMBER(14,2) GDB Limit Premium Month

GDM_LIM_PREM_SUM NUMBER(14,2) GDB Limit Premium Sum

MAINTENANCE_EXP NUMBER(14,2) Maintenance Expense

MEDICAL_AND_INSPECTION NUMBER(14,2) Medical and Inspection

NON_COMM_PREM_ANNUALIZED NUMBER(14,2) Non-Comm Premium Annualized

Page 860: fe115trm

Life Insurance

A-78 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

OPTION_AMT NUMBER(14,2) Option Amount

PARTIAL_SURRENDER_VALUE_PAID NUMBER(14,2) Partial Surrender Value Paid

PREM_ANNUAL_AMT NUMBER(14,2) Premium Annual Amount

PREM_EARNED_CEDED NUMBER(14,2) Premium Earned Ceded

PREM_EARNED_ITD NUMBER(14,2) Premium Earned ITD

PREM_EARNED_DIRECT NUMBER(14,2) Premium Earned Direct

PREM_EARNED_MONTH NUMBER(14,2) Premium Earned Month

PREM_EARNED_NET NUMBER(14,2) Premium Earned Net

PREM_EARNED_SUBSTD_MONTH NUMBER(14,2) Premium Earned Substandard Month

PREM_EARNED_SUBSTD_ITD NUMBER(14,2) Premium Earned Substandard ITD

PREM_GROSS_AMT_ATD NUMBER(14,2) Premium Gross Amount ATD

PREM_GROSS_AMT_ITD NUMBER(14,2) Premium Gross Amount ITD

PREM_GROSS_AMT_MONTH NUMBER(14,2) Premium Gross Amount Month

PREM_GROSS_SUBSTD_AMT_ATD NUMBER(14,2) Prem Gross Substandard Amt ATD

PREM_GROSS_SUBSTD_AMT_ITD NUMBER(14,2) Prem Gross Substandard Amt ITD

PREM_GROSS_SUBSTD_AMT_MONTH NUMBER(14,2) Prem Gross Substandard Amt Month

PREM_IN_FORCE NUMBER(14,2) Premium In Force

PREM_UNEARNED_CEDED_CUR_MONTH NUMBER(14,2) Premium Unearned Ceded Cur Month

PREM_UNEARNED_CEDED_PRI_MONTH NUMBER(14,2) Premium Unearned Ceded Pri Month

PREM_UNEARNED_CEDED_PRI_YEAR NUMBER(14,2) Premium Unearned Ceded Pri Year

PREM_UNEARNED_DIRECT_CUR_MONTH NUMBER(14,2) Premium Unearned Direct Cur Month

PREM_UNEARNED_DIRECT_PRI_MONTH NUMBER(14,2) Premium Unearned Direct Pri Month

PREM_UNEARNED_DIRECT_PRI_YEAR NUMBER(14,2) Premium Unearned Direct Pri Year

PREM_UNEARNED_NET_CUR_MONTH NUMBER(14,2) Premium Unearned Net Cur Month

PREM_UNEARNED_NET_PRI_MONTH NUMBER(14,2) Premium Unearned Net Pri Month

PREM_UNEARNED_NET_PRI_YEAR NUMBER(14,2) Premium Unearned Net Pri Year

PREM_WRITTEN_CEDED NUMBER(14,2) Premium Written Ceded

PREM_WRITTEN_DIRECT NUMBER(14,2) Premium Written Direct

PREM_WRITTEN_NET NUMBER(14,2) Premium Written Net

PROFIT NUMBER(14,2) Profit

RECORD_COUNT NUMBER(6) Record Count

SURRENDER_BENEFITS_PAID NUMBER(14,2) Surrender Benefits Paid

SURRENDER_CHARGE_AMT NUMBER(14,2) Surrender Charge Amount

SURRENDER_TARGET_PREM NUMBER(14,2) Surrender Target Premium

TAXES_AND_FEES NUMBER(14,2) Taxes and Fees

UNDERWRITING_CLASS_CD NUMBER(5) Underwriting Class Code

WITHDRAWAL_AMT_GROSS NUMBER(14,2) Withdrawal Amount Gross

WITHDRAWAL_AMT_TOTAL_ITD NUMBER(14,2) Withdrawal Amount Total ITD

WITHDRAWAL_AMT_TOTAL_ATD NUMBER(14,2) Withdrawal Amount Total ATD

Page 861: fe115trm

Life Insurance

Insurance Data Model A-79

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Life Insurance ParticipantsWHOLE_UL_LIFE_POLICIES# IDENTITY_CODE# ID_NUMBER* ORG_UNIT_ID* COMMON_COA_ID* GL_ACCOUNT_ID* COVERAGE_ID* AS_OF_DATE* ISO_CURRENCY_CD* POLICY_NUMBER* GROUP_PLAN_NUM* PRIMARY_PARTICIPANT_NUMBER

TERM_LIFE_POLICIES# IDENTITY_CODE# ID_NUMBER* ORG_UNIT_ID* COMMON_COA_ID* GL_ACCOUNT_ID* COVERAGE_ID* AS_OF_DATE* ISO_CURRENCY_CD* POLICY_NUMBER* GROUP_PLAN_NUM* PRIMARY_PARTICIPANT_NUMBER

SUBSTANCE_USAGES# PARTICIPANT_NUMBER# SUBSTANCE_USAGE_NUM# AS_OF_DATE

RACING_COMPETITIONS# PARTICIPANT_NUMBER# RACING_COMPETITION_NUM# AS_OF_DATE

MEDICAL_TREATMENTS# PARTICIPANT_NUMBER# MEDICAL_CONDITION_NUM# TREATMENT_TYPE_CD# AS_OF_DATE

MEDICAL_PREVENTIONS# PARTICIPANT_NUMBER# MEDICAL_PREVENTION_NUM# AS_OF_DATE

MEDICAL_CONDITIONS# PARTICIPANT_NUMBER# MEDICAL_CONDITION_NUM# AS_OF_DATE

LIFE_PARTICIPANTS_POLICIES# IDENTITY_CODE# ID_NUMBER# PARTICIPANT_NUMBER# AS_OF_DATE# INSTRUMENT_TYPE_CD

LIFE_PARTICIPANTS# PARTICIPANT_NUMBER# AS_OF_DATE

LIFESTYLE_ACTIVITIES# PARTICIPANT_NUMBER# LIFESTYLE_ACTV_TYPE_CD# AS_OF_DATE

FAMILY_ILLNESSES# PARTICIPANT_NUMBER# FAMILY_ILLNESS_NUM# AS_OF_DATE

DRIVER_VIOLATIONS# PARTICIPANT_NUMBER# VIOLATION_NUM# AS_OF_DATE

CRIMINAL_CONVICTIONS# PARTICIPANT_NUMBER# CRIMINAL_CONVICTION_NUM# AS_OF_DATE

relates life participants to whole/UL policies

insures

relates life participants to term policies

insures

relates policy to life participants

is insured by

for

may have

describes

may have

for

may have

describes

may have

for

may participate in

for

may have

for

may have

for

may have

describes

may participate in

Page 862: fe115trm

Life Insurance

A-80 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Table: CRIMINAL_CONVICTIONSColumn Name Data Type Display Name

PARTICIPANT_NUMBER NUMBER(10) Participant Number

CRIMINAL_CONVICTION_NUM NUMBER(10) Criminal Conviction Number

AS_OF_DATE DATE As of Date

CRIME_TYPE_CD NUMBER(5) Crime Type Code

CONVICTION_DATE DATE Conviction Date

CONVICTION_COUNTRY_CD NUMBER(5) Conviction Country Code

CONVICTION_JURISD_CD NUMBER(5) Conviction Jurisdiction Code

PROBATION_FLG NUMBER(1) Probation Flag

PROBATION_END_DATE DATE Probation End Date

Table: DRIVER_VIOLATIONSColumn Name Data Type Display Name

PARTICIPANT_NUMBER NUMBER(10) Participant Number

VIOLATION_NUM NUMBER(10) Violation Number

AS_OF_DATE DATE As of Date

DRIVER_IMPROVEMENT_SCHOOL_FLG NUMBER(1) Driver Improvement School Flag

VIOLATION_TYPE_CD NUMBER(5) Violation Type Code

VIOLATION_DATE DATE Violation Date

VIOLATION_COUNTRY_CD NUMBER(5) Violation Country Code

VIOLATION_JURISD_CD NUMBER(5) Violation Jurisdiction Code

Table: FAMILY_ILLNESSESColumn Name Data Type Display Name

PARTICIPANT_NUMBER NUMBER(10) Participant Number

FAMILY_ILLNESS_NUM NUMBER(10) Family Illness Number

AS_OF_DATE DATE As of Date

AGE_AS_OF_DATE DATE Age As of Date

AGE_AT_DEATH NUMBER(3) Age at Death

AGE_IF_LIVING NUMBER(3) Age If Living

DATE_OF_ONSET DATE Date of Onset

DIAGNOSIS_CD NUMBER(5) Diagnosis Code

ONSET_AGE NUMBER(3) Onset Age

RECOVERY_DATE DATE Recovery Date

RECOVERY_FLG NUMBER(1) Recovery Flag

ROLE_CODE_DESC_CD NUMBER(5) Role Description Code

Page 863: fe115trm

Life Insurance

Insurance Data Model A-81

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Table: LIFESTYLE_ACTIVITIESColumn Name Data Type Display Name

PARTICIPANT_NUMBER NUMBER(10) Participant Number

LIFESTYLE_ACTV_TYPE_CD NUMBER(5) Lifestyle Activity Type Code

AS_OF_DATE DATE As of Date

ACTIVITY_COUNT_LAST_YEAR NUMBER(8) Activity Count Last Year

ACTIVITY_COUNT_TOTAL NUMBER(8) Activity Count Total

ACTIVITY_FREQ_MODE_CD NUMBER(5) Activity Frequency Mode Code

AIRSPORTS_PROFESSIONAL_FLG NUMBER(1) Airsports Professional Flag

AT_FAULT_FLG NUMBER(1) At Fault Flag

DATE_LAST_UPDATED DATE Date Last Updated

HOURS_OF_INSTRUCTION NUMBER(8) Hours of Instruction

LAST_ACCIDENT_DATE DATE Last Accident Date

LAST_ACTIVITY_DATE DATE Last Activity Date

LICENSE_FLG NUMBER(1) License Flag

OUTSIDE_RESIDENCE_COUNTRY_FLG NUMBER(1) Outside Residence Country Flag

Table: LIFE_PARTICIPANTSColumn Name Data Type Display Name

PARTICIPANT_NUMBER NUMBER(10) Participant Number

AS_OF_DATE DATE As of Date

CUS_KEY VARCHAR2(30) Customer Key

AGE NUMBER(3) Age

ATTAINED_AGE NUMBER(3) Attained Age

AUTO_LIC_REINSTATMENT_DATE DATE Auto License Reinstatment Date

AUTO_LIC_SUSPENSION_FLG NUMBER(1) Auto License Suspension Flag

BIRTH_COUNTRY_CD NUMBER(5) Birth Country Code

BIRTH_JURISDICTION_CD NUMBER(5) Birth Jurisdiction Code

BIRTHDATE DATE Birthdate

BIRTHWEIGHT NUMBER(8,4) Birthweight

CITIZENSHIP_CD NUMBER(5) Citizenship Code

DISTRIBUTION_OPTION_CD NUMBER(5) Distribution Option Code

DRIVERS_LICENSE_CNTRY_CD NUMBER(5) Drivers License Country Code

DRIVERS_LICENSE_NUMBER VARCHAR2(25) Drivers License Number

DRIVERS_LICENSE_POINTS NUMBER(8) Drivers License Points

DRIVERS_LICENSE_POINTS_DATE DATE Drivers License Points Date

DRIVERS_LICENSE_STATE_CD NUMBER(5) Drivers License State Code

EDUCATION_LEVEL_LF_CD NUMBER(5) Education Level Life Code

EST_MORTALITY_DATE DATE Estimated Mortality Date

EST_RETIRE_DATE DATE Estimated Retire Date

EST_SALARY NUMBER(14,2) Estimated Salary

Page 864: fe115trm

Life Insurance

A-82 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

HEIGHT NUMBER(3) Height

IMMIGRATION_STATUS_CD NUMBER(5) Immigration Status Code

ISSUE_AGE NUMBER(3) Issue Age

ISSUE_GENDER CHAR(1) Issue Gender

KNOWN_FAMILY_HISTORY_FLG NUMBER(1) Known Family History Flag

LAST_DATE_UPDATED DATE Last Date Updated

LICENSE_STATE_CD NUMBER(5) License State Code

MARITAL_STATUS_LF_CD NUMBER(5) Marital Status Life Code

MIB_REASON_CD NUMBER(5) MIB Reason Code

NUM_BROTHERS_DEAD NUMBER(3) Number Brothers Dead

NUM_BROTHERS_LIVING NUMBER(3) Number Brothers Living

NUM_SISTERS_DEAD NUMBER(3) Number Sisters Dead

NUM_SISTERS_LIVING NUMBER(3) Number Sisters Living

OCCUP_CLASS_CD NUMBER(5) Occupation Class Code

OCCUP_RATING_CD NUMBER(5) Occupation Rating Code

OCCUPATION_CD VARCHAR2(5) Occupation Code

PARTICIPANT_ROLE_CD NUMBER(5) Participant Role Code

PERM_FLAT_EXTRA_AMT NUMBER(14,2) Permanent Flat Extra Amount

PERM_TABLE_RATING_CD NUMBER(5) Permanent Table Rating Code

POSTAL_CODE_RESIDENCE VARCHAR2(11) Postal Code Residence

PREMATURE_BIRTH_FLG NUMBER(1) Premature Birth Flag

RECORD_COUNT NUMBER(6) Record Count

REJECTED_DATE_LAST DATE Rejected Date Last

REJECTION_FLG NUMBER(1) Rejection Flag

REJECTION_REASON_CD VARCHAR2(5) Rejection Reason Code

RESIDENCE_COUNTRY_CD NUMBER(5) Residence Country Code

RESIDENCE_STATE_CD NUMBER(5) Residence State Code

SMOKER_FREQ_MODE_CD NUMBER(5) Smoker Frequency Mode Code

SMOKER_FREQ_NUMBER NUMBER(8) Smoker Frequency Number

SMOKER_STAT_CD NUMBER(5) Smoker Stat Code

SPECIAL_DATE_LAST DATE Special Date Last

SPECIAL_TERMS_FLG NUMBER(1) Special Terms Flag

SPECIAL_TERMS_REASON_CD VARCHAR2(5) Special Terms Reason Code

TEMP_FLAT_END_DATE DATE Temp Flat End Date

TEMP_FLAT_EXTRA_AMT NUMBER(14,2) Temp Flat Extra Amount

TEMP_TABLE_RATING_CD NUMBER(5) Temp Table Rating Code

TEMP_TABLE_RATING_END_DATE DATE Temp Table Rating End Date

TOBACCO_FREE_DATE DATE Tobacco Free Date

TOBACCO_TYPE_CD NUMBER(5) Tobacco Type Code

UNDERWRITING_CLASS_CD NUMBER(5) Underwriting Class Code

WEIGHT NUMBER(8,4) Weight

Page 865: fe115trm

Life Insurance

Insurance Data Model A-83

Oracle Proprietary, Confidential Information - Use Restricted by Contract

WORK_EXPERIENCE_ADMIN NUMBER(8,4) Work Experience Admin

WORK_EXPERIENCE_MANUAL NUMBER(8,4) Work Experience Manual

WORK_EXPERIENCE_SUPERV_ADMIN NUMBER(8,4) Work Experience Superv Admin

WORK_EXPERIENCE_SUPERV_MANUAL NUMBER(8,4) Work Experience Superv Manual

WORK_EXPERIENCE_TRAVEL NUMBER(8,4) Work Experience Travel

AIRSPORTS_COMPETE_FLG NUMBER(1) Airsports Compete Flag

AIRSPORTS_PROFESSIONAL_FLG NUMBER(1) Airsports Professional Flag

AIRSPORTS_SAFETY_STANDARDS_FLG NUMBER(1) Airsports Safety Standards Flag

AV_IFR_FLG NUMBER(1) Aviation IFR Flag

AV_AVIATION_TYPE_CD NUMBER(5) Aviation Aviation Type Code

AV_STUDENT_FLG NUMBER(1) Aviation Student Flag

AV_AIRCRAFT_TYPE_CD NUMBER(5) Aviation Aircraft Type Code

AV_JOB_ON_AIRCRAFT_CD NUMBER(5) Aviation Job on Aircraft Code

AV_FLYING_PURPOSE_CD NUMBER(5) Aviation Flying Purpose Code

AV_HIGHEST_QUALIF_LVL_CD NUMBER(5) Aviation Highest Qualif Lvl Code

AV_PROPOSED_QUALIF_LVL_FLG NUMBER(1) Aviation Proposed Qualif Lvl Flag

AV_DATE_OF_QUALIFICATION DATE Aviation Date of Qualification

AV_RENEWAL_FLG NUMBER(1) Aviation Renewal Flag

BALLOON_LAND_FLG NUMBER(1) Balloon Land Flag

BALLOON_INLAND_WATER_FLG NUMBER(1) Balloon Inland Water Flag

BALLOON_REMOTE_TERRAIN_FLG NUMBER(1) Balloon Remote Terrain Flag

BALLOON_MOUNTAINS_FLG NUMBER(1) Balloon Mountains Flag

BALLOON_OCEAN_FLG NUMBER(1) Balloon Ocean Flag

BALLOON_TYPE_CD NUMBER(5) Balloon Type Code

BALOON_NUMBER_HOURS NUMBER(8) Baloon Number Hours

CLIMB_AVG_DURATION NUMBER(8) Climb Average Duration

CLIMB_AVG_HEIGHT NUMBER(8) Climb Average Height

CLIMB_AVG_DIFFICULTY_CD NUMBER(5) Climb Average Difficulty Code

CLIMB_GUIDE_USAGE_FLG NUMBER(1) Climb Guide Usage Flag

CLIMB_SOLO_FLG NUMBER(1) Climb Solo Flag

CLIMB_BREATHING_APPARATUS_FLG NUMBER(1) Climb Breathing Apparatus Flag

FOREIGN_TRAVEL_AVG_TIME NUMBER(8) Foreign Travel Average Time

FOREIGN_TRAVEL_BUS_FLG NUMBER(1) Foreign Travel Business Flag

FOREIGN_TRAVEL_CNTRY_CD NUMBER(5) Foreign Travel Country Code

FOREIGN_TRAVEL_ENV_CD NUMBER(5) Foreign Travel Environment Code

FOREIGN_TRAVEL_MAX_TIME NUMBER(8) Foreign Travel Maximum Time

FOREIGN_TRAVEL_PLEASURE_FLG NUMBER(1) Foreign Travel Pleasure Flag

HANG_GLIDE_CERTIFIED_CRAFT_FLG NUMBER(1) Hang Glide Certified Craft Flag

HANG_GLIDE_EXPERIM_EQUIP_FLG NUMBER(1) Hang Glide Experim Equip Flag

HANG_GLIDE_ASSEMBLY_CD NUMBER(5) Hang Glide Assembly Code

MILITARY_NUM_MONTHS_CUR_ASG NUMBER(8) Military Num Months Cur Assignment

Page 866: fe115trm

Life Insurance

A-84 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

MILITARY_ORG_TYPE_CD NUMBER(5) Military Org Type Code

MILITARY_RANK_CD NUMBER(5) Military Rank Code

MILITARY_STATUS_CD NUMBER(5) Military Status Code

PARACHUTING_FREE_FALL_MAX NUMBER(8) Parachuting Free Fall Maximum

PARACHUTING_FREE_FALL_AVG NUMBER(8) Parachuting Free Fall Average

RACING_DISTANCE_AVG NUMBER(8) Racing Distance Average

RACING_DISTANCE_MAX NUMBER(8) Racing Distance Maximum

RACING_SPEED_AVG NUMBER(8) Racing Speed Average

RACING_SPEED_MAX NUMBER(8) Racing Speed Maximum

RACING_TRACK_TYPE_CD NUMBER(5) Racing Track Type Code

RACING_TRACK_SURFACE_CD NUMBER(5) Racing Track Surface Code

RACING_COMPETITION_LIC_FLG NUMBER(1) Racing Competition License Flag

RACING_DRIVER_SCHOOL_FLG NUMBER(1) Racing Driver School Flag

RACING_STUNT_DRIVING_FLG NUMBER(1) Racing Stunt Driving Flag

RACING_COMPETITION_LOC_FLG NUMBER(1) Racing Competition Loc Flag

RACING_PROFESSIONAL_FLG NUMBER(1) Racing Professional Flag

ULTRALIGHT_CRAFT_CD NUMBER(5) Ultralight Craft Code

ULTRALIGHT_RIGID_WING_FLG NUMBER(1) Ultralight Rigid Wing Flag

ULTRALIGHT_MOTORIZED_FLG NUMBER(1) Ultralight Motorized Flag

ULTRALIGHT_LICENSE_FLG NUMBER(1) Ultralight License Flag

UW_DIVING_AVG_DEPTH NUMBER(8) UW Diving Average Depth

UW_DIVING_AVG_MINUTES NUMBER(8) UW Diving Average Minutes

UW_DIVING_CERTIF_LVL_CD NUMBER(5) UW Diving Certif Lvl Code

UW_DIVING_DIVE_ALONE_FLG NUMBER(1) UW Diving Alone Flag

UW_DIVING_PURPOSE_CD NUMBER(5) UW Diving Purpose Code

UW_DIVING_TYPE_CD NUMBER(5) UW Diving Type Code

UW_DIVING_EXPERIM_EQUIP_FLG NUMBER(1) UW Diving Experim Equip Flag

UW_DIVING_LAST_DIVE_DATE DATE UW Diving Last Dive Date

UW_DIVING_MAX_DEPTH NUMBER(8) UW Diving Maximum Depth

UW_DIVING_MAX_MINUTES NUMBER(8) UW Diving Maximum Minutes

UW_DIVING_EQUIP_SERVICE_FLG NUMBER(1) UW Diving Equip Service Flag

Table: LIFE_PARTICIPANTS_POLICIESColumn Name Data Type Display Name

IDENTITY_CODE NUMBER(10) Identity Code

ID_NUMBER NUMBER(25) ID Number

PARTICIPANT_NUMBER NUMBER(10) Participant Number

AS_OF_DATE DATE As of Date

INSTRUMENT_TYPE_CD NUMBER(5) Instrument Type Code

Page 867: fe115trm

Life Insurance

Insurance Data Model A-85

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Table: MEDICAL_CONDITIONSColumn Name Data Type Display Name

PARTICIPANT_NUMBER NUMBER(10) Participant Number

MEDICAL_CONDITION_NUM NUMBER(10) Medical Condition Number

AS_OF_DATE DATE As of Date

CONDITION_TYPE_CD NUMBER(5) Condition Type Code

CONDITION_ONSET_DATE DATE Condition Onset Date

CONDITION_STATUS_CD NUMBER(5) Condition Status Code

DATE_LAST_SEEN DATE Date Last Seen

DATE_LAST_UPDATED DATE Date Last Updated

DISABILITY_FLG NUMBER(1) Disability Flag

LAST_EPISODE_DATE DATE Last Episode Date

NUM_EPISODES_LAST_YEAR NUMBER(8) Number Episodes Last Year

NUM_EPISODES_TOTAL NUMBER(8) Number Episodes Total

RECOVERY_DATE DATE Recovery Date

RECURRENCES_FLG NUMBER(1) Recurrences Flag

TIME_OFF_WORK NUMBER(8) Time Off Work

TREATMENT_START_DATE DATE Treatment Start Date

WEIGHT_CHANGE NUMBER(8,4) Weight Change

Table: MEDICAL_PREVENTIONSColumn Name Data Type Display Name

PARTICIPANT_NUMBER NUMBER(10) Participant Number

MEDICAL_PREVENTION_NUM NUMBER(10) Medical Prevention Number

AS_OF_DATE DATE As of Date

RESULTS_FLG NUMBER(1) Results Flag

TEST_DATE DATE Test Date

TEST_TYPE_CD NUMBER(5) Test Type Code

VISIT_REASON_CD NUMBER(5) Visit Reason Code

Table: MEDICAL_TREATMENTSColumn Name Data Type Display Name

PARTICIPANT_NUMBER NUMBER(10) Participant Number

MEDICAL_CONDITION_NUM NUMBER(10) Medical Condition Number

TREATMENT_TYPE_CD NUMBER(5) Treatment Type Code

AS_OF_DATE DATE As of Date

TREATMENT_START_DATE DATE Treatment Start Date

DATE_LAST_SEEN DATE Date Last Seen

TREATMENT_COMPLETION_FLG NUMBER(1) Treatment Completion Flag

TREATMENT_FREQ_MODE_CD NUMBER(5) Treatment Frequency Mode Code

COMPLICATIONS_FLG NUMBER(1) Complications Flag

Page 868: fe115trm

Life Insurance

A-86 Oracle Financial Services Technical Reference Manual

Oracle Proprietary, Confidential Information - Use Restricted by Contract

Table: RACING_COMPETITIONSColumn Name Data Type Display Name

PARTICIPANT_NUMBER NUMBER(10) Participant Number

RACING_COMPETITION_NUM NUMBER(10) Racing Competition Number

AS_OF_DATE DATE As of Date

CLASS_CHANGE_FLG NUMBER(1) Class Change Flag

COMPETITION_CLASS_CD NUMBER(5) Competition Class Code

VEHICLE_ENGINE_MAKE_CD VARCHAR2(5) Vehicle Engine Make Code

VEHICLE_ENGINE_MODEL_CD VARCHAR2(5) Vehicle Engine Model Code

VEHICLE_ENGINE_SIZE_CD VARCHAR2(5) Vehicle Engine Size Code

VEHICLE_HORSEPOWER NUMBER(8) Vehicle Horsepower

VEHICLE_MAKE_CD VARCHAR2(5) Vehicle Make Code

VEHICLE_MODEL_CD VARCHAR2(5) Vehicle Model Code

VEHICLE_USAGE_FLG NUMBER(1) Vehicle Usage Flag

Table: SUBSTANCE_USAGESColumn Name Data Type Display Name

PARTICIPANT_NUMBER NUMBER(10) Participant Number

SUBSTANCE_USAGE_NUM NUMBER(10) Substance Usage Number

AS_OF_DATE DATE As of Date

ADVISED_TO_LIMIT_USE_FLG NUMBER(1) Advised to Limit Use Flag

LAST_TREATMENT_DATE DATE Last Treatment Date

MEMBER_OF_SUPPORT_GROUP_FLG NUMBER(1) Member of Support Group Flag

SUBSTANCE_TYPE_CD NUMBER(5) Substance Type Code

SUBSTANCE_END_DATE DATE Substance End Date

SUBSTANCE_START_DATE DATE Substance Start Date

SUBSTANCE_MODE_CD NUMBER(5) Substance Mode Code

SUPPORT_GROUP_END_DATE DATE Support Group End Date

SUPPORT_GROUP_NAME_CD VARCHAR2(5) Support Group Name Code

SUPPORT_GROUP_START_DATE DATE Support Group Start Date

Page 869: fe115trm

Glossary-1

Glossary

Assumption IDs

This term refers to a family of IDs you use to create underlying assumptions to run Risk Manager and Transfer Pricing processes.

Bulk Processing

OFSA processing implemented with SQL statements that affect multiple rows is identified as Bulk Processing. OFSA uses bulk processing in situations where a large number of records are updated using a single SQL statement. A single OFSA process can use more than one bulk SQL statement to complete the process.

Bulk processing is generally database bound. Refer to the Multi-processing section in Chapter 5, “UNIX Server Installation and Configuration”, in the Oracle Financial Services Installation and Configuration Guide for more information on database bound processing.

Cash Flow Column

A Cash Flow column is an instrument column in the Oracle Financial Data Manager (FDM) database storing specific characteristics that dictate the cash payments and receipts for an account. Cash Flow columns are required for any OFSA processing that needs to generate cash payment and receipt events for instrument accounts.

Database Diagram

A database diagram is a graphic representation of application tables and the relationships between them.

Page 870: fe115trm

Glossary-2

Functional Area

A functional area is a set of tables and processes used to satisfy a business or process requirement. Each of the functional areas identified in the OFSA Technical Reference Manual is a set of tables used to implement a feature or business rule in OFSA. For example, the tables in the Leaves and Hierarchies functional area are used to identify Leaf Nodes and Tree Rollups.

ID

An ID is a logical construct for processing assumptions, instructions, report specifications, or other modeling related directions to OFSA software.

Instrument Table

Instrument tables in the FDM database contain account level financial data.

Knowledge Engine

The OFSA Knowledge Engines provide the means by which additional value-added information is created within the FDM database. Information is retrieved from the FDM database and processed based upon assumptions specified by the user.

The following is a list of the Knowledge Engines used by OFSA:

■ Data Correction Processing

■ Market Manager Processing

■ Allocation Processing

■ Risk Manager Processing

■ Transfer Pricing Processing

■ Transformation Processing

While a Knowledge Engine does not exist for Oracle Budgeting & Planning, the process by which value is added to the data is logically the same. Oracle Budgeting & Planning provides information to the user, which is then used to create value added budget information.

Page 871: fe115trm

Glossary-3

Leaf Column

A Leaf column is a special column used for categorizing data within the FDM database. Leaf columns provide information about how an account can be classified into different Charts of Accounts or Organizational Structures. Leaf values are the lowest level of designation within a Chart of Accounts.

For example, the Organizational Unit leaf column is provided with the initial installation of the FDM database. This column is used to categorize accounts by certain Organizational designations/locations within an institution. Accounts would be assigned (or would originate from) individual Organizational units. Each Organizational Unit would be represented by a leaf value for that column.

Leaf values can be hierarchically organized using an OFSA Tree Rollup ID.

The standard leaf columns provided with the initial FDM database structure are Financial Element, Organizational Unit, General Ledger Chart of Accounts, and Common Chart of Accounts. Additional user-defined Leaf columns can be created if needed.

LEDGER_STAT table

The LEDGER_STAT table is the data source for summary financial and statistical data used by OFSA.

OFSA

OFSA is an abbreviation for Oracle Financial Services Applications. OFSA refers generically to the system that comprises the products in the Oracle Financial Services suite.

OFSA Reserved Table

OFSA Reserved tables are provided with the installation of the FDM database and cannot be customized or altered. In addition, Oracle recommends that the data in these tables not be updated or changed outside of the OFSA interface. To update or change the data in these tables outside of the OFSA interface may cause OFSA to function incorrectly.

Note that many of the tables described within Chapter 2. “Detail Design” should not be customized or altered, even though they are not categorized as OFSA Reserved. Such tables are described in Chapter 2. “Detail Design” because they contain data that may be accessed outside of the OFSA interface, or because they provide a critical link to understanding of OFSA processes.

Page 872: fe115trm

Glossary-4

Product

A product is one application of the OFSA suite. Each of the OFSA products provides a set of business functions. OFSA is comprised of the following products:

■ Oracle System Administration

■ Oracle Balance & Control

■ Oracle Budgeting & Planning

■ Oracle Market Manager

■ Oracle Performance Analyzer

■ Oracle Portfolio Analyzer

■ Oracle Risk Manager

■ Oracle Transfer Pricing

Portfolio Field

A Portfolio field is a field that is common to all financial instruments.

Portfolio Instrument Table

A Portfolio Instrument is a table defined with all required instrument columns and all cash flow columns. By definition, all portfolio fields must be included on a Portfolio Instrument Table.

Row-by-row Processing

OFSA processing implemented by evaluating one record at a time is identified as Row by Row Processing. OFSA uses row by row processing for situations where a number of complex calculations are executed for each record. For example, OFSA uses row by row processing when generating cash flows for individual accounts during Risk Manager processing.

Row by row processing is generally OFSA bound. Refer to the Multi-processing section of Chapter 5, “UNIX Server Installation and Configuration” in the Oracle Financial Services Installation and Configuration Guide for more information regarding OFSA bound processing.

Page 873: fe115trm

Glossary-5

Summary Database Diagram

A summary database diagram shows the most important application tables and the relationships between them. It omits tables and relationships that contribute little to the understanding of the application data model. In addition, groups of tables that are conceptually linked may be identified as a single entity, rather than individually tables.

Tree Rollup

Tree Rollups are custom hierarchies based on leaf columns. For example, an Organizational hierarchy showing the relationships of all Organizational Units and any summary nodes can be created for the Organizational Unit leaf using the Tree Rollup ID interface.

OFSA allows any number of Tree Rollups to be created within the database.

Page 874: fe115trm

Glossary-6

Page 875: fe115trm

Index-1

IndexAabsolute payment amount, translating, 9-15Accrual

Method, 16-2adapter specification

ARPI, 5-6Allocation ID

AUDIT_TRAIL table, 2-59, 2-60Boundaries and Limitations, 6-5DATA_IDENTITY table, 2-92IDT_ROLLUP table, 2-154IDT_VIEW_FILTER table, 2-162NODE_DESC table, 2-196

allocation processing, 3-1amortization code

800 code, 9-12801 code, 9-12802 code, 9-12

application engine, 5-9configuration, 5-15

application request parameter interface, 5-15architecture

client/server, 5-1ARPI adapter, 5-9

data interface, 5-11system structure, 5-10

ARPI adapter specification, 5-6function, 5-6purpose, 5-6requirements, 5-6

ARPI command-line method, 5-15ARPI examples, 5-17ARPI interface sub-component, 5-11

ARPI protocol definition, 5-15assumptions

Forecast Balance, 9-16At

First Method, 16-3Last Method, 16-3

autobalancingPercent Taxable option, 9-8

AverageMethod, 16-2

Bbad usage, 5-24Balances

Boundaries and Limitations, 6-4Balances and Spreads

Balances and Limitations, 6-2Bullets, xxxvi

Ccancelled return code, 5-24cash flow calculation process, 9-5Cash Flow Calculations

Boundaries and Limitations, 6-8cash flow data

adjustable neg-am, 9-18detail, 9-55event triggers, 9-18static information, 9-17

Cash Flow GenerationBoundaries and Limitations, 6-9

Cash Flow(s)

Page 876: fe115trm

Index-2

Calculations, 9-1Daily, 9-2

client server architecture, 5-1component interactions, 5-12configuration, 5-15Configuration ID, 5-17

Data Correction Processingadditional data, 3-11

Data Correction processing steps, 3-9IDT_CONFIGURE table, 2-142, 2-143Physical Data Model

ID_DESC_SHORT, 5-27SYS_ID_NUM, 5-27

Risk ManagerModeling Buckets, 6-6

Risk Manager processingadditional notes, 3-44

Risk Manager processing steps, 3-40instrument table update, 3-45

Consolidation/Elimination LimitsBoundaries and Limitations, 6-2

Conventions, 9-3Correction Rule ID

bulk processing, 3-12Data Correction processing steps

additional notes, 3-11Evaluate Formula IDs, 3-9Read IDs, 3-9

Correction RulesBoundaries and Limitations, 6-1

cost of optionalityquatifying, 12-1

Currency Gain/Loss Basis, 9-8Currency Values

Boundaries and Limitations, 6-2currency-based processing, 9-4Customer

Rate, 9-38Support Information, xxxviii

customerization, 3-13

DDaily Cash Flows, 9-2data

initialization, 9-5data changes in instruments, 9-4Data Correction Process ID

IDT_VIEW_FILTER table, 2-162PROCESS_ERRORS table, 2-203

data correction processing, 3-7Data Filter ID

Boundaries and Limitations, 6-3CATALOG_OF_IDS table, 2-62Data Processing Steps

Filter?, 3-9IDT_RESULT_HEADER table, 2-149in Data Correction Processing Steps

Read Filter Type and ID, 3-9Risk Manager Processing Steps

Read Instrument Data, 3-42Transfer Pricing Processing Steps

Read Data Filter ID, 3-48Read Instrument Records, 3-49

Transformation ProcessingFilter?, 3-52

Transformation Processing StepsError in Transformation ID?, 3-53Read Filter Type and ID, 3-52

data interface interactions, 5-25data interface sub-component, 5-11data loading routines, 4-1, 4-2data model

request, 5-28Data Movement Routines (DMRs), 4-2data transformation routines, Oracle Budgeting &

Planning, 4-1Data Verification ID

OFSA_INDEX_STORAGE_DEFAULTS table, 2-164

database interactions, 5-14database, FDM, 5-9default currency code, 9-4detail

cash flow data, 9-55determining an account type of instrument, 9-6dimensions and hierarchies, loading, 4-3Discount Rates ID

IDT_RESULT_HEADER table, 2-149dynamic

Page 877: fe115trm

Index-3

characteristics, 9-10Dynamic Buckets

Boundaries and Limitations, 6-6

Eenvironment management requirements, 5-6

output management, 5-7error conditions, 5-23errors

cancelled, 5-24conditions, 5-23required action return codes, 5-24server application, 5-23

Event Driven Logic, 9-2Event Use Code Values, 9-59

FFDM database, 5-9financial element processing, 4-13financial elements

cash flow calculations, 9-3Oracle Risk Manager, 16-1

Fiscal YearBoundaries and Limitations, 6-2

Forecast Balance assumptions, 9-16Forecast Balance ID

Boundaries and Limitations, 6-7IDT_RESULT_HEADER table, 2-149Risk Manager Processing Steps

Read Scenario Assumption, 3-41forecast rate calculations

currency forecasting, 14-1interest rate forecasting, 14-8

Forecast Rates IDBoundaries and Limitations, 6-8IDT_RESULT_HEADER table, 2-149Risk Manager Processing Steps

Read Scenario Assumptions, 3-41Formula ID

Boundaries and Limitations, 6-3Data Correction Processing Steps

Evaluate Formula ID, 3-9Formula Leaves ID

Boundaries and Limitations, 6-7Risk Manager Processing Steps

Read Scenario Assumptions, 3-41

GGroup Filter ID

IDT_RESULT_HEADER table, 2-149Risk Manager Processing Steps

Read Instrument Data, 3-42GROUP_NAME, 5-28

HHistorical Rates ID

Transfer Pricing Processing StepsError in Assumptions?, 3-49Load Historical Rates ID, 3-48

householding, 3-13, 3-25

IID name value, 5-21ID_DESC_SHORT, 5-27ID_TYPE, 5-27Initialization

of Data, 9-5initialization of data, 9-5Initialize

Cash Flow Data, 9-9Interface Data, 9-7

initializingadjustable rate instruments for Transfer

Pricing, 9-15pattern records, 9-13single timeline pattern, 9-13split pattern, 9-14

initializing schedule records, 9-12inputs to ARPI, 5-15Instrument

Level Modeling, 9-2instrument

data changes, 9-4determining an account type, 9-6

Instrument Table ID Numbers

Page 878: fe115trm

Index-4

Boundaries and Limitations, 6-4insurance

data model, A-1life, A-1property casualty, A-1

interactionsdata interface, 5-25internal, 5-25output manager, 5-24spawn manager, 5-13

InterestCredited, 9-7

interest credited switch, 9-7interface

application request parameter, 5-15internal interactions, 5-25

diagram, 5-25IRC

Value(s), 9-38

Jjob number, 5-26job number lookup, 5-14JOB_NUM, 5-29

KKnowledge Engine, 3-1

LLeaf Characteristics ID

Boundaries and Limitations, 6-6IDT_CONFIGURE table, 2-144

Leaf Set UpBoundaries and Limitations, 6-4

Ledger Stat data, loading, 4-7level of integration, 5-2life insurance, A-1List(s)

Numbered, xxxviLogic

Event Driven, 9-2logical software layers, 5-1

LOI, 5-2levels, 5-2

code sharing, 5-2extended OFSA data model, 5-2shared OFSA data, 5-2

LSL, 5-1, 5-5

MMarket

ValueResults, 7-6

Value(s)Calculation, 9-46

Market Manager processing, 3-12market value calculation, 9-50Maturity Mix data, loading, 4-16Maturity Strategy ID

Risk Manager Processing StepsRead Scenario Assumptions, 3-41

merge customers, 3-17merge Individual customer records, 3-20Model with Gross Rates option, 9-7Modeling

Flexibility, 9-2Instrument Level, 9-2Start, End Dates, 9-15

modelingprocess, events, 9-17

Modeling BucketsBoundaries and Limitations, 6-6

modeling start and end dates, 9-15Monte Carlo

analytics, 15-1processing, 6-8

multicurrencyaccounting and consolidation, 9-3Currency Gain/Loss Basis, 9-8

multiple type enabled parameters, 5-21

NNegative

Amortization Check, 9-27NGAM Equalization Event, 9-21

Page 879: fe115trm

Index-5

non-currency-based processing, 9-4Number of IDs

Boundaries and Limitations, 6-4Numbered Lists, xxxvi

OOFS application engine, 5-9OFSA database interactions, 5-14OFSA environment, 5-11OFSA environment management, 5-6OFSA ID Names

Boundaries and Limitations, 6-3OFSA job number, 5-26OFSA job number interface, 5-11OFSA job number lookup, 5-14OFSA process flow, 5-4OFSA processing

application engine, 5-9ARPI adapter, 5-9output manager, 5-9process spawn manager, 5-9

OFSA system design, 5-8option cost calculations

purpose of, 12-1Oracle Express Administrator, 4-2Oracle Financial Analyzer, 4-1Oracle Financial Data Manager (OFDM), 4-1ordering parameters, 5-11Organizational Unit Tree

Boundaries and Limitations, 6-1output management, 5-7output manager, 5-9output manager interactions, 5-24output manager interface, 5-11outputs from ARPI, 5-23

Pparameter

application request, 5-15parameter format management, 5-7parameter interface

Balance and Control, 5-16Risk Manager, 5-16

Transfer Pricing, 5-16parameter management, 5-7parameters

multiple type, 5-21passing parameters

data interface, 5-11password security, 5-8Pay-Equivalent Compounding Convention

switch, 9-8Payment

Calculation Event, 9-17payment calculation steps, 9-18payment event, 9-21payment event steps, 9-22payment pattern data, 9-8percent

sold adjustment, 9-16Percent Taxable option, 9-8prepared parameters, 5-26prepayment

event, 9-30Prepayment ID

Boundaries and LimitationsRisk Manager, 6-8Transfer Pricing, 6-8

IDT_RESULT_HEADER table, 2-149Risk Manager Processing Steps

Read Scenario Assumptions, 3-41Read Stochastic Assumptions, 3-41

Transfer Pricing Processing StepsError in Assumptions, 3-49Read Prepayment ID, 3-48

Prepayment Table IDBoundaries and Limitations

Risk Manager, 6-8Transfer Pricing, 6-8

Transfer Pricing Processing StepsRead Prepayment ID, 3-48

Pricing Margin IDIDT_RESULT_HEADER table, 2-149Risk Manager Processing Steps

Read Scenario Assumptions, 3-41process

cash flow calculation, 9-5process control

Page 880: fe115trm

Index-6

spawned, 5-8process data model, 5-26process flow, 5-3

diagram, 5-4Process ID

Data Correction Processing StepsRead Process ID, 3-9

IDT_VIEW_FILTER table, 2-162PROCESS_CASH_FLOWS table, 2-200PROCESS_ERRORS table, 2-203Risk Manager Processing Steps

additional notes, 3-44Read RM Process ID, 3-40Value at Risk processing, 3-43Write one month rates?, 3-43

Transfer Pricing Processing StepsRead Process ID, 3-48

Process ID (for Budgeting and Planning)DATA_IDENTITY table, 2-93

Process ID (for Risk Manager)IDT_RESULT_DETAIL table, 2-146IDT_RESULT_HEADER table, 2-149OFSA_TABLE_TRACKING table, 2-247RES_DTL_XXXXXX table, 2-34, 2-39, 2-40, 2-41,

2-42, 2-272RESULT_BUCKET table, 2-215RESULT_MASTER table, 2-80, 2-217RESULT_SCENARIO table, 2-223TM_STOCH_MKT_VAL table, 2-254TM_STOCH_RATES table, 2-255TM_STOCH_TOT_VAR table, 2-256TM_STOCH_VAR table, 2-257

Process ID (for Transfer Pricing)DATA_IDENTITY table, 2-93

process modeling events, 9-17process requirements, 5-7

parameter format management, 5-7parameter management, 5-7spawned process control, 5-8SQL query capabilities, 5-7

process spawn manager, 5-9Processing

Boundaries and Limitations, 6-7processing

currency-based, 9-4

non-currency-based, 9-4Product Tree

Boundaries and Limitations, 6-1product/currency combinations, 9-4promotion generation, 3-32promotion rollup, 3-37promotion tracking by product, 3-27promotion tracking by query, 3-30property/casualty insurance, A-1PSL, 5-5

Rrate conversion

algorithms, 13-8definitions, 13-1rate format usage, 13-5

Rate Index IDBoundaries and Limitations, 6-7Risk Manager Processing Steps

Read Stochastic Assumptions, 3-41Rates

Boundaries and Limitations, 6-4registering captured output, 5-11relational environment, 4-1Report ID

Boundaries and Limitations, 6-5DETAIL_LEAVES table, 2-110FISCAL_YEAR_INFO table, 2-134IDT_CONFIGURE table, 2-142IDT_SUBTOTAL table, 2-160LEAF_DESC table, 2-186NODE_DESC table, 2-196

Report(s)Macros, 16-16

reprice event, 9-37repricing pattern data, 9-8request data model, 5-28Request Queue

Boundaries and Limitations, 6-3required action return codes, 5-24requirements

environment management, 5-7process, 5-7security, 5-8

Page 881: fe115trm

Index-7

return codes, 5-23, 5-24bad usage, 5-24cancelled, 5-24

Risk Manager data, loading, 4-10Risk Manager processing, 3-38Risk Manager Reports

Boundaries and Limitations, 6-6Rounding Codes, 9-40Rule of 78’s, 9-59

Sscenario-based processing, 3-44schedule records, initializing, 9-12secured directory, 5-8secured files

temporary, 5-8secured variables, 5-14, 5-26security

maintaining, 5-12password, 5-8secured directory, 5-8secured variables, 5-14, 5-26unsecured variables, 5-14

security requirements, 5-8password security, 5-8secured directory, 5-8temporary secured files, 5-8

security sub-component, 5-12server application return codes, 5-23setting values

required environment variables, 5-11single timeline pattern, initializing, 9-13spawn manager interactions, 5-13spawned process control, 5-8split pattern, initializing, 9-14SQL query capabilities, 5-7SQL Statements

Boundaries and Limitations, 6-4SQL Talk

Boundaries and Limitations, 6-3static characteristics, 9-9stochastic-based processing, 3-44Stratification ID

Boundaries and Limitations, 6-5

Subtotal IDIDT_ROLLUP table, 2-154IDT_SUBTOTAL table, 2-160LEAF_DESC table, 2-186NODE_DESC table, 2-196

SumMethod, 16-3

Super Administrator personal database, 4-2SYS_ID_NUM, 5-27system design, 5-8system ID number value, 5-21system interactions, 5-12system structure, 5-10

ARPI interface sub-component, 5-11

TTable ID

Boundaries and Limitations, 6-5Transfer Pricing Processing Steps

Read Prepayment ID, 3-48temporary secured files, 5-8Term Structure ID

Boundaries and Limitations, 6-7Term Structure Models, 15-25Terms and Frequencies

Boundaries and Limitations, 6-4Time Periods

Boundaries and Limitations, 6-2Transaction Strategies ID

Boundaries and Limitations, 6-7Transaction Strategy ID

IDT_CONFIGURE table, 2-144IDT_RESULT_HEADER table, 2-149Risk Manager Processing Steps

Read Scenario Assumptions, 3-41Read Stochastic Assumptions, 3-41

TransferPricing, 9-38

Transfer Pricing CalculationsBoundaries and Limitations, 6-9

Transfer Pricing IDTransfer Pricing Processing Steps

Error in Assumptions?, 3-49Read Instrument Records, 3-49

Page 882: fe115trm

Index-8

Read Transfer Pricing ID, 3-48Transfer Pricing processing, 3-46Transformation ID

Boundaries and Limitations, 6-3DETAIL_ELEM table, 2-105, 2-106IDT_RESULT_HEADER table, 2-149IDT_VIEW_FILTER table, 2-162LEAF_DESC table, 2-186MENU_SECURITY table, 2-246NODE_DESC table, 2-196OFSA_TABLE_TRACKING table, 2-247PROCESS_ERRORS table, 2-203RES_DTL_XXXXXX, 2-34, 2-272RESULT_BUCKET table, 2-215RESULT_MASTER table, 2-80, 2-217RESULT_SCENARIO table, 2-223TRANSFORM_LS_TEMPLATE table, 2-258Transformation Processing Steps

additional notes, 3-56Build Indexes, 3-55Create Output Table(s), 3-54Error in Transformation?, 3-53Filter?, 3-52Overlapping Data?, 3-54Populate Output Table(s), 3-55Read Transformation ID, 3-52Replace Data?, 3-54Select Source Data, 3-55Table Empty?, 3-54

transformation processing, 3-50translation

non-currency-based processes, 9-11, 9-13Tree Filter ID

Data Correction Processing StepsFilter?, 3-9Read Filter Type and ID, 3-9

IDT_RESULT_HEADER table, 2-149IDT_ROLLUP table, 2-154IDT_VIEW_FILTER table, 2-162LEAF_DESC table, 2-186NODE_DESC table, 2-196Risk Manager Processing Steps

Read Instrument Data, 3-42Transformation Processing Steps

Filter?, 3-52

Tree RollupBoundaries and Limitations, 6-2

Tree Rollup ID, 6-2CATALOG_OF_IDS table, 2-62IDT_ROLLUP table, 2-154IDT_SUBTOTAL table, 2-160IDT_VIEW_FILTER table, 2-162LEAF_DESC table, 2-186LEVEL_DESC table, 2-191NODE_DESC table, 2-196OFSA_TABLE_TRACKING table, 2-247TRANSFORM_ROLLUP_TEMPLATE

table, 2-265triggers, 9-11

UUNIX signals, 5-5unsecured variables, 5-14User Interface Display of Dates

Boundaries and Limitations, 6-4User-defined Patterns

Boundaries and Limitations, 6-8Users and Groups

Boundaries and Limitations, 6-3