Another option is to split your job into multiple smaller jobs and let them execute in the Process Queue. https://appstore.home.mendix.com/link/app/393/
Now, all your subjobs run in dedicated transactions. On a page you can use microflow timer or a self refreshing template grid to show the updated information from your progress helper object.
Have you checked out this widget: https://appstore.home.mendix.com/link/app/2389/
If this does not meet the requirements you can also use the microflow timer widget(https://appstore.home.mendix.com/link/app/27/) to set a timer on your helper entity dataview in order to refresh the entity with a given interval. In addition it is possible you would have to chop up the process microflow in different transaction in order for you to show the information you want.
You could split the process in smaller atomic steps and queue them, maybe with the process queue from the App Store. Each of the processes are own closed Mx transactions. So thta means, after your process is done, it will committ to the database and the data is available outside of the context of the Mx transactin. With a wrapper object you could track the processes.