TableSet Sharing in PeopleSoft
Wednesday, February 10, 2010
Question:
What is SetID and how does TableSet Sharing works in PeopleSoft?
Answer:
Before we answer this question, we must try to understand the basic type of tables in PeopleSoft.
In PeopleSoft, we store information in different type of Tables. These tables serve as a repository to establish and maintain all of your company's core data online. The different types of tables that we are talking about are - Control Tables and Transaction Tables.Control tables store information that defines the company's structure and processing rules. Control tables are generally static; they change only when you perform specific maintenance appropriate to changes in your business policies, organizational structure, or processing rules. Examples of Control Tables are - PS_DEPT_TBL (Department Table), PS_LOCATION_TBL (Location Table) etcTransaction tables store data about day-to-day business activities. These tables may be updated more frequently than values in a control table. Examples of such tables are: PS_JOB, PS_NAMES and PS_ADDRESSES etc.
Difference between Transaction and Control Table:
Most data recorded in control tables is stored by Table Set ID (also called as SetID). Whenever your enter information in control table, you must enter the SetID to establish the ownership of that information. A grouping of data that is keyed by the same SetID is called a TableSet.
Establishing your SETID(s) is one of the first steps in setting up your foundation table's data within your system. The SETID table is a delivered PeopleSoft table used to label and identify Tablesets. Setids allow Business Units the option of sharing or decentralizing data in the control tables.
Once you've setup a SETID, you can create a Business Unit and link the setID to it. So, when you create a business unit in the system, you must assign it a setID. The setID determines which values in various control tables a business unit has access to. For example, suppose you have created a business unit called ABCBU, the system required you enter a setID. In this case you can enter TSTID as the setID for the business unit - ABCBU.So, what is a Business Unit? In PeopleSoft, a Business Unit is an Operation area or subset of an Organization. A business unit is an organizational entity which maintains its own transaction data. Once you define business unit, you will have control tables data that would represent for that business unit.
Definition of Tablesets and SetIDs:A TableSet is a group of rows (set of data) in a control table that is identified by the same high-level key. A setID is a label (high-level key) that identifies a TableSet. Tablesets and SetIDs are devices that enable you to share - or restrict - information across business units. For example, with TableSets and SetIDs you can centralize redundant information such a country codes while keeping information such as departments and job codes decentralized. The overall goal of TableSets and SetIDs is to minimize data redundancy, maintain data consistency, and reduce system maintenance tasks. The setID, or additional primary key, is what enables the sharing of control table information to take place across business units.
You must define at least one TableSet/setID. The SETID key field is included on all control tables
Record Groups:In order to share data among different business unit using TableSet feature, all control tables are divided into Record Groups. So, we group control tables to form something called as Record Groups. The control tables used by each of the HRMS applications are grouped by function into record groups. A record group is a set of logically and functionally related control tables and views. All tables in the same record group will have the same key on each table.
Once you have created a SetID and Business Unit, you need to map a relationship between this two using the record groups. With this you will determine which SetID you want the system to access for each of the above delivered record groups for HR or PY for each business unit. So, when you create a business unit, the system creates an entry in the TableSet Control component for the business unit, populated with every record group in the system, and associates with each record group the setID that you selected for the business unit. For Example, if we have created a business unit as ABCBU and mapped SetID as TSTID, at the TableSet Control component for ABCBU, it should have TSTID as the SetID mapped to all available record groups
All of these values defaulted from the business unit setup. Here you can modify the mapping of SetID to each individual record group, i.e. when you want the business unit to have access to the rows in other SetIDs for certain record groups, change the default setID to the appropriate setID.
So,based on this setups, when you open a Transactional page like Job Data, and you try to query any Control Table Based prompt fields like Location, Department or Job Code , you will get the results based on the Business Unit and the SetID Combination that was set in Set Control Page. So for example, if you have Location Table with 10 rows, 8 rows had TSTID as the SetID and 2 rows with USA01, and if you have ABCBU as the business unit in the Job Page, you should see 8 rows of Location Data when you click on the Prompt Table of Location Field.
5 comments:
thanks for the wonderful article
Excellent explanation...
Very clear explanation. Great Job!!
Nice article. Very helpful
Thank you very helpful article.
Post a Comment