Download DOWNLOAD
Forums FORUMS
Blogs BLOGS
Forge FORGE
Help HELP
Marketplace MARKETPLACE
DotNetNuke Home
You are here >   Development > Forge > Module - Reports
Register  |  Login
Purchase

DotNetNuke® Project :: Reports Module

The Reports module provides a simple, but flexible, view on data from your DotNetNuke Database. SuperUsers (aka "Host" users) can develop Reports by building a SQL Query and visualizing it with one of the Visualizers built-in to the module or a 3rd-party Visualizer.

How can you use the Reports Module?
  • Display a table of custom data from your Database
  • Display a list of Users in a specific Role
  • Display advanced queries that pull data from multiple tables
  • Display a chart of the number of users in each role
  • Display a report from SQL Reporting Services (EXPERIMENTAL)
Features: What can the Reports Module do now?
  • Display the results from any SQL Query in one of many ways:
    • a Grid
    • a Chart
    • an HTML-based template
    • an XSLT-based transformation
    • or anything else you want with the extensible Visualizer framework
  • Display reports from SQL Reporting Services
  • Import/Export Report Definitions through standard Import/Export Content
Roadmap: What are the future plans for the Reports Module?
  • Full support for the ASP.Net ReportViewer Control and SQL Server Reporting Services
  • Custom Parameters such as @PortalID, @TabID, @UserID that are filled in when the query is run
  • Custom Data Sources to enable the module to display reports containing data from:
    • Your DNN Data Provider
    • Other SQL-based Databases
    • XML Data
    • UDT Module Data
  • Allow SuperUsers to predefine a set of Reports that Admins can use (at this time, only SuperUsers can create Reports)
The project can be downloaded here

View_Blog

Jun 24

Posted by: Michael Washington
6/24/2006 

I just updated the module developers guide to provide some detail on the DAL+. Currently the most detailed description is available in my latest tutorial. I am working on updating the entire module developers guide and plan to have that complete by October.

The following is a section that appears after an explanation of the current "traditional DAL".

Using the DAL+

An alternative to the data access layer (the DAL) described above is the DAL+.  The DAL+ is only available for DotNetNuke 4.3 or higher (or DotNetNuke 3.3 or higher). The DAL+ is an alternative method of communicating with the database. This method will still allow you to communicate with an alternate database.

However, unlike the traditional DAL that was previously described, the DAL+ is not 100% "portable" to other data sources. It's is best used for modules that will not be distributed to other DotNetNuke sites that run on a database other than the database you develop the module on. For those situations it is best to use the traditional DAL described above.

The purpose of the DAL+ is to simplify module development by a reduction in code and complexity. The DAL+ allows you to make “calls” to the database directly from the “controller” class. Meaning, you do not have to code a separate data provider. Using the DAL+ you would not need to code the SQLDataProvider class described above.

The DAL+ achieves this by providing the following generic methods:

  • ExecuteNonQuery - Used to execute a stored procedure or sql statement that will not return a value.
  • ExecuteReader - Used to execute a stored procedure or sql statement that will return multiple records.
  • ExecuteScalar - Used to execute a stored procedure or sql statement that will return a single value.

Below is an explanation of the format used to implement the DAL+. The ExecuteReader method is used in the example to “call” a stored procedure named "ThingsForSale_SelectAll:

This will allow a module developer to use code such as:

Private Function GetItems(ByVal ModuleId As Integer) As ArrayList

          Return CBO.FillCollection(DataProvider.Instance().ExecuteReader("GetItems",ModuleId), GetType(ItemInfo))

Private Function

The generic methods will exist in all the concrete data providers that support DotNetNuke 4.3 or higher.

Tags:

Sponsors

DotNetNuke®, DNN®, and the DotNetNuke logo are trademarks of DotNetNuke Corporation

Hosted by MaximumASP