Please ensure Javascript is enabled for purposes of website accessibility
Powered by Zoomin Software. For more details please contactZoomin

AF SDK Reference

AFAnalysisRules Class

  • Last UpdatedNov 18, 2025
  • 8 minute read
AFAnalysisRules Class
The collection of AFAnalysisRule objects is maintained by the an AFAnalysisRule.

Inheritance Hierarchy

SystemObject
  OSIsoft.AFAFCollection
    OSIsoft.AFAFCollectionAFAnalysisRule
      OSIsoft.AFAFNamedCollectionAFAnalysisRule
        OSIsoft.AF.AnalysisAFAnalysisRules

Namespace:  OSIsoft.AF.Analysis
Assembly:  OSIsoft.AFSDK (in OSIsoft.AFSDK.dll) Version: 3.1.1.1182

Syntax

public sealed class AFAnalysisRules : AFNamedCollection<AFAnalysisRule>, 
	IAFTrace
Public NotInheritable Class AFAnalysisRules
	Inherits AFNamedCollection(Of AFAnalysisRule)
	Implements IAFTrace

Dim instance As AFAnalysisRules
public ref class AFAnalysisRules sealed : public AFNamedCollection<AFAnalysisRule^>, 
	IAFTrace
[<SealedAttribute>]
type AFAnalysisRules =  
    class
        inherit AFNamedCollection<AFAnalysisRule>
        interface IAFTrace
    end

The AFAnalysisRules type exposes the following members.

Properties

  NameDescription
Public property
Analysis
This read-only property returns the AFAnalysis that owns this object.
Public property
AnalysisTemplate
This read-only property returns the AFAnalysisTemplate that owns this object.
Public property
Count
Gets the number of items actually contained in the collection.
(Inherited from AFCollectionT.)
Public property
Database
This read-only property returns the AFDatabase where this object is defined.
Public property
Identity
This read-only property contains identity of the object.
(Inherited from AFCollection.)
Public property
IsDeleted
This read-only property indicates whether the owner of the collection has been deleted.
(Inherited from AFCollection.)
Public property
ItemGuid
Returns the item in the collection associated with the passed in ID.
(Inherited from AFCollectionT.)
Public property
ItemInt32
Returns the item located at the passed in index.
(Inherited from AFCollectionT.)
Public property
ItemString
Returns the specified object from the collection by name.
(Inherited from AFNamedCollectionT.)
Public property
ItemIdentity
This read-only property specifies the identity of the objects within the collection.
(Inherited from AFCollection.)
Public property
Parent
This read-only property returns the AFAnalysisRule that owns this collection of analysis rules.
Public property
PISystem
This read-only property allows access to the PISystem associated with this collection.
(Inherited from AFCollection.)

Methods

  NameDescription
Public method
Add(T)
Adds an object to the end of the collection.
(Inherited from AFCollectionT.)
Public method
Add(AFPlugIn)
This methods adds an Analysis Rule defined by the specified PlugIn to the model analysis.
Public method
Clear
Removes all items from the collection.
(Inherited from AFCollectionT.)
Public method
Contains(Guid)
This method determines whether the collection contains a specific item referenced by id.
(Inherited from AFCollectionT.)
Public method
Contains(T)
This method determines whether the collection contains a specific item.
(Inherited from AFCollectionT.)
Public method
Contains(String)
This method determines whether the collection contains a specific item referenced by name.
(Inherited from AFNamedCollectionT.)
Public method
CopyTo
Copies the entire collection to a compatible one-dimensional Array, starting at the specified index of the target array.
(Inherited from AFCollectionT.)
Public method
Equals
Determines whether the specified object is equal to the current object.
(Inherited from Object.)
Public method
GetEnumerator
Returns an enumerator that iterates through the collection.
(Inherited from AFCollectionT.)
Public method
GetHashCode
Gets the hash code for this instance of the object which is suitable for use in hashing algorithms and data structures like a hash table.
(Inherited from AFCollection.)
Public method
GetType
Gets the Type of the current instance.
(Inherited from Object.)
Public method
IndexOf
Searches for the specified object and returns the zero-based index of the first occurrence within the entire collection.
(Inherited from AFCollectionT.)
Public method
Insert
Inserts an item into the collection at the specified index.
Public method
IsTraced
Indicates if a specified level is being traced.
Public method
Remove(Guid)
Removes the item with the specified id from the collection.
(Inherited from AFCollectionT.)
Public method
Remove(T)
Removes the first occurrence of a specific object from the collection.
(Inherited from AFCollectionT.)
Public method
Remove(String)
The Remove method removes the item from the collection by name.
(Inherited from AFNamedCollectionT.)
Public method
RemoveAt
Removes the item at the specified index of the collection.
(Inherited from AFCollectionT.)
Public method
Sort
Sorts the items in the entire collection using the default comparer.
(Inherited from AFCollectionT.)
Public method
Sort(IComparerT)
Sorts the items in the entire collection using the specified comparer.
(Inherited from AFCollectionT.)
Public method
Sort(Int32, Int32, IComparerT)
Sorts the items in a range of items in the collection using the specified comparer.
(Inherited from AFCollectionT.)
Public method
Swap
Swap the items in the collection by specified index.
Public method
ToString
Returns a String that represents the current object.
(Inherited from AFCollection.)
Public method
TraceData
Output a data trace event.
Public method
TraceDetail
Output a detail trace event.
Public method
TraceError
Output an error trace event.
Public method
TraceEvent(AFTraceSwitchLevel, String)
Output a trace event with a message.
Public method
TraceEvent(AFTraceSwitchLevel, String, Int32)
Output a trace event with a message and a duration.
Public method
TraceEvent(AFTraceSwitchLevel, String, Object)
Output a trace event as a formatted message with a variable number of arguments.
Public method
TraceInformation
Output an information trace event.
Public method
TraceSummary
Output a summary trace event.
Public method
TraceWarning
Output a warning trace event.

Remarks

Each analysis consists of an ordered collection of AFAnalysisRule objects that compromise the complete analysis. When an analysis executes, these analysis rules will be executed in order.

Examples

// This example demonstrates how to create a model analysis and configure
// its analysis rule and time rule.

// Get the Database
PISystems myPISystems = new PISystems();
PISystem myPISystem = myPISystems.DefaultPISystem;
AFDatabase myDB = myPISystem.Databases.DefaultDatabase;

// Create an Element with an Attribute
AFElement myElement = myDB.Elements.Add("MyElement");
AFAttribute myAttribute = myElement.Attributes.Add("MyAttribute");
myAttribute.DataReferencePlugIn = AFDataReference.GetPIPointDataReference(myPISystem);
myAttribute.DataReference.ConfigString = @"\\%Server%\sinusoid";

// Create an Analysis and set its Target to the Element
AFAnalysis myAnalysis = new AFAnalysis(myDB, "MyAnalysis");
myAnalysis.Description = "This is an analysis example";
myAnalysis.Target = myElement;

// Set the Analysis Rule and Time Rule
myAnalysis.AnalysisRulePlugIn = myPISystem.AnalysisRulePlugIns["Imbalance"];
myAnalysis.TimeRulePlugIn = myPISystem.TimeRulePlugIns["Periodic"];
myAnalysis.AnalysisRule.ConfigString = "Balance=Volume;Imbalance=Volume Imbalance;UOM=US gal";
myAnalysis.TimeRule.ConfigString = "Frequency=3600";

// Display the Name, Description, and Target
Console.WriteLine("Name = {0}", myAnalysis.Name);
Console.WriteLine("Description = {0}", myAnalysis.Description);
Console.WriteLine("Target = {0}", myAnalysis.Target);
' This example demonstrates how to create a model analysis And configure
' its analysis rule and time rule.

' Get the Database
Dim myPISystems As New PISystems
Dim myPISystem As PISystem = myPISystems.DefaultPISystem
Dim myDB As AFDatabase = myPISystem.Databases.DefaultDatabase

' Create an Element with an Attribute
Dim myElement As AFElement = myDB.Elements.Add("MyElement")
Dim myAttribute As AFAttribute = myElement.Attributes.Add("MyAttribute")
myAttribute.DataReferencePlugIn = AFDataReference.GetPIPointDataReference(myPISystem)
myAttribute.DataReference.ConfigString = "\\%Server%\sinusoid"

' Create an Analysis and set its Target to the Element
Dim myAnalysis As New AFAnalysis(myDB, "MyAnalysis")
myAnalysis.Description = "This is an analysis example"
myAnalysis.Target = myElement

' Set the Analysis Rule and Time Rule
myAnalysis.AnalysisRulePlugIn = myPISystem.AnalysisRulePlugIns("Imbalance")
myAnalysis.TimeRulePlugIn = myPISystem.TimeRulePlugIns("Periodic")
myAnalysis.AnalysisRule.ConfigString = "Balance=Volume;Imbalance=Volume Imbalance;UOM=US gal"
myAnalysis.TimeRule.ConfigString = "Frequency=3600"

' Display the Name, Description, and Target
Console.WriteLine("Name = {0}", myAnalysis.Name)
Console.WriteLine("Description = {0}", myAnalysis.Description)
Console.WriteLine("Target = {0}", myAnalysis.Target)

No code example is currently available or this language may not be supported.

No code example is currently available or this language may not be supported.

Version Information

AFSDK


See Also

TitleResults for “How to create a CRG?”Also Available in