Campaign Standard: Filtering Global Reports on Campaigns labels is bringing different results for different users
This article describes reasons why users with different roles were seeing different numbers when filtering Global Reports using the campaigns’ names as filter.
Description description
One of our ACS customers reported that for some time their business users from certain organisational units were not able to see any results in Global Reports when filtering by campaigns’ names. Data was visible and correct in the dynamic reports of each particular delivery, but not in the Global Reports. However admins were still able to see the correct data in the Global Reports. Business users were not able to see data even for campaigns and deliveries they created themselves, which excluded issues with access rights restricted to specific ORG units.
Resolution resolution
The reason for this behaviour is related to different queries that the product is making when admins and non-admins view global reports.
When an admin user views the report by Campaign dimension, ACS sends a request to the Dynamic reporting with one field only, this to filter out deliveries created for report sharing.
When a non-admin user views the report by Campaign dimension, ACS collects all the delivery ids which the user has permission to see.
All of these deliveries are classified in fields (deliveryId, transactionalTemplateId or recurringDelId) and are added to the request as filters along with the campaign ids. So, the reporting cluster responds with the metrics of the deliveries allowed for the user only and grouped by campaign.
ACS is limiting the query to retrieve these delivery ids by 10,000. So, anything beyond that isn’t sent in the request to the reporting cluster.
In the case of our customer they had more than 10,000 deliveries in their database.
The solution was to delete deliveries older than 2 years from the database to stay within the 10,000 limit.