Creating and Using Expanded Conditions and Custom Conditions

This chapter discusses how to:

Click to jump to parent topicDefining Expanded Conditions

This section provides an overview of expanded conditions and discusses how to:

Click to jump to top of pageClick to jump to parent topicUnderstanding Expanded Conditions

Expanded conditions consist of entity groups and dynamic conditions. You can use entity groups and dynamic conditions as preconditions or conditions within requirements and requirement groups.

An academic entity group consists of similar items (programs, plans, subplans, or student groups) that are grouped together for more efficient use as a single precondition or condition. For example, an entity group might include all of the programs within a career or multiple plans within a program.

Dynamic conditions are multi-dimensional condition values; for example, academic plan = psych AND cumulative GPA> 3.0. You use dynamic conditions as preconditions or condition lines in requirement groups or requirements.

Here's how to create entity groups:

  1. Enter the effective date, institution, description, and entity group type information for the new academic entity group on the Entity Group page.

  2. Use the Entity Group page to establish the details of individual entity group items that comprise the academic entity group.

Here's how to create dynamic conditions:

  1. Use the Condition Line page to create a condition specification.

    The description, connector type, and condition lines within the condition specification are established on this page.

  2. Create parameters for the condition specification on the Condition Parameters page.

  3. Use the Condition Controls page to record milestones when using the delivered User Programmable Condition of Milestone Check.

Click to jump to top of pageClick to jump to parent topicEnhancing System Performance Using Expanded Conditions

The time it takes to run a degree audit can be greater when you use entity groups and dynamic conditions, so you should use them sparingly.

If you must use entity groups, limit the number of rows within the entity group setup. The number of rows that exist in the entity group determines how many trips the system makes to the database in order to determine a true or false value. Sometimes it is possible to utilize the opposite operator, for instance NOT IN, within a degree requirement to reduce the number of rows the system must evaluate. For example, suppose that a requirement should be evaluated for all of the students except those in one particular student group. Rather than establishing an entity group with all student groups except that one and using an operator of IN, create an entity group with only that particular student group that you want to exclude and use an operator of NOT IN.

Click to jump to top of pageClick to jump to parent topicPages Used to Define Expanded Conditions

Page Name

Object Name

Navigation

Usage

Define an Entity Group

AA_IN_CONDITION1

Academic Advisement, Academic Requirements, Define an Entity Group

Define the academic entity group to be used as a precondition or condition requirement.

Condition Line

RQ_CONDITION

Academic Advisement, Academic Requirements, Define Dynamic Condition

Create a condition specification.

Condition Parameters

RQ_CONDITION_PARM

Academic Advisement, Academic Requirements, Define Dynamic Condition, Condition Parameters

Establish condition parameters.

Condition Controls

RQ_CONDITION_CTRL

Academic Advisement, Academic Requirements, Define Dynamic Condition, Condition Controls

Stipulate condition controls.

Click to jump to top of pageClick to jump to parent topicDefining Academic Entity Groups

Access the Define an Entity Group page.

Academic Entity Group

This arbitrary number is unique for each entity group. It can be used as a precondition or condition requirement.

Effective Date

The latest effective date that you entered for the entity group is used during analysis.

Academic Institution

Select the academic institution. Each entity group is associated with only one academic institution. This field is used for prompting, not analysis.

Description

Enter a description for the entity group that you want to establish. The description displays in the requirement group and requirement summaries.

Short Description and Long Description

Enter descriptions for the entity group that you want to establish. The descriptions are for documentation purposes only.

Entity Group Type

Select the entity group type that indicates the type of items that are contained in the group. This field value determines what information appears in the Entity Group Item Detail group box. Values are:

Plan: Indicates that the entity group contains academic plans.

Program: Indicates that the entity group contains academic programs. This is the default field value.

Student Group: Indicates that the entity group contains student groups.

Sub Plan: Indicates that the entity group contains academic sub-plans.

Entity Group Item Detail

Lists the details (entities) in this academic entity group. An entity group item number is a sequential line number that the system automatically assigns to each item in the entity group. The user can override the number. The system automatically supplies the description.

Click to jump to top of pageClick to jump to parent topicDefining Dynamic Conditions

Access the Condition Line page.

A condition specification (dynamic condition) is a condition that includes connector types, lines, process types, parameters, and controls. Once you create a condition specification, it may be referenced as a precondition or condition requirement by academic and enrollment requirements, as well as academic and enrollment requirement groups. It may also be referenced by another dynamic condition. Using Boolean logic, dynamic conditions can be combined within a condition specification to create complex expanded conditions. For example, you could create two dynamic conditions, and then point to these from a third dynamic condition. Dynamic condition #1 equals level = freshman and cum GPA>=2.0. Dynamic condition #2 equals sophomore and cum GPA>=2.5. Dynamic condition #3 equals table entry = dynamic condition #1 OR table entry = dynamic condition #2.

Condition Specification

This is an arbitrary number that is unique for each condition specification. You can use this condition specification as a precondition or condition requirement.

Effective Date

The latest effective date that you entered for the condition specification is used during analysis.

Description

Enter a description for the condition specification that you want to establish. The description appears on the requirement group and requirement summaries.

Short Description and Long Description

Enter descriptions for the condition specification that you want to establish. These descriptions are used for documentation purposes only.

Connector Type

Select the main connector type for this condition specification. Values are: None, AND, and OR. (None converts to AND.) The connector type indicates the Boolean operator to be used in the equation that contains the condition lines.

Institution

Select the academic institution. Each condition specification is associated with only one academic institution. This field is used for prompting, not analysis.

Condition Line Sequence

This number indicates the order in which the condition lines are evaluated. The condition line sequence number is automatically assigned, but can be overridden by the user.

Condition Process Type

Select a condition process type. Values are:

Standard Condition: Indicates that the condition is one of the delivered, standard conditions. This is the default field value. If you select this field value, three additional fields become available to complete the condition line statement. The first field contains the standard condition code. Select the appropriate field value. Then select an operator. (Operators include < or =, > or =, Equal, Greater, In, Less, Not Equal, and Not In. The system does not use operators if the standard condition is Table Entry.) Finally, select the final field value to complete the statement. For example, the condition line might be Academic Plan Equals Art History (MA). If the condition is Table Entry, then enter a condition specification number. The delivered translate values for the standard condition field are:

None: Indicates no field value.

Academic Level: Indicates the year of study. For example, valid values include freshman and sophomore. This value is evaluated against the student based on whatever As of Date field value is specified at run time.

Academic Plan: Indicates the area of study, for example, a major or minor within the academic program. Some plans are subdivided into sub-plans. Academic Plan and Primary Academic Plan reference the exact same plan when the student has one plan only.

Academic Plans: Indicates that all of a student's plans are part of the equation.

Academic Program: Indicates the program of study to which a student applies and is admitted. Academic Program and Primary Academic Program reference the exact same program when the student has one program only.

Academic Programs: Indicates that all of a student's academic programs are part of the equation.

Academic Standing: Indicates a student's standing at the institution. For example, values might include good standing, probation, and dismissal. You define values in the Academic Standing table. This value is evaluated against the student based on the as of date that you specify at run time.

Academic Sub-Plan: Indicates a further specialization within the academic plan.

Academic Sub-Plans: Indicates that all of a student's sub-plans are part of the equation.

Cumulative Grade Point Average: A student's cumulative grade point average (derived from the students term history cumulative statistics, in conjunction with the processing as of date).

Primary Academic Plan: Indicates a student's primary academic plan. The primary academic plan is designated by the lowest plan sequence number on the Student Plan page. For example, under a program of LAU, a student might have two plans, Psychology and Classics Minor. If Psychology has a plan sequence number of 10 and Classics Minor has a plan sequence number of 20, then Psychology is the primary academic plan. On the Student Plan page, student career number 0 is the primary career.

Important! The primary academic plan is designated by the lowest plan sequence number on the Student Plan page, and the primary academic program is designated by the lowest career sequence number on the Student Program page. However, when a student has multiple programs (containing multiple plans), the primary academic plan is not necessarily the lowest plan sequence number under a given program, but it is that plan with the lowest plan sequence number under the program with the lowest student career number. For example, under a program of Liberal Arts Undergraduate (attached to a student career number of 0), a student has a plan of Psychology with a plan sequence number of 10. The same student has a plan of Art with a plan sequence number of 10 under a program of Fine Arts Undergraduate (attached to a student career number of 1). Both plans have a plan sequence number of 10, but the plan under the program with the lowest career number is the primary plan. In this example, the primary plan is Psychology, which is tied to a student career number of 0 through the Liberal Arts Undergraduate program.

Primary Academic Program: Indicates a student's primary academic program. The primary academic program is the program designated by the lowest career sequence number. On the Student Program page, student career number 0 is the primary career.

Student Group: Indicates a grouping of students. For example, values might include athlete and veteran. You define values in the Student Group table.

Student Groups: Indicates that all of the student groups containing a student are part of the equation.

Table Entry: Indicates a dynamic condition that has been previously created in the Define Dynamic Condition component.

User Programmable Condition: Indicates that the condition is a user programmable condition. If you select User Programmable Condition, the Condition Process Identifier field becomes available. Select the appropriate value that is a unique, arbitrary number for the condition process. Values are: 0001 (Milestone Check), 0002 (Internal Degree Check), and 0003 (External Degree Check). Milestone Check verifies whether a milestone is completed, in progress, or not completed. (The required status of the milestone is recorded on the Condition Controls page.) Internal Degree Check verifies whether a student has received a degree from the home institution. External Degree Check verifies whether a student has received a degree from another institution.

Note. You can create additional condition process identifier field values in the Condition Processes table. Delivered field values are numbered from 1 through 500. Client-added values should be numbered above 500.

Example

Condition Specification 000004 has multiple condition lines.

Click to jump to top of pageClick to jump to parent topicEstablishing Condition Parameters

Access the Condition Parameters page.

Condition parameters are only valid if the value for the Condition Process Type field on the Condition Line page is User Programmable Condition. If the condition process type is Standard Condition, then the Condition Parameters page is not activate.

When the condition process type on the Condition Line page is User Programmable Condition, you can establish parameters or filters for the condition lines on the Condition Parameters page.

Condition Specification

An arbitrary number that is unique for each condition specification. You can use this condition specification as a pre-condition or condition requirement.

Effective Date

Appears by default from the Condition Line page.

Condition Line Sequence

Appears by default from the Condition Line page.

Condition Process Identifier

Appears by default from the Condition Line page. Values are:

Milestone Check: Verifies whether a milestone is complete, in progress, or incomplete. Record the milestone status on the Condition Controls page.

Important! The Milestone Check condition process identifier uses the academic structure as a filter when a milestone is attached to a template. The fields denoting the academic structure (institution, career, program, and plan) are used to narrow the possible values for each milestone. The milestone that you selected on the Condition Controls page must be defined in a milestone template with the same academic structure as that specified on the Condition Parameters page. If a milestone is not attached to a template, define only the academic institution on the Condition Parameters page.

Internal Degree Check: Verifies whether a student has received a degree from the home institution.

External Degree Check: Verifies whether a student has received a degree from another institution. External degrees are recorded within the Education component.

Note. The fields that are available on this page depend on the condition process identifier that you recorded on the Condition Line page.

Condition Line Detail Sequence

Enter the order in which the condition line details are to be evaluated. This number is automatically assigned, but the user can override it.

Academic Institution

If applicable, enter the academic institution. Each condition line detail is associated with only one academic institution.

Academic Career

If applicable, enter the academic career that contains the academic program that is associated with this condition line detail.

Academic Program

If applicable, enter the academic program that is associated with this condition line detail.

Academic Plan

If applicable, enter the academic plan that is associated with this condition line detail.

Degree

Enter the degree that must be obtained to satisfy the condition line.

Click to jump to top of pageClick to jump to parent topicSpecifying Condition Controls

Access the Condition Controls page.

Condition controls are only valid if the value of the Condition Process Type field on the Condition Line page is User Programmable Condition. If the condition process type is Standard Condition, then the Condition Controls page is not activate.

When the condition process type on the Condition Line page is User Programmable Condition, you can establish additional controls in the condition lines on the Condition Controls page. You can record milestone information, as well as the required minimum grade points.

Condition Specification

An arbitrary number that is unique for each condition specification. This condition specification can be used as a precondition or condition requirement.

Effective Date

Appears by default from the Condition Line page.

Institution

If applicable, appears by default from the Condition Line page.

Condition Line Sequence

Appears by default from the Condition Line page.

Condition Line Detail Sequence

Appears by default from the Condition Parameters page.

Note. The fields that are available on this page depend on the condition process identifier that you recorded on the Condition Line page.

Milestone

Enter the milestone that must be achieved to satisfy this condition line detail. For example, a milestone could be an audition, qualifying exam, or thesis. You define milestones in the Milestone table.

Milestone Complete

Select the appropriate milestone. Values are:

None: Indicates that the field is not applicable.

Completed: Indicates that the student must complete this milestone to satisfy the condition line detail.

In Progress: Indicates that the student must be working towards completing the milestone to satisfy the condition line detail.

Not Completed: Indicates that the student must not have completed this milestone to satisfy the condition line detail.

Milestone Level

Enter the minimum level for this milestone. Some examples of milestone levels are honors, undergraduate, or graduate.

Minimum Grade Points

Enter the minimum grade points that are acceptable to complete this condition line detail.

Milestone Title

Enter a descriptive phase as the milestone title. This field does not appear on the audit report. Use this field for documentation purposes only.

Click to jump to parent topicDefining Custom Conditions

This section provides an overview of custom conditions and discusses how to establish custom condition processes.

Click to jump to top of pageClick to jump to parent topicUnderstanding Custom Conditions

A condition table provides a solid structure for condition expansion, including condition processes. You can create custom conditions based on demographic data and existing student record data, as well as criteria such as eligibility to enroll, completion of a specific test, or some unique combination of conditions required for enrollment in a specific course.

Because only certain conditions (like GPA, student group, academic plan, academic program, milestone, and external and internal degree) are delivered with Academic Advisement, you can create additional conditions as needed.

Every institution can create unique conditions to meet specific needs. For example, you might need to establish a minimum age requirement for a wine tasting course by creating a condition based on minimum age and attaching that condition to an enrollment requisite for the wine tasting course. As another example, a custom condition might verify that a student is not only in a program, but eligible to enroll in that program.

Your programmer can write a new Cobol program to set up customized processes using this table. The person who writes the program should be experienced in how PeopleSoft software handles Cobol. Pass parameters entering the custom program using the copybook SRCUCOND. (The bind and select variables in the stored statements must also match, otherwise the program stops running, usually with a remote call error.) The only values that you pass to the custom program are condition status, condition status message, condition code, condition effective date, and condition line sequence number. The custom program should only return the condition truth value, either T or F. Here is the actual Cobol code from SRCUCOND.cbl:

02 COND-STATUS PIC X(01). 02 COND-STATUS-MESSAGE PIC X(50). 02 COND-STATUS-SPEC PIC X(06). 02 EFFDT PIC X(10). 02 COND-LINE-SEQ PIC S9(04). 02 COND-TRUTH-VALUE PIC X(01). 88 COND-TRUE VALUE 'T' 88 COND-FALSE VALUE 'F'

If you need any other values, they must be linked to the custom program as an external copybook. Here is the code from the custom program SRPCU001.cbl that shows how the ID was passed into the custom program:

01 CADAE EXTERNAL. COPY SRCCADAE. LINKAGE SECTION 01 SQLRT. COPY PTCSQLRT. 01 CUSR1. COPY SRCUCOND. PROCEDURE DIVISION USING SQLRT CUSR1.

Depending on the condition that you want to create, you may want to copy the external array SRCCACDD into the working storage area of the new condition program. If you copy the external array SRCCACDD into the working storage area, it should look like this:

01 CACDD EXTERNAL. COPY SRCCACDD.

Note. The linkage section should look like that of the three demo programs: SRPCUSR1, SRPCUSR2, and SRPCUSR3.

The linkage section and procedure division should look like this:

LINKAGE SECTION 01 SQLRT. COPY PTCSQLRT. 01 CUSR1. COPY SRCUCOND. PROCEDURE DIVISION USING SQLRT, CUSR1.

Note. Do not copy external arrays other than SRCCACDD into working storage, because other parameters may be modified in future releases. However, information in array SRCCACDD is to be supported in future releases.

Here's how to create custom conditions:

  1. With the assistance of a developer, create a customized process.

  2. Create a new condition process identifier using the Condition Processes page.

    Enter the effective date, status, descriptions, logical process type, logical name, process key format, and requirement key count (if appropriate) for the condition process identifier.

  3. Use this condition process identifier as a user programmable condition on the Condition Line page.

    Create condition lines within the condition specification.

Click to jump to top of pageClick to jump to parent topicPage Used to Set Up Custom Conditions

Page Name

Object Name

Navigation

Usage

Define Condition Processes

CONDITION_PROC_TBL

Academic Advisement, Academic Requirements, Define Condition Processes

Establish custom condition processes.

Click to jump to top of pageClick to jump to parent topicDefining Custom Condition Processes

Access the Define Condition Processes page.

To create a custom condition, establish a new condition process identifier that you use to create a new condition specification. Once you create a condition specification, it may be referenced as a precondition or condition requirement by academic and enrollment requirements, as well as academic and enrollment requirement groups.

Condition Process Identifier

An arbitrary number that is unique for each condition process identifier. You can use this condition process identifier as a precondition or condition requirement.

Note. Three condition process identifiers are delivered with the system. These are 0001 Milestone Check, 0002 Internal Degree Check, and 0003 External Degree Check. Delivered field values are numbered from 1 through 500. Added values should be numbered above 500.

Effective Date

The latest effective date that you entered for the condition process identifier is used during analysis.

Description and Short Description

Enter descriptions for the condition process identifier that you want to establish. None of these values appear on the audit reports. These fields are used for documentation purposes only.

Logical Process Type

Select the process. Currently, the only field value available is Cobol Process.

Logical Name

Enter the logical name of the program that is called for this specific condition process identifier.

Process Key Format

Select the process key format that controls what fields are available on the Condition Parameters and Condition Controls pages. In addition, this field value also determines which logical name is called. Values are:

TYP1 Program Key: Provides the keys (values) needed to run the program. This is the default value.

TYP2 Milestone Key: Provides the keys (values) needed to define and validate a milestone.

TYP3 Internal Degree: Provides the keys (values) needed to define an internal degree as required.

TYP4 External Degree: Provides the keys (values) needed to define an external degree as required.

Ignore Key Count

Select if the number of key values (or rows) on the Condition Parameters page is irrelevant. The Required Key Count field becomes unavailable for edit. Clear this check box to make the Required Key Count field available and specify how many key values must be entered on the Condition Parameters page.

Required Key Count

Enter the number of key values (or rows) that must be entered on the Condition parameters page. If you do not enter a key count value, then no entries are permitted on the Condition Parameters page. For example, suppose that the required key count is 4, then there must be four rows on the corresponding Condition Parameters page.

Example

Use the delivered condition process identifier, 0001 (milestone check), to require a milestone as defined in the Define Dynamic Condition component.

Use this condition process identifier as a user programmable condition on the Condition Line page.

You can reference the condition specification 004 (containing condition process identifier 0001).

The number of rows on this page must match the key count of the condition process that you referenced, if a key count is required.

You can enter specific condition data that references each row (or key).