To start, please forgive the length of this question, and that it goes into potentially more general concepts than hard coding, but we're trying to crack the black box here.
We are currently working on a Sitecore Analytics effort and are looking to expand our understanding of what we can do with Analytics, both within the Sitecore UI and outside of it.
One example that we're looking at relates to downloads and users. What we have so far is setting up a contact card to track logged-in users, which makes them show up in the Experience Profile with their name, email, etc. Within that, you can see what that user has done on the site. We also have the dashboards in Experience Analytics, which includes a dashboard for asset downloads, but appears to be solely related to the asset itself. The customer is looking to generate reports off the data, but is looking for things such as a chart that would show an asset and what users downloaded it, as one possibility. This is just one potential example.
In doing some research on the topic, I've gone over the Experience Analytics chapter of "Practical Sitecore 8 Configuration and Strategy." This goes into general information about analytics, but doesn't get deep into the coding world, such as how to create analytics reports, facets, etc. I've found some related links that speak more to this, shown at the end for reference material. There is also some sample code in the “Sitecore Cookbook for Developers” book around creating custom dimensions and reports, but it’s a little more abstract and the main example (using browser versions) is shown in one of the links as well.
In addition, the “Practical Sitecore 8” book does mention using tools like Excel's PowerView or Office 365's PowerBI to connect to the Sitecore SQL reporting database directly to do some custom reporting without involving a Sitecore developer necessarily; these methods were a little more fleshed out in the book for steps on how to get started.
My thinking is the Excel/Office tools may provide the greatest flexibility with the least amount of development work, and would probably be the avenue I'd pursue, and then add in custom code to capture more data or refine what was already available. I feel like, when looking at what Sitecore offers from 10,000 feet via the built-in reports, that the various data points should be connected somewhere and are able to be aggregated, but perhaps just not in the out-of-the-box tools provided. Excel/Office tools also have the benefit of being more easily manipulated by the client, so if the data points are there, they can generate the reports needed.
Does anyone have extended experience with Sitecore Analytics, the creation of custom reports/facets/etc, and/or using the Excel/Office tools that could provide some guidance on understanding what's possible (and not possible) with what Sitecore collects? Reference materials and/or sample code that we could review would be great.
References:
- "Practical Sitecore 8 Configuration and Strategy” by Phil Wicklund
- “Sitecore Cookbook for Developers” by Yogesh Patel
- https://jonathanrobbins.co.uk/2015/12/08/how-to-extend-sitecore-experience-database/
- http://sitecore-community.github.io/docs/xDB/reports/extending-experience-analytics-reports/
- http://thinking.edynamic.net/sitecore-analytics-101-a-complete-list-of-the-sitecore-reports-you-cannot-ignore
- http://sitecorepromenade.blogspot.com/2015/08/sitecore-8-tracking-media-download.html