Idea Summary
The ability to define post page submit processes as steps in a progress bar (like the create app wizard progress bar). When a page is submitted and several processes run, each process can be defined as a progress bar processes (e.g. PAGE_PROCESS.PRG_BAR_PRCS_YN=Y), each process name could then be displayed as label text in the progress bar as each process runs/finishes (e.g. Inserting User … running, Inserting User … complete, Sending Email to New User … running, Sending Email to New User … complete, etc…). A new table for storing progress bar messages and an API would be needed for creating and associating separately-defined progress bar message records. Then developers could call this new API inside their existing PLSQL functions, procedures, and packages (especially around PLSQL with long-running queries) to add more detail inside their Declarative Progress Bars. The number of progress bar processes and progress bar message records (combined) can be used to programmatically determine and display the percent complete as the progress bar runs.
Use Case
When long running processes occur it's good to set the end-user's expectations (let them know how things are going and give them the ability to anticipate how long the overall process will take).
Preferred Solution (Optional)
Mostly described above. One thing not mentioned above is giving the end-user the ability to stop the progress bar at any time during its display (thereby stopping the current running process, running no further processes, rolling back to a previously created savepoint). A savepoint should be created just before the first progress bar process runs (if you add this “allow end-user to stop progress bar” functionality, which, BTW, isn't in the create app wizard progress bar).