Professional Documents
Culture Documents
Technical Foundation
Presented At:
Atlanta Oracle Application User Group Meeting
August 20, 1999
Presented by:
Brad Eldredge
1
Agenda:
u Introduction [5 min]
l Speaker & Audience
l Establish Baseline Understanding & Set Expectations
l Objectives, Assumptions, & Scope
u Conclusion [5 min]
l Next Steps
l Questions & Answers
l Attend Breakout Session For More Details (Informal 1 hour)
Oracle General Ledger- Technical Foundation
2
Introductions & Experience:
u Brad Eldredge
l Manager, Oracle|solutions
l AnswerThink Consulting Group
l 6 years of Oracle applications experience - functional & technical / user & consultant
l GL Enhancements Chairman Since Spring 1995
l GL SIG Coordinator Since Fall 1998
u Audience
l Application Release? User Interface (Character, Smart Client, Internet/NCA)?
l Application Perspective
èEnd User / Business Analyst
èTechnical (e.g. Developer, DBA, IT, System Support)
èOther
l Roles
èCurrent - Technical Ability (Application, Tools, & Process)
èFuture - Desire to become more Technical?
l Role Perspective
èConsultant / Implementation
èOrganizational Setup / Support / Reporting / Developer
3
Objectives, Assumptions, & Scope:
u Presentation Objectives
l Provide overview of technical roles, responsibilities, & tools - relating to Oracle GL
(applies generically to all applications)
l Provide understanding of major GL & FND application tables as they relate to
application processes
l Provide information about where to obtain more information & how to become “more
technical”
u Presentation Assumptions
l Already Familiar w/ Rel 11.0 & General Ledger application
l Commercial Installation
u Presentation - Out Of Scope Topics
l Average Balancing
l Encumbrance & Budgetary Control (non-profit/govt)
l How to use technical tools (e.g. SQL)
l Database schema design
u Presentation Expectations
l Q&A - Please hold until end or ask during breakout session
l Aggressive agenda - We will move quickly through the materials & will only scratch
the surface
4
Apps Tech Foundation Perspectives:
u Application Super Users Perspective
l Ad-hoc Reporting (e.g. Discoverer)
l OLAP tools (e.g. Oracle Financial Analyzer)
l Production Support (e.g. Fix problems, delete unwanted data, etc.)
u Implementation Perspective
l Programmatically Loading Apps Setups (e.g. COA values)
l Interfaces & Extracts
l Historical Data Conversion
l Application Customizations
5
Database Objects:
l Database Object - something created and stored in a database. Tables, views,
synonyms, indexes, sequences, clusters, and columns are all types of database
objects.
l Table - the basic storage structure in a relational database, which consists of one or
more units of information (rows) each containing the same kinds of values
(columns).
l Synonym - a name assigned to a table or view that may thereafter be used to refer
to it.
l Index - an Oracle feature used primarily to speed execution and impose uniqueness
upon certain data. Indexes provide a faster access method to a table’s data instead
of being required to perform a full table scan. Works similar to a card catalog.
l Sequence - a database object used to generate unique integers for use as primary
keys.
6
Technical Tools Introduction:
7
Technical Tools:
u SQL (Structured Query Language) - used to perform DDL &
DML commands (SQL*Plus)
8
Technical Tools Cont’d:
u Operating System:
l Operating system commands & navigation(e.g. Unix)
l Operating system file structure
l Text Editor (e.g. Unix vi)
u Connectivity Tools:
l FTP (File Transfer Protocol)
l Telnet
9
Database vs. Application Security:
u Database Level Security:
l Database Users (e.g. GL, AP, AR, APPLSYS, etc.) - own all database objects & have
been granted privileges to access
l Database IDs required for ALL tools which directly access Oracle database objects
(e.g. SQL*Plus, Discoverer, Developer / Designer 2000, etc.)
l End users sheltered from the database level of security when accessing via Oracle
applications
10
Linking Applications To Back-End:
u From w/i Oracle applications, use the following menu command... “Help |
About This Record”, which indicates the base table or view associated with
the active form
11
Technical Education Resources:
12
Oracle Table Types:
In Scope For Today:
u GL Application Foundation (FND) Tables
l Accounting Flexfield - “FND_ID_FLEX_STRUCTURES” & “FND_ID_FLEX_SEGMENTS”
l Value Sets - “FND_FLEX_VALUE_SETS”
l Segment Values - “FND_FLEX_VALUES” & “FND_FLEX_VALUES_TL”
u GL Application - Setup Tables
l Set of Books - “GL_SETS_OF_BOOKS”
l Code Combinations - “GL_CODE_COMBINATIONS”
l Calendar - “GL_PERIODS”, “GL_PERIOD_STATUSES”
l Budget Definitions - “GL_BUDGETS”, “GL_BUDGET_ENTITIES”, “GL_BUDGET_VERSIONS”
u GL Application - Open Interface Tables
l Actuals Interface - “GL_INTERFACE”
l Budget Interface - “GL_BUDGET_INTERFACE”
l Daily Foreign Currency Rates - “GL_DAILY_RATES_INTERFACE”
u GL Application - Transaction & Balance Data Tables
l Journal Entries (Transactions) - “GL_JE_BATCHES”, “GL_JE_HEADERS”, “GL_JE_LINES”
l Balances - “GL_BALANCES”
13
Oracle Table Types Cont’d:
Out Of Scope For Today:
u GL Application Definition Tables
l Cross Validation Rules - “FND_FLEX_VALIDATION_RULES” &
“FND_FLEX_VALIDATION_RULE_LINES”
l Mass Allocations - “GL_ALLOC_BATCHES”, “GL_ALLOC_FORMULAS”,
“GL_ALLOC_FORMULA_LINES”
14
GL Objects Trivia:
15
Applsys / Foundation Tables:
16
GL Technical Foundation - Tables :
17
Tables - Application Setup (FND) :
u FND_APPLICATION (_TL)
l APPLICATION_ID = 101 (Identifies Oracle General Ledger)
u FND_CURRENCIES (_TL)
l Currency Code - Ties to Set of Books, GL Data, & Interface Tables
18
Tables - Application Setup (FND) Cont’d:
u FND_FLEX_VALUE_SETS
l Flex Value Set ID (Primary Key which uniquely identifies records)
l Validation Type (e.g. Independent, Dependent, Table, None, etc.)
l Format Type (e.g. Char, Numeric, Date, etc.)
l Maximum Size
l Alphanumeric, Alpha Only, Numeric Only; Uppercase Alpha Flag
u FND_FLEX_VALUES (_TL)
l Segment Value
l Description
l Flex Value Set ID - Associates Segment Value w/ Value Set
l Parent Flag
l Enabled Flag
l 50 Descriptive Flexfields available
19
Table - FND_FLEX_VALUES :
Name Null? Type
------------------------------- -------- ---------------
FLEX_VALUE_SET_ID NOT NULL NUMBER(10)
FLEX_VALUE_ID NOT NULL NUMBER(15)
FLEX_VALUE NOT NULL VARCHAR2(150)
ENABLED_FLAG NOT NULL VARCHAR2(1)
SUMMARY_FLAG NOT NULL VARCHAR2(1)
START_DATE_ACTIVE DATE
END_DATE_ACTIVE DATE
PARENT_FLEX_VALUE_LOW VARCHAR2(60)
PARENT_FLEX_VALUE_HIGH VARCHAR2(60)
STRUCTURED_HIERARCHY_LEVEL NUMBER(15)
HIERARCHY_LEVEL VARCHAR2(30)
COMPILED_VALUE_ATTRIBUTES VARCHAR2(2000)
VALUE_CATEGORY VARCHAR2(30)
ATTRIBUTE1 - ATTRIBUTE50 VARCHAR2(240)
20
Table - FND_FLEX_VALUES Cont’d:
l Notes:
èTable contains seed data
èAlways take an export of base tables before modifying w/ SQL*Plus
l Account Types inherited by Account Code Combinations only @ CCID creation time;
Gotcha > Retained Earnings Year-end Closeout
l Ensure SQL*Plus script verifies that data in staging table meets the respective Value
Set constraints prior to populating the Oracle base table.
21
Loading FND_FLEX_VALUES:
u Implementation Requirement: Setup Chart of Accounts
l Load & Verify Key Segment Values > FND_FLEX_VALUES & FND_FLEX_VALUES_TL
èCreate & populate Excel Template (based on Value Set definitions)
22
Loading FND_FLEX_VALUES Cont’d:
èCreate SQL*Loader control file (.ctl)
èVerify successful loads by reviewing .log & .bad files; Review data loaded into
custom staging table(s)
èSQL*Plus: Create script & run to load data from staging into base tables
èVerify successful load & run compile flexfields concurrent request via Oracle
application form (e.g. Key Segment Values)
23
GL Technical Foundation - Tables :
24
Table - GL_SETS_OF_BOOKS :
Name Null? Type
------------------------------- -------- --------------
SET_OF_BOOKS_ID NOT NULL NUMBER(15)
NAME NOT NULL VARCHAR2(30)
SHORT_NAME NOT NULL VARCHAR2(20)
CHART_OF_ACCOUNTS_ID NOT NULL NUMBER(15)
CURRENCY_CODE NOT NULL VARCHAR2(15)
PERIOD_SET_NAME NOT NULL VARCHAR2(15)
SUSPENSE_ALLOWED_FLAG NOT NULL VARCHAR2(1)
ALLOW_INTERCOMPANY_POST_FLAG NOT NULL VARCHAR2(1)
ENABLE_JE_APPROVAL_FLAG NOT NULL VARCHAR2(1)
MRC_SOB_TYPE_CODE NOT NULL VARCHAR2(1)
FUTURE_ENTERABLE_PERIODS_LIMIT NUMBER(15)
LATEST_OPENED_PERIOD_NAME VARCHAR2(15)
RET_EARN_CODE_COMBINATION_ID NUMBER(15)
CUM_TRANS_CODE_COMBINATION_ID NUMBER(15)
DESCRIPTION VARCHAR2(240)
ATTRIBUTE1 - 15 VARCHAR2(150)
25
Table - GL_CODE_COMBINATIONS :
Name Null? Type
------------------------------- -------- ------------
CODE_COMBINATION_ID NOT NULL NUMBER(15)
CHART_OF_ACCOUNTS_ID NOT NULL NUMBER(15)
DETAIL_POSTING_ALLOWED_FLAG NOT NULL VARCHAR2(1)
DETAIL_BUDGETING_ALLOWED_FLAG NOT NULL VARCHAR2(1)
ACCOUNT_TYPE NOT NULL VARCHAR2(1)
ENABLED_FLAG NOT NULL VARCHAR2(1)
SUMMARY_FLAG NOT NULL VARCHAR2(1)
SEGMENT1 - 30 VARCHAR2(25)
DESCRIPTION VARCHAR2(240)
TEMPLATE_ID NUMBER(15)
ATTRIBUTE1 - 10 VARCHAR2(150)
26
Table - GL_PERIODS :
Name Null? Type
------------------------------- -------- ------------
PERIOD_SET_NAME NOT NULL VARCHAR2(15)
PERIOD_NAME NOT NULL VARCHAR2(15)
START_DATE NOT NULL DATE
END_DATE NOT NULL DATE
YEAR_START_DATE DATE
QUARTER_START_DATE DATE
PERIOD_TYPE NOT NULL VARCHAR2(15)
PERIOD_YEAR NOT NULL NUMBER(15)
PERIOD_NUM NOT NULL NUMBER(15)
QUARTER_NUM NOT NULL NUMBER(15)
ENTERED_PERIOD_NAME NOT NULL VARCHAR2(15)
ADJUSTMENT_PERIOD_FLAG NOT NULL VARCHAR2(1)
27
Table - GL_PERIOD_STATUSES :
Name Null? Type
------------------------------- -------- ------------
APPLICATION_ID NOT NULL NUMBER(15)
SET_OF_BOOKS_ID NOT NULL NUMBER(15)
PERIOD_NAME NOT NULL VARCHAR2(15)
CLOSING_STATUS NOT NULL VARCHAR2(1)
28
Tables - Budget Setup:
u GL_BUDGETS
l Stores budget definitions from “Define Budget” form
l Budget Name, Set of Books ID, Valid Period Range (e.g. First & Last periods)
u GL_BUDGET_VERSIONS
l Stores information about budget versions - currently Oracle only supports
one budget version per budget definition
u GL_BUDGET_ENTITIES
l Stores information about budget organizations. Each row includes the
organization name and the set of books ID. This is the base table for the
“Define Budget Organization” form.
u GL_BUDGET_ASSIGNMENT_RANGES
l Stores the account ranges assigned to each budget organization
29
GL Technical Foundation - Tables :
30
Application Open Interface Tables (GL) :
GL_INTERFACE
Used to import journal entry transactions (budget, actual, encumbrance, and statistical)
from external sources. Also used to send transactions between sets of books (e.g.
Consolidation, MRC, CENTRA, etc.).
Notes:
Requires calendar periods to be “Open” or “Future”. The “Journal Import” program
transfers data from the Interface table into the Oracle base tables (e.g. GL_JE_BATCHES,
GL_JE_HEADERS, and GL_JE_LINES).
The “Journal Posting” program changes the posting status w/i the “GL_JE_” tables,
updates the GL_BALANCES table, creates Intercompany Balancing transactions, Suspense
Posting transactions, etc.
GL_BUDGET_INTERFACE
Used to import budget data directly into GL_BALANCES table without requiring accounting
periods to be open or run the Journal Posting program
GL_DAILY_RATES_INTERFACE
Used to automates the loading of currency conversion rates into the GL_DAILY_RATES
table.
31
Open Interface Table Diagram :
Legacy System(s) / GLDI
GL_INTERFACE GL_BUDGET_INTERFACE
GL_JE_BATCHES GL_BALANCES
GL_JE_HEADERS
GL_JE_LINES
32
Table - GL_INTERFACE :
Name Null? Type
------------------------------- -------- ----
STATUS NOT NULL VARCHAR2(50)
SET_OF_BOOKS_ID NOT NULL NUMBER(15)
ACCOUNTING_DATE NOT NULL DATE
CURRENCY_CODE NOT NULL VARCHAR2(15)
ACTUAL_FLAG NOT NULL VARCHAR2(1)
USER_JE_CATEGORY_NAME NOT NULL VARCHAR2(25)
USER_JE_SOURCE_NAME NOT NULL VARCHAR2(25)
BUDGET_VERSION_ID NUMBER
SEGMENT1-30 VARCHAR2(25)
ENTERED_DR NUMBER
ENTERED_CR NUMBER
ACCOUNTED_DR NUMBER
ACCOUNTED_CR NUMBER
REFERENCE1-30 VARCHAR2(100)
CODE_COMBINATION_ID NUMBER(15)
ATTRIBUTE1-20 VARCHAR2(150)
33
Table - GL_BUDGET_INTERFACE :
Name Null? Type
------------------------------- -------- ------------
BUDGET_NAME NOT NULL VARCHAR2(15)
BUDGET_ENTITY_NAME NOT NULL VARCHAR2(25)
CURRENCY_CODE NOT NULL VARCHAR2(15)
FISCAL_YEAR NOT NULL NUMBER(15)
UPDATE_LOGIC_TYPE NOT NULL VARCHAR2(1)
BUDGET_ENTITY_ID NUMBER(15)
SET_OF_BOOKS_ID NUMBER(15)
CODE_COMBINATION_ID NUMBER(15)
BUDGET_VERSION_ID NUMBER(15)
PERIOD_TYPE VARCHAR2(15)
STATUS VARCHAR2(1)
ACCOUNT_TYPE VARCHAR2(25)
PERIOD1_AMOUNT NUMBER
SEGMENT1 - 30 VARCHAR2(25)
34
Table - GL_DAILY_RATES_INTERFACE :
Name Null? Type
------------------------------- -------- -------------
FROM_CURRENCY NOT NULL VARCHAR2(15)
TO_CURRENCY NOT NULL VARCHAR2(15)
FROM_CONVERSION_DATE NOT NULL DATE
TO_CONVERSION_DATE NOT NULL DATE
USER_CONVERSION_TYPE NOT NULL VARCHAR2(30)
CONVERSION_RATE NOT NULL NUMBER
INVERSE_CONVERSION_RATE NUMBER
35
GL Technical Foundation - Tables :
36
Tables - Transactions & Balances :
GL_JE_BATCHES
1
M
GL_JE_HEADERS
1
M
GL_JE_LINES GL_BALANCES
37
Data Tables - GL_JE_LINES :
Name Null? Type
------------------------------- -------- -------------
JE_HEADER_ID NOT NULL NUMBER(15)
JE_LINE_NUM NOT NULL NUMBER(15)
SET_OF_BOOKS_ID NOT NULL NUMBER(15)
CODE_COMBINATION_ID NOT NULL NUMBER(15)
PERIOD_NAME NOT NULL VARCHAR2(15)
EFFECTIVE_DATE NOT NULL DATE
STATUS NOT NULL VARCHAR2(1)
ENTERED_DR NUMBER
ENTERED_CR NUMBER
ACCOUNTED_DR NUMBER
ACCOUNTED_CR NUMBER
DESCRIPTION VARCHAR2(240)
REFERENCE_1 - _5 VARCHAR2(240)
ATTRIBUTE1 - 20 VARCHAR2(150)
38
Data Tables - GL_BALANCES :
Name Null? Type
------------------------------- -------- ------------
SET_OF_BOOKS_ID NOT NULL NUMBER(15)
CODE_COMBINATION_ID NOT NULL NUMBER(15)
CURRENCY_CODE NOT NULL VARCHAR2(15)
PERIOD_NAME NOT NULL VARCHAR2(15)
ACTUAL_FLAG NOT NULL VARCHAR2(1)
BUDGET_VERSION_ID NUMBER(15)
TRANSLATED_FLAG VARCHAR2(1)
PERIOD_NET_DR NUMBER
PERIOD_NET_CR NUMBER
BEGIN_BALANCE_DR NUMBER
BEGIN_BALANCE_CR NUMBER
PERIOD_NET_DR_BEQ NUMBER
PERIOD_NET_CR_BEQ NUMBER
BEGIN_BALANCE_DR_BEQ NUMBER
BEGIN_BALANCE_CR_BEQ NUMBER
TEMPLATE_ID NUMBER(15)
Oracle General Ledger- Technical Foundation
39
Next Steps:
40
Questions:
41