Master-detail relationships are present in all database web applications. Code On Time automatically generates two-level master-detail page layouts from your database.
You can also create three or more levels of master-detail relationships. For example, view the diagram from the Northwind database below. Order Details table references Orders table, which references Customers.
Let’s create a master-detail page that allows the user to select the customer, the order, and then view the order details.
Create a Northwind web application. Start the Project Designer. In the Explorer, right-click on Home page node and choose New Page option.
Give this new page the following properties:
| Property | Value | 
| Name | ThreeLevelMasterDetail | 
| Index | 1005 | 
| Title | Three-Level Master-Detail | 
| Path | Three-Level Master-Detail | 
| Style | Miscellaneous | 
| About This Page | This page will demo a three level master-detail data layout. | 
| Roles | (blank) | 
Press OK to save the page.
Let’s add containers to hold the master and detail data views. In the Project Explorer, right-click on Three-Level Master-Detail page node, and select New Container.
Give this container the following properties:
| Property | Value | 
| Flow | New Row | 
Press OK to save the container. Create two more containers:
| Property | Value | 
| Flow | New Row | 
| CSS Style Properties | padding-top:8px; | 
| Property | Value | 
| Flow | New Row | 
| CSS Style Properties | padding-top:8px; | 
Let’s add a data view in each container. Right-click on Three-Level Master-Detail / c100 container node, and select New Data View option.
Give the new data view the following properties:
| Property | Value | 
| Controller | Customers | 
| View | grid1 | 
| Text | Customers | 
| Show in Summary | True | 
| Page Size | 5 | 
Press OK to save the data view. Right-click on Three-Level Master-Detail / c101 container node, and choose New Data View.
Give the data view the following properties. The Filter Field is a field in the child view that match the primary key of the master view.
| Property | Value | 
| Controller | Orders | 
| View | grid1 | 
| Text | Orders | 
| Page Size | 5 | 
| Show View Selector | False | 
| Filter Source | dv100 | 
| Filter Field #1 | CustomerID | 
| Auto Hide | Container | 
Press OK to save. Create one more data view by right-clicking on Three-Level Master-Detail / c102 container node and selecting New Data View.
Use the following properties:
| Property | Value | 
| Controller | OrderDetails | 
| View | grid1 | 
| Text | Details | 
| Page Size | 5 | 
| Show View Selector | False | 
| Filter Source | dv101 | 
| Filter Field #1 | OrderID | 
| Auto Hide | Container | 
Press OK to save the data view. On the tool bar, press Browse to generate the application.
When it opens in your default browser, navigate to the Three-Level Master-Detail page.
First, select a Customer from the list. A child data view will open underneath, showing Orders.
Select an Order, and a list of Order Details will appear below.