Data Sheet

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(8) OAuth Scopes(1) OAuth2(11) Offline(20) Offline Apps(4) Offline Sync(5) Oracle(10) PKCE(2) PostgreSQL(2) PWA(2) QR codes(2) Rapid Application Development(5) Reading Pane(2) Release Notes(179) Reports(48) REST(29) RESTful(29) RESTful Workshop(15) RFID tags(1) SaaS(7) Security(80) 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
Data Sheet
Wednesday, February 27, 2013PrintSubscribe
Configuring Hierarchy

The “hierarchy-parent” tag can be used to present a hierarchical view of information.

Note that hierarchy is only available in the second generation data sheet view.

First, create the HR sample web application using Oracle Database Engine.

Adding a New Page

When generation is complete, activate the Project Designer. On the Project Explorer toolbar, click on the New Page icon.

Creating a new page.

Assign a name to the page:

Property Value
Name Hierarchy

Press OK to save. Drop the new Hierarchy page node on the right side of Home page to place it second in the menu.

Dropping Hierarchy page onto Home page.     Hierarchy page is second in the menu.

Switch to the Controllers tab. Right-click on EMPLOYEES data controller and press Copy.

Copying EMPLOYEES controller.

Switch back to the Pages tab. Right-click on Hierarchy page and press Paste. The data controller will be instantiated as a data view.

Pasting onto Hierarchy page.     The data view has been instantiated as a data view in a container on the page.

Configuring Hierarchy in Data Sheet

Double-click on Hierarchy / c101 / view1 (EMPLOYEES) / grid1 view node.

View 'grid1' of EMPLOYEES controller.

Change the view type.

Property New Value
Type Data Sheet

Press OK to save. Double-click on Hierarchy / c101 / view1 (EMPLOYEES) / grid1 / MANAGER_ID –> MANAGER_LAST_NAME data field node.

Data field 'MANAGER_ID' of view 'grid1'.

Tag the data field as the hierarchy parent.

Property New Value
Tags hierarchy-parent

Press OK to save.

Viewing the Results

On the toolbar, press Browse. The data sheet will now be organized according to the hierarchy.

Hierarchy in the Oracle sample database.

Wednesday, February 27, 2013PrintSubscribe
Enabling Second Generation Data Sheet Preview

Starting with release 7.0.7.0, web applications created with Premium or Unlimited edition include a preview of the second generation data sheet view. The new implementation supports horizontal and vertical scrolling, column resizing, and freezing. In addition, applications based on Microsoft SQL Server or Oracle also support hierarchical presentation of data.

The preview does not yet support all capabilities available in the original data sheet. The missing features will be released as soon as they become production-ready. Therefore, the second generation data sheet is disabled by default. If you would like to take it for a spin, make sure to regenerate your web app and follow the instructions below.

Start the web application generator. Create a sample Northwind web app. When generation is complete, click on the project name in the start page of the generator. Then, click Develop to open the project in Visual Studio.

In the Solution Explorer, right-click on ~\App_Code folder, and press Add | Add New Item…

image

Select Class from the list, and assign a name. Press Add to create the file.

image

Replace the existing code base with the following:

C#:

namespace MyCompany.Data
{
    public partial class ControllerUtilities
    {
        public override bool SupportsScrollingInDataSheet
        {
            get { return true; }
        }
    }
}

Visual Basic:

Namespace MyCompany.Data
    Partial Public Class ControllerUtilities
        Public Overrides ReadOnly Property SupportsScrollingInDataSheet As Boolean
            Get
                Return True
            End Get
        End Property
    End Class
End Namespace

Save the file and run the web app. Navigate to the Customers page. On the action bar, press Action | Show in Data Sheet.

image

The grid view will render the second generation data sheet.

image

The second generation data sheet will be enabled by default when the feature set of the previous implementation is replicated.

To use the original data sheet view implementation, make sure that the SupportsScrollingInDataSheet property of class ControllerUtilities returns false.

Thursday, January 3, 2013PrintSubscribe
Adding a Database View

Database views are composed of a result set for a query accessible as a virtual table. This query is computed from other tables in the database. Code On Time web application generator creates read-only data controllers from views. It is possible to add update and insert capabilities to these controllers.

Let’s create a new database view in the Northwind database based on Employees table, add this view to a project, and enable editing.

Creating the View

Start SQL Server Management Studio. In the Object Explorer, right-click on Databases / Northwind and press New Query.

Creating a new query for Northwind database.

Paste in the following script:

create view EmployeeList as
select 
    Employees.EmployeeID, 
    Employees.LastName + ', ' + Employees.FirstName FullName,
    Employees.Title, 
    Employees.TitleOfCourtesy,
    (select COUNT(*) 
     from Orders 
     where EmployeeID = Employees.EmployeeID
    ) NumberOfOrders,
    Employees.BirthDate,
    Employees.HireDate,
    Employees."Address",
    Employees.City,
    Employees.Region,
    Employees.PostalCode,
    Employees.Country,
    Employees.HomePhone,
    Employees.Extension
from Employees

The script will create a view composed of several columns from the Employees table. In addition, the FirstName and LastName columns will be concatenated into the FullName column, and a count of orders will be displayed in NumberOfOrders column.

On the toolbar, press Execute to run the script.

Adding View to Project

Start the web application generator. Click on the project name, and press Refresh. Check the box next to the view dbo.EmployeeList, and confirm the refresh.

Adding 'dbo.EmployeeList' to the project.

On the Summary page, press Design to activate the Project Designer.

Defining Primary Key

The new controller is based on a database view and does not have a primary key explicitly defined. This means that individual rows cannot be selected or edited. Specifying a primary key from within the Project Designer will enable this functionality.

In the Project Explorer, switch to the Controllers tab. Double-click on EmployeeList / Fields / EmployeeID* (Int32, read-only) node.

Field 'EmployeeID' of EmployeeList controller.

Mark the field as a primary key.

Property New Value
Defines the primary key. true

Press OK to save the field.

Defining Base Table Name

In order to ensure that the Employees table will be updated when a user changes a record in the EmployeeList controller, the command must have the Table Name property explicitly specified.

Double-click on EmployeeList / Commands / command1 (Text) node.

'Command1' of EmployeeList controller.

Specify a table.

Property New Value
Table Name dbo.Employees

Press OK to save changes.

Next, right-click on EmployeeList / Commands / command1 (Text) and select Reset to Baseline. This will ensure that any changes to the database view will be reflected in the command text when the data controller is refreshed.

Resetting command text to the baseline for 'EmployeeList' controller.

Viewing the Results

On the toolbar, press Browse. Navigate to Reports | Employee List page.

Click on Actions | Show in Data Sheet to activate data sheet mode. Double-click a cell and change the value.

Changing the value of a field in Employee List controller.

Press Enter key to save.

Saving the changed value.

Navigate to the Employees page. Note that the corresponding row of Employees database table has been updated.

The employee record has been updated.