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 15, 2012PrintSubscribe
Order Form Sample–Part 31

An alternative method for creating the denormalized data set is to create a database view.

Start SQL Server Management Studio. Connect to the database server. Right-click on Databases / Northwind node, and press New Query.

Creating a new query for the 'Northwind' database.

Paste in the following script:

CREATE VIEW [dbo].[OrderFormReport]
AS
SELECT dbo.[Order Details].UnitPrice, dbo.[Order Details].Quantity, 
        dbo.[Order Details].Discount, dbo.Orders.OrderDate, dbo.Orders.RequiredDate, 
        dbo.Orders.ShippedDate, dbo.Orders.Freight, dbo.Orders.ShipName, 
        dbo.Orders.ShipAddress, dbo.Orders.ShipCity, dbo.Orders.ShipRegion, 
        dbo.Orders.ShipPostalCode, dbo.Orders.ShipCountry, 
        dbo.Employees.LastName AS EmployeeLastName, 
        dbo.Employees.FirstName AS EmployeeFirstName, 
        dbo.Shippers.CompanyName AS ShipperCompanyName, 
        dbo.Customers.CompanyName AS CustomerCompanyName
FROM   dbo.[Order Details] INNER JOIN
        dbo.Orders ON dbo.[Order Details].OrderID = dbo.Orders.OrderID INNER JOIN
        dbo.Employees ON dbo.Orders.EmployeeID = dbo.Employees.EmployeeID INNER JOIN
        dbo.Customers ON dbo.Orders.CustomerID = dbo.Customers.CustomerID INNER JOIN
        dbo.Shippers ON dbo.Orders.ShipVia = dbo.Shippers.ShipperID

GO

Execute the script to create the database view.

Switch back to the web application generator. Refresh the project, and include the new view in the configuration.

Refreshing the project and including the new view.

Click Design and explore the new data controller.

Newly added 'OrderReport' data controller in the Project Explorer.

Saturday, December 15, 2012PrintSubscribe
Order Form Sample–Part 30

The automatically configured OrderDetails data controller has the following field set.

Default OrderDetails controller field set.

The report requires an extended field set in OrderDetails controller. The Denormalization Field Map will prompt the web application generator to create additional fields in data controllers.

Start Code On Time generator and click on the project name. Select Settings on the Project Action screen. Proceed to Business Logic Layer.

Activate Denormalization Map options and enter the following:

dbo.Order Details => dbo.Orders
OrderDate
RequiredDate
ShippedDate
ShipVia
Freight
ShipName
ShipAddress
ShipCity
ShipRegion
ShipPostalCode
ShipCountry

dbo.Orders => dbo.Employees
FirstName

Press the Finish button and refresh the OrderDetails controller.

Refreshing the 'OrderDetails' controller.

Click Design, and explore the fields of OrderDetails controller. The controller “borrows” additional fields from Employees and Orders controllers.

OrderDetails controller with new fields added by the denormalization field map.

Thursday, December 13, 2012PrintSubscribe
Order Form Sample–Part 29

Users can produce an order report by selecting an option from the Report menu on the action bar. The Print icon in the top left corner will activate the first option in the Report menu.

Using the 'PDF Document' action in the 'Report' menu of the action bar to create a report.

However, the default report only displays a top-down list of fields and values of the selected order. Order details are not present.

Default report displays a top-down list of fields and field values from the order record.

Let’s implement an action on the order form that will produce a report using a custom report template. This template will render the data in the same layout as the order form, and include all relevant order details.

Order report using a custom report template.

Such a report requires a denormalized data set joining rows from Orders, Order Details, Employees, and Shippers tables.

'Order Details', 'Orders', 'Customers', 'Employees', and 'Shippers' contain data needed for the report.

A denormalized data set can be created using one of the following methods:

  1. Using the Denormalization Field Map to extend the field set available in OrderDetails controller.
  2. Creating a data controller based on a database view that joins all required tables.

The data controller needs to be extended with a view that includes all data fields required for the report. A custom report template must be enabled for the view. The generated template can be customized directly in Visual Studio.

Finally, an action is needed to activate the report. Action parameters will map the current OrderID as a filter for the report data controller.

Continue to “Report” Action