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
  • Creating View Foundset Datasources
  • Data Broadcast and Monitoring Changes
  • Editable View Foundsets
  • Commands Summary
  • Extends
  • Constants Summarized
  • Properties Summarized
  • Methods Summarized
  • Constants Detailed
  • MONITOR_AGGREGATES
  • MONITOR_COLUMNS
  • MONITOR_DELETES
  • MONITOR_DELETES_FOR_PRIMARY_TABLE
  • MONITOR_INSERT
  • MONITOR_JOIN_CONDITIONS
  • MONITOR_WHERE_CONDITIONS
  • VIEW_FOUNDSET
  • Properties Detailed
  • multiSelect
  • Methods Detailed
  • dispose()
  • duplicateFoundSet()
  • enableDatabroadcastFor(queryTable)
  • enableDatabroadcastFor(queryTableclause, flags)
  • forEach(callback)
  • forEach(callback, thisObject)
  • getCurrentSort()
  • getDataSource()
  • getEditedRecords()
  • getFailedRecords()
  • getName()
  • getQuery()
  • getRecord(index)
  • getRecordByPk(pk)
  • getRecordIndex(record)
  • getRecordIndex(record)
  • getSQL()
  • getSQL(includeFilters)
  • getSQLParameters()
  • getSQLParameters(includeFilters)
  • getSelectedIndex()
  • getSelectedIndexes()
  • getSelectedRecord()
  • getSelectedRecords()
  • getSize()
  • hasRecordChanges()
  • hasRecords()
  • loadAllRecords()
  • revertEditedRecords()
  • revertEditedRecords(rec)
  • save()
  • save(record)
  • setSelectedIndex(index)
  • setSelectedIndexes(indexes)
  • sort(sortString)
  • sort(sortString, defer)
  • sort(recordComparisonFunction)
  • validate(record)
  • validate(record, customObject)

Was this helpful?

  1. Reference
  2. Servoy Core
  3. Developer API
  4. Database Manager

ViewFoundSet

PreviousQBWhereConditionNextViewRecord

Last updated 2 months ago

Was this helpful?

Overview

A View Foundset Datasource is a virtual table that loads data at runtime, often based on a QBSelect query object. It is useful for combining datasets from multiple tables, improving performance compared to standard relations, valuelists, or aggregates.

Creating View Foundset Datasources

View Foundset Datasources can be created in two ways:

  1. Solution Explorer: Accessed via Datasources -> View foundsets -> Create view foundset in the Solution Explorer context menu. This opens the for defining the datasource structure.

  2. Runtime Creation: Created via databaseManager.getViewFoundSet(String name, QBSelect query). This returns a ViewFoundSet object with essential operations like getSize(), getRecord(), and loadAllRecords(), but it doesn’t support find() or search().

Data Broadcast and Monitoring Changes

View Foundsets do not listen for databroadcast changes by default but can be enabled using viewfoundset.enableDatabroadcastFor(QBTableClause queryTable, int flags). Available flags include:

  • : Tracks changes in specific columns.

  • : Listens for changes in join conditions.

  • : Tracks updates to WHERE clause columns.

  • : Monitors inserts, triggering a full query update.

  • : Tracks deletions, updating records as needed.

  • : Monitors primary table deletions more efficiently.

  • : Observes changes impacting aggregates in the query.

Editable View Foundsets

A View Foundset can be made editable with save() if the primary key (PK) is included in the QBSelect. Data updates pause databroadcast refreshes until the records are committed.

Commands Summary

  • Delete View Foundset: Deletes the View Foundset.

  • Rename View Foundset: Renames the View Foundset.

Extends

Constants Summarized

Type
Name
Summary

Constant for the flags in #enableDatabroadcastFor(QBTableClause,int) to listen for changes in columns (selected) of the given datasource in the query that can affect aggregates.

Constant for the flags in #enableDatabroadcastFor(QBTableClause,int) to listen also for column changes of the given table/datasource.

Constant for the flags in #enableDatabroadcastFor(QBTableClause,int) to listen for deletes on the given table/datasource.

Constant for the flags in #enableDatabroadcastFor(QBTableClause,int) to listen for deletes on the given table/datasource which should be the primary/main table of this query.

Constant for the flags in #enableDatabroadcastFor(QBTableClause,int) to listen for inserts on the given table/datasource.

Constant for the flags in #enableDatabroadcastFor(QBTableClause,int) to listen also for column changes of the given table/datasource in the join statement - like order_lines.

Constant for the flags in #enableDatabroadcastFor(QBTableClause,int) to listen also for column changes of the given table/datasource that are used in the where statement - like order_lines.

Properties Summarized

Type
Name
Summary

Methods Summarized

Type
Name
Summary

Dispose and unregisters a view foundset from memory when is no longer needed.

Get a duplicate of the viewfoundset.

void

Databroadcast can be enabled per select table of a query, the select table can be the main QBSelect or on of it QBJoins By default this monitors only the column values that are in the result of the QBSelect, you can only enable this default monitoring for a table if for that table also the PK is selected in the results.

void

Enable the databroadcast for a specific table of the QBSelect or QBJoin with flags for looking for join or where criteria or deletes/inserts.

Iterates over the records of a foundset taking into account inserts and deletes that may happen at the same time.

Iterates over the records of a foundset taking into account inserts and deletes that may happen at the same time.

Get the last sort columns that were set using viewfoundset sort api.

Returns the datasource (view:name) for this ViewFoundSet.

Get the edited records of this view foundset.

Get the records which could not be saved.

Get foundset name.

Get the cloned query that created this ViewFoundSset (modifying this QBSelect will not change the foundset).

Get the ViewRecord object at the given index.

Get the ViewRecord from the primary key values.

Get the index of a record object inside a foundset

Get the record index.

Returns the internal SQL of the JSFoundset.

Returns the internal SQL of the JSFoundset.

Returns the parameters for the internal SQL of the QBSelect.

Returns the parameters for the internal SQL of the QBSelect.

Get the current record index of the foundset.

Get the indexes of the selected records.

Get the selected records.

Get the number of records in this viewfoundset.

Check whether the foundset has record changes.

Returns true if the viewfoundset has records.

This will reload the current set of ViewRecords in this foundset, resetting the chunk size back to the start (default 200).

void

Revert changes of all unsaved view records of the view foundset.

void

Revert changes of the provided view records.

Saves all records in the view foundset that have changes.

Saved a specific record of this foundset.

void

Set the current record index.

void

Set the selected records indexes.

void

Sorts the foundset based on the given sort string.

void

Sorts the foundset based on the given sort string.

void

Sorts the foundset based on the given record comparator function.

Validates the given record, it runs first the method that is attached to the entity event "onValidate".

Validates the given record, it runs first the method that is attached to the entity event "onValidate".

Constants Detailed

MONITOR_AGGREGATES

Constant for the flags in #enableDatabroadcastFor(QBTableClause,int) to listen for changes in columns (selected) of the given datasource in the query that can affect aggregates. This means that when there are deletes, inserts or updates on columns selected from that datasource, a full re-query will happen to refresh the aggregates.

IMPORTANT: in general, this flag should be set on (possible multiple) datasources from the query that have group by on their columns, and the columns don't contain the pk, or that have the actual aggregates on their columns (because all those could influence the value of aggregates).

For example (ignoring the fact that in a real-life situation these fields might not change), a view foundset based on this query:

SELECT orders.customerid, orders.orderdate, SUM(order_details.unitprice) FROM orders LEFT OUTER JOIN order_details ON orders.orderid = order_details.orderid GROUP BY orders.customerid, orders.orderdate ORDER BY orders.customerid asc, orders.orderdate desc

will want to enable databroadcast flag MONITOR_AGGREGATES on both "orders" (because if "orderdate" or "customerid" - that are used in GROUP BY - change/are corrected on a row, that row could move from one group to the other, affecting the SUM(order_details.unitprice) for the groups involved) and "order_details" (because if "unitprice" changes/is corrected, the aggregate will be affected).

But if the above query would also select the orders.odersid (and also group by that) then the orders row that you select for that sum will always be unique and only #MONITOR_COLUMNS has to be used for those - if needed.

MONITOR_COLUMNS

Constant for the flags in #enableDatabroadcastFor(QBTableClause,int) to listen also for column changes of the given table/datasource. This is used by default if you just use enableDatabroadcastFor() without flags. If you use the one with the flags you need to give this one if you just want to listen to column changes that are in the result for a given datasource and pk.

This constants needs to have the pk's selected for the given datasource (should be in the results).

MONITOR_DELETES

Constant for the flags in #enableDatabroadcastFor(QBTableClause,int) to listen for deletes on the given table/datasource. This will always result in a full query to detect changes whenever an delete on that table happens.

MONITOR_DELETES_FOR_PRIMARY_TABLE

Constant for the flags in #enableDatabroadcastFor(QBTableClause,int) to listen for deletes on the given table/datasource which should be the primary/main table of this query. If a delete comes in for this table, then we will only remove the records from the ViewFoundSet that do have this primary key in its value. So no need to do a full query. So this will only work if the query shows order_lines for the order_lines table, not for the products table that is joined to get the product_name. Only 1 of the 2 monitors for deletes should be registered for a table/datasource.

This constants needs to have the pk's selected for the given datasource (should be in the results)

MONITOR_INSERT

Constant for the flags in #enableDatabroadcastFor(QBTableClause,int) to listen for inserts on the given table/datasource. This will always result in a full query to detect changes whenever an insert on that table happens.

MONITOR_JOIN_CONDITIONS

Constant for the flags in #enableDatabroadcastFor(QBTableClause,int) to listen also for column changes of the given table/datasource in the join statement - like order_lines.productid that has a join to orders and is displaying the productname. If a change in such a join condition (like order_lines.productid in the sample above) is seen then the query will be fired again to detect changes.

MONITOR_WHERE_CONDITIONS

Constant for the flags in #enableDatabroadcastFor(QBTableClause,int) to listen also for column changes of the given table/datasource that are used in the where statement - like order_lines.unit_price > 100. If a change is seen on that datasource on such a column used in the where a full query will be fired again to detect changes.

VIEW_FOUNDSET

Properties Detailed

multiSelect

Methods Detailed

dispose()

Dispose and unregisters a view foundset from memory when is no longer needed.
Returns whether foundset was disposed.
If linked to visible form or component, view foundset cannot be disposed.

Normally ViewFoundSets are not hold on to by the system, so if you only use this inside a method it will be disposed by itself.
This method is then just helps by also calling clear()

For ViewFoundSets that are also registered  by using true as the last argument in the call: databaseMananager.getViewFoundSet(name, query, boolean register)
are hold on to by the system and Forms can use it for there foundset. Calling dispose on those will remove it from the system, so it is not usable anymore in forms.

Sample

vfs.dispose();

duplicateFoundSet()

Get a duplicate of the viewfoundset. This is a full copy of the view foundset.

Sample

var dupFoundset = foundset.duplicateFoundSet();

enableDatabroadcastFor(queryTable)

Databroadcast can be enabled per select table of a query, the select table can be the main QBSelect or on of it QBJoins By default this monitors only the column values that are in the result of the QBSelect, you can only enable this default monitoring for a table if for that table also the PK is selected in the results.

you can use #enableDatabroadcastFor(QBTableClause,int) to specify what should be monitored more besides pure column values per pk. Those have impact on performance because for the most part if we see a hit then a full query is done to see if there are changes.

Parameters

Returns: void

Sample

var select = datasources.db.example_data.order_details.createSelect();
 var join = select.joins.add("db:/example_data/products");
 join.on.add(select.columns.productid.eq(join.columns.productid));
 select.result.add(); // add columns of the select or join
 var vf = databaseManager.getViewFoundSet("myorders",select)
 vf.enableDatabroadcastFor(select);
 vf.enableDatabroadcastFor(join);

enableDatabroadcastFor(queryTableclause, flags)

Enable the databroadcast for a specific table of the QBSelect or QBJoin with  flags for looking for join or where criteria or deletes/inserts.
These  flags can be a performance hit because the query needs to be executed again to see if there are any changes.
For certain flags #MONITOR_COLUMNS and #MONITOR_DELETES_FOR_PRIMARY_TABLE the pk for that table must be in the results.

Parameters

Returns: void

Sample

var select = datasources.db.example_data.order_details.createSelect();
 var join = select.joins.add("db:/example_data/products");
 join.on.add(select.columns.productid.eq(join.columns.productid));
 select.result.add(); // add columns of the select or join
 var vf = databaseManager.getViewFoundSet("myorders",select)
 // monitor for the main table the join conditions (orders->product, when product id changes in the orders table) and requery the table on insert events, delete directly the record if a pk delete happens.
 vf.enableDatabroadcastFor(select, ViewFoundSet.MONITOR_JOIN_CONDITIONS | ViewFoundSet.MONITOR_INSERT | ViewFoundSet.MONITOR_DELETES_FOR_PRIMARY_TABLE);
 vf.enableDatabroadcastFor(join);

forEach(callback)

Iterates over the records of a foundset taking into account inserts and deletes that may happen at the same time. It will dynamically load all records in the foundset (using Servoy lazy loading mechanism). If callback function returns a non null value the traversal will be stopped and that value is returned. If no value is returned all records of the foundset will be traversed. Foundset modifications( like sort, omit...) cannot be performed in the callback function. If foundset is modified an exception will be thrown. This exception will also happen if a refresh happens because of a rollback call for records on this datasource when iterating. When an exception is thrown from the callback function, the iteration over the foundset will be stopped.

Parameters

Sample

foundset.forEach(function(record,recordIndex,foundset) {
 	//handle the record here
 });

forEach(callback, thisObject)

Iterates over the records of a foundset taking into account inserts and deletes that may happen at the same time. It will dynamically load all records in the foundset (using Servoy lazy loading mechanism). If callback function returns a non null value the traversal will be stopped and that value is returned. If no value is returned all records of the foundset will be traversed. Foundset modifications( like sort, omit...) cannot be performed in the callback function. If foundset is modified an exception will be thrown. This exception will also happen if a refresh happens because of a rollback call for records on this datasource when iterating. When an exception is thrown from the callback function, the iteration over the foundset will be stopped.

Parameters

Sample

foundset.forEach(function(record,recordIndex,foundset) {
 	//handle the record here
 });

getCurrentSort()

Get the last sort columns that were set using viewfoundset sort api.s

Sample

//reverse the current sort

//the original sort "companyName asc, companyContact desc"
//the inversed sort "companyName desc, companyContact asc"
var foundsetSort = foundset.getCurrentSort()
var sortColumns = foundsetSort.split(',')
var newFoundsetSort = ''
for(var i=0; i<sortColumns.length; i++)
{
	var currentSort = sortColumns[i]
	var sortType = currentSort.substring(currentSort.length-3)
	if(sortType.equalsIgnoreCase('asc'))
	{
		newFoundsetSort += currentSort.replace(' asc', ' desc')
	}
	else
	{
		newFoundsetSort += currentSort.replace(' desc', ' asc')
	}
	if(i != sortColumns.length - 1)
	{
		newFoundsetSort += ','
	}
}
foundset.sort(newFoundsetSort)

getDataSource()

Returns the datasource (view:name) for this ViewFoundSet.

Sample

solutionModel.getForm("x").dataSource  = viewFoundSet.getDataSource();

getEditedRecords()

Get the edited records of this view foundset.

Sample

var editedRecords = foundset.getEditedRecords();
for (var i = 0; i < editedRecords.length; i++)
{
   application.output(editedRecords[i]);
}

getFailedRecords()

Get the records which could not be saved.

getName()

Get foundset name. If foundset is not named foundset will return null.

Sample

var name = foundset.getName()

getQuery()

Get the cloned query that created this ViewFoundSset (modifying this QBSelect will not change the foundset). The ViewFoundSets main query can't be altered after creation; you need to make a new ViewFoundSet for that (it can have the same datasource name).

Sample

var q = foundset.getQuery()
q.where.add(q.columns.x.eq(100))
var newVF = databaseManager.getViewFoundset("name", q);

getRecord(index)

Get the ViewRecord object at the given index. Argument "index" is 1 based (so first record is 1).

Parameters

Sample

var record = vfs.getRecord(index);

getRecordByPk(pk)

Get the ViewRecord from the primary key values.

Parameters

Sample

var record = vfs.getRecordByPk(1);  // or getRecordByPk(1,2) or ([1,2]) for multicolumn pk

getRecordIndex(record)

Get the index of a record object inside a foundset

Parameters

getRecordIndex(record)

Get the record index. Will return -1 if the record can't be found.

Parameters

Sample

var index = foundset.getRecordIndex(record);

getSQL()

Returns the internal SQL of the JSFoundset. Optionally, the foundset and table filter params can be excluded in the sql (includeFilters=false).

Sample

var sql = foundset.getSQL(true)

getSQL(includeFilters)

Returns the internal SQL of the JSFoundset. Optionally, the foundset and table filter params can be excluded in the sql (includeFilters=false).

Parameters

Sample

var sql = foundset.getSQL(true)

getSQLParameters()

Returns the parameters for the internal SQL of the QBSelect. Table filters are on by default.

Sample

var parameters = foundset.getSQLParameters(true)

getSQLParameters(includeFilters)

Returns the parameters for the internal SQL of the QBSelect. Table filters are on by default.

Parameters

Sample

var parameters = foundset.getSQLParameters(true)

getSelectedIndex()

Get the current record index of the foundset.

Sample

//gets the current record index in the current foundset
var current = foundset.getSelectedIndex();
//sets the next record in the foundset
foundset.setSelectedIndex(current+1);

getSelectedIndexes()

Get the indexes of the selected records. When the foundset is in multiSelect mode (see property multiSelect), a selection can consist of more than one index.

Sample

// modify selection to the first selected item and the following row only
var current = foundset.getSelectedIndexes();
if (current.length > 1)
{
	var newSelection = new Array();
	newSelection[0] = current[0]; // first current selection
	newSelection[1] = current[0] + 1; // and the next row
	foundset.setSelectedIndexes(newSelection);
}

getSelectedRecord()

getSelectedRecords()

Get the selected records. When the viewfoundset is in multiSelect mode (see property multiSelect), selection can be a more than 1 record.

Sample

var selectedRecords = foundset.getSelectedRecords();

getSize()

Get the number of records in this viewfoundset. This is the number of records loaded, note that when looping over a foundset, size() may increase as more records are loaded.

Sample

var nrRecords = vfs.getSize()

// to loop over foundset, recalculate size for each record
for (var i = 1; i <= foundset.getSize(); i++)
{
	var rec = vfs.getRecord(i);
}

hasRecordChanges()

Check whether the foundset has record changes.

hasRecords()

Returns true if the viewfoundset has records.

loadAllRecords()

This will reload the current set of ViewRecords in this foundset, resetting the chunk size back to the start (default 200). All edited records will be discarded! So this can be seen as a full clean up of this ViewFoundSet.

revertEditedRecords()

Revert changes of all unsaved view records of the view foundset.

Returns: void

revertEditedRecords(rec)

Revert changes of the provided view records.

Parameters

Returns: void

save()

Saves all records in the view foundset that have changes. You can only save columns from a table if the pks of that table are also selected by the view foundset's query.

save(record)

Saved a specific record of this foundset. You can only save columns from a table if also the pk is selected of that table

Parameters

setSelectedIndex(index)

Set the current record index.

Parameters

Returns: void

Sample

//gets the current record index in the current foundset
var current = foundset.getSelectedIndex();
//sets the next record in the foundset
foundset.setSelectedIndex(current+1);

setSelectedIndexes(indexes)

Set the selected records indexes.

Parameters

Returns: void

Sample

// modify selection to the first selected item and the following row only
var current = foundset.getSelectedIndexes();
if (current.length > 1)
{
	var newSelection = new Array();
	newSelection[0] = current[0]; // first current selection
	newSelection[1] = current[0] + 1; // and the next row
	foundset.setSelectedIndexes(newSelection);
}

sort(sortString)

Sorts the foundset based on the given sort string. Column in sort string must already exist in ViewFoundset.

Parameters

Returns: void

Sample

foundset.sort('columnA desc,columnB asc');

sort(sortString, defer)

Sorts the foundset based on the given sort string. Column in sort string must already exist in ViewFoundset.

Parameters

Returns: void

Sample

foundset.sort('columnA desc,columnB asc');

sort(recordComparisonFunction)

Sorts the foundset based on the given record comparator function. Tries to preserve selection based on primary key. If first record is selected or cannot select old record it will select first record after sort. The comparator function is called to compare two records, that are passed as arguments, and it will return -1/0/1 if the first record is less/equal/greater then the second record.

The function based sorting does not work with printing. It is just a temporary in-memory sort.

NOTE: starting with 7.2 release this function doesn't save the data anymore

Parameters

Returns: void

Sample

foundset.sort(mySortFunction);

function mySortFunction(r1, r2)
{
	var o = 0;
	if(r1.id < r2.id)
	{
		o = -1;
	}
	else if(r1.id > r2.id)
	{
		o = 1;
	}
	return o;
}

validate(record)

Validates the given record, it runs first the method that is attached to the entity event "onValidate". Those methods do get a parameter JSRecordMarkers where the problems can be reported against. All columns are then also null/empty checked and if they are and the Column is marked as "not null" an error will be added with the message key "servoy.record.error.null.not.allowed" for that column.

An extra state object can be given that will also be passed around if you want to have more state in the validation objects (like giving some ui state so the entity methods know where you come from)

It will return a JSRecordMarkers when the record had validation problems

Parameters

validate(record, customObject)

Validates the given record, it runs first the method that is attached to the entity event "onValidate". Those methods do get a parameter JSRecordMarkers where the problems can be reported against. All columns are then also null/empty checked and if they are and the Column is marked as "not null" an error will be added with the message key "servoy.record.error.null.not.allowed" for that column.

An extra state object can be given that will also be passed around if you want to have more state in the validation objects (like giving some ui state so the entity methods know where you come from)

It will return a JSRecordMarkers when the record had validation problems

Parameters


Create view foundset datasource: Opens the .

Edit table/view: Edits the View Foundset structure via the .

For more details, refer to the documentation in the Data modeling section.

Type

Type

Type

Type

Type

Type

Type

Type

Type `true` if the ViewFoundSet supports selecting multiple records; `false` if only single selection is allowed.

Returns: boolean foundset was disposed

Returns: foundset duplicate.

queryTable The QBSelect or QBJoin of a full query where this foundset should listen for data changes.

queryTableclause The QBSelect or QBJoin of a full query where this foundset should listen for data changes.

flags One or more of the ViewFoundSet.XXX flags added to each other.

callback The callback function to be called for each loaded record in the foundset. Can receive three parameters: the record to be processed, the index of the record in the foundset, and the foundset that is traversed.

Returns: Object the return value of the callback

callback The callback function to be called for each loaded record in the foundset. Can receive three parameters: the record to be processed, the index of the record in the foundset, and the foundset that is traversed.

thisObject What the this object should be in the callback function (default it is the foundset)

Returns: Object the return value of the callback

Returns: String sort columns

Returns: the datasource string representing the ViewFoundSet, typically in the format "view:<name>".

Returns: an array of edited records

Returns: an array of failed records

Returns: name.

Returns: query.

index record index (1 based).

Returns: ViewRecord record.

pk pk values as array

Returns: ViewRecord record.

record the records object

Returns: the index or -1 if not present (anymore)

record Record

Returns: int index.

Returns: String representing the sql of the JSFoundset.

includeFilters include the foundset and table filters [default true].

Returns: String representing the sql of the JSFoundset.

Returns: An Array with the sql parameter values.

includeFilters include the foundset and table filters [default true].

Returns: An Array with the sql parameter values.

Returns: int current index (1-based)

Returns: Array current indexes (1-based)

Returns: the currently selected `ViewRecord`, or `null` if no record is selected.

Returns: Array current records.

Returns: int current size.

Returns: true if the foundset has any edited records, false otherwise

Returns: true if the viewfoundset has records.

Returns: true if the records were successfully reloaded.

rec an array of view records

Returns: true if the save was successfull, false if not and then the record will hav the exception set.

record ;

Returns: true if the save was successfull, false if not and then the record will hav the exception set.

index index to set (1-based)

indexes An array with indexes to set.

sortString the specified columns (and sort order)

sortString the specified columns (and sort order)

defer when true, the "sortString" will be just stored, without performing a query on the database (the actual sorting will be deferred until the next data loading action).

recordComparisonFunction record comparator function

record ;

Returns: Returns a JSRecordMarkers if the record has validation problems

record The ViewRecord to validate

customObject An extra customObject to give to the validate method.

Returns: a `JSRecordMarkers` object indicating validation problems for the given record with the provided custom context, or `null` if no issues are found.

Table Editor
Table Editor
View Foundset Datasource
JSFoundSet
Number
Number
Number
Number
Number
Number
Number
String
Boolean
Boolean
JSFoundSet
QBTableClause
QBTableClause
Number
Function
Object
Function
Object
Object
String
String
Array
Array
String
QBSelect
Number
JSRecord
Array
JSRecord
JSRecord
Number
JSRecord
Number
String
Boolean
String
Array
Boolean
Array
Number
Array
JSRecord
Array
Number
Boolean
Boolean
Boolean
Array
Boolean
JSRecord
Boolean
Number
Array
String
String
Boolean
Function
JSRecord
JSRecordMarkers
JSRecord
Object
JSRecordMarkers
Table Editor
MONITOR_COLUMNS
MONITOR_JOIN_CONDITIONS
MONITOR_WHERE_CONDITIONS
MONITOR_INSERT
MONITOR_DELETES
MONITOR_DELETES_FOR_PRIMARY_TABLE
MONITOR_AGGREGATES
Number
Number
Number
Number
Number
Number
Number
String
Boolean
Boolean
JSFoundSet
Object
Object
String
String
Array
Array
String
QBSelect
JSRecord
JSRecord
Number
Number
String
String
Array
Array
Number
Array
JSRecord
Array
Number
Boolean
Boolean
Boolean
Boolean
Boolean
JSRecordMarkers
JSRecordMarkers
MONITOR_AGGREGATES
MONITOR_COLUMNS
MONITOR_DELETES
MONITOR_DELETES_FOR_PRIMARY_TABLE
MONITOR_INSERT
MONITOR_JOIN_CONDITIONS
MONITOR_WHERE_CONDITIONS
VIEW_FOUNDSET
multiSelect
dispose()
duplicateFoundSet()
enableDatabroadcastFor(queryTable)
enableDatabroadcastFor(queryTableclause, flags)
forEach(callback)
forEach(callback, thisObject)
getCurrentSort()
getDataSource()
getEditedRecords()
getFailedRecords()
getName()
getQuery()
getRecord(index)
getRecordByPk(pk)
getRecordIndex(record)
getRecordIndex(record)
getSQL()
getSQL(includeFilters)
getSQLParameters()
getSQLParameters(includeFilters)
getSelectedIndex()
getSelectedIndexes()
getSelectedRecord()
getSelectedRecords()
getSize()
hasRecordChanges()
hasRecords()
loadAllRecords()
revertEditedRecords()
revertEditedRecords(rec)
save()
save(record)
setSelectedIndex(index)
setSelectedIndexes(indexes)
sort(sortString)
sort(sortString, defer)
sort(recordComparisonFunction)
validate(record)
validate(record, customObject)