Sample Applications
- Last UpdatedAug 21, 2026
- 5 minute read
On a 64-bit operating system, the sample application solution is installed by default in the following folder:
C:\ProgramData\ArchestrA\HistorianSDK <version number> Samples
There is a solution of a graphical user interface sample application called the UI sample, and a solution with a step-by-step sample console application illustrating the concepts explained in this SDK documentation.
To use the UI sample
- Open the appropriate solution file (.sln) in the Microsoft Visual Studio development environment with the installed C# option and Service Pack 1 or later.
- Rebuild the solution.
- Select as StartUp Project SDKMainWPF and run it.
The first tab in the sample application is the Connection tab.

The following options are available:
- In the Server Name box, provide a valid network name of the historian computer, which can be available or not available at the time you specify the name.
- In the TCP Port box, enter the port that is used for communication with the historian. By default, this is set to 32568.
- In the User Name and Password boxes, provide the credentials of a user having the necessary permissions for creating tags and storing data on the historian computer.
- In the Store Forward Path box, provide a path to a folder where data can be locally stored if the historian server becomes unavailable.
- In the Minimum Store Forward Duration and Store Forward Free Disk Space boxes, configure the duration and limit.
- Select Compression to enable compression of data to reduce network bandwidth usage.
- Select High Latency Network if your connection takes place over a high-latency network (ping response times over 500 ms). If you use this option, we recommend that you also enable compression.
After configuring the Connection tab options, click Connect and observe the current connection status at the bottom of the sample application window. Because the historian connection gets established asynchronously, the connection status indicators may change over time:
- The Connected to Server indicator shows whether the historian server is online and reachable.
- The Connected to Storage indicator shows whether the historian server’s storage is running in the read-write mode and ready to store incoming data. If the Connected to Server is green, but the Connected to Storage is red, it means that the historian server is up, but not started yet, so only retrieval operations are allowed.
- The Connected to StoreForward indicator shows whether the connection to the locally running store-and-forward storage engine is available and the data can be stored locally if there are any problems with the historian server connection.
After the connection to historian storage or to the store-and-forward subsystem is established, click the Tags tab:

Configure the following options:
- In the Tag Name or Prefix box, provide a common prefix for tag names to be created.
- In the Number of Tags box, specify the number of tags of that common name prefix to be created.
- In the Description box, type a text string describing the tags. All created tags will have the same description property.
- In the Data Type list, click a .NET type corresponding to a Historian tag type. For example, the Int32 type corresponds to the 32-bit signed integer tag type.
- In the Storage Type list, click a tag storage rule such as delta or cyclic. There are many other storage rules that can be specified in the Historian SDK API, but this sample application provides just a few for simplicity.
- Select the Enable Channel Status check box to specify if the channel status information (such as disconnect indicators) should be stored within the tag data stream in case a disconnect occurs between the sample application and the historian.
When you click Add Tags, the tags are created in the store-and-forward subsystem and immediately synchronized with the historian server, if it is available. Then you can switch to the Storage tab and start storing data values for those tags.

Configure the following options:
- In the Number of values for each tag box, type the number of values for each tag to be sent in one batch.
- In the Sleep time between values box, type the sleep time, in milliseconds, between values within the batch.
- In the Sleep time between batches box, type the sleep time, in milliseconds, between batches.
- In the Number of Threads box, type the number of threads to use for sending values.
- In the Tags window, check the tags for which the data should be sent.
For example, if you specify 1 for the number of values, 0 for the sleep time between values, and 5000 ms between batches, and then select the first tag in the list of tags, the sample application will start sending random values for that tag every 5 seconds to be stored in the historian if it is available, or to the store-and-forward subsystem otherwise. The StartTime field indicates the time the first value is stored. To stop sending data values to the historian, click Stop. After stopping, the End Time field indicates the time you stopped storing values, and the Total Value Count field indicates the total number of values stored before you clicked Stop.
Using the Retrieval tab, you can retrieve data from the historian by specifying the query time range on the Time property page, the retrieval mode on the Retrieval page, which history table to query on the Source page, and the tag names on the Tags page.

After you have selected your query parameters, click Execute.