Custom Coding Options: Overrides; Widgets, Functions, Services, Hooks & Plug Ins

Covers ways that script code can be utilized to create extensions and behavior overrides for VTScada

Designed for VTScada script developers, this intensive one-day workshop explores a range of custom coding techniques available within VTScada. Participants will learn how to extend platform functionality, customize system behavior, and build maintainable solutions using script modules like widgets, functions, services, and hooks. Through hands-on exercises and real-world examples, attendees will gain practical experience applying VTScada’s extensibility framework to solve complex application requirements.

Topics may include

Introduction to VTScada Extensibility

  • Understanding the VTScada customization framework
  • Selecting the right coding approach for different requirements
  • Extending versus modifying existing functionality
  • Best practices for maintainable custom development

Custom Widgets

  • Understanding widget architecture
  • Creating reusable interface components
  • Adding custom graphics, controls, and interactions
  • Passing parameters and managing widget properties

Writing Custom Functions

  • Creating reusable scripting modules
  • Function design and organization
  • Input parameters and return values
  • Building libraries of reusable code
  • Debugging and maintaining custom functions

Developing Services

  • Understanding service-based architectures in VTScada
  • Creating shared background functionality
  • Managing service lifecycle and state
  • Real-world service implementation examples

Hooks and Event-Driven Customization

  • Understanding hook-based development
  • Injecting custom behavior into existing workflows
  • Responding to application events
  • Extending system functionality without extensive code modifications
  • Common hook implementation patterns

Architecture and Design Best Practices

  • Choosing the appropriate customization mechanism
  • Maintaining upgrade-friendly custom code
  • Reducing technical debt
  • Documentation and support considerations
  • Building reusable development frameworks

Hands-On Exercises

Participants will complete practical labs such as:

  • Creating and testing a custom function
  • Developing a reusable widget
  • Creating a custom service
  • Utilizing hooks to extend application behavior

Learning Outcomes

Participants will develop capabilities such as being able to:

  • Understand the various methods available for extending VTScada functionality.
  • Determine when to use widgets, functions, services, or hooks.
  • Build reusable and maintainable custom application components.
  • Safely modify and extend standard VTScada behavior.
  • Design upgrade-friendly customizations that reduce long-term maintenance effort.

Who Should Attend?

To be able to keep up with this course, attendees will need to have taken a VTScada script course recently and/or be comfortable with basic scripting in contexts like pages and widgets.

Prerequisites: Intermediate to advanced experience with VTScada scripting, tags, and application development. Through a full day of demonstrations, architecture discussions, coding exercises, and real-world development scenarios, participants will gain the confidence and practical skills needed to leverage VTScada’s most powerful customization tools to create sophisticated, scalable, and maintainable applications.

“Our ability to build trust with our customers has set us apart in this industry for almost 4 decades,” says Trihedral President, and Chief VTScada Architect, Glenn Wadden. “ScadaFest is a tremendous opportunity to spend quality time with our developers and puts a face on our software. That helps our users feel confident that they can create customized solutions that will last for decades.”