The server will continue to compile the report while the user navigates away.
No.
It has nowhere to land. The browser has a 'new' page with no pending requests; it has no knowledge of any prior activity (HTML is stateless).
No. Perhaps you could rig an onBeforeUnload event handler that would warn the user and allow them to stay on the page. But some browsers ignore any event handlers on that event, so it would be hard to make it reliable.
Your best bet is probably an interface change. Put a notice on the page that navigating away will cancel any reports they're waiting for. And give the users an easy way to know their report is being prepared, like an html loading gif.