Working with PS_CUST_HOME

This topic contains an overview and discusses how to manage environments where PS_CUST_HOME has been implemented.

PS_CUST_HOME (PeopleSoft Customization Home) enables you to further clarify the ownership of files within your PeopleSoft system and separate them for more efficient lifecycle maintenance and system administration. While PS_APP_HOME enables you to separate PeopleSoft application files from PeopleTools files, PS_CUST_HOME enables you to identify your site's customized files and store them in a location separate from your PeopleTools and PeopleSoft application files. This creates a clear distinction between code and files delivered by Oracle (PeopleTools and PeopleSoft applications) and code produced or customized by individual customers.

Important! You can continue to store your custom and modified files within PS_HOME or PS_APP_HOME if desired. Using PS_CUST_HOME is an option that you can take advantage of if the additional flexibility provided by PS_CUST_HOME is required.

If your site does not create custom scripts, reports, or programs, then PS_CUST_HOME would not apply to your system. However, if your site does create custom scripts, reports, or programs, or if your site modifies delivered application files, then implementing PS_CUST_HOME should be considered.

Examples of customized files that might be stored in PS_CUST_HOME include:

  • Data Mover scripts.

  • DAT files.

  • COBOL programs.

  • SQR programs.

  • Java class files.

With your custom files stored in the PS_CUST_HOME location, you can freely take PeopleTools or PeopleSoft application upgrades and maintenance updates, knowing that your customized files will not be affected. This approach also keeps PS_HOME and PS_APP_HOME consistent with the content provided by Oracle, being an exact replication of the files as they were installed.

In addition to lifecycle management benefits, PS_CUST_HOME also offers a significant advantage with sharing PS_HOME locations among multiple PeopleSoft application systems. If you are not using PS_CUST_HOME, customizations stored in PS_HOME or PS_APP_HOME that apply to only one application make it impossible to share that PS_HOME or PS_APP_HOME location with other PeopleSoft applications. With PS_CUST_HOME, all customizations can be consolidated into a single, isolated PS_CUST_HOME, and multiple runtime environments can utilize the resources within that PS_CUST_HOME. If separate environments require different customizations, they can share the same PS_HOME and PS_APP_HOME but point to separate PS_CUST_HOME locations.

An environment where PS_CUST_HOME is implemented may have the following environment variables set.

Environment Variable

Description

PS_HOME

Location where PeopleTools is installed. For example:

C:\PT_853

PS_CFG_HOME

Location where the server domain configurations are installed. For example:

PS_CFG_HOME=D:\PT_SERVER

PS_APP_HOME

Location where your PeopleSoft application files are installed. For example:

PS_APP_HOME=N:\HCM_920

PS_CUST_HOME

Location where your customized PeopleSoft application files are installed. For example:

PS_CUST_HOME=N:\PSFT_CUSTOM

Managing an environment where PS_CUST_HOME exists is similar to adding PS_APP_HOME to the list of environment variables, except with PS_APP_HOME you install the application files using the delivered installation program. As such, the application files are installed automatically into PS_APP_HOME using the standard directory structure based on PS_HOME. With PS_CUST_HOME, you need to create the directory structure manually, adding any required folder within the PS_CUST_HOME using the same structure and naming found in PS_HOME or PS_APP_HOME.

For example, if you have a custom SQR report that you want to store in PS_CUST_HOME, you need to create this directory structure in your PS_CUST_HOME and place your customized file within the \sqr directory:

N:\PS_CUST_HOME\sqr

Likewise, if you have custom SQL or Data Mover scripts, you need to create this directory structure in your PS_CUST_HOME and place your customized files within the \scripts directory:

N:\PS_CUST_HOME\scripts

If using PS_CUST_HOME, you need to make sure to set the PS_CUST_HOME environment variable prior to running PSADMIN. This can be done permanently in the environment variables interface on a Windows server, manually on the command line prior to running PSADMIN, or by using a.BAT or shell script.

Note: If you do not set the PS_CUST_HOME environment variable explicitly, PeopleSoft runtime retrieves all runtime content from PS_HOME or PS_APP_HOME, if set.

When you configure your system, you need to be mindful of the PS_CUST_HOME location. In the PeopleTools configuration settings where the system would need to find files within PS_CUST_HOME, you need to include PS_CUST_HOME as a potential location for such files. For example,

RCCBL PRDBIN=%PS_CUST_HOME%/cblbin:%PS_APP_HOME%/cblbin:%PS_HOME%/cblbin

In environments where PS_CUST_HOME has been implemented, system elements, such as server domains have access to content supplied by PS_HOME, PS_APP_HOME, and PS_CUST_HOME, but files residing in PS_CUST_HOME take preference over those with the same name in either PS_HOME or PS_APP_HOME. If PS_CUST_HOME, PS_APP_HOME, and PS_HOME all exist within a PeopleSoft system, at runtime, the system checks for files in this order:

  1. PS_CUST_HOME

  2. PS_APP_HOME

  3. PS_HOME

The following table outlines key areas in the PeopleSoft system, where you need to consider the PS_CUST_HOME variable if you added custom files to that location. When you are installing, configuring, and maintaining your system, make sure to keep these items in mind and review the documentation associated with these areas.

PeopleSoft Infrastructure Element

PS_CUST_HOME Consideration

Application Server

PS_CUST_HOME must be set explicitly before running PSADMIN, similar to setting PS_CFG_HOME manually.

Remote Call COBOL can look for COBOL programs in PS_CUST_HOME, PS_APP_HOME, or PS_HOME, so be sure to review those settings.

See RCCBL PRDBIN.

Process Scheduler

PS_CUST_HOME must be set explicitly before running PSADMIN, similar to setting PS_CFG_HOME manually.

The Process Scheduler domains reference PS_CUST_HOME, PS_APP_HOME, and PS_HOME locations for the following processes:

  • COBOL

  • SQR

  • nVision

See Understanding the PeopleSoft Process Scheduler Configuration File.

COBOL

During your installation, you will need to perform different tasks when compiling COBOL, which are described in detail in your PeopleTools installation guide.

If you do have custom COBOL programs or files, you must set the PS_CUST_HOME environment variable prior to compiling the source code. If PS_CUST_HOME is set, the system compiles the source code in PS_HOME, PS_APP_HOME, and PS_CUST_HOME simultaneously, despite the source code residing in separate locations.

See PeopleSoft 9.2 Application Installation for <your platform>:"Installing and Compiling COBOL on <your operating system>"

SQR

When specifying locations where the system should look for SQR reports, for example, in Process Scheduler or in Configuration Manager, make sure to consider reports that may exist in PS_CUST_HOME.

Lifecycle Management

For applying updates and performing upgrades, PS_CUST_HOME also needs to be considered for various tasks, including:

  • Crawling the environment with Environment Management Framework.

  • Creating change packages

  • Defining environments for upgrades.

See Change Assistant and Update Manager.

Note: By placing files within PS_CUST_HOME, you are taking complete responsibility for maintaining the source of that file and ensuring any changes are made to it for upgrade or maintenance purposes.

Windows Development Environment

When setting up Windows Development workstation profiles using Configuration Manager, you set the PS_CUST_HOME variable on the Process Scheduler tab, and you'll also consider your PS_CUST_HOME location when specifying:

  • SQR report locations.

  • COBOL location.

  • nVision directory paths.

  • Data Mover directories.

See Understanding PeopleSoft Configuration Manager.