I think part of the issue is that you're trying to use the underlying data of the queues, it sounds like. The intention of each queue item's metadata seems to be to provide a predictable set of fields from which the queue data can be aggregated. If you're wanting to display the underlying data in reporting, I don't really see a way to do that without a custom report for every Process Automation because they each require different fields. That doesn't mean you can't build some kind of dynamic reporting around it, but I would imagine for business users to get more out of it than a simple list of items that were worked, you'd need either something very complex or standards/conventions followed strictly for the naming of the fields inside each queue item.
If you're just looking to report basic details about the items and their completion statuses, failures, exception information, etc., then you don't really need the underlying data for that. I can see how having that data could be useful, but maybe it should be a drill-down inside your reporting views rather than trying to roll up the underlying data as well.
Could you give an example of what kind of views you're looking to show?
We're also coming up with a reporting feature in a web application for business users (and maybe technical too) to monitor the progress of the bots. The way we're doing it is to send data to an API endpoint (which then goes to a SQL database) periodically throughout the running of every session. The bot reports when it starts a process, when it gets an item from the queue, when it marks an item as an exception, when it marks an item as completion, and when it is ending the process (completion and termination). This allows us to pass whatever extra data may be needed along with the message of what is occurring at that moment. If you build a reusable set of actions, you can control what fields are passed in and when. I personally think the best way to try implementing reporting off of automations is a method that requires as little impact on the developers as possible. There's no way around it completely, but I would certainly not rely on consistent field names (for example) in underlying queue data.
------------------------------
Dave Morris
3Ci @ Southern Company
Atlanta, GA
------------------------------
Dave Morris, 3Ci at Southern Company