This chapter provides an overview of data integrity tools and discusses how to:
Run SQL Alter (Structured Query Language alter).
Run DDDAudit.
Run SYSAUDIT.
PeopleSoft provides several tools to ensure the integrity of the data that is stored in the PeopleSoft system, such as SQL Alter , SYSAUDIT, and DDDAUDIT. 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.
The primary purpose of the PeopleSoft Application Designer SQL Alter function is to bring SQL tables into accordance with PeopleTools record definitions. You can run SQL Alter in an audit-only mode that alerts you to discrepancies between record definitions and SQL tables, but that doesn't actually perform an alter.
To audit tables or views:
In PeopleSoft Application Designer, choose the records that you want to audit.
You have the option of auditing the active record definition, the selected records in the project workspace, or all the records that are in the current project.
Select the Build menu and select the appropriate option for the records that you want to audit.
If you're auditing an open record definition, choose Build, Current Object. If you select one or more records in the project workspace, you can select Build, Selected Objects. If you want to audit all records in the current project, select Build, Project.
The Build Scope shows a list of all the records that are affected, or audited in the case.
Select Alter tables as the Build Option and select Build script file as the Build Execute option.
Click Settings and choose the Alter tab in the Build Settings dialog.
In the Alter Any group box, select the situations for which you want an Alter performed.
Select the Scripts tab.
You use the Scripts tab to specify the output for the build scripts in one file, in two files, where the file is generated, and so on.
Select Write Alter comments to script.
Performing alters with this option enabled adds comments to the SQL script about what fields are being manipulated.
Choose the other script file options.
Click OKto close the Build Settings dialog and return to the Build dialog.
Press Buildon the Build dialog.
The SELECT statements that are produced by auditing with SQL Alter deal with inconsistencies between PeopleTools tables and SQL in the definition of tables or columns. A SQL table is equivalent to a record in PeopleSoft Application Designer, and a column is equivalent to a field.
To fix problems that are found in the system tables and columns, you need to know how PeopleSoft field types correspond to SQL data types:
Application Designer Field Type |
SQL Data Type |
SQL Description |
Character |
CHAR |
Alphanumeric; fixed length. |
Long character |
LONGVAR |
Alphanumeric; variable length. |
Date |
DATE |
Dates; stored as fixed length; displayed in various formats. |
Number or signed number |
SMALLINT |
Numeric; integers only (no decimals); 1 to 4 digits (and 5 digits if RawBinary). |
Number or signed number |
INTEGER |
Numeric; integers only (no decimals); 5 to 9 digits (and 10 digits if RawBinary). |
Number or signed number |
DECIMAL |
Numeric; either (1) 10 or more digits or (2) contains decimal positions. |
Note. In PeopleSoft Application Designer, if a field is specified as required, or if a field is numeric and does not have a format of Phone, SSN (social security number), or SIN, you need to initialize the starting value of the column and specify the NOT NULL attribute in SQL.
This section discusses DDDAUDIT queries.
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.
Note. This SQR refers to the Data Designer, the PeopleTool that allowed you to create record definitions in the PeopleTools releases prior to release 7. Now, all of the development tools are incorporated into one integrated development environment called the PeopleSoft Application Designer.
To run DDDAUDIT:
Using Windows Explorer, navigate to PS_HOME\sqr and locate DDDAUDIT.SQR.
Double-click it.
Type in the database name, username, and password.
You probably need to use the database access ID and password to execute the DDDAUDIT properly.
Verify the Report arguments and click OK.
The f argument indicates where the system writes the .LIS file.
At the Command Prompt, press ENTER.
At the end of a successful run, you're prompted to press Enter again.
When you run DDDAUDIT.SQR, its results are written to a file called DDDAUDIT.LIS in the \TEMP folder. After running DDDAUDIT, view the .LIS file by using any text editor. Here's a sample excerpt of this file:
The following table lists the names of each query that DDDAUDIT performs on the PeopleSoft system, what it means if rows are returned, and how to resolve the inconsistency.
Note. The query names in this table are arranged alphabetically, and are not necessarily in the order in which they appear in DDDAUDIT.LIS:
Query |
If Rows are Returned? |
Resolution |
Indexes are defined in PeopleSoft Application Designer and not found in the database. |
Use PeopleSoft Application Designer to create the index. |
|
INDEX-2 |
Indexes are defined in the database and not found in PeopleSoft Application Designer. |
If the index is valid, use PeopleSoft Application Designer to define the index. Otherwise, drop the index. |
INDEX-3 |
Uniqueness or the number of keys in the Index Definition do not match between PeopleSoft Application Designer and the database. |
See INDEX-1. |
SQL table names are defined in the Data Designer that are not blank and not the same as the record name. |
Use Application Designer to enter the record name as the Non-Standard SQL Table Name. |
|
TABLE-2 |
SQL tables are defined in the Data Designer and not found in the database. |
If you want to delete the record definition, use PeopleSoft Application Designer (select File, Delete). Otherwise, to create the SQL table, use Application Designer. This command also creates the appropriate indexes for keys, duplicate order keys, alternate keys, and list items. |
TABLE-3 |
SQL tables are defined in the database and not found in the Data Designer. SYSINDEXES and SYSTABLES can be ignored in these results. For Informix: PSALTERLONG can also be ignored. |
If the table is not valid, drop it. Otherwise, define a new record in PeopleSoft Application Designer. |
TABLE-4 |
Tablespace is not defined for the SQL table in PeopleSoft Application Designer. |
If you're using or migrating to a relational database management system that uses table spaces, you should use PeopleSoft Application Designer to assign table spaces to these tables. |
TABLE-5 |
Table contains more than 500 fields. |
Use PeopleSoft Application Designer to adjust the number of fields on the table, as needed. |
Views are defined in the Data Designer and not found in the database. |
If you want to delete the view definition, use PeopleSoft Application Designer (select File, Delete). Otherwise, to create the SQL view, use Application Designer. |
|
VIEWS-2 |
Views are defined in the database and not found in the Data Designer. |
If the view is not valid, Drop it. Otherwise, define a new view in PeopleSoft Application Designer. |
Trigger defined in the PeopleSoft Application Designer and not found in the database. |
Delete the definition if it is not needed. Otherwise, use PeopleSoft Application Designer to create the trigger in the database. |
This section provides an overview of how to run SYSAUDIT and discusses audits for:
Application Engine integrity.
Clear list integrity.
EDI Manager integrity.
Field integrity.
Menu integrity.
Security integrity.
Page integrity.
Optimization integrity.
PeopleCode integrity.
Process Scheduler.
Query integrity.
Record integrity
Related language integrity.
SQL integrity.
Tree integrity.
Notes for TREE-09.
Notes for TREE-22.
Translate integrity.
PSLOCK integrity.
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.
Select PeopleTools, Utilities, Audit, Perform System Audit.
System Audit page
Audit AE Integrity |
Audits PeopleSoft Application Engine program definitions and components. |
Audit Clear List Integrity |
Audits the SYSCLRLIST* component. |
Audit EDI Manager Integrity |
Audits the EC* component for EDI Manager. |
Audit Field Integrity |
Audits the DBFLD* component for PeopleSoft Application Designer fields. |
Audit Menu Integrity |
Audits the MENU* component for PeopleSoft Application Designer menus. |
Audit Security Integrity |
Audits the AUTH*, OPRDF* components for PeopleTools Security. |
Audit Page Integrity |
Audits the PNL* component for PeopleSoft Application Designer pages. |
Audit Optimization Integrity |
Audits the definitions for Optimization Engine. |
Audit PeopleCode Integrity |
Audits the PCM* and PRG* components for PeopleCode programs. |
Audit Query Integrity |
Audits the QRY* component for PeopleSoft Query. |
Audit Record Integrity |
Audits the REC* and VIEWT* components for PeopleSoft Application Designer records. |
Audit Related Lang Integrity |
Audits Related Language Integrity. Query the *LANG component. |
Audit SQL Integrity |
Audits the referential integrity of the tables supporting SQL objects in the db component. |
Audit Tree Integrity |
Audits the TREE* component. |
Audit Translates Integrity |
Audits the XLAT* component. |
Audit PSLOCKS Version Integrity |
Audits the VERSN* component. |
To run SYSAUDIT:
Select PeopleTools, Utilities, Audit, Perform System Audit.
When prompted, enter a new run control ID and click OK.
Select the desired Integrity Audit options.
Click Run.
Select the appropriate settings on the Process Scheduler Request page, and click .OK.
When you run SYSAUDIT, you can specify the type and format of the output on the Process Scheduler Request page, as you can with any Process Scheduler request. By default, the results are written to the configured report repository as an Adobe Acrobat PDF file called SYSAUDIT_runctrl_ID.pdf, where runctrl_ID is the run control ID you specified for the audit.
The tables in the following sections list the names of each of the audit queries that SYSAUDIT performs on the PeopleSoft system, what it means if rows are returned, and how to resolve the discrepancies that the audit report uncovers.
Note. The query names in these tables are arranged alphabetically, and are not necessarily in the order in which they appear in the output.
See Also
The following table describes the audit queries and resolutions for this area:
Query |
Description |
Resolution |
AE programs without any sections. |
If the affected program is delivered by PeopleSoft and is not modified, contact the GSC. If the affected program is converted as part of an upgrade, this may be a symptom that the conversion failed. Contact the GSC. Otherwise, use the Application Engine designer to either create valid sections for the program or remove the program. It is not possible to recover the missing sections. |
|
AE-02 |
AE sections without AE programs. |
If the affected program is delivered by PeopleSoft and is not modified, contact the GSC. If the affected program is converted as part of an upgrade, this may be a symptom that the conversion failed. Contact the GSC. If the affected program is a customization, it is not possible to recover the missing program. Restore it from a backup if needed. Use SysAECleanUp.dms (located in PS_HOME\scripts.) to remove any orphans remaining after you have followed the steps above. |
AE state records without AE programs. |
If the affected record is delivered by PeopleSoft, contact the GSC. If the affected program is converted as part of an upgrade, this may be a symptom that the conversion failed. Contact the GSC. Otherwise, ignore the warnings or restore the program from a backup. It is not possible to recover the missing program. |
|
AE-04 |
AE state records without record definitions. |
If the affected record is delivered by PeopleSoft, contact the GSC. If the affected program is converted as part of an upgrade, this may be a symptom that the conversion failed. Contact the GSC. Otherwise, using PeopleTools Application Designer, remove invalid records from the program definition or create record definitions. |
AE-05 |
AE section details without base section definitions. |
If the affected program is delivered by PeopleSoft and is not modified, contact the GSC. If the affected program is converted as part of an upgrade, this may be a symptom that the conversion failed. Contact the GSC. Otherwise, ignore the warnings or restore the program from a backup. It is not possible to recover the missing sections. |
AE-06 |
AE steps without sections. |
If the affected program is delivered by PeopleSoft and is not modified, contact the GSC. If the affected program is converted as part of an upgrade, this may be a symptom that the conversion failed. Contact the GSC. If the affected program is a customization, it is not possible to recover the missing program. Restore it from a backup if needed. Use SysAECleanUp.dms (located in PS_HOME\scripts.) to remove any orphans remaining after you follow the steps above. |
AE-07 |
AE Call Section actions referring to nonexistent sections |
If the affected program is delivered by PeopleSoft and is not modified, contact the GSC. If the affected program is converted as part of an upgrade, this may be a symptom that the conversion failed. Contact the GSC. Otherwise, use the Application Engine either to open the program containing the Call Section and change it to call the correct section, or create the required section. |
AE-08 |
AE Log Message actions without an AE step. |
If the affected record is delivered by PeopleSoft, contact the GSC. If the affected program is converted as part of an upgrade, this may be a symptom that the conversion failed. Contact the GSC. If the affected program is a customization, it is not possible to recover the missing program; restore it from a backup if needed. Use SysAECleanUp.dms (located in PS_HOME\scripts.) to remove any orphans remaining after you follow the steps above. |
AE-09 |
AE actions without an AE step. |
If the affected record was delivered by PeopleSoft, contact the GSC. If the affected program was converted as part of an upgrade, this may be a symptom that the conversion failed. Contact the GSC. If the affected program is a customization, it is not possible to recover the missing program; restore it from a backup if needed. Use SysAECleanUp.dms (located in PS_HOME\scripts.) to remove any orphans remaining after you follow the steps above. |
AE temp tables that are attached to invalid AE programs. |
If the affected temp table was delivered by PeopleSoft, contact the GSC. If the affected program is converted as part of an upgrade, this may be a symptom that the conversion failed. Contact the GSC. Otherwise, ignore the warnings or restore the program from a backup. It is not possible to recover the missing programs. |
|
Orphaned AE PeopleCode. |
Because of platform issues and Structured Query Report (SQR), this check may not be included in the audit report. But SysAECleanUp.dms cleans up these orphans. |
|
Orphaned AE SQL objects. |
Because of platform issues and SQR, this check may not be included in the audit report. But SysAECleanUp.dms cleans up these orphans. |
|
AE-13 |
Verify that enough rows are loaded into PS_AEONLINEINST. |
Contact the GSC. This table is a critical element of the Application Engine Runtime. |
AE-14 |
Verify that enough rows are loaded into PS_AEINSTANCENBR. |
Contact the GSC. This table is a critical element of the Application Engine Runtime. |
AE-15 |
Verify that a row is loaded into PS_AELOCKMGR. |
Contact the GSC. This table is a critical element of the Application Engine Runtime. |
The following table describes the audit queries and resolutions for this area:
Query |
Description |
Resolution |
Entries in PSACTIVITYDEL and PSACTIVITYDEFN are not mutually exclusive. |
Run the VERSION Application Engine program. |
|
SYSCLRLIST-02 |
Entries in PSAEAPPLDEL and PSAEAPPLDEFN are not mutually exclusive. |
Run the VERSION Application Engine program. |
SYSCLRLIST-05 |
Entries in PSCOLORDEL and PSCOLORDEFN are not mutually exclusive. |
Run the VERSION Application Engine program. |
SYSCLRLIST-06 |
Entries in PSFMTDEL and PSFMTDEFN are not mutually exclusive. |
Run the VERSION Application Engine program. |
SYSCLRLIST-07 |
Entries in PSHOLIDAYDEL and PSHOLIDAYDEFN are not mutually exclusive. |
Run the VERSION Application Engine program. |
SYSCLRLIST-09 |
Entries in PSIMPDEL and PSIMPDEFN are not mutually exclusive. |
Run the VERSION Application Engine program. |
SYSCLRLIST-10 |
Entries in PSMENUDEL and PSMENUDEFN are not mutually exclusive |
Run the VERSION Application Engine program. |
SYSCLRLIST-11 |
Entries in PSPCMPROGDEL and PSPCMPROG are not mutually exclusive. |
Run the VERSION Application Engine program. |
SYSCLRLIST-12 |
Entries in PSPNLDEL and PSPNLDEFN are not mutually exclusive. |
Run the VERSION Application Engine program. |
SYSCLRLIST-13 |
Entries in PSPNLGRPDEL and PSPNLGRPDEFN are not mutually exclusive. |
Run the VERSION Application Engine program. |
SYSCLRLIST-14 |
Entries in PSPRCSRUNCDEL and PSPRCSRUNCNTL are not mutually exclusive |
Run the VERSION Application Engine program. |
SYSCLRLIST-15 |
Entries in PSPROJECTDEL and PSPROJECTDEFN are not mutually exclusive |
Run the VERSION Application Engine program. |
SYSCLRLIST-16 |
Entries in PSQRYDEL and PSQRYDEFN are not mutually exclusive. |
Run the VERSION Application Engine program. |
SYSCLRLIST-17 |
Entries in PSRECDEL and PSRECDEFN are not mutually exclusive. |
Run the VERSION Application Engine program. |
SYSCLRLIST-18 |
Entries in PSRECURDEL and PS_PRCSRECUR are not mutually exclusive. |
Run the VERSION Application Engine program. |
SYSCLRLIST-19 |
Entries in PSSTYLEDEL and PSSTYLEDEFN are not mutually exclusive. |
Run the VERSION Application Engine program. |
SYSCLRLIST-20 |
Entries in PSTOOLBARDEL and PSTOOLBARDEFN are not mutually exclusive. |
Run the VERSION Application Engine program. |
SYSCLRLIST-21 |
Entries in PSTREEBRADEL and PSTREEBRANCH are not mutually exclusive. |
Run the VERSION Application Engine program. |
SYSCLRLIST-22 |
Entries in PSTREEDEL and PSTREEDEFN are not mutually exclusive. |
Run the VERSION Application Engine program. |
SYSCLRLIST-23 |
Entries in PSTREESTRDEL and PSTREESTRCT are not mutually exclusive. |
Run the VERSION Application Engine program. |
SYSCLRLIST-24 |
Entries in XLATTABLEDEL and XLATTABLE are not mutually exclusive. |
Run the VERSION Application Engine program. |
The following table describes the audit queries and resolutions for this area:
Query |
Description |
Resolution |
Inbound work records that are not found in the PSRECDEFN table. |
Either modify the inbound map definition to not use the Inbound Row ID Work Record (ECINMAPFILE), or create the Work Record Definition. |
|
ECINMPFL-2 |
Inbound work record EC Map ID is not found in the PS_ECMAPDEFN table. |
Create an entry in the map definition table (ECMAPDEFN). |
ECINMPFD-1 |
Inbound work record fields are not found with valid EC Map ID and EC File Row ID combination from the PS_ECINMAPFILE table |
Either remove the invalid map ID from the Inbound Work Record (ECINMAPFLD), or create an Inbound Row ID Work Record entry. |
ECINMPFD-2 |
Inbound work record fields from PS_ECINMAPFLD are not found in PSRECFIELD |
Either remove the invalid entry in the inbound work record or create the record/field definition. |
ECINMPRC-1 |
Target inbound records are not found in the PSRECDEFN table |
Either modify the inbound map definition to not use the Inbound Row ID Target Record (ECINMAPREC), or create the Work Record Definition. |
ECINMPRC-2 |
Target inbound EC Map ID is not found in the PS_ECMAPDEFN table |
Either remove the invalid map ID from the Inbound Row ID Target Record or create an entry in the Map Definition table. |
ECINMPRF-1 |
EC Map ID/EC File Row ID combination is not found in PS_ECINMAPREC for the target inbound record field in PS_ECINMAPRECFLD |
Remove the invalid map ID from the Inbound Target Record. |
ECINMPRF-2 |
A Field for a Record in PS_ECINMAPRECFLD was not found in PSRECFIELD |
Create the appropriate definitions in PSRECFIELD or remove the invalid map ID from the Inbound Target Record. |
ECINMPRF-4 |
A related record in PS_ECINMAPRECFLD is not found in PSRECDEFN |
Either create the record definition or remove the reference to the related record in the Inbound Target Record. |
ECINMPRF-5 |
An EC Related Record in PS_ECINMAPRECFLD does not have a valid EC Related Row ID from PS_ECINMAPREC |
Either remove the reference to the related record from the Inbound Target Record or create an appropriate entry in the Inbound Row ID Target Record. |
ECINMPRF-6 |
A related field in PS_ECINMAPRECFLD is not found in PSRECFIELD |
Either remove or correct the reference to the related field record from the Inbound Target Record or create the correct definition in PSRECFIELD. |
Target outbound records are not found in the PSRECDEFN table |
Either modify the outbound map definition to not use the Outbound Target Record, or create the record definition. |
|
ECOTMPRC-2 |
Outbound work record EC Map ID is not found in the PS_ECMAPDEFN table |
Create an entry in the map definition table. |
ECOTMPRC-3 |
Parent records from the outbound work record are not found in the PSRECDEFN table |
Remove the reference to the parent record or create a record definition for the parent. |
ECOTMPRC-4 |
File records from the outbound work record are not found in the PSRECDEFN table |
Create a record definition for the file record. |
ECOTMPFD-1 |
Outbound work record fields are not found with a valid EC Map ID and EC File Row ID combination from the PS_ECOUTMAPREC table |
Either remove the entry from the Outbound Work Record (ECOUTMAPFLD) or create an entry in the Outbound Target Record (ECOUTMAPREC). |
ECOTMPFD-2 |
Outbound work record fields from PS_ECOUTMAPFLD are not found in PSRECFIELD |
Create the appropriate definitions in PSRECFIELD or remove the invalid map ID from the Outbound Work Record. |
SYSECMGR-1 |
Inbound work record field does not exist in the type definitions in PSDBFIELD |
Call PeopleSoft GSC for resolution. |
The following table describes the audit queries and resolutions for this area:
Query |
Description |
Resolution |
FIELD-3 |
The following default fields are invalid. |
Modify the default value in record field properties. |
FIELD-4 |
Fields used in record definitions that do not exist in PSDBFIELD |
Define the field in PeopleSoft Application Designer. |
FIELD-5 |
Fields have multiple default field labels in PSDBFLDLABL. |
Open the field, select default label, and resave. |
FIELD-06 |
Deleted fields have orphaned field labels in PSDBFLDLABL. |
|
The following table describes the audit queries and resolutions for this area:
Query |
Description |
Resolution |
MENU-01 |
A row in the MenuItem table has no corresponding row in the MenuDefinition table. |
Issue the following SQL:
|
MENU-02 |
A component-type menu item specifies no component. |
Use the Menu Designer to change each of these menu items to reference an existing component. |
MENU-03 |
A menu item has a specified component, but that component has no corresponding row in the ComponentDefinition table. |
Use the Menu Designer to change each of these menu items to reference an existing component. |
MENU-04 |
A PeopleCode-type menu item has a specified enabling component, but that component is not specified for any component-type menu item within the same menu. (Such menu items never get enabled at runtime.) |
Use the Menu Designer to change each of these menu items to reference a component that is associated with a component-type menu item within the same menu. |
MENU-05 |
A menu has no rows in the MenuItem table. |
Use the Menu Designer to add any appropriate menu items to each of these menus. |
The following table describes the audit queries and resolutions for this area:
Query |
Description |
Resolution |
Authorized Signon Operator does not exist in the Class Definition table. Incomplete permission list: Orphan signon times: (Verifies the existence of permission lists owning signon times.) |
Delete the extra signon times. If this is a permission list that should exist, recreate it through PeopleTools Security.
|
|
SEC-2 |
Incomplete permission list: Orphan page permissions: (Verifies the existence of permission lists owning page permissions.) |
Delete the extra page permissions. If this is a permission list that should exist, recreate it through PeopleTools Security.
|
SEC-3 |
Incomplete permission list: Orphan process groups: (Verifies existence of permission lists owning process groups.) |
Delete the extra process group authorizations. If this is a permission list that should exist, recreate it through PeopleTools Security.
|
SEC-4 |
Incomplete permission list: Orphan process profiles: (Verifies existence of permission lists owning process profiles.) |
Delete the extra process profiles. If this is a permission list that should exist, recreate it through PeopleTools Security.
|
SEC-5 |
Permission list references a nonexistent process group: (Verifies the existence of process groups.) |
Delete the extraneous process groups. If this group should exist, recreate it.
|
User profile references a role that does not exist: |
Open the user profile in PeopleTools Security and remove the reference to the Role that does not exist. |
|
SEC-7 |
Role references a permission list that does not exist: |
Open the Role in PeopleTools Security and remove the reference to the Permission List that does not exist. |
SEC-8 |
Role references a user that does not exist in the PSOPRDEFN table. |
Remove the user from the PSROLEUSER table. |
SEC-9 |
Permission list references a role that does not exist in the PSROLEDEFN table. |
Remove the role from the PSROLECLASS table. |
SEC-28 |
Invalid entries in the PSAUTHITEM table. (Continues in next row) |
Run the following SQL:
|
SEC-28 |
(Continued) |
|
SEC-28 |
(Continued) |
|
SEC-29 |
The displayed PSPRSMPERM rows contain invalid PORTAL_PERMTYPE values. |
Run the following SQL:
|
The following table describes the audit queries and resolutions for this area:
Query |
Description |
Resolution |
PAGE-01 |
Page definition's page field count is not equal to the count of its page fields in the PageField table, and there is at least one row in the PageField table for that page. |
Enter the following SQL:
|
PAGE-02 |
Page definition's page field count is not equal to zero, but there are no rows in the PageField table for that page definition. |
Enter the following SQL:
|
PAGE-03 |
A subpage contains itself as a page field. |
Use the Page Designer to change each of these page fields to reference a different subpage. |
PAGE-04 |
A row in the PageField has no corresponding row in the PageDefinition table. |
Issue the following SQL:
|
PAGE-05 |
A subpage-type page field has no corresponding row in the Page Definition table for its specified subpage. |
Use the Page Designer to change each of these page fields to reference an existing subpage. |
PAGE-06 |
A page field's specified record/field has no corresponding row in the RecordField table. |
Use the Page Designer to change each of these page fields to reference an existing record/field. |
PAGE-07 |
A row in the ComponentItem table has no corresponding row in the ComponentDefinition table. |
Issue the following SQL:
|
PAGE-08 |
A component item's specified page has no corresponding row in the PageDefinition table. |
Use Application Designer to replace each of these component items with one that references an existing page. |
PAGE-09 |
A component's specified access detail page has no corresponding row in the PageDefinition table. |
Use Application Designer to change each of these components to reference an access detail page that exists. |
PAGE -10 |
A component's specified search record has no corresponding row in the RecordDefinition table. |
Use Application Designer to change each of these components to reference a search record that exists. |
PAGE-11 |
A component's specified add search record has no corresponding row in the RecordDefinition table. |
Use Application Designer to change each of these components to reference an add search record that exists. |
The following table describes the audit queries and resolutions for this area:
Query |
Description |
Resolution |
Problem type records that do not have matching record definitions. |
Execute the following SQL:
|
|
OPTZN-02 |
Optimization delete records that do not have matching definitions. |
In PeopleSoft Application Designer, open the base record definition properties. Clear the optimization delete record name, and perform an alter. |
OPTZN-03 |
Optimization base record has fields that delete record does not. |
Using PeopleSoft Application Designer, delete the optimization delete record definition, drop the table, and recreate it by cloning the base record. Run Build. You may need to recreate triggers on the base record on some platforms where deferred processing is not done. |
OPTZN-04 |
Optimization delete record has fields that base record does not. |
Using PeopleSoft Application Designer, delete the optimization delete record definition, drop the table and recreate it by cloning the base record. Run Build. You may need to recreate triggers on the base record on some platforms where deferred processing is not done. |
OPTZN-06 |
Optimization base record defn has the trigger flag set but has no delete record name, or vice versa. |
Using PeopleSoft Application Designer, open the record definition properties, make sure that the optimization delete record name is set, and save. Build the record with the create triggers check box set to create optimization triggers. |
OPTZN-07 |
Optimization records that need to have trigger flag set and do not. |
Using PeopleSoft Application Designer, open the record definition properties, make sure that the optimization delete record name is set, and save. Build the record with the create triggers check box set to create optimization triggers. |
Optimization records that have trigger flag set but are not marked readable in any problem type. |
Using PeopleSoft Application Designer, open the record definition properties, clear the optimization delete record name and alter the record to drop optimization triggers as they are no longer needed but affect performance. |
|
Optimization Tools table PSOPTREC is empty for the listed problem types. |
In PeopleSoft Application Designer, open the problem type definition and select the Records tab. Make sure that the problem type definition contains a list of record names. If there are no records listed, the problem type definition needs to be corrected in order to add the list of records for that problem type. Save the problem type definition. |
|
OPTZN-10 |
Optimization Tools table PSOPTSYNC does not have an entry for the listed opt records, that are marked READABLE in PSOPTREC. |
Open the problem type definition in Application Designer, make sure that the readable flags are set correctly for each readable record, and save the problem type definition. |
OPTZN-11 |
Optimization Tools table PSOPTSYNC does not have an entry with PROBINST = $ALL$ and is marked as NON SCENARIO_MANAGED and READABLE in PSOPTREC. |
Using Problem Type Designer, make sure that the readable flags are set correctly for each readable record. Make sure that the scenario_managed flags are set correctly. Save the problem type definition. |
OPTZN-12 |
Optimization Tools table PSOPTSYNC has extra entries for the listed record names that are not there in PSOPTREC. |
Submit the following SQL to remove extra entries in PSOPTSYNC table.
|
OPTZN-13 |
The following record names in Optimization Tools table PSOPTREC do not have at least one field listed in the PSOPTFIELD table. |
Open the problem type definition in Application Designer. Make sure that for every record in the problem type definition at least one field is selected to be loaded in the problem instance. |
OPTZN-14 |
For the following transaction parameter of type RECARRAY, the default value contains an invalid record name. |
Open the problem type definition in PeopleSoft Application Designer. Inspect the offending transaction parameter and make sure that the default value contains a valid record name. |
OPTZN-15 |
PSOPTSOLVERCODE table is empty for the listed problem types. |
You may ignore this if none of the problem types need a third-party solver. Otherwise, populate the PSOPTSOLVERCODE table with the third-party solver license key. Select PeopleTools, Utilities, Optimization, Solver Licenses. |
OPTZN-16 |
PSOPTSOLVERCODE table has a null licence key for the listed problem types. |
You may ignore this if the plugin does not need a third-party solver. Otherwise populate the PSOPTSOLVERCODE table with the third-party solver licence key. Select PeopleTools, Utilities, Optimization, Solver Licenses. |
OPTZN-17 |
This query identifies readable base records in an analytic type that don't have an optimization delete record specified. |
In Application Designer, either specify a delete record for the analytic type record, or clear the Readable check box for the analytic type record. |
OPTZN-18 |
This query identifies base records in an analytic type that have an optimization delete record specified, but aren't readable. |
In Application Designer, either select the Readable check box for the analytic type record, or don't specify an optimization delete record for the analytic type record. |
OPTZN-19 |
This query identifies base records and their associated delete records in an analytic type that don't have all fields in the same order. |
In Application Designer, change the field order of one of the records to match the field order of the other record. |
OPTZN-21 |
This query identifies fields in main records used in an analytic model that aren't selected in the analytic type associated with that model. |
In Application Designer, either specify an appropriate record in the analytic model, or select the appropriate corresponding fields in the analytic type definition. |
OPTZN-22 |
This query identifies fields in aggregate records used in an analytic model that aren't selected in the analytic type associated with the model. |
In Application Designer, either specify an appropriate record in the analytic model, or select the appropriate corresponding fields in the analytic type definition. |
The following table describes the audit queries and resolutions for this area:
Query |
Description |
Resolution |
PEOPLECODE-1 |
The PeopleCode Name table contains a program name that does not exist in PcmProgram table |
Run the following SQL:
|
PEOPLECODE-2 |
The PeopleCode Program table contains a program name that does not exist in the PcmName table. |
Run the following SQL:
|
PEOPLECODE-3 |
The PeopleCode Program table name count does not match the record count in PcmName table. |
Run the following SQL:
|
PEOPLECODE-4 |
PeopleCode contains invalid FILELAYOUT References. |
Open the PeopleCode program in PeopleSoft Application Designer and correct the invalid reference. |
PEOPLECODE-5 |
PeopleCode reference to an invalid record or field. |
Open the PeopleCode program in PeopleSoft Application Designer and correct the invalid reference. |
PEOPLECODE-6 |
PeopleCode reference to an invalid field. |
Open the PeopleCode program in PeopleSoft Application Designer and correct the invalid field name. |
The following table describes the audit queries and resolutions for this area:
Query |
Description |
Resolution |
PRCSSCHED-01 |
SQR-Related Process Definitions (PS_PRCSDEFN) that override the PARMLIST field from the Process Type Definition (PS_PRCSTYPEDEFN). |
For the listed processes, select Process Scheduler, Processes, Override Options. Remove the value that is assigned to the Parameter List field. Note. This PRRSCHED-01 is intended to be a warning. If the override of the parameter list that is specified in the process type definition is intentional, then the above action can be bypassed. |
PRCSSCHED-03 |
Process Definitions (PS_PRCSDEFN), where the OUTDESTTYPE should be set to NONE. |
For the listed processes, select Process Scheduler, Processes Destination. In the Output Destination Options group, set the Type option to (None). |
PRCSSCHED-04 |
Process Definitions, where the API AWARE should be set to true. |
For the listed processes, select Process Scheduler, Processes, Process Definition. Select the check box that reads API Aware. If API Aware is not marked, this process gets an incorrect run status when it's viewed from Process Monitor. For additional information, please refer to the Process Scheduler PeopleBook. |
PRCSSCHED-05 |
Process Definitions, where process type is not found in the Process Type Definition . |
This occurs when a Process Definition is copied from another PeopleSoft database by using project upgrade. However, the Process Type definition that is associated with this Process Definition is not copied into the database. Review the project upgrade that is used to create the Process Definition. Create another project upgrade to copy Process Type definition from the database where the Process Definition originated. |
PRCSSCHED-06 |
Process Job Item (PS_PRCSJOBITEM), where Process Type is listed as a job item, but is not found in the Process Definition (PS_PRCSDEFN). |
This occurs when a PSJob is copied from another PeopleSoft database by using a project upgrade. However, the Process Definition for one or more job items in the PSJob is not copied from the database. Review the project upgrade that is used to create the PSJob. Create another project upgrade to copy the Process Definitions that are identified in this report from the database where the PSJob originated. |
PRCSSCHED-07 |
Server Class List (PS_SERVERCLASS), where Process Type is not found in the Process Type Definition (PS_PRCSTYPEDEFN). |
This occurs when a Server Definition is copied from another database by using a project upgrade. However, a process type in the Server Class list is not found in the Process Type Definition. Create another project upgrade to copy the Process Type definition from the database where the Server Definition is created. |
PRCSSCHED-08 |
Process Definitions, where the process category is invalid |
For the listed processes, select Process Scheduler, Processes, Process Definition. Correct the Process Category. |
PRCSSCHED-09 |
Job Definitions, where the process category is invalid. |
For the listed jobs, select Process Scheduler, Jobs, Job Definition. Correct the Process Category. |
PRCSSCHED-10 |
Process Definitions, where the process category is missing. |
For the listed processes, select Process Scheduler, Processes, Process Definition. Specify a Process Category. |
PRCSSCHED-11 |
Job Definitions, where the process category is missing. |
For the listed jobs, select Process Scheduler, Jobs, Job Definition. Specify a Process Category. |
PRCSSCHED-12 |
Server Categories, where a category defined for a server does not exist in process category definition. |
For the listed servers, select Process Scheduler, Servers, Server Definition. Remove the invalid Process Category. |
PRCSSCHED-13 |
Server Categories, where a server is missing a process category definition. |
For the listed servers, select Process Scheduler, Servers, Server Definition. A warning message appears when you open the page, and the missing Process Category is added to the server when the page is saved. |
PRCSSCHED-14 |
Process Scheduler Queue, where a queued/pending request specifies a category that does not exist in process category definition. |
Run the following SQL:
|
PRCSSCHED-15 |
Process Definitions, where a process specifies an invalid destination folder. |
For the listed processes, select Process Scheduler, Processes, Destination. Correct the Destination Folder or blank it out. |
PRCSSCHED-16 |
Process Definitions, where a process definition specifies a recovery process that does not exist. |
For the listed processes, select Process Scheduler, Processes, Process Definition Options. Correct the recovery process or blank it out. |
PRCSSCHED-17 |
Job Definitions, where a job definition specifies a recovery process that does not exist. |
For the listed jobs, select Process Scheduler, Jobs, Job Definition Options. Correct the recovery process or blank it out. |
The following table describes the audit queries and resolutions for this area:
Query |
Description |
Resolution |
QUERY-01 |
Query Definition Select count does not match the record count that is in the Query Select table. |
The query definition is corrupt. Run the following SQL to delete the entire query definition:
|
QUERY-02 |
Query Definition Expression count does not match the record count in the Query Expression table. |
Run the following SQL:
|
QUERY-03 |
Query Definition Bind count does not match the record count in the Query Bind table |
Run the following SQL:
|
QUERY-04 |
Query Definition Record name does not exist in the Record Definition table. |
See resolution for QUERY-07. |
QUERY-05 |
Query Definition Record JoinRecord name does not exist in the Query Record table |
See resolution for QUERY-01. |
QUERY-06 |
Query Definition Record JoinField name does not exist in the Query Field table. |
See resolution for QUERY-01. |
QUERY-07 |
Query Field Record Name does not exist in Record Definition Table |
To salvage the query, you must use PeopleSoft Application Designer to re-create the record definition. Having re-created the record, run Query and open the offending query. Remove or repair the affected areas and save the query. Or, if the query is not important, you can delete the entire query definition by using the resolution for QRY-01. |
QUERY-08 |
Query Definition Field name does not exist in the Field Definition table |
If the record on which this field appears is deleted, you have seen errors for every referenced field that belongs to the deleted record. If this is the case, see the resolution for QUERY-1. If this is not the case, some fields that the query depends on are either deleted or renamed. Run Query and open the offending query. Query automatically repairs itself and updates the query definition in the database. |
QUERY-09 |
Query Selection Record count does not match the record count in Query Record table. |
See resolution for QUERY-01. |
QUERY-10 |
Query Selection Field count does not match the record count in Query Field table. |
See resolution for QUERY-01. |
QUERY-11 |
Query Selection Criteria count does not match the record count in Query Criteria table. |
See resolution for QUERY-01. |
QUERY-11A |
Query Selection Criteria having count does not match the record count in Query Criteria table. |
See resolution for QUERY-01. |
QUERY-12 |
Query Selection Parent select number does not exist in Query Select table. |
See resolution for QUERY-01. |
QUERY-13 |
Query Criteria Selection-Left does not exist in the Query Selection table. |
Run Query and delete the corrupted criteria entry. If you can't open the query, run the following SQL to delete the corrupted criteria entry:
|
QUERY-14 |
Query Criteria Selection-Right1 does not exist in the Query Selection table. |
See resolution for QUERY-13. |
QUERY-15 |
Query Criteria Selection-Right2 does not exist in the Query Selection table. |
See resolution for QUERY-13. |
QUERY-16 |
Query Criteria Field-Left does not exist in the Query Selection table. |
See resolution for QUERY-13. |
QUERY-17 |
Query Criteria Field-Right1 does not exist in the Query Selection table. |
See resolution for QUERY-13. |
QUERY-18 |
Query Criteria Field-Right2 does not exist in the Query Selection table. |
See resolution for QUERY-13. |
QUERY-19 |
Query Criteria Expression-Right1 does not exist in the Query Selection table. |
See resolution for QUERY-13. |
QUERY-20 |
Query Criteria Expression-Right2 does not exist in the Query Selection table. |
See resolution for QUERY-13. |
QUERY-22 |
Following Queries Were Created Without PUBLIC Access. |
This is normal; the audit insures that PeopleSoft does not deliver nonpublic queries as part of its standard delivered products. |
QUERY-23 |
The listed queries reference non-existent database records. |
This is an internal PeopleSoft audit. Call PeopleSoft GSC for resolution. The query definition is corrupt. Run the following SQL to delete the entire query definition:
|
QUERY-24 |
The listed queries were created with the name UNTITLED. |
Queries should not be saved as UNTITLED. You must either rename or delete these queries. |
QUERY-25 |
This audit identifies any blank query names. |
You must either rename the query or delete the query. |
QUERY-26 |
This audit identifies queries that contain unions but select an unequal number of fields. |
Ensure that every select statement in the query has an equal number of fields selected. These fields must also match in display type and length. |
The following table describes the audit queries and resolutions for this area:
Query |
Description |
Resolution |
RECORD-1 |
Record Definition Field count does not match the number of records in Record Field table. |
Run the following SQL:
|
RECORD-2 |
Record Definition Fields do not exist in Record Field table. |
Run the following SQL:
Or
|
RECORD-3 |
Record Definition Parent Record does not exist in Record Definition table. |
Use Application Designer to open the definition. Select File, Object Properties, Use and specify a valid parent record. |
RECORD-4 |
Record Definition SubRecord does not exist in Record Definition table. |
Use Application Designer to open the definition. Select File, Object Properties, Type and specify a valid subrecord. |
RECORD-5 |
Record Definition Query Security Record does not exist in Record Definition table |
Use Application Designer to open the definition. Select File, Object Properties, Use and specify a valid query security record. |
RECORD-6 |
Record Field definitions contain record names that do not exist in the Record Definition table. |
Run the following SQL:
|
RECORD-7 |
DBField records do not exist for the following RecField table Fields. |
Use PeopleSoft Application Designer to open the definition and fix the invalid fields. |
RECORD-8 |
Record definitions do not exist for the following RecField table SubRecords. |
Use PeopleSoft Application Designer to open the definition and fix the invalid fields. |
RECORD-9 |
IDENTIFY INVALID RECORDS IN RECORD GROUP DEFINITIONS. |
Run the following SQL:
|
RECORD-11 |
Records with more than two Longs defined. |
This depends on whether the database platform supports it or not. If it does not, then those records must be modified. |
RECORD-12 |
Records with a blank or null RECNAME. |
Run the following SQL:
|
RECORD-13 |
Temp Records that specify a non-standard SQL table name. |
Run the following SQL:
|
The following table describes the audit queries and resolutions for this area:
Query |
Description |
Resolution |
SYSLANG-01 |
Base Language Records that are found in the PSRECDEFNLANG table. |
Run the following SQL:
|
SYSLANG-02 |
Base Language Fields that are found in the PSDBFIELDLANG table. |
Check the value of LANGUAGE_CD on PSOPTIONS; this is the base language. Entries with this language code are found in PSDBFIELDLANG. Base language entries should only be in PSDBFIELD. After you establish that the base language entries in PSDBFIELD are correct, you delete them from PSDBFIELDLANG as follows:
|
SYSLANG-03 |
Foreign Language Records that are found in PSRECDEFNLANG table without related Base Records from PSRECDEFN. |
Run the following SQL:
|
SYSLANG-04 |
Foreign Language Fields that are found in the PSDBFIELDLANG table without related Base Fields from PSDBFIELD. |
Run the following SQL:
|
SYSLANG-05 |
Foreign Language Translate Fields that are found in the XLATTABLE table without related Base Language Translate Fields. |
Either delete the offending entries via SQL, or use PeopleSoft Application Designer to add the equivalent entries in the base language of the database. |
SYSLANG-07 |
Related Language Records Which Are Not Valid Records. |
In PeopleSoft Application Designer, delete the specified Related Language Records. |
SYSLANG-08 |
The displayed Related Language Records are effective-dated but do not have an EFFDT field defined. |
In PeopleSoft Application Designer, add EFFDT to the specified related language table. |
SYSLANG-09 |
The displayed Related Language Records point to another Related Language Record |
In PeopleSoft Application Designer, delete the related language reference for each record that is listed. |
SYSLANG-10 |
The displayed Related Language Records do not contain a LANGUAGE_CD as a key field. |
In PeopleSoft Application Designer, make LANGUAGE_CD field a key on the specified Related Language Tables. |
SYSLANG-11 |
The displayed Related Language Views Have The Wrong Structure Defined. |
In PeopleSoft Application Designer, make the key structures that are on the specified Related Language view identical to the key structure that is on the Base Table/view. |
SYSLANG-12 |
The displayed Related Language Records Have The Wrong Key Structure Defined. |
In Application Designer, make the key structures on the specified Related Language Tables identical to the key structure on the Base Table. |
SYSLANG-13 |
Identify related language records that have more than one base record defined. |
In PeopleSoft Application Designer, remove the related language table link to one of the base records. |
SYSLANG-14 |
Identify related language RECORDS that have the wrong structure defined |
In PeopleSoft Application Designer, make the key structures on the specified Related Language Tables identical to the key structure that is on the Base Table. Also remove any fields, except language_cd, on the related language record that do not exist on the base record. |
SYSLANG-15 |
The displayed Related Language fields are orphaned. (Continues in next row) |
For each row on the related language record there must be a single row on the base table with matching keys. An orphan row is a row of data on the related language record that does not have a corresponding parent row on the base table. Orphan rows must be deleted. Select against the related language table by using the key fields that are listed in the report to find discrepancies. To fix this problem, using the platform's query tools, select against the related language table, by using the fields that are listed in the report, where the values do not match a row that is on the base table. For every row on the report there is an orphan row on the table. Do a SELECT first to ensure you get the same row count as the report, then delete the selected rows. Following is example SQL for a Microsoft SQL Server database: |
SYSLANG-15 |
(Continued) |
For each field name listed:
|
The following table describes the audit queries and resolutions for this area:
Query |
Description |
Resolution |
SQL-01 |
SQL text without a base definition. |
Run the following SQL:
|
SQL-02 |
SQL definitions without SQL text. |
Run the following SQL:
|
SQL-03 |
SQL descriptions without a base definition. |
Run the following SQL:
|
SQL-04 |
SQL descriptions without associated SQL text. |
Run the following SQL:
|
AE SQL without SQL definitions. |
This reveals Application Engine SQL Actions that do not contain any SQL code within them. Open the Application Engine program and complete the entry of the SQL before attempting to run the program. If the empty SQL actions are delivered by PeopleSoft, open an incident with the GSC to report the corrupt AE program. |
|
SQL-06 |
AE SQL that's not referenced. |
This reveals an Application Engine SQL object that is not being referenced by an AE program. This indicates that the AE program is deleted but the associated SQL is not. The orphaned SQL does not cause issues other than consuming disk space. If the orphaned SQL is delivered by PeopleSoft, open an incident with GSC to make sure that it is not a symptom of a larger problem, such as a corrupted AE application. |
Record Views/Dynamic Views without SQL definitions. |
Complete the entry of the record view or dynamic view before attempting to build or create the view. Each record should be opened, and the SQL should be entered as required. |
|
SQL-08 |
View SQL that are not referenced by record or dynamic views. |
Run the following SQL:
|
The following table describes the audit queries and resolutions for this area:
Query |
Description |
Resolution |
TREE-01 |
Tree Structure table contains Level Record name that does not exist in Record Definition table |
Use Tree Manager to open the structure and fix the invalid fields. |
TREE-02 |
Tree Structure table contains Level Page name that does not exist in Page Definition table. |
Use Tree Manager to open the structure and fix the invalid fields. |
TREE-03 |
Tree Structure table contains Node Record name that does not exist in Record Definition table. |
Use Tree Manager to open the structure and fix the invalid fields. |
TREE-04 |
Tree Structure table contains Node Field name that does not exist in RecordField table. |
Use Tree Manager to open the structure and fix the invalid fields. |
TREE-05 |
Tree Structure table contains Node Page name that does not exist in Page Definition table. |
Use Tree Manager to open the structure and fix the invalid fields. |
TREE-06 |
Tree Structure table contains Detail Record name that does not exist in Record Definition table. |
Use Tree Manager to open the structure and fix the invalid fields. |
TREE-07 |
Tree Structure table contains Detail Record name that does not exist in Record Definition table. |
Use Tree Manager to open the structure and fix the invalid fields. |
TREE-08 |
Tree Structure table contains Detail Page name that does not exist in Page Definition table. |
Use Tree Manager to open the structure and fix the invalid fields. |
TREE-09 |
Tree Structure table contains Summary Tree that does not exist in Tree Level table. |
See the following section on Notes for TREE-09. |
TREE-10 |
Tree Structure table contains Level Menu-Menu Bar combination that does not exist. |
Use Tree Manager to open the structure and fix the invalid fields. |
TREE-11 |
Tree Structure table contains Node Menu-Menu Bar combination that does not exist. |
Use Tree Manager to open the structure and fix the invalid fields. |
TREE-12 |
Tree Structure table contains Detail Menu-Menu Bar combination that does not exist. |
Use Tree Manager to open the structure and fix the invalid fields. |
TREE-13 |
Tree Structure table contains Level Menu-Page combination that does not exist. |
Use Tree Manager to open the structure and fix the invalid fields. |
TREE-14 |
Tree Structure table contains Node Menu-Page combination that does not exist. |
Use Tree Manager to open the structure and fix the invalid fields. |
TREE-15 |
Tree Structure table contains Detail Menu-Page combination that does not exist. |
Use Tree Manager to open the structure and fix the invalid fields. |
TREE-16 |
Tree Definition Level count does not match the record count in Tree Level table. |
Set the Count in the Tree Definition table to reflect the actual number of records that are in the PSTREELEVEL table for this tree branch. Note that a problem may occur if some levels are missing and there are still nodes referencing them. In this case, the nodes do not open the tree correctly. The third SELECT checks for the previous situation. If this is the problem, run PSTED, and define the missing levels, save the tree, and then close and reopen it.
|
TREE-17 |
Tree Definition Node count does not match the record count in Tree Node table. |
Set the count in the Tree Definition table to reflect the actual number of the records that are in the PSTREENODE table for this tree branch.
|
TREE-18 |
Tree Definition Leaf count does not match the record count in Tree Leaf table. |
Set the Count in the Tree Definition table to reflect the actual number of records that are in the PSTREELEAF table for this branch.
|
TREE-19 |
Tree Definition contains Structure ID that does not exist in Tree Structure table |
Use Tree Manager to create the structure that you desire by using the name that is reported in this audit. |
TREE-20 |
Tree Definition contains Query Access Group structure with undefined levels and leaves. |
Query trees should have no leaves and no levels. This audit finds exceptions to that case in the definition counts.
|
TREE-21 |
Tree Selector Control contains Tree name that is not defined in Tree Definition table. |
This audit flags records in the PSTREESELCTL tables for records that don't have a corresponding record in the PSTREEDEFN table.
|
TREE-22 |
Tree Definition Level count does not match level use. |
See the section titled “Notes for TREE-22” below. |
TREE-23 |
Tree Level does not exist in Tree Definition table. |
Tree Level records in the PSTREELEVEL table exist for trees that don't exist in the PSTREEDEFN table.
|
TREE-24 |
Tree Node does not exist in Tree Definition table. |
Tree Node records in the PSTREENODE table exist for trees that don't exist in the PSTREEDEFN table.
|
TREE-25 |
Tree Leaf does not exist in Tree Definition table. |
Tree Leaf records in the PSTREELEAF table exist for trees that don't exist in the PSTREEDEFN table.
|
TREE-26 |
Tree Leaf ranges are not valid in Tree Definition table. |
Finds records in the PSTREELEAF table where RANGE_FROM is less than RANGE_TO. Use Tree Manager to open the tree and correct the invalid range values. |
TREE-27 |
Tree Leaf does not have parent Tree Node in Tree Definition table. |
|
TREE-28 |
Tree Branch does not exist in Tree Branch table. |
Refer to the "Tree Audit and Repair Utilities" chapter in the Tree Manager PeopleBook and run the Unbranch Tree Repair Utility so that all branches are removed from the tree. |
TREE-29 |
Tree Branch does not exist in Tree Branch table. |
Refer to the "Tree Audit and Repair Utilities" chapter in the Tree Manager PeopleBook and run the Unbranch Tree Repair Utility so that all branches are removed from the tree. |
TREE-30 |
Tree Branch Node count does not match the record count in Tree Node table. |
See Resolution for Tree-29. |
TREE-31 |
Tree Branch Leaf count does not match the record count in Tree Leaf table |
See Resolution for Tree-29. |
TREE-32 |
Tree Node Num, Node Num End, or Level Num is invalid in Tree Branch table. |
See Resolution for Tree-29. |
TREE-33 |
Identify all orphan access group definitions as well as invalid access group definitions in the access group security. |
Open Query Access Group Tree in Query Access Group Manager and update the identified Access Group so that a record is created in the Access Group Table. |
TREE-34 |
Tree Definition Node Count Does Not Equal 0 for a Branched Tree. |
See Resolution for Tree-29. |
TREE-35 |
Tree Definition Leaf Count Does Not Equal 0 for a Branched Tree. |
See Resolution for Tree-29. |
Lists any Summary Tree Structures that reference a level number that is on a Detail Tree that does not exist in the Tree Level table. Since a Summary Tree is a tree that is built off of the nodes from an existing Detail Tree at a given level, the level that is specified on the Summary Tree Structure must exist in the detail tree's PSTREELEVEL table. In this case, the Summary Tree is not usable from nVision or other reporting tools.
The situation could occur from several possible causes :
Summary Tree is moved or imported into a new database but Detail Tree is not
The levels on the Detail Tree are deleted after the Summary Tree structure is created.
To correct this :
First determine if Detail Tree exists and is in a valid state. This can be done by checking the name of the Detail Tree on the Summary Tree's Structure record; check the Summary Tree tab on the Tree Structure record for the Summary Tree. Note the tree name, setID, and level number.
If Detail Tree exists, check to see if the level number that is defined on the Summary Tree Structure (step 1) exists.
To correct the situation, either add missing level to detail tree or update Summary Tree Structure to refer to a valid detail tree and level number.
This audit flags the Level Use type with the Level Count for conflicts. When the Level Use is N, there should be no levels defined, and when it is not N, levels should be defined. A problem in this audit may also report problems in the TREE-16 audit.
When the Level Use is N and the Level Count is 0 and TREE-16 does not indicate an error on the same tree, do the following:
UPDATE PSTREEDEFN SET USE_LEVELS = 'S' WHERE TREE_NAME = 'tree_name' AND SETID = 'setid' AND EFFDT = 'effdt'
When the Level Use is S and the Level Count is 0 and TREE-16 does not indicate an error on the same tree, do the following (after checking the resolution on TREE-16 to clean up any level records):
UPDATE PSTREEDEFN SET LEVEL_COUNT = 0 WHERE TREE_NAME = 'tree_name' AND SETID = 'setid' AND EFFDT = 'effdt'
When the Level Use is not N and the Level Count is 0 and TREE-16 does not indicate an error on the same tree, do the following (after checking the resolution on TREE-16 to clean up any level records):
UPDATE PSTREEDEFN SET USE_LEVELS = 'N' WHERE TREE_NAME = 'tree_name' AND SETID = 'setid' AND EFFDT = 'effdt' and
UPDATE PSTREENODE SET TREE_LEVEL_NUM = 0 WHERE TREE_NAME = 'tree_name' AND SETID = 'setid' AND EFFDT = 'effdt'
When TREE-23 indicates an error on the same Tree with the Level Count on the PSTREEDEFN = number of PSTREELEVEL records (when the PSTREELEVEL has no levels for this tree, count is 0 for the following):
SELECT COUNT(*) FROM PSTREELEVEL WHERE TREE_NAME = 'tree_name' AND SETID = 'setid' AND EFFDT = 'effdt'
UPDATE PSTREEDEFN SET LEVEL_COUNT = 0 WHERE TREE_NAME = 'tree_name' AND SETID = 'setid' AND EFFDT = 'effdt'
UPDATE PSTREEDEFN SET USE_LEVELS = 'N' WHERE TREE_NAME = 'tree_name' AND SETID = 'setid' AND EFFDT = 'effdt'
UPDATE PSTREENODE SET TREE_LEVEL_NUM = 0 WHERE TREE_NAME = 'tree_name' AND SETID = 'setid' AND EFFDT = 'effdt'
The following table describes the audit queries and resolutions for this area:
Query |
Description |
Resolution |
XLATT-1 |
Translate table Field does not exist in database Field. |
Create the field by using PeopleSoft Application Designer. |
XLATT-3 |
Translate fields do not have associated translate values defined. |
Edit translate field and enter translate value. |
The following table describes the audit queries and resolutions for this area:
Query |
Description |
Resolution |
Manager-XXX Where XXX is the associated three-letter code of the object type. |
Version Check of listed table against PSVERSION. |
Run the Version Application Engine program. |