Docs
ServoyCloudSupportSamplesOpen SourceCommunity
  • Home
  • GUIDES
    • Platform Overview
    • Get Servoy
    • Get Started
      • Chapter 0
      • Chapter 1
      • Chapter 2
      • Chapter 3
      • Chapter 4
      • Chapter 5
    • Get Help
      • SuLA Instructions
      • SuLA Terms
    • Develop
      • Application Design
        • Forms
          • Layout Management
            • Simple Layout
            • Fully Responsive
              • Bootstrap 12-Grid
              • Flexbox
              • Custom Div
              • Collapsible Container
              • Simple Collapsible
              • Center Container
              • Inline Group Container
            • Abstract Form
          • Form Containers
            • Form Container
            • Tab Panel
            • Split Pane
            • Collapse
            • Accordion Panel
            • Form Component
            • List Form Component
          • Form Inheritance
          • Form Components
        • UI Components
          • Buttons and Text
            • Badge
            • Button
            • Data Label
            • Dropdown
            • Image
            • Label
          • Grids
            • Data Grid
            • Power Grid
            • Table
          • Input Controls
            • Calendar
            • Calendar Inline
            • Checkbox
            • Choice Group
            • Combobox
            • Group Buttons
            • Html Area
            • Input Group
            • Rating
            • Slider
            • Switch
            • Spinner
            • TextArea
            • Textbox
            • TextBoxGroup
            • Type Ahead
            • select2tokenizer
          • Media
            • Carousel
            • Embedded YouTube
            • File upload
            • Image label
            • Lightbox Gallery
            • MultiFile Upload
            • PDF JS Viewer
            • PDF Viewer
          • Mobile
            • Native Data List
            • Native Select
          • Navigation
            • Breadcrumbs
            • Navbar
            • sidenav
          • Visualization
            • DBTreeview
            • Progress Bar
            • Treeview
            • ChartJS
              • Data Labels Plugin
              • Funnel Chart
              • OutLabels Plugin
              • TreeMap
          • Specialized Components
            • Smart Document Editor
            • Servoy PDF Viewer
            • Fullcalendar Component
              • Fullcalendar
              • Fullcalendar Events
              • Migrating calendar from Smart and Web client to NG client
            • Fullcalendar Component 2
            • Canvas
            • Google Charts
            • Google Maps
            • svySignature
            • svywebcam
        • Styling and Themes
          • Default Theme Properties
          • CSS / LESS
          • Component Variants
          • Font Icons
        • Data Modeling
          • Databases
            • Tables
              • Columns
              • Calculations
              • Aggregations
              • Methods
              • Events / Triggers
              • Table security
            • Views
            • Procedures
          • Relations
          • Value Lists
          • Menus
          • In-Memory Databases
          • View Datasource
        • Modular Design
      • Programming Guide
        • Scripting the UI
          • Scripting Forms
          • Interacting with Components
          • Navigation
          • Windows, Dialogs and Popups
          • Events Manager
        • Working with Data
          • Concepts
          • Loading
          • Sorting
          • Iterating
          • Searching
            • Find mode
            • Query Builder
            • SQL String
          • Filtering
          • Editing
          • Validation
        • Automation and Scheduling
          • Batch Processor
          • Headless API
          • Scheduler API
        • Creating REST APIs
        • Consuming Webservices
        • Working with Files
          • File Plugin Basics
          • Images
          • Excel
          • PDF
          • JSON
        • Browser Utilities
          • Notifications
            • Web Notifications (Toastr)
            • Web Notifications (Native)
            • Block UI
          • Session Management
          • Keyboard Utilities
          • NG Utils
        • Sending and Receiving Email
        • Servoy Jasper Reports
          • Input Type
          • Display Mode
          • Output format
          • Jaspe Reports Viewer
        • Extensions
          • Modules
            • svyPhonegap
              • First Use Guide
              • Barcode Scanner
              • Browser
              • Camera
              • File
              • Fingerprint
              • Location
              • Network Interface
              • Phonegap
              • Printer
              • Push Notifications
            • svyAPI
              • Getting Started
            • svyLookup
              • Custom Templates
              • API Documentation
              • svyLookup v1
                • API Documentation v1.0.0
                • Base Form svyLookupTable v1.0.0
                • Base Form AbstractLookup v1.0.0
            • svyNavigation
              • API Documentation
                • API svyNavigation
                • API svyNavigationHistory
                • API svyNavigationUX
            • svyPopupFilter
              • Simple Filter Pickers
              • Custom Templates
              • API Documentation
                • API svyToolbarFilter
                • API svyPopupFilter
              • API Documentation v1
                • API svyToolbarFilter v1
                • API svyPopupFilter v1
            • svySearch
            • svySecurity
              • Overview
              • Token-based Auth and SSO (NEW!)
              • API Documentation
              • Getting Started
              • Tenant replication
              • Security Management Console
                • Classic Security Management Console
              • svySecurityUX
              • svyProperties
              • API Doc svyProperties
            • svyUtils
              • Log Manager
              • Log Manager Appenders
              • Smart Doc Editor Utils
              • Custom Dialogs
              • Excel Utils
                • Full API Reference
              • Crypto Utils
      • Security
        • Authentication
        • Permissions
          • UI Permissions
          • Data Permissions
          • Runtime Permissions
        • Audit Logging
        • OAuth
        • JWT
      • Multi-Language Support
      • Mobile Development
        • Getting Started
        • Mobile Design
        • Native Mobile Integrations
        • Building a Native Binary for the App Store
      • Native Desktop Development
        • NGDesktop UI plugin
        • NGDesktop Utils
        • NGDesktop File Plugin
    • Deploy
      • WAR Deployment
      • Docker Deployment
      • Server Configuration
        • Server Settings
        • Server Plugins
        • Database Servers
          • Locks
          • Transactions
          • Oracle
          • SQLServer
        • Client Sessions
        • Batch Processors
        • License Management
        • Monitoring
          • Server Log
          • Browser Console Log
          • Websocket Log
          • Query Performance
          • Client Performance
          • Client Event Tracing
          • Monitoring Servoy with JMX
      • NGClient deployment
      • Troubleshooting
      • Other Topics
        • Security: Cross-site Scripting
        • Running in an iFrame
    • Extend
    • Contribute
  • Reference
    • Servoy Core
      • Object Model
        • Database Server
          • Table
            • Column
            • Calculation
            • Method
            • Aggregation
          • View
          • Procedure
        • Solution
          • Form
          • Form Component
          • Relation
          • Relation Item
          • Table Node
          • Value List
          • Menu
          • Menu item
          • In-Memory Data Source
          • View Foundset Data Source
          • Variable
          • Column Info
          • Media
          • Layout Container
          • Method
        • i18n Message Key
      • Developer API
        • Globals
        • Forms
          • RuntimeForm
            • controller
            • containers
              • RuntimeContainer
            • elements
              • Component
              • RuntimeAccordionPanel
              • RuntimeBean
              • RuntimeButton
              • RuntimeCalendar
              • RuntimeCheck
              • RuntimeCombobox
              • RuntimeComponent
              • RuntimeDataButton
              • RuntimeDataLabel
              • RuntimeGroup
              • RuntimeHtmlArea
              • RuntimeImageMedia
              • RuntimeInsetList
              • RuntimeLabel
              • RuntimeListBox
              • RuntimePassword
              • RuntimePortal
              • RuntimeRadio
              • RuntimeChecks
              • RuntimeRadios
              • RuntimeRectangle
              • RuntimeRtfArea
              • RuntimeSpinner
              • RuntimeSplitPane
              • RuntimeTabPanel
              • RuntimeTextArea
              • RuntimeTextField
              • RuntimeWebComponent
        • JS Lib
          • Array
          • BigInt
          • Boolean
          • Date
          • Function
          • IterableValue
          • Iterator
          • JSON
          • Map
          • Set
          • Math
          • Namespace
          • Number
          • Object
          • Promise
          • QName
          • RegExp
          • Special Operators
          • Statements
          • String
          • XML
          • XMLList
        • Application
          • APPLICATION_TYPES
          • CLIENTDESIGN
          • DRAGNDROP
          • ELEMENT_TYPES
          • LOGGINGLEVEL
          • NGCONSTANTS
          • UICONSTANTS
          • CSSPosition
          • JSDimension
          • JSDNDEvent
          • JSEvent
          • JSLogger
          • JSLogBuilder
          • JSPoint
          • JSUpload
          • JSWindow
          • JSBounds
          • Renderable
          • UUID
        • SolutionModel
          • ALIGNMENT
          • ANCHOR
          • BEVELTYPE
          • CURSOR
          • DEFAULTS
          • FONTSTYLE
          • MEDIAOPTION
          • PAGEORIENTATION
          • PRINTSLIDING
          • SCROLLBAR
          • TITLEJUSTIFICATION
          • TITLEPOSITION
          • UNITS
          • JSBean
          • JSButton
          • JSCalculation
          • JSComponent
          • JSDataSourceNode
          • JSField
          • JSForm
          • JSLabel
          • JSMedia
          • JSMethod
          • JSPart
          • JSPortal
          • JSRelation
          • JSRelationItem
          • JSStyle
          • JSTab
          • JSTabPanel
          • JSValueList
          • JSVariable
          • JSTitle
          • JSChecks
          • JSCombobox
          • JSHeader
          • JSInsetList
          • JSList
          • JSPassword
          • JSRadios
          • JSText
          • JSTextArea
          • JSWebComponent
          • JSLayoutContainer
        • Database Manager
          • QUERY_COLUMN_TYPES
          • SQL_ACTION_TYPES
          • JSColumn
          • JSDataSet
          • JSBaseRecord
          • JSBaseSqlRecord
          • JSBaseFoundset
          • JSBaseSQLFoundset
          • JSFoundSet
          • JSFoundSetUpdater
          • JSRecord
          • JSRecordMarker
          • JSRecordMarkers
          • JSTable
          • JSTableFilter
          • MenuFoundSet
          • MenuItemRecord
          • QBAggregate
          • QBAggregates
          • QBCase
          • QBCaseWhen
          • QBColumn
          • QBColumns
          • QBCondition
          • QBFunction
          • QBFunctions
          • QBGroupBy
          • QBJoin
          • QBJoins
          • QBLogicalCondition
          • QBParameter
          • QBParameters
          • QBPart
          • QBResult
          • QBSearchedCaseExpression
          • QBSelect
          • QBSort
          • QBSorts
          • QBTableClause
          • QBWhereCondition
          • ViewFoundSet
          • ViewRecord
        • Events Manager
          • EVENTS_AGGREGATION_TYPES
          • EventType
        • Menus
          • JSMenu
          • JSMenuItem
        • JSMenuDatasource
        • Utils
        • Client Utils
          • JSBlobLoaderBuilder
        • History
        • Security
        • i18n
        • ServoyException
          • DataException
        • JSUnit
        • Datasources
          • DBDataSource
          • DBDataSourceServer
          • JSConnectionDefinition
          • JSDataSource
          • MemDataSource
          • MenuDataSource
          • SPDataSource
          • SPDataSourceServer
          • ViewDataSource
        • JSViewDatasource
        • servoyDeveloper
        • enum
    • Extensions
      • UI Components
        • Buttons and Text
          • Badge
          • Button
          • Data Label
          • Drop Down
          • Image
          • Label
        • Form Containers
          • Accordion Panel
          • Collapse
          • Form Container
          • Form Component Container
          • List Form Component
          • Default Loading Indicator
          • Error Bean
          • Portal
          • Responsive Container
          • Servoy Default Navigator
          • Slider
          • Split Pane
          • TabPanel
        • Grids
          • Data Grid
          • Power Grid
          • Table
        • Input Controls
          • Calendar
          • Calendar Inline
          • Checkbox
          • Choice Group
          • Combobox
          • Floatinglabel Calendar
          • Floatinglabel Combobox
          • Floatinglabel Textarea
          • Floatinglabel Textbox
          • Floatinglabel Type Ahead
          • Group Buttons
          • Html Area
          • Input Group
          • Rating
          • Select2tokenizer
          • Slider
          • Spinner
          • Switch
          • TextArea
          • TextBox
          • TextBox Group
          • Type Ahead
        • Media
          • Carousel
          • Embedded YouTube
          • File upload
          • Image label
          • Lightbox Gallery
          • MultiFile Upload
          • PDF JS Viewer
          • PDF Viewer
        • Mobile
          • Native Data List
          • Native Select
        • Navigation
          • Breadcrumbs
          • Navbar
          • sidenav
        • SmartDocEditor
          • Smart Document Editor
        • Visualization
          • Canvas
          • Chart
          • Custom List
          • DBTreeview
          • Foundset List
          • Fullcalendar
          • Gauge
          • Google Maps
          • Kanban
          • Progress Bar
          • Treeview
      • Server Plugins
        • amortization
          • AmortizationCalculation
          • Polynomial
        • clientmanager
          • Broadcaster
          • JSClientInformation (cm)
        • excelxport
        • file
          • JSFile
          • JSProgressMonitor
        • headlessclient
          • JSClient
        • http
          • HTTP_STATUS
          • Cookie
          • DeleteRequest
          • GetRequest
          • HeadRequest
          • HttpClient
          • HttpClientConfig
          • OptionsRequest
          • PostRequest
          • PutRequest
          • Response
          • TraceRequest
          • PatchRequest
          • JSFileUpload
        • images
          • JSImage
        • jwt
          • Algorithm
          • Builder
          • JWTClaims
        • mail
          • Attachment
          • MailMessage
        • maintenance
          • JSClientInformation
          • JSColumnObject
          • JSServer
          • JSTableObject
        • mobileservice
          • OfflineDataDescription
        • oauth
          • ClientAuthentication
          • CustomApiBuilder
          • OAuthProviders
          • OAuthRequest
          • OAuthResponse
          • OAuthResponseBinary
          • OAuthResponseJSON
          • OAuthResponseText
          • OAuthService
          • OAuthServiceBuilder
          • OAuthTokenExtractors
          • RequestType
        • pdf_output
        • rawSQL
        • RestWs plugin
        • rest_ws
          • WsContents
          • WsCookie
          • WsRequest
          • WsResponse
        • scheduler
        • serialize
        • textxport
          • DataProviderExport
          • TabExporter
        • udp
          • JSPacket
        • XmlReader
          • XmlNode
      • Browser Plugins
        • Block UI
        • Block UI (ref)
        • Dialogs Plugin
        • Idle
        • Idle (ref)
        • Key Listener
        • Key Listener (ref)
        • NGDesktop File
        • NGDesktop File (ref)
        • NGDesktop UI (ref)
        • NGDesktop Utils (ref)
        • NG Utils (ref)
        • Office Javascript API for Servoy
        • Phonegap
        • Web Notifications (Native)
        • Web Notifications (Toastr)
        • Window Plugin
        • Font Awesome
      • Modules
        • Smart Doc Editor Utils
        • svyAPI
          • Getting Started
        • svyLookup
          • Custom Templates
          • API Documentation
          • svyLookup v1
            • API Documentation v1.0.0
            • Base Form svyLookupTable v1.0.0
            • Base Form AbstractLookup v1.0.0
        • svyLookupExample
        • svyNavigation
          • API Documentation
            • API svyNavigation
            • API svyNavigationHistory
            • API svyNavigationUX
        • svyNavigationUX
        • svyNavigationUXSample
        • svyPopupFilter
          • Simple Filter Pickers
          • Custom Templates
          • API Documentation
            • API svyToolbarFilter
            • API svyPopupFilter
          • API Documentation v1
            • API svyToolbarFilter v1
            • API svyPopupFilter v1
        • svyProperties
        • svySearch
        • svySecurity
          • Overview
          • Token-based Auth and SSO (NEW!)
          • API Documentation
          • Getting Started
          • Tenant replication
          • Security Management Console
            • Classic Security Management Console
          • svySecurityUX
          • svyProperties
          • API Doc svyProperties
        • svySecurityConsole
        • svySecurityUX
        • svyUtils
          • Log Manager
          • Log Manager Appenders
          • Smart Doc Editor Utils
          • Custom Dialogs
          • Excel Utils
          • Full API Reference
          • Crypto Utils
        • svyUtils$Excel
        • svyUtils$NGClient
        • svyUtils$customDialogs
        • svyUtils$logManagerAppenders
        • svyUtils$tableGrid
      • Layout
        • Boostrap 12grid layout
          • Collapsible Container
          • Simple Collapsible
          • Center Container
          • Inline Group Container
          • Flexbox Layout
      • Solutions
        • Sample Application
          • Tutorial Part 1
          • Tutorial Part 2
      • Packages
        • UI Component Packages
          • Advanced Renderers
          • Bootstrap Components
          • Bootstrap Extra Components
          • Canvas
          • Chart JS
          • Fullcalendar Component
          • googlemaps
          • kanban
          • Servoy Core
          • Servoy Extra Components
          • Servoy NG-Grids
          • Servoy PDF Viewer
          • smartDocumentEditor
        • Browser Plugin Packages
          • Block UI
          • Core NG only Services
          • Key Listener
          • NGDesktop File
          • NGDesktop UI
          • NGDesktop Utils
          • Web Notifications
          • Idle Web Service
    • Servoy Developer
      • Menu
        • File
        • Edit
        • Source
        • Refactor
        • Navigate
        • Search
        • Project
        • Actions
        • Run
        • Window
        • Help
      • Toolbar
      • Solution Explorer
        • Resources
          • Database Servers
            • Database Server
              • Procedures
              • Tables
              • Views
          • Security
          • i18n
        • All Solutions
          • Solution
          • Active Solution
            • Scopes
              • Scope
                • Variables
            • Forms
              • Working Set
              • Form
                • Controller
                • Variables
                • Elements
                • Relations
            • Form Components
              • Form Component
            • Relations
              • Relation
            • ValueLists
              • ValueList
            • Menus
              • Menu
                • MenuItem
            • Media
              • Folder
              • File
            • DataSources
              • In Memory DataSources
                • In Memory DataSource
              • View Foundsets DataSources
                • View Foundset DataSources
            • Servoy Packages
              • Package
            • Modules
              • Module
        • Solution Explorer Contextual List
      • Views
        • Command Console
        • Console
        • Problems
        • Tasks
        • Bookmarks
        • Search
        • Form Hierarchy
        • Help
        • JUnit
        • Outline
        • Profiler
        • Properties
        • Project Explorer
        • Call Hierarchy
      • Editors and Wizards
        • Property configurator for columns
        • Relation Editor
        • Text Format Editor
        • Date Format Editor
        • Number Format Editor
        • Database Synchronization Wizard
        • Security Editor
        • SQL Editor
        • i18n Editor
        • File Import Wizard
        • File Export Wizard
        • WAR Export Wizard
        • NGDesktop Export Wizard
        • Table Editor
        • Metadata Synchronization Wizard
        • Database Server Connection Editor
        • Text Property Editor
        • Valuelist Editor
        • Form Editor
          • Parts of the Form Editor
          • Designing a Form
          • Layout Tools
          • Using Containers
          • Creating and Using Forms
          • Using Servoy Beans
          • Using Shapes
          • Form Editor Subtabs
          • [Tips and Shortcuts][reference/servoy-developer/object-editors/form-editor-tips_and_shortcuts.md]
          • Editong a Responsive LayoutForm
          • CSS Positioning
        • Form Hierarchy
        • Component Properties Editor
        • Variable Editor
        • Method Selection Wizard
        • New Solution Wizard
        • Application Event Types Editor
        • New Form Wizard
        • Form Dataproviders Configurator
        • Servoy Resource Locator
        • Datasource Selection Wizard
        • Sorting Fields Wizard
        • Scripting Editor
          • Getting Started-Overview of Script Editor
          • Code Writing Features
          • Code Navigation
          • Code Rewriting Tools
          • Refactoring
          • Code Formatting
          • Script Editor Tips and Shortcuts
          • Unit Tests
        • Theme Editor
          • General Properties
          • Sidenav Properties
          • Navbar Properties
          • Tabs Properties
          • Windows Properties
          • Dialogs Properties
          • Tables Properties
          • Breadcrumb specific style Properties
          • Brand colors Properties
          • Validations Properties
          • Margins and Padding Properties
        • Editor Selection
        • Run Configurations
        • Debug Configurations
        • Externalize Strings Wizard
        • Font Chooser Wizard
        • Color Chooser Wizard
        • Project Properties Configurator
        • Move Wizard
        • External Tools Configurations
        • About Servoy Developer
        • Servoy Developer Installation Details
        • Eclipse Marketplace Wizard
        • Install Available Software Wizard
        • Cheat Sheet Selection Wizard
        • Servoy Developer Help Wizard
        • Switch to Editor Wizard
        • Find Actions Wizard
        • Customize Perspective Configurator
        • Quick Search Wizard
        • Search Wizard
        • Encoding Wizard
        • Task Wizard
        • Find - Replace Wizard
        • Properties Editor
        • New Project Wizard
        • New Method Wizard
        • New Menu Wizard
          • New MenuItem Wizard
        • Menu Editor
        • ServoyMenu Selection Wizard
        • JSMenu compatible component selector
        • Permissions Configuration Dialog
      • Project File Structure
        • Servoy Installation Directory
          • servoy.properties
        • Workspace Folder
          • Resources Directory
            • Database Information (.dbi) Files
          • Solution Folder
      • Package Manager
      • Preferences
      • Property Types for components / services
      • Debugger
        • Debug Explorer
        • Breakpoints
          • Breakpoint Properties
        • Variables
        • Expressions
        • Interactive Console
    • Application Server
    • Servoy Cloud
      • Cloud Control Center
        • Home
          • Setup Namespace
          • User profile
            • My Profile
            • Support
        • Download IDE
        • Application Overview
          • Applications
            • Pipelines
              • Jobs
                • Packages
                  • Commits
                  • Artifacts
                  • Configuration
                  • Quality reports
                  • Build markers
                • Job Configuration
                  • Build and Deploy or Build
                  • Mobile
                  • Desktop
            • Environments
              • Metrics
                • Users
                • Databases
                  • Metrics
                • System Health
                • Log Activity
                • App performance
                • Query performance
              • Cloud reporting
            • Security
              • Permissions
              • Tenants
            • Reports
            • Security Login Designer
              • Single Sign-On
                • Sign in with Google
                • Sign in with Microsoft
          • Code Repositories
        • Project Management
          • Tickets
          • Backlog
          • Active Sprints
        • User Management
          • Users
          • Roles
        • Administration
          • Security
            • ServoyCloud Roles
          • Credentials
          • Settings
        • Add-Ons
      • Database Backup
      • E2E Cypress Testing
        • Using Cypress
      • On-Premise Deployment
      • Privacy policy (ServoyAI)
      • FAQ
      • Migrate to Servoy Cloud
    • Extensions Developement
      • Component and Services
        • Component Development
        • Service Development
        • Tools and Dev Tips to use for Component/Service developement
        • Manifest (.mf file)
        • Specification (.spec file)
          • Property Types
            • Array property types
            • Custom object property types
            • Findmode property type
            • Foundset property type
            • Tags
        • Directives And Filters
          • Sablotabsequence
        • Console (serverside)
        • ServoyApi (serverside)
      • Serverside Plugins
        • Data Convertors and Validators
        • UI Convertors
  • Release notes
    • Release notes
      • 2025.03
      • 2024.03 (LTS)
      • 2023.03 (LTS)
      • 2025.03 (Servoy Cloud)
      • 2024.12
      • 2024.12 (Servoy Cloud)
      • 2024.09
      • 2024.09 (Servoy Cloud)
      • 2024.06
      • 2024.06 (Servoy Cloud)
      • 2024.03 (Servoy Cloud)
      • 2023.12
      • 2023.12 (Servoy Cloud)
      • 2023.09
      • 2023.09 (Servoy Cloud)
      • 2023.06
      • 2022.03 (LTS)
      • 2022.12 What's new
      • 2022.12
      • 2022.09 What's new
      • 2022.09
      • 2022.06 What's new
      • 2022.06
      • 2021.03.3 (LTS)
Powered by GitBook
On this page
  • Overview
  • Vertical Ruler Context Menu Commands
  • Toggle Breakpoint
  • Disable Breakpoint
  • Toggle Watchpoint
  • Validate
  • Add Bookmark
  • Add Task
  • Show Quick Diff
  • Show Revision Information
  • Show Line Numbers
  • Folding
  • Preferences
  • Breakpoint Properties
  • Outline Bar Context Menu Commands
  • Preferences
  • Validate
  • Editor Area Context Menu Commands
  • Undo Typing
  • Revert File
  • Save
  • Open Declaration
  • Open Call Hierarchy
  • Quick Outline
  • Open With
  • Show In
  • Cut
  • Copy
  • Paste
  • Quick Fix
  • Refactor
  • Source
  • Search
  • Run As
  • Debug As
  • Compare With
  • Replace With
  • Validate
  • Preferences
  • Open in Form Editor
  • Open Form Hierarchy
  • Setting General Preferences for Script Editor
  • Opening the Script Editor
  • Creating Business Logic in Script Editor
  • From the Form Editor
  • Via the Solution Explorer Tree--New Method
  • Moving Code from the Solution Explorer into the Script Editor

Was this helpful?

  1. Reference
  2. Servoy Developer
  3. Editors and Wizards
  4. Scripting Editor

Getting Started-Overview of Script Editor

PreviousScripting EditorNextCode Writing Features

Last updated 10 months ago

Was this helpful?

Overview

This section describes the parts of the Script Editor and gives the basics on opening and working with scripts in Script Editor.

The Script Editor view displays the JavaScript functions and variables related to a Servoy resource. During editing, the Script Editor interacts with the surrounding views, including the Solution Explorer on its left, the Properties view on the right, and the Problems view at the bottom.

The Script Editor itself consists of the following parts:

  1. Vertical Ruler – This ruler shows line numbers and icons for cautions and warnings. The sidebar is customizable through the contextual menu (right-click on the sidebar) for the following options:

    • Showing Line Numbers (toggle)

    • Enabling Folding (with options available for expanding/collapsing, as well as collapsing blocks and comments in the submenu)

    • Showing Quick Diff (addressed in the Code Navigation section)

  2. Outline Bar – This bar is a navigational tool that includes the complete code range. Colored bars indicating markers, such as cautions, warnings, and bookmarks, are shown relative to their position in the entire document. Users can click on any of these bars to jump to the item flagged by the bars.

  3. Editor Area – This is the script editing area. Code coloring is turned on by default. This and other options, such as fonts, can be customized via the context menu item Preferences (see ).

Vertical Ruler Context Menu Commands

A summary of commands available on Vertical Ruler section of the Servoy Editor via right-click context menu:

Command
Summary

Adds or removes a breakpoint at the current line

Disables the breakpoint at the current line

Toggles a watchpoint for a variable

Validates the current file or selection

Adds a bookmark at the current line

Adds a task at the current line

Shows differences between current and previous versions

Displays revision history for the current line

Toggles the display of line numbers

Manages code folding options

Opens preferences for the editor

Opens properties for the selected breakpoint

Toggle Breakpoint

Adds or removes a breakpoint at the current line in the code editor. Breakpoints are used to pause the execution of the application at specific points, allowing you to inspect the state of the application and debug issues.

Disable Breakpoint

Disables the breakpoint at the current line without removing it. This allows you to temporarily ignore the breakpoint during debugging sessions.

Toggle Watchpoint

Toggles a watchpoint for a variable, allowing you to monitor changes to the variable's value during execution. Watchpoints are useful for tracking the behavior of specific variables and identifying unexpected changes.

Validate

Validates the current file or selection, checking for errors and inconsistencies. This command helps ensure that your code adheres to syntax and style guidelines.

Add Bookmark

Adds a bookmark at the current line, allowing you to quickly navigate to this location later. Bookmarks are useful for marking important sections of your code for easy access.

Add Task

Show Quick Diff

keybinding: Ctrl+Shift+Q Shows differences between the current version of the file and its previous versions. This command is useful for tracking changes and reviewing modifications.

Show Revision Information

Displays revision history for the current line, showing changes made over time. This command helps you understand the evolution of your code and identify when specific changes were made.

Show Line Numbers

Toggles the display of line numbers in the code editor. Line numbers are helpful for navigation and referencing specific parts of your code.

Folding

Manages code folding options, allowing you to collapse and expand sections of code for better readability. Options include:

  • Enable Folding: Enables code folding; keybinding: Ctrl+Numpad_Divide

  • Expand All: Expands all folded code sections; keybinding: Ctrl+Numpad_Multiply

  • Collapse All: Collapses all code sections; keybinding: Ctrl+Shift+Numpad_Divide

  • Reset Structure: Resets the code folding structure

  • Collapse Blocks: Collapses blocks of code

  • Collapse Comments: Collapses comment sections

Preferences

Breakpoint Properties

Opens properties for the selected breakpoint, allowing you to configure its behavior, such as conditions for breaking and log messages. This command provides fine-grained control over how breakpoints operate during debugging.

Outline Bar Context Menu Commands

A summary of commands available on Outline Bar section of the Servoy Editor via right-click context menu:

Command
Summary

Validates the current file or selection

Preferences

Validate

Validates the current file or selection, checking for errors, warnings, and inconsistencies. This command is crucial for ensuring that your code adheres to syntax and style guidelines, helping to catch issues early in the development process. Validation can help prevent runtime errors and improve the overall quality of the code.

Editor Area Context Menu Commands

A summary of commands available on Editor Area section of the Servoy Editor via right-click context menu:

Command
Summary

Reverses the last typing action

Reverts the file to its last saved state

Saves the current file

Opens the declaration of the selected element

Opens the call hierarchy of the selected element

Shows the quick outline of the file

Opens the file with a specified editor

Shows the selected element in various views

Cuts the selected text

Copies the selected text

Pastes text from the clipboard

Provides quick fixes for code issues

Refactors code elements

Source code-related actions

Searches within the project or workspace

Runs the solution in a specified environmen

Debugs the solution in a specified environment

Compares the file with another resource

Replaces the file with another resource

Validates the current file

Opens the form hierarchy of the current file

Undo Typing

keybinding: Ctrl+Z Reverses the last typing action, restoring the previous state of the text.

Revert File

Save

keybinding: Ctrl+S Saves the current file, ensuring that all changes are written to disk.

Open Declaration

keybinding: F3 Opens the declaration of the selected element, such as a variable or method. This command navigates to where the element is defined.

Open Call Hierarchy

keybinding: Ctrl+Alt+H Opens the call hierarchy of the selected element, showing where it is called from and what it calls. This command helps trace the flow of execution.

Quick Outline

keybinding: Ctrl+O

Open With

Provides options to open the file with different editors:

  • Generic Text Editor: Opens the file in the Generic Text Editor.

  • JavaScript Editor [DLTK]: Opens the file in the JavaScript Editor [DLTK].

  • Text Editor: Opens the file in the Text Editor.

  • System Editor: Opens the file in the system's default editor.

  • In-Place Editor: Opens the file in the In-Place Editor.

  • Default Editor: Opens the file in the default editor for the file type.

Show In

keybinding: Alt+Shift+W Opens a sub-list of available views where the file can be displayed in:

  • Solution Explorer

  • Outline

  • Form Hierarchy

  • Script Explorer

  • System Explorer

  • Properties

Cut

keybinding: Ctrl+X Cuts the selected text and places it on the clipboard.

Copy

keybinding: Ctrl+C Copies the selected text to the clipboard without removing it from the document.

Paste

keybinding: Ctrl+V Pastes the text from the clipboard at the current cursor position.

Quick Fix

keybinding: Ctrl+1 Displays suggested actions. Provides quick fixes for issues in the code, such as auto-correcting errors or applying suggested improvements.

Refactor

keybinding: Alt+Shift+T Provides a menu with various refactoring options to improve the structure and design of the code without changing its behavior. Refactoring helps make the code more maintainable and readable. Opens a sub-list of available commands:

Source

Provides source code-related actions for editing and formatting:

Search

Provides options to search within the project or workspace, helping you locate references or declarations of elements:

  • References: Opens a sub-list of available places where the references to the selected element should be searched in:

    • Workspace: searches for references to the selected element in the entire workspace; keybinding: Ctrl+Alt+G

    • Project: searches for references to the selected element in the current project

    • Hierarchy: searches for references to the selected element within the current hierarchy

    • Working Set: searches for references to the selected element within a specified working set

  • Declarations: Opens a sub-list of available places where the declarations of the selected element should be searched in:

    • Workspace: searches for declarations of the selected element in the entire workspace

    • Project: searches for declarations of the selected element in the current project

    • Hierarchy: searches for declarations of the selected element within the current hierarchy

    • Working Set: searches for declarations of the selected element within a specified working set

Run As

Runs the code using specific configurations:

  • 1 JavaScript: Runs the current file as a JavaScript application

Debug As

Debugs the code using specific configurations:

  • 1 JavaScript: Debugs the current file as a JavaScript application

Compare With

  • Each Other: Compares selected resources with each other.

  • Local History...: Compares the file with its local history.

  • HEAD Revision: Compares the file with the HEAD revision in version control.

  • Index: Compares the file with the index in version control.

  • Index With HEAD: Compares the index with the HEAD revision in version control.

  • Branch, Tag, or Reference... Compares the file with a specific branch, tag, or reference.

  • Commit...: Compares the file with a specific commit in version control.

Replace With

  • Local History...: Replaces the file with a version from local history.

  • Previous from Local History: Replaces the file with the previous version from local history.

  • HEAD Revision: Replaces the file with the HEAD revision in version control.

  • Index: Replaces the file with the version from the index in version control.

  • Branch, Tag, or Reference...: Replaces the file with a specific branch, tag, or reference.

  • Commit...: Replaces the file with a specific commit in version control.

Validate

Validates the current file, checking for errors and inconsistencies.

Preferences

Open in Form Editor

Open Form Hierarchy

Setting General Preferences for Script Editor

Settings for the Script Editor can be accessed via the context menu item Preferences. Clicking on this item reveals a filtered set for the Preferences pane, which reveals options for editing General and JavaScript editor preferences. Examples of customizable settings include:

  • Code syntax coloring

  • Use of smart carets

  • Vertical ruler folding

  • Code templates

  • Types of annotation marks (caution, warnings, etc) shown in the rulers and in text

Opening the Script Editor

To open a script in Script Editor, use one of the following methods:

  • In the Solutions Explorer, right-click on the resource that you wish to open and select Open in Script Editor.

  • In an open Form Editor window, access the context menu on a blank area and select Open in Script Editor.

  • In an open Form Editor window, use the keyboard shortcut CTRL+SHIFT+Z (shift-cmd-z).

Note To go back to the Form Editor, use CTRL+SHIFT+A (shift-cmd-a).

  • In an open Form Editor window, select the desired object and in the Properties view, and click on the applicable event. A button will appear, which you can click to open the corresponding script file.

Note If you have an element, such as a button, selected in Form Editor, switching to the Script Editor view will take you right to the line associated with the element.

Creating Business Logic in Script Editor

To create or add business logic, you can either type directly into Script Editor, or use one of the following methods:

From the Form Editor

  1. Select an element in the Form Editor and double-click the appropriate Events item in the Properties panel. (This is the way most users will create a method, once they are familiar with Servoy.)

    • A Select Method window will appear.

  2. Select an existing method, or create a new method.

  3. Click OK to go back to the Form Editor, or OK and Show to edit the script in Script Editor.

Via the Solution Explorer Tree--New Method

  1. Select an element (global or forms) in the Solution explorer.

  2. Access the context menu (right-click).

  3. Select Create Method.

  4. Specify a Method Name in the New Method window

  5. Select Create Public or Create Private as needed.


You can also insert existing business logic resources form Solution Explorer into your script. This method is discussed in the following section.

Moving Code from the Solution Explorer into the Script Editor

The Script Editor allows users to quickly insert existing code resources (eg. methods, functions, and variables) within the Solution into the open Script Editor Window. To view a list of available methods:

  1. Highlight a resource in the Solution Editor that contains the code you want to insert.

    • You can use methods/functions found anywhere in the Solution Explorer, including in Globals, individual Forms, JS Lib, all the way down to Plugins.

    • You can preview information about the method by hovering over the code resource name.

  2. Click on the Move Sample Code or Move Code button.

    • Move Sample Code inserts an example of how the selected code is can be used, along with informational comments:

       if (forms.main.foundset.find()) //find will fail if autosave is disabled and there are unsaved records
      {
         columnTextDataProvider = 'a search value'
         columnNumberDataProvider = '>10'
         columnDateDataProvider = '31-12-2010|dd-MM-yyyy'
          forms.main.foundset.search()
      }
    • Move Code inserts only a bare function statement:

      forms.main.controller.find()

Opens the wizard, where you can add a task at the current cursor position. Tasks can be used for TODOs, reminders, or marking sections of code that need further attention.

Opens for the editor, allowing you to customize various settings such as indentation, color themes, and keybindings. This command helps tailor the editor to your personal workflow.

Opens for the outline view

Opens the dialog for the annotations, allowing you to customize various settings specific to the annotations.

Opens the dialog

Opens the current file in the

to its last saved state, discarding any unsaved changes.

Other...: Allows selection of other available editors. Opens the dialog.

: Renames the selected element; keybinding: Alt+Shift+R

: Moves the selected element

: Extracts a local variable from the selected expression; keybinding: Alt+Shift+L

: Changes the method signature of the selected method; keybinding: Alt+Shift+C

: Extracts a new method from the selected code; keybinding: Alt+Shift+M

: Introduces a new parameter to a method.

: Inlines the selected element ; keybinding: Alt+Shift+I

: Removes a block comment; keybinding: Ctrl + Shift + \

: Comments / uncommnets the selected line / block; keybinding: Ctrl+7

: Comments the selected line(s)

: Uncomments the selected line(s)

: Generates the JSDoc comments for the selected variable or function; keybinding: Alt+Shift+J

: Formats the script's content; keybinding: Ctrl + Shift + F

: Formats the element

: Corrects indentation for the selected lines; keybinding: Ctrl + I

: Shifts the selected line(s) to the left

: Shifts the selected line(s) to the right

Run Configurations...: Opens the dialog

Debug Configurations...: Opens the dialog.

Provides options to the current file with various other resources:

Provides options to the current file with various other versions or resources:

Opens the dialog, where you can configure various settings for the editor.

keybinding: Ctrl+Shift+A Opens the current file in the , allowing you to design and edit forms.

keybinding: F4 Opens the . There you see the hierarchy tree (according to parent-child relation).

Add Task
editor selection
Run configurations
Debug configurations
Preferences
Preferences
Preferences
Form Hierarchy
Preferences
Preferences
Toggle Breakpoint
Disable Breakpoint
Toggle Watchpoint
Validate
Add Bookmark
Add Task
Show Quick Diff
Show Revision Information
Show Line Numbers
Folding
Preferencest
Breakpoint Properties...
Preferences
Validate
Undo Typing
Revert File
Save
Open Declaration
Open Call Hierarchy
Quick Outline
Open With
Show In
Cut
Copy
Paste
Quick Fix
Refactor
Source
Search
Run As
Debug As
Compare With
Replace With
Validate
Preferences
Open in Form Editor
Open Form Hierarchy
this section
Rename...
Move...
Extract Local Variable...
Change Method Signature...
Extract Method...
Introduce Parameter...
Inline...
Remove Block Comment
Toggle Comment
Comment
Uncomment
Generate Element Comment
Format
Format Element
Correct Indentation
Shift Left
Shift Right
Reverts the file
compare
replace
Form Editor
Form Editor
Script Editor Parts
Script Editor Preferences