My Oracle Support Banner

E-PRCS: Primary Note for Process Scheduler Recurrences (Doc ID 1266699.1)

Last updated on JUNE 03, 2021

Applies to:

PeopleSoft Enterprise PT PeopleTools - Version 8.44 and later
Information in this document applies to any platform.

Details

Process Scheduler Recurrences Primary Note
 

This document provides an overview on the most common issues related to Recurrence definitions on PeopleTools 8.4x releases.

An additional one will be created for PeopleTools 8.50.

<>

Known Issues

1. Recurrence picks up last date instead of first date
2. Cannot remove a Recurrence definition "End Date" once saved
3. Process Scheduler Weekly M-F Recurrence still runs on Saturday and Sunday
4. Process Scheduler monthly recurrence creates duplicates
5. Daily/Weekly recurrence not respected
6. Recurrence process queues up twice as many the next day
7. Unable to clear "End Request Date" and "Time" in "Recurrence Definition" page
8. Recurring Processes using recurrence "Start Request" date will start recurring from the start date defined in the recurrence and tries to catch up to the current date
9. Recurrence value not getting populated on the Process Detail page

Specific To
-----------
Enterprise, PeopleTools 8.48 +

Symptoms
---------
Once a recurrence definition has been configured to use the "Run on Specific dates" option, at submission time, the processes are not queued for the first date.
Instead, the processes are queued for the last date in the sequence.

Solution
---------
This was reported under Incident ID 1631169000 and was fixed in PeopleTools 8.50.

Workaround
----------
Once the processes are queued for the last date in the sequence, modify the RUNDTTM field based on the newly assigned process instance number in the following Scheduler tables:
PSPRCSRQST and PSPRCSQUE by using the following SQL statements.

UPDATE PSPRCSRQST SET RUNDTTM='first date/time in the sequence' WHERE PRCSINSTANCE='newly assigned process #'
UPDATE PSPRCSQUE SET RUNDTTM='first date/time in the sequence' WHERE PRCSINSTANCE='newly assigned process #'

Once the RUNDTTM has been updated to reflect the initial run's start time/date, subsequent iterations using the affected recurrence will proceed as expected according to the time/dates specified.

Specific To
-----------
Enterprise, PeopleTools 8.4x

Symptoms
--------
When editing a Recurrence definition and trying to remove a previously saved value from the "End Date" field, the value will appear to clear and save as expected when saving the Recurrence definition. However, when revisiting the same Recurrence definition, the previously deleted "End Date" value is still there indicating the change did not take effect.

Cause
------
This behavior appears to be due to the SaveEdit PeopleCode logic not accounting for this scenario.

Solution
--------
This is no longer an issue in PeopleTools release 8.50 but will be seen in releases prior to 8.50.

Workaround
----------
A possible workaround (until upgrading to PeopleTools 8.50) would be to add the missing logic to the Component Record Peoplecode PRCSRECURDEFN.PRCSRECUR.SaveEdit PeopleCode

(Add the following code after the current code)

If None(PRCSRECURWRK.RECUR_END_DT) Then
PRCSRECURWRK.RECUR_END_TM.Value = "";
PRCSRECUR.ENDDTTM.Value = "";
End-If;

(Current code)

If All(PRCSRECURWRK.RECUR_END_DT) Then
If None(PRCSRECURWRK.RECUR_END_TM) Then
PRCSRECURWRK.RECUR_END_TM = TimeValue("12:00:00 AM");
End-If;
PRCSRECUR.ENDDTTM = DateTime6(Year(PRCSRECURWRK.RECUR_END_DT), Month(PRCSRECURWRK.RECUR_END_DT), Day(PRCSRECURWRK.RECUR_END_DT), Hour(PRCSRECURWRK.RECUR_END_TM), Minute(PRCSRECURWRK.RECUR_END_TM), Second(PRCSRECURWRK.RECUR_END_TM));
End-If;


(Here is new code with changes)

If All(PRCSRECURWRK.RECUR_END_DT) Then
If None(PRCSRECURWRK.RECUR_END_TM) Then
PRCSRECURWRK.RECUR_END_TM = TimeValue("12:00:00 AM");
End-If;
PRCSRECUR.ENDDTTM = DateTime6(Year(PRCSRECURWRK.RECUR_END_DT), Month(PRCSRECURWRK.RECUR_END_DT), Day(PRCSRECURWRK.RECUR_END_DT), Hour(PRCSRECURWRK.RECUR_END_TM), Minute(PRCSRECURWRK.RECUR_END_TM), Second(PRCSRECURWRK.RECUR_END_TM));
End-If;

If None(PRCSRECURWRK.RECUR_END_DT) Then
PRCSRECURWRK.RECUR_END_TM.Value = "";
PRCSRECUR.ENDDTTM.Value = "";
End-If;

Specific To
-----------
Enterprise, prior PeopleTools 8.49.05 releases

Symptoms
--------
Reports run on Saturday and Sunday for a weekday Recurrence.

Cause
-----
The recurrence definition, which was defined to start at 04:00am and repeat every 8 hours for the next 99999 hours does not stop up until the arithmetic logic for 99999 / 8 = 12499 times is completed.

Solution
--------
This is a known issue reported with Development team and a fix has been included in PeopleTools 8.49.05.
Incident ID: 1470760000

This is working as designed.

It checks the days pattern only for the first time when the process starts, i.e if it is set to run on Monday it will check if Monday is checked in the Recurrence pattern.

Then the arithmetic logic takes precedence, i.e the arithmetic logic is initiated and completed (99999 / 8 = 12499 times) before the code verifies the days to run values.

The Recurrence will run aim to complete the arithmetic logic first even if it covers the days of the week which were excluded in the Recurrence Definition.

Note:
The first time the Recurrence starts the process it checks the Recurrence pattern and then checks the arithmetic logic for the repeat values.
It will complete the repeat (12499 times) and then when it starts the next process it will check the Recurrence pattern.

For example:
The process is set to start on Friday at 10 am and set to run only on week days (Exclude Saturday and Sunday) and the repeat is set for every 4 hrs for the next 48 hrs.
When the process starts on Friday, it will check the Recurrence pattern and since Friday is a weekday it will start running.
The next step it checks repeat and completes the repeat sequence, where it is set to run for next 48hrs so it will run on Saturday and Sunday.
Once the repeat is completed it will check the Recurrence pattern before starting the next process.

Specific To
-----------
Enterprise, prior PeopleTools 8.46

Symptoms
--------
If a process has a monthly recurrence associated to it, the process is submitted twice at the same date and same time for first month it runs, it runs properly the next month.

Solution
---------
Incident ID 1101792000 was created for this issue. It was fixed in PeopleTools 8.45.11 and PeopleTools 8.46.

Specific To
-----------
Enterprise, PeopleTools 8.46, 8.47

Symptoms
--------
With the addition of parameter "Do not schedule any processes missed from the recurrence pattern." and omitting Wednesdays from the recurrence, the "Weekly Recurrence" ignores the specified days and runs for all days.

For example:
Daily and Weekly Recurrence definitions running other than the specified days:
1) A recurrence configured to run Daily, Every Weekday - With Monday-Friday only selected, continues to schedule the process on Saturday and Sunday, even though they are greyed out and cannot be checked.

2) A recurrence configured to run weekly, with Monday-Friday only selected, continues to schedule the process on Saturday and Sunday, even though they are not checked.

Solution
---------
This issue was reported in PeopleTools 8.45.17 under Incident ID 1470760000 and it was fixed in PeopleTools 8.49.05.


Workaround
----------
Add each Saturday and Sunday that falls within the recurrence schedule to the Recurrence Exception list.

You can find more information on Setting Recurrence Exception on the following chapter from PeopleBooks:
Home > PeopleBooks > Enterprise PeopleTools 8.45 PeopleBook: PeopleSoft Process Scheduler > Defining PeopleSoft Process Scheduler Support Information > Setting Recurrence Exceptions.

Specific To
-----------
Enterprise, PeopleTools 8.4x

Symptoms
--------
When setting up a recurrence to run once a day every day, the first day the process queues up once and runs correctly.

After the first run the process queues up twice for the next day, and it keeps doubling every day.

Solution
--------
This problem is caused by the tables PSPSPRCSRQST and PSPRCSQUE being out of sync.
Truncate the tables to clear them and then run the recurrence.

Specific To
-----------
Enterprise, Prior PeopleTools 8.50 releases

Symptoms
--------
Navigation:
1. PeopleTools > Process Scheduler > Recurrences
2. Select a Recurrence Definition
3. "Date" and "Time" values on "Recurrence Definition" tab
After clearing the "Date" and "Time" values, PeopleSoft re-populates the fields.

Cause
-----
PeopleSoft failed to clear the ENDDTTM field in the database.

Solution
--------
This is a known issue reported with Development team and a fix has been included in PeopleTools 8.450.
Incident ID: 1879626000

Workaround
----------
1. Avoid creating Recurrence Definitions with values in the "End Request" - "Date" and "Time" fields.
2. Another option is to enter a date and time far in the future. A year as far as 2100 may be entered.

Specific To
-----------
Enterprise, PeopleTools 8.48, 8.49

Symptoms
--------
Recurring processes are using the Recurrence definition's 'Start Request' date whenever a process is scheduled through the process definition record. The process will start recurring from the start date defined in the recurrence and it will try to catch up to the current date.

This behavior occurs even when the "Do not schedule any processes missed from the recurrence pattern" value is selected in the Recurrence definition. In addition, the first queued process from the recurrence sequence always has a start date/time equal to the Recurrence definition's start date/time and not the start date/time specified at submission time.

Solution
--------
This issue was tracked in Incident ID: 1671449000 -"Recurring Processes using recurrence 'Start Request' date when scheduling new process" and was fixed in PeopleTools 8.49.19 and PeopleTools 8.50.

Workaround
----------
Set the recurrence while scheduling the process at the System Process Requests page.

For example: Use the Process Scheduler Request page for scheduling a process with a recurrence rather then attaching a recurrence to a process definition.

Symptoms
--------
When a user selects a recurrence while submitting a process, the recurrence value is not populated on the Process Detail page.

As a result, the next recurring process will never become Queued on the Process Monitor.

The Primary Permission list for the affected user has Recurrence selection enabled.

Solution
--------
This is a known issue reported with Development team.
Incident ID: 646258000

Workaround
----------
Turn on the "Override Server Parameter" check box on the Process Profile Permission list.

Then run another process and set it to a recurrence definition.
This time the recurrence name will be populated on the Process Details page.

<>

FAQ

1. How to allow a user to select a run recurrence definition in the Process Scheduler Request dialog box?
2. How to stop a recurrence in PeopleTools 8.4x and 8.1x?
3. How to remove a Recurrence from the Process Scheduler?

In order for users to be able to select a recurrence definition in the Process Scheduler Request dialog box, "Enable Recurrence Selection" has to be selected under Process Profile Permission attached to this user.

See PeopleBooks:
Home > PeopleBooks > Enterprise PeopleTools 8.4x PeopleBook: PeopleSoft Process Scheduler > Setting Up PeopleSoft Process Scheduler Security > Setting Up PeopleSoft Process Scheduler Privileges and Profiles > Updating a Process Profile

Enable Recurrence Selection
Select to allow a user to select a run recurrence definition in the Process Scheduler Request dialog box.
If this is cleared, the user cannot select a process to recur.

To assign a process profile to a user ID:

1. Select PeopleTools, Security, User Profiles, User Profiles to open the profile for a user ID.
2. Select the user ID.
3. Select the General page.
4. Enter the process profile for this user ID.
5. Click the Save button to save your changes.

To stop a process from recurring, you can either cancel the last one before the next one is scheduled, (QUEUED), or run the following sql statements:

UPDATE PSPRCSRQST set INITIATEDNEXT = '1' where RECURNAME = 'your recurrence name'
UPDATE PSPRCSQUE set INITIATEDNEXT = '1' where RECURNAME = 'your recurrence name'

If a process needs to be rescheduled with the same recurrence definition, then it needs to be canceled and resubmitted to the Process Scheduler.

Unfortunately, there is no delivered mechanism for online removal of these definitions.

This is because Recurrences, (and other definition types), are referenced in many other locations throughout the system. If a Recurrence, (or other), definition were to be removed, other data referring to the definition would corrupt and cause system instability. For this reason, removing such definitions is not recommended and no online method is provided.
For this reason, removing such definitions is not recommended and no online method is provided.

That being said, one can configure an online SQL session trace in order to trace those tables that are modified during the creation of a Recurrence, (or other), definition for your specific PeopleTools release if you choose to delete using SQL directly. In addition, some definition types can be removed via Application Designer.

 

KEYWORDS:

PROCESS SCHEDULER, SCHEDULER, RECURRENCE

Actions

 

Contacts

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Details
Actions
Contacts
References

My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.