Visual DataFlex AJAX Library -...

Post on 25-Dec-2018

230 views 0 download

transcript

Visual DataFlex AJAX Library

Building Real-Life Applications with the Visual DataFlex AJAX Library

Harm Wibier (Data Access Europe)

Overview

• What's latest?

– Version 2.2

– Version 2.3

• Real-Life Applications

– Energiewacht

– ParaNICE

– Schuitemaker

– Several others

Previous releases

• 2.0 for Visual DataFlex 2009 - 15.0

– Rebuild of the AJAX Library

– New themes

• 2.1 for Visual DataFlex 2009 – 15.1

– JSON Calls

– TreeView

WHAT'S LATEST?

Looking back at the 2010 releases of the AJAX Library.

AJAX LIBRARY 2.2

About the AJAX Library 2.2 for Visual DataFlex 2010 - 16.0.

AJAX Library 2.2

• Visual DataFlex 2010 – 16.0

– Updated theme’s

– Performance improvements using CSS Sprites

– Improved DDO support

• Supports more complex DDO structures

• Improved constraint support

– Clear All

– Improved AJAX API's

– Expressions

– Error details

Updated theme

Updated theme

Custom AJAX Calls

• vdf.ajax.HttpRequest

– Plain HTTP requests

• vdf.ajax.SoapCall

– Call SOAP Web Services

• vdf.ajax.JSONCall

– Call JSON Web Services

• vdf.ajax.VdfCall

– Call methods in web ojbects

VdfCall

• Improved API

• Method of the vdf.core.Form

JavaScript: var oForm = vdf.getForm("products_form");

oForm.vdfCall("get_AmountOrdered", [ 95 ], handleDetermineAmount);

VDF (inside web object for products form): { Published = True }

{ Description = "" }

Function AmountOrdered Integer iProductId Returns Integer

Function_Return iFound

End_Function

DbCall

• Data bound variant of the VdfCall

• Method of the vdf.core.Form

JavaScript: var oForm = vdf.getForm("orders_form");

oForm.dbCall("get_MarkShipped", [ ], handleMarkShipped);

VDF (inside web object for orders form): { Published = True }

{ Description = "" }

Function MarkShipped Returns Boolean

Set Field_Changed_Value of oOrders_DD Field Orders.ShippedDate to

(CurrentDateTime())

Function_Return True

End_Function

Expressions

• Published method

– Inside WO

– Returns value

– Uses data in the buffer

• Bind fields to the expression method

– Lookup fields

– Regular data entry fields

Expression API

HTML: <input type="text" value="" name="e:EmployeeFullName" title="Employee

Name" vdfServerTable="employee" />

VDF (inside web object for the form): { Published = True }

{ Description = "" }

Function EmployeeFullName Returns String

Function_Return (Trim(Employee.FirstName * Employee.LastName))

End_Function

AJAX LIBRARY 2.3

The new release for Visual DataFlex 16.1.

AJAX Library 2.3

• Visual DataFlex 16.1

– New SpinForm control

– Support for Internet Explorer 9

– Support for Mozilla FireFox 4

– Several bugfixes

• Beta already available…

vdf.deo.SpinForm

• Increment and decrement values

– Keyboard control

• Cursor up and down

– Mouse control

– Intuitive fast spin when kept down

– Numeric and date fields

– Configurable step

– Respects masks

– Simple API

Simple API

HTML:

<input vdfControlType="vdf.deo.SpinForm" type="text"

value="1000" name="customer__credit_limit" size="20" />

HTML:

<input vdfControlType="vdf.deo.SpinForm" class="Data"

type="text" value="" name="datefield" vdfDataType="date"

vdfMaskType="dat" vdfMask="dd Mmm, yyyy" />

Example

• http://localhost/AJAXWines23/

ENERGIEWACHT

Real world example.

The company

• Energiewacht

– Installation and maintenance of heating and hot water installations

– Retail and business market

– 130.000 customers

– 90 service technicians

• Already worked with DataFlex and Visual DataFlex

The application

• In-house application

• Resource management and planning

– Technicians

– Shifts

– Area's

– Capacity

• Regular maintenance

• Troubleshooting

– Vacations

Specifics

• Intranet only

– Full web application

– Big application (30GB SQL Database)

• Custom scheduling component

Reporting

• Filtering

• Data shown in expandable tables

Choice of technique

• Build with AJAX for ease of management

– Central application updates

– No client installation

• Ease of development improved over time

– Starting with AJAX 1.1 development was slow and difficult

– With the latest releases (2.1 & 2.2) development time improved

PARANICE

Real world example.

The company

• NICE Software B.V.

– Started in 1995

– Specialized in medical software

• Developed with Visual DataFlex since its beginning

The application

• ParaNICE

– Used in over 60 hospitals

– Windows

• Patient registration

• Medical information

• Agenda scheduling

• Statistics

– Web extension

• View and process daily schedule

• Register medical information

Specifics

• Intranet only

– Mobile devices (Ipads)

– Parts of windows application

• Only details needed next to the bed

• Specific user scenarios

Components

• Data Entry

– Default AJAX Library controls on the Ipad

• Custom big buttons

Choice of technique

• Decided to go webapp to allow specific user scenarios

– Access information on location

– Less paperwork

• AJAX Library proves to run on mobile devices without problems

SCHUITEMAKER

Real world example.

The company

• Schuitemaker Machines B.V.

– Agricultural machinery

• Develops

• Produces

• Sells

– Over 160 employees

– Since 1918

Specifics

• Internet portal

– Full application

• Service Portal

– In house

– Maintenance

– Synchronized with ERP

• Dealer Portal

– Used by the customers / dealers

Example

• http://localhost/SchuitemakerPortal/Login.asp

Choice of technique

• Decided to create a web portal to allow dealers to access the application.

• The AJAX Library has been used because of the typical data entry style.

QUESTIONS?

THANKS!

I'll be around and would be happy to answer any specific questions you may have...