Hello everyone,
We are currently looking into supporting APEX IR/IG report subscriptions for our APEX portals which are connected to EBS. The portals run within the EBS database in a separate schema. Users access APEX application through SSO directly from within EBS. We have a custom sentry function in place which makes sure the EBS session is still valid.
With APEX IR/IG report subscriptions we run into the issue that the subscription works for data which is available without an active EBS session (e.g. custom tables), however, when we want to access EBS data like oe_order_headers, we would need to do this through an EBS session to ensure we only receive the data we are allowed to have access to.
This leads to the problem that the IR/IG renders the report perfectly fine when the user accesses the application, however, the subscription is unable to view the data as it requires an EBS session to access.
Is there a way where we can run our sentry function when APEX runs the report subscription in the background to ensure an EBS session is available? APEX itself is able to retreive the session state of the session the subscription originates from. Therefore we have information like the EBS user id, responsibility id, and application id and would be able to initialize the EBS context.
A workaround could be to change the IR/IG from SQL statement to PL/SQL function returning SQL and innitialize the context there. However, we couldn't verify if that would work. The best approach would be to have some kind of hook in place before a subscription is being executed. Is there something like this available? The documentation in that area doesn't give much information.
Regards,
Simon