1 person following this project (follow)

Project Description
Data entry tool for simple time series.

How to use Flowmarks Events

Just like any other DotNetNuke® module, install this module, and add it to a page. The first-run blank state is an empty event list:

firstrun.png

Adding new events
You can start adding events by clicking New Event, either on one of the links or on the hover area between the navigation and the list:

newevent.png

Let's say I just finished a book titled Professional DotNetNuke Module Programming and want to add this as a new event.
The primary date I want to track is the date I finished the book, but if the data is available, I could also enter the date I started reading it.
I also want to keep track of the book page count. The name of the book or an author - name pair is a good label. I leave the comments empty:

neweventform.png

Clicking Save adds the event to the list, closes the edit form and tells you what happened. You can edit the event again by clicking it on the event list.

Save.png

Tip: Minimize data entry to data items that are actually useful in reporting. Most often these are numeric values that can be aggregated,
plus any categories and datetime values you can use in grouping and filtering.
Some mnemonic label is usually good too, but don't store reference data. Look it up on Google instead!

Categories
Tracking your events require that you can group them sensibly. You could use labels for grouping by text, but this is not the best way.
Some events would have grouping labels and some would have identifier-type labels and all would be lumped together in reporting.

Categories allow you to group your events in a two-level hierarchy.

Continuing the previous example, I'll add a top category Books, and a subcategory Computer Science:
categories.png

Events can be now assinged one of three categories:
categoryselect.png


Settings
Every module instance has the following settings:

settings.png

Allow anonymous edits allows non-logged in users to save events.
Date/Time format overrides your OS culture settings (CurrentUICulture).
If a Report Module Url is given, you'll see a reports link in the top navigation.

Data model

Installation creates two tables in the DNN database:
  • flowmarks_Event
  • flowmarks_Category

dbstructure.png

flowmarks_Event columns:
  • EventID is the primary key. It is also visible in the edit form
  • ModuleID identifies the module instance. This value is saved but it is not used anywhere. Every module instance will show every event of the currently logged in user.
  • UserID identifies the user who created the event. No other user will see it. DNN users are found in the Users table.
  • CategoryID is the foreign key to the flowmarks_Category table. Some category is always selected in the UI. If not a user defined category then a special No Category that is visible to all users.
  • Label is the primary textual label. It doesn't allow null values, but the UI allows to save an empty string
  • Label2 is an optional, secondary label
  • EventDate is the primary event date. It is a required value in the UI. Event date is a UTC date.
  • EventDate2 is an optional, secondary event date (UTC)
  • Measurement is an optional numeric value
  • Measurement2 is an optional numeric value
  • ExternalID is meant for an original id in an external system. In data warehousing terminology, ExternalID would be a natural key and EventID a surrogate key.
  • Comments is a free-text field
  • DateCreated is the insert datetime (UTC)
  • DateModified is the update datetime (UTC)
  • IsDeleted is marked true if the event is deleted. A deleted event will be invisible in the UI and the user cannot undelete it.
You can have two date, label and measurement values, but only a single category that may belong to a top category.
If the user saves a new event without adding any data, it will have a 'No category' category and the current datetime as EventDate.

flowmarks_Category columns:
  • CategoryID is the primary key
  • UserID identifies the user who created the category. No other user will see it.
  • ParentID is the CategoryID of the top category. Root categories have NULL ParentID. Only two levels in the category hierarchy are supported.
  • Name is the category's visible name
  • Comments is a free-text field
  • DateCreated is the insert datetime (UTC)
  • DateModified is the update datetime (UTC)
  • IsHidden defines the visibility of a category. A hidden category is not available in the event list or edit form. User can set this value to true or false, to manage active categories.
  • IsDeleted is marked true if the category is deleted. A deleted category will be invisible in the UI and user cannot undelete it.
  • Label -fields are intended for labeling the event fields by category. This means that an event belonging to, say, Books category would show Label_Measurement, e.g. 'Page Count' instead of 'Measurement' in the event editor. This feature is not (fully) implemented yet.

Install instructions

Install package should work without additional steps in DNN 5.X running on IIS 7.0 or 7.5.

XHTML 1.0 Transitional doctype is required for the default style to work in most browsers. If using HTML 4.01, you'll have to modify the module.css.

DNN4 and Windows XP/2003 users (IIS 5.1 - 6.0) need to modify web.config and add the DevExpress HttpModule:

IIS 6 + DNN4 or DNN5
<httpModules>
    <add type="DevExpress.Web.ASPxClasses.ASPxHttpHandlerModule, DevExpress.Web.v9.3, Version=9.3.3.0,
Culture=neutral, PublicKeyToken=b88d1754d700e49a" name="ASPxHttpHandlerModule" />
</httpModules>


IIS 7.X + DNN4
<modules>
     <add type="DevExpress.Web.ASPxClasses.ASPxHttpHandlerModule, DevExpress.Web.v9.3, Version=9.3.3.0,
Culture=neutral, PublicKeyToken=b88d1754d700e49a" name="ASPxHttpHandlerModule" />
</modules

DevExpress components are used only by the Category editor. Without the HttpModule, Category editor will not work.

Build instructions

Checkout the source to flowmarks_Events folder under your dev system's DesktopModules.
Open the flowmarks_Events solution with Visual Studio 2008.
.NET 3.5 is the minimum framework version assumed.

Compiling the project requires DevExpress 9.3 dlls that are distributed with the install package.
Post-build event runs Build\build.bat that creates an install package structure in the flowmarks_Events_Install folder.

The current (initial) version of Flowmarks Events was developed with DNN 4.9.5 and tested with DNN 5.6.1.

Last edited Mar 16 2011 at 3:40 PM by mokukkon, version 16

Comments

No comments yet.