Sei sulla pagina 1di 10

(This article is current as of 19 May 2006)

PURPOSE
-------
To provide general and technical information on Extra Information Types.

SCOPE & APPLICATION


-------------------
The paper is intended for all people involved in setting up or supporting
the use of Extra Information Types.

NOTE: The scripts and table specifics mentioned in this document reference
11.0.3 architecture. The information is relevant to all releases, but the
scripts may need to be adjusted based on the release in question.

RELATED DOCUMENTS
-----------------
None

Contents
--------
- General Introduction
- Defining an Extra Information Type
- Restricting Access to Extra Information Types
- Adding EIT forms to a Taskflow
- Adding EIT forms to a Menu
- Organization EITs
- Technical Information
- Common Problems

General Introduction
--------------------

Extra Information Types allow users to hold unlimited amounts of extra


information on people, assignments, locations, positions, jobs and
organizations. The format of this data is defined by the user in
descriptive flexfield structures and accessed via Extra Information forms
that can be added to taskflows and menus.

Defining an Extra Information Type


----------------------------------

You define EITs in the relevant descriptive flexfield. These are


Extra Person Information
Assignment Extra Information
Extra Location Information
Extra Position Information
Extra Job Information
Organizaion Developer DF

Organization EITs are slightly different and are dealt with in their own
section further on.

The Context Reference Field on these flexfields is seeded with the value
INFORMATION_TYPE. You create a new context value for each EIT you
require.
Then create segments to hold the information you want to record, as you
would
for anyother descriptive flexfield. To avoid potential upgrade problems you
should avoid prefixing your new context values with PER, PAY, etc. Then
freeze
the flexfield structure.

Each EIT needs to be registered in the relevant EIT table (example,


PER_PEOPLE_INFO_TYPES for Person EITs).

The sql code to do this for a Person EIT is

INSERT INTO PER_PEOPLE_INFO_TYPES


(INFORMATION_TYPE
,ACTIVE_INACTIVE_FLAG
,MULTIPLE_OCCURENCES_FLAG
,DESCRIPTION
,LEGISLATION_CODE
,OBJECT_VERSION_NUMBER
0
SELECT
'<person EIT name>'
,'Y'
,'<Y for multi row - N for single>'
,'<description>'
,'GB'
,1
FROM SYS.DUAL
WHERE NOT EXISTS (SELECT 1
FROM PER_PEOPLE_INFO_TYPES
WHERE INFORMATION_TYPE = '<person EIT name>'
/

The code required to do this for each different EIT type is documented in the
Extra Information Types in Oracle HRMS white paper, Appendix A. It is
likely
that there will be a form to do this in a future release.

Restricting Access to Extra Information Types


---------------------------------------------

To allow a responsibility to access an EIT, you need to navigate to the


Information Type Security form [Security->Extra Information Security].
Highlight the responsibility that should have access to the EIT and then
pick in the EIT name in the Information Types zone.

Adding EIT forms to a Taskflow


--------------------------------

Task flow nodes for all EIT forms are seeded, but not included in any seeded
task flows. So you will need to either update an existing taskflow or create a
new one in order to access the EIT forms. Use the Define Task Flows screen
[Navigate->Security->Task Flow->Definitions] to create or update your task
flow.

Adding EIT forms to a Menu


----------------------------

It is necessary to create a function for a new task flow before it can be


added to a menu. In System Administrator [Navigate->Application-
>Function]
enter a function name and a user function name then enter the following
parameter:

WORKFLOW_NAME="<taskflow name>"

Go to the Define Menu screen [Navigate->Application->Menu] and query


the menu
that you wish to change. The value that you pick in the Function field will be
what was entered as the User Function Name in the Define Function form.

There is also a seeded function for each EIT form that could be added to a
menu.

Organization EITs
-----------------

Organization EITS are slightly different as Organizations are one of the


HRMS
bulding blocks shared with other products. Organization classifications are
used to identify different uses for organizations eg Business Group, HR
Organization, etc. EITs are held in the same way as other organization
information eg Business Group Information, Tax Details References, etc.
They
are linked to the organization through the classification, so you need to
decide which classifications can use each EIT.

You define the Organization EIT segments in the same way as for other
EITs.
The descriptive flexfield that they are defined in is the Organization
Developer DF flexfield structure. This may be protected and so will not be
visible in the Descriptive Flexfield Segments screen. You can unprotect it
by
unchecking the Protected flag in the Register Descriptive Flexfield screen
[Flexfield->Descriptive->Register] in Application Developer. Make sure
you
reset the Protected flag when you have finished.

The Organization EIT needs to be registered by inserting a row in the table


HR_ORG_INFORMATION_TYPES.

INSERT INTO HR_ORG_INFORMATION_TYPES


(ORG_INFORMATION_TYPE
,DESCRIPTION
,DESTINATION
,DISPLAYED_ORG_INFORMATION_TYPE
,FND_APPLICATION_ID
,LEGISLATION_CODE
,NAVIGATION_METHOD
)
SELECT
'<organizaion EIT name>'
,'<description>'
,NULL
,'<diaplay value on the Organization form>'
,NULL
,'GB'
,'<GM for multi-row - GS for single>'
FROM SYS.DUAL
WHERE NOT EXISTS (SELECT 1
FROM HR_ORG_INFORMATION_TYPES
WHERE ORG_INFORMATION_TYPE = '<organizaion EIT
name>'
/

You also need to link the EIT with the organization classifications that will
use it by inserting a row in the table HR_ORG_INFO_TYPES_BY_CLASS.

INSERT INTO HR_ORG_INFO_TYPES_BY_CLASS


(ORG_CLASSIFICATION
,ORG_INFORMATION_TYPE
,MANDATORY_FLAG
)
SELECT
'<check lookup type for classification eg HR_BG for business group>'
,'<organizaion EIT name>'
,'N'
FROM SYS.DUAL
WHERE NOT EXISTS (SELECT 1
FROM HR_ORG_INFO_TYPES_BY_CLASS
WHERE ORG_INFORMATION_TYPE = '<organizaion EIT
name>'
AND ORG_CLASSIFICATION = '<HR_BG FOR BUSINESS
GROUP>')
/

You need to populate the translation table for any languages you are using
(in
this example, just US)

insert into hr_org_information_types_tl


(ORG_INFORMATION_TYPE
,LANGUAGE
,SOURCE_LANG
,DISPLAYED_ORG_INFORMATION_TYPE)
select
'<organizaion EIT name>'
,'US'
,'US'
,'<description>'
from SYS.Dual
WHERE NOT EXISTS(select 1
FROM hr_org_information_types_tl
WHERE ORG_INFORMATION_TYPE = '<organization EIT
name>')

The EIT is immediately accessible from the Others button in the Define
Organization screen [Work Structures->Organization->Description] for the
relevant classification.

Organization EITs are not visible in the Information Type Security form
[Security->Extra Information Security].
Technical Information
---------------------

New contexts for the EIT descriptive flexfields are held in


FND_DESCR_FLEX_CONTEXTS, and the segments are held in
FND_DESCR_FLEX_COL_USAGE
as with any other descriptive flexfield.

An EIT is registered by inserting a row into the relevant EIT table. The
information here includes the EIT name, legislation code and whether the
EIT
allows single or multiple entry.
The EIT tables are
HR_LOCATION_INFO_TYPES
HR_JOB_INFO_TYPES
HR_POSITION_INFO_TYPES
HR_PEOPLE_INFO_TYPES
HR_ASSIGNMENT_INFO_TYPES
HR_ORG_INFORMATION_TYPES
For Organization EITs it is also necessary to link the EIT with an
organization
classification. This link is held in HR_ORG_INFO_TYPES_BY_CLASS.
Sql scripts for inserting all this information are documented in the white
paper
Extra Information Types in Oracle HRMS, in Appendix A.

PER_INFO_TYPE_SECURITY is used to hold the EITs that a responsibility


may
access (excluding organization EITs). This information is entered in the
Information Type Security form [Security->Extra Information Security].

The forms that display EIT information are


PERWSLEI F4 Define Location Extra Information
PERWSDOR F4 Define Organization
PERWSJEI F4 Define Job Extra Info
PERWSPOI F4 Define Position Extra Info
PERWSPEI F4 Define Person Extra Info
PERWSAEI F4 Define Assignment Extra Info
The data displayed on these forms is held in
HR_LOCATION_EXTRA_INFO
HR_ORGANIZATION_INFORMATION
PER_JOB_EXTRA_INFO
PER_POSITION_EXTRA_INFO
PER_PEOPLE_EXTRA_INFO
PER_ASSIGNMENT_EXTRA_INFO

There are a number of APIs which allow you to create, update and delete
EIT
information. They are
create_location_extra_info,
update_location_extra_info,
delete_location_extra_info

create_job_extra_info,
update_job_extra_info,
delete_job_extra_info

create_position_extra_info,
update_position_extra_info,
delete_position_extra_info

create_person_extra_info,
update_person_extra_info,
delete_person_extra_info

create_assignment_extra_info,
update_assignment_extra_info,
delete_assignment_extra_info

Common Problems
---------------

1. When accessing an EIT form you see the error

"There are no displayable segments enabled for this descriptive flexfield


context."
There is a descriptive flexfield for each EIT and there is also a descriptive
flexfield for each EIT form. eg Extra Person Information is the df for
Person Extra Information; and Extra person Information Details is the df
on
the Person EIT form. If you mistakenly set up your EIT flexfield segments
in the Extra Person Information Details df then you will get the above
error
when you navigate to the Person EIT form as the EIT df has no segments
defined.

2. When you save information in an EIT form the data doesn't get comitted.
If
you try to leave the form it will ask if you want to save your changes, but
again it will not commit the save.

This is due to the APIs that are used behind the EIT forms. APIs cannot
yet
handle descriptive flexfield data. If you were running the API via a
wrapper
it would error with HR_9999_FLEX_INV_INFO_ARG. The default
package code
checks for a not-null value in all of the flex columns and raises the error
if there are any. This ensures that the customer considers the API level
validation for flexfields. They should look at these packages and code in
validation which replicates the validation defined in the Define Descriptive
Flexfields screen. In a test environment the packages can be modified so
that no validation is performed but this should never be done on a live
database. The validation code is held in the procedure df in the following
files.

peaeifli.pkb (assignment eits)


pejeifli.pkb (job eits)
pepeifli.pkb (person eits)
pepoifli.pkb (position eits)
hrleifli.pkb (location eits)

3. The EIT white paper talks about customizing the EIT forms to restrict by
certain Extra information Types. On the base r11 release this was
not possible as the EIT forms were not in the LOV on the Form
Customization
screen. These forms are now included if PER patchset D or later has been
applied against r11.0.3

Security of EITs is not performed by form customization. Instead the


Information Type Security form [Security->Extra Information Security] is
used
to define which responsibilities can see which EITs.

_____________________________________________________________
___________________
Oracle Support Services

Potrebbero piacerti anche