Developers Reference
For a list of featured articles especially for starters, read Recommended Articles for Beginners
By key words
-
A
-
B
- backgroundjobs
- baseform
- batchgenerator
- batching
- bedgm
- binary
- bob-sophia
- bootstrap
- bpm
- branding
- bufferdatasource
- bufferhelper
- buffermodel
- bug
- builder
- businessentity
- businessentitybrowser
- businessentitydescriptor
- businessentitydesigner
- businessentitydispatcher
- businessentitygenerator
- businessentitytester
- businesslogic
- businessservice
- businessservices
- businesstask
-
C
- cache
- caching
- calculatedfield
- callgraph
- canfind
- catalo
- catalog
- ccs
- ccsbe
- ccsbsa
- cefsharp
- characterlist
- checklist
- chromium
- classhelper
- classpath
- cli
- client
- client-logic
- clientprincipal
- client-principal
- clob
- clone
- codedui
- codeformatting
- codegenerator
- codepages
- codespages
- collections
- column
- combit
- combobox
- common_component_specification
- compile_error
- compiling
- complexinput
- configuration
- configurationprovider
- confluence
- constants
- constructor
- context
- contextdataset
- contextwrapper
- controlhelper
- conversion
- copy
- count
- creatorsupdate
- css
- custom
- customconstructor
- customization
-
D
- dataaccess
- dataasetassert
- database
- databasemodel
- datadictionary
- datadigger
- datadirect
- datasetcontroller
- datasethelper
- datasetmodel
- datasource
- data-source
- datastemodel
- datatypehelper
- ddd
- debug
- decorator
- delete
- dependencyinjection
- deployment
- design
- designer
- desktop
- development
- dictionary
- dirtyflag
- dlc
- dockmanager
- documentation
- dotnet
- draganddrop
- dump/load
- dynamic_businessentity
- dynamiccontrolgroup
- dynamics
-
E
-
F-G
-
H-I
- handlelist
- hateoas
- help
- http
- hybrid_realm
- icfdb
- ide
- idestartup
- imagehelper
- imageprovider
- images
- indexes
- infragistics
- initialization
- initialvalue
- inmydata
- inputprompthelper
- integerlist
- integration
- interfaces
- internationalization
- invokemethod
- invoketask
- isecurityrealmservice
- isecurityservice
- iservicecreator
-
J-K
-
L
-
M-N
- mainmenuform
- mainmenurenderer
- mdi
- memory
- menu
- menustructure
- messageformhelper
- messageinteraction
- messages
- metadata
- metagrid
- metapanelcontainer
- metaviewer
- microsoft
- migration
- mobile
- mocking
- modal
- monitoring
- multitenancy
- namedquery
- namevaluepair
- nativescript
- network
- networkhelper
- node
- nodelevel
- notifyicon
-
O
-
P
- packagemanager
- parameter
- pasoe
- password
- pct
- pdsoe
- perforce
- performance
- plugins
- porparse
- portability
- presentations
- primitivedictionary
- probindingsource
- procedureeditor
- procedurehelper
- procedurelibrary
- prodataset
- productivity
- profiler
- progressdeveloperstudio
- progress_software
- proparse
- propath
- protop
- pushnotification
-
Q
-
R
- rcode
- realms
- recid
- refactoring
- reference
- referential_integrity
- reflection
- regression
- relations
- relea
- release
- releasenote
- rendering
- replication
- reporting
- repository
- repositorydesigner
- resize
- resourcefiles
- responsive
- rest
- restadapter
- restful
- restmethod
- restserversessionactivator
- resx
- ribbon
- rollbase
- routes
- rowid
-
S
- scaffolding
- scenario
- scheduler
- scl-gen
- scl-pasoe
- scl-sng
- scm
- scripts
- sdo
- security
- securityrealm
- selection
- serialization
- serviceadapter
- servicecontainer
- serviceinterface
- serviceloader
- servicemanager
- services
- sessioncontext
- sessionhelper
- sessioninfo
- sessionmanagement
- sessionmanager
- settings
- setup
- shared
- sizing
- smartbindingsource
- smartbrowser
- smartbusinessentity
- smartbusinessentityadapter
- smartbusinessentitybindingsource
- smartbusinessentitylookup
- smartcomboeditor
- smartcomponent
- smartcomponentlibrary
- smartcomponentlibrarycustomizer
- smartcomponentsng2
- smartdataaccess
- smartdataadapter
- smartdatabrowser
- smartdatacombo
- smartdataobject
- smartdataobjectadapter
- smartdataobjectbindingsource
- smartdataobjectlookup
- smartdatasetchildadapter
- smartdatasource
- smart-data-source
- smartdb
- smartdox
- smartdynamicfilter
- smartfilter
- smart-filter
- smartfiltercontrol
- smart-form
- smartframewoirk
- smartframework
- smartgenerictable
- smart-grid
- smarthttpclient
- smarthybridrealm
- smartlocks
- smartlookup
- smart-lookup
- smart-menu
- smartmessageservice
- smartnavigationpanel
- smartobjecttype
- smartpanelcontroller
- smartraddatabrowser
- smartrepositoryservice
- smartrequestauthorizationprovider
- smartrequestmanager
- smarttabpage
- smarttemptableadapter
- smart-toolbar
- smarttoolbarcontroller
- smartunit
- smartupdatablebrowser
- smartuser
- smartusercontrol
- smart-viewer
- smartviewercontrol
- smartwindowform
- smartworkflow
- socketio
- sonarlint
- sonarsource
- source
- splashscreen
- spring
- ssl
- starnova
- startup
- startupparameter
- staticnames
- staticqueries
- statistics
- stop
- stringhelper
- strongtyping
- studio
- sunarqube
- support
- swagger
- systemowned
-
T
-
U-V
- uicontrol
- ultracontrols
- ultradockmanager
- ultragrid
- ultratoolbarshelper
- ultratree
- unittesting
- upgrade
- uri
- usability
- user
- userbusinessentity
- userprofile
- usertablestatistics
- utility
- ux
- validate
- validation
- validationhelper
- valuelisthelper
- valuelists
- valueobject
- viewerdesigner
- viewmodel
- visualbaseclasses
- visualdesigner
- vscode
- vst
-
W-Z
-
0-9
List of Documents
- .NET Value object to ABL Temp-Table mapping
- ABHack
- ABL Coding Standards
- Accessing Messages from the SmartFramework Message table
- Add DebugListing as Menu and Toolbar entry in the OpenEdge Architect
- Add Scratch Editor as Menu and Toolbar entry in the PDSOE
- Alternative DsQueryString implementation to simplify Data Access filtering on session values
- Assembly References
- Business Entity Count Method
- Business Entity Descriptor
- Business Entity Designer Launcher
- Business Entity Designer Plugins
- Business Entity Validation made easy
- Business Service Names
- Business Tasks of the SmartComponent Library
- BY-REFERENCE Access to Business Entity FetchData
- Classes recommended for subclassing in a customer implementation of the SmartComponent Library
- Common Component Specification (CCS)
- Configuring the Token Exchange Service
- Consultingwerk Telemetry Toolkit
- Customizing ABLUnit so that the Consultingwerk AssertException is handled as "Failure"
- Customizing OpenEdge Architect Templates made easy: Personalization
- Customizing the path to the Service Interface Procedures
- DatasetModel QueryStyle property
- Defining a new form and add it to the menu structure
- Defining Database-Relations and Referential Integrity in the SmartFramework
- Development Environment Setup Checklist
- Dynamic Business Entities
- Enable and disable "Split Array Fields into separate fields"
- Enabling Delete Prompts in SmartViewerControl's and SmartUpdatableBrowser's
- Enforcing an index selection for a ProDataset child tables DATA-SOURCE query
- Executing SmartUnit or AblUnit Tests from Progress Developer Studio for Run or Debug
- Executing SonarLint CLI from within PDSOE
- Exporting and importing the menu structure
- Extending the SessionInfoWebHandler
- Filtering in a Data Access class on a table that is not part of the (default) data-source
- Filtering on calculated fields
- Flowcharts
- Formatting datasets returned by RESTful Business Service methods
- Generic Factory Service
- Generic Service Interface for JSDO with Kendo UI dialect
- Hosting webui on different host
- How do I know the Version of the SmartComponent Library that I am using?
- How to add newly created database fields to existing Business Entity Temp-Tables
- How to fill a Dataset with an inner join between tables?
- How to use appsrvtt.d with PASOE
- Implementing Service Interface Authorization for Business Entity Methods
- Implement logical application locks
- Initializing a session for the SmartFramework Authorization subsystem
- Inspecting User Table and Index Statistics
- Installing the SmartComponent Library Eclipse plugin
- Interface Generator
- Invoking Business Entity Methods through the JSDO
- Invoking Business Tasks Asynchronously
- IServiceCreator factories to create Service instances at first usage
- JSDO Count methods for Kendo UI Builder
- JSDO Generic Service Interface support for Invoke Task
- JsonSerializable classes
- K-Base
- Keeping Swagger UI up-to-date
- Knowing when a new record is a copy of another record while saving the new record on the backend
- Legacy GUI FRAME Migration
- List & Label 21 Redistributable Files
- Maintaining custom constructors in the Dataset Model classes
- Managing AppServer Connections
- Managing the life cycle of Business Entities and Business Tasks
- Mapping Dataset Model properties to Enums
- Migrating existing menu structures to the SmartFramework menu
- Named Queries
- New API for dynamic DATA-SOURCE objects
- OEDTdoc style comment support
- OERA Business Entity Tester
- OpenEdge Ultra Controls versions
- Overview of binary source code
- Overview of OpenEdge Ultra Controls versions
- Overview of service.xml files
- Overview of services used in the SmartComponent Library
- Overview of supported OpenEdge Versions
- Pacific WebSpeed WebHandler based JSDO Generic Service
- PASOE management scripts
- Progress Developer Studio/OpenEdge Architect Hotkeys
- Progress Developer Studio/OpenEdge Architect Preferences
- Proparse TreeView
- Receiving data from a Business Entity in Batches
- Recommended Articles for Beginners
- RESTful services
- REST Service Authentication using the SmartFramework IHybridRealm implementation
- RetrieveData method
- Scaffolding utility for common utility classes
- Scenario based Unit Tests for Business Entity FetchData (read) operations
- Searching data using ROWID's within the SmartBusinessEntityAdapter
- Security related functions in the SmartFramework
- Sending Emails using the EmailMessage class (Windows only)
- Services and the Service Container
- Setting up Forms authentication with SmartHybridRealm in OpenEdge 12.2
- SmartComponent Library Class Reference
- SmartComponent Library Package Manager
- SmartComponent Library Telemetry Service
- SmartComponent Library Tutorial
- SmartComponents NG2 reference
- JSON Configuration
- NG2 Client-side Programming tutorial
- Cancelling Smart Data Source Read Requests
- Component Events
- Drag and Drop Support
- Generating a SmartForm using the CLI Tool
- Generating Typings for Business Entities
- Invoking Named Queries using the Smart Data Source
- Kendo UI Scheduler usage
- SmartComponent Library Services
- Smart Filter and Breadcrumb Component Styling
- Using Keycloak for Authentication
- Using Secureable for Authentication
- Using the Smart Viewer Programmatically
- Widget API
- NG2 HTML Markup
- NG2 Setup
- SmartComponent Library NG for NativeScript System Requirements
- SmartComponent Library NG Web System Requirements
- Peer Dependencies for v1.19.4
- Peer Dependencies for v1.20.0
- Peer Dependencies for v1.20.1
- Peer Dependencies for v1.21.0
- Peer Dependencies for v1.21.1
- Peer Dependencies for v1.21.10
- Peer Dependencies for v1.21.11
- Peer Dependencies for v1.21.12
- Peer Dependencies for v1.21.2
- Peer Dependencies for v1.21.3
- Peer Dependencies for v1.21.4
- Peer Dependencies for v1.21.5
- Peer Dependencies for v1.21.6
- Peer Dependencies for v1.21.7
- Peer Dependencies for v1.21.8
- Peer Dependencies for v1.21.9
- Peer Dependencies for v1.22.0
- Peer Dependencies for v1.22.1
- Peer Dependencies for v1.22.2
- Peer Dependencies for v13.1
- Peer Dependencies for v13.2.000
- Peer Dependencies for v13.3.0
- Peer Dependencies for v13.4.0
- Peer Dependencies for v13.5.000
- Peer Dependencies for v13.5.001
- Peer Dependencies for v14.0.000
- Peer Dependencies for v14.1.000
- Peer Dependencies for v15.0.000
- Peer Dependencies for v15.1.000
- Peer Dependencies for v15.1.001
- Peer Dependencies for v16.0.000
- Peer Dependencies for v16.1.000
- SmartDB Upgrade and Migration Routine
- SmartScheduler
- SmartUnit and ScenarioRunner ANT Tasks
- SmartUnit Progress Developer Studio Plugin
- Static Names Generator
- Steps to create a new SmartDB and setup data and config for SmartDB.SmartUser based authentication
- Steps to migrate from the legacy SmartFramework menu rendering to the new implementation
- Strong-typed Query Support
- Support for multiple project roots and the Shared AVM feature
- Support for RESTful invocation of Business Task and Business Entity Methods
- Swagger REST API Documention for JSDO Generic Service
- Switching the Buffer sequence on a DATA-SOURCE in a DataAccess class
- Synchronizing the column sizing of multiple NodeLevel layouts in an UltraTree
- Template Scripts for SmartFramework data import/export
- The Annotation based Type Descriptor
- The Framework Bootstrap
- Translation with the SmartComponent Library
- Understanding Column Visibility in the SmartDataBrowser and SmartUpdatableBrowser
- Updating .annotation files through an ANT Eclipse Builder
- Use Azure Active Directory (AD) OAUTH2 authentication with PASOE
- Use Azure Active Directory (AD) SAML authentication with PASOE
- User, Groups and Rights Administration
- User Interface Transalation
- Use the AppServer for accessing Business Entities from within the Visual Designer
- Using .resx Files to cache image files
- Using a custom Error Message Dialog with SmartComponent Library or Consultingwerk core framework based applications
- Using a SmartBusinessEntityLookup as an Embeddable Editor for the SmartUpdatableBrowser
- Using Consultingwerk foreach includes
- Using custom buttons on the ErrorMessageForm
- Using custom buttons on the MessageForm
- Using custom log entry types
- Using DatasetController for developing static (client side) code accessing and manipulating ProDatasets
- Using DatasetModel classes to simplify data access from custom code
- Using IFunctionCallParameter
- Using Invokable Business Entity Methods with Dataset Model Classes
- Using Named Queries with the JSDO Generic Service
- Using the ADM2 DataView with OERA Business Entities
- Using the Business Entity Dispatcher
- Using the Business Entity method FetchDataByKeyTable
- Using the Consultingwerk IDE Templates
- Using the DataAccessMockFactory
- Using the Interface Generator
- Using the Lookup Dialog without the Lookup Control (SmartBusinessEntityLookup)
- Using the ServiceAdapter to access a Business Entity to retrieve data from the client
- Using the ServiceAdapter to access a Business Entity to update data from the client
- Using the SmartBusinessEntityLookup Control
- Using the SmartComboEditor Control
- Using the SmartComponent Library Desktop
- Using the SmartTabPageControlPlugin to create parent/child Forms
- Using Toolbarsecurity with a Security Framework (like Dynamics, Dynamics4.NET)
- Using Viewer Logic Classes
- Using Views with Model classes
- Using Visual Base Form classes
- Value based formatting in the SmartDataBrowser using the ValueBasedAppearanceFactory
- Video: Exposing a Business Entity to Telerik Mobile using the Generic Service Interface in under 03:30 minutes
- Visual Designer toolbox.xml Control Group Entries for the SmartComponent Library