0% found this document useful (0 votes)
18 views17 pages

Database Items

Uploaded by

muchomba
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views17 pages

Database Items

Uploaded by

muchomba
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 17

1.

Database items
2. FastFormula Application
Dictionary
Objective

 At the end of this lesson you should be able to

 Explain Database items


 Explain User Entities
 Understand how FastFormula accesses DBI
Database Items

 Database Item - An item of information in Oracle HRMS that


gives fast formula access a complete SELECT statement to
extract data from the database.

- Are accessed inside fast formula


– Strictly read only.
– Only one value returned.
– Database item cache for improved performance.
– Use “Context Values”.
 Contexts:
– Is the ‘context’ within which a Formula execution occurs.
– Examples: ASSIGNMENT_ID, PERSON_ID.
– Not visible to user: not “parameters”.
– Current architecture limits total number.

-Database Items contexts are related to the following:


– Business Group
– element and element link
– payroll and payroll run
– employee and employee assignment
Contexts:
– “Not parameters” : concrete example:
sd = ASG_START_DATE
Needs the ASSIGNMENT_ID context.
– Passed implicitly.
– Cannot ever be passed as NULL.
– Dependent on Formula Types
Database Items schema
 FF_DATABASE_ITEMS
 FF_USER_ENTITIES
 FF_ROUTES
 FF_CONTEXTS
 FF_ROUTE_CONTEXT_USAGES
 FF_ROUTE_PARAMETERS
 FF_ROUTE_PARAMETER_VALUES
DBI Example ( Simple )
 ASG_START_DATE
select min (effective_start_date) from
/* Assignment start date */
per_assignments_f
where assignment_id = &B1
Place holders are variables used in the WHERE clause to make
the SQL statement more dynamic. There are two types of place
holders, &U# and &B# (Where # is a sequence number)
&B# placeholders reference contexts in the tables
FF_ROUTE_CONTEXT_USAGES and FF_CONTEXTS.
The value of a context is NOT fixed. It is passed through by the
formula at run time.
DBI Example - Complex
NET_PAY_ASG_RUN
select /*+ RULE*/ nvl(sum(fnd_number.canonical_to_number(TARGET.result_value) *
FEED.scale),0) from
pay_balance_feeds_f FEED
,pay_run_result_values TARGET
,pay_run_results RR
,pay_payroll_actions PACT
,pay_assignment_actions ASSACT
where ASSACT.assignment_action_id = &B1
and PACT.payroll_action_id = ASSACT.payroll_action_id
and RR.assignment_action_id = ASSACT.assignment_action_id
and RR.status in ('P', 'PA')
and TARGET.run_result_id = RR.run_result_id
and nvl(TARGET.result_value, '0') <> '0'
and FEED.balance_type_id = &U1
and FEED.input_value_id = TARGET.input_value_id
and PACT.effective_date
between FEED.effective_start_date and FEED.effective_end_date
DBI Example - Complex
Place holders in the form of &U# are designed to be
used based on the user entity.
They reference parameters and parameter values in
the tables FF_ROUTE_PARAMETERS and
FF_ROUTE_PARAMETER_VALUES.
The available values for &U# place holders is fixed.
It is NOT passed through the formula.
DBI
DBI are automatically created for

– Global values,
– Balances,
– input values. – If create dbi is checked

Exception DBI for pay value is not created if "Multiple


entries allowed' and UOM is not
numeric/money/hours.
Fast Formula Application
Dictionary
 The FastFormula Application Dictionary contains
the information that FastFormula uses to generate
a complete SQL statement.

 The Dictionary stores various parts of the text of


SQL statements in several tables.
Entity Diagram
How FastFormula Uses the
Dictionary
 FastFormula gets the value in the DEFINITION_TEXT
column of FF_DATABASE_ITEMS and puts it in the
SELECT clause of the SQL statement.

 The USER_ENTITY_ID from FF_DATABASE_ITEMS is


used to get the route ID from FF_USER_ENTITES.

 The route ID is used to get the route text from


FF_ROUTES. The route text represents the FROM
clause of the SQL statement
User Entity
 EMPLOYEE_LAST_NAME is a value in the USER_NAME
column of table FF_DATABASE_ITEMS. When FastFormula
runs a formula in which EMPLOYEE_LAST_NAME is a variable,
it accesses this table for two reasons:
 It gets the value in the DEFINITION_TEXT column. This is the
value that appears in the SELECT clause of the SQL. In our
example, it is PER_PEOPLE.LAST_NAME. (TARGET is an alias
for PER_PEOPLE.)
 It identifies the user entity of which the database item is a part. A
user entity is a group of one or more database items that can be
accessed by the same route. In our example, the user entity
might be EMPLOYEE_DETAILS.
Restrict DBI in FastFormula
 There is a mechanism to restrict the database
items a formula can use. It can only use database
items appropriate to the formula context.

 FF_FTYPE_CONTEXT_USAGES holds the lists of


contexts available to a specific formula type. This
list determines which database items are
available to a specific formula.
Summary

In this lesson you have learnt about

Database Items
FastFormula Application Dictionary
User entities

You might also like