This guide walks you through starting, monitoring, and managing your solution's runtime execution. Learn to use execution profiles, apply online changes, and troubleshoot runtime issues.

Prerequisites:

  • Solution configured in Designer
  • Appropriate runtime license
  • Understanding of execution profiles


TO DO  Review and delete  previous content





Understanding Runtime Startup

Startup Sequence

When you start a solution:

  1. TStartup.exe launches
    • Loads solution configuration
    • Parses command parameters
    • Activates main process (TServer.exe)
  2. Real-time database starts
    • Loads tags and templates into memory
    • Establishes communication service
  3. Modules initialize
    • Historian, Alarms, Devices start
    • Scripts, Datasets, Reports activate
    • Each connects to main process
  4. Profile applies
    • Development, Validation, or Production
    • Database connections adjust
    • Security settings activate
  5. Clients can connect
    • Web displays available
    • Desktop clients can launch
    • Mobile access enabled

Starting the Runtime

From Designer

Quick Start (Test Mode):

  1. Click Run Test (F5)
  2. Solution runs within Designer
  3. Limited to 2 hours execution
  4. Ideal for testing

Full Runtime Start:

  1. Go to Runtime → Startup
  2. Select Execution Profile
  3. Click Run Startup
  4. Monitor startup progress

From Solution Center

  1. Select solution
  2. Click Manage
  3. Choose execution profile
  4. Click Run in Profile

Command Line Start

batch

TStartup.exe /solution:"MySolution" /profile:Production

Parameters:

  • /solution: - Solution name or path
  • /profile: - Development/Validation/Production
  • /username: - Credentials if required
  • /redundancy: - Enable redundancy mode

Execution Profiles

Understanding Profiles

Three standard profiles manage lifecycle:

ProfilePurposeTypical Settings
DevelopmentTesting and debuggingLocal SQLite, test data, full diagnostics
ValidationPre-production testingTest servers, limited data, validation rules
ProductionLive operationProduction servers, full security, optimized

Configuring Profiles

  1. Go to Runtime → Execution Profiles
  2. Select profile to configure
  3. Adjust settings:
    • Database connections
    • Historian storage
    • Alarm databases
    • Communication ports

Profile-Specific Settings

Development Profile:

Database: SQLite (local)
Historian: Memory only
Alarms: Local file
Trace: Full diagnostics

Production Profile:

Database: SQL Server
Historian: Full storage
Alarms: Central database
Trace: Errors only

Monitoring Runtime Status

Runtime Status Page

View real-time information:

  • Solution: Name and version
  • Profile: Current execution profile
  • Status: Running/Stopped
  • Uptime: Time since start
  • Memory: Current usage
  • CPU: Processor load

Module Status

Check individual modules:

ModuleStatus Indicators
TServerMain process health
DevicesCommunication status
AlarmsActive alarm count
HistorianStorage status
ScriptsExecution state

Using Info Namespace

Access runtime information programmatically:

csharp

// Check if running
bool isRunning = @Info.Module.IsRunning;

// Get solution name
string solution = @Info.Solution.Name;

// Check test mode
bool testMode = @Info.TestMode;

// Write to trace
@Info.Trace("Runtime started successfully");

Online Configuration Changes

Hot Reload Capabilities

Changes that apply immediately:

  • Tag values and properties
  • Display modifications
  • Script logic updates
  • Alarm limits
  • User permissions

Changes requiring restart:

  • Device channel configuration
  • Database connections
  • Port assignments
  • Module enable/disable

Applying Online Changes

  1. Make changes in Designer
  2. Save modified items (Ctrl+S)
  3. Click Apply Online Changes
  4. Confirm modules to update
  5. Changes apply without restart

Online Change Limitations

Cannot change online:

  • Solution database settings
  • Execution profile
  • Core communication ports
  • License configuration

Client Connections

Web Client Access

Enable web access:

  1. Verify port 80/443 open
  2. Check IIS or TWebServer running
  3. Users browse to:
    http://server/solution
    https://server/solution

Desktop Client Launch

Rich Client:

  1. Install client software
  2. Configure server connection
  3. Launch from desktop
  4. Enter credentials

Smart Client:

  • Auto-downloads from server
  • No installation required
  • Updates automatically

Mobile Access

Configure for tablets/phones:

  1. Enable responsive displays
  2. Configure touch gestures
  3. Test on target devices
  4. Optimize performance

Build and Publish

Building Solution

Compile for deployment:

  1. Go to Runtime → Build
  2. Select build options:
    • Compile Scripts
    • Validate Displays
    • Check References
  3. Click Build
  4. Review output for errors

Publishing Solution

Create read-only version:

  1. Go to Runtime → Publish
  2. Set version number
  3. Choose publish options:
    • Read-only (.dbrun)
    • Encrypted
    • Include resources
  4. Click Publish
  5. Deploy .dbrun file

Runtime Diagnostics

Property Watch

Monitor and modify values:

  1. Go to Runtime → Diagnostics
  2. Click Property Watch
  3. Browse to tags/objects
  4. View real-time values
  5. Modify if permitted

Trace Window

View system messages:

  1. Click Trace Window
  2. Set trace level:
    • Error only
    • Warning and above
    • Info and above
    • Debug (all)
  3. Filter by module
  4. Export log if needed

Module Information

Detailed module status:

  1. Click Module Information
  2. View for each module:
    • Start time
    • Memory usage
    • Thread count
    • Error count
    • Performance metrics

Stopping Runtime

Graceful Shutdown

From Designer:

  1. Go to Runtime → Startup
  2. Click Stop Runtime
  3. Confirm shutdown
  4. Wait for complete stop

From Solution Center:

  1. Select running solution
  2. Click Stop
  3. Confirm if prompted

Emergency Stop

Force immediate stop:

batch

TStartup.exe /solution:"MySolution" /stop /force

Or use Task Manager:

  1. End TServer.exe
  2. End module processes
  3. Clear temp files

Troubleshooting Runtime

Startup Issues

Runtime won't start:

  • Check license validity
  • Verify database connections
  • Review Windows Event Log
  • Check port availability
  • Examine trace logs

Modules fail to load:

  • Check module licenses
  • Verify configuration
  • Review dependencies
  • Check memory availability

Performance Issues

High CPU usage:

  • Check script execution
  • Review communication rates
  • Optimize tag scanning
  • Reduce graphic complexity

Memory growth:

  • Check for memory leaks
  • Review historian settings
  • Optimize script objects
  • Clear old alarm records

Connection Problems

Clients cannot connect:

  • Verify firewall rules
  • Check server services
  • Test network connectivity
  • Verify authentication

Database connection fails:

  • Check connection strings
  • Verify credentials
  • Test network path
  • Check SQL services

Best Practices

Startup Configuration

? Use appropriate profiles for each environment ? Test in Development before Production ? Document profile settings ? Backup before changes

Runtime Monitoring

? Set up alerts for critical errors ? Monitor resource usage regularly ? Archive trace logs periodically ? Check module health daily

Online Changes

? Test changes in Development first ? Apply during low-activity periods ? Have rollback plan ready ? Document all changes


This guide covered starting and managing runtime execution, from initial startup through monitoring and diagnostics, providing essential knowledge for reliable solution operation.

Claude can make mistakes.
Please double-check responses.

Research

Opus 4.1



Startup Procedure

→ For details on the startup procedure review the Runtime Startup Settings page.

→ For details on setting up the execution review the Solution Deployment (Reference) page.


  1. Launching TStartup.exe
    • Loads the Solutions
    • Reads the Solution Configuration
    • Parses Command Line Parameters
    • Activates the Main Process TServer.exe.
  2. Starting the Real-Time Database
    • TServer.exe starts by loading solution objects, tags, templates, and assets into the memory. A communication service is established, allowing other modules to start and connect.
  3. Modules Startup
    • The other modules, such as Historian, Alarms, Devices, Scripts, Datasets, and Reports, then start their execution by reading the solution configuration and establishing a connection with the main process.
  4. Applying Execution Profiles
    • As the modules start, they behave according to the definitions in the Execution Profiles. For instance, in Development mode, a temporary local SQLite database might be used for alarm records, while in Production mode, the Alarm Database is automatically mapped to a SQL server.
  5. Solution Designer Automatic Connection
    • The Solution Designer automatically connects to the running solution, enabling users to monitor progress, make adjustments, and troubleshoot issues as needed using the Monitor and Diagnostics pages.
  6. Opening Client-Side Displays
    • Operations displays, using HTML5 from any browser or high-performance WPF graphics pages, can be opened from any remote computer connected to the server.
  7. Applying Online Changes and Hot Updates
    • During execution, the system can apply online configuration changes and hot updates without disrupting the runtime environment. This capability allows users to adapt the solution to changing requirements while maintaining high system availability.


Configuring the Runtime Environment

When developing a software solution, maintaining stability and preventing interference between various stages and components is crucial. To ensure the configuration and development aspects do not negatively impact the solution's runtime environment, use "Configuration and Runtime Process Isolation."

The Configuration Process involves setting up parameters, profiles, and other settings that define how the solution should operate.

Isolating these processes allows developers to modify configurations and test new features without disrupting the running solution, defining how the solution should opportunity depending on the Execution Profile you are running.

Runtime Configurations

Runtime Startup

The Runtime Startup section allows you to Start and Stop the execution of the Solution, specify the Execution Profile you want to use, and customize all settings connected within that execution.

The settings defined here are also applied when the Startup is executed by the StartSolution command line, or starting the solution as a Windows Server. This section focuses on the various settings you have available and starting and stopping manually.

→ Read more about Runtime Startup Settings.

Execution Profiles

Execution Profiles enable distinct configurations for a single project, facilitating a seamless and swift transition between devices and databases.

Development, Validation, and Production are the scenarios in which the solution must operate over its lifecycle. Occasionally, these scenarios may overlap, posing risks to the entire operational environment. In this version, we introduce an intuitive method to separate these stages, enhancing both security and reliability.

Read more about Runtime Execution Profiles.

Build and Publish

The software platform offers support to manage solution versions, allowing the creation of a read-only version and a published version. The Build feature compiles the solution's displays and scripts for final verification before deployment in production. It ensures complete verification of an application's scripts in preparation for production. The Publish command generates a read-only protected version of a solution ready for field deployment. This command produces a new Solution file (".dbsln") with the chosen version number. The Published Solutions (".dbrun") mirror the current solution but are accessible only in read-only mode, offering a secure backup of published applications.

→ Read more about Build and Publish.

Runtime Diagnostics

This page provides a comprehensive guide on how to use diagnostic tools for project applications. These tools include the Property Watch, Trace Window, and Module Information, which offer insights into the status and operation of different modules within your application.

Property Watch is a tool designed to access and modify the system's tags and internal properties. With an Intellisense feature, it also provides a list of available objects related to a specific object type.

→ Read more about Runtime Diagnostics.

Server And Client Namespaces

There are a few runtime objects that provide information about running the solution.

The Info namespace is the main location for the runtime status. The main objects on the namespace are:

Info.Solution: information about the solution that is running
Info.License: information about the license
Info.Module: information and start/stop command to Modules
Info.Trace(): displays a message on the TraceWindow
Info.TestMode: shows if the solution is running in Test Mode

The Server namespace has information about the server computer. The Client namespace has information about each client compute that runs a graphical interface. See Namespaces for the complete programming reference on runtime objects.

Working with the Runtime

Starting and Stopping the Solution Execution

To start the solution execution, you need to launch the application or server, depending on the solution type. It is essential to monitor the system for any errors or issues during startup, as they may prevent the application from running correctly.

To stop the solution execution, you can use the appropriate command or interface provided by the runtime environment or the application itself. Make sure to shut down the application to avoid data loss or corruption.

To start the solution in production mode:

  1. Go to Runtime / Startup.
  2. Click the Run Startup button

Applying Configuration Changes

Configuration changes can be applied to the runtime environment to modify the behavior of the application. These changes can include modifying settings, adding or removing modules, or adjusting resource allocation. To apply configuration changes, follow these steps:

  1. Identify the configuration file or settings for your application.
  2. Modify the configuration settings as needed.

Restart the application or reload the configuration to apply the changes, depending on the capabilities of the runtime environment.