About Form and List

Introduction

This chapter provides a basic overview of the Form and List project. It includes a brief history of the User Defined Table module, the codebase predecessor to Form and List module. This section highlights the importance of community participation in expanding
and improving the DotNetNuke (DNN) framework and its associated projects.

What is the Form and List Module?

Form and List is a DotNetNuke (DNN) content module that allows you to define a table (a group of columns or fields) that has the capability to store and display records.

In this context, a record is a set of column values where each field is named and has a specific data type definition. Take for example a list of friends, where for each friend you may store a first name, last name, date of birth, phone number, email address,
home page and a photo. In this list you could input first name in column 1, last name in column 2, date of birth in column 3, etc. Only data of a predefined type is allowed in any one column. For this example, that is for first/last name columns 1 & 2
- text – and for date of birth, column 3 – date.

With Form and List, once you create a list, an input form containing all the column fields you defined is automatically created for you. After you input at least one record, a default report view is also automatically created for you. This list can be sorted
by column and you can specify the number of records to display per page. In addition to this “Default Grid Table” view, the Form and List XSL rendering feature allows for even more flexible display options. Entering records, multiple users can do so simultaneously,
and you can set Add, Edit and Delete permissions based on DotNetNuke security Roles.

Brief History

The Form and List module was originally named the User Defined Table (UDT). It was renamed Form and List in 2009 with the addition of many new form-specific and list enhancement features. This is a brief history of the User Defined Table module.

Initially created as a DotNetNuke core module, an independent company, Gamma Concept, then used that core module as the basis to create an enhanced version for DotNetNuke 3 known as gammacon.UserDefinedTable, popular with DNN 3 users.

In December 2004, the initial concept of utilizing and incorporating third party modules as well as spinning off the core modules into individual projects became a reality. This change brought further development into designing the core DotNetNuke framework
to be modular by design. For each core module a DNN Project was created and each project is now regarded with equal importance in the development of future DNN releases.

The concept of DNN Projects further advanced the participation of more individuals in the DotNetNuke community. This allowed talented software developers to submit code to be included in the core DotNetNuke framework, while following development principles
outlined by the DotNetNuke Core Team Architects.

Gamma Concept offered the enhancements of gammacon.UserDefinedTable module to the core framework. Sebastian Leupold, together with Markus Hamburger, created a new version of UDT, UserDefinedTable 3.2.0, which was an amalgamation of the features of the Gamma
Concept module as well as other major enhancement such as additional data types, paging, search support and user interface (UI) improvements.

Stefan Cullmann entered the project and started a complete refactoring of the code, a necessary step to prepare for future UDT module development. Stefan also added an XSL rendering alternative that allows for more flexible display output. XSL rendering was
the most significant new capability added, however, other important features were included, such as improved search support, import/export capabilities and calculated columns. All these options significantly extended the capabilities of UDT and the scenarios
in which the new UDT 3.3.0 module could be used.

The User Defined Table team then drafted the first version of this documentation, to help you become familiar with UDT more quickly, so that you may get most out of the User Defined Table module. Brett Conlan then joined the UDT team in 2007 to provide comprehensive
module testing, documentation and UI/Help Tooltip English editing with a focus on end-user experience continuity control. The enhancements for version 3.4.0 include extended field settings, record filtering and search support, and the first implementation
of input validation using Regular Expressions. Also, the all new Token Based XSLT Generator and Editor significantly reduces the effort required to create XSL data rendering style sheets. 3.5.0 added data type User Profile Link and the Records Returned filter.

With the release of DotNetNuke version 5.x, a full set of form based features were added, list features were significantly enhanced, and the User Defined Table module was renamed Form and List module.

Form and List Resources

The Form and List is installed as part of the core installation of the DotNetNuke (DNN) framework. All resources such as the source code version, installable module, this document, and anything else associated with the official project are always attainable
from the projects home page located at: