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

PI Powershell

OSIsoft.PowerShell Namespace

  • Last UpdatedDec 15, 2025
  • 61 minute read
OSIsoft.PowerShell Namespace

Classes

  ClassDescription
Public classCode example
AddAFAttribute

Add an AF Attribute

The Add-AFAttribute cmdlet creates a new AF Attribute. The attribute can be an attribute on an AF Element, or an AF Sub Attribute

Public classCode example
AddAFAttributeTemplate

Add an AF Attribute Template

The Add-AFAttributeTemplate cmdlet creates an AF Attribute Template. The AF Attribute Template can be on an existing Element Template, or a Sub Attribute Template.

Public classCode example
AddAFCategory

Add an AF Category

The Add-AFCategory cmdlet creates a new AF Category. The category can be added as an attribute, element, analysis, table or reference type category.

Public classCode example
AddAFDatabase

Add an AF Database

The Add-AFDatabase cmdlet will add a new AF Database to a specified AF Server.

Public classCode example
AddAFElement

Add an AF Element

The Add-AFElement cmdlet adds a new AF Element. To add the element as a top level element, add the element to an AF Database. The element can also be added to an existing AF Element as a child element.

Public classCode example
AddAFElementTemplate

Add an AF Element Template

The Add-AFElementTemplate cmdlet adds a new AF Element Template.

Public classCode example
AddAFEventFrame

Add an AF Event Frame(s)

The Add-AFEventFrame cmdlet creates a new AF Event Frame

Public classCode example
AddAFPort

Add an AF Port

The Add-AFPort cmdlet adds a new AF Port to an existing AF Element or AF Element Template

Public classCode example
AddAFSecurity

Add AF Security to AF objects

The Add-AFSecurity cmdlet adds an AF Security Identity to AF Objects that support security.

Public classCode example
AddAFSecurityIdentity

Adds an AF Security Identity to an AF Server

The Add-AFSecurityIdentity cmdlet creates a new AF Security Identity on an AF Server.

Public classCode example
AddAFSecurityMapping

Adds an AF Security Mapping to an AF Server

The Add-AFSecurityMapping cmdlet adds an AF Security Mapping to an AF Server.

Public classCode example
AddAFServer

Add an AF Server to the local AF Servers list

The Add-AFServer cmdlet will add an AF Server to the local AF Server list.

Public classCode example
AddAFUnitOfMeasure

Add an AF Unit of Measure

The Add-AFUnitOfMeasure cmdlet creates a new AF Unit of Measure on an AF Server.

Public classCode example
AddAFUnitOfMeasureClass

Add an AF Unit of Measure Class

The Add-AFUnitOfMeasureClass cmdlet will create a new AF Unit of Measure Class on an AF Server.

Public classCode example
AddPICollectiveMember

Add a PI Data Archive to an existing PI Data Archive Collective

The Add-PICollectiveMember cmdlet adds a PI Data Archive as a secondary member to an existing PI Data Archive Collective. For PI Data Archive Collectives version 2017 and later, the member's public certificate must also be added. See KB01564 for more information.

The PICollective parameter specifies which PI Collective to add the specified PI Data Archive to a a secondary member.

Public classCode example
AddPIDataArchiveConnectionConfiguration

Add connection configuration information for a PI Data Archive in the local Known Servers Table (KST)

The Add-PIDataArchiveConnectionConfiguration cmdlet adds an entry in the local Known Servers Table (KST) which contain locally saved connection configuration information for connecting to specific PI Data Archive servers. Note that this information is set in the same fashion for both standalone PI Data Archive servers and PI HA Collectives. If the entry points to a PI HA Collective member, then the collective configuration/information will be automatically downloaded upon first connection.

Public classCode example
AddPIDigitalStateSet

Add a PI Digital State Set

The Add-PIDigitalStateSet cmdlet creates a new PI Digital State Set on a PI Data Archive.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
AddPIDigitalStateToStateSet

Add a PI Digital State to an existing PI Digital State Set

The Add-PIDigitalStateToStateSet cmdlet adds a PI Digital State to an existing PI Digital State Set on a PI Data Archive.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
AddPIFirewall

Add an entry in the PI Firewall Table

The Add-PIFirewall cmdlet adds an entry in the PI Firewall table

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
AddPIGroup

Add a new PI Group to a PI Data Archive

The Add-PIGroup cmdlet adds a new PI Group on a PI Data Archive

The connection parameter specifies which connection to a PI Data Archive to use.

NOTE: PI Users and PI Groups have been replaced by PI Identities. PI Identities with PI Mappings (WIS) and PI Trusts should be used to configure PI Data Archive security. See KB00833 for more information.

Public classCode example
AddPIIdentity

Get a PI Security Identity

The Get-PIIdentity cmdlet gets PI Security Identity

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
AddPIMapping

Add a PI Security Mapping

The Add-PIMapping cmdlet adds a PI Security Mapping

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
AddPIPoint

Add a PI Point or PI Points

The Add-PIPoint cmdlet creates a PI Point on the specified PI Data Archive with the specified attributes.

Public classCode example
AddPITrust

Add a PI Security Trust

The Add-PITrust cmdlet adds a PI Trust

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
AddPIUser

Add a new PI User to a PI Data Archive

The Add-PIUser cmdlet adds a new PI User on a PI Data Archive

The connection parameter specifies which connection to a PI Data Archive to use.

NOTE: PI Users and PI Groups have been replaced by PI Identities. PI Identities with PI Mappings (WIS) and PI Trusts should be used to configure PI Data Archive security. See KB00833 for more information.

Public classCode example
AddPIUserToPIGroup

Add an existing PI User to PI Groups on a PI Data Archive

The Add-PIUserToPIGroups cmdlet adds an existing PI User to the specified PI Groups on a PI Data Archive

The connection parameter specifies which connection to a PI Data Archive to use.

NOTE: PI Users and PI Groups have been replaced by PI Identities. PI Identities with PI Mappings (WIS) and PI Trusts should be used to configure PI Data Archive security. See KB00833 for more information.

Public classCode example
AddPIValue

Add one or more PI Values to a PI Data Archive

The Add-PIValue cmdlet will add one or more PI Values to the specified PI Data Archive. If multiple values are being written, the number of values in the arrays that are passed in must be either 1, or the same number as each other.

Public classCode example
AddTrustedProvider

Add a Trusted Provider in the PISystem

The Add-AFTrustedProvider cmdlet allows you to add the specified trusted provider subject name to the list of trusted providers in the PISystem.

Public class
AFServer

An AF Server representation instance.

Public class
AssemblyExtensions
Public classCode example
ClearChangeTables

Clears ChangeTables in the PISystem

Clears the tables in the PI AF SQL database which record information on changes to the PISystem.

Public classCode example
ClearPIArchiveQueue

Flush events in PI Archive Subsystem read/write cache to disk

The Clear-PIArchiveQueue cmdlet flushes the PI Archive Subsystem read and write cache to disk. Note that these cached records may still exist in the Windows File System Cache (FSC)

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
ClearPIBufferHealthIssue

Clear health issues from PI Buffer Subsystem

The Clear-PIBufferHealthIssue cmdlet clears health issues on the local PI Buffer Subsystem. Health issues are cleared by Issue ID, and can be further constrained by buffered server. Multiple Health Ids can be cleared at once.

This cmdlet is analogous to pibufss.exe -health -clear ... options

This cmdlet can be run against remote PI Buffer Subsystems by leveraging PowerShell Remoting.

Public classCode example
ClearPIBufferPointError

Clear point errors from PI Buffer Subsystem

The Clear-PIBufferPointError cmdlet clears point errors on the local PI Buffer Subsystem. Errors are cleared by PointID, and can be further constrained by buffered server. Multiple PointIDs can be specified and cleared at once.

This cmdlet is analogous to pibufss.exe -pointerr -clear ... options

This cmdlet can be run against remote PI Buffer Subsystems by leveraging PowerShell Remoting.

Public classCode example
ConnectAFServer

Connect to an AF Server

The Connect-AFServer cmdlet will connect to an AF Server in the local AF Servers list.

Public classCode example
ConnectPIDataArchive

Connect to a PI Data Archive

The Connect-PIDataArchive cmdlet allows a connection to be made to the specified PI Data Archive. The target PI Data Archive can be specified by machine name/IP/FQDN or via an entry in the local Known Servers Table (KST).

The connection object returned by this cmdlet is used frequently by other cmdlets to specify which PI Data Archive the cmdlet should target.

Public classCode example
ConvertFromAFRelativeTime

Converts a PI Time string into a DateTime

The ConvertFrom-AFRelativeTime cmdlet will convert a relative time into a DateTime and optionally translate it into local or UTC time.

By default the returned timestamp will not have a timezone associated with it.

Public classCode example
DeleteOrphans

Deletes orphaned child elements in the PISystem

The Delete-Orphans cmdlet allows you delete objects in the PISystem that have been orphaned. This includes any AF Elements objects that don't have a Parent Element defined.

Public classCode example
DisableAFSecurityIdentity

Disable an AF Security Identity on an AF Server

The Disable-AFSecurityIdentity cmdlet disables an AF Security Identity on an AF Server.

Public classCode example
DisableExternalDataTables

Disables support for an AFTable to link to an external source.

This method is used to disable the PISystemFeatures.ExternallyLinkedTable feature in the PI AF SQL Server database. This feature controls support for allowing an AFTable to link to an external source.

Public classCode example
DisableExternalDataTablesNonImpersonatedUsers

Disables support for an AFTable to link to an external source with non-impersonated users.

This cmdlet is used to disable the PISystemFeatures.ExternallyLinkedTableWithNonImpersonatedUser feature in the PI AF SQL Server database. This feature controls support for allowing access to an externally linked AFTable for non-impersonated users. If supported, an externally linked AFTable is not required to use client impersonation.

Public classCode example
DisablePropagationOfTargetDeletion

Disables support for propagating the deletion of targets (elements) to the referencing analyses and notifications.

This method is used to disable the PISystemFeatures.EnablePropagationOfTargetDeletion feature in the PI AF SQL Server database. When this feature is enabled, the deletion of an Asset.AFElementTemplate will delete any Analysis.AFAnalysisTemplate or AFNotificationTemplate that targets the element template. Also when enabled, the deletion of an AFElement will delete any AFAnalysis or AFNotification that targets the element.

Public classCode example
DisableUomMCaseSensitivity

Disable case-sensitivity of UOM abbreviations in the PI AF SQL Server database.

This method is used to disable the PISystemFeatures.UomCaseSensitive feature in the PI AF SQL Server database. This feature controls support for case-sensitive UOM abbreviations, allowing for abbreviations that differ only by case, such as MV and mV. It is recommended that you review the information in the user guide for Case Sensitive UOM Abbreviations prior to enabling or disabling this option.

Public classCode example
DisconnectAFServer

Disconnect from an AF Server

The Disconnect-AFServer cmdlet closes the connection to a specified AF Server.

Public classCode example
DisconnectPIDataArchive

Gracefully disconnect from a PI Data Archive

The Disconnect-PIDataArchive cmdlet allows a connection to be gracefully disconnected from a PI Data Archive.

Public classCode example
EnableAFSecurityIdentity

Enable an AF Security Identity on an AF Server

The Enable-AFSecurityIdentity cmdlet enables a currently disabled AF Security Identity on an AF Server.

Public classCode example
EnableExternalDataTables

Enables support for an AFTable to link to an external source.

This method is used to enable the PISystemFeatures.ExternallyLinkedTable feature in the PI AF SQL Server database. This feature controls support for allowing an AFTable to link to an external source.

Public classCode example
EnableExternalDataTablesNonImpersonatedUsers

Enables support for an AFTable to link to an external source with non-impersonated users.

This method is used to enable the PISystemFeatures.ExternallyLinkedTableWithNonImpersonatedUser feature in the PI AF SQL Server database. This feature controls support for allowing access to an externally linked AFTable for non-impersonated users. If supported, an externally linked AFTable is not required to use client impersonation.

Public classCode example
EnablePropagationOfTargetDeletion

Enables support for propagating the deletion of targets (elements) to the referencing analyses and notifications.

This method is used to enable the PISystemFeatures.EnablePropagationOfTargetDeletion feature in the PI AF SQL Server database. When this feature is enabled, the deletion of an Asset.AFElementTemplate will delete any Analysis.AFAnalysisTemplate or AFNotificationTemplate that targets the element template. Also when enabled, the deletion of an AFElement will delete any AFAnalysis or AFNotification that targets the element.

Public classCode example
EnableUomMCaseSensitivity

Changes configuration of UOM abbreviations from case insensitive to case sensitive in the PI AF SQL Server database.

This method is used to enable the PISystemFeatures.UomCaseSensitive feature in the PI AF SQL Server database. This feature controls support for case-sensitive UOM abbreviations, allowing for abbreviations that differ only by case, such as MV and mV. It is recommended that you review the information in the user guide for Case Sensitive UOM Abbreviations prior to enabling this option.

Public classCode example
ExportAFXml

Export XML representation of AF Objects to file or to System.IO.Stream

The Export-AFXml cmdlet exports the XML representation of an AF object or AF objects to a file or to a System.IO.Stream.

If only a single AF Object is to be exported, use the -AFObject switch to pass the object to be exported. If multiple AF Objects of the same type are to be exported, ie, a collection of AF Elements, use the corresponding plural switch. In this case, -AFElements.

Public classCode example
FindAFEventFrame

Find AF Event Frame(s)

The Find-AFEventFrame cmdlet searches for Event Frames, which can be searched as part of an AF Database or AF Element.

Public classCode example
GetAFAttribute

Get an AF Attribute

The Get-AFAttribute cmdlet gets an existing AF Attribute.

Public classCode example
GetAFAttributeTemplate

Get an AF Attribute Template

The Get-AFAttributeTemplate cmdlet gets an existing AF Attribute Template. The AF Attribute Template can be on an existing Element Template, or a Sub Attribute Template.

Public classCode example
GetAFCategory

Get an AF Category

The Get-AFCategory cmdlet gets an existing AF Category. The category can be an attribute, element, analysis, table or reference type category.

Public classCode example
GetAFCheckedOutItem

Get a checked out AF objects

The Get-AFCheckedOutItem cmdlet gets items checked out from an AF Server or AF Database. AF Server only includes: AFContact, AFNotificationContactTemplate, and UOMDatabase objects. All other objects must be retrieved via the AF Database.

Public classCode example
GetAFDatabase

Get an AF Database

The Get-AFDatabase cmdlet will retrieve an AF Database from the specified AF Server.

Public classCode example
GetAFElement

Get an AF Element

The Get-AFElement cmdlet gets an AF Element. The element can be retrieved by name, ID, index, or by parent element.

Note that this cmdlet will only search the top level elements of the specified AF Database. Lower level elements can be accessed by then getting the child elements of the top level elements.

Public classCode example
GetAFElementTemplate

Get an AF Element Template

The Get-AFElementTemplate cmdlet gets an existing AF Element Template.

Public classCode example
GetAFEventFrame

Get an AF Event Frame(s)

The Get-AFEventFrame cmdlet gets a child AF Event Frame(s) on a specified AF Event Frame, or gets an AF Event Frame by GUID on an AF Server.

Public classCode example
GetAFEventFrameParent

Get the parent AF Event Frame of another AF Event Frame

The Get-AFEventFrameParent cmdlet gets the parent AF Event Frame for a specified AF Event Frame

Public classCode example
GetAFPort

Get an AF Port

The Get-AFPort cmdlet gets an AF Port from an AF Element or AF Element Template

Public classCode example
GetAFSecurity

Get AF Security entry for an AF object

The Get-AFSecurity cmdlet gets an AF Security entry for an AF object.

Public classCode example
GetAFSecurityIdentity

Gets an AF Security Identity from an AF Server

The Get-AFSecurityIdentity cmdlet gets an AF Security Identity on an AF Server.

Public classCode example
GetAFSecurityMapping

Gets an AF Security Mapping from an AF Server

The Get-AFSecurityMapping cmdlet gets an AF Security Mapping from an AF Server.

Public classCode example
GetAFServer

Get an AF Server connection configuration from local AF Server list

The Get-AFServer cmdlet will retrieve an AF Server/AF Servers from the local AF Server list.

Public classCode example
GetAFUnitOfMeasure

Get an AF Unit of Measure

The Get-AFUnitOfMeasure cmdlet gets an existing AF Unit of Measure from an AF Server.

Public classCode example
GetAFUnitOfMeasureClass

Get an AF Unit of Measure Class

The Get-AFUnitOfMeasureClass cmdlet gets an existing AF Unit of Measure Class from an AF Server.

Public classCode example
GetDiagnostics

Gets diagnostic information from the system.

This method returns information on things like the size of the AF SQL database files and the number of changed item records on the system. The information can be used to assess system health. Returns a dictionary of the diagnostic items which is keyed by diagnostic name. The DiagnosticNames class contains a list of the known names that can be used as keys for the returned dictionary. Additional items may be present in the dictionary.

Public classCode example
GetPIAFLinkBatchDatabaseAnalysisStatus

Get the Batch Database Analysis status from the AF Link Subsystem on a PI Data Archive

The Get-PIAFLinkBatchDatabaseAnalysisStatus cmdlet gets the analysis status for the PI Batch Database from the AF Link Subsystem. This information is used to address potential issues when preparing to perform a migration from PI Batch Database to Event Frames.

The connection parameter specifies the connection to a PI Data Archive to use.

Public classCode example
GetPIAFLinkBatchDatabaseStatistics

Get the Batch Database statistics from the AF Link Subsystem on a PI Data Archive

The Get-PIAFLinkBatchDatabaseStatistics cmdlet gets the Batch Database statistics from the AF Link Subsystem. This information is used when performing a migration from Batch Database to Event Frames.

The connection parameter specifies the connection to a PI Data Archive to use.

Public classCode example
GetPIAFLinkBatchDatabaseUnmappedIdentities

Get a list of unmapped PI Identities for the Batch Database from the AF Link Subsystem.

The Get-PIAFLinkBatchDatabaseUnmappedIdentities cmdlet get the unmapped PI Identities from the Batch Database that are required to have a mapping before a migration from Batch Database to Event Frames can be performed.

The connection parameter specifies the connection to a PI Data Archive to use.

Public classCode example
GetPIAFLinkModuleDatabaseSecurityErrors

Get a list of PI AF Link security errors on a PI Data Archive

The Get-PIAFLinkModuleDatabaseSecurityErrors cmdlet analyzes the PI Module Database for security errors that may prevent the PI Module Database from synchronizing to an AF Database. These errors should be resolved before attempting to sync Module Database and AF Datbase.

The connection parameter specifies the connection to a PI Data Archive to use.

This cmdlet returns a collection of PI Modules which each contain a collection of errors encountered.

Public classCode example
GetPIAFLinkModuleDatabaseStatistics

Get the PI Module Database statistics from the PI AF Link or PI Base Subsystem on a PI Data Archive

The Get-PIAFLinkModuleDatabaseStatistics cmdlet gets statistics for the PI Module Database from the PI AF Link Subsystem.

The connection parameter specifies the connection to a PI Data Archive to use.

This cmdlet returns an object that contains both the statistics and configuration information stored by PI Base Subsystem as well as PI AF Link subsystem, and can be accessed via their members. Run "Get-Help Get-PIAFLinkModuleDatabaseStatistics -Examples" for more information.

Public classCode example
GetPIArchiveFileInfo

Gets detailed PI Archive file information from a PI Data Archive

The Get-PIArchiveFileInfo cmdlet gets detailed PI Archive file information for a registered archive on a PI Data Archive.

Get-PIArchiveFileInfo can be used to get a specific archive file by filename, by archive ID, all archives in a specified archive set, or all registered archives.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIArchiveInfo

Gets general PI Archive information and status

The Get-PIArchiveInfo cmdlet gets PI Archive information and status, including all registered archives and archive shift information.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIArchiveReprocessHistory

Get the history of archives reprocessed via online archive reprocessing

The Get-PIArchiveReprocessHistory cmdlet gets the history of finished online archive reprocess requests that were made. The history returned can be filtered by count, start/end time, or name of archive file.

Note that this cmdlet will only return reprocess history for archives reprocessed via online archive reprocessing. Reprocess history for archives reprocessed via the offline piarchss.exe tool is not available.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIArchiveReprocessHistoryCount

Get the total number of archives reprocessed via online archive reprocessing

The Get-PIArchiveReprocessHistoryCount cmdlet gets the total number online archive reprocess requests that were made.

Note that this cmdlet will only return total number of online reprocess requests via online archive reprocessing. Reprocess history for count archives reprocessed via the offline piarchss.exe tool is not available.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIArchiveReprocessQueue

Get the current PI Reprocess Archive queue

The Get-PIArchiveReprocessQueue cmdlet returns the queued reprocess tasks waiting to be executed on the PI Data Archive server.

Note that this cmdlet will only return total number of online reprocess requests queued via online archive reprocessing. If there are no queued reprocess requests, this cmdlet will return nothing.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIArchiveSetSettings

Gets the archive set configuration from a PI Data Archive

The Get-PIArchiveSetSettings cmdlet gets detailed PI Archive set configuration information on a PI Data Archive.

Get-PIArchiveSetSettings can be used to get configuration settings for a specific archive set by name, or default set if name omitted.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIArchiveStatistics

Get archive statistics for a PI Data Archive

The Get-PIArchiveStatistics cmdlet gets the archive statistics for a PI Data Archive server

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIBackupIdentifyReport

Get the PI Backup Identify report

The Get-PIBackupIdentifyReport cmdlet gets the backup identify report for a PI Data Archive. This report includes files and components identified for backup.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIBackupReport

Get a PI Backup Report

The Get-PIBackupReport cmdlet gets a backup report for a PI Data Archive.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIBackupState

Get the PI Backup State of a PI Data Archive

The Get-PIBackupState cmdlet gets the PI Backup State for a PI Data Archive.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIBackupSummary

Get a PI Backup Report Summary

The Get-PIBackupSummary cmdlet gets a backup report summary for a PI Data Archive.

The connection parameter specifies which connection to a PI Data Archive to use.

NOTE: To get the summary of the most recent backup, see Example 2 for Get-PIBackupReport using "Get-Help Get-PIBackupReport -Examples"

Public classCode example
GetPIBufferConfiguration

Get buffer configuration for a physical buffered server

The Get-PIBufferConfiguration cmdlet gets the buffer configuration for a physical buffered server. By default, this cmdlet only retrieves the Path and Queue Size configuration parameters. Use the -Details parameter to return all configuration parameters.

This cmdlet can be run against remote PI Buffer Subsystems by leveraging PowerShell Remoting.

Public classCode example
GetPIBufferConfigurationParameter

Get PI Buffer Configuration Parameters

The Get-PIBufferConfigurationParameter cmdlet gets configuration parameters for the PI Buffer Subsystem. If no -Name is specified, all parameters are returned.

This cmdlet can be run against remote PI Buffer Subsystems by leveraging PowerShell Remoting.

Public classCode example
GetPIBufferedServer

Get a PI Buffered Server

The Get-PIBufferedServer cmdlet gets buffered server information for a specified logical server or specified physical server that is part of a logical server.

This cmdlet can be run against remote PI Buffer Subsystems by leveraging PowerShell Remoting.

Public classCode example
GetPIBufferHealth

Get PI Buffer Subsystem health information

The Get-PIBufferHealth cmdlet gets the buffering health information object for the specified physical server which is part of the specified logical server. This cmdlet can only be directly run against the local instance of PI Buffer Subsystem.

This cmdlet can be run against remote PI Buffer Subsystems by leveraging PowerShell Remoting.

Public classCode example
GetPIBufferLastConfigurationLoadTime

Get the last buffer configuration load time

The Get-PIBufferLastConfigurationLoadTime cmdlet gets the last time the local instance of PI Buffer Subsystem at which the buffer configuration was loaded. This cmdlet can only be directly run against the local instance of PI Buffer Subsystem.

This cmdlet can be run against remote PI Buffer Subsystems by leveraging PowerShell Remoting.

Public classCode example
GetPIBufferPointError

Get point errors for a PI Buffer Subsystem

The Get-PIBufferPointError cmdlet gets all points currently in error since PI Buffer Subsystem started. This cmdlet can only be directly run against the local instance of PI Buffer Subsystem.

This cmdlet can be run against remote PI Buffer Subsystems by leveraging PowerShell Remoting.

Public classCode example
GetPIBufferSession

Get a PI Buffer Session

The Get-PIBufferSession cmdlet gets a PI Buffer Subsystem buffer session on the local machine. This cmdlet can only be run directly against the local instance of PI Buffer Subsystem

This cmdlet can be run against remote PI Buffer Subsystems by leveraging PowerShell Remoting.

Public classCode example
GetPIBufferVersion

Get the PI Buffer Subsystem version

The Get-PIBufferVersion cmdlet gets the version of the PI Buffer Subsystem running on the local machine. This cmdlet can only be directly run on the local instance of PI Buffer Subsystem.

This cmdlet can be run against remote PI Buffer Susbsystem instances by leveraging PowerShell Remoting.

Public classCode example
GetPICollective

Get PI Data Archive Collective information from a PI Data Archive

The Get-PICollective cmdlet gets PI Data Archive Collective information from a specified PI Data Archive.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIConnectionStatistics

Get PI connection statistics for a PI Data Archive

The Get-PIConnectionStatistics cmdlet gets detailed connection information for a PI Data Archive server specified by the -Connection parameter. If no -Name or -ID is specified, all connection information is returned.

Public classCode example
GetPIDataArchiveConnectionConfiguration

Get connection configuration information for a PI Data Archive from the Known Servers Table (KST)

The Get-PIDataArchiveConnectionConfiguration cmdlet gets entries from the Known Servers Table (KST) which contain locally saved connection configuration information for connecting to PI Data Archive servers.

Public classCode example
GetPIDataArchiveDetails

Get the detailed information for a connected PI Data Archive

The Get-PIDataArchiveDetails cmdlet will grab detailed information for a connected PI Data Archive.

Public classCode example
GetPIDataArchiveIncident Obsolete.

Get PI Data Archive Incidents

The Get-PIDataArchiveIncident cmdlet gets PI Data Archive Incidents from a PI Data Archive.

The connection parameter specifies which connection to a PI Data Archive to use.

WARNING: This feature is deprecated and will throw an exception against PI Data Archive 2024 and later versions.

Public classCode example
GetPIDataArchiveIncidentUpdate Obsolete.

Get PI Data Archive Incidents that were updated since a specified time

The Get-PIDataArchiveIncidentUpdate cmdlet will retrieve PI Data Archive Incidents on a PI Data Archive that have been updated since a specified time.

The connection parameter specifies which connection to a PI Data Archive to use.

WARNING: This feature is deprecated and will throw an exception against PI Data Archive 2024 and later versions.

Public classCode example
GetPIDatabaseSecurity

Get PI Database Security entries for the PI Data Archive

The Get-PIDatabaseSecurity cmdlet gets the database security settings for a PI Data Archive. If no name is specified, all entries are returned.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIDigitalStateSet

Get a PI Digital State Set

The Get-PIDigitalStateSet cmdlet gets a PI Digital State Set from a PI Data Archive.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIExpressionSummary

Get summary calculation for the specified expression

The Get-PIExpressionSummary cmdlet gets a summary calculation based on the passed in expression. The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIFirewall

Get an entry in the PI Firewall Table

The Get-PIFirewall cmdlet gets existing entries in the PI Firewall table. If no name is specified, all PI Firewall entries are returned.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIGroup

Gets an existing PI Group on a PI Data Archive

The Get-PIGroup cmdlet gets an existing PI Group on a PI Data Archive

The connection parameter specifies which connection to a PI Data Archive to use.

NOTE: PI Users and PI Groups have been replaced by PI Identities. PI Identities with PI Mappings (WIS) and PI Trusts should be used to configure PI Data Archive security. See KB00833 for more information.

Public classCode example
GetPIIdentity

Get a PI Security Identity

The Get-PIIdentity cmdlet gets PI Security Identity

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPILicenseAllowedApplication

Get a list of explicitly allowed applications for connecting to the specified PI Data Archive

The Get-PILicenseAllowedApplication cmdlet retrieves a list of applications that have been explicitly allowed to connect to the PI Data Archive.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPILicenseEntry

Get a PI License Entry for an application on a PI Data Archive

The Get-PILicenseEntry cmdlet retrieves a license entry for an application on the specified PI Data Archive

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPILicenseReport

Get a PI License Report for a PI Data Archive

The Get-PILicenseReport cmdlet retrieves the license report for a specified PI Data Archive

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPILicenseUser

Get a PI License User on a PI Data Archive

The Get-PILicenseUser cmdlet retrieves a license user on the specified PI Data Archive

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIMapping

Get a PI Security Mapping

The Get-PIMapping cmdlet gets a PI Security Mapping

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIMessage

Get PI Messages from a PI Data Archive

The Get-PIMessage cmdlet gets message logs from a specified PI Data Archive.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIPoint

Gets PI Point(s) from a PI Data Archive

The Get-PIPoint cmdlet will search and get PI Points from the specified PI Data Archive. If getting PI Points by name, wildcards are supported. If getting PI Points using a WhereClause, wildcards are supported on an attribute by attribute basis.

The Connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIPointClass

Get a PI Point Class from a PI Data Archive

The Get-PIPointClass cmdlet gets a PI Point Class from a PI Data Archive. The point class object contains the default values for each PIPoint attribute for the given PI Point Class.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIPointSource

Get a PI PointSource

The Get-PIPointSource cmdlet gets a PI Point Source from a PI Data Archive. This cmdlet returns the pointsource, pointsource description, as well as the number of points associated with that point source.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPISnapshotStatistics

Get snapshot statistics for a PI Data Archive

The Get-PISnapshotStatistics cmdlet gets the snapshot statistics for a PI Data Archive server

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIStatus

Get information about a PI Status code

The Get-PIStatus cmdlet gets information regarding a PI Status code.

Note that all PI-specific error codes are negative (preceded by a "-"). Windows error codes may also appear in error codes and messages, however, these codes are positive. The Get-PIStatus cmdlet can be used to lookup both PI-specific or Windows Error codes.

Public classCode example
GetPIThreadInformation

Get Thread Information for a PI Subsystem on a PI Data Archive

The Get-PIThreadInformation cmdlet gets thread information for the specified subsystem from the specified PI Data Archive.

The connection parameter specifies the connection to a PI Data Archive to use.

This cmdlet returns the same thread information output by "piartool.exe -thread <subsystem> -info"

Public classCode example
GetPITrust

Get a PI Security Trust

The Get-PITrust cmdlet gets a PI Trust

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPITuningParameter

Get PI Data Archive tuning parameters for a PI Data Archive

The Get-PITuningParameter cmdlet gets tuning parameters from a specified PI Data Archive.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIUpdateManagerConsumerStatistics

Get PI Update Manager consumer statistics for a PI Data Archive

The Get-PIUpdateManagerConsumerStatistics cmdlet gets the consumer statistics for a PI Data Archive server

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIUpdateManagerProducerStatistics

Get PI Update Manager producer statistics for a PI Data Archive

The Get-PIUpdateManagerProducerStatistics cmdlet gets the producer statistics for a PI Data Archive server

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIUpdateManagerSignupStatistics

Get PI Update Manager signup statistics for a PI Data Archive

The Get-PIUpdateManagerSignupStatistics cmdlet gets the signup statistics for a PI Data Archive server

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIUpdateManagerStatistics

Get Global PI Update Manager statistics for a PI Data Archive

The Get-PIUpdateManagerStatistics cmdlet gets the global update manager statistics for a PI Data Archive server

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
GetPIUser

Gets an existing PI User on a PI Data Archive

The Get-PIUser cmdlet gets an existing PI User on a PI Data Archive

The connection parameter specifies which connection to a PI Data Archive to use.

NOTE: PI Users and PI Groups have been replaced by PI Identities. PI Identities with PI Mappings (WIS) and PI Trusts should be used to configure PI Data Archive security. See KB00833 for more information.

Public classCode example
GetPIValue

Get a PI Value at a specified time or for a specified time range.

The Get-PIValue cmdlet will get a value or values from the specified PI Data Archive. The time can be set as a specific time, a range, or a set number of values starting at a certain time in either direction (forward in time or backwards in time). Run "Get-Help Get-PIValue -Examples" to see usage.

The PI Point to get a value for can be specified by PointName, PointID, or by the result of the Get-PIPoint cmdlet. Run "Get-Help Get-PIPoint" for more information.

The Get-PIValue cmdlet can retrieve Interpolated Events by using the -InterpolatedEvents flag. Run "Get-Help Get-PIValue -Examples" to see usage.

Note that all timestamps returned via this cmdlet are in UTC time, and not automatically converted to the client machine's local time zone.

Public classCode example
GetPlugInVerifyLevel

Gets the current level of verification required for an AFPlugin to be loaded from the server.

This method gets the current level of verification required for an AFPlugIn to be loaded from the server. This method does not require the Admin right to execute.

Public classCode example
GetTrustedProviders

Returns the list of trusted providers in the PISystem.

This method is used to return the the list of trusted providers in the PISystem. This list is used when validating the AFPlugin being loaded from the server when the plugin verify level is AFVerifySignatureLevel.RequireSignedTrustedProvider.

Public classCode example
ImportAFXml

Import XML representation of AF Objects from file or System.IO.Stream

The Import-AFXml cmdlet imports the XML representation of an AF object or AF objects from a file or System.IO.Stream.

If the objects are to be imported to a single AF Object, use the -AFObject to specify the target. If AF Objects are to be imported to multiple AF Collections, use the corresponding plural switch.

Public classCode example
LockAFEventFrame

Lock an AF Event Frame

The Lock-AFEventFrame cmdlet will lock an existing AF Event Frame. Locking an AF Event Frame marks it as read-only and changes can no longer be made to it.

Public classCode example
NewAFCheckIn

Check in changes to an AF Server

The New-AFCheckin cmdlet checks in changes to the specified AF objects. You can also check in all changes to and AF Server or AF Database. AF Server only includes: AFContact, AFNotificationContactTemplate, and UOMDatabase objects. All other objects must be retrieved via the AF Database.

Public classCode example
NewAFCheckOut

Check out AF Objects on an AF Server

The New-AFCheckOut cmdlet explicitly checks out the specified AF objects on an AF Server.

Public classCode example
NewPIArchive

Creates a new PI Archive

The New-PIArchive cmdlet creates a new PI Archive file and attempts to register it with a PI Data Archive server.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
NewPIBackupRestoreFile

Create a new archive manager data file

The New-PIBackupRestoreFile cmdlet creates a new backup restore file for a PI Data Archive. This is the PI Archive Manager Data file (piarstat.dat) and can be used for updating archive registry on secondary nodes when creating or reinitializing a collective.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
NewPICollective

Create a new PI Data Archive Collective information from a PI Data Archive

The New-PICollective cmdlet creates a PI DA Collective with the PI Data Archive specified by the -Connection parameter as the primary and the machines specified by -Secondaries as the secondary members. If secondary members are specified, note that this cmdlet does not initialize the secondary members automatically. Once the collective is formed, a backup of the primary needs to be taken and restored to the secondary members to initialize them manually.

The connection parameter specifies which connection to a PI Data Archive to use as the primary member.

Public class
OSICmdletBase
Public class
OSICmdletBaseWithConnection
Public class
OSIsoftSnapIn
Public class
Parameter
Public class
ParametersByVersion
Public class
PIPoint
Public classCode example
RebuildPathCache

Rebuilds the path cache to each element in the PI AF SQL Server database.

This method will rebuild the path cache to each element in the PI AF SQL Server database. The path cache can become outdated after significant data insertions, edits, and/or deletions. Rebuilding the path cache can improve the PI AF server’s performance.

Public classCode example
RegisterPIArchive

Registers a PI Archive file with a PI Data Archive server.

The Register-PIArchive cmdlet registers a PI Archive file with a PI Data Archive server.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
RemoveAFAttribute

Remove an AF Attribute

The Remove-AFAttribute cmdlet removes an existing AF Attribute. The attribute to remove can be an attribute on an AF Element, or an AF Sub Attribute

Public classCode example
RemoveAFAttributeTemplate

Remove an AF Attribute Template

The Remove-AFAttributeTemplate cmdlet deletes an existing AF Attribute Template. The AF Attribute Template can be on an existing Element Template, or a Sub Attribute Template.

Public classCode example
RemoveAFCategory

Remove an AF Category

The Remove-AFCategory cmdlet deletes an existing AF Category. The category can be an attribute, element, analysis, table or reference type category.

Public classCode example
RemoveAFDatabase

Removes an AF Database

The Remove-AFDatabase cmdlet will remove an AF Database on a specified AF Server.

Public classCode example
RemoveAFElement

Remove an AF Element

The Remove-AFElement cmdlet deletes an existing AF Element.

Public classCode example
RemoveAFElementTempalte

Remove an AF Element Template

The Remove-AFElementTemplate cmdlet deletes an existing AF Element Template.

Public classCode example
RemoveAFEventFrame

Remove an AF Event Frame(s)

The Remove-AFEventFrame cmdlet deletes an existing AF Event Frame.

Public classCode example
RemoveAFPort

Remove an AF Port

The Remove-AFPort cmdlet removes an existing AF Port from an AF Element or AF Element Template

Public classCode example
RemoveAFSecurity

Remove an AF Security Identity from an AF object

The Remove-AFSecurity cmdlet removes an AF Security Identity from an AF object. The Security Identity can be removed from a single AF Object, or all child objects as well.

Public classCode example
RemoveAFSecurityIdentity

Removes an existing AF Security Identity from an AF Server

The Remove-AFSecurityIdentity cmdlet removes an existing AF Security Identity from an AF Server. This cmdlet returns $true if the AF Identity was successfully removed and $false if there was a failure in removing the AF Identity.

Public classCode example
RemoveAFSecurityMapping

Remove an AF Security Mapping from an AF Server

The Remove-AFSecurityMapping cmdlet removes an existing AF Security Mapping from an AF Server.

Public classCode example
RemoveAFServer

Remove an AF Server connection configuration from local AF Server list

The Remove-AFServer cmdlet will remove an AF Server/AF Servers from the local AF Server list.

Public classCode example
RemoveAFUnitOfMeasure

Remove an AF Unit of Measure

The Remove-AFUnitOfMeasure cmdlet removes an existing AF Unit of Measure from an AF Server. The AF Unit of Measure can be removed by name or by passing an AFUnitOfMeasure object.

Public classCode example
RemoveAFUnitOfMeasureClass

Remove an AF Unit of Measure Class

The Remove-AFUnitOfMeasureClass cmdlet removes an existing AF Unit of Measure Class from an AF Server. The AF Unit of Measure Class can be removed by name or by passing an AFUnitOfMeasureClass object.

Public classCode example
RemovePIBufferedServer

Remove a PI Buffered Server

The Remove-PIBufferedServer cmdlet removes the specified logical buffered server. In order to use this cmdlet, the running user must be a member of either "PI Buffering Administrators" or "Administrators" local groups. This cmdlet can only be directly run against the local instance of PI Buffer Subsystem. The user will be prompted for confirmation before removing the buffered server, this can be overridden using the -Force parameter.

This cmdlet can be run against remote PI Buffer Subsystems by leveraging PowerShell Remoting.

Public classCode example
RemovePICollective

Remove all members from a PI Data Archive Collective

The Remove-PICollective cmdlet removes all PI Data Archive members from an existing PI Data Archive Collective, including the primary member.

The PICollective parameter specifies which PI Data Archive Collective to remove.

Public classCode example
RemovePICollectiveMember

Remove a PI Data Archive from an existing PI Data Archive Collective

The Remove-PICollectiveMember cmdlet removes the specified PI Data Archive from the PI Data Archive Collective.

The PICollective parameter specifies which PI Collective from which to remove the specified PI Data Archive.

Public classCode example
RemovePIDataArchiveConnectionConfiguration

Removes a connection configuration entry in the local Known Servers Table (KST)

The Remove-PIDataArchiveConnectionConfiguration cmdlet removes a connection configuration entry from the local Known Servers Table (KST). You cannot remove the default PI Data Archive from the KST with this cmdlet. Run "Get-Help Set-PIDataArchiveConnectionConfiguration -Examples" to see an example of setting another entry as the default PI Data Archive.

Public classCode example
RemovePIDigitalStateFromStateSet

Remove a PI Digital State from a PI Digital State Set

The Remove-PIDigitalStateFromStateSet cmdlet removes a PI Digital State from a PI Digital State Set on a PI Data Archive.

The connection parameter specifies which connection to a PI Data Archive to use.

It is important to note that when removing a PI Digital State from a PI Digital State Set, the indices of the following states will be decremented by 1. For example: a Digital State Set "BoilerState" contains the following states

0="ON" : 1="OFF" : 2="STARTUP" : 3="COOLDOWN"

If the "OFF" state is removed, then the integral representations of "STARTUP" and "COOLDOWN" states will be decremented to 1 and 2, respectively. For example:

0="ON" : 1="STARTUP" : 2="COOLDOWN"

Public classCode example
RemovePIDigitalStateSet

Remove a PI Digital State Set from a PI Data Archive

The Remove-PIDigitalStateSet cmdlet removes a PI Digital State Set from a PI Data Archive.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
RemovePIFirewall

Add an entry in the PI Firewall Table

The Add-PIFirewall cmdlet adds an entry in the PI Firewall table

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
RemovePIGroup

Removes an existing PI Group on a PI Data Archive

The Remove-PIGroup cmdlet removes an existing PI Group from a PI Data Archive

The connection parameter specifies which connection to a PI Data Archive to use.

NOTE: PI Users and PI Groups have been replaced by PI Identities. PI Identities with PI Mappings (WIS) and PI Trusts should be used to configure PI Data Archive security. See KB00833 for more information.

Public classCode example
RemovePIIdentity

Remove a PI Security Identity

The Remove-PIIdentity cmdlet removes an existing PI Security Identity

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
RemovePIMapping

Remove a PI Security Mapping

The Remove-PIMapping cmdlet deletes an existing PI Security Mapping

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
RemovePIPoint

Remove a PI Point from a PI Data Archive

The Remove-PIPoint cmdlet will delete one or more existing PI Points on a PI Data Archive.

The Connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
RemovePITrust

Remove a PI Security Trust

The Remove-PITrust cmdlet removes a PI Trust

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
RemovePIUser

Removes an existing PI User from a PI Data Archive

The Remove-PIUser cmdlet removes an existing PI User on a PI Data Archive

The connection parameter specifies which connection to a PI Data Archive to use.

NOTE: PI Users and PI Groups have been replaced by PI Identities. PI Identities with PI Mappings (WIS) and PI Trusts should be used to configure PI Data Archive security. See KB00833 for more information.

Public classCode example
RemovePIUserFromPIGroup

Remove a PI User from PI Groups on a PI Data Archive

The Remove-PIUserFromPIGroup cmdlet adds an existing PI User to the specified PI Groups on a PI Data Archive

The connection parameter specifies which connection to a PI Data Archive to use.

NOTE: PI Users and PI Groups have been replaced by PI Identities. PI Identities with PI Mappings (WIS) and PI Trusts should be used to configure PI Data Archive security. See KB00833 for more information.

Public classCode example
RemovePIValue

Remove a PI Value or Values from a PI Data Archive.

The Remove-PIValue cmdlet will remove one or more PI Values to the specified PI Data Archive. If multiple values are being removed, the number of values in the arrays that are passed in must be either 1 or the same number as each other.

Public classCode example
RemoveTrustedProvider

Removes the specified trusted provider subject name from the list of trusted providers in the PISystem.

This method is used to remove the specified trusted provider subject name from the list of trusted providers in the PISystem. This list is used when validating the AFPlugin being loaded from the server when the plugin verify level is AFVerifySignatureLevel.RequireSignedTrustedProvider.

Public classCode example
RenamePIDigitalStateSet

Rename a PI Digital State Set on a PI Data Archive

The Rename-PIDigitalStateSet cmdlet renames a PI Digital State Set on a PI Data Archive.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
RenamePIGroup

Renames an existing PI Group on a PI Data Archive

The Rename-PIGroup cmdlet renames an existing PI Group from a PI Data Archive. To edit a PI Group description, use Set-PIGroup.

The connection parameter specifies which connection to a PI Data Archive to use.

NOTE: PI Users and PI Groups have been replaced by PI Identities. PI Identities with PI Mappings (WIS) and PI Trusts should be used to configure PI Data Archive security. See KB00833 for more information.

Public classCode example
RenamePIIdentity

Rename a PI Security Identity

The Rename-PIIdentity cmdlet renames an existing PI Security Identity

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
RenamePIMapping

Rename a PI Security Mapping

The Rename-PIMapping cmdlet renames an existing PI Security Mapping. Note that the mapping "Name" displayed in PI SMT is actually the PrincipalName property of the PI Mapping object. This cmdlet edits the Name property of the PI Mapping. So this name change will not affect what is displayed in PI SMT.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
RenamePIPoint

Rename a PI Point on a PI Data Archive

The Rename-PIPoint cmdlet will rename an existing PI Point on a PI Data Archive.

The Connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
RenamePITrust

Rename a PI Security Trust

The Rename-PITrust cmdlet renames an existing PI Trust

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
RenamePIUser

Rename an existing PI User on a PI Data Archive

The Rename-PIUser cmdlet renames an existing PI User on a PI Data Archive

The connection parameter specifies which connection to a PI Data Archive to use.

NOTE: PI Users and PI Groups have been replaced by PI Identities. PI Identities with PI Mappings (WIS) and PI Trusts should be used to configure PI Data Archive security. See KB00833 for more information.

Public classCode example
ResetAFServerIndex

Rebuilds every index in the PI AF SQL Server database.

This method will completely rebuild every index in the PI AF SQL database. This substantially improves the PI AF server's performance after a massive data insertion.

Public classCode example
ResetPIAFLinkModuleDatabaseFromAF

Reset the PI Module Database based on elements in the synchronized AF Element

The Reset-PIAFLinkModuleDatabaseFromAF cmdlet will perform a "Reset MDB". This means the current contents of the PI Module Database will be deleted (exluding %OSI, %OSI_MCN and %OSI_ManagedPI) and recreated using the contents of the Root AF Element of the associated AF Database. The associated AF Server, AF Database, and AF Root Element can be found in the Module Database at: %OSI\MDB-AFMigrationData under the properties PISystem, AFDB, and RootElement, respectively.

The connection parameter specifies the connection to a PI Data Archive to use.

WARNING: This cmdlet should only be used if the potential ramifications are understood. Contact OSIsoft Technical Support if there are any questions about whether a "Reset MDB" is appropriate for a given situation.

Public classCode example
ResetPITuningParameter

Reset a PI Data Archive tuning parameter on a PI Data Archive

The Reset-PITuningParameter cmdlet resets a PI Data Archive Tuning Parameter back to its default value by clearing the current value.

The connection parameter specifies which connection to a PI Data Archive to use.

Public class
SerializableDictionaryTKey, TValue
Public classCode example
SetAFAttribute

Sets an AF Attribute

The Set-AFAttribute cmdlet edits an existing AF Attribute.

Public classCode example
SetAFAttributeTemplate

Sets an AF Attribute Template

The Set-AFAttributeTemplate cmdlet edits an existing AF Attribute Template. The AF Attribute Template can be on an existing Element Template, or a Sub Attribute Template.

Public classCode example
SetAFCategory

Set an AF Category

The Set-AFCategory cmdlet edits an existing AF Category. The category can be an attribute, element, analysis, table or reference type category.

Public classCode example
SetAFDatabase

Sets an AF Database

The Set-AFDatabase cmdlet will set a preexisting AF Database on an AF Server.

Public classCode example
SetAFElement

Set an AF Element

The Set-AFElement cmdlet edits an existing AF Element.

Public classCode example
SetAFElementTemplate

Set an AF Element Template

The Set-AFElementTemplate cmdlet edits an existing AF Element Template.

Public classCode example
SetAFEventFrame

Set an AF Event Frame

The Set-AFEventFrame cmdlet edits an existing AF Event Frame

Public classCode example
SetAFPort

Set an AF Port

The Set-AFPort cmdlet edits an existing AF Port on an AF Element or AF Element Template

Public classCode example
SetAFSecurityIdentity

Sets an AF Security Identity on an AF Server

The Set-AFSecurityIdentity cmdlet edits an existing AF Security Identity on an AF Server. This cmdlet can be used to rename, or add a description to an existing AF Security Identity. To enable/disable an identity, see: Enable-AFSecurityIdentity and Disable-AFSecurityIdentity.

Public classCode example
SetAFSecurityMapping

Set an AF Security Mapping on an AF Server

The Set-AFSecurityMapping cmdlet edits an existing AF Security Mapping on an AF Server. This cmdlet can be used to rename, change the description, or map the AF Security Mapping to a new AF Identity.

Public classCode example
SetAFServer

Sets an AF Server connection configuration in the local AF Server list

The Set-AFServer cmdlet will set an AF Server in the local AF Server list.

Public classCode example
SetAFUnitOfMeasure

Set an AF Unit of Measure

The Set-AFUnitOfMeasure cmdlet edits an existing AF Unit of Measure on an AF Server.

Public classCode example
SetAFUnitOfMeasureClass

Set an AF Unit of Measure Class

The Set-AFUnitOfMeasureClass cmdlet will rename or add a description to an existing AF Unit of Measure Class on an AF Server.

Public classCode example
SetFileOptions

Sets the file options used to validate an AFFile stored in the PISystem.

This method will change the FileAllowedExtensions and FileMaxLength settings that are used to validate an AFFile stored in the PISystem. To add or remove file extensions from the current list, first the current PISystem.FileAllowedExtensions, list and make changes to that list, and the pass the updated list to this method.

Public classCode example
SetID

Changes the ID for the PISystem to the specified Guid.

This method will change the ID for the PISystem to the specified Guid. If the new ID is not specified, then a new Guid will be allocated and returned from the method call. For an AFCollective, this method will set the ID of the currently connected AFCollectiveMember.

Public classCode example
SetPIAFLinkTracing

Enable or disable PI AF Link tracing on a PI Data Archive

The Set-PIAFLinkTrace cmdlet will enable or disable PI AF Link tracing on a specified PI Data Archive. When enabling the trace, the trace timeout and separate logfile to write the results can also be specified.

The connection parameter specifies the connection to a PI Data Archive to use.

Public classCode example
SetPIArchiveSetSettings

Sets the archive set configuration from a PI Data Archive

The Set-PIArchiveSetSettings cmdlet sets the PI Archive configuration settings for a specific archive set on a PI Data Archive.

Set-PIArchiveSetSettings can be used to set specific configuration settings for an archive set by name, or through a PIArchiveSetSettings object.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
SetPIBufferingControlState

Set the PI Buffer control state

The Set-PIBufferingControlState cmdlet sets the buffering state on the local instance of PI Buffer Subsystem for a single buffered server. In order to use this cmdlet, the running user must be a member of either "PI Buffering Administrators" or "Administrators" local groups. This cmdlet can only be directly run against the local instance of PI Buffer Subsystem. The user will be prompted for confirmation before removing the buffered server, this can be overridden using the -Force parameter.

This cmdlet is analogous to pibufss.exe -bc ... options

This cmdlet can be run against remote PI Buffer Subsystems by leveraging PowerShell Remoting.

Public classCode example
SetPICollective

Edit name, description, or ID of a PI Data Archive Collective

The Set-PICollective cmdlet can be used to set a new name, description or ID on an existing PI Data Archive Collective.

The PICollective parameter specifies which PI Data Archive Collective to edit.

Public classCode example
SetPICollectiveMember

Edit the configuration of a PI Data Archive Collective Member

The Set-PICollectiveMember cmdlet can be used to edit the configuration of an existing PI Data Archive Collective member.

Public classCode example
SetPIDataArchiveConnectionConfiguration

Set connection configuration information for a PI Data Archive in the local Known Servers Table (KST)

The Set-PIDataArchiveConnectionConfiguration cmdlet edits entries in the local Known Servers Table (KST) which contain locally saved connection configuration information for connecting to specific PI Data Archive servers. This information can be set for standalone PI Data Archive servers as well as PI HA Collectives.

Public classCode example
SetPIDatabaseSecurity

Set a PI Database Security entry on the PI Data Archive

The Set-PIDatabaseSecurity cmdlet sets the database security settings for a PI Data Archive.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
SetPIDigitalStateSet

Set a PI Digital State Set

The Set-PIDigitalStateSet cmdlet sets an existing PI Digital State Set on a PI Data Archive.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
SetPIGroup

Edits an existing PI Group on a PI Data Archive

The Set-PIGroup cmdlet will edit the description of an existing PI Group on a PI Data Archive. To rename a PI Group, use Rename-PIGroup.

The connection parameter specifies which connection to a PI Data Archive to use.

NOTE: PI Users and PI Groups have been replaced by PI Identities. PI Identities with PI Mappings (WIS) and PI Trusts should be used to configure PI Data Archive security. See KB00833 for more information.

Public classCode example
SetPIIdentity

Set a PI Security Identity

The Set-PIIdentity cmdlet edits an existing PI Security Identity. To rename a PI Identity, use the Rename-PIIdentity cmdlet.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
SetPIMapping

Set a PI Security Mapping

The Set-PIMapping cmdlet edits and existing PI Security Mapping

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
SetPIPoint

Set the attributes of a PI Point

The Set-PIPoint cmdlet edits point attribute values for a pre-existing PI Point. The attributes to edit are passed in as a hashtable.

The Connection parameter specifies which connection to a PI Data Archive to use.

NOTE: To rename a PI Point, use the Rename-PIPoint cmdlet.

Public classCode example
SetPIPointSource

Set a PI PointSource

The Set-PIPointSource cmdlet edits an existing PI Point Source from a PI Data Archive. This cmdlet can add/edit the description of a Point Source.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
SetPITrust

Set a PI Security Trust

The Add-PITrust cmdlet edits an existing PI Trust

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
SetPITuningParameter

Set a PI Data Archive tuning parameter value for a PI Data Archive

The Set-PITuningParameter cmdlet sets a tuning parameter value on a specified PI Data Archive. Note that this cmdlet does not force the new value to take effect. Use Get-PITuningParameter to check when the PI Tuning Parameter will take effect.

To reset the value of the PI Tuning Parameter back to its default value, use Reset-PITuningParameter.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
SetPIUser

Edits an existing PI User on a PI Data Archive

The Set-PIUser cmdlet edits an existing PI User on a PI Data Archive

The connection parameter specifies which connection to a PI Data Archive to use.

NOTE: PI Users and PI Groups have been replaced by PI Identities. PI Identities with PI Mappings (WIS) and PI Trusts should be used to configure PI Data Archive security. See KB00833 for more information.

Public classCode example
SetPIUserPassword

Set the password for an existing PI User on a PI Data Archive

The Set-PIUserPassword cmdlet sets the password for an existing PI User on a PI Data Archive

The connection parameter specifies which connection to a PI Data Archive to use.

NOTE: PI Users and PI Groups have been replaced by PI Identities. PI Identities with PI Mappings (WIS) and PI Trusts should be used to configure PI Data Archive security. See KB00833 for more information.

Public classCode example
SetPlugInVerifyLevel

Configures the level of verification required for an AFPlugIn to be loaded from the server.

This method is used to configure the level of verification required for an AFPlugIn to be loaded from the server. The AddTrustedProvider method can be used to add a trusted provider when the verify level is set to AFVerifySignatureLevel.RequireSignedTrustedProvider.

Public classCode example
StartPIAFLinkBatchDatabaseAnalysis

Starts an analysis of the PI Batch Database for Batch Database to Event Frames Migration

The Start-PIAFLinkBatchDatabaseAnalysis cmdlet starts the analysis of the PI Batch Database by the AF Link Subsystem. This information obtained from the analysis is used to address potential issues when preparing to perform a migration from PI Batch Database to Event Frames.

An XML report is generated with the detailed results of the analysis. Use the Get-PIAFLinkBatchDatabaseAnalysisStatus cmdlet to get an overview of the analysis, as well as retrieve the path to the analysis XML report. Use "Get-Help Get-AFLinkBatchDatabaseAnalysisStatus -Full" for more information.

The connection parameter specifies the connection to a PI Data Archive to use.

Public classCode example
StartPIAFLinkBatchDatabaseMigration

Starts PI Batch Database to AF Event Frame Migration

The Start-PIAFLinkBatchDatabaseMigration cmdlet starts the migration of the entire PI Batch Database to AF Event Frames. The AF Server, AF Database, and Root Element that this information is written to is determined by the settings used for PI Module Database to AF Synchronization. This can be found in the Module Database at %OSI\MDB-AFMigrationData, in the properties: PI System, AFDB, and RootElement, respectively.

WARNING: Once a PI Batch Database to Event Frames Migration has occurred, the Batch Database is read-only. PI Batch to Event Frames migration is a one-time operation and should only be done after any internal approvals, as well as PI Batch Database Analysis has been performed and any potential issues addressed.

See "Get-Help Start-PIAFLinkBatchDatabaseAnalysis -Full" for more information on running the analysis of the PI Batch database.

The connection parameter specifies the connection to a PI Data Archive to use.

Public classCode example
StartPIArchiveReprocess

Starts/queues a PI Archive to be reprocessed

The Start-PIArchiveReprocess cmdlet queues/starts a PI Archive to be reprocessed.

This cmdlet is only supported on PI Data Archive 2016 or later.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
StartPIArchiveShift

Initiate a PI Archive shift

The Start-PIArchiveShift cmdlet initiates a PI Archive shift immediately on a specified PI Data Archive.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
StartPIBackup

Initiate a PI Backup on a PI Data Archive

The Start-PIBackup cmdlet initiates a PI Backup on a PI Data Archive

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
StopPIArchiveReprocess

Stops/cancels a PI Archive from being reprocessed

The Stop-PIArchiveReprocess cmdlet stops/cancels a PI Archive from being reprocessed. If the archive reprocess task is currently running, it will be stopped. If the archive reprocess task is still pending, it will be removed from the queue.

This cmdlet is only supported on PI Data Archive 2016 or later.

To view the current PI Archive reprocess queue. Use "Get-PIArchiveReprocessQueue". See "Get-Help Get-PIArchiveReprocessQueue -Full" for more information.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
StopPIBackup

Stop execution of a PI Backup on a PI Data Archive

The Stop-PIBackup cmdlet stops a PI Backup on a PI Data Archive.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
UndoAFCheckOut

Undo a check out of AF objects

The Undo-AFCheckOut cmdlet will undo check outs of AF objects that are checked out. Essentially, this will discard any changes made to the AF objects since the last successful check in.

Public classCode example
UnlockAFEventFrame

Unlock an AF Event Frame

The Unlock-AFEventFrame cmdlet will unlock an existing and already locked AF Event Frame. Unlocking an AF Event Frame restores the ability to make changes to it.

Public classCode example
UnregisterPIArchive

Unregisters a registered PI Archive file with a PI Data Archive server.

The Unregister-PIArchive cmdlet unregisters a registered PI Archive file from a PI Data Archive server.

An unregistered archive is not deleted, but the PI Data Archive will no longer see the data contained until it is registered again.

The connection parameter specifies which connection to a PI Data Archive to use.

Public classCode example
UpdatePIBufferConfiguration

Reload the PI Buffer Subsystem configuration

The Update-PIBufferConfiguration cmdlet forces PI Buffer Subsystem to reload all buffer configuration data. This cmdlet can only be directly run on the local instance of PI Buffer Subsystem.

This cmdlet can be run remote by leveraging PowerShell Remoting.

Public class
VersionExtensions

Enumerations

  EnumerationDescription
Public enumeration
Categories
In This Topic
Related Links
TitleResults for “How to create a CRG?”Also Available in