Designer

Labels
AJAX(112) App Studio(9) 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(178) 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(184) 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(3) 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
Designer
Wednesday, July 25, 2012PrintSubscribe
Overview of Business Rules

Business rules extend the functionality of a web application through SQL, C# or Visual Basic, JavaScript, or Email.

Business Rule Properties:

Property Description
Command Argument Specifies the argument of a command that will trigger the business rule. The property value is a regular expression.
Command Name Specifies the names of commands that will trigger the business rule to fire. The property value is a regular expression.

For example: Update|Insert|Delete
Controller Specifies which controller the business rule will apply to.
Id Specifies the Id of the business rule.
Name Specifies a user-friendly name of the business rule.
Phase Specifies the phase of the command in which the rule will fire. Calculate command can only use “Execute” phase.
Script Specifies the script of the rule. C#/Visual Basic rules can be edited in Visual Studio using the Edit Rule action on the action bar.
Type Specifies the type. Available options are: SQL, C#/Visual Basic, Email, JavaScript.
View Specifies which views will permit the rule to be triggered. The property value is a regular expression.

For example: editForm1|grid1

Learn to work with business rules in the Project Designer.

Learn to drag and drop business rules in the Project Explorer.

Common Tasks:

Task Description
SQL Validation Learn to create an SQL Business Rule to perform validation.
Shared Code Business Rule Learn to use the shared business rules file.
Custom Code Business Rule Learn to use custom business rules.
JavaScript Validation Learn to create a JavaScript Business Rule to perform validation.
Simple Email Notification Learn to create a simple notification using an Email Business Rule.
Tuesday, July 24, 2012PrintSubscribe
Tooltips

Tooltips, also called hints, are commonly used to clarify application element functions to the end user.

Let’s apply a tooltip to the Unit Price data field in the New Order Details form.

Start the Project Designer. In the Project Explorer, switch to the Controllers tab and double-click on OrderDetails / Views / createForm1 / c1 – New Order Details / UnitPrice data field node.

UnitPrice data field in createForm1 of OrderDetails controller in the Project Explorer.

Change the Tooltip property:

Property New Value
Tooltip Please specify the agreed upon price per unit in this order.

Press OK to save the data field. On the toolbar, press Browse.

Navigate to the Order Details page, and create a new order detail. Mouse over the Unit Price input, and the specified tooltip will appear.

Specified tooltip displayed when user mouses over Unit Price input box.

Friday, July 20, 2012PrintSubscribe
Code Formula

The Code Formula field is an expression in the language of your project (C# or Visual Basic) that calculates the value of the field every time the row values are changed in response to Calculate action.

Let’s add an Extended Price field in Order Details that will calculate the extended price of the order item using Unit Price, Quantity, and Discount.

Start the Project Designer. In the Project Explorer, switch to the Controllers tab, right-click on OrderDetails / Fields node, and select New Field option.

New Field for OrderDetails controller.

Give this field the following settings:

Property Value
Name ExtendedPrice
Type Currency
The value of this field is calculated by a business rule expression. True
Code Formula
Convert.ToDecimal(unitPrice) * 
    Convert.ToDecimal(quantity) * 
    (1 - Convert.ToDecimal(discount))
Label Extended Price
Values of this field cannot be edited True
Data Format String c
Context Fields ProductID, UnitPrice, Quantity, Discount

Press OK to save the field.

At the top of the Project Browser window, switch to the Data Fields tab. Create a new data field with the following configuration:

Property Value
View createForm1
Category New Order Details

Press OK to save.

New ExtendedPrice field with data field in createForm1.

On the toolbar, press Browse button. Navigate to the Order Details page, and create a new record. Specify a Unit Price, Quantity, and Discount, and the Extended Price will be calculated when you press Tab or click outside of the changed field.

New Order Details form with a calculated Extended Price.

If you change any of the field values and shift focus to another field, the Extended Price will refresh.

When a value is changed in the other fields, Extended Price value will be recalculated.

The code generator automatically creates a business rule file using the Code Formula expression. The resulting file can be seen below.

C#:

using System;
using MyCompany.Data;

namespace MyCompany.Rules
{
    public partial class OrderDetailsBusinessRules : MyCompany.Data.BusinessRules
    {

        [ControllerAction("OrderDetails", "Calculate", "ExtendedPrice")]
        public void CalculateOrderDetails(int? orderID,
            string orderCustomerID, string orderCustomerCompanyName,
            string orderEmployeeLastName, string orderShipViaCompanyName,
            int? productID, string productProductName,
            string productCategoryCategoryName,
            string productSupplierCompanyName, decimal? unitPrice,
            short? quantity, float? discount)
        {
            UpdateFieldValue("ExtendedPrice", 
                Convert.ToDecimal(unitPrice) *
                Convert.ToDecimal(quantity) *
                (1 - Convert.ToDecimal(discount)));
        }
    }
}

Visual Basic:

Imports MyCompany.Data
Imports System

Namespace MyCompany.Rules
    
    Partial Public Class OrderDetailsBusinessRules
        Inherits MyCompany.Data.BusinessRules
        
        <ControllerAction("OrderDetails", "Calculate", "ExtendedPrice")> _
        Public Sub CalculateOrderDetails(ByVal orderID As Nullable(Of Integer),
                                         ByVal orderCustomerID As String,
                                         ByVal orderCustomerCompanyName As String,
                                         ByVal orderEmployeeLastName As String,
                                         ByVal orderShipViaCompanyName As String,
                                         ByVal productID As Nullable(Of Integer),
                                         ByVal productProductName As String,
                                         ByVal productCategoryCategoryName As String,
                                         ByVal productSupplierCompanyName As String,
                                         ByVal unitPrice As Nullable(Of Decimal),
                                         ByVal quantity As Nullable(Of Short),
                                         ByVal discount As Nullable(Of Single))
            UpdateFieldValue("ExtendedPrice",
                Convert.ToDecimal(unitPrice) *
                Convert.ToDecimal(quantity) *
                (1 - Convert.ToDecimal(discount)))
        End Sub
    End Class
End Namespace
Continue to Code Value