Introduction
The Quote Expiration Scheduler automates the process of expiring quotes once they reach their configured expiration date.
A new configuration group called Quote Expiration Settings has been added under Global Settings, allowing administrators to control how quote expiration is handled.
Using this feature, administrators can:
- Enable or disable automated quote expiration.
- Configure when the expiration scheduler runs using a cron expression.
- Allow the system to automatically update expired quotes through a background scheduler job.
This automation helps ensure that outdated quotes are not displayed as active in the system.
Global Settings Enhancements
Summary of New System-Defined Attributes
Three new attributes have been introduced under the Quote Expiration Settings group.
1. Enable Quote Expiration Scheduler
- Type: Yes/No Toggle
- Default Value: Yes
This setting controls whether the system automatically expires quotes when they reach their expiration date.
- Yes: The scheduler runs automatically and expires eligible quotes.
- No: The scheduler is disabled and expired quotes remain unchanged.
2. Scheduler Frequency – Quote Expiration
- Type: Text Field
- Supported Value: Recurring
This attribute defines how frequently the scheduler runs. Currently, only recurring schedules are supported.
3. Cron Expression – Quote Expiration Scheduler
- Type: Text Field
This attribute determines the exact schedule for executing the quote expiration job.
Default Cron Expression:
0 0 * * *
This means the scheduler runs once daily at midnight.
Only recurring cron expressions are supported.
Attribute Group Configuration
A new system-defined attribute group named Quote Expiration Settings has been introduced under Global Settings. This group is used to manage the configuration of the quote expiration scheduler.
The group has the following properties:
- Group Label: Quote Expiration Settings
- Entity Type: Global Settings
It includes the following attributes used for scheduler configuration:
- Enable Quote Expiration Scheduler
- Scheduler Frequency – Quote Expiration
- Cron Expression – Quote Expiration Scheduler
Settings Behavior
Enable Quote Expiration Scheduler
If set to No
- The scheduler does not run.
- Quotes that pass their expiration date remain unchanged.
- Outdated quotes may still appear as active.
If set to Yes
- The scheduler runs automatically.
- Quotes that pass their expiration date are updated to EXPIRED.
Scheduler Frequency – Quote Expiration
This setting defines how often the scheduler executes.
- Only Recurring schedules are currently supported.
Cron Expression – Quote Expiration Scheduler
This setting determines the exact execution timing for the scheduler.
Default Value:
0 0 * * *
The scheduler runs daily at midnight.
Only recurring cron expressions are supported.
Job Execution Workflow
During each scheduled execution, the system performs the following steps:
- The scheduler reads the configured cron expression.
- The system retrieves quotes that are eligible for expiration.
- The system compares the current system date and time with each quote’s expiration date.
- Quotes are marked EXPIREDwhen the following conditions are met:
- The expiration date is earlier than the current system date/time.
- The quote status is not Approved.
- The quote status is not Canceled.
Quote Update Logging
When a quote is automatically expired, the update is recorded in the Manage Quote screen.
The log entry includes:
- Timestamp
- Updated By: Quote Expiration – Scheduler
- Status Change: Old Status → EXPIRED
This provides visibility into automated updates performed by the scheduler.
Important Notes
- The scheduler uses store-level expiration configuration.
- The system ensures data integrity during quote status updates.
- Automated expiration prevents outdated quotes from remaining active in the system.