Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
{div:style=display:none} DO NOT EDIT THE CONTENT OF THIS PAGE DIRECTLY (EXCEPT INSIDE THE DIV BELOW WITH ID=DESCRIPTION), UNLESS YOU KNOW WHAT YOU'RE DOING. THE STRUCTURE OF THE CONTENT IS VITAL IN BEING ABLE TO AUTO UPDATE THE CONTENT THROUGH THE DOC GENERATOR.\\ \\ Enter additional information related to this 'class' inside the \{div} macro with 'id=description'{div} {div:id=description}{div}\\ {table:id=|class=servoy sReturnTypes}{tr:style=height: 30px;}{th}Return Types{th}{tr}{tr}{td}{span:class=sWordList}[DRAGNDROP]{span}{span:class=sWordList}[JSDNDEvent]{span}{span:class=sWordList}[JSEvent]{span}{span:class=sWordList}[JSRenderEvent]{span}{span:class=sWordList}[JSWindow]{span}{span:class=sWordList}[APPLICATION_TYPES]{span}{span:class=sWordList}[CLIENTDESIGN]{span}{span:class=sWordList}[ELEMENT_TYPES]{span}{span:class=sWordList}[LOGGINGLEVEL]{span}{span:class=sWordList}[UICONSTANTS]{span}{span:class=sWordList}[WEBCONSTANTS]{span}{span:class=sWordList}[Renderable]{span}{span:class=sWordList}[UUID]{span}{td}{tr}{table}\\ {table:id=|class=servoy sSummary}{colgroup}{column:width=80px|padding=0px}{column}{column}{column}{colgroup}{tr:style=height: 30px;}{th:colspan=2}Method Summary{th}{tr}{tbody}{tr}{td}void{td}{td}[#addClientInfo]\(info) Adds a string of client information which gets stored on the server, and can be viewed on the Clients page of Servoy Server Administration Console.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#beep]\() Produces a "beep" sound; commonly used to indicate an error or warning dialog.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#closeAllWindows]\() Close all visible windows (except main application window).{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#closeSolution]\() Closes the currently open solution and optionally opens another solution, calling a specified global method with the specified arguments.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#closeSolution]\(solutionToLoad) Closes the currently open solution and optionally opens another solution, calling a specified global method with the specified arguments.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#closeSolution]\(solutionToLoad, methodName) Closes the currently open solution and optionally opens another solution, calling a specified global method with the specified arguments.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#closeSolution]\(solutionToLoad, methodName, methodArgument) Closes the currently open solution and optionally opens another solution, calling a specified global method with the specified arguments.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#createNewFormInstance]\(designFormName, newInstanceScriptName) Create a new form instance.{td}{tr}{tbody}{tbody}{tr}{td}[JSWindow]{td}{td}[#createWindow]\(windowName, type) Creates a new window that can be used for displaying forms.{td}{tr}{tbody}{tbody}{tr}{td}[JSWindow]{td}{td}[#createWindow]\(windowName, type, parentWindow) Creates a new window that can be used for displaying forms.{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#executeProgram]\(program) Execute a program and returns output.{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#executeProgram]\(program, params) Execute a program and returns output.{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#executeProgram]\(program, params, environmentVars) Execute a program and returns output.{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#executeProgram]\(program, params, environmentVars, startDir) Execute a program and returns output.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#executeProgramInBackground]\(program) Execute a program in the background.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#executeProgramInBackground]\(program, params) Execute a program in the background.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#executeProgramInBackground]\(program, params, environmentVars) Execute a program in the background.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#executeProgramInBackground]\(program, params, environmentVars, startDir) Execute a program in the background.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#exit]\() Stop and exit application.{td}{tr}{tbody}{tbody}{tr}{td}[Number]{td}{td}[#getActiveClientCount]\(currentSolutionOnly) Get the active user count on the server (can be limited to current solution).{td}{tr}{tbody}{tbody}{tr}{td}[JSWindow]{td}{td}[#getActiveWindow]\() This gets the currently focused active window; this can be the main application window or a modal dialog.{td}{tr}{tbody}{tbody}{tr}{td}[Number]{td}{td}[#getApplicationType]\() Get the application type.{td}{tr}{tbody}{tbody}{tr}{td}[Number]{td}{td}[#getClientCountForInfo]\(info) Gets the count for all clients displaying the same additional information in the Clients page of Servoy Server Administration Console.{td}{tr}{tbody}{tbody}{tr}{td}[Object]{td}{td}[#getClientProperty]\(name) Sets a UI property.{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#getClipboardString]\() Gets a string from the clipboard, null if not a string or empty.{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#getCurrentLookAndFeelName]\() Gets the name of the current Look And Feel specified in Application Preferences.{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#getHostName]\() Get the name of the localhost.{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#getIPAddress]\() Get the clients' IP address.{td}{tr}{tbody}{tbody}{tr}{td}[String]\[]{td}{td}[#getLicenseNames]\() Get the names of the used client licenses (as strings in array).{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#getOSName]\() Returns the name of the operating system.{td}{tr}{tbody}{tbody}{tr}{td}[String]\[]{td}{td}[#getPrinters]\() Get all the printer names in an array.{td}{tr}{tbody}{tbody}{tr}{td}[Number]{td}{td}[#getScreenHeight]\() Get the screen height in pixels.{td}{tr}{tbody}{tbody}{tr}{td}[Number]{td}{td}[#getScreenWidth]\() Get the screen width in pixels.{td}{tr}{tbody}{tbody}{tr}{td}[Date]{td}{td}[#getServerTimeStamp]\() Returns a date object initialized on server with current date and time.{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#getServerURL]\() Gets the HTTP server url.{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#getSolutionName]\() Returns the name of the current solution.{td}{tr}{tbody}{tbody}{tr}{td}[Number]{td}{td}[#getSolutionRelease]\() Get the solution release number.{td}{tr}{tbody}{tbody}{tr}{td}[Date]{td}{td}[#getTimeStamp]\() Returns a date object initialized in client with current date and time.{td}{tr}{tbody}{tbody}{tr}{td}[UUID]{td}{td}[#getUUID]\() Get a new UUID object (also known as GUID) or convert the parameter (that can be string or byte array) to an UUID object.{td}{tr}{tbody}{tbody}{tr}{td}[UUID]{td}{td}[#getUUID]\(byteArray) Get a new UUID object (also known as GUID) or convert the parameter (that can be string or byte array) to an UUID object.{td}{tr}{tbody}{tbody}{tr}{td}[UUID]{td}{td}[#getUUID]\(uuidString) Get a new UUID object (also known as GUID) or convert the parameter (that can be string or byte array) to an UUID object.{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#getUserProperty]\(name) Get a persistent user property.{td}{tr}{tbody}{tbody}{tr}{td}[String]\[]{td}{td}[#getUserPropertyNames]\() Get all persistent user property names.{td}{tr}{tbody}{tbody}{tr}{td}[Array]{td}{td}[#getValueListArray]\(name) Retrieve a valuelist as array, to get real\-values for display\-values.{td}{tr}{tbody}{tbody}{tr}{td}[Object]{td}{td}[#getValueListDisplayValue]\(name, realValue) Retrieve a valuelist display\-value for a real\-value.{td}{tr}{tbody}{tbody}{tr}{td}[JSDataSet]{td}{td}[#getValueListItems]\(name) Get all values from a custom or database type value list as dataset (with columns displayValue,realValue).{td}{tr}{tbody}{tbody}{tr}{td}[String]\[]{td}{td}[#getValueListNames]\() Get all the valuelist names as array.{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#getVersion]\() Returns the application version.{td}{tr}{tbody}{tbody}{tr}{td}[JSWindow]{td}{td}[#getWindow]\() Get the main application window.{td}{tr}{tbody}{tbody}{tr}{td}[JSWindow]{td}{td}[#getWindow]\(name) Get a window by window name.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#isInDeveloper]\() Returns true if the solution is running in the developer.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#isLastPrintPreviewPrinted]\() Check if the last printpreview did print.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#output]\(msg) Output something on the out stream.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#output]\(msg, level) Output something on the out stream.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#overrideStyle]\(originalStyleName, newStyleName) Overrides one style (defined in in a form) with another.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#playSound]\(url) Play a sound (AU file, an AIFF file, a WAV file, and a MIDI file).{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#putClientProperty]\(name, value) Sets a UI property.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#redo]\() Redo last action (if possible).{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#removeAllClientInfo]\() Removes all names given to the client via the admin page.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#removeClientInfo]\(info) Removes a string of client information which is stored on the server and previously was added using the application.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#setClipboardContent]\(string) Sets a string object in the clipboard.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#setNumpadEnterAsFocusNextEnabled]\(enabled) Set if numpad enter should behave like focus next.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#setStatusText]\(text) Set the status area value.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#setStatusText]\(text, tooltip) Set the status area value.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#setToolbarVisible]\(name, visible) Make a toolbar visible or invisible.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#setUserProperty]\(name, value) Set a persistent user property.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#setValueListItems]\(name, dataset) Fill a custom type valuelist with values from array(s) or dataset.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#setValueListItems]\(name, dataset, autoconvert) Fill a custom type valuelist with values from array(s) or dataset.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#setValueListItems]\(name, displayValues) Fill a custom type valuelist with values from array(s) or dataset.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#setValueListItems]\(name, displayValues, autoconvert) Fill a custom type valuelist with values from array(s) or dataset.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#setValueListItems]\(name, displayValues, realValues) Fill a custom type valuelist with values from array(s) or dataset.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#setValueListItems]\(name, displayValues, realValues, autoconvert) Fill a custom type valuelist with values from array(s) or dataset.{td}{tr}{tbody}{tbody}{tr}{td}[Date]{td}{td}[#showCalendar]\() Show the calendar, returns selected date or null if canceled.{td}{tr}{tbody}{tbody}{tr}{td}[Date]{td}{td}[#showCalendar]\(dateFormat) Show the calendar, returns selected date or null if canceled.{td}{tr}{tbody}{tbody}{tr}{td}[Date]{td}{td}[#showCalendar]\(selectedDate) Show the calendar, returns selected date or null if canceled.{td}{tr}{tbody}{tbody}{tr}{td}[Date]{td}{td}[#showCalendar]\(selectedDate, dateFormat) Show the calendar, returns selected date or null if canceled.{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#showColorChooser]\() Show the colorChooser.{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#showColorChooser]\(colorString) Show the colorChooser.{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#showFontChooser]\() Show the font chooser dialog.{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#showFontChooser]\(defaultFont) Show the font chooser dialog.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#showForm]\(form) Show the form specified by the parameter, that can be a name (is case sensitive!) or a form object.{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#showI18NDialog]\() Opens the i18n dialog so users can change translations.{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#showI18NDialog]\(keyToSelect) Opens the i18n dialog so users can change translations.{td}{tr}{tbody}{tbody}{tr}{td}[String]{td}{td}[#showI18NDialog]\(keyToSelect, languageToSelect) Opens the i18n dialog so users can change translations.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#showURL]\(url) Shows an URL in a browser.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#showURL]\(url, webclientTarget) Shows an URL in a browser.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#showURL]\(url, webclientTarget, timeout) Shows an URL in a browser.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#showURL]\(url, webclientTarget, webclientTargetOptions) Shows an URL in a browser.{td}{tr}{tbody}{tbody}{tr}{td}[Boolean]{td}{td}[#showURL]\(url, webclientTarget, webclientTargetOptions, timeout) Shows an URL in a browser.{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#sleep]\(ms) Sleep for specified time (in milliseconds).{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#undo]\() Undo last action (if possible).{td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#updateUI]\(){td}{tr}{tbody}{tbody}{tr}{td}void{td}{td}[#updateUI]\(milliseconds){td}{tr}{tbody}{table}\\ {table:id=function|class=servoy sDetail}{colgroup}{column:width=100%|padding=0px}{column}{colgroup}{tr:style=height: 30px;}{th:colspan=1}Method Details{th}{tr}{tbody:id=addClientInfo-String}{tr:id=name}{td}h6.addClientInfo{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}addClientInfo{span}{span}\(info){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Adds a string of client information which gets stored on the server, and can be viewed on the Clients page of Servoy Server Administration Console. The new piece of client information is added on behalf of the running Servoy client. This function can be called more than once, if you want to add multiple lines of client information. NOTE: This function can also be used with the function <em>getClientCountForInfo</em> to count the number of clients with matching addditional client information.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} info -- A line of text to be added as additional client information on behalf of the running Servoy client. {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} application.addClientInfo('SaaS company name'); application.addClientInfo('For any issues call +31-SA-AS'); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=beep}{tr:id=name}{td}h6.beep{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}beep{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Produces a "beep" sound; commonly used to indicate an error or warning dialog.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} application.beep(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=closeAllWindows}{tr:id=name}{td}h6.closeAllWindows{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Boolean]{span}{span:style=font-weight: bold;}closeAllWindows{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Close all visible windows (except main application window). Returns true if operation was successful.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Boolean] -- Boolean true if all windows were closed and false otherwise.{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var win = application.createWindow("aWindowName", JSWindow.WINDOW, null); win.setInitialBounds(10, 10, 300, 300); win.title = "This is a window"; controller.show(win); var win2 = application.createWindow("anotherWindowName", JSWindow.WINDOW, null); win2.setInitialBounds(100, 100, 300, 300); win2.title = "This is another window"; controller.show(win2); var qdialog = plugins.dialogs.showQuestionDialog("QuestionDialog","Do you want to close the windows?","Yes","No"); if (qdialog == "Yes") { application.closeAllWindows(); controller.show(null); } {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=closeSolution}{tr:id=name}{td}h6.closeSolution{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}closeSolution{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Closes the currently open solution and optionally opens another solution, calling a specified global method with the specified arguments. If the user has been logged in, this function keeps the user logged in and in the newly open solution, the login is skipped and the solution goes straight to the first form. If you want to go to a different url, you need to call application.showURL(url) before calling application.closeSolution() (this is only applicable for Web Client). An alternative option is security.logout() which also does a log out for the user (for solutions that require authentication).{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} //application.showURL('http://www.servoy.com', '_self'); //Web Client only application.closeSolution(); //close current solution, open solution 'solution_name', call global method 'global_method_name' with argument 'my_argument'. //if the user has been logged in, he will stay logged in //application.closeSolution('solution_name','global_method_name','my_argument'); //Note: specifying a solution will not work in the Developer due to debugger dependencies //specified solution should be of compatible type with client (normal type or client specific(Smart client only/Web client only) type ) {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=closeSolution-String}{tr:id=name}{td}h6.closeSolution{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}closeSolution{span}{span}\(solutionToLoad){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Closes the currently open solution and optionally opens another solution, calling a specified global method with the specified arguments. If the user has been logged in, this function keeps the user logged in and in the newly open solution, the login is skipped and the solution goes straight to the first form. If you want to go to a different url, you need to call application.showURL(url) before calling application.closeSolution() (this is only applicable for Web Client). An alternative option is security.logout() which also does a log out for the user (for solutions that require authentication).{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} solutionToLoad -- Name of the solution to load {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} //application.showURL('http://www.servoy.com', '_self'); //Web Client only application.closeSolution(); //close current solution, open solution 'solution_name', call global method 'global_method_name' with argument 'my_argument'. //if the user has been logged in, he will stay logged in //application.closeSolution('solution_name','global_method_name','my_argument'); //Note: specifying a solution will not work in the Developer due to debugger dependencies //specified solution should be of compatible type with client (normal type or client specific(Smart client only/Web client only) type ) {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=closeSolution-String_String}{tr:id=name}{td}h6.closeSolution{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}closeSolution{span}{span}\(solutionToLoad, methodName){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Closes the currently open solution and optionally opens another solution, calling a specified global method with the specified arguments. If the user has been logged in, this function keeps the user logged in and in the newly open solution, the login is skipped and the solution goes straight to the first form. If you want to go to a different url, you need to call application.showURL(url) before calling application.closeSolution() (this is only applicable for Web Client). An alternative option is security.logout() which also does a log out for the user (for solutions that require authentication).{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} solutionToLoad -- Name of the solution to load \{[String]} methodName -- Name of the global method to call {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} //application.showURL('http://www.servoy.com', '_self'); //Web Client only application.closeSolution(); //close current solution, open solution 'solution_name', call global method 'global_method_name' with argument 'my_argument'. //if the user has been logged in, he will stay logged in //application.closeSolution('solution_name','global_method_name','my_argument'); //Note: specifying a solution will not work in the Developer due to debugger dependencies //specified solution should be of compatible type with client (normal type or client specific(Smart client only/Web client only) type ) {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=closeSolution-String_String_Object}{tr:id=name}{td}h6.closeSolution{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}closeSolution{span}{span}\(solutionToLoad, methodName, methodArgument){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Closes the currently open solution and optionally opens another solution, calling a specified global method with the specified arguments. If the user has been logged in, this function keeps the user logged in and in the newly open solution, the login is skipped and the solution goes straight to the first form. If you want to go to a different url, you need to call application.showURL(url) before calling application.closeSolution() (this is only applicable for Web Client). An alternative option is security.logout() which also does a log out for the user (for solutions that require authentication).{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} solutionToLoad -- Name of the solution to load \{[String]} methodName -- Name of the global method to call \{[Object]} methodArgument -- Argument passed to the global method {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} //application.showURL('http://www.servoy.com', '_self'); //Web Client only application.closeSolution(); //close current solution, open solution 'solution_name', call global method 'global_method_name' with argument 'my_argument'. //if the user has been logged in, he will stay logged in //application.closeSolution('solution_name','global_method_name','my_argument'); //Note: specifying a solution will not work in the Developer due to debugger dependencies //specified solution should be of compatible type with client (normal type or client specific(Smart client only/Web client only) type ) {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=createNewFormInstance-String_String}{tr:id=name}{td}h6.createNewFormInstance{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Boolean]{span}{span:style=font-weight: bold;}createNewFormInstance{span}{span}\(designFormName, newInstanceScriptName){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Create a new form instance.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} designFormName -- Name of the design form \{[String]} newInstanceScriptName -- Name of the new form instance {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Boolean] -- Boolean (true) if the instance was created succesfully, (false) otherwise{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var ok = application.createNewFormInstance('orders','orders_view'); if (ok) { var dialog = application.createWindow("myDialog", JSWindow.DIALOG); dialog.show('orders_view') //forms['orders_view'].controller.show() //forms.xyz.elements.myTabPanel.addTab(forms['orders_view']) //forms['orders_view'].elements.mylabel.setLocation(10,20) } {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=createWindow-String_Number}{tr:id=name}{td}h6.createWindow{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[JSWindow]{span}{span:style=font-weight: bold;}createWindow{span}{span}\(windowName, type){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Creates a new window that can be used for displaying forms. Initially the window is not visible. If there is already a window with the given name, it will be closed and destroyed prior to creating the new window. Use the form controller show() and showRecords() methods in order to show a form in this window.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} windowName -- the name of the window. \{[Number]} type -- the type of the window. Can be one of JSWindow.DIALOG, JSWindow.MODAL\_DIALOG, JSWindow.WINDOW. {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[JSWindow] -- the newly created window.{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} // create and show a window, with specified title, initial location and size // type of the window can be one of JSWindow.DIALOG, JSWindow.MODAL_DIALOG, JSWindow.WINDOW // If parentWindow is not specified, the current window will be used as parent; parentWindow parameter is only used by dialogs var win = application.createWindow("windowName", JSWindow.WINDOW); win.setInitialBounds(10, 10, 300, 300); win.title = "This is a window"; controller.show(win); // create and show a non-modal dialog with default initial bounds/title var nmd = application.createWindow("nonModalDialogName", JSWindow.DIALOG); controller.showRecords(15, nmd); // 15 is a single-number pk in this case {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=createWindow-String_Number_JSWindow}{tr:id=name}{td}h6.createWindow{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[JSWindow]{span}{span:style=font-weight: bold;}createWindow{span}{span}\(windowName, type, parentWindow){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Creates a new window that can be used for displaying forms. Initially the window is not visible. If there is already a window with the given name, it will be closed and destroyed prior to creating the new window. Use the form controller show() and showRecords() methods in order to show a form in this window.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} windowName -- the name of the window. \{[Number]} type -- the type of the window. Can be one of JSWindow.DIALOG, JSWindow.MODAL\_DIALOG, JSWindow.WINDOW. \{[JSWindow]} parentWindow -- the parent JSWindow object. If it is not specified, the current window will be used as parent. This parameter is only used by dialogs. {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[JSWindow] -- the newly created window.{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} // create and show a window, with specified title, initial location and size var win = application.createWindow("windowName", JSWindow.WINDOW); win.setInitialBounds(10, 10, 300, 300); win.title = "This is a window"; controller.show(win); // create and show a non-modal dialog with default initial bounds/title var nmd = application.createWindow("nonModalDialogName", JSWindow.DIALOG); controller.showRecords(15, nmd); // 15 is a single-number pk in this case {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=executeProgram-String}{tr:id=name}{td}h6.executeProgram{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]{span}{span:style=font-weight: bold;}executeProgram{span}{span}\(program){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Execute a program and returns output. Specify the cmd as you would do in a console.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} program -- (fullpath) of the program to execute {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String] -- The output generated by the program execution.{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} // For Windows systems: // Runs a binary located in the user's home directory. The application will run in the current working // directory, which in general is the one where Servoy was started from. application.executeProgram("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"]); // The same as above, but run the application in the user's home directory. application.executeProgram("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"], null, "c:\\Users\\myself\\"); // The same as above, but also set an environment variable for the called program. application.executeProgram("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"], ["MY_ENV_VAR=something"], "c:\\Users\\myself\\"); // For non-Windows systems: application.executeProgram("/home/myself/myapp", ["arg1", "arg2", "arg3"]); application.executeProgram("/home/myself/myapp", ["arg1", "arg2", "arg3"], null, "/home/myself/"); application.executeProgram("/home/myself/myapp", ["arg1", "arg2", "arg3"], ["MY_ENV_VAR=something"], "/home/myself/"); // Open a file with the default application associated with it. (on Windows) application.executeProgram("rundll32.exe", ["url.dll,FileProtocolHandler", "filename"]); // Open a file with the default application associated with it. (on Linux) application.executeProgram("xdg-open", ["filename"]); // Open a file with the default application associated with it. (on MacOS) application.executeProgram("open", ["filename"]); // Open a file with a specific application (on MacOS). application.executeProgram("open", ["-a", "OpenOffice.org.app", "filename.doc"]); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=executeProgram-String_StringArray}{tr:id=name}{td}h6.executeProgram{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]{span}{span:style=font-weight: bold;}executeProgram{span}{span}\(program, params){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Execute a program and returns output. Specify the cmd as you would do in a console.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} program -- (fullpath) of the program to execute \{[String]\[]} params -- an array of strings as program arguments {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String] -- The output generated by the program execution.{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} // For Windows systems: // Runs a binary located in the user's home directory. The application will run in the current working // directory, which in general is the one where Servoy was started from. application.executeProgram("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"]); // The same as above, but run the application in the user's home directory. application.executeProgram("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"], null, "c:\\Users\\myself\\"); // The same as above, but also set an environment variable for the called program. application.executeProgram("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"], ["MY_ENV_VAR=something"], "c:\\Users\\myself\\"); // For non-Windows systems: application.executeProgram("/home/myself/myapp", ["arg1", "arg2", "arg3"]); application.executeProgram("/home/myself/myapp", ["arg1", "arg2", "arg3"], null, "/home/myself/"); application.executeProgram("/home/myself/myapp", ["arg1", "arg2", "arg3"], ["MY_ENV_VAR=something"], "/home/myself/"); // Open a file with the default application associated with it. (on Windows) application.executeProgram("rundll32.exe", ["url.dll,FileProtocolHandler", "filename"]); // Open a file with the default application associated with it. (on Linux) application.executeProgram("xdg-open", ["filename"]); // Open a file with the default application associated with it. (on MacOS) application.executeProgram("open", ["filename"]); // Open a file with a specific application (on MacOS). application.executeProgram("open", ["-a", "OpenOffice.org.app", "filename.doc"]); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=executeProgram-String_StringArray_StringArray}{tr:id=name}{td}h6.executeProgram{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]{span}{span:style=font-weight: bold;}executeProgram{span}{span}\(program, params, environmentVars){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Execute a program and returns output. Specify the cmd as you would do in a console.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} program -- (fullpath) of the program to execute \{[String]\[]} params -- an array of strings as program arguments \{[String]\[]} environmentVars -- array of strings, each element of which has environment variable settings in the format name=value, or null if the subprocess should inherit the environment of the current process. {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String] -- The output generated by the program execution.{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} // For Windows systems: // Runs a binary located in the user's home directory. The application will run in the current working // directory, which in general is the one where Servoy was started from. application.executeProgram("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"]); // The same as above, but run the application in the user's home directory. application.executeProgram("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"], null, "c:\\Users\\myself\\"); // The same as above, but also set an environment variable for the called program. application.executeProgram("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"], ["MY_ENV_VAR=something"], "c:\\Users\\myself\\"); // For non-Windows systems: application.executeProgram("/home/myself/myapp", ["arg1", "arg2", "arg3"]); application.executeProgram("/home/myself/myapp", ["arg1", "arg2", "arg3"], null, "/home/myself/"); application.executeProgram("/home/myself/myapp", ["arg1", "arg2", "arg3"], ["MY_ENV_VAR=something"], "/home/myself/"); // Open a file with the default application associated with it. (on Windows) application.executeProgram("rundll32.exe", ["url.dll,FileProtocolHandler", "filename"]); // Open a file with the default application associated with it. (on Linux) application.executeProgram("xdg-open", ["filename"]); // Open a file with the default application associated with it. (on MacOS) application.executeProgram("open", ["filename"]); // Open a file with a specific application (on MacOS). application.executeProgram("open", ["-a", "OpenOffice.org.app", "filename.doc"]); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=executeProgram-String_StringArray_StringArray_String}{tr:id=name}{td}h6.executeProgram{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]{span}{span:style=font-weight: bold;}executeProgram{span}{span}\(program, params, environmentVars, startDir){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Execute a program and returns output. Specify the cmd as you would do in a console.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} program -- (fullpath) of the program to execute \{[String]\[]} params -- an array of strings as program arguments \{[String]\[]} environmentVars -- array of strings, each element of which has environment variable settings in the format name=value, or null if the subprocess should inherit the environment of the current process. \{[String]} startDir -- the working directory of the subprocess, or null if the subprocess should inherit the working directory of the current process. {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String] -- The output generated by the program execution.{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} // For Windows systems: // Runs a binary located in the user's home directory. The application will run in the current working // directory, which in general is the one where Servoy was started from. application.executeProgram("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"]); // The same as above, but run the application in the user's home directory. application.executeProgram("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"], null, "c:\\Users\\myself\\"); // The same as above, but also set an environment variable for the called program. application.executeProgram("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"], ["MY_ENV_VAR=something"], "c:\\Users\\myself\\"); // For non-Windows systems: application.executeProgram("/home/myself/myapp", ["arg1", "arg2", "arg3"]); application.executeProgram("/home/myself/myapp", ["arg1", "arg2", "arg3"], null, "/home/myself/"); application.executeProgram("/home/myself/myapp", ["arg1", "arg2", "arg3"], ["MY_ENV_VAR=something"], "/home/myself/"); // Open a file with the default application associated with it. (on Windows) application.executeProgram("rundll32.exe", ["url.dll,FileProtocolHandler", "filename"]); // Open a file with the default application associated with it. (on Linux) application.executeProgram("xdg-open", ["filename"]); // Open a file with the default application associated with it. (on MacOS) application.executeProgram("open", ["filename"]); // Open a file with a specific application (on MacOS). application.executeProgram("open", ["-a", "OpenOffice.org.app", "filename.doc"]); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=executeProgramInBackground-String}{tr:id=name}{td}h6.executeProgramInBackground{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}executeProgramInBackground{span}{span}\(program){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Execute a program in the background. Specify the cmd as you would do in a console.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} program -- (fullpath) of the program to execute {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} // For Windows systems: // Runs a binary located in the user's home directory. The application will run in the current working // directory, which in general is the one where Servoy was started from. application.executeProgramInBackground("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"]); // The same as above, but run the application in the user's home directory. application.executeProgramInBackground("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"], null, "c:\\Users\\myself\\"); // The same as above, but also set an environment variable for the called program. application.executeProgramInBackground("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"], ["MY_ENV_VAR=something"], "c:\\Users\\myself\\"); // For non-Windows systems: application.executeProgramInBackground("/home/myself/myapp", ["arg1", "arg2", "arg3"]); application.executeProgramInBackground("/home/myself/myapp", ["arg1", "arg2", "arg3"], null, "/home/myself/"); application.executeProgramInBackground("/home/myself/myapp", ["arg1", "arg2", "arg3"], ["MY_ENV_VAR=something"], "/home/myself/"); // Open a file with the default application associated with it. (on Windows) application.executeProgramInBackground("rundll32.exe", ["url.dll,FileProtocolHandler", "filename"]); // Open a file with the default application associated with it. (on Linux) application.executeProgramInBackground("xdg-open", ["filename"]); // Open a file with the default application associated with it. (on MacOS) application.executeProgramInBackground("open", ["filename"]); // Open a file with a specific application (on MacOS). application.executeProgram("open", ["-a", "OpenOffice.org.app", "filename.doc"]); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=executeProgramInBackground-String_StringArray}{tr:id=name}{td}h6.executeProgramInBackground{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}executeProgramInBackground{span}{span}\(program, params){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Execute a program in the background. Specify the cmd as you would do in a console.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} program -- (fullpath) of the program to execute \{[String]\[]} params -- an array of strings as program arguments {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} // For Windows systems: // Runs a binary located in the user's home directory. The application will run in the current working // directory, which in general is the one where Servoy was started from. application.executeProgramInBackground("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"]); // The same as above, but run the application in the user's home directory. application.executeProgramInBackground("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"], null, "c:\\Users\\myself\\"); // The same as above, but also set an environment variable for the called program. application.executeProgramInBackground("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"], ["MY_ENV_VAR=something"], "c:\\Users\\myself\\"); // For non-Windows systems: application.executeProgramInBackground("/home/myself/myapp", ["arg1", "arg2", "arg3"]); application.executeProgramInBackground("/home/myself/myapp", ["arg1", "arg2", "arg3"], null, "/home/myself/"); application.executeProgramInBackground("/home/myself/myapp", ["arg1", "arg2", "arg3"], ["MY_ENV_VAR=something"], "/home/myself/"); // Open a file with the default application associated with it. (on Windows) application.executeProgramInBackground("rundll32.exe", ["url.dll,FileProtocolHandler", "filename"]); // Open a file with the default application associated with it. (on Linux) application.executeProgramInBackground("xdg-open", ["filename"]); // Open a file with the default application associated with it. (on MacOS) application.executeProgramInBackground("open", ["filename"]); // Open a file with a specific application (on MacOS). application.executeProgram("open", ["-a", "OpenOffice.org.app", "filename.doc"]); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=executeProgramInBackground-String_StringArray_StringArray}{tr:id=name}{td}h6.executeProgramInBackground{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}executeProgramInBackground{span}{span}\(program, params, environmentVars){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Execute a program in the background. Specify the cmd as you would do in a console.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} program -- (fullpath) of the program to execute \{[String]\[]} params -- an array of strings as program arguments \{[String]\[]} environmentVars -- array of strings, each element of which has environment variable settings in the format name=value, or null if the subprocess should inherit the environment of the current process. {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} // For Windows systems: // Runs a binary located in the user's home directory. The application will run in the current working // directory, which in general is the one where Servoy was started from. application.executeProgramInBackground("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"]); // The same as above, but run the application in the user's home directory. application.executeProgramInBackground("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"], null, "c:\\Users\\myself\\"); // The same as above, but also set an environment variable for the called program. application.executeProgramInBackground("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"], ["MY_ENV_VAR=something"], "c:\\Users\\myself\\"); // For non-Windows systems: application.executeProgramInBackground("/home/myself/myapp", ["arg1", "arg2", "arg3"]); application.executeProgramInBackground("/home/myself/myapp", ["arg1", "arg2", "arg3"], null, "/home/myself/"); application.executeProgramInBackground("/home/myself/myapp", ["arg1", "arg2", "arg3"], ["MY_ENV_VAR=something"], "/home/myself/"); // Open a file with the default application associated with it. (on Windows) application.executeProgramInBackground("rundll32.exe", ["url.dll,FileProtocolHandler", "filename"]); // Open a file with the default application associated with it. (on Linux) application.executeProgramInBackground("xdg-open", ["filename"]); // Open a file with the default application associated with it. (on MacOS) application.executeProgramInBackground("open", ["filename"]); // Open a file with a specific application (on MacOS). application.executeProgram("open", ["-a", "OpenOffice.org.app", "filename.doc"]); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=executeProgramInBackground-String_StringArray_StringArray_String}{tr:id=name}{td}h6.executeProgramInBackground{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}executeProgramInBackground{span}{span}\(program, params, environmentVars, startDir){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Execute a program in the background. Specify the cmd as you would do in a console.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} program -- (fullpath) of the program to execute \{[String]\[]} params -- an array of strings as program arguments \{[String]\[]} environmentVars -- array of strings, each element of which has environment variable settings in the format name=value, or null if the subprocess should inherit the environment of the current process. \{[String]} startDir -- the working directory of the subprocess, or null if the subprocess should inherit the working directory of the current process. {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} // For Windows systems: // Runs a binary located in the user's home directory. The application will run in the current working // directory, which in general is the one where Servoy was started from. application.executeProgramInBackground("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"]); // The same as above, but run the application in the user's home directory. application.executeProgramInBackground("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"], null, "c:\\Users\\myself\\"); // The same as above, but also set an environment variable for the called program. application.executeProgramInBackground("c:\\Users\\myself\\myapp.exe", ["arg1", "arg2", "arg3"], ["MY_ENV_VAR=something"], "c:\\Users\\myself\\"); // For non-Windows systems: application.executeProgramInBackground("/home/myself/myapp", ["arg1", "arg2", "arg3"]); application.executeProgramInBackground("/home/myself/myapp", ["arg1", "arg2", "arg3"], null, "/home/myself/"); application.executeProgramInBackground("/home/myself/myapp", ["arg1", "arg2", "arg3"], ["MY_ENV_VAR=something"], "/home/myself/"); // Open a file with the default application associated with it. (on Windows) application.executeProgramInBackground("rundll32.exe", ["url.dll,FileProtocolHandler", "filename"]); // Open a file with the default application associated with it. (on Linux) application.executeProgramInBackground("xdg-open", ["filename"]); // Open a file with the default application associated with it. (on MacOS) application.executeProgramInBackground("open", ["filename"]); // Open a file with a specific application (on MacOS). application.executeProgram("open", ["-a", "OpenOffice.org.app", "filename.doc"]); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=exit}{tr:id=name}{td}h6.exit{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}exit{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Stop and exit application.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} // exit application application.exit(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getActiveClientCount-Boolean}{tr:id=name}{td}h6.getActiveClientCount{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Number]{span}{span:style=font-weight: bold;}getActiveClientCount{span}{span}\(currentSolutionOnly){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Get the active user count on the server (can be limited to current solution).{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[Boolean]} currentSolutionOnly -- Boolean (true) to get the active user count on server only to the current solution {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Number] -- Active user count on the server{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var count = application.getActiveClientCount(true); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getActiveWindow}{tr:id=name}{td}h6.getActiveWindow{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[JSWindow]{span}{span:style=font-weight: bold;}getActiveWindow{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}This gets the currently focused active window; this can be the main application window or a modal dialog. For a webclient getWindow() can return the main window that is not really the main for the current tab in the browser that can return the previous tab that a user could have opened. For this method is better suited because this will give you the actual tab in the browser. Another call would be form.controller.getWindow() of a form that you know in which window it resides.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[JSWindow] -- the current active/focussed window.{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} // get the currently active/focused window or dialog var activeWindow = application.getActiveWindow(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getApplicationType}{tr:id=name}{td}h6.getApplicationType{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Number]{span}{span:style=font-weight: bold;}getApplicationType{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Get the application type.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Number] -- Constant application type{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var type = application.getApplicationType(); //see application type contstant {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getClientCountForInfo-String}{tr:id=name}{td}h6.getClientCountForInfo{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Number]{span}{span:style=font-weight: bold;}getClientCountForInfo{span}{span}\(info){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Gets the count for all clients displaying the same additional information in the Clients page of Servoy Server Administration Console.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} info -- The additional client info string to search for. {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Number] -- Number of clients{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var count = application.getClientCountForInfo('SaaS company name'); application.output('Including yourself, there are ' + count + ' client(s) running on behalf of the company.'); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getClientProperty-Object}{tr:id=name}{td}h6.getClientProperty{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Object]{span}{span:style=font-weight: bold;}getClientProperty{span}{span}\(name){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Sets a UI property.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[Object]} name -- Name of the client property {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Object] -- the property value for the given name/key, null of nothing was found{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} //Only use this function from the solution on open method! //In smart client, use this to set javax.swing.UIDefaults properties. application.putClientProperty('ToolTip.hideAccelerator', true) //To change the comboboxes selection background color, do this: application.putClientProperty('ComboBox.selectionBackground', new Packages.javax.swing.plaf.ColorUIResource(java.awt.Color.RED)) //In web client, use this to change the template directory. //To change the default dir of templates/default to templates/green_skin, do this: application.putClientProperty('templates.dir','green_skin'); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getClipboardString}{tr:id=name}{td}h6.getClipboardString{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]{span}{span:style=font-weight: bold;}getClipboardString{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Gets a string from the clipboard, null if not a string or empty.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String] -- The string from the clipboard{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var fromClipboard = application.getClipboardString(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getCurrentLookAndFeelName}{tr:id=name}{td}h6.getCurrentLookAndFeelName{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]{span}{span:style=font-weight: bold;}getCurrentLookAndFeelName{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Gets the name of the current Look And Feel specified in Application Preferences.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String] -- Current Look And Feel{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var laf = application.getCurrentLookAndFeelName(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getHostName}{tr:id=name}{td}h6.getHostName{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]{span}{span:style=font-weight: bold;}getHostName{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Get the name of the localhost.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String] -- Name of the localhost{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var hostName = application.getHostName(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getIPAddress}{tr:id=name}{td}h6.getIPAddress{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]{span}{span:style=font-weight: bold;}getIPAddress{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Get the clients' IP address.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String] -- IP address of the client{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var ip = application.getIPAddress(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getLicenseNames}{tr:id=name}{td}h6.getLicenseNames{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]\[]{span}{span:style=font-weight: bold;}getLicenseNames{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Get the names of the used client licenses (as strings in array).{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String]\[] -- Client licenses names{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var array = application.getLicenseNames(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getOSName}{tr:id=name}{td}h6.getOSName{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]{span}{span:style=font-weight: bold;}getOSName{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Returns the name of the operating system.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String] -- Name of the operating system{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var osname = application.getOSName(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getPrinters}{tr:id=name}{td}h6.getPrinters{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]\[]{span}{span:style=font-weight: bold;}getPrinters{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Get all the printer names in an array.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String]\[] -- All printer names{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var printersArray = application.getPrinters(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getScreenHeight}{tr:id=name}{td}h6.getScreenHeight{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Number]{span}{span:style=font-weight: bold;}getScreenHeight{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Get the screen height in pixels.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Number] -- Screen height{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var height = application.getScreenHeight(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getScreenWidth}{tr:id=name}{td}h6.getScreenWidth{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Number]{span}{span:style=font-weight: bold;}getScreenWidth{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Get the screen width in pixels.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Number] -- Screen width{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var width = application.getScreenWidth(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getServerTimeStamp}{tr:id=name}{td}h6.getServerTimeStamp{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Date]{span}{span:style=font-weight: bold;}getServerTimeStamp{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Returns a date object initialized on server with current date and time.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Date] -- Server time{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var servertime = application.getServerTimeStamp(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getServerURL}{tr:id=name}{td}h6.getServerURL{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]{span}{span:style=font-weight: bold;}getServerURL{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Gets the HTTP server url.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String] -- HTTP server URL{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var url = application.getServerURL(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getSolutionName}{tr:id=name}{td}h6.getSolutionName{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]{span}{span:style=font-weight: bold;}getSolutionName{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Returns the name of the current solution.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String] -- Current solution name{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var solutionName = application.getSolutionName(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getSolutionRelease}{tr:id=name}{td}h6.getSolutionRelease{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Number]{span}{span:style=font-weight: bold;}getSolutionRelease{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Get the solution release number.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Number] -- Current solution release number{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var release = application.getSolutionRelease(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getTimeStamp}{tr:id=name}{td}h6.getTimeStamp{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Date]{span}{span:style=font-weight: bold;}getTimeStamp{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Returns a date object initialized in client with current date and time. This should be used instead of new Date() for webclients when the clients are in different times zones then the server. Then this call will really return a time that is the locals webclients time.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Date] -- Current time at the client{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var clienttime = application.getTimeStamp(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getUUID}{tr:id=name}{td}h6.getUUID{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[UUID]{span}{span:style=font-weight: bold;}getUUID{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Get a new UUID object (also known as GUID) or convert the parameter (that can be string or byte array) to an UUID object. A table column marked as UUID will work with such objects.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[UUID] -- The new UUID object{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var new_uuid_object = application.getUUID(); // generate new uuid object var uuid_object1 = application.getUUID(new_uuid_object.toString()); // convert a string representing an uuid to an uuid object var uuid_object2 = application.getUUID(new_uuid_object.toBytes()); // convert a byte array representing an uuid to an uuid object {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getUUID-byteArray}{tr:id=name}{td}h6.getUUID{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[UUID]{span}{span:style=font-weight: bold;}getUUID{span}{span}\(byteArray){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Get a new UUID object (also known as GUID) or convert the parameter (that can be string or byte array) to an UUID object. A table column marked as UUID will work with such objects.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{byte[]} byteArray -- Byte array representing an uuid {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[UUID] -- The new UUID object{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var new_uuid_object = application.getUUID(); // generate new uuid object var uuid_object1 = application.getUUID(new_uuid_object.toString()); // convert a string representing an uuid to an uuid object var uuid_object2 = application.getUUID(new_uuid_object.toBytes()); // convert a byte array representing an uuid to an uuid object {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getUUID-String}{tr:id=name}{td}h6.getUUID{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[UUID]{span}{span:style=font-weight: bold;}getUUID{span}{span}\(uuidString){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Get a new UUID object (also known as GUID) or convert the parameter (that can be string or byte array) to an UUID object. A table column marked as UUID will work with such objects.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} uuidString -- String representing an uuid {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[UUID] -- The new UUID object{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var new_uuid_object = application.getUUID(); // generate new uuid object var uuid_object1 = application.getUUID(new_uuid_object.toString()); // convert a string representing an uuid to an uuid object var uuid_object2 = application.getUUID(new_uuid_object.toBytes()); // convert a byte array representing an uuid to an uuid object {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getUserProperty-String}{tr:id=name}{td}h6.getUserProperty{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]{span}{span:style=font-weight: bold;}getUserProperty{span}{span}\(name){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Get a persistent user property.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} name -- Name of the property {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String] -- Property value{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var value = application.getUserProperty('showOrders'); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getUserPropertyNames}{tr:id=name}{td}h6.getUserPropertyNames{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]\[]{span}{span:style=font-weight: bold;}getUserPropertyNames{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Get all persistent user property names.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String]\[] -- Array of all user property names{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} // display all user properties allPropertyNames = application.getUserPropertyNames(); for(var i = 0; i < allPropertyNames.length; i++) { application.output(allPropertyNames[i] + " = " + application.getUserProperty(allPropertyNames[i])); } {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getValueListArray-String}{tr:id=name}{td}h6.getValueListArray{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Array]{span}{span:style=font-weight: bold;}getValueListArray{span}{span}\(name){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Retrieve a valuelist as array, to get real\-values for display\-values. NOTE: this doesn't return a value for a valuelist that depends on a database relation or is a global method valuelist.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} name -- The name of the valuelist {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Array] -- Named array for the valuelist{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var packet_types = application.getValueListArray('packet_types'); if (a_realValue == packet_types['displayValue']) { } {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getValueListDisplayValue-String_Object}{tr:id=name}{td}h6.getValueListDisplayValue{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Object]{span}{span:style=font-weight: bold;}getValueListDisplayValue{span}{span}\(name, realValue){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Retrieve a valuelist display\-value for a real\-value. NOTE: this doesn't return a value for a valuelist that depends on a database relation or is a global method valuelist.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} name -- Name of the valuelist \{[Object]} realValue -- Real value of the valuelist {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Object] -- Display value of the real value from the valuelist{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var displayable_status = application.getValueListDisplayValue('case_status',status); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getValueListItems-String}{tr:id=name}{td}h6.getValueListItems{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[JSDataSet]{span}{span:style=font-weight: bold;}getValueListItems{span}{span}\(name){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Get all values from a custom or database type value list as dataset (with columns displayValue,realValue). NOTE: this doesn't return a value for a valuelist that depends on a database relation or is a global method valuelist.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} name -- Name of the valuelist {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[JSDataSet] -- DataSet with valuelist's display values and real values{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} //Note:see databaseManager.JSDataSet for full details of dataset var dataset = application.getValueListItems('my_en_types'); //example to calc a strange total global_total = 0; for( var i = 1 ; i <= dataset.getMaxRowIndex() ; i++ ) { global_total = global_total + dataset.getValue(i,1); } //example to assign to dataprovider //employee_salary = dataset.getValue(1,1) {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getValueListNames}{tr:id=name}{td}h6.getValueListNames{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]\[]{span}{span:style=font-weight: bold;}getValueListNames{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Get all the valuelist names as array.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String]\[] -- Array with all valuelist names{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var array = application.getValueListNames(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getVersion}{tr:id=name}{td}h6.getVersion{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]{span}{span:style=font-weight: bold;}getVersion{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Returns the application version.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String] -- Application version{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} application.getVersion(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getWindow}{tr:id=name}{td}h6.getWindow{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[JSWindow]{span}{span:style=font-weight: bold;}getWindow{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Get the main application window. This is the window that is created first for this client. In a smart client this is always just the first started window where the solution is loaded in. In a webclient when users (so not the developer through a createWindow() call) create there own tabs after In a webclient the user may open the same solution in a new tab in the same browser. In that case the main solution window will always be the first opened tab, even if that one was already closed. application.getActiveWindow() will aways return the currently active/focused window or dialog. If you need the window of the current top\-level form, controller.getWindow() of that form will always return the correct window.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[JSWindow] -- the main application JSWindow.{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} // close and dispose window resources var mainAppWindow = application.getWindow(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=getWindow-String}{tr:id=name}{td}h6.getWindow{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[JSWindow]{span}{span:style=font-weight: bold;}getWindow{span}{span}\(name){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Get a window by window name. When not supplying a name, the main application window is grabbed.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} name -- the name of the window. If not specified, the main application JSWindow will be returned. {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[JSWindow] -- the JSWindow with the specified name, or null if no such window exists.{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} // close and dispose window resources var win = application.getWindow("someWindowName"); if (win != null) { win.destroy(); } {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=isInDeveloper}{tr:id=name}{td}h6.isInDeveloper{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Boolean]{span}{span:style=font-weight: bold;}isInDeveloper{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Returns true if the solution is running in the developer.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Boolean] -- Boolean (true) if the solution is running in the developer, (false) otherwise{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var flag = application.isInDeveloper(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=isLastPrintPreviewPrinted}{tr:id=name}{td}h6.isLastPrintPreviewPrinted{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Boolean]{span}{span:style=font-weight: bold;}isLastPrintPreviewPrinted{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Check if the last printpreview did print.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Boolean] -- Boolean (true) is the last print preview did print, (false) otherwise{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} //attached this method to onShow on the form being shown after printpreview //set a global called scopes.globals.showPrintPreview to 1 in the onPrintPreview method if (scopes.globals.showPrintPreview == 1) { scopes.globals.showPrintPreview = 0;//clear for next time if (application.isLastPrintPreviewPrinted()) { plugins.dialogs.showInfoDialog('Alert', 'There is printed in printpreview', 'OK') } } {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=output-Object}{tr:id=name}{td}h6.output{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}output{span}{span}\(msg){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Output something on the out stream. (if running in debugger view output console tab){div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[Object]} msg -- Object to send to output stream {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} // log level is used to determine how/if to log in servoy_log.txt; for smart client java out and err streams are used application.output('my very important trace msg');// default log level: info {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=output-Object_Number}{tr:id=name}{td}h6.output{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}output{span}{span}\(msg, level){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Output something on the out stream. (if running in debugger view output console tab){div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[Object]} msg -- Object to send to output stream \{[Number]} level -- the log level where it should log to. {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} // log level is used to determine how/if to log in servoy_log.txt; for smart client java out and err streams are used application.output('my very important msg',LOGGINGLEVEL.ERROR);// log level: error {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=overrideStyle-String_String}{tr:id=name}{td}h6.overrideStyle{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}overrideStyle{span}{span}\(originalStyleName, newStyleName){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Overrides one style (defined in in a form) with another.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} originalStyleName -- Name of the style to override \{[String]} newStyleName -- Name of the new style {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} //This function will only have effect on forms not yet created, so solution onLoad is the best place to override' //For example overriding the use of default/designed style anywhere in the solution from 'mystyle' to 'mystyle_mac' application.overrideStyle('mystyle','mystyle_mace')//in this case both styles should have about the same classes {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=playSound-String}{tr:id=name}{td}h6.playSound{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}playSound{span}{span}\(url){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Play a sound (AU file, an AIFF file, a WAV file, and a MIDI file).{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} url -- URL of the sound file {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} application.playSound('media:///click.wav'); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=putClientProperty-Object_Object}{tr:id=name}{td}h6.putClientProperty{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Boolean]{span}{span:style=font-weight: bold;}putClientProperty{span}{span}\(name, value){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Sets a UI property.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[Object]} name -- Name of the client property \{[Object]} value -- New value of the client property {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Boolean] -- Boolean (true) if the client property was set with the new value{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} //Only use this function from the solution on open method! //In smart client, use this to set javax.swing.UIDefaults properties. application.putClientProperty('ToolTip.hideAccelerator', true) //To change the comboboxes selection background color, do this: application.putClientProperty('ComboBox.selectionBackground', new Packages.javax.swing.plaf.ColorUIResource(java.awt.Color.RED)) //In web client, use this to change the template directory. //To change the default dir of templates/default to templates/green_skin, do this: application.putClientProperty('templates.dir','green_skin'); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=redo}{tr:id=name}{td}h6.redo{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}redo{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Redo last action (if possible).{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} application.redo(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=removeAllClientInfo}{tr:id=name}{td}h6.removeAllClientInfo{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}removeAllClientInfo{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Removes all names given to the client via the admin page.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} application.removeAllClientInfo(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=removeClientInfo-String}{tr:id=name}{td}h6.removeClientInfo{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Boolean]{span}{span:style=font-weight: bold;}removeClientInfo{span}{span}\(info){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Removes a string of client information which is stored on the server and previously was added using the application.addClientInfo('client info') This function can be called more than once, if you want to delete multiple lines of client information.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} info -- A line of text to be removed from the client information on behalf of the running Servoy client. {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Boolean] -- boolean indicator if info was removed successfully{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var removed = application.removeClientInfo('SaaS company name'); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=setClipboardContent-Object}{tr:id=name}{td}h6.setClipboardContent{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}setClipboardContent{span}{span}\(string){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Sets a string object in the clipboard.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[Object]} string -- New content of the clipboard {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} application.setClipboardContent('test'); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=setNumpadEnterAsFocusNextEnabled-Boolean}{tr:id=name}{td}h6.setNumpadEnterAsFocusNextEnabled{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}setNumpadEnterAsFocusNextEnabled{span}{span}\(enabled){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Set if numpad enter should behave like focus next.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[Boolean]} enabled -- Boolean (true) if numpad enter should behave like focus next {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} application.setNumpadEnterAsFocusNextEnabled(true); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=setStatusText-String}{tr:id=name}{td}h6.setStatusText{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}setStatusText{span}{span}\(text){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Set the status area value.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} text -- New status text {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} application.setStatusText('Your status text'); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=setStatusText-String_String}{tr:id=name}{td}h6.setStatusText{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}setStatusText{span}{span}\(text, tooltip){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Set the status area value.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} text -- New status text \{[String]} tooltip -- Status tooltip text {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} application.setStatusText('Your status text','Your status tooltip text'); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=setToolbarVisible-String_Boolean}{tr:id=name}{td}h6.setToolbarVisible{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}setToolbarVisible{span}{span}\(name, visible){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Make a toolbar visible or invisible.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} name -- Name of the toolbar \{[Boolean]} visible -- Visibility of the toolbar {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} //example: hide the text toolbar application.setToolbarVisible('text',false); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=setUserProperty-String_String}{tr:id=name}{td}h6.setUserProperty{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}setUserProperty{span}{span}\(name, value){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Set a persistent user property.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} name -- Name of the user property \{[String]} value -- New value of the user property {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} application.setUserProperty('showOrders','1'); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=setValueListItems-String_JSDataSet}{tr:id=name}{td}h6.setValueListItems{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}setValueListItems{span}{span}\(name, dataset){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Fill a custom type valuelist with values from array(s) or dataset. NOTE: if you modify values for checkbox/radio field, note that having one value in valuelist is a special case, so switching between one value and 0/multiple values after form is created may have side effects{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} name -- Name of the valuelist \{[JSDataSet]} dataset -- Dataset with display/real values {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} //set display values (return values will be same as display values) application.setValueListItems('my_en_types',new Array('Item 1', 'Item 2', 'Item 3')); //set display values and return values (which are stored in dataprovider) //application.setValueListItems('my_en_types',new Array('Item 1', 'Item 2', 'Item 3'),new Array(10000,10010,10456)); //set display values and return values converted to numbers //application.setValueListItems('my_en_types',new Array('Item 1', 'Item 2', 'Item 3'),new Array('10000','10010', '10456'), true); //do query and fill valuelist (see databaseManager for full details of queries/dataset) //var query = 'select display_value,optional_real_value from test_table'; //var dataset = databaseManager.getDataSetByQuery(databaseManager.getDataSourceServerName(controller.getDataSource()), query, null, 25); //application.setValueListItems('my_en_types',dataset); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=setValueListItems-String_JSDataSet_Boolean}{tr:id=name}{td}h6.setValueListItems{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}setValueListItems{span}{span}\(name, dataset, autoconvert){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Fill a custom type valuelist with values from array(s) or dataset. NOTE: if you modify values for checkbox/radio field, note that having one value in valuelist is a special case, so switching between one value and 0/multiple values after form is created may have side effects{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} name -- Name of the valuelist \{[JSDataSet]} dataset -- Dataset with display/real values \{[Boolean]} autoconvert -- Boolean (true) if display values and return values should be converted to numbers {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} //set display values (return values will be same as display values) application.setValueListItems('my_en_types',new Array('Item 1', 'Item 2', 'Item 3')); //set display values and return values (which are stored in dataprovider) //application.setValueListItems('my_en_types',new Array('Item 1', 'Item 2', 'Item 3'),new Array(10000,10010,10456)); //set display values and return values converted to numbers //application.setValueListItems('my_en_types',new Array('Item 1', 'Item 2', 'Item 3'),new Array('10000','10010', '10456'), true); //do query and fill valuelist (see databaseManager for full details of queries/dataset) //var query = 'select display_value,optional_real_value from test_table'; //var dataset = databaseManager.getDataSetByQuery(databaseManager.getDataSourceServerName(controller.getDataSource()), query, null, 25); //application.setValueListItems('my_en_types',dataset); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=setValueListItems-String_ObjectArray}{tr:id=name}{td}h6.setValueListItems{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}setValueListItems{span}{span}\(name, displayValues){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Fill a custom type valuelist with values from array(s) or dataset. NOTE: if you modify values for checkbox/radio field, note that having one value in valuelist is a special case, so switching between one value and 0/multiple values after form is created may have side effects{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} name -- Name of the valuelist \{[Object]\[]} displayValues -- Display values array {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} //set display values (return values will be same as display values) application.setValueListItems('my_en_types',new Array('Item 1', 'Item 2', 'Item 3')); //set display values and return values (which are stored in dataprovider) //application.setValueListItems('my_en_types',new Array('Item 1', 'Item 2', 'Item 3'),new Array(10000,10010,10456)); //set display values and return values converted to numbers //application.setValueListItems('my_en_types',new Array('Item 1', 'Item 2', 'Item 3'),new Array('10000','10010', '10456'), true); //do query and fill valuelist (see databaseManager for full details of queries/dataset) //var query = 'select display_value,optional_real_value from test_table'; //var dataset = databaseManager.getDataSetByQuery(databaseManager.getDataSourceServerName(controller.getDataSource()), query, null, 25); //application.setValueListItems('my_en_types',dataset); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=setValueListItems-String_ObjectArray_Boolean}{tr:id=name}{td}h6.setValueListItems{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}setValueListItems{span}{span}\(name, displayValues, autoconvert){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Fill a custom type valuelist with values from array(s) or dataset. NOTE: if you modify values for checkbox/radio field, note that having one value in valuelist is a special case, so switching between one value and 0/multiple values after form is created may have side effects{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} name -- Name of the valuelist \{[Object]\[]} displayValues -- Display values array \{[Boolean]} autoconvert -- Boolean (true) if display values and return values should be converted to numbers {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} //set display values (return values will be same as display values) application.setValueListItems('my_en_types',new Array('Item 1', 'Item 2', 'Item 3')); //set display values and return values (which are stored in dataprovider) //application.setValueListItems('my_en_types',new Array('Item 1', 'Item 2', 'Item 3'),new Array(10000,10010,10456)); //set display values and return values converted to numbers //application.setValueListItems('my_en_types',new Array('Item 1', 'Item 2', 'Item 3'),new Array('10000','10010', '10456'), true); //do query and fill valuelist (see databaseManager for full details of queries/dataset) //var query = 'select display_value,optional_real_value from test_table'; //var dataset = databaseManager.getDataSetByQuery(databaseManager.getDataSourceServerName(controller.getDataSource()), query, null, 25); //application.setValueListItems('my_en_types',dataset); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=setValueListItems-String_ObjectArray_ObjectArray}{tr:id=name}{td}h6.setValueListItems{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}setValueListItems{span}{span}\(name, displayValues, realValues){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Fill a custom type valuelist with values from array(s) or dataset. NOTE: if you modify values for checkbox/radio field, note that having one value in valuelist is a special case, so switching between one value and 0/multiple values after form is created may have side effects{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} name -- Name of the valuelist \{[Object]\[]} displayValues -- Display values array \{[Object]\[]} realValues -- Real values array {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} //set display values (return values will be same as display values) application.setValueListItems('my_en_types',new Array('Item 1', 'Item 2', 'Item 3')); //set display values and return values (which are stored in dataprovider) //application.setValueListItems('my_en_types',new Array('Item 1', 'Item 2', 'Item 3'),new Array(10000,10010,10456)); //set display values and return values converted to numbers //application.setValueListItems('my_en_types',new Array('Item 1', 'Item 2', 'Item 3'),new Array('10000','10010', '10456'), true); //do query and fill valuelist (see databaseManager for full details of queries/dataset) //var query = 'select display_value,optional_real_value from test_table'; //var dataset = databaseManager.getDataSetByQuery(databaseManager.getDataSourceServerName(controller.getDataSource()), query, null, 25); //application.setValueListItems('my_en_types',dataset); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=setValueListItems-String_ObjectArray_ObjectArray_Boolean}{tr:id=name}{td}h6.setValueListItems{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}setValueListItems{span}{span}\(name, displayValues, realValues, autoconvert){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Fill a custom type valuelist with values from array(s) or dataset. NOTE: if you modify values for checkbox/radio field, note that having one value in valuelist is a special case, so switching between one value and 0/multiple values after form is created may have side effects{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} name \{[Object]\[]} displayValues -- Display values array \{[Object]\[]} realValues -- Real values array \{[Boolean]} autoconvert -- Boolean (true) if display values and return values should be converted to numbers {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} //set display values (return values will be same as display values) application.setValueListItems('my_en_types',new Array('Item 1', 'Item 2', 'Item 3')); //set display values and return values (which are stored in dataprovider) //application.setValueListItems('my_en_types',new Array('Item 1', 'Item 2', 'Item 3'),new Array(10000,10010,10456)); //set display values and return values converted to numbers //application.setValueListItems('my_en_types',new Array('Item 1', 'Item 2', 'Item 3'),new Array('10000','10010', '10456'), true); //do query and fill valuelist (see databaseManager for full details of queries/dataset) //var query = 'select display_value,optional_real_value from test_table'; //var dataset = databaseManager.getDataSetByQuery(databaseManager.getDataSourceServerName(controller.getDataSource()), query, null, 25); //application.setValueListItems('my_en_types',dataset); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=showCalendar}{tr:id=name}{td}h6.showCalendar{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Date]{span}{span:style=font-weight: bold;}showCalendar{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Show the calendar, returns selected date or null if canceled. Initial value and date format can be also specified.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Date] -- Selected date or null if canceled{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var selectedDate = application.showCalendar(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=showCalendar-String}{tr:id=name}{td}h6.showCalendar{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Date]{span}{span:style=font-weight: bold;}showCalendar{span}{span}\(dateFormat){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Show the calendar, returns selected date or null if canceled. Initial value and date format can be also specified.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} dateFormat -- Date format {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Date] -- Selected date or null if canceled{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var selectedDate = application.showCalendar(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=showCalendar-Date}{tr:id=name}{td}h6.showCalendar{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Date]{span}{span:style=font-weight: bold;}showCalendar{span}{span}\(selectedDate){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Show the calendar, returns selected date or null if canceled. Initial value and date format can be also specified.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[Date]} selectedDate -- Default selected date {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Date] -- Selected date or null if canceled{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var selectedDate = application.showCalendar(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=showCalendar-Date_String}{tr:id=name}{td}h6.showCalendar{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Date]{span}{span:style=font-weight: bold;}showCalendar{span}{span}\(selectedDate, dateFormat){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Show the calendar, returns selected date or null if canceled. Initial value and date format can be also specified.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[Date]} selectedDate -- Default selected date \{[String]} dateFormat -- Date format {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Date] -- Selected date or null if canceled{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var selectedDate = application.showCalendar(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=showColorChooser}{tr:id=name}{td}h6.showColorChooser{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]{span}{span:style=font-weight: bold;}showColorChooser{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Show the colorChooser. Returned value is in format #RRGGBB or null if canceled.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String] -- selected color or null if canceled{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var selectedColor = application.showColorChooser(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=showColorChooser-String}{tr:id=name}{td}h6.showColorChooser{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]{span}{span:style=font-weight: bold;}showColorChooser{span}{span}\(colorString){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Show the colorChooser. Returned value is in format #RRGGBB or null if canceled.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} colorString -- Default color {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String] -- selected color or null if canceled{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var selectedColor = application.showColorChooser(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=showFontChooser}{tr:id=name}{td}h6.showFontChooser{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]{span}{span:style=font-weight: bold;}showFontChooser{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Show the font chooser dialog. Returns the selected font. Can specify a default font.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String] -- selected font{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var selectedFont = application.showFontChooser(); elements.myfield.font = selectedFont {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=showFontChooser-String}{tr:id=name}{td}h6.showFontChooser{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]{span}{span:style=font-weight: bold;}showFontChooser{span}{span}\(defaultFont){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Show the font chooser dialog. Returns the selected font. Can specify a default font.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} defaultFont -- Default font {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String] -- selected font{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} var selectedFont = application.showFontChooser(); elements.myfield.font = selectedFont {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=showForm-Object}{tr:id=name}{td}h6.showForm{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}showForm{span}{span}\(form){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Show the form specified by the parameter, that can be a name (is case sensitive!) or a form object. This will show the form in the active/currently focused window. So when called from a form in a dialog the dialog will show the form.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[Object]} form -- Form object or name {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} application.showForm('MyForm'); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=showI18NDialog}{tr:id=name}{td}h6.showI18NDialog{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]{span}{span:style=font-weight: bold;}showI18NDialog{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Opens the i18n dialog so users can change translations. Returns the key selected by the user (not it's translation) or null if cancel is pressed. Optional parameters specify the initial selections in the dialog.{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String] -- selected I18N key or null if cancel is pressed{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} application.showI18NDialog("servoy.button.close", "en"); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=showI18NDialog-String}{tr:id=name}{td}h6.showI18NDialog{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]{span}{span:style=font-weight: bold;}showI18NDialog{span}{span}\(keyToSelect){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Opens the i18n dialog so users can change translations. Returns the key selected by the user (not it's translation) or null if cancel is pressed. Optional parameters specify the initial selections in the dialog.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} keyToSelect -- Default selected key {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String] -- selected I18N key or null if cancel is pressed{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} application.showI18NDialog("servoy.button.close", "en"); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=showI18NDialog-String_String}{tr:id=name}{td}h6.showI18NDialog{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[String]{span}{span:style=font-weight: bold;}showI18NDialog{span}{span}\(keyToSelect, languageToSelect){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Opens the i18n dialog so users can change translations. Returns the key selected by the user (not it's translation) or null if cancel is pressed. Optional parameters specify the initial selections in the dialog.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} keyToSelect -- Default selected key \{[String]} languageToSelect -- Default selected language {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[String] -- selected I18N key or null if cancel is pressed{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} application.showI18NDialog("servoy.button.close", "en"); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=showURL-String}{tr:id=name}{td}h6.showURL{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Boolean]{span}{span:style=font-weight: bold;}showURL{span}{span}\(url){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Shows an URL in a browser.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} url -- URL to show {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Boolean] -- Boolean (true) if URL was shown{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} application.showURL('http://www.example.com'); //webclient specific additional parameters... //2nd parameter: target frame or named dialog/window, so its possible to control in which (internal) frame or dialog the url is loaded, '_self' is current window,'_blank' is new dialog, '_top' is main window //3rd parameter: dialog options used when a dialog is specified, example: 'height=200,width=400,status=yes,toolbar=no,menubar=no,location=no' //3th or 4th parameter: a timeout in seconds when the url should be shown, immediantly/0 is default' {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=showURL-String_String}{tr:id=name}{td}h6.showURL{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Boolean]{span}{span:style=font-weight: bold;}showURL{span}{span}\(url, webclientTarget){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Shows an URL in a browser.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} url -- URL to show \{[String]} webclientTarget -- Target frame or named dialog/window {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Boolean] -- Boolean (true) if URL was shown{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} application.showURL('http://www.example.com'); //webclient specific additional parameters... //2nd parameter: target frame or named dialog/window, so its possible to control in which (internal) frame or dialog the url is loaded, '_self' is current window,'_blank' is new dialog, '_top' is main window //3rd parameter: dialog options used when a dialog is specified, example: 'height=200,width=400,status=yes,toolbar=no,menubar=no,location=no' //3th or 4th parameter: a timeout in seconds when the url should be shown, immediantly/0 is default' {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=showURL-String_String_Number}{tr:id=name}{td}h6.showURL{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Boolean]{span}{span:style=font-weight: bold;}showURL{span}{span}\(url, webclientTarget, timeout){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Shows an URL in a browser.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} url -- URL to show \{[String]} webclientTarget -- Target frame or named dialog/window \{[Number]} timeout -- A timeout in seconds when the url should be shown {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Boolean] -- Boolean (true) if URL was shown{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} application.showURL('http://www.example.com'); //webclient specific additional parameters... //2nd parameter: target frame or named dialog/window, so its possible to control in which (internal) frame or dialog the url is loaded, '_self' is current window,'_blank' is new dialog, '_top' is main window //3rd parameter: dialog options used when a dialog is specified, example: 'height=200,width=400,status=yes,toolbar=no,menubar=no,location=no' //3th or 4th parameter: a timeout in seconds when the url should be shown, immediantly/0 is default' {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=showURL-String_String_String}{tr:id=name}{td}h6.showURL{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Boolean]{span}{span:style=font-weight: bold;}showURL{span}{span}\(url, webclientTarget, webclientTargetOptions){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Shows an URL in a browser.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} url -- URL to show \{[String]} webclientTarget -- Target frame or named dialog/window \{[String]} webclientTargetOptions -- Dialog options used when a dialog is specified / a timeout in seconds when the url should be shown {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Boolean] -- Boolean (true) if URL was shown{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} application.showURL('http://www.example.com'); //webclient specific additional parameters... //2nd parameter: target frame or named dialog/window, so its possible to control in which (internal) frame or dialog the url is loaded, '_self' is current window,'_blank' is new dialog, '_top' is main window //3rd parameter: dialog options used when a dialog is specified, example: 'height=200,width=400,status=yes,toolbar=no,menubar=no,location=no' //3th or 4th parameter: a timeout in seconds when the url should be shown, immediantly/0 is default' {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=showURL-String_String_String_Number}{tr:id=name}{td}h6.showURL{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}[Boolean]{span}{span:style=font-weight: bold;}showURL{span}{span}\(url, webclientTarget, webclientTargetOptions, timeout){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Shows an URL in a browser.{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[String]} url -- URL to show \{[String]} webclientTarget -- Target frame or named dialog/window \{[String]} webclientTargetOptions -- Dialog options used when a dialog is specified / a timeout in seconds when the url should be shown \{[Number]} timeout -- A timeout in seconds when the url should be shown {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}[Boolean] -- Boolean (true) if URL was shown{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} application.showURL('http://www.example.com'); //webclient specific additional parameters... //2nd parameter: target frame or named dialog/window, so its possible to control in which (internal) frame or dialog the url is loaded, '_self' is current window,'_blank' is new dialog, '_top' is main window //3rd parameter: dialog options used when a dialog is specified, example: 'height=200,width=400,status=yes,toolbar=no,menubar=no,location=no' //3th or 4th parameter: a timeout in seconds when the url should be shown, immediantly/0 is default' {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=sleep-Number}{tr:id=name}{td}h6.sleep{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}sleep{span}{span}\(ms){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Sleep for specified time (in milliseconds).{div}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[Number]} ms -- Sleep time in milliseconds {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} //Sleep for 3 seconds application.sleep(3000); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=undo}{tr:id=name}{td}h6.undo{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}undo{span}{span}\(){span}{td}{tr}{tr:id=des}{td}{div:class=sIndent}Undo last action (if possible).{div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:id=sam}{td}*Sample*\\{div:class=sIndent}{code:language=javascript} application.undo(); {code}{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=updateUI}{tr:id=name}{td}h6.updateUI{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}updateUI{span}{span}\(){span}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{tbody:id=updateUI-Number}{tr:id=name}{td}h6.updateUI{td}{tr}{tr:id=sig}{td}{span:style=margin-right: 5px;}void{span}{span:style=font-weight: bold;}updateUI{span}{span}\(milliseconds){span}{td}{tr}{tr:id=prs}{td}*Parameters*\\{div:class=sIndent}\{[Number]} milliseconds -- How long the update should take in milliseconds {div}{td}{tr}{tr:id=ret}{td}*Returns*\\{div:class=sIndent}void{div}{td}{tr}{tr:class=lastDetailRow}{td}{td}{tr}{tbody}{table}
Wiki Markup
Cache
indextrue
refresh100d
showRefreshtrue
iddoc
titleRefresh page
showDatetrue
retryEnable

servoy sReturnTypes2100%height: 30px;2Return TypessWordListBLOCKsWordListBLOCKsWordListBLOCKsWordListBLOCKsWordListBLOCKsWordListBLOCKsWordListBLOCKsWordListBLOCKsWordListBLOCKsWordListBLOCKsWordListBLOCKsWordListBLOCKsWordListBLOCKsWordListBLOCKsWordListBLOCKsWordListBLOCK

servoy sReturnTypes2100%height: 30px;2Supported ClientssWordListSmartClientsWordListWebClientsWordListNGClientsWordListMobileClient

servoy sSummary12%30%58%height: 30px;3Methods SummaryvoidAdds a string of client information which gets stored on the server, and can be viewed on the Clients page of Servoy Server Administration Console.voidProduces a "beep" sound; commonly used to indicate an error or warning dialog.Close all visible windows (except main application window).voidCloses the currently open solution and optionally opens another solution, calling a specified global method with the specified arguments.voidCloses the currently open solution and optionally opens another solution, calling a specified global method with the specified arguments.voidCloses the currently open solution and optionally opens another solution, calling a specified global method with the specified arguments.voidCloses the currently open solution and optionally opens another solution, calling a specified global method with the specified arguments.voidCloses the currently open solution and optionally opens another solution, calling a specified global method with the specified arguments.Create a new form instance.Creates a new window that can be used for displaying forms.Creates a new window that can be used for displaying forms.voidRuns at method at the given delay in milliseconds.voidRuns at method at the given delay in milliseconds with the arguments given to the method.Execute a program and returns output.Execute a program and returns output.Execute a program and returns output.Execute a program and returns output.voidExecute a program in the background.voidExecute a program in the background.voidExecute a program in the background.voidExecute a program in the background.voidStop and exit application.This generates a browser function for the given function string that can be executed in the browser The resulting object can be assigned into a config/property object that is then assigned to a component The component will receive this function as a real function object.Get the active user count on the server (can be limited to current solution).This gets the currently focused active window; this can be the main application window or a modal dialog.Get the application type.Gets the count for all clients displaying the same additional information in the Clients page of Servoy Server Administration Console.Sets a UI property.Gets a string from the clipboard, null if not a string or empty.Gets the name of the current Look And Feel specified in Application Preferences.Get the name of the localhost.Get the clients' IP address.Get the names of the used client licenses (as strings in array).Get a JSLogger instance which offers an API for logging with arguments.Get a JSLogger instance which offers an API for logging with arguments.Get the media url that can be used to server a media in NGClient.Returns the name of the operating system of the client.Get all the printer names in an array.Get the screen height in pixels.Get the screen width in pixels.Returns a date object initialized on server with current date and time.Gets the HTTP server url.Get the uuid from this server instance (the same value that is shown on the admin page)Returns the name of the current solution.Get the solution release number.Get the parameters which are provided by startup.Returns a date object initialized in client with current date and time.Get a new UUID object (also known as GUID) or convert the parameter (that can be string or byte array) to an UUID object.Get a new UUID object (also known as GUID) or convert the parameter (that can be string or byte array) to an UUID object.Get a new UUID object (also known as GUID) or convert the parameter (that can be string or byte array) to an UUID object.Get a persistent user property.Get all persistent user property names.Retrieve a valuelist as array, to get real-values for display-values.Retrieve a valuelist display-value for a real-value.Get all values from a custom or database type value list as dataset (with columns displayValue,realValue).Get all the valuelist names as array.Returns the application version.Get the full version information of this solution and all its modules.Get the main application window.Get a window by window name.Returns true if the solution is running in the developer.Check if the last printpreview did print.voidOutput something on the out stream.voidOutput something on the out stream.voidOverrides one style with another.voidPlay a sound (AU file, an AIFF file, a WAV file, and a MIDI file).Sets a UI property.voidRedo last action (if possible).Refresh a global method valuelist by forcing it to call the global method.Refresh a global method valuelist by forcing it to call the global method.voidRemoves all names given to the client via the admin page.Removes a string of client information which is stored on the server and previously was added using the application.voidSets a string object in the clipboard.voidSet if numpad enter should behave like focus next.voidSet the status area value.voidSet the status area value.voidMake a toolbar visible or invisible.voidSets a user property for this client: <br> In NGClient this is stored in the locale storage of the browser, so it will be persisted over restarts as long as the user didn't clear the data.voidFill a custom type valuelist with values from array(s) or dataset.voidFill a custom type valuelist with values from array(s) or dataset.voidFill a custom type valuelist with values from array(s) or dataset.voidFill a custom type valuelist with values from array(s) or dataset.voidFill a custom type valuelist with values from array(s) or dataset.voidFill a custom type valuelist with values from array(s) or dataset.Show the calendar, returns selected date or null if canceled.Show the calendar, returns selected date or null if canceled.Show the calendar, returns selected date or null if canceled.Show the calendar, returns selected date or null if canceled.Show the colorChooser.Show the colorChooser.Show the font chooser dialog.Show the font chooser dialog.voidShow the form specified by the parameter, that can be a name (is case sensitive!) or a form object.Opens the i18n dialog so users can change translations.Opens the i18n dialog so users can change translations.Opens the i18n dialog so users can change translations.Shows an URL in a browser.Shows an URL in a browser.Shows an URL in a browser.Shows an URL in a browser.Shows an URL in a browser.voidSleep for specified time (in milliseconds).voidUndo last action (if possible).voidUpdates the UI (painting).voidUpdates the UI (painting).

functionservoy sDetail2100%height:30px2Methods DetailsaddClientInfoname

addClientInfo(info)

dessIndent
Adds a string of client information which gets stored on the server,
and can be viewed on the Clients page of Servoy Server Administration Console.

The new piece of client information is added on behalf of the running
Servoy client.

This function can be called more than once, if you want to add multiple
lines of client information.

NOTE:
This function can also be used with the function <em>getClientCountForInfo</em>
to count the number of clients with matching addditional client information.
prs

Parameters

sIndentinfoA line of text to be added as additional client information on behalf of the running Servoy client.
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRowbeepname

beep()

dessIndent
Produces a "beep" sound; commonly used to indicate an error or warning dialog.
clients

Supported Clients

sIndentSmartClient
sam

Sample

sIdentjavascript
lastDetailRow
closeAllWindowsname

closeAllWindows()

dessIndent
Close all visible windows (except main application window). Returns true if operation was successful.
ret

Returns

sIndent Boolean true if all windows were closed and false otherwise.
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
closeSolutionname

closeSolution()

dessIndent
Closes the currently open solution and optionally opens another solution, calling a specified global method with the specified arguments.
If the user has been logged in, this function keeps the user logged in and in the newly open solution, the login is skipped and the solution goes straight to the first form.
If you want to go to a different url, you need to call application.showURL(url) before calling application.closeSolution() (this is only applicable for Web Client).
An alternative option is security.logout() which also does a log out for the user (for solutions that require authentication).
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
closeSolutionname

closeSolution(solutionToLoad)

dessIndent
Closes the currently open solution and optionally opens another solution, calling a specified global method with the specified arguments.
If the user has been logged in, this function keeps the user logged in and in the newly open solution, the login is skipped and the solution goes straight to the first form.
If you want to go to a different url, you need to call application.showURL(url) before calling application.closeSolution() (this is only applicable for Web Client).
An alternative option is security.logout() which also does a log out for the user (for solutions that require authentication).
prs

Parameters

sIndentsolutionToLoadName of the solution to load
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
closeSolutionname

closeSolution(solutionToLoad, methodArgument)

dessIndent
Closes the currently open solution and optionally opens another solution, calling a specified global method with the specified arguments.
If the user has been logged in, this function keeps the user logged in and in the newly open solution, the login is skipped and the solution goes straight to the first form.
If you want to go to a different url, you need to call application.showURL(url) before calling application.closeSolution() (this is only applicable for Web Client).
An alternative option is security.logout() which also does a log out for the user (for solutions that require authentication).
prs

Parameters

sIndentsolutionToLoadName of the solution to loadmethodArgumentArgument passed to the solution onOpen
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
closeSolutionname

closeSolution(solutionToLoad, methodName)

dessIndent
Closes the currently open solution and optionally opens another solution, calling a specified global method with the specified arguments.
If the user has been logged in, this function keeps the user logged in and in the newly open solution, the login is skipped and the solution goes straight to the first form.
If you want to go to a different url, you need to call application.showURL(url) before calling application.closeSolution() (this is only applicable for Web Client).
An alternative option is security.logout() which also does a log out for the user (for solutions that require authentication).
prs

Parameters

sIndentsolutionToLoadName of the solution to loadmethodNameName of the global method to call
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
closeSolutionname

closeSolution(solutionToLoad, methodName, methodArgument)

dessIndent
Closes the currently open solution and optionally opens another solution, calling a specified global method with the specified arguments.
If the user has been logged in, this function keeps the user logged in and in the newly open solution, the login is skipped and the solution goes straight to the first form.
If you want to go to a different url, you need to call application.showURL(url) before calling application.closeSolution() (this is only applicable for Web Client).
An alternative option is security.logout() which also does a log out for the user (for solutions that require authentication).
prs

Parameters

sIndentsolutionToLoadName of the solution to loadmethodNameName of the global method to callmethodArgumentArgument passed to the global method
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
createNewFormInstancename

createNewFormInstance(designFormName, newInstanceScriptName)

dessIndent
Create a new form instance.
prs

Parameters

sIndentdesignFormNameName of the design formnewInstanceScriptNameName of the new form instance
ret

Returns

sIndent Boolean (true) if the instance was created succesfully, (false) otherwise
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
createWindowname

createWindow(windowName, type)

dessIndent
Creates a new window that can be used for displaying forms. Initially the window is not visible.
If there is already a window with the given name, it will be closed and destroyed prior to creating the new window.
Use the form controller show() and showRecords() methods in order to show a form in this window.
prs

Parameters

sIndentwindowNamethe name of the window. Should not be null.typethe type of the window. Can be one of JSWindow.DIALOG, JSWindow.MODAL_DIALOG, JSWindow.WINDOW. (WINDOW does not work for NGClient)
ret

Returns

sIndent the newly created window.
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
createWindowname

createWindow(windowName, type, parentWindow)

dessIndent
Creates a new window that can be used for displaying forms. Initially the window is not visible.
If there is already a window with the given name, it will be closed and destroyed prior to creating the new window.
Use the form controller show() and showRecords() methods in order to show a form in this window.
prs

Parameters

sIndentwindowNamethe name of the window. Should not be null.typethe type of the window. Can be one of JSWindow.DIALOG, JSWindow.MODAL_DIALOG, JSWindow.WINDOW (WINDOW doesn't work in NGClient).parentWindowthe parent JSWindow object. If it is not specified, the current window will be used as parent. This parameter is only used by dialogs.
ret

Returns

sIndent the newly created window.
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
executeLatername

executeLater(function, delay)

dessIndent
Runs at method at the given delay in milliseconds.

This is like a simple scheduler to quickly run something after a bit of delay
prs

Parameters

sIndentfunctionThe function to calldelayThe millis that has to elapse before the function is called.
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
executeLatername

executeLater(function, delay, arguments)

dessIndent
Runs at method at the given delay in milliseconds with the arguments given to the method.

This is like a simple scheduler to quickly run something after a bit of delay
prs

Parameters

sIndentfunctionThe function to calldelayThe millis that has to elapse before the function is called.argumentsThe arguments that are given to the function when called.
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
executeProgramname

executeProgram(program)

dessIndent
Execute a program and returns output. Specify the cmd as you would do in a console.
prs

Parameters

sIndentprogram(fullpath) of the program to execute
ret

Returns

sIndent The output generated by the program execution.
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
executeProgramname

executeProgram(program, params)

dessIndent
Execute a program and returns output. Specify the cmd as you would do in a console.
prs

Parameters

sIndentprogram(fullpath) of the program to executeparamsan array of strings as program arguments
ret

Returns

sIndent The output generated by the program execution.
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
executeProgramname

executeProgram(program, params, environmentVars)

dessIndent
Execute a program and returns output. Specify the cmd as you would do in a console.
prs

Parameters

sIndentprogram(fullpath) of the program to executeparamsan array of strings as program argumentsenvironmentVarsarray of strings, each element of which has environment variable settings in the format name=value, or null if the subprocess should inherit the environment of the current process.
ret

Returns

sIndent The output generated by the program execution.
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
executeProgramname

executeProgram(program, params, environmentVars, startDir)

dessIndent
Execute a program and returns output. Specify the cmd as you would do in a console.
prs

Parameters

sIndentprogram(fullpath) of the program to executeparamsan array of strings as program argumentsenvironmentVarsarray of strings, each element of which has environment variable settings in the format name=value, or null if the subprocess should inherit the environment of the current process.startDirthe working directory of the subprocess, or null if the subprocess should inherit the working directory of the current process.
ret

Returns

sIndent The output generated by the program execution.
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
executeProgramInBackgroundname

executeProgramInBackground(program)

dessIndent
Execute a program in the background. Specify the cmd as you would do in a console.
prs

Parameters

sIndentprogram(fullpath) of the program to execute
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
executeProgramInBackgroundname

executeProgramInBackground(program, params)

dessIndent
Execute a program in the background. Specify the cmd as you would do in a console.
prs

Parameters

sIndentprogram(fullpath) of the program to executeparamsan array of strings as program arguments
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
executeProgramInBackgroundname

executeProgramInBackground(program, params, environmentVars)

dessIndent
Execute a program in the background. Specify the cmd as you would do in a console.
prs

Parameters

sIndentprogram(fullpath) of the program to executeparamsan array of strings as program argumentsenvironmentVarsarray of strings, each element of which has environment variable settings in the format name=value, or null if the subprocess should inherit the environment of the current process.
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
executeProgramInBackgroundname

executeProgramInBackground(program, params, environmentVars, startDir)

dessIndent
Execute a program in the background. Specify the cmd as you would do in a console.
prs

Parameters

sIndentprogram(fullpath) of the program to executeparamsan array of strings as program argumentsenvironmentVarsarray of strings, each element of which has environment variable settings in the format name=value, or null if the subprocess should inherit the environment of the current process.startDirthe working directory of the subprocess, or null if the subprocess should inherit the working directory of the current process.
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
exitname

exit()

dessIndent
Stop and exit application.
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
generateBrowserFunctionname

generateBrowserFunction(functionString)

dessIndent
This generates a browser function for the given function string that can be executed in the browser
The resulting object can be assigned into a config/property object that is then assigned to a component
The component will receive this function as a real function object.

This is a more dynamic variant of the spec property "clientfunction" https://wiki.servoy.com/display/DOCS/Property+Types
prs

Parameters

sIndentfunctionStringThe function string of a js function that should be running in the clients browser.
ret

Returns

sIndent An object that can be assignd to a javascript/json object that is send to the client
clients

Supported Clients

sIndentNGClient
sam

Sample

sIdentjavascript
lastDetailRow
getActiveClientCountname

getActiveClientCount(currentSolutionOnly)

dessIndent
Get the active user count on the server (can be limited to current solution).
prs

Parameters

sIndentcurrentSolutionOnlyBoolean (true) to get the active user count on server only to the current solution
ret

Returns

sIndent Active user count on the server
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getActiveWindowname

getActiveWindow()

dessIndent
This gets the currently focused active window; this can be the main application window or a modal dialog.
For a webclient getWindow() can return the main window that is not really the main for the current tab in the browser
that can return the previous tab that a user could have opened. For this method is better suited because this
will give you the actual tab in the browser. Another call would be form.controller.getWindow() of a form that you know in which window it resides.
ret

Returns

sIndent the current active/focussed window.
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getApplicationTypename

getApplicationType()

dessIndent
Get the application type.
ret

Returns

sIndent Constant application type
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient,MobileClient
sam

Sample

sIdentjavascript
lastDetailRow
getClientCountForInfoname

getClientCountForInfo(info)

dessIndent
Gets the count for all clients displaying the same additional information
in the Clients page of Servoy Server Administration Console.
prs

Parameters

sIndentinfoThe additional client info string to search for.
ret

Returns

sIndent Number of clients
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getClientPropertyname

getClientProperty(name)

dessIndent
Sets a UI property.
prs

Parameters

sIndentnameName of the client property
ret

Returns

sIndent the property value for the given name/key, null of nothing was found
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getClipboardStringname

getClipboardString()

dessIndent
Gets a string from the clipboard, null if not a string or empty.
ret

Returns

sIndent The string from the clipboard
clients

Supported Clients

sIndentSmartClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getCurrentLookAndFeelNamename

getCurrentLookAndFeelName()

dessIndent
Gets the name of the current Look And Feel specified in Application Preferences.
ret

Returns

sIndent Current Look And Feel
clients

Supported Clients

sIndentSmartClient
sam

Sample

sIdentjavascript
lastDetailRow
getHostNamename

getHostName()

dessIndent
Get the name of the localhost.
ret

Returns

sIndent Name of the localhost
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getIPAddressname

getIPAddress()

dessIndent
Get the clients' IP address.
ret

Returns

sIndent IP address of the client
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getLicenseNamesname

getLicenseNames()

dessIndent
Get the names of the used client licenses (as strings in array).
ret

Returns

sIndent Client licenses names
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getLoggername

getLogger()

dessIndent
Get a JSLogger instance which offers an API for logging with arguments.
Available logging levels are (in order): fatal, error, warn, info, debug and trace.
If no loggerName is given to this method, it returns the default logger (LoggerFactory.getLogger(Debug.class))
NOTE: the default logging level of the the default logger is 'warn', so info, debug and trace events are not logged.
ret

Returns

sIndent a new JSLogger instance
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getLoggername

getLogger(loggerName)

dessIndent
Get a JSLogger instance which offers an API for logging with arguments.
Available logging levels are (in order): fatal, error, warn, info, debug and trace.
The argument should be the name of a logger that is configured in myServoyInstallationDir/application_server/log4j.xml.
A new logger can be configured in log4j.xml by adding the following line:
<Logger name="myLogger" level="INFO"/>
prs

Parameters

sIndentloggerNamethe name of the logger, as configured in log4j.xml
ret

Returns

sIndent a new JSLogger instance
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getMediaURLname

getMediaURL(mediaName)

dessIndent
Get the media url that can be used to server a media in NGClient.
prs

Parameters

sIndentmediaNameName of the media
ret

Returns

sIndent
clients

Supported Clients

sIndentNGClient
sam

Sample

sIdentjavascript
lastDetailRow
getOSNamename

getOSName()

dessIndent
Returns the name of the operating system of the client.
In Smart Client this will return os.name system property. In Web/NG Client will return "OSFamily majorVersion.minorVersion".
ret

Returns

sIndent Name of the operating system of the client
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getPrintersname

getPrinters()

dessIndent
Get all the printer names in an array.
ret

Returns

sIndent All printer names
clients

Supported Clients

sIndentSmartClient,WebClient
sam

Sample

sIdentjavascript
lastDetailRow
getScreenHeightname

getScreenHeight()

dessIndent
Get the screen height in pixels.
ret

Returns

sIndent Screen height
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getScreenWidthname

getScreenWidth()

dessIndent
Get the screen width in pixels.
ret

Returns

sIndent Screen width
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getServerTimeStampname

getServerTimeStamp()

dessIndent
Returns a date object initialized on server with current date and time.
For NG and web clients this is the same as new Date() in scripting.
ret

Returns

sIndent Server time
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getServerURLname

getServerURL()

dessIndent
Gets the HTTP server url.

This url will end with a / so don't append to this server url something that starts with a / again
because RFC 3986 says that the path of a url (the part after the domain[:poort]) can not start with 2 slashes.
ret

Returns

sIndent HTTP server URL
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient,MobileClient
sam

Sample

sIdentjavascript
lastDetailRow
getServerUUIDname

getServerUUID()

dessIndent
Get the uuid from this server instance (the same value that is shown on the admin page)
ret

Returns

sIndent
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getSolutionNamename

getSolutionName()

dessIndent
Returns the name of the current solution.
ret

Returns

sIndent Current solution name
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getSolutionReleasename

getSolutionRelease()

dessIndent
Get the solution release number.
ret

Returns

sIndent Current solution release number
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getStartupArgumentsname

getStartupArguments()

dessIndent
Get the parameters which are provided by startup.
It returns an array with 2 elements, a string that is the startup argument and a map containing all named startup arguments, or
null if there is no argument passed
ret

Returns

sIndent Array with 2 elements, a string that is the startup argument and a map containing all named startup arguments, or null if there is no argument passed
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getTimeStampname

getTimeStamp()

dessIndent
Returns a date object initialized in client with current date and time.
This should be used instead of new Date() for webclients when the clients are in different times zones then the server.
Then this call will really return a time that is the locals webclients time.
For NG clients this is only useful when displaying on the client using format property (Use local time), and then
this is equivalent to new Date() on the client side, so basically this can be used to pre-fill with 'now' such a display.
ret

Returns

sIndent Current time at the client
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getUUIDname

getUUID()

dessIndent
Get a new UUID object (also known as GUID) or convert the parameter (that can be string or byte array) to an UUID object. A table column marked as UUID will work with such objects.
ret

Returns

sIndent The new UUID object
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getUUIDname

getUUID(byteArray)

dessIndent
Get a new UUID object (also known as GUID) or convert the parameter (that can be string or byte array) to an UUID object. A table column marked as UUID will work with such objects.
prs

Parameters

sIndentbyteArrayByte array representing an uuid
ret

Returns

sIndent The new UUID object
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getUUIDname

getUUID(uuidString)

dessIndent
Get a new UUID object (also known as GUID) or convert the parameter (that can be string or byte array) to an UUID object. A table column marked as UUID will work with such objects.
prs

Parameters

sIndentuuidStringString representing an uuid
ret

Returns

sIndent The new UUID object
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getUserPropertyname

getUserProperty(name)

dessIndent
Get a persistent user property.

In NGClient this is stored in the locale storage of the browser, so it will be persisted over restarts as long as the user didn't clear the data.
prs

Parameters

sIndentnameName of the property
ret

Returns

sIndent Property value
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient,MobileClient
sam

Sample

sIdentjavascript
lastDetailRow
getUserPropertyNamesname

getUserPropertyNames()

dessIndent
Get all persistent user property names.
ret

Returns

sIndent Array of all user property names
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getValueListArrayname

getValueListArray(name)

dessIndent
Retrieve a valuelist as array, to get real-values for display-values.
NOTE: this doesn't return a value for a valuelist that depends on a database relation or is a global method valuelist.
prs

Parameters

sIndentnameThe name of the valuelist
ret

Returns

sIndent Named array for the valuelist
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getValueListDisplayValuename

getValueListDisplayValue(name, realValue)

dessIndent
Retrieve a valuelist display-value for a real-value.
NOTE: this doesn't return a value for a valuelist that depends on a database relation or is a global method valuelist.
prs

Parameters

sIndentnameName of the valuelistrealValueReal value of the valuelist
ret

Returns

sIndent Display value of the real value from the valuelist
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getValueListItemsname

getValueListItems(name)

dessIndent
Get all values from a custom or database type value list as dataset (with columns displayValue,realValue).
NOTE: this doesn't return a value for a valuelist that depends on a database relation or is a global method valuelist.
prs

Parameters

sIndentnameName of the valuelist
ret

Returns

sIndent DataSet with valuelist's display values and real values
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getValueListNamesname

getValueListNames()

dessIndent
Get all the valuelist names as array.
ret

Returns

sIndent Array with all valuelist names
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getVersionname

getVersion()

dessIndent
Returns the application version.
ret

Returns

sIndent Application version
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getVersionInfoname

getVersionInfo()

dessIndent
Get the full version information of this solution and all its modules.
This will return an object that is a map of Name(Sting)->Version(String) of the solution and all its modules.
ret

Returns

sIndent Name->Version map object.
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getWindowname

getWindow()

dessIndent
Get the main application window. This is the window that is created first for this client.

In a smart client this is always just the first started window where the solution is loaded in.
In a webclient the user may open the same solution in a new tab in the same browser. In that case the main solution
window will always be the first opened tab, even if that one was already closed.
application.getActiveWindow() will always return the currently active/focused window or dialog.
If you need the window of the current top-level form, controller.getWindow() of that form will
always return the correct window.
ret

Returns

sIndent the main application JSWindow.
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
getWindowname

getWindow(name)

dessIndent
Get a window by window name. When not supplying a name, the main application window is grabbed.
prs

Parameters

sIndentnamethe name of the window. If not specified, the main application JSWindow will be returned.
ret

Returns

sIndent the JSWindow with the specified name, or null if no such window exists.
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
isInDevelopername

isInDeveloper()

dessIndent
Returns true if the solution is running in the developer.
ret

Returns

sIndent Boolean (true) if the solution is running in the developer, (false) otherwise
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient,MobileClient
sam

Sample

sIdentjavascript
lastDetailRow
isLastPrintPreviewPrintedname

isLastPrintPreviewPrinted()

dessIndent
Check if the last printpreview did print.
ret

Returns

sIndent Boolean (true) is the last print preview did print, (false) otherwise
clients

Supported Clients

sIndentSmartClient,WebClient
sam

Sample

sIdentjavascript
lastDetailRow
outputname

output(msg)

dessIndent
Output something on the out stream. (if running in debugger view output console tab)
prs

Parameters

sIndentmsgObject to send to output stream
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient,MobileClient
sam

Sample

sIdentjavascript
lastDetailRow
outputname

output(msg, level)

dessIndent
Output something on the out stream. (if running in debugger view output console tab)
prs

Parameters

sIndentmsgObject to send to output streamlevelthe log level where it should log to.
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
overrideStylename

overrideStyle(originalStyleName, newStyleName)

dessIndent
Overrides one style with another. In NGClient, it overrides the original stylesheet media defined on a solution with another media.
prs

Parameters

sIndentoriginalStyleNameName of the style to overridenewStyleNameName of the new style
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
playSoundname

playSound(url)

dessIndent
Play a sound (AU file, an AIFF file, a WAV file, and a MIDI file).
prs

Parameters

sIndenturlURL of the sound file
clients

Supported Clients

sIndentSmartClient,WebClient
sam

Sample

sIdentjavascript
lastDetailRow
putClientPropertyname

putClientProperty(name, value)

dessIndent
Sets a UI property.
prs

Parameters

sIndentnameName of the client propertyvalueNew value of the client property
ret

Returns

sIndent Boolean (true) if the client property was set with the new value
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
redoname

redo()

dessIndent
Redo last action (if possible).
clients

Supported Clients

sIndentSmartClient
sam

Sample

sIdentjavascript
lastDetailRow
refreshGlobalMethodValueListname

refreshGlobalMethodValueList(element)

dessIndent
Refresh a global method valuelist by forcing it to call the global method. The element which has the valuelist must be provided.
If there is no propertyName specified, the element must have only one valuelist property.
prs

Parameters

sIndentelementform element
ret

Returns

sIndent boolean indicating if valuelist was refreshed
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
refreshGlobalMethodValueListname

refreshGlobalMethodValueList(element, propertyName)

dessIndent
Refresh a global method valuelist by forcing it to call the global method. The element which has the valuelist must be provided.
The valuelist is searched under provided property from the spec - for usage in NGClient custom components.
prs

Parameters

sIndentelementform elementpropertyNamename of property from the spec
ret

Returns

sIndent boolean indicating if valuelist was refreshed
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
removeAllClientInfoname

removeAllClientInfo()

dessIndent
Removes all names given to the client via the admin page.
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
removeClientInfoname

removeClientInfo(info)

dessIndent
Removes a string of client information which is stored on the server and
previously was added using the application.addClientInfo('client info')

This function can be called more than once, if you want to delete multiple
lines of client information.
prs

Parameters

sIndentinfoA line of text to be removed from the client information on behalf of the running Servoy client.
ret

Returns

sIndent boolean indicator if info was removed successfully
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
setClipboardContentname

setClipboardContent(string)

dessIndent
Sets a string object in the clipboard.
prs

Parameters

sIndentstringNew content of the clipboard
clients

Supported Clients

sIndentSmartClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
setNumpadEnterAsFocusNextEnabledname

setNumpadEnterAsFocusNextEnabled(enabled)

dessIndent
Set if numpad enter should behave like focus next.
prs

Parameters

sIndentenabledBoolean (true) if numpad enter should behave like focus next
clients

Supported Clients

sIndentSmartClient
sam

Sample

sIdentjavascript
lastDetailRow
setStatusTextname

setStatusText(text)

dessIndent
Set the status area value.
prs

Parameters

sIndenttextNew status text
clients

Supported Clients

sIndentSmartClient,WebClient
sam

Sample

sIdentjavascript
lastDetailRow
setStatusTextname

setStatusText(text, tooltip)

dessIndent
Set the status area value.

NOTE: Most modern browsers do not support status bar and status text anymore. This method sets status property of the window using javascript.
prs

Parameters

sIndenttextNew status texttooltipStatus tooltip text
clients

Supported Clients

sIndentSmartClient,WebClient
sam

Sample

sIdentjavascript
lastDetailRow
setToolbarVisiblename

setToolbarVisible(name, visible)

dessIndent
Make a toolbar visible or invisible.
prs

Parameters

sIndentnameName of the toolbarvisibleVisibility of the toolbar
clients

Supported Clients

sIndentSmartClient
sam

Sample

sIdentjavascript
lastDetailRow
setUserPropertyname

setUserProperty(name, value)

dessIndent
Sets a user property for this client: 
In NGClient this is stored in the locale storage of the browser, so it will be persisted over restarts as long as the user didn't clear the data.

For headless clients(including Batch Processors and Authentication clients) the user property is stored in memory and will be lost upon client restart.

For Web Client the user property will be stored in a persistent cookie

For Smart Client it will be stored in a properties file on the client machine.
prs

Parameters

sIndentnameName of the user propertyvalueNew value of the user property
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient,MobileClient
sam

Sample

sIdentjavascript
lastDetailRow
setValueListItemsname

setValueListItems(name, dataset)

dessIndent
Fill a custom type valuelist with values from array(s) or dataset.

NOTE: if you modify values for checkbox/radio field, note that having one value in valuelist is a special case, so switching between one value and 0/multiple values may have side effects
NOTE: This is expensive operation, which triggers refresh of all visible forms. Over usage of this method may inflict performance issues.
prs

Parameters

sIndentnameName of the valuelistdatasetDataset with display/real values
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
setValueListItemsname

setValueListItems(name, dataset, autoconvert)

dessIndent
Fill a custom type valuelist with values from array(s) or dataset.

NOTE: if you modify values for checkbox/radio field, note that having one value in valuelist is a special case, so switching between one value and 0/multiple values may have side effects
NOTE: This is expensive operation, which triggers refresh of all visible forms. Over usage of this method may inflict performance issues.
prs

Parameters

sIndentnameName of the valuelistdatasetDataset with display/real valuesautoconvertBoolean (true) if display values and return values should be converted to numbers
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
setValueListItemsname

setValueListItems(name, displayValues)

dessIndent
Fill a custom type valuelist with values from array(s) or dataset.

NOTE: if you modify values for checkbox/radio field, note that having one value in valuelist is a special case, so switching between one value and 0/multiple values may have side effects
NOTE: This is expensive operation, which triggers refresh of all visible forms. Over usage of this method may inflict performance issues.
prs

Parameters

sIndentnameName of the valuelistdisplayValuesDisplay values array
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient,MobileClient
sam

Sample

sIdentjavascript
lastDetailRow
setValueListItemsname

setValueListItems(name, displayValues, autoconvert)

dessIndent
Fill a custom type valuelist with values from array(s) or dataset.

NOTE: if you modify values for checkbox/radio field, note that having one value in valuelist is a special case, so switching between one value and 0/multiple values may have side effects
NOTE: This is expensive operation, which triggers refresh of all visible forms. Over usage of this method may inflict performance issues.
prs

Parameters

sIndentnameName of the valuelistdisplayValuesDisplay values arrayautoconvertBoolean (true) if display values and return values should be converted to numbers
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
setValueListItemsname

setValueListItems(name, displayValues, realValues)

dessIndent
Fill a custom type valuelist with values from array(s) or dataset.

NOTE: if you modify values for checkbox/radio field, note that having one value in valuelist is a special case, so switching between one value and 0/multiple values may have side effects
NOTE: This is expensive operation, which triggers refresh of all visible forms. Over usage of this method may inflict performance issues.
prs

Parameters

sIndentnameName of the valuelistdisplayValuesDisplay values arrayrealValuesReal values array
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient,MobileClient
sam

Sample

sIdentjavascript
lastDetailRow
setValueListItemsname

setValueListItems(name, displayValues, realValues, autoconvert)

dessIndent
Fill a custom type valuelist with values from array(s) or dataset.

NOTE: if you modify values for checkbox/radio field, note that having one value in valuelist is a special case, so switching between one value and 0/multiple values may have side effects
NOTE: This is expensive operation, which triggers refresh of all visible forms. Over usage of this method may inflict performance issues.
prs

Parameters

sIndentname ;displayValuesDisplay values arrayrealValuesReal values arrayautoconvertBoolean (true) if display values and return values should be converted to numbers
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
showCalendarname

showCalendar()

dessIndent
Show the calendar, returns selected date or null if canceled. Initial value and date format can be also specified.
ret

Returns

sIndent Selected date or null if canceled
clients

Supported Clients

sIndentSmartClient
sam

Sample

sIdentjavascript
lastDetailRow
showCalendarname

showCalendar(dateFormat)

dessIndent
Show the calendar, returns selected date or null if canceled. Initial value and date format can be also specified.
prs

Parameters

sIndentdateFormatDate format
ret

Returns

sIndent Selected date or null if canceled
clients

Supported Clients

sIndentSmartClient
sam

Sample

sIdentjavascript
lastDetailRow
showCalendarname

showCalendar(selectedDate)

dessIndent
Show the calendar, returns selected date or null if canceled. Initial value and date format can be also specified.
prs

Parameters

sIndentselectedDateDefault selected date
ret

Returns

sIndent Selected date or null if canceled
clients

Supported Clients

sIndentSmartClient
sam

Sample

sIdentjavascript
lastDetailRow
showCalendarname

showCalendar(selectedDate, dateFormat)

dessIndent
Show the calendar, returns selected date or null if canceled. Initial value and date format can be also specified.
prs

Parameters

sIndentselectedDateDefault selected datedateFormatDate format
ret

Returns

sIndent Selected date or null if canceled
clients

Supported Clients

sIndentSmartClient
sam

Sample

sIdentjavascript
lastDetailRow
showColorChoosername

showColorChooser()

dessIndent
Show the colorChooser. Returned value is in format #RRGGBB or null if canceled.
ret

Returns

sIndent selected color or null if canceled
clients

Supported Clients

sIndentSmartClient
sam

Sample

sIdentjavascript
lastDetailRow
showColorChoosername

showColorChooser(colorString)

dessIndent
Show the colorChooser. Returned value is in format #RRGGBB or null if canceled.
prs

Parameters

sIndentcolorStringDefault color
ret

Returns

sIndent selected color or null if canceled
clients

Supported Clients

sIndentSmartClient
sam

Sample

sIdentjavascript
lastDetailRow
showFontChoosername

showFontChooser()

dessIndent
Show the font chooser dialog. Returns the selected font. Can specify a default font.
ret

Returns

sIndent selected font
clients

Supported Clients

sIndentSmartClient
sam

Sample

sIdentjavascript
lastDetailRow
showFontChoosername

showFontChooser(defaultFont)

dessIndent
Show the font chooser dialog. Returns the selected font. Can specify a default font.
prs

Parameters

sIndentdefaultFontDefault font
ret

Returns

sIndent selected font
clients

Supported Clients

sIndentSmartClient
sam

Sample

sIdentjavascript
lastDetailRow
showFormname

showForm(form)

dessIndent
Show the form specified by the parameter, that can be a name (is case sensitive!) or a form object.
This will show the form in the active/currently focused window. So when called from a form in a dialog the dialog will show the form.
prs

Parameters

sIndentformForm object or name
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
showI18NDialogname

showI18NDialog()

dessIndent
Opens the i18n dialog so users can change translations. Returns the key selected by the user (not it's translation)  or null if cancel is pressed. Optional parameters specify the initial selections in the dialog.
ret

Returns

sIndent selected I18N key or null if cancel is pressed
clients

Supported Clients

sIndentSmartClient
sam

Sample

sIdentjavascript
lastDetailRow
showI18NDialogname

showI18NDialog(keyToSelect)

dessIndent
Opens the i18n dialog so users can change translations. Returns the key selected by the user (not it's translation)  or null if cancel is pressed. Optional parameters specify the initial selections in the dialog.
prs

Parameters

sIndentkeyToSelectDefault selected key
ret

Returns

sIndent selected I18N key or null if cancel is pressed
clients

Supported Clients

sIndentSmartClient
sam

Sample

sIdentjavascript
lastDetailRow
showI18NDialogname

showI18NDialog(keyToSelect, languageToSelect)

dessIndent
Opens the i18n dialog so users can change translations. Returns the key selected by the user (not it's translation)  or null if cancel is pressed. Optional parameters specify the initial selections in the dialog.
prs

Parameters

sIndentkeyToSelectDefault selected keylanguageToSelectDefault selected language
ret

Returns

sIndent selected I18N key or null if cancel is pressed
clients

Supported Clients

sIndentSmartClient
sam

Sample

sIdentjavascript
lastDetailRow
showURLname

showURL(url)

dessIndent
Shows an URL in a browser.
prs

Parameters

sIndenturlURL to show
ret

Returns

sIndent Boolean (true) if URL was shown
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
showURLname

showURL(url, browserTarget)

dessIndent
Shows an URL in a browser.
prs

Parameters

sIndenturlURL to showbrowserTargetTarget frame or named dialog/window
ret

Returns

sIndent Boolean (true) if URL was shown
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
showURLname

showURL(url, browserTarget, timeout)

dessIndent
Shows an URL in a browser.
prs

Parameters

sIndenturlURL to showbrowserTargetTarget frame or named dialog/windowtimeoutA timeout in seconds when the url should be shown
ret

Returns

sIndent Boolean (true) if URL was shown
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
showURLname

showURL(url, browserTarget, browserTargetOptions)

dessIndent
Shows an URL in a browser.
prs

Parameters

sIndenturlURL to showbrowserTargetTarget frame or named dialog/windowbrowserTargetOptionsDialog options used when a dialog is specified / a timeout in seconds when the url should be shown
ret

Returns

sIndent Boolean (true) if URL was shown
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
showURLname

showURL(url, browserTarget, browserTargetOptions, timeout)

dessIndent
Shows an URL in a browser.
prs

Parameters

sIndenturlURL to showbrowserTargetTarget frame or named dialog/windowbrowserTargetOptionsDialog options used when a dialog is specified / a timeout in seconds when the url should be showntimeoutA timeout in seconds when the url should be shown
ret

Returns

sIndent Boolean (true) if URL was shown
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
sleepname

sleep(ms)

dessIndent
Sleep for specified time (in milliseconds).
prs

Parameters

sIndentmsSleep time in milliseconds
clients

Supported Clients

sIndentSmartClient,WebClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
undoname

undo()

dessIndent
Undo last action (if possible).
clients

Supported Clients

sIndentSmartClient
sam

Sample

sIdentjavascript
lastDetailRow
updateUIname

updateUI()

dessIndent
Updates the UI (painting). If in a script an element changed and the script continues doing
things, you can give an number in ms how long this can take.
Warning: this gives the UI time to paint, but this also means that it will give the ui time to respond to all other events,
so if a user keeps clicking on other stuff this will also be handled right away inside this call.

NOTE:In NGClient, this method will send to browser all outstanding changes. If called too often (with many changes), can cause performance issues.
clients

Supported Clients

sIndentSmartClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow
updateUIname

updateUI(milliseconds)

dessIndent
Updates the UI (painting). If in a script an element changed and the script continues doing
things, you can give an number in ms how long this can take.
Warning: this gives the UI time to paint, but this also means that it will give the ui time to respond to all other events,
so if a user keeps clicking on other stuff this will also be handled right away inside this call.

NOTE:In NGClient, this method will send to browser all outstanding changes. If called too often (with many changes), can cause performance issues.
prs

Parameters

sIndentmillisecondsHow long the update should take in milliseconds
clients

Supported Clients

sIndentSmartClient,NGClient
sam

Sample

sIdentjavascript
lastDetailRow