Pages

OracleEBSpro is purely for knowledge sharing and learning purpose, with the main focus on Oracle E-Business Suite Product and other related Oracle Technologies.

I'm NOT responsible for any damages in whatever form caused by the usage of the content of this blog.

I share my Oracle knowledge through this blog. All my posts in this blog are based on my experience, reading oracle websites, books, forums and other blogs. I invite people to read and suggest ways to improve this blog.


Sunday, February 17, 2013

Oracle HRMS – Define Organization – Functional and Technical Overview


1. Organizations in HRMS
2. Creating Organizations and Classifications
3. Organizations in Other Products
4. Operating Units and Multiorg
5. Business Groups
6. Organizations and Managers
7. Org Developer DFF
8. Technical Details

1. Organizations in HRMS
Organizations are used in HRMS to represent a business.
Business groups, External organizations (for example, tax offices, insurance carriers, disability organizations, benefit carriers, or recruitment agencies), Internal organizations (for example, departments, sections or cost centers) and GREs/Legal Entities can be created as organizations.
In HRMS an employee assignment will be assigned to an organization to show where he works within the business. When the assignment is created (a default assignment is automatically created when a person is hired as an employee) the business group is defaulted in as the assignment’s organization. This would usually be corrected to a lower level organization to identify his department. As many organizations as are required can be created. This will depend on the business and to what level it is required to hold information. Organization hierarchies can be created to show how organizations fit together in a tree structure. Hierarchies are not covered in this note.
2. Creating Organizations and Classifications
An organization requires a start date and a name. You can optionally enter location details and Organization Type. The Organization Type is used for reporting only. There is a seeded LOV for this field and it is possible to add additional types to that LOV.
The organization can be either Internal or External. People can only be assigned to Internal organizations (in the Assignments screen). The Classification of the organization allows specific information to be held according to the purpose of the organization. Examples of classifications are: Business Group, HR Organization, Inventory Organization, GRE/Legal Entity, Company Cost Center.
The LOV for classifications comes from the lookup type ORG_CLASS. An organization can have as many classifications as it requires. To be able to use the organization on the Assignment screen in HRMS it will need a classification of ‘HR Organization’.
For each classification selected, more information can be held about that organization. Each classification has a number of Organization Information Types each of which comprises a set of fields. When the ‘Others’ button is pressed in the Define organization screen, a LOV shows the information types for the selected classification. When a information type is selected from this list the set of fields for that org type are displayed.
For example for the Business Group classification there are information types:
Business group Info
Benefits Defaults
Budget Value Defaults
Tax Details Reference
Work Day Information
….. etc
And each of these information types has a number of fields associated with it.
3. Organizations in other products
Other products within Oracle Applications use organizations. The classifications and information types are used to ensure the required information about any kind of organization is stored.
All organizations are created and maintained using the Define Organization screen which is owned by the HR product group. So while the data being entered may not be HR related, it is often the case that HRMS Support would work on a SR relating to, for example, an Inventory Organization. When you understand the concepts of classifications and organization types and how the Org Developer DF flexfield works, it is usually possible to investigate a problem with any organization.
4. Operating Units
You can create an operating unit using the Define Organizations form but this requires that you first create a Set of Books.
5. Business Groups
Business Groups are just organizations which have the classification ‘Business Group’ Each organization will have a BUSINESS_GROUP_ID to identify which business group it was created from. A business group will have identical values for BUSINESS_GROUP_ID and ORGANIZATION_ID. Organizations from all business groups can be queried up in the Define Organizations screen. However only organizations for the current business group and the classification ‘HR Organization’ can be used in the Assignment screen.
6. Organizations and Managers
The Organization Manager Relationship screen (Work Structures->Organization->Organization Manager) is used to enter and query the manager for an organization. This information can also be entered in the Define Organization screen for organizations with a classification of Company Cost Center:
Query up the organization and highlight the classification Company Cost Center.
Press the Others button and select Report Information.
Managers for this organization can be entered here and, once saved, will also be displayed in the Organization Manager Relationship screen.
7. Org Developer dff
The seeded descriptive flexfield ‘Org Developer DF’ is used to define Organization Information Types.
This DFF is context sensitive and each context value is an information type. The segments defined for each context map to the fields displayed for that information type when the information type is selected from the ‘Others’ button on the Define organization screen.  When the ‘Other’s button is pressed, not all of the information types are listed. The table HR_ORG_INFO_TYPES_BY_CLASS lists which org types are available for each classification and so the list is restricted according to the highlighted classification.
When one of the listed information types is selected, the dff segments for that information type (context) are displayed in a popup box. The dff is seeded and should not be unfrozen and changed by a customer.
8. Technical Details
Tables
HR_ALL_ORGANIZATION_UNITS
The basic details of an organization are stored here. There is also a translation table HR_ALL_ORGANIZATION_UNITS_TL for the organization name in each language installed.
HR_ORG_INFORMATION_TYPES
This holds the different types of organization information. Each type is defined in the Org Developer DF as a context value. eg Work Day Information, Business Group Information, etc. When using the Organizations screen you would see the information types relevant to the org classification.
HR_ORG_INFO_TYPES_BY_CLASS
This table holds the org information types that are available for each classification. This data is seeded and there is no screen that displays these groupings. When you select a classification on the Org screen and press the Other button, this table is referenced to display the relevant org information types.
HR_ORGANIZATION_INFORMATION
This table is more complicated as it stores two distinct sets of information.
To know which type of information is stored you need to check the value in column ORG_INFORMATION_CONTEXT. When the value is ‘CLASS’ the row is used to link an organization to a classification. There will be one row for every classification used by an organization. The classification name is held in column ORG_INFORMATION1. If you create an organization, a row will be added here for every classification you save against that org.
When the value is set to an information type (from HR_ORG_INFORMATION_TYPES) the columns ORG_INFORMATION1-20 are used to hold the values for that information type.
So when you are in the Define Organizations screen and you press the others button and select an information type, the values you see in the fields on the screen come from this table.
The information type is a dff context with some segments defined. Each segment is mapped to one of the ORG_INFORMATIONx columns in this table. When you open the information type field you see the individual segments and the value for each segment is held in the column in table HR_ORGANIZATION_INFORMATION that matches the column specified in the segment definition.
The lookup ORG_TYPE holds values for the ‘Type’ field on the Define Organization screen.
The lookup ORG_CLASS holds values for the Classifications Name field on the Define Organization screen.
How can I find the LOV used by a segment in the Information Type I select from the ‘Others’ button?Query up the dff Org Developer DF and select the context whose name matches the name of the Information type you selected from the ‘Others’ button.
The Segments screen lists the fields defined for that information type. The LOV will come from the validation used by the relevant segment.
If a valueset is used then the LOV will be based on a sql statements if Table Validation is specified; or values defined in the Segment Values screen (Application->Validation->Values) if dependent or independent validation is specified.
Can I define 2 organizations with the same name?This is possible but is not recommended, and certainly not recommended when the system profile HR: Cross Business Group is set to ‘Yes’.
Where is the information from the Organization Manager Relationship screen held?The Organization Manager Relationship screen uses the Org Developer DF dff. It is just another UI to the information type ‘Reporting Information’ for an organization with a classification of Cost Center.
Only organizations with a classification of Cost Centre can be queried in the Organization Manager Relationship screen.
What sql can I run to show the classifications defined for an organization?This sql will prompt you for an organization name
select i.organization_id, o.name, l.meaning
from hr_all_organization_units o
, hr_organization_information i
, fnd_lookup_values l
where o.organization_id = i.organization_id
and o.name = ‘&Organization_Name’
and i.org_information1 = l.lookup_code
and l.lookup_type = ‘ORG_CLASS’
and i.org_information_context = ‘CLASS’;
What sql can I run to see the segment values for a specific Information Type for my organization?This will be different depending on which Information Type you select.
First open the Org Developer DF and find the structure for the Information type you require eg Work Day Information
See the COLUMN value for each segment.
In this example:
Segment Name Column
Normal Start Time ORG_INFORMATION1
Normal End Time ORG_INFORMATION2
Working Hours ORG_INFORMATION3
Frequency ORG_INFORMATION4
Now create the sql selecting those columns from HR_ORGANIZATION_INFORMATION
This sql will prompt you for an organization name
select o.name
, i.org_information1 Normal_Start_Time
, i.org_information2 Normal_End_Time
, i.org_information3 Working_Hours
, i.org_information4 Frequency
from hr_organization_information i
, hr_all_organization_units o
where o.name = ‘&Organization_Name’
and o.organization_id = i.organization_id
and i.org_information_context = ‘Work Day Information’;
To create the sql for a different Information Type simply replace the SELECT section with the COLUMNs and aliases for that Information Type.

No comments:

Post a Comment