This is the multi-page printable view of this section. Click here to print.

Return to the regular view of this page.

Installing SWS

Installation and Patching Instructions

This section will describe how to install SWS in your PeopleSoft instance.

1 - Installing SWS

Detailed instructions on installing SWS into your PeopleSoft environment.

General Notes

Most PeopleSoft implementations have a migration path starting in a dev environment that flows to production. Every organization does this slightly differently. For this document, we assume you have a development flow that looks like the following.

  1. Development
  2. Test
  3. Production

We recommend starting in a development environment first. Then, follow your normal production migration procedure to push this to your production systems.

Import Project from File

When importing into your development environment, you will import the delivered project from a file. For subsequent databases like test and production, you should use the standard PeopleSoft migration using “Project Copy to Database.”

  • Login to your development instance using application designer.
  • Import the project from the file.
    • Inspect the upgrade windows to ensure there are no errors or warnings.
  • Application Designer:
    • Tools -> Copy Project -> From File
    • Select the project file. Always use the latest dated project file.
  • Note that “Compile PeopleCode after Import” is checked. You can also compile the project PeopleCode after the import. This is a good check to ensure that all objects imported correctly. There are times when the application can crash or skip things. Make sure the compile does NOT show any errors.
  • Next build the new tables
    • Make sure the Application Designer “Project Output window” does NOT show any errors.

Import Setup Data

The product comes with some configuration data to give some examples of working web services. These are mostly queries on basic PeopleTools tables that will exist in any PeopleSoft Application (Finance, Campus, HCM, etc). You are not required to import these configurations into your system. However, it is recommended that you install the CHG roles for development to gain a working understanding of the product.

Note: You will need to change the path in this script to match your environment

SET LOG C:\temp\SAMPLE_DATA_IMPORT.LOG;
SET INPUT C:\temp\SWS_EXPORT_config.DAT;
IMPORT C_SWS_CONF_PAR;
IMPORT C_SWS_CONF_PL;
IMPORT C_SWS_CONF_TBL;
IMPORT C_SWS_OUT_FLDS;

Grant Users Access

Now, you need to grant Admin and API users access to the setup pages and API. Please see the Security Setup Section in the User Documentation

Object Naming

The PeopleSoft project that delivers SWS is a 100% PeopleSoft bolt-on. No delivered PeopleSoft objects are modified. All

All PeopleSoft objects delivered with SWS

  • Object Prefix: CHG_
    • Exceptions:
      • Record Prefix - C_

List of SWS Installed Objects

Below is the list of objects that will be imported.

  • Record: C_PQL_PL_EDIT
  • Record: C_SWS_CONF_PAR
  • Record: C_SWS_CONF_PL
  • Record: C_SWS_CONF_TBL
  • Record: C_SWS_OUT_FLDS
  • Record: C_SWS_PL_EDIT
  • Record: C_SWS_REC_WL
  • Record: C_SWS_RUN_LOG
  • Record: C_SWS_WORK
  • Field: CHG_CACHE_MINUTES
  • Field: CHG_COPY_TO
  • Field: CHG_DEBUG_MODE
  • Field: CHG_DELETE_CONFIRM
  • Field: CHG_DE_INCL_META
  • Field: CHG_DE_OUT_FLDNAME
  • Field: CHG_DE_PATH
  • Field: CHG_ENCODING
  • Field: CHG_FIELD_NAMES
  • Field: CHG_MAX_LENGTH
  • Field: CHG_PARAM_DFLT_VAL
  • Field: CHG_PARM_DATA_TYPE
  • Field: CHG_PARM_NAME
  • Field: CHG_PARM_SEQNO
  • Field: CHG_PARM_TYPE
  • Field: CHG_PSOFT_QL_TEXT
  • Field: CHG_REQ_TYPE
  • Field: CHG_ROW_COUNT
  • Field: CHG_ROW_LIMIT
  • Field: CHG_SWS_MISC_GRP
  • Field: CHG_SWS_PQL_SETUP
  • Field: CHG_SWS_SQL_SETUP
  • Field: CHG_WAS_SUCCESS
  • Translate: CHG_ENCODING-CSV-1901-01-01
  • Translate: CHG_ENCODING-JSON-1901-01-01
  • Translate: CHG_ENCODING-XML-1901-01-01
  • Translate: CHG_PARM_DATA_TYPE-BOOL-1901-01-01
  • Translate: CHG_PARM_DATA_TYPE-INT-1901-01-01
  • Translate: CHG_PARM_DATA_TYPE-NUMB-1901-01-01
  • Translate: CHG_PARM_DATA_TYPE-STR-1901-01-01
  • Translate: CHG_PARM_TYPE-H-1901-01-01
  • Translate: CHG_PARM_TYPE-P-1901-01-01
  • Translate: CHG_PARM_TYPE-Q-1901-01-01
  • Translate: CHG_REQ_TYPE-P-1901-01-01
  • Translate: CHG_REQ_TYPE-S-1901-01-01
  • Page: CHG_SWS_ADMIN
  • Page: CHG_SWS_CONF_TBL
  • Page: CHG_SWS_REC_WL
  • Page: CHG_SWS_TEST
  • Menu: CHG_TOOLS
  • Component: CHG_SWS_CONF_TBL-GBL
  • Component: CHG_SWS_REC_WL-GBL
  • Record PeopleCode: C_SWS_REC_WL-LASTUPDDTTM-SavePreChange
  • Record PeopleCode: C_SWS_WORK-SETUP-FieldFormula
  • Role: CHG_SWS_ADMIN
  • Role: CHG_SWS_USER
  • SQL Object: C_PQL_PL_EDIT-2
  • SQL Object: C_SWS_PL_EDIT-2
  • Message Definition: CHG_EXPORTER_PARAMS
  • Message Definition: CHG_GENERIC
  • Message Definition: CHG_SWS_PARAMS
  • Message Definition: IB_REST_STUB
  • Page PeopleCode: CHG_SWS_TEST-Activate
  • Component PeopleCode: CHG_SWS_CONF_TBL-GBL-PostBuild
  • Component PeopleCode: CHG_SWS_CONF_TBL-GBL-PreBuild
  • Component PeopleCode: CHG_SWS_CONF_TBL-GBL-SavePostChange
  • Component PeopleCode: CHG_SWS_CONF_TBL-GBL-SavePreChange
  • Component Record PeopleCode: CHG_SWS_CONF_TBL-GBL-C_SWS_CONF_PAR-RowInit
  • Component Record PeopleCode: CHG_SWS_CONF_TBL-GBL-C_SWS_CONF_TBL-SearchInit
  • Component Record Field PeopleCode: CHG_SWS_CONF_TBL-GBL-C_SWS_CONF_PAR-CHG_PARM_TYPE FieldChange
  • Component Record Field PeopleCode: CHG_SWS_CONF_TBL-GBL-C_SWS_CONF_TBL-CHG_DE_PATH FieldChange
  • Component Record Field PeopleCode: CHG_SWS_CONF_TBL-GBL-C_SWS_CONF_TBL-CHG_REQ_TYPE FieldChange
  • Component Record Field PeopleCode: CHG_SWS_CONF_TBL-GBL-C_SWS_WORK-CHG_COPY_TO FieldChange
  • Component Record Field PeopleCode: CHG_SWS_CONF_TBL-GBL-C_SWS_WORK-COPY_PB FieldChange
  • Component Record Field PeopleCode: CHG_SWS_CONF_TBL-GBL-C_SWS_WORK-DELETE_PB FieldChange
  • HTML Catalog: CHG_SWS_HTTP-4
  • Permission List: CHG_SWS_ADMIN
  • Permission List: CHG_SWS_USER
  • Portal Registry Structure: EMPLOYEE-C-CHG_SWS_CONF_TBL
  • Portal Registry Structure: EMPLOYEE-C-CHG_SWS_REC_WL
  • Portal Registry Structure: EMPLOYEE-F-CHG_CUSTOM
  • URL Definitions: C_SWS_DOC
  • Application Package: CHG_CONSTANTS-CHG_CONSTANTS-.
  • Application Package: CHG_ENCODING_TOOLS-CHG_ENCODING_TOOLS-.
  • Application Package: CHG_HTTP-CHG_HTTP-.
  • Application Package: CHG_IB-CHG_IB-.
  • Application Package: CHG_SWS-CHG_SWS-.
  • Application Package: CHG_UTILS-CHG_UTILS-.
  • Application Package: PsoftQL-CHG_SWS-:
  • Application Package PeopleCode: CHG_CONSTANTS-http
  • Application Package PeopleCode: CHG_ENCODING_TOOLS-JSONHelper
  • Application Package PeopleCode: CHG_ENCODING_TOOLS-XMLToPsoft
  • Application Package PeopleCode: CHG_ENCODING_TOOLS-constants
  • Application Package PeopleCode: CHG_ENCODING_TOOLS-psoftToJSON
  • Application Package PeopleCode: CHG_ENCODING_TOOLS-psoftToXML
  • Application Package PeopleCode: CHG_HTTP-URLParser
  • Application Package PeopleCode: CHG_HTTP-constants
  • Application Package PeopleCode: CHG_IB-IBRequest
  • Application Package PeopleCode: CHG_IB-IBResponse
  • Application Package PeopleCode: CHG_IB-constants
  • Application Package PeopleCode: CHG_SWS-PsoftQL-constants
  • Application Package PeopleCode: CHG_SWS-PsoftQL-fieldCriteria
  • Application Package PeopleCode: CHG_SWS-PsoftQL-request
  • Application Package PeopleCode: CHG_SWS-PsoftQL-requestRecord
  • Application Package PeopleCode: CHG_SWS-SWSConfig
  • Application Package PeopleCode: CHG_SWS-SWSHandler
  • Application Package PeopleCode: CHG_SWS-constants
  • Application Package PeopleCode: CHG_UTILS-Field
  • Application Package PeopleCode: CHG_UTILS-RecordHelper
  • Application Package PeopleCode: CHG_UTILS-debugLogger
  • Service: CHG_SWS
  • Service Operation: CHG_SWS_GET
  • Service Operation: CHG_SWS_PSOFTQL_POST
  • Service Operation Handler: CHG_SWS_GET-REQUESTHDLR
  • Service Operation Handler: CHG_SWS_PSOFTQL_POST-REQUESTHDLR
  • Service Operation Version : CHG_SWS_GET-v1
  • Service Operation Version : CHG_SWS_PSOFTQL_POST-v1
  • Service Operation Routing: GENERATED12273628-1900-01-01
  • Service Operation Routing: GENERATED60932339-1900-01-01
  • Logical Schema: CHG_SWS-PARAMS-V1
  • XML Schema: CHG_SWS-PARAMS-V1-XML
  • Document Schema: CHG_SWS-PARAMS-V1
  • Json Schema : CHG_SWS-PARAMS-V1-JSON
  • Html Schema : CHG_SWS-PARAMS-V1-HTML

2 - Patching SWS

In this article, we will discuss how SWS patching and bug fixes work.

Patches for SWS include all previously delivered objects, even if they have not changed. This ensures that you are brought completely up to date, even if your organization missed a patch. We do NOT deliver “delta projects” by design.

Cedar Hills Group completes development in our own sandboxes. We rely heavily on shared libraries that are used across different projects and clients that have their own code releases. The only way to be 100% confident that we deliver high-quality software patches is to deliver a full file with all the objects. This is similar in spirit to how Oracle delivers PeopleSoft patches by delivering a “demo” database that is the source of truth for a particular software PUM. If you need a “delta”/change-only application designer project, we have a procedure below on how to generate that.

The most straightforward way to mark patches is by the date in YYYY-MM-DD format. This represents the date the code was packaged from our development environment. The patch is in the Project comments of the Application Designer project CHG_SWS_V2.

You will be able to download the releases from the private GitHub repository. There will be a zip file resembling the release date like YYYY-MM-DD. You should always get the most recent version available from that list unless you have been directed otherwise by Cedar Hills Group, Inc.

Generate Delta Project

If your change control team needs a “change only” file for production migration of patches, that can easily be generated during the patching installation process. The procedure is below and must be done prior to installing the patch.

  • Place the application designer project on a drive where the PeopleTools Application Designer can access it.
  • In Application Designer:
    • Tools → Compare and Report → From File
      • If asked about replacing the existing project, choose to replace
    • Let the compare run
    • This will create a project in the source system where the upgrade flags and compare flags on the project will be set to the delta values between what we deliver and what you have in your target database.
    • File → Save Project As: New Delta Project Name per your institutional standards.
    • The project “upgrade” flags will be set with items that have changed. You can delete the objects from the project that have not changed.

If you realize that you need a delta project after already installing the patch in your source database, you can perform a comparison from DEV to TEST or TEST to PROD to determine what objects have changed and delete any unchanged objects from the project.

Patch Installation Instructions

  • Download the latest YYYY-MM-DD code archive ZIP file from the New Installation section above.
  • Please unzip the file to a location that the Application Designer will be able to access.
  • There are two projects included in the attached zip. For patching, you will only import one of these projects.
  • In your DEV instances, import Project: CHG_SWS_V2
  • If there are special instructions for a patch, they will be listed in the subsection below.

3 - Release Notes

2020-01-02

  • Version 1.0 release

2023-06-10

  • Version 2 Release
    • Major changes in functionality. Merging PsoftQL functionality that was never publicly marketed before with the version 1 SWS into one platform.

2023-09-26

  • Small fix for automatic prompt table lookups. If no DESCR field is found, we now look for the first non-key character field on the prompt table that has a non-null value and return that. This supports prompt tables that have no DESCR field but have other fields that can be used as a description.

2024-05-01

  • Added some missing code to the project during last build.

2026-01-21

  • Add support for basic Aggregate functions in PsoftQL queries.
    • Only One record is supported and no support for Having clause currently.

2026-01-25

  • Added support for sorting results in PsoftQL queries.
    • Sort order can be ascending or descending.
    • Multiple sort fields are supported.
  • Fixed an issue with joining parent-child fields where the key field is a blank character and adding a “space” since PeopleSoft does NOT allow nulls in character fields.

2026-04-20

  • Added pagination support for SQL-type SWS configurations. Clients can now page through large result sets by passing the pageNumber and rowLimit URL query-string parameters. The response meta now includes pageNumber, rowLimit, and (when more rows remain) nextPageNumber. See Pagination for SQL endpoints for details.
    • This brings the SQL handler to parity with the PsoftQL handler on pagination.
    • Existing callers that send neither parameter continue to receive the same response they did before — the change is fully backward compatible.