Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.


Data Providers

Servoy's "'Data Providers" ' are the atomic units of the data binding layer. A Data Provider holds an individual data value which may be bound to both User Interface elements, as well as back-end resources. Thus, Data Providers are the link between the user experience and the raw data. 


Other than programming scope, the only difference between the two is that globals can be used as keys in relations.

Design-Time Properties

Design-Time Properties is a feature that allows setting properties on a form or a form element at design time, which can be retrieved at runtime.

Form Designer

In form designer, design-time properties can be set from the Properties view. Select the form or element and set the designProperties property to add/edit/remove design-time properties.

Solution Model API

A property can be set/removed from a form or an element via the Solution Model:

Code Block
// set design-time prop on a form
var frm = solutionModel.getForm('orders')
frm.putDesignTimeProperty('myprop', 'lemon')
// get the property
var prop = frm.getDesignTimeProperty('myprop')
// remove the property
// same on an element:
var fld = frm.getField('myfield')
fld.putDesignTimeProperty('myprop', 'strawberry')
prop = fld.getDesignTimeProperty('myprop')

JavaScript API (runtime elements)

In scripting, the runtime elements and forms have getters to retrieve the design-time properties:

Code Block
var prop = elements.myLabel.getDesignTimeProperty('myprop')
prop = controller.getDesignTimeProperty('myprop')


Relations, at design-time model associations between two tables by joining on key data providers. At runtime, a relation becomes a context-sensitive programming reference to related data. Thus, relations are simple, but powerful mechanisms to display, edit and search for data from any context. They can be used, not only to model simple database relations, but also to create sophisticated filters and searches.