Web Application Generator

Labels
AJAX(112) App Studio(7) Apple(1) Application Builder(245) Application Factory(207) ASP.NET(95) ASP.NET 3.5(45) ASP.NET Code Generator(72) ASP.NET Membership(28) Azure(18) Barcode(2) Barcodes(3) BLOB(18) Business Rules(1) Business Rules/Logic(140) BYOD(13) Caching(2) Calendar(5) Charts(29) Cloud(14) Cloud On Time(2) Cloud On Time for Windows 7(2) Code Generator(54) Collaboration(11) command line(1) Conflict Detection(1) Content Management System(12) COT Tools for Excel(26) CRUD(1) Custom Actions(1) Data Aquarium Framework(122) Data Sheet(9) Data Sources(22) Database Lookups(50) Deployment(22) Designer(177) Device(1) DotNetNuke(12) EASE(20) Email(6) Features(101) Firebird(1) Form Builder(14) Globalization and Localization(6) How To(1) Hypermedia(2) Inline Editing(1) Installation(5) JavaScript(20) Kiosk(1) Low Code(3) Mac(1) Many-To-Many(4) Maps(6) Master/Detail(36) Microservices(4) Mobile(63) Mode Builder(3) Model Builder(3) MySQL(10) Native Apps(5) News(18) OAuth(9) OAuth Scopes(1) OAuth2(13) Offline(20) Offline Apps(4) Offline Sync(5) Oracle(11) PKCE(2) Postgre SQL(1) PostgreSQL(2) PWA(2) QR codes(2) Rapid Application Development(5) Reading Pane(2) Release Notes(183) Reports(48) REST(29) RESTful(29) RESTful Workshop(15) RFID tags(1) SaaS(7) Security(81) SharePoint(12) SPA(6) SQL Anywhere(3) SQL Server(26) SSO(1) Stored Procedure(4) Teamwork(15) Tips and Tricks(87) Tools for Excel(2) Touch UI(93) Transactions(5) Tutorials(183) Universal Windows Platform(3) User Interface(338) Video Tutorial(37) Web 2.0(100) Web App Generator(101) Web Application Generator(607) Web Form Builder(40) Web.Config(9) Workflow(28)
Archive
Blog
Web Application Generator
Saturday, December 29, 2012PrintSubscribe
On-Demand Handler Property

The Products table in the Northwind database includes a foreign key reference to CategoryID column of Categories table. Code On Time generator adds the CategoryName field in the Products controller through automatic denormalization. In addition to the CategoryName field, let’s denormalize the Picture field in order to include it in the Products grid.

Start the web application generator. Click on the project name, and select Settings. Click on Business Logic Layer option. Switch to the Denormalization Map section, and paste in the following:

dbo.Products => dbo.Categories
Picture

Defining a Denormalization Field Map in the Project Wizard.

Press Finish to skip to the Summary page, and then press Refresh. Check the box next to Products controller, and continue to refresh the project.

Refreshing the Products controller.

On the Summary page, click on Design to bring up the Project Designer.

In the Project Explorer, switch to the Controllers tab. Double-click on Products / Fields / CategoryPicture (Byte[], read-only) field node.

Selecting 'CategoryPicture' field of Products controller.

Change the following values:

Property New Value
On Demand Handler CategoriesPicture

This will prompt the application framework to populate the field using the same handler that populates the Picture field in Categories controller. Press OK to save the field.

Drop Products / Fields / CategoryPicture (Byte[], read-only) field node onto Products / Views / grid1.

Dropping 'CategoryPicture' field node onto view 'grid1'.     Data field for 'CategoryPicture' instantiated in view 'grid1'.

On the toolbar, press Browse. Navigate to the Products page. The Category Picture column will now be populated with images.

Field 'Category Picture' is populated with pictures from the Categories table.

Saturday, December 29, 2012PrintSubscribe
Feature: Custom Reports

When reporting is enabled in Code On Time web applications, default reporting actions will be available in every controller.

Default reporting actions in a web application created with Code On Time.

The report can be produced in PDF, Excel (XLS), Image (TIFF), or Word (DOC) format. The picture below shows an example of a PDF report.

Default PDF report using the standard report template.

Reporting abilities can be expanded with custom reports. The master-detail order report shown below can easily be reproduced in a Northwind sample web application.

Simple filtered report displaying master-detail custom report.

The report can be extended with multi-level grouping to handle multiple orders. It may be rendered with different filtering parameters to fulfill multiple purposes.

Master-detail report with multi-level grouping of orders.

Friday, December 28, 2012PrintSubscribe
Custom Reports

Code On Time web applications can be enhanced with custom reports.

Simple Filtered Report

For example, the master-detail report below can be easily created from a Northwind sample web application.

Simple filtered report displaying master-detail custom report.

The first step is to either extend the field dictionary of an data controller with denormalization, or create a new data controller using a database view. The report field model will be defined by a view that will be added to the data controller. A custom report template will be generated for this view.

Remove the pre-configured elements from the custom report template, and set up a tablix element to display a table of data. The master fields will be placed in the header and footer of the report. Some of the fields may require some formatting changes to display correctly.

Finally, add a Report action that will trigger the custom report.

Multi-Level Grouping

The report above works fine when the data set is filtered to a specific OrderID. When multiple orders are included in the data set, the report will have invalid data. To solve this problem, consider implementing multi-level grouping, first by CustomerID, and then by OrderID. This multi-purpose report can be rendered with different filtering parameters to produce data sets with multiple orders when needed.

Master-detail report with multi-level grouping of orders.