Table Row (tr) |
---|
| Table Head (th) |
---|
| Method Details |
|
Table Body (tbody) |
---|
id | deleteAllRecords |
---|
class | node |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
deleteAllRecords |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| Boolean |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| deleteAllRecords |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Deletes all records in foundset, resulting in empty foundset. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns Boolean – false incase of related foundset having records and orphans records are not allowed by the relation |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
var success = forms.customer.controller.deleteAllRecords();
|
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
deleteRecord |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| Boolean |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| deleteRecord |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Delete current selected record, deletes mulitple selected records incase the foundset is using multiselect. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns Boolean – false incase of related foundset having records and orphans records are not allowed by the relation |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
var success = forms.customer.controller.deleteRecord();
|
|
|
|
|
Table Body (tbody) |
---|
id | duplicateRecord |
---|
class | node |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
duplicateRecord |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| Boolean |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| duplicateRecord |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Duplicate current record or record at index in the form foundset. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters [location] – boolean true adds the new record as the topmost record, or adds at specified index |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns Boolean – true if succesful |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
forms.customer.controller.duplicateRecord(); //duplicate the current record, adds on top
//forms.customer.controller.duplicateRecord(false); //duplicate the current record, adds at bottom
//forms.customer.controller.duplicateRecord(1,2); //duplicate the first record as second record
|
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| Boolean |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| find |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Start a find request, use the "search" function to perform/exit the find. Make sure the operator and the data (value) are part of the string passed to dataprovider (included inside a pair of quotation marks). Syntax: <dataprovidername> = '<operator>data' Example: if (controller.find()) //find will fail if autosave is disabled and there are unsaved records { columnTextDataProvider = '=a search value'; columnNumberDataProvider = '>=10'; columnDateDataProvider = '>=10-03-2009|dd-MM-yyyy'; controller.search() } |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns Boolean – true if successful, will return false if autosave is disabled and there are unsaved records. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
if (forms.customer.controller.find()) //find will fail if autosave is disabled and there are unsaved records
{
columnTextDataProvider = '=a search value';
columnNumberDataProvider = '>10';
columnDateDataProvider = '>=10-03-2009|dd-MM-yyyy';
forms.customer.controller.search()
}
|
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
focusField |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| void |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| focusField |
Span |
---|
| (fieldName, skipReadonly) |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sets focus to a field specified by its name. If the second parameter is set to true, then readonly fields will be skipped (the focus will be set to the first non-readonly field located after the field with the specified name; the tab sequence is respected when searching for the non-readonly field). |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters {String} fieldName – the name of the field to be focussed {Boolean} skipReadonly – boolean indication to skip read only fields, if the named field happens to be read only |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns void |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
var tabseq = forms.customer.controller.getTabSequence();
if (tabseq.length > 1) {
// If there is more than one field in the tab sequence,
// focus the second one and skip over readonly fields.
forms.customer.controller.focusField(tabseq[1], true);
}
else {
// If there is at most one field in the tab sequence, then focus
// whatever field is first, and don't bother to skip over readonly fields.
forms.customer.controller.focusField(null, false);
}
|
|
|
|
|
Table Body (tbody) |
---|
id | focusFirstField |
---|
class | node |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
focusFirstField |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| void |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| focusFirstField |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sets focus to the first field of the form; based on tab order sequence. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns void |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
forms.customer.controller.focusFirstField();
|
|
|
|
|
Table Body (tbody) |
---|
id | getContainerName |
---|
class | node |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
getContainerName |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| String |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| getContainerName |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Get the name of the window/dialog this form is displayed in. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns String – the name of the window/dialog this form is displayed in. If the form is not showing in a window or dialog (other then main application frame), it returns null. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
var dialogOrWindowName = forms.customer.controller.getContainerName();
if (dialogOrWindowName != null) {
application.closeForm(dialogOrWindowName);
}
|
|
|
|
|
Table Body (tbody) |
---|
id | getDataProviderMaxLength |
---|
class | node |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
getDataProviderMaxLength |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| Number |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| getDataProviderMaxLength |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns the maximum length allowed in the specified dataprovider. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters {String} name – the dataprovider name |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns Number – the length |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
forms.customer.controller.getDataProviderMaxLength('name');
|
|
|
|
|
Table Body (tbody) |
---|
id | getDataProviderValue |
---|
class | node |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
getDataProviderValue |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| Object |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| getDataProviderValue |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Gets a value based on the specified dataprovider name. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters {String} dataProvider – the dataprovider name to retieve the value for |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns Object – the dataprovider value (null if unknown dataprovider) |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
var val = forms.customer.controller.getDataProviderValue('contact_name');
|
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
getDataSource |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| String |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| getDataSource |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Get the used datasource. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns String – the datasource |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
var dataSource = forms.customer.controller.getDataSource();
|
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
getDesignMode |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| Boolean |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| getDesignMode |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns the state of this form designmode. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns Boolean – the design mode state (true/fase) |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
var success = forms.customer.controller.getDesignMode();
|
|
|
|
|
Table Body (tbody) |
---|
id | getFormContext |
---|
class | node |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
getFormContext |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| JSDataSet |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| getFormContext |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Gets the forms context where it resides, returns a dataset of its structure to the main controller. Note: can't be called in onload, because no context is yet available at this time. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns JSDataSet – the dataset with form context |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
var dataset = forms.customer.controller.getFormContext();
if (dataset.getMaxRowIndex() > 1)
{
// form is in a tabpanel
//dataset columns: [containername(1),formname(2),tabpanel or beanname(3),tabname(4),tabindex(5)]
//dataset rows: mainform(1) -> parent(2) -> current form(3) (when 3 forms deep)
var parentFormName = dataset.getValue(1,2)
}
|
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| Number |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| getFormWidth |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Gets the form width in pixels. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns Number – the width in pixels |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
var width = forms.customer.controller.getFormWidth();
|
|
|
|
|
Table Body (tbody) |
---|
id | getMaxRecordIndex |
---|
class | node |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
getMaxRecordIndex |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| Number |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| getMaxRecordIndex |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns the current cached record count of the current foundset. To return the full foundset count, use: databaseManager.getFoundSetCount(...) Tip: get the the table count of all rows in a table, use: databaseManager.getTableCount(...) |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns Number – the max record index |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
for ( var i = 1 ; i <= forms.customer.controller.getMaxRecordIndex() ; i++ )
{
forms.customer.controller.setSelectedIndex(i);
//do some action per record
}
|
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| String |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| getName |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Get the name of this form. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns String – the name |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
var formName = forms.customer.controller.getName();
|
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
getPartHeight |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| Number |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| getPartHeight |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Gets the part height in pixels. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters {Number} partType – The type of the part whose height will be returned. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns Number – the part height in pixels |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
var height = forms.customer.controller.getPartHeight(JSPart.BODY);
|
|
|
|
|
Table Body (tbody) |
---|
id | getPartYOffset |
---|
class | node |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
getPartYOffset |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| Number |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| getPartYOffset |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns the Y offset of a given part of the form. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters {Number} partType – The type of the part whose Y offset will be returned. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns Number – A number holding the Y offset of the specified form part. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
var offset = forms.customer.controller.getPartYOffset(JSPart.BODY);
|
|
|
|
|
Table Body (tbody) |
---|
id | getSelectedIndex |
---|
class | node |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
getSelectedIndex |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| Number |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| getSelectedIndex |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Gets the current record index of the current foundset. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns Number – the index |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
//gets the current record index in the current foundset
var current = forms.customer.controller.getSelectedIndex();
//sets the next record in the foundset, will be reflected in UI
forms.customer.controller.setSelectedIndex(current+1);
|
|
|
|
|
Table Body (tbody) |
---|
id | getTabSequence |
---|
class | node |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
getTabSequence |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| String[] |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| getTabSequence |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Get an array with the names of the components that are part of the tab sequence. The order of the names respects the order of the tab sequence. Components that are not named will not appear in the returned array, although they may be in the tab sequence. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns String[] – array of names |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
var tabseq = forms.customer.controller.getTabSequence();
if (tabseq.length > 1) {
// If there is more than one field in the tab sequence,
// focus the second one and skip over readonly fields.
forms.customer.controller.focusField(tabseq[1], true);
}
else {
// If there is at most one field in the tab sequence, then focus
// whatever field is first, and don't bother to skip over readonly fields.
forms.customer.controller.focusField(null, false);
}
|
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
invertRecords |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| Boolean |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| invertRecords |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Inverts the current foundset against all rows of the current table; all records that are not in the foundset will become the current foundset. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns Boolean – true if successful |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
forms.customer.controller.invertRecords();
|
|
|
|
|
Table Body (tbody) |
---|
id | loadAllRecords |
---|
class | node |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
loadAllRecords |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| Boolean |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| loadAllRecords |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Loads all accessible records from the datasource into the form foundset. When the form contains a related foundset it will be replaced by a default foundset on same datasource. Notes: -the default foundset is always limited by filters, if databaseManager.addFoundSetFilterParam function is used. -typical use is loading the normal foundset again after form usage in a related tabpanel |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns Boolean – true if successful |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
forms.customer.controller.loadAllRecords();
|
|
|
|
|
Table Body (tbody) |
---|
id | loadOmittedRecords |
---|
class | node |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
loadOmittedRecords |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| Boolean |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| loadOmittedRecords |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Loads the records that are currently omitted in the form foundset. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns Boolean – true if successful |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
forms.customer.controller.loadOmittedRecords();
|
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
loadRecords |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| Boolean |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| loadRecords |
Span |
---|
| ([data], [queryArgumentsArray]) |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Load records via a (related) foundset, primary key (dataset/number/uuid) or query into the form. Load records can be used in 5 different ways 1) to load a (related)foundset into the form. the form will no longer share the default foundset with forms of the same datasource, use loadAllRecords to restore the default foundset controller.loadRecords(order_to_orderdetails); 2) to load a primary key dataset, will remove related sort! var dataset = databaseManager.getDataSetByQuery(...); controller.loadRecords(dataset); 3) to load a single record by primary key, will remove related sort! (pk should be a number or UUID) controller.loadRecords(123); or controller.loadRecords(application.getUUID('6b5e2f5d-047e-45b3-80ee-3a32267b1f20')); 4) to reload all last related records again, if for example after a search in related tabpanel controller.loadRecords(); 5) to load records in to the form based on a query (also known as 'Form by query') controller.loadRecords(sqlstring,parameters); limitations/requirements for sqlstring are: -must start with 'select' -the selected columns must be the (Servoy Form) table primary key columns (alphabetically ordered like 'select a_id, b_id,c_id ...') -can contain '?' which are replaced with values from the array supplied to parameters argument if the sqlstring contains an 'order by' clause, the records will be sorted accordingly and additional constraints apply: -must contain 'from' keyword -the 'from' must be a comma separated list of table names -must at least select from the table used in Servoy Form -cannot contain 'group by', 'having' or 'union' -all columns must be fully qualified like 'orders.order_id' |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters [data] – the foundset/pkdataset/singlenNmber_pk/UUIDpk/queryString to load [queryArgumentsArray] – the arguments to replace the questions marks in the queryString |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns Boolean – true if successful |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
//Load records can be used in 5 different ways
//1) to load a (related)foundset into the form.
//the form will no longer share the default foundset with forms of the same datasource, use loadAllRecords to restore the default foundset
//forms.customer.controller.loadRecords(order_to_orderdetails);
//2) to load a primary key dataset, will remove related sort!
//var dataset = databaseManager.getDataSetByQuery(...);
// dataset must match the table primary key columns (alphabetically ordered)
//forms.customer.controller.loadRecords(dataset);
//3) to load a single record by primary key, will remove related sort! (pk should be a number or UUID)
//forms.customer.controller.loadRecords(123);
//forms.customer.controller.loadRecords(application.getUUID('6b5e2f5d-047e-45b3-80ee-3a32267b1f20'));
//4) to reload all last related records again, if for example after a search in related tabpanel
//forms.customer.controller.loadRecords();
//5) to load records in to the form based on a query (also known as 'Form by query')
//forms.customer.controller.loadRecords(sqlstring,parameters);
//limitations/requirements for sqlstring are:
//-must start with 'select'
//-the selected columns must be the (Servoy Form) table primary key columns (alphabetically ordered like 'select a_id, b_id,c_id ...')
//-can contain '?' which are replaced with values from the array supplied to parameters argument
// if the sqlstring contains an 'order by' clause, the records will be sorted accordingly and additional constraints apply:
//-must contain 'from' keyword
//-the 'from' must be a comma separated list of table names
//-must at least select from the table used in Servoy Form
//-cannot contain 'group by', 'having' or 'union'
//-all columns must be fully qualified like 'orders.order_id'
|
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| Boolean |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| newRecord |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Create a new record in the form foundset. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters [location] – boolean true adds the new record as the topmost record, or adds at specified index |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns Boolean – true if succesful |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
// foreign key data is only filled in for equals (=) relation items
forms.customer.controller.newRecord();//default adds on top
//forms.customer.controller.newRecord(false); //adds at bottom
//forms.customer.controller.newRecord(2); //adds as second record
|
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
omitRecord |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| Boolean |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| omitRecord |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Omit current record in form foundset, to be shown with loadOmittedRecords. Note: The omitted records are discarded when these functions are executed: loadAllRecords, loadRecords(dataset), loadRecords(sqlstring), invert |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns Boolean – true if successful |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
var success = forms.customer.controller.omitRecord();
|
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| void |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| print |
Span |
---|
| ([printCurrentRecordOnly], [showPrinterSelectDialog], [printerJob]) |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Print this form with current foundset, without preview. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters [printCurrentRecordOnly] – to print the current record only [showPrinterSelectDialog] – boolean to show the printer select dialog (default printer is normally used) [printerJob] – print to plugin printer job, see pdf printer plugin for example |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns void |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
//print this form (with foundset records)
forms.customer.controller.print();
//print only current record (no printerSelectDialog) to pdf plugin printer
//forms.customer.controller.print(true,false,plugins.pdf_output.getPDFPrinter('c:/temp/out.pdf'));
|
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| String |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| printXML |
Span |
---|
| ([printCurrentRecordOnly]) |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Print this form with current foundset records to xml format. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters [printCurrentRecordOnly] – to print the current record only |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns String – the XML |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
//TIP: see also plugins.file.writeXMLFile(...)
var xml = forms.customer.controller.printXML();
//print only current record
//var xml = forms.customer.controller.printXML(true);
|
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
recreateUI |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| Boolean |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| recreateUI |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Recreates the forms UI components, to reflect the latest solution model. Use this after altering the elements via solutionModel at the JSForm of this form. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns Boolean – true if successful |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
// get the solution model JSForm
var form = solutionModel.getForm("myForm");
// get the JSField of the form
var field = form.getField("myField");
// alter the field
field.x = field.x + 10;
// recreate the runtime forms ui to reflect the changes.
forms.customer.controller.recreateUI();
|
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| void |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| relookup |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Performs a relookup for the current foundset record dataproviders. Lookups are defined in the dataprovider (columns) auto-enter setting and are normally performed over a relation upon record creation. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns void |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
forms.customer.controller.relookup();
|
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| Number |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| search |
Span |
---|
| ([clearLastResults], [reduceSearch]) |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Start the database search and use the results, returns the number of records, make sure you did "find" function first. Note: Omitted records are automatically excluded when performing a search - meaning that the foundset result by default will not include omitted records. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters [clearLastResults] – boolean, clear previous search, default true [reduceSearch] – boolean, reduce (true) or extend (false) previous search results, default true |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns Number – the recordCount |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
var recordCount = forms.customer.controller.search();
//var recordCount = forms.customer.controller.search(false,false); //to extend foundset
|
|
|
|
|
Table Body (tbody) |
---|
id | setDataProviderValue |
---|
class | node |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
setDataProviderValue |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| void |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| setDataProviderValue |
Span |
---|
| (dataprovider, value) |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sets the value based on a specified dataprovider name. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters {String} dataprovider – the dataprovider name to set the value for {Object} value – the value to set in the dataprovider |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns void |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
forms.customer.controller.setDataProviderValue('contact_name','mycompany');
|
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
setDesignMode |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| void |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| setDesignMode |
Span |
---|
| ([ondrag], [ondrop], [onselect], [onresize]) |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sets this form in designmode with param true or one or more methods. return to normal editmode with first parameter false. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters [ondrag] – boolean to indicate the designmode state or onDrag method reference [ondrop] – onDrop method reference [onselect] – onSelect method reference [onresize] – onResize method reference |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns void |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
//Set the current form in designmode with no callbacks
forms.customer.controller.setDesignMode(true);
//Set the current form in designmode with callbacks
forms.customer.controller.setDesignMode(onDragMethod,onDropMethod,onSelectMethod,onResizeMethod);
//Set the current form out of designmode (to normal browse)
forms.customer.controller.setDesignMode(false);
|
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
setPageFormat |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| void |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| setPageFormat |
Span |
---|
| (width, height, leftmargin, rightmargin, topmargin, bottommargin, [orientation], [units]) |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Set the page format to use when printing. Orientation values: 0 - Landscape mode 1 - Portrait mode Units values: 0 - millimeters 1 - inches 2 - pixels Note: The unit specified for width, height and all margins MUST be the same. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters width – the specified width of the page to be printed. height – the specified height of the page to be printed. leftmargin – the specified left margin of the page to be printed. rightmargin – the specified right margin of the page to be printed. topmargin – the specified top margin of the page to be printed. bottommargin – the specified bottom margin of the page to be printed. [orientation] – the specified orientation of the page to be printed; the default is Portrait mode [units] – the specified units for the width and height of the page to be printed; the default is pixels |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns void |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
//Set page format to a custom size of 100x200 pixels with 10 pixel margins on all sides in portrait mode
forms.customer.controller.setPageFormat(100, 200, 10, 10, 10, 10);
//Set page format to a custom size of 100x200 mm in landscape mode
forms.customer.controller.setPageFormat(100, 200, 0, 0, 0, 0, 0, 0);
//Set page format to a custom size of 100x200 inch in portrait mode
forms.customer.controller.setPageFormat(100, 200, 0, 0, 0, 0, 1, 1);
|
|
|
|
|
Table Body (tbody) |
---|
id | setPreferredPrinter |
---|
class | node |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
setPreferredPrinter |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| void |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| setPreferredPrinter |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Set the preferred printer name to use when printing. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters {String} printerName – The name of the printer to be used when printing. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns void |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
forms.customer.controller.setPreferredPrinter('HP Laser 2200');
|
|
|
|
|
Table Body (tbody) |
---|
id | setSelectedIndex |
---|
class | node |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
setSelectedIndex |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| void |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| setSelectedIndex |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sets the current record index of the current foundset. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters {Number} index – the index to select |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns void |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
//gets the current record index in the current foundset
var current = forms.customer.controller.getSelectedIndex();
//sets the next record in the foundset, will be reflected in UI
forms.customer.controller.setSelectedIndex(current+1);
|
|
|
|
|
Table Body (tbody) |
---|
id | setTabSequence |
---|
class | node |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
setTabSequence |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| void |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| setTabSequence |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Set the tab order sequence programatically, by passing the elements references in a javascript array. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters {Object[]} arrayOfElements – array containing the element references |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns void |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
forms.customer.controller.setTabSequence([forms.customer.elements.fld_order_id, forms.customer.elements.fld_order_amount]);
|
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| void |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| show |
Span |
---|
| ([dialogName/windowName], [modal]) |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Shows the form (makes the form visible), optionally shown in the specified dialog (modal or not)/window. This function does not affect the form foundset in any way. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters [dialogName/windowName] – the dialog/window name [modal] – boolean indicating modality for dialogs or null if it should use a window; default value is false. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns void |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
//show the form in the current window/dialog
forms.customer.controller.show();
//show the form in the named modal dialog
//forms.customer.controller.show('mydialog',true);
//show the form in a named window
//forms.customer.controller.show('mywindow',null);
|
|
|
|
|
Table Body (tbody) |
---|
id | showPrintPreview |
---|
class | node |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
showPrintPreview |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| void |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| showPrintPreview |
Span |
---|
| ([printCurrentRecordOnly], [printerJob], [zoomFactor]) |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Show this form in print preview. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters [printCurrentRecordOnly] – to print the current record only [printerJob] – print to plugin printer job, see pdf printer plugin for example (incase print is used from printpreview) [zoomFactor] – a specified number value from 10-400 |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns void |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
//shows this form (with foundset records) in print preview
forms.customer.controller.showPrintPreview();
//to print preview current record only
//forms.customer.controller.showPrintPreview(true);
//to print preview current record only with 125% zoom factor;
//forms.customer.controller.showPrintPreview(true, null, 125);
|
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
showRecords |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| void |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| showRecords |
Span |
---|
| (data, [dialogName/windowName], [modal]) |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Load data into the form and shows the form, is a shortcut for the functions 'loadRecords' and 'show'. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters data – the foundset/pkdataset/singlenNmber_pk/UUIDpk to load before showing the form [dialogName/windowName] – the dialog/window name [modal] – boolean indicating modality for dialogs or null if it should use a window; default value is false |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns void |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
forms.customer.controller.showRecords(foundset);
//show the form in the named modal dialog
//forms.customer.controller.show(foundset, 'mydialog', true);
//show the form in the named window
//forms.customer.controller.show(foundset, 'mywindow', null);
|
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| void |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| sort |
Span |
---|
| (sortString, [defer]) |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sorts the form foundset based on the given sort string. TIP: You can use the Copy button in the developer Select Sorting Fields dialog to get the needed syntax string for the desired sort fields/order. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters sortString – the specified columns (and sort order) [defer] – the "sortString" will be just stored, without performing a query on the database (the actual sorting will be deferred until the next data loading action). |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns void |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
forms.customer.controller.sort('columnA desc,columnB asc');
|
|
|
|
|
Table Body (tbody) |
---|
| Table Row (tr) |
---|
| Table Cell (td) |
---|
sortDialog |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Span |
---|
style | float: left; margin-right: 5px; |
---|
| void |
Span |
---|
style | float: left; font-weight: bold; |
---|
id | iets |
---|
| sortDialog |
|
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Show the sort dialog to the user a preselection sortString can be passed, to sort the form foundset. TIP: You can use the Copy button in the developer Select Sorting Fields dialog to get the needed syntax string for the desired sort fields/order. |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Parameters [sortString] – the specified columns (and sort order) |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Returns void |
|
Table Row (tr) |
---|
| Table Cell (td) |
---|
Sample
Div |
---|
| Code Block |
---|
|
forms.customer.controller.sortDialog('columnA desc,columnB asc');
|
|
|
|
|
|