Professional Documents
Culture Documents
It is a process of integrated flow of Information, which binds the organization together. It is an integrated application software module providing operational, managerial and strategic Information for improving productivity, efficiency and quality. PeopleSoft HRMS system provides complete support for all human resources needs with functionality for Recruiting employees for jobs
Tracking training, employee skills and education Administering base benefits programs and more
7. Difference between field edit and save edit? In Field edit for each field change, a transition to the application server to the database is taken place. In Save edit for all the fields, only one transition to the application server to the Database is taken place. 8. Diff b/w save pre change and save post change? 9. Arrays and Load lookup in SQR? Load Lookup is used to reduce the complexity of joins - it populates the values of a certain field depending on the key field specified from a certain table. Then the users can query from the preloaded lookup table instead of joining tables. While arrays are used to store and retrieve data using the get and put commands Load-lookup: Load-lookup will be populated at compilation time. We can adjust the size of load-lookup. It is only for text data type Array: Array gets populated at Execution time. We can't modify size of the Array. If we given more than the size of the array, Array supports all data types.
12. Can the output of a SQL query be stored in a variable using PeopleCode? If
so how it be done? SQLExec ("SELECT EMPLID FROM JOB", &Emplid);
9. After completion of Copying double click on Roles folder under the opened project and verify that "Done" checkbox should be checked. 14.What is the use of set control field in record field properties? Set Control id is used when you want to share tables in PeopleTools applications. 15.How to create prompt table? Using edit table option in record field properties 16.How is performance management taken care in People Tools? Indexing tables on the database side helps in batch processing a great deal. Analyzing tables helps. If there is custom code make sure the SQL queries used are written well with the use of proper keys and joins are correct as well.
1. What are state records? The state record will be used to pass variable information between two
application engine sections. It can be physical or derived work record. Physical record can be used when you have restart logic and when you have disabled the restart logic derived work record can be used. There can be a max of 200 state records that can be used in a single AE but only one of them can be default state record name must end with _AET.
4. Difference between SQLEXEC and CREATESQL? SqlExec means it bypasses the component buffer and it is directly contacts
database to retrieve data. But it retrieves the data row by row and not possible for bulk insert. But in the case of Create SQL we can able insert the data in bulk.
1. Where is peoplecode stored? Database Server, PSPCMPROG 2. Is there any function in peoplecode which stops the processing of whole component? Think-time functions suspend processing either until the user has taken some action (such as clicking a button in a message box), or until an external process has run to completion. Think-time functions Following are Think time functions: DoCancel DoModal DoModalComponent Exec (only when Synchronous) File attach functions Prompt
1. Stages of program flow in SQR? Compile stage All the Preprocessor directives are compiled (which starts with #include). Ex: All the SQC are run. Check for the syntax errors for the conditions. Ex: if for loop while loop are properly ended with the respective syntax. Allocates memory structure if you are using the Arrays and load look up Execution stage starts interpreting the code line by line Check for the begin -program Begin -heading Begin- footer 2. Program flow of SQR? Setup section heading section footing section program section procedure section 1. Difference between Translate values and Prompt tables? Translate Table: Translate table is a special kind of table that is limited to validating data of four characters or less. The translate table serves as a universal prompt table and is effective-dated Prompt Table: Prompt table are used to provide users with validate values from other tables other values are generally populated by system users and are often application specific 2. What is .SQC and .SQT? .SQC is a Function Library file. It is like a sub program is saved by extension .SQC and this program can be called in the SQR program .SQT is compile time/Run time file. When a file with XXX.SQR is compiled we get the output as XXX.SQT and when is XXX.SQT is executed we get the output XXX.LIS (List file/Output file).
1. What is Normalization in Oracle? The major goals of Normalization are Eliminating redundant data (for example storing the same data in more than one table Ensuring data dependencies (only storing related data in a table).
1. Performance tuning in SQR? Load Look Up Arrays Multiple Report -Bnn Using SQT Files Run on the BATCH Server Proper Programming Logic Set processing SQL Tuning
1. Difference between search record and add search record? Search Record: Specify the search record for the component. The search record controls access to rows of data in a table. Its keys and alternate search keys appear on the search page as criteria. Add Search record: Specify if you want a different search record specifically for add actions. 2. What is difference between scroll and grid? Scroll area is used to maintain parent child relationship we insert grid in low level scroll Example: assume we have 3 scroll levels in our page level1 level2 and level3 we insert grid in level 3 3. How many ways we can run the application engine program? Running from Application Designer. By calling People Code function. Running from DOS Environment (Debugging). Running from Application Engine People Tool. Running from People soft Application. 1. Functional and Technical? Based on Customer Business processes functional person maps requirements to PeopleSoft and performs the rules and the Configurations required. He is the one who collects the requirement and decides what customization is and what is delivered by PeopleSoft.
PeopleSoft Technical Guy is the Person who knows how to code in PeopleSoft to execute the requirement.
values from one Action to another. Think of the fields of the Application Engine State Record as comprising the working storage for the Application Engine program. An Application Engine State Record can be either a physical record or a work record, and any number of State Records can be associated with a program. Physical State Records must be keyed by process instance. An Application Engine State Record must have PROCESS_INSTANCE defined as the first field and the only key field. And, so that the system recognizes the record as a State Record, all State Record names must end with the _AET identifier.
6. Is there any way by which you can find out whether the user is in Add mode
or Update mode? %mode---returns A---for Add mode. Returns U for Update mode
7. How is the searchinit event most often used by people soft application?
Searchinit fires before the search dialogue page is displayed to the end use. For this reason searchinit is often used to enhance row level security by inserting and graying out certain values to the search dialogue page.
Savepostchange fires after the updation of data in the database. SQLEXEC --- function directly interacts with the database. 13. What is Getlevel 0()? What is the use of %subrec and %selectall functions? Getlevel0 () ---used the get the rowset of the level0. %subrec--is used only in Dynamic View SQL where it expands to the columns of a subrecord: %selectall--%SelectAll is shorthand for selecting all fields in the specified record, wrapping date/time fields with %DateOut, %TimeOut. 14. What is an array in people code? What is maximum dimension of an array? Which function inserts values into an array? What is pop? An array is a collection of data storage locations, each of which holds the same type of data. The maximum depth of a PeopleCode array is 15 dimensions. Push and unshift are the functions of the array used to add the elements into the array one from the end of the array and one from the beginning. Pop is a function of array used to select and delete an element from the end of the array. 15. What is difference between Getrowset and Createrowset in people code? Getrowset is used to get rowset for a record in the component buffer. Createrowsetis used to create rowset for a record which in database, and is also called a Standalone rowset 16. Can you save the component programmatically? Using Dosave and Dosavenow functions. 17. What are differed processing and its advantages? Postpones some user actions to reduce the number of trips to the database so that increases the performance (in system edits, field edit, and field change). Advantages: 1) Reduces the network traffic. 2) Increases the performance. 18. Write the syntax to access third level record field using object oriented peoplecode? &fld=Getlevel0 ()(1).GetRowset(Record..GetRow(1), GetRowset (Record.).GetRow(1), GetRowset (Record.).GetRow(1), GetRecord (Record.).GetFieild(Field)) 19. What are the built-functions used to control translate values dynamically? Adddropdownitem () Deletedropdownitem () 20. Before accessing a people soft application what levels of security must be passed through. a) Field level security b) Row level security c) Maintain security d) Definition security e) Portal security.
# Numeric { } Variable in ASK or # define [$ variable] Dynamic variable referencing 1. What are the types of record definitions? SQL Tables SQL views Dynamic views Derived / Work Records Sub Records Query views
2. Table loading Sequence (installation)? Company table Installation Location Department Salary Plan Salary step Job code Pay group Benefit Programs 1. What is Application Engine?
It is the tool, which performs, background SQL processing against our application data tables. It is an alternative for COBOL, SQL or SQR
reside completely within your database. With Application Engine, there are the programs to compile, no statements to store, and no need to directly interact with the operating environment in use. You can build, run and debug your applications without existing People Tools. Effective Dating Application sections are effective dated-meaning you can activate/deactivate a section as of a particular date. This enables you to archive sections as you modify them, instead of destroying them. In the future if you decide to revert to a previous incarnation of a section you can simply reactivate it. SQL / Meta-SQL Support In addition to writing your SQL within Application Engine, you can also copy SQL statements into Application Engine from SQL talk or any other SQL utility with few if any changes. RDBMS platforms have many differing syntax rules especially in regard to date, time and other numeric calculations. For the most part you can work around this problem using Meta-SQL which Application Engine supports. This language was created to handle different RDBMS SQL syntaxs by replacing them with a standard syntax, called Meta-strings. With in Platform specific sections You can also have the ability to call generic portions of SQL statements by using the & CLAUSE function. This means you can write your generic SQL portions just once, and reference them from your different platform versions. Set Processing Support Set processing is a SQL technique used to process groups (or sets) of rows of one time rather than one at a time. Application Engine is particularly effective of processing these types of applications. Object Orientation unless designed to anticipate changes in field attributes. COBOL applications may need to be modified when things change. If a developer increases a fields length, then it may need to be changed in every instance where the COBOL program uses this field as a bind or select variable. This can require a good bit of effort. And, if not handled properly, a change like this can cause confusing errors. For example, if the length of a field in the COBOL is wrong, it may work fine, or you may get an error, or the field may get truncated. One of the corner stones of People soft functionality is Application Designer. Because of the way it works, most field attributes (type, length and scale) can be specified once, globally. If the field is used on more than one record, it has the same attributes in each of these records. PORTABILITY you can use Data Mover to import/export your applications. This means that you can export an application(s) into a file, and attach it to an e-mail message. Then, the recipient can simply use the IMPORT feature of Data Mover, and the application is ready to run. 4. Where are the search records assigned? Search records are assigned to a component in a menu.
5. Does the search record for a panel have to be the same as the record being
accessed on the panel? Why or Why not? The search record for the panel does not have to be the same as the record being accessed on the panel because the search record is used to search for and or Filter the search key. 6. Differentiate Error V/s Warning statements in People code? The error statement issues a message and the condition causing the error must be corrected before proceeding. The warning statement issues a message and the user can proceed without changing any values. 7. Where can you run Jobs? The process scheduler can run jobs on the client or a server machine. 8. What restrictions are placed on multi-process jobs? A multi process jobs can only be scheduled to run on a server. 9. List the three output destinations available through the Process Scheduler? You can direct the output to a printer, file and windows screen. 10. What fields should be at the top of every search record definition that use table set Ids? SET ID is the field that should be at the top of every record definition that uses table set Ids. 11. What is a Record Group ID? A Record group ID is a group of record definitions that are Sharing the same set control field. 12. What are the types of layers in Crystal reports? There are 4 types of layers in Crystal Reports. They are 1. Report Header - In this, we will write title, date, and logos of the company. 2. Page Header Used to write column headings. 3. Detail Contains database column values. 4. Page Footer Used to write page numbers and address. 13. Define security administrator? Security administrator is used to control and access the various People soft menus. 14. How many types of security administrator profiles? Define? There are three types of Security administrator profiles: 1. Access Profile: It is an RDBMS ID. It provides the necessary Ids and password for behind-the-scene process. 2. Class Profile: It is defined to organize the users into groups with common access rights or privileges. 3. Operator Profile: It is commonly referred as a Operator Ids or operator having associated sign on passwords. 15. Define Object Security? The Security profile which is created as an operator security to restrict access to People soft data. 16. What is Translate Table? A translate table is a prompt table that serves as data dictionary to store values for fields that dont need individual prompt tables of their own.
2.
Which effective dated rows can be retrieved in update/display mode, update/display all and correction mode?
Update/display can view current and future rows. Can update only future rows. Update/display all can view history, current and future rows. Can update only future rows.
Correction can view and update history, current and future rows. 3. What types of audits are supported by people soft? In case of record level audit what is the structure of table? We have field level audit and record level audit. The structure of the table in record level audit is: AUDIT_OPRID, AUDIT_STAMP, AUDIT_ACTN, AUDIT_RECNAME and can add fields from record. 4. What are Table Edits? We have prompt table edit, yes/no table edit, translate table edit as the table edits.
5.
What conditions are required to establish parent child relationship between two records? What are the advantages with that?
Conditions are: 1) The child record should have all the key fields of parent record and at least one more key field other than the key fields of parent record. 2) We should mention the parent record in the record properties of child record. 3) We cannot go for more than three levels of parent/child relationships. Advantages are: 1) To have referential integrity. 2) Data dependencies 3) Eliminate redundant data Can you place Sub page into Grid? If yes How? Yes we can insert subpage using insert subpage. After insert subpage into main page, drag the subpage into the grid. When we save the page we are successfully able to save the page showing that we can insert a subpage into a grid.
6.
No we cannot hide the primary page of a component. If the component had only one page then by making this page also invisible we wont have any component existing so we are not allowed to hide the primary page. 7. What is an Expert Entry? Expert entry enables a user to change from interactive to deferred mode at runtime for appropriate transactions 8. What is Auto Update? This record field property is used to update the date field of particular record with the server's current date and time whenever a user creates or updates a row. Even the user enter the data into that field, the data which the user enters will be updated by the systems current date and time.
9. What is Record Group? Which records can be included into a record group? Record group consists of records with similar functionality. To setup a record in record group we should enter a set control field value in record properties
10. How can you improve the security and usability of a Prompt table edit.?
Prompt table view
11. What are the different ways to setup row level security?
We can setup row-level security using a SQL view that joins the data table with an authorization table. And by having Query search for data using a query security record definition. The query security record definition adds a security check to the search.
12. How does PeopleSoft use views? Which are online functions?
People soft uses views for search records, summary pages, prompt views, reports Search records and summary pages are online functions. 13.Why do PeopleSoft often use views as search records? Search views are used for three main reasons. Adding criteria to the search dialogue page Providing row level security Implementing search page processing
14. How can a component have more than one search record? Give a situation.
You might want to reuse the same component multiple times with different search records. You can accomplish this by overriding the component search record at runtime when the component is opened from a menu item without creating separate copies of the component. The component override is temporary, and occurs only when the component is opened from the menu item in which the override is set. It does not change the component definition. 15. What is PIA and what are its components? It is n-tier architecture. We have client, web server, application server and Database server. We have jolt and tuxedo. We have WSL, WSH, JSL, JSH, QUEUES and services. In database server we have system tables, peopletools tables and application tables. 16.Differentiate Field edit and Save edit? In Field edit for each field change, a transition to the application server to the database is taken place. In Saveedit for all the fields , only one transition to the application server to the Database is taken place. 17.What are think time functions? Think-time functions suspend processing either until the user has taken some action (such as clicking a button in a message box), or until an external process has run to completion. 18.In which events error & warning are used most extensively.
Field edit, Save edit, Search save, row delete, row insert
19. Is there any way by which you can find out whether the user is in Add mode or
Update mode? %mode---returns A---for Add mode. Returns U for Update mode 20.How is the searchinit event most often used by people soft application? Searchinit fires before the search dialogue page is displayed to the end user. For this reason searchinit is often used to enhance roll level security by inserting and graying out certain values to the search dialogue page. 21.What are the options for using SQL in people code? SqlExec Record class methods (selectbykey, delete, insert, update) Using Sql class, its properties and methods 22.
25. What are different variables in people code and their Scope?
System variables and User defined variables. Scope ---Global, Component, Local.
29. What is Getlevel0()? What is the use of %subrec and %selectall functions?
Getlevel0()---used the get the rowset of the level0. %subrec--is used only in Dynamic View SQL where it expands to the columns of a subrecord: %selectall--%SelectAll is shorthand for selecting all fields in the specified record, wrapping date/time fields with %DateOut, %TimeOut. 30.What is an array in people code? What is maximum dimension of an array? Which function inserts values into an array? What is pop? An array is a collection of data storage locations, each of which holds the same type of data. The maximum depth of a PeopleCode array is 15 dimensions. Push and unshift are the functions of the array used to add the elements into the array one from the end of the array and one from the beginning. Pop is a function of array used to select and delete an element from the end of the array.
35.What are the built-functions used to control translate values dynamically? Adddropdownitem() Deletedropdownitem() 36.How to populate data into grid in online? &Rs.Select() Scrollselect() 37.Before accessing a people soft application what levels of security must be passed through. Field level security, Row level security, Maintain security, definition security, Portal security 38.What is the use of primary permission list in user profile? Primary permission list is used for mass change and definition security purposes. 39.How to authorize the user to run a process or report? To authorize a user to run a process, the process group, which contains the process or report, should be added to the permission list of that user. 40.What are the rules used by the system to determine whether a user is authorized to update an object? The user should have the permission to update the object. This is given by the Definition security. The group, which holds the object, should be added to the permission list of the user in update mode.
41. What are the different ways we can set up the portal security to access component in
portal? Structure & content Menu import Register component 1. What are the main elements in the component Interface? Component interface name Keys Properties and collections Methods
1.
Get keys: - These are mapped to the fields marked as scrh in the components search record. Automatically Search key fields in search record become Get keys. We cannot change it.
Find keys: - These are mapped to fields marked as Alt or Srch in the component search record. You may remove Find keys that you do not wish to make available for searching. Create Keys: - It is generated from the key fields for the search record. If Add search record is present then its key fields are taken. We cannot change it.
2.
How do you provide security for the component interface? Open the Permission list On the Component Interface tab Add row and select the newly created Component Interface Edit the permissions to give permission for the standard methods Get, Create, Save, cancel, find.
1. What the steps that you need to do in people code to invoke Component Interface? Establish a user section Get the component interface definition Populate the create keys Create an instance of the component interface Populate the required fields Save the component Interface.
&Session = GetSession(); &CI = &Session.GetcompIntfc(CompIntfc.INTERFACE_NAME) &CI.KEY_FILED_NAME = NEW If not &CI.Create () Then Else Populate other fields End-if; Populate the other fields If not &CI.Save () Then Else End-if; 1. How do you test Component Interface? Using the Component Interface tester Give values in the tester for options Get Existing, Create new, Find PSMessages in the CI ? This function needs to be called when ever methods like Find, Save, Create methods return false. and perform the operation from the CI Tester Use of
Error text and Error type can be printed in the log message for any other action in to the log message. Function CheckErrorCodes() &PSMessages = &Session.PSMessages; &ErrorCount = &PSMessages.Count; For &i = 1 To &ErrorCount &ErrorText = &PSMessages.Item(&i).Text; &ErrorType = &PSMessages.Item(&i).Type; End-For; End-Function; 2. What is method? What are the different types of method? Methods: - A method is an object that performs a very specific function on a component interface at run-time. Standard methods and user-defined methods. Standard methods: - Automatically generated upon the creation of a new component Interface in Application. Apart from the Standard methods there are Standard methods available for the use with any collection. User-Defined methods: - User-defined methods are those that you can create to meet the requirements of an individual component interface. 3. What are properties? The Fields in the level 0 in the component are the properties of the component. Standard properties Createkeyinfocollection Getkeyinfocollection field properties. Findkeyinfocollection Property Info collection GetHistoryItems (Update/Display mode or EditHistory Items InteractiveMode. Correction mode) User-Defined properties Developer can further control the exposed
4.
Get History Items and Edit History items property to should be set to true. Get History Items alone: - Update display all - modes will be used.
5. This is an example of how to grab the most recent/correct row from an effective dated/effective sequenced table such as PS_JOB SELECT A.EMPLID FROM PS_JOB A WHERE A.EMPLID = '12345' AND A.EFFDT = (SELECT MAX(A_ED.EFFDT) FROM PS_JOB A_ED WHERE A.EMPLID = A_ED.EMPLID AND A.EMPL_RCD = A_ED.EMPL_RCD AND A_ED.EFFDT <= GETDATE()) AND A.EFFSEQ = (SELECT MAX(A_ES.EFFSEQ) FROM PS_JOB A_ES WHERE A.EMPLID = A_ES.EMPLID AND A.EMPL_RCD = A_ES.EMPL_RCD AND A.EFFDT = A_ES.EFFDT) 6. Types of Tables in PeopleSoft? Base tables, Control tables, Views, Reporting Tables and Application data tables A base table is the place where nearly every query starts. These tables store information about an employee and contain data about the employee. A base table stores live data that is continually changing. The table could store information about employees, their dependents, their earnings, taxes, deductions or benefits. In short, these tables hold the real data. EX: PS_PERSONAL_DATA, PS_JOB A control table contains values that classify and categorize. For example, a table that contains all of the possible earnings codes (regular, bonus, overtime, etc.) is a control table, whereas the table that contains the actual earning amounts is a base table. Control tables are also commonly known as lookup or prompt tables. Control tables are usually identified by suffix of _TBL. PS_DEPT_TBL, PS_LOCATION_TBL, PS_JOBCODE_TBL, PS_EARNINGS_TBL Views are timesavers; they are the result set of an SQL statement. For example, the benefits view table takes fields from several tables, links them together correctly, and presents the result as a new table. Views link to original tables (base or control), so no data is duplicated or out of sync. Views are usually identified by a suffix of _VW. Reporting Tables: In an attempt to appease those toiling away, searching for the location of basic employee data, PeopleSoft created three tables that contain the most-often-used human resources fields. These tables are similar to views, but are not dynamic. Their data is only current after a program is executed every night. Their chief benefit is performance. Instead of joining 10 tables every time you look something up, the tables are joined once at night and then used throughout the next day as a single table. EX: PS_EMPLOYEES, PS_BEN_PER_DATA and PS_BEN_PLAN_DATA are reporting tables Application Tables: The PeopleSoft application stores application rules and definitions in application Tables. Occasionally these tables temporarily store data in the middle of a process. With few exceptions, these tables store data that is not relevant to the organization. Most of these tables are not discussed in this book since they contain
application data, not HR data. System tables often do not include an underscore after the PS prefix
1. The system categorizes effective-dated rows into three basic types: Effective dates allow you to keep history, current, and future information in tables. When you update existing information, you do not want to lose or overwrite the data already stored in the database. To retain historical data, you can add a new data row identified by the date when the information goes into effect: an effective date. An effective date is a column in a table that is a key, but it is not typically a search key. Future: row greater than current row Current: row less than or equal to sysdate History: less than current row
1. The action you select tells PeopleSoft the type of activity you want to
perform on the database. The following four action types are available: Add : add new row/value Update/Display: Include History Correct History
Control tables: These tables serve as foundation for the Organization. Company Table Business Unit Table Location Table Compensation Rate Code Table Job Code Table Table SetId (SetId table) Establishment Table Department Table Salary plan, Grade and Step Table Pay group Table Transaction tables: Records change often in these tables Personal Information Employment table Job table Benefits program participation tables
1. What are Metastrings or MetaSQL? Metastrings are special type of SQL expressions preceded by % sign. Metastrings are used in the following: SQLExec In application designer to build dynamic views With rowset object methods (select, fill) SQL objects Record class methods (Insert, Update) Application Engine Cobol
PeopleSoft delivers predefined classes (such as Array, File, Field, SQL, and so on). You can create your own classes using the Application class. You can also extend the functionality of the existing classes using the Application class. 2. What are Objects in Peoplecode? An object represents a unique instance of a data structure defined by the template provided by its class. Each object has its own values for the variables belonging to its class and responds to methods defined by that class. This is the same for classes provided by PeopleSoft and for classes you create yourself. A property is an attribute of an object. Properties define: Object characteristics, such as name or value. The state of an object, such as deleted or changed.
1. Define SQR and steps for performance tuning? SQR stands for Structured Query report. SQR performs database processing and used as reporting tool. When program contains begin-sql, begin-select or execute commands, it performs sql statements, processing of sql statements consumes significant computing resources hence tuning sql statements yields higher performance. Following are the steps for simplifying sql statements and reducing number of sql executions: Simplify a complex select paragraph. Use LOAD-LOOKUP to simplify joins. Improve SQL performance with dynamic SQL. Examine SQL cursor status. Avoid temporary database tables. Create multiple reports in one pass. Tune SQR numerics. Compile SQR programs and use SQR Execute. Set processing limits. Buffer fetched rows. Run programs on the database server. 1. Structure of SQR? Begin-Setup Begin-Heading Begin-Footing Begin-Report or Begin-Program Begin-Procedure 1. Commands that can be called from setup section? Ask Define-Chart Define-Layout Define-Image Define-Printer Define-Procedure Define-Report Dollar-Symbol
1. How to run SQR in PeopleCode? To call SQR from peoplecode we use peoplecode functions CreateProcessRequest() and Schedule() 2. Important Tables in HRMS? PS_PERSONALDATA, PS_PERS_NID, PS_EMPLOYMENT, PS_JOB, PS_JOB_TBL, PS_DEPT_TBL, PS_LOCATION_TBL, PS_FED_TAX_DATA, PS_STATE_TAX_DATA, PS_LOCAL_TAX_DATA, PS_BEN_PROG_PRATIC, PS_HEALTH_BEN, PS_LEAVE_PLANS, PS_LIFE_BEN, PS_RTRMNT_PLN, PS_PAY_CHECK, PS_PAY_LINE, PS_PAY_BONUS, PS_PAY_DEDUCTIONS, PS_POSITION_DATA 3. About events in PeopleCode? Record fields have 15 events, Components have 2 events and Page has 1 event. 4. Security? Security Tree A security structure that graphically represents the hierarchy of your organization. Tree Level Represents a logical division in your business hierarchy (ex: department, branch or region). Tree Node Represents an organizational entity on the tree. Tree Manager A PeopleSoft tool that provides a visual means to build a hierarchy of security for all organizational entities. Query Trees Graphical representation of Tables to which you wish to control query access. Access Groups Nodes in Query Trees where you would group Operators and assign them access to all tables under the node. User Profiles: A User Profile describes a particular user of the PeopleSoft system. User Profiles define individual PeopleSoft users. You define User Profiles and then link them to one or more Roles. Typically, a User Profile must be linked to at least one Role in order to be a valid profile. User Profiles maintain the Roles that are assigned to the user. Roles are assigned to User Profiles. Roles are intermediate objects that link User Profiles to Permission Lists. Multiple Roles can be assigned to a User Profile, and you can assign multiple Permission Lists to a Role. Some examples of Roles might be Employee, Manager, Customer, and so on. Permission Lists are lists, or groups, of authorizations that you assign to Roles. Permission Lists store Sign-on times, Page access, PeopleTools access, and so on. A Permission List may contain one or more types of permissions. The more types of permissions in Permission List the more modular and scalable your implementation. A User Profile inherits most of its permissions through the roles that have been assigned to the User Profile. Data permissions, or row-level security, appear either through a Primary Permissions List or a Row Security Permissions list Row-level security controls access to the subset of data rows within tables the user is authorized to read or update. The decision to implement row-level security will be based on the need to provide that level of data security. To establish rowlevel security, you must first decide the necessary data security level required, which key fields to secure, and whether security will be defined through User IDs or Permission Lists. With row-level support, PeopleSoft security can restrict individual users or Permission Lists from specific rows of data that are controlled by key fields, for example: Business unit
Set ID Ledger (and ledger group) Book Project Therefore, users would only be able to view those rows for which they have security access for a specified Business Unit or Project, for example. Once rowlevel security is turned on in for a particular PeopleSoft module, it applies to all applications within that module, not specific applications. Additionally, a method for implementing row-level security can be by User ID. Key fields can be associated to User IDs as well as Projects. Projects will also perform row-level security by User ID through the Use List. This sets up Projects to implement rowlevel security in a team-based method.
PeopleSoft security mainly depends on Rowlevel security. Security works best if it is based on organizational structure. Types of security supplied by PeopleSoft: Departmental security No security International security Tree Manager: 3 steps in setting up department security: Create the security tree Update department security tree Grant and restrict access to the entities
Personal Information: Name, Address, Identity Job Data: Work Location, Job Information, Payroll, Salary Plan, Compensation Employment Data: Employment Information Earnings Distribution: Job earning distribution Benefit Programs Participation: enrollment of benefit programs
2. How many sub pages, secondary pages can be created in one level? We can create only one Secondary Page. But where as we can create N no of Sub Page in one Level 3. What is Integration Broker? PeopleSoft's Integration Broker is a messaging hub, that allows for data to be shared between different systems (e.g. PeopleSoft HRMS to Payroll [can be PeopleSoft or third party], HRMS to Finance, HRMS to CRM, etc.). 4. Types of tools in PeopleSoft? Development Tools: Application Designer Application Engine PeopleCode Internet Technology and Portal Technology Integration Tools: Integration Broker Component Interfaces
Workflow Technology Analytic Tools: PeopleSoft Process Scheduler XML Publisher PS n/Vision Crystal Reports PeopleSoft Query Tree Manger SQRs Administration Tools: Data Management Security Administration System and Server Administration Performance Monitor LifeCycle Management: PeopleSoft Software Update Change Impact Analyzer PeopleSoft Setup Manager 1. Explain about Data Mover? PeopleSoft Data Mover is a stand-alone two-tier program, which you can run through a graphical interface on Microsoft Windows, or a with a command line interface on either Microsoft Windows or UNIX systems. PeopleSoft Data Mover enables you to perform the following tasks: Transfer application data between PeopleSoft databases. Move PeopleSoft databases across operating systems and database platforms. Execute Structured Query Language (SQL) statements against any PeopleSoft database, regardless of the underlying operating system or database platform. Export data in a platform independent manner. Control database security and access. Create, edit, and run scripts which combine SQL commands and PeopleSoft Data Mover commands for exporting and importing data. Regular Mode: Using PeopleSoft User Id Bootstrap Mode: Using Database access Id ENCRYPT_PASSWORD: Encrypt one or all user passwords (operator and access) defined in PSOPRDEFN for users. EXPORT: Select record information and data from records and store the result set in a file. You can use the generated export file as input for migrating to another platform. IMPORT: Insert data into tables using the information in an export file. If a tablespace or table does not exist, this command creates tablespace, table, and indexes for the record, using the information in the export file, and inserts the data.
REM: For Remarks RENAME: Rename a PeopleSoft record, a field in one record, or a field in all records. REPLACE_ALL: This is a variation of the IMPORT command. If a table already exists, use this command to drop the table and its indexes from the database and create the table and indexes using the information in the export file. Then, the command inserts data into the table using the information in the export file. REPLACE_DATA: This is a variation of the IMPORT command. Delete data in existing tables and insert the corresponding data from the export file. REPLACE_VIEW: Recreate specified views found in the database. RUN: Run a specified .DMS file from within a PeopleSoft Data Mover script. The file cannot contain nested RUN commands. SET: When a command is followed by valid SET parameters, it forms a statement that establishes the conditions under which PeopleSoft Data Mover runs the PeopleSoft Data Mover and SQL commands that follow. SET IGNORE_ERRORS: If this command is set, then all errors produced by the SWAP_BASE_LANGUAGE command are ignored. Otherwise, the system stops on errors.
1. Sample data mover code? set output c:\temp\position_data.dat; set log c:\temp\position_logfile.txt; export position_data where location in ('11490', '11730','11804','11720') and position_nbr not in ('00002025','00002026','00002027','00002029','00002030','00002031','00002032'); set input c:\temp\position_data.dat; set log c:\temp\position_inputlogfile.txt; import *;
You may want to use these tools during upgrades and system customizations, to verify the PeopleSoft system and check how it compares to the actual SQL objects.
Run SQL Alter: The primary purpose of the PeopleSoft Application Designer SQL Alter function is to bring SQL tables into accordance with PeopleTools record definitions. Run DDDAudit: The Database Audit Report (DDDAUDIT) finds inconsistencies between PeopleTools record and index definitions and the database objects. This audit consists of nine queries: four on tables, two on views, and three on indexes. Run SYSAUDIT: The System Audit (SYSAUDIT) identifies orphaned PeopleSoft objects and other inconsistencies within the system. An example of an orphaned object is a module of PeopleCode that exists, but which does not relate to any other objects in the system.
1. Database level Auditing? PeopleSoft provides trigger-based auditing functionality as an alternative to the record-based auditing that PeopleSoft Application Designer provides. This level of auditing is not only for maintaining the integrity of the data, but it is also a heightened security measure. PeopleSoft The information that a trigger records could include the user that made a change, the type of change that is made, when the change is made, and so on. 2. PeopleSoft Integration Broker? PeopleSoft Integration Broker facilitates synchronous and asynchronous messaging with other PeopleSoft applications and with third-party systems. PeopleSoft Integration Broker uses a variety of communication protocols, while managing message structure, message content, and transport disparities. The two major components of PeopleSoft Integration Broker are the integration gateway and the integration engine. The integration gateway is a platform that manages the receipt and delivery of messages passed among systems through PeopleSoft Integration Broker. The integration engine is an application server process that routes messages to and from PeopleSoft applications as well as transforms the structure of messages and translates data according to specifications that you define.
3. Upgrade Assistant?
To use PeopleSoft Upgrade Assistant, you run a process using an upgrade job and upgrade template. The upgrade job is a set of filtered steps that are specific to your upgrade and relevant only to the release, platform, and products you are using. For PeopleSoft supported upgrades, PeopleSoft provides predefined upgrade templates on Customer Connection. These templates comprise the steps necessary to complete an upgrade for a supported upgrade path. Depending on your configuration. Editing Templates:
Add steps: You may need to add custom steps to the templatefor example, steps for dropping and adding indexes or running a backup of the target database. Edit steps: You can modify the delivered settings by changing the step properties. Setting these properties determines the conditions that apply when you run the upgrade process. Delete chapters, tasks, or steps. Rename chapters, tasks, or steps.
Creating Templates: Creating Custom templates: You can create a custom template for your upgrade. When you create a custom template, you also insert chapters, tasks, and steps. In addition, you specify step properties. Creating Chapters: You can add a chapter to a new or existing upgrade template. A chapter is a section heading for a group of tasks. Creating Tasks: You can add a task to a new or existing upgrade template. A task is a section heading for a group of steps.
Creating Steps: You can add a step to a new or existing upgrade template. A step can be any process needed to perform the upgrade.
PeopleSoft Upgrade Assistant uses the PROCESSREQUEST component interface object to submit jobs to run on the PeopleSoft Process Scheduler server. You must configure your environment for PeopleSoft Upgrade Assistant to submit processes.
1. Define Workflow?
Workflow enables to efficiently automate flow of time-consuming business processes and deliver the right information to the right people at the right time throughout enterprise. You can merge the activities of multiple users into flexible business processes to increase efficiency, cut costs, and keep up with rapidly changing customer and competitive challenges. For example, when you order supplies, you are really initiating an approval process: someone else reviews the order and either approves or denies it. If the order is approved, a purchase order is sent to the vendor. If it is denied, notification is sent back to the person who submitted the original order. The term workflow refers to this larger process.
Payroll for North America provides the tools to calculate earnings, taxes, and deductions efficiently, maintain balances, and report payroll data. Payroll for North America supports the following business processes: Set Up and Maintain Core Payroll Tables: Core payroll tables are the tables that are required to implement the Payroll for North America application, including organization tables, compensation and earnings tables, deduction tables, pay calendar tables, garnishment tables, vendor tables, general ledger interface, tax tables, retroactive processing, and tip allocation. Set Up and Maintain Employee Pay Data: Employee pay data includes personal data, job data, benefits data, federal, state/provincial, and local tax information, general and benefit deductions, additional pay, garnishments, savings bonds, and direct deposits.
Process the Payroll: basic steps of payroll processing are: create paysheets, pay calculation, pay confirmation, and generate checks and direct deposits. You can employ audit reports and data review pages to verify and correct the results of each step before moving on. You can also review and adjust employee balances. Post to General Ledger: Use the integration with PeopleSoft Enterprise General Ledger and EnterpriseOne General Ledger to transfer the expenses and liabilities incurred from a pay run to the General Ledger application. Pay Taxes: Use the integration with PeopleSoft Enterprise Payables to transmit tax data to the Payables application for automatic payment to tax authorities. Pay Third Parties: Use the integration with Payables to transmit employee and employer deductions such as garnishments and benefit deductions to the Payables application for automatic payment to third parties. Produce Reports Payroll for North America provides dozens of reports to help you monitor payroll processing and comply with regulatory and tax reporting requirements. You can view reports online or print hard copies. You can also tailor the reports to fit the special needs of your organization.
1. What are six steps of payroll processing? Setting up tables Setting up employees Paysheets Pay calculations Pay confirmation Print reports, checks, advices 1. Define the Deduction table? Defines how the deduction will be processed. Identifies tax classification (for example, before- or after-tax deductions). Indicates whether arrears are allowed. Indicates whether partial deductions are allowed. Indicates when the deduction is withheld. 1. The Four Steps to Defining Deductions To define how you want the system to process a deduction, follow these four general steps: 1. Use the Deduction Table component (DEDUCTION_TABLE) to select a plan type, enter a deduction code, and specify the deduction processing rules, including the priority of the deduction, how the deduction affects taxes, related general ledger account codes, and other special payroll process indicators, such as how arrears should be handled. 2. Use the General Deduction Table component (GENL_DEDUCTION_TBL) to define the rules for the actual calculation of general deductions such as parking or union dues. 3. Use the Company General Deductions component (GDED_COM_TBL) to build a general deduction plan using the general deductions you have set up. 4. Use the Benefit Program Table component (BEN_PROG_DEFN) to define the rules for the actual calculation of benefit deductions such as health plans and dental plans. 1. General Questions on Payroll? Paysheets: Before you run payroll calculations, you must create paysheets. Paysheets contain the data required to calculate employee pay for each pay period.
1. 2. 3.
4.
5.
Paycalculation: pay calculation is an iterative process. You can run and rerun calculations repeatedly until youre confident that the payroll data is correct. Here are the basic steps: Enter employee payroll information, create paysheets, and make updates and adjustments for the pay period. Run the Pay Calculation COBOL SQL process (PSPPYRUN). Review calculation results and check for errors. Check payroll error messages online or print the Payroll Error Messages report (PAY011). View the results of paycheck earnings, deductions, and taxes using the Paycheck pages and various standard reports that you can print to verify the results of the pay calculation. Make adjustments on the paysheets. Repeat these steps until you're confident that the payroll data is correct, and then confirm pay. Payconfirmation: After you verify that the payroll calculation is correct and you run the Pay Calculation COBOL SQL process (PSPPYRUN) in final mode, you can run the Pay Confirmation process. Pay confirmation is the final step in running your payroll. Running the Pay Confirmation process indicates that youve reviewed and approved all payroll information for this pay run, and that youre ready to produce paychecks.
Data mapping is the process of integrating data by a method of mapping data between two distinct data models. Data mapping also refers to consolidation of multiple databases into a single data base, thereby eliminating redundant data columns in the consolidation process.
have better control if you write the scripts yourself. Running data conversion directly on the server by executing scripts you have created is an overall good option, especially if the client doesn't require you to use UA exclusively. This is the option presented here; therefore, ignore any tasks in the Upgrade Guide which specify how to configure data conversion to execute on the server through UA. If executing data conversion App Engine programs on the server, the application server box must be properly configured as follows: The application server domain must be properly configured and must be running The environment must be set to properly recognize execution of App Engine programs, such as PS_SERVER_DIR, etc (see PeopleSoft Installation Guide for current PeopleTools version) A good idea, although not a requirement, is to follow the Upgrade Guide instructions for building the component interface. Perform pre-data conversion backup. Make sure that you perform a backup before running data conversion. That way, if unrecoverable errors occur during data conversion, the database can be reverted to this point in time. Assuming you decided to write the data conversion scripts, then in most cases some of the data conversion scripts may be run concurrently. Refer to the Upgrade Guide for specific instructions as to what each data conversion program actually does, but typically the first one is run as a pre-requisite to the others; therefore, it cannot run concurrently with others. However, usually all the other data conversion programs, other than the last one, can be run concurrently. Like the first one, the last one typically must be run consecutively. Keep in mind that during the initial pass, data conversion may fail. This could happen either because PeopleSoft delivered records has been customized by the customer or duplicate data in the tables cause an error with new/changed indexes. Also, if the customer has non-PeopleSoft (i.e. "Bolt-On") records, you may want to assist them in creating an Application Engine library so the data conversion upgrade driver programs will pick them up as well. Using the Application Designer "Find In" option can help determine which Application Engine programs affect customized records. Typically, specific instructions on this can be found in the Upgrade Guide for your upgrade path. If you would like to learn the step by step approach and methods that will teach you all about Performing a Successful Upgrade you can download the eBook A step-by-step guide to performing successful upgrades
Starting in version 8.9 for financials and 9.0 for HCM, Oracle changed the PeopleSoft Upgrade methodology to copy PeopleTools objects over in data mover scripts. There are a number of advantages to the new process. One potential impact, however, is that the target environment's objects will be overwritten. You will lose your PeopleTools objects unless they exist in the source environment. Something that is difficult to do unless you can implement a code freeze or keep track of object changes. To compound this challenge, security, trees and queries are objects which end users frequently have the ability to change. To preserve these object changes, I recommend the following approach:
Planning for the Upgrade
1. Strongly consider performing a PeopleTools upgrade first if possible. This makes moving projects required in the steps below much easier.
During the Upgrade Project
1. Turn on logging for queries so you can track the frequency and prioritize queries. Work with the user community to identify critical queries to address during the upgrade as part of scoping discussions. Agree to 'save' any queries that you cannot address in the timeframe of the upgrade in another environment. 2. Periodically compare and retrofit from production to upgraded development the non-query related trees. Do not copy query trees from production to the upgraded database. 3. Assess security impacts through a fit/gap. Make changes to roles and permission lists in upgraded copy of production. Avoid changing the names of roles during the upgrade. Don't forget to track changes to user preferences to reapply during the cutover.
During the Upgrade Cutover
1. Backup Production to another database prior to starting upgrade steps. This occurs after production is shutdown but before you start the actual upgrade. 2. After the upgrade is complete, copy user security (but not roles and permission lists) from the old copy to production. 3. As needed, use the copy of production to review the trees and queries to review / fix missing queries. Tree issues should be minimal if you followed the steps above. I have used this strategy a number of times and found it to be very successful, especially when locking down production change may be a challenge for some organizations. Of course, there are nuances and complexities that simply cannot be covered in a short blog. Some of these steps will also require some expertise to plan and execute. Consult with your PeopleSoft expert resources or implementation partner for more detailed information or assistance. David is a Partner and VP at Knowledge Systems, a consulting firm specializing in enterprise application services and solutions. www.ksllc.com