The problem is the 200 response is received before all the async requests are fulfilled. Apart from rewriting the report page entirely in ColdFusion, any ideas as to how to accomplish this? That is, wait for all the async requests to be fulfilled prior to generating a PDF to be saved and emailed.
There is a contradiction in terms in what you require. Waiting for all requests to be fulfilled prior to generating a PDF implies a synchronous request, not an asynchronous one.