New Community Website

Ordinarily, you'd be at the right spot, but we've recently launched a brand new community website... For the community, by the community.

Yay... Take Me to the Community!

The Community Blog is a personal opinion of community members and by no means the official standpoint of DNN Corp or DNN Platform. This is a place to express personal thoughts about DNNPlatform, the community and its ecosystem. Do you have useful information that you would like to share with the DNN Community in a featured article or blog? If so, please contact .

The use of the Community Blog is covered by our Community Blog Guidelines - please read before commenting or posting.

Reports Module 5.0 Update – Data Sources Framework

For the next version of the Reports Module, version 5.0 (which, confusingly, is only the second major release of the module), we are introducing a new Data Sources Framework. This framework is similar to the Visualizer Framework introduced in the 4.x line, but it works in the other direction. While Visualizers are responsible for drawing UI for a Report given its results and some settings, a Data Source is responsible for generating the report results based on its settings.

This framework greatly increases the flexibility of the Reports Module. Before 5.0, the Reports module could only work with the current DotNetNuke database, although some hacks allowed users to work with other Servers and Databases. In 5.0, instead of being constrained to the DotNetNuke database specified in your site's web.config file, users can select from a number of different data sources:

In this blog post, I'll give a quick summary overview of all the data sources, and then in future posts I'll go into more detail on the Data Sources as well as discuss the architecture of the system and how third-party developers can create their own Data Source components.

  • DotNetNuke Data Source - This Data Source provides the same functionality as the previous version of the module (it is almost literally copied and pasted ). It provides a simple way to run a query against the same database that DotNetNuke is running under
  • Microsoft SQL Server Data Source - This Data Source allows users to access ANY Microsoft SQL Server database, as long as it is accessible from the Web Server. Users can either manually enter a Connection String or enter data into structured fields such as Server and Database and a Connection String will be generated for you
  • Generic ADO.Net Data Source - This Data Source allows users to use any installed ADO.Net Data Provider on the Web Server to query a database. This includes: ODBC, OleDB, and SQL Server (including the Compact Edition), but ADO.Net providers are also available for Oracle, MySQL, and other Database Systems. However, since the Data Source knows nothing of the specific Database System, users must manually write and enter a connection string to use this Data Source. Hopefully, specific Data Sources will be created for all major Database Systems, but until then this allows users to use ANY ADO.Net Data Source right away.
  • User Defined Table Module Data Source - This Data Source allows users to perform simple retrieval and filtering of records from a User Defined Table Module. This Data Source does not have a full-featured query system but it does allow users to select the columns they wish to retrieve, filter out rows based on criteria, and sort the retrieved records.

Some of these Data Sources, like the DotNetNuke Data Source should be fairly familiar but I will go over the new ones in more detail in future blog posts. The current plan is to release Reports v5.0 "When It's Ready" (as usual), but I think we're getting close to a matter of weeks before the module is ready to enter the release process. Still, no promises, keep checking here for more details!


Comment Form

Only registered users may post comments.


Aderson Oliveira (22)
Alec Whittington (11)
Alessandra Davies (3)
Alex Shirley (10)
Andrew Hoefling (3)
Andrew Nurse (30)
Andy Tryba (1)
Anthony Glenwright (5)
Antonio Chagoury (28)
Ash Prasad (37)
Ben Schmidt (1)
Benjamin Hermann (25)
Benoit Sarton (9)
Beth Firebaugh (12)
Bill Walker (36)
Bob Kruger (5)
Bogdan Litescu (1)
Brian Dukes (2)
Brice Snow (1)
Bruce Chapman (20)
Bryan Andrews (1)
cathal connolly (55)
Charles Nurse (163)
Chris Hammond (213)
Chris Paterra (55)
Clint Patterson (108)
Cuong Dang (21)
Daniel Bartholomew (2)
Daniel Mettler (181)
Daniel Valadas (48)
Dave Buckner (2)
David Poindexter (12)
David Rodriguez (3)
Dennis Shiao (1)
Doug Howell (11)
Erik van Ballegoij (30)
Ernst Peter Tamminga (80)
Francisco Perez Andres (17)
Geoff Barlow (12)
George Alatrash (12)
Gifford Watkins (3)
Gilles Le Pigocher (3)
Ian Robinson (7)
Israel Martinez (17)
Jan Blomquist (2)
Jan Jonas (3)
Jaspreet Bhatia (1)
Jenni Merrifield (6)
Joe Brinkman (274)
John Mitchell (1)
Jon Henning (14)
Jonathan Sheely (4)
Jordan Coopersmith (1)
Joseph Craig (2)
Kan Ma (1)
Keivan Beigi (3)
Kelly Ford (4)
Ken Grierson (10)
Kevin Schreiner (6)
Leigh Pointer (31)
Lorraine Young (60)
Malik Khan (1)
Matt Rutledge (2)
Matthias Schlomann (16)
Mauricio Márquez (5)
Michael Doxsey (7)
Michael Tobisch (3)
Michael Washington (202)
Miguel Gatmaytan (3)
Mike Horton (19)
Mitchel Sellers (40)
Nathan Rover (3)
Navin V Nagiah (14)
Néstor Sánchez (31)
Nik Kalyani (14)
Oliver Hine (1)
Patricio F. Salinas (1)
Patrick Ryan (1)
Peter Donker (54)
Philip Beadle (135)
Philipp Becker (4)
Richard Dumas (22)
Robert J Collins (5)
Roger Selwyn (8)
Ruben Lopez (1)
Ryan Martinez (1)
Sacha Trauwaen (1)
Salar Golestanian (4)
Sanjay Mehrotra (9)
Scott McCulloch (1)
Scott Schlesier (11)
Scott Wilkinson (3)
Scott Willhite (97)
Sebastian Leupold (80)
Shaun Walker (237)
Shawn Mehaffie (17)
Stefan Cullmann (12)
Stefan Kamphuis (12)
Steve Fabian (31)
Steven Fisher (1)
Timo Breumelhof (24)
Tony Henrich (3)
Torsten Weggen (3)
Tycho de Waard (4)
Vicenç Masanas (27)
Vincent Nguyen (3)
Vitaly Kozadayev (6)
Will Morgenweck (40)
Will Strohl (180)
William Severance (5)
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out