Release Date: 15. January
Release Summary
- Fixed an issue where the Job Queue created all pending subscription invoices and then immediately restarted, ignoring the configured Next Run Date Formula and No. of Minutes between Runs settings
- Removed a debug dialog that was unintentionally left in the Create Subscription Invoice report, which prompted users with the Next Invoicing Date during processing.
- Improved reliability of the Job Queue execution by always reading fresh configuration data from the database.
- Added error resilience to the license check so the app no longer fails if Abakion App Manager Core encounters an error.
- Overall: critical stability fixes for the Job Queue feature introduced in the previous release.
Bug Fixes
Job Queue
Fixed Job Queue immediately restarting after each run, ignoring the configured schedule
After the Job Queue completed an invoice creation run, it would immediately restart and process again instead of waiting for the next scheduled execution time. This caused all pending subscription invoices to be created in a single burst, ignoring the Next Run Date Formula and No. of Minutes between Runs settings.
The root cause was in the bi-directional sync between the Subscription Job Queue Setup page and the Business Central Job Queue Entry. When the Job Queue Entry was updated after a run (e.g., Business Central recalculating the next Earliest Start Date/Time), the sync handler was calling SyncJobQueueEntry — which syncs FROM Setup TO the Job Queue Entry. This overwrote the newly calculated next run time with the original configuration values, effectively resetting the schedule and causing an immediate restart.
With this fix:
- The sync handler now only synchronizes FROM the Job Queue Entry TO the Setup table (one-way sync for run-time changes).
- The Earliest Start Date/Time calculated by Business Central after each run is preserved and no longer overwritten.
- The
UpdateRunIntervalFromJobQueueprocedure is now accessible to the sync handler, and save responsibility has been moved to the caller to prevent duplicate database writes. - The Job Queue now correctly respects the configured Next Run Date Formula, No. of Minutes between Runs, and weekday settings between runs.
Fixed Job Queue execution potentially using stale configuration data.
The Job Queue codeunit previously used GetRecordOnce() to read the setup configuration, which caches the record after the first read. If the Job Queue session persisted across multiple runs, it could use outdated settings from a previous execution.
With this fix, the Job Queue now performs a direct Get('') on every execution to ensure it always reads the latest configuration from the database.
Fixed missing save when updating an existing Job Queue Entry from the Setup page.
When clicking Create/Update Job Queue Parameters to update an existing Job Queue Entry, changes to the setup record (such as the run interval sync) were not always persisted to the database. A missing Modify(true) call has been added to ensure all configuration changes are saved correctly.
Create Subscription Invoice
Removed a debug dialog that interrupted the invoice creation process.
The Create Subscription Invoice report contained a leftover development Confirm dialog that displayed the Next Invoicing Date during processing. This caused the invoice creation to pause and wait for user interaction on each subscription line iteration, which also blocked automated execution via the Job Queue.
This debug dialog has been removed. The report now processes all subscription lines without interruption.
License Check
Improved error resilience when checking the app license status.
The license validation against Abakion App Manager Core is now wrapped in a TryFunction. Previously, if App Manager Core encountered an internal error during the license check, it would propagate as an unhandled error and could prevent the app from functioning. The app now gracefully handles such errors and continues to operate normally.
Improvements
Navigation
Reordered the navigation menu to prioritize daily tasks.
The navigation order has been updated to: Create Subscription Invoice → Subscription Job Queue Setup → Subscription Setup → Subscription List. This places the most common operational actions first, followed by administration pages.