-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy pathFindPIPointsExample.cs
More file actions
58 lines (51 loc) · 2.28 KB
/
FindPIPointsExample.cs
File metadata and controls
58 lines (51 loc) · 2.28 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
using System;
using System.Collections.Generic;
using OSIsoft.AF.PI;
using OSIsoft.AF.Search;
namespace ExamplesLibrary
{
/// <summary>
/// This example finds PI Points based off of a query and prints the point attributes to the console.
/// </summary>
/// <prerequisite-examples>
/// none
/// </prerequisite-examples>
public class FindPIPointsExample : IExample
{
public void Run()
{
PIServers piServers = new PIServers();
PIServer piServer = piServers["<PISERVER>"];
// Use PICommonPointAttributes so we don't have to remember the strings for point attributes.
PIPointQuery compressionFilter = new PIPointQuery {
AttributeName = PICommonPointAttributes.Compressing,
AttributeValue = "1",
Operator = AFSearchOperator.Equal };
PIPointQuery nameFilter = new PIPointQuery
{
AttributeName = PICommonPointAttributes.PointSource,
AttributeValue = "R",
Operator = AFSearchOperator.Equal
};
IEnumerable<string> attributesToLoad = new[]
{
PICommonPointAttributes.Compressing,
PICommonPointAttributes.Descriptor,
PICommonPointAttributes.PointSource,
PICommonPointAttributes.Span,
PICommonPointAttributes.Zero
};
IEnumerable<PIPoint> points = PIPoint.FindPIPoints(piServer, new[] { compressionFilter, nameFilter }, attributesToLoad);
foreach (PIPoint pt in points)
{
Console.WriteLine("Name: {0}", pt.GetAttribute(PICommonPointAttributes.Tag));
Console.WriteLine("Compressing: {0}", pt.GetAttribute(PICommonPointAttributes.Compressing));
Console.WriteLine("Descriptor: {0}", pt.GetAttribute(PICommonPointAttributes.Descriptor));
Console.WriteLine("PointSource: {0}", pt.GetAttribute(PICommonPointAttributes.PointSource));
Console.WriteLine("Span: {0}", pt.GetAttribute(PICommonPointAttributes.Span));
Console.WriteLine("Zero: {0}", pt.GetAttribute(PICommonPointAttributes.Zero));
Console.WriteLine();
}
}
}
}