Category: PeopleTools Reference

PeopleSoft Home Subdirectories

Lee requested a list of directories in a default PeopleSoft install.  Here is my two cents, and please add comments to correct or add anything I miss.  Keep in mind that this is just off the top of my head — I don’t know of any references for this information.

  • appserv — home to the Application Server and Process Scheduler Server; location of psadmin where you start, stop, and manage those servers
  • bin — location of all the binary programs such as Application Designer (pside.exe), Data Mover (psdmtx.exe), and so on; also location of SQR (sqrw.exe)
  • cblbina — location of compiled COBOL programs
  • class — location of Java packages
  • crw — location of Crystal Reports that will be run from online
  • data — location of Data Mover Data files that have been or will be loaded into the database
  • doc — location of Word documents used with the Process Scheduler
  • excel — location of Execl documents such as the ExcelToCI utility
  • maint — data mover scripts and such; typically associated with tax updates or bundles
  • nvision — NVision reports
  • PSEMAgent — home of the Enterprise Management Agent, which is the program that crawls the drive and reports installation information to the EMHub and also copies files to and from the home directory with the Hub
  • PSEMViewer — home of a utility application for working with teh EMHub
  • scripts — various data mover scripts typically associatedwith tax updates and bundles
  • sdk — Software Developement Kits for writing external applications that interface with PeopleSoft such as Java and VB kits for accessing Component Interfaces
  • sendmaster — an application for use with testing Integration Broker messaging
  • setup — location of various installers such as the PIA installer and the Database installer that builds the PeopleSoft database in your RDBMS system
  • sqr — location of the SQR reports
  • src — location of various source code; COBOL source code is the most prominent
  • tuxedo — home of the tuxedo application used by Application Designer, the Application Server, etc
  • verity — home of the Verity Search Engine used by PeopleBooks and the Portal Menu search
  • webserv — home of the PIA, which is the online web application that talks with the Application Server and sends the HTML to the browser for the application
  • winword — location of Word documents used with Process Scheduler


Update: These are the list of fields types in the PSPNLFIELD table.

This is a list of the Panel Field types:

  • 0:  Text
  • 1:  Frame
  • 2:  Group Box
  • 3:  Static Image
  • 4:  Edit Box
  • 5:  Drop Down List
  • 6:  Long Edit Box
  • 7:  Check Box
  • 8:  Radio Button
  • 9:  Image
  • 10:  Scroll Bar
  • 11:  Subpage
  • 12:  Push Btn/Link — PeopleCode (Thanks Robert)
  • 13:  Push Btn/Link — Scroll Action
  • 14:  Push Btn/Link — Toolbar Action
  • 15:  Push Btn/Link — External Link
  • 16:  Push Btn/Link — Internal Link
  • 17:  Push Btn/Link — Process
  • 18:  SecPage
  • 19:  Grid
  • 20:  Tree
  • 21:  Push Btn/Link — Secondary Page
  • 22:  ?? not in an HR database
  • 23:  Horizntl Rule
  • 24:  Tab Separator
  • 25:  HTML Area
  • 26:  Push Btn/Link — Prompt Action
  • 27:  Scroll Area
  • 28:  ?? not in an HR database
  • 29:  Push Btn/Link — Page Anchor
  • 30:  Chart
  • 31:  Push Btn/Link — IM Action
  • 32:  Analytic Grid

Updated: PeopleTools Tables

Here is just a quick post to let you know that I have added a few more tables to the PeopleTools Tables page:


These tables are related to HTML definitions.  I was using them to check to make sure that I have all of the HTML definitions that I have created in my project.

Here is a link to the page:

File Layout Order

One problem with the file layout editor in Application Designer is that you cannot see the fields in order in which they appear in the file. For XML files, this does not matter, but for CSV files or flat files, the order is very important, especially in troubleshooting.

Here is some SQL that will show you the fields in the correct order (Just replace the <File Layout Here>):

WHERE FLDDEFNNAME = '<file Layout Name>'

Registration Reference

In teaching my classes, the component registration has always caused the most trouble. First, the new PeopleSoft programmers have trouble remembering the steps. Second, something always seems to go wrong, and the students don’t know where to start looking. Hopefully, this reference should help.

Three Parts
1. Menu — add the component to the menu
2. Portal — add a link to the online menu system
3. Security — add the component/menu to a permission list

Manual vs. Registration Wizard

PeopleSoft added the “Registration Wizard” to Application Designer to create a quick easy to register a new component. The key concept is that it exists for new registrations and does not help when fixing problems or changing the registration.

You can use the wizard for all three parts, just one part, or any combination in between. The first page of the wizard will ask you which steps you want to perform, and you just check the parts you want.

Things you can do with the wizard:

  • add a component to an existing menu
  • add a component to the portal menu if it is not already on the portal
  • add a component to a permission list

Things you cannot do with the wizard (can be done manually):

  • change or set the label on a menu item
  • move a component from one menu to another
  • create a new menu and add a component
  • change the folder or edit portal content references
  • add a component to a new folder in the portal that does not exist
  • add the component to the portal a second time

Bottom Line: the wizard is for new registrations, not fixing or changing

Registration Wizard Pages
Page 1: Select which parts you want to perfom
Page 2: Select the menu — either the menu to add it to or the menu it is already on
Page 3: Enter the Portal information — for creating the content reference; optional
Page 4: Pick the permission list — adding the component to the permission list; optional
Page 5: Review/add definitions to the project

Part 1 — Menu
Manually, this is done in Application Designer.

  • Add to an existing menu: Ctrl + O, pick menu for the type, and enter the menu name
  • Add to a new menu: Ctrl + N, pick menu for the type

In either case, you drag the component from the project to the menu. Hold the component over the bar item and wait for it to expand, then, drop the component on the box with the dotted line. Or, you can double click on the box with the dotted line, and fill out the information manually.

In the wizard, you much select the menu that you want to add the component to and the bar on that menu where the component should go. The menu must already exist to use the wizard — the wizard will not create a menu and you cannot create an empty menu first (the menu must have at least one component on it).

Also, remember if you use the wizard, but you choose not to add the component to the menu with the wizard, it will still ask you for the menu name. Both the portal registry and the permission list require a menu-component combo. The wizard will only use the menu name on the portal and the permission list rather than add the component to the menu.

Part 2 — Portal Registry
Manually, you must place the component in the registry online.
Navigation: PeopleTools > Portal > Structure and Content
First, navigate to the folder where you want to add the content reference. Then, click “Add Content Reference” at the bottom of the page.

If you are editing a content reference, you must click on the “Edit” link next to the content reference to change any information.

Warning — pay special attention to the spelling of the menu name and the component name. The page will not tell you if you spell it wrong. It just won’t work.

Using the wizard, first you must know the name of the folder where you want to add the component. If you don’t know the name, you must use the manual method to find the folder, and click the “Edit” link to get the name.

The other information in the wizard is the same as the manual method.

Part 3 — Permission Lists

Manually, you must also do this step online.
Navigation: PeopleTools > Security > Permission Lists & Roles > Permission Lists
First, search for the permission list that you want to add to the component to. Then, go to the pages tab (although it shows a list of menus, you will eventually pick the pages the user has access to). Either find the menu in the list, or add the menu to the list. Then, click the “Edit Components” link for that menu. Next, find the component, and click the Pages link. Finally, select the pages and the actions to grant security.

Additional Pieces
Note: none of these can be added with the registration wizard

  • User Profile (user name that the user logs in with):
    PeopleTools > Security > User Profiles > User Profile
  • Role (links the User profile to the permission list):
    PeopleTools > Security > Permissions & Roles > Roles

In the wizard, you simply pick the permission list and choose the actions to give security. The wizard gives access to all pages in the component.

PeopleTools Reference: Common Meta-SQL

If you were to learn just a select few Meta-SQL, these are the ones that I would recommend:
%SelectAllByKey & %SelectAllByKeyEffdt
%DateIn & %DateOut

There are many others. Please refer to the PeopleTools PeopleBook for more information.

Update 5/7 — Fixed the links to point to the most resent version of PeopleTools

PeopleTools Reference: Meta-SQL %Delete

generates a delete statement using the values from a record object

This command will pull the record name, the key fields, and the values for those key fields to generate the delete statement. This will result in the statement deleting one row from the database since the statement includes all of the keys for the record.


Local Record &recJob;
&recJob.EMPLID.value = &emplid;
&recJob.EMPL_RCD.value = &empl_rcd;
&recJob.EFFDT.value = &effdt;
&recJob.EFFSEQ.value = 0;
SqlExec(“%Delete(:1)”, &recJob);

PeopleTools Reference: Meta-SQL %Insert

generates an Insert statement to insert the data from a record object into the database.

Remember that a record object (not a record definition) stores both the record structure (table name and field name) and the field values. Therefore, the system has everything it needs to write an insert statement: insert( … field list … ) values ( … options …).


Local Record &myRecord;
&myRecord.KEY1.value = “Key Value”;
&myRecord.FIELD1.value = “Field Value”;
SQLExec(“%Insert(:1)”, &myRecord);

PeopleTools Reference: Meta-SQL %SelectByKey

generates a select statement based on the given record definition.

Remember that a record object (not a record definition) stores both the record structure (table name and field name) and the field values. Therefore, the system has everything it needs to write a select statement: select … list of fields … from … table name … where … key field name … = … value for that field … and so on.

Related: %SelectByKeyEffdt

does the same thing except it adds the effective dating criteria to limit it to the most recent rows.


Local Record &recJob;
&recJob = CreateRecord(RECORD.JOB);
&recJob.EMPLID.value = &amp;amp;amp;emplid;
&recJob.EMPL_RCD.value = &amp;empl_rcd;
&recJob.EFFDT.value = &amp;effdt;
&recJob.EFFSEQ.value = &effseq;
SqlExec(“%SelectByKey(:1)”, &recJob, &amp;recJob);
WinMessage(“Job Code: ” | &recJob.JOBCODE.value);

Local Record &recNames, &recOutput;
&recNames = CreateRecord(RECORD.NAMES);
&recOutput = CreateRecord(RECORD.NAMES);
&recNames.EMPLID.value = &amp;emplid;
&recNames.NAME_TYPE.value = “PRI”;
SqlExec(“%SelectByKeyEffdt(:1)”, &recNames, %Date, &recOutput);