Community Server Reporting

As I mentioned this weekend our interns have been working on a reporting framework for Community Server. The reporting application requires a separate database as it reads from an existing CS database (incrementally) and then re-organizes the data into a data structure designed for reporting.

Some details and screenshots below:

  • Over 50 reports covering all aspects of Community Server (Blogs, Forums, Photos, Files, and more)
  • Displays many reports using interactive Flash graphs
  • Includes many “Top <x>” style reports, as well as the ability to drill-down and see the full details of the report
  • Allows users to export any report/data into CSV/Excel format
  • Allows users to filter data based on given date ranges
  • Simple tasks to handle migrating and crunching of Community Server data
  • Migration tasks can be easily segregated by application type and function
  • Data can be migrated both incrementally or completely
  • Extendable, flexible reporting framework! Completely customizable
  • Ability to create new reports either programmatically via the API, or declaratively in configuration files
  • Customizable report layouts allow users to easily change the way reports are displayed or shown
  • Full web-based management of reports (adding, editing, disabling/enabling, etc…)

Chart from Blog Popularity Report (weblogs.asp.net for past 3 months)

 

Report from Blog Popularity (weblogs.asp.net for past 3 months):

Below are some of the reports that are supported:

Blogs:

  • Average Posts Per Blog
  • Blog Comments
  • Blogging Frequency per Blog
  • Blog Posts Created
  • Blog Views
  • Highest Rated Blogs
  • Most Popular Blogs
  • Posts Per Category
  • Rss Subscriptions Per Blog
  • Total Posts

Forums:

  • Most Replied To Topics
  • New Users
  • New Forum Posts
  • Average Post to User Ratio
  • Posts by Language / Country
  • Most Active Forums
  • Average Post Frequency
  • Active and Inactive Users
  • Inactive Threads
  • Moderation Statistics

The framework also make it really easy to add new reports either as stand-alone assemblies (for more advanced reports) or expressed through simple XML syntax that can just be plugged in.