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

AF SDK Reference

PIPoint.ReplaceValuesAsync Method (AFTimeRange, IList(AFValue), AFBufferOption, CancellationToken)

PIPoint.ReplaceValuesAsync Method (AFTimeRange, IList(AFValue), AFBufferOption, CancellationToken)

  • Last UpdatedNov 18, 2025
  • 3 minute read
PIPoint.ReplaceValuesAsync Method (AFTimeRange, IList(AFValue), AFBufferOption, CancellationToken)
This method removes existing data within the specified AFTimeRange and inserts the specified values.

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

Syntax

public Task<AFErrors<AFValue>> ReplaceValuesAsync(
	AFTimeRange timeRange,
	IList<AFValue> values,
	AFBufferOption bufferOption,
	CancellationToken cancellationToken = default
)
Public Function ReplaceValuesAsync ( 
	timeRange As AFTimeRange,
	values As IList(Of AFValue),
	bufferOption As AFBufferOption,
	Optional cancellationToken As CancellationToken = Nothing
) As Task(Of AFErrors(Of AFValue))

Dim instance As PIPoint
Dim timeRange As AFTimeRange
Dim values As IList(Of AFValue)
Dim bufferOption As AFBufferOption
Dim cancellationToken As CancellationToken
Dim returnValue As Task(Of AFErrors(Of AFValue))

returnValue = instance.ReplaceValuesAsync(timeRange, 
	values, bufferOption, cancellationToken)
public:
Task<AFErrors<AFValue^>^>^ ReplaceValuesAsync(
	AFTimeRange timeRange, 
	IList<AFValue^>^ values, 
	AFBufferOption bufferOption, 
	CancellationToken cancellationToken = CancellationToken()
)
member ReplaceValuesAsync : 
        timeRange : AFTimeRange * 
        values : IList<AFValue> * 
        bufferOption : AFBufferOption * 
        ?cancellationToken : CancellationToken 
(* Defaults:
        let _cancellationToken = defaultArg cancellationToken new CancellationToken()
*)
-> Task<AFErrors<AFValue>> 

Parameters

timeRange
Type: OSIsoft.AF.TimeAFTimeRange
The bounding time range for removal and replacement of data.
values
Type: System.Collections.GenericIListAFValue
The list of replacement values with an associated PIPoint for each value. If an empty list then existing data within the specified AFTimeRange will be deleted. The time stamp of AFValue in values must be within the specified AFTimeRange.
bufferOption
Type: OSIsoft.AF.DataAFBufferOption
An enumeration value that specifies buffering option.
cancellationToken (Optional)
Type: System.ThreadingCancellationToken
A cancellation token used to abort processing before completion. Passing the default CancellationToken.None will run to completion or until the PIConnectionInfo.OperationTimeOut period elapses.

Return Value

Type: TaskAFErrorsAFValue
Returns a task whose result is if there are no errors. Otherwise the result is an AFErrorsTKey instance containing error information.

Exceptions

ExceptionCondition
AggregateException Asynchronous methods throw AggregateException on failure which will contain one or more exceptions containing the failure.

Remarks

This method requires PI Data Archive 2016 or later that supports DeleteRange feature. This is indicated by Supports(PIServerFeature) check returning for the case of DeleteRange.

For successful data write through Buffer, this method requires that PI Buffer Subsystem (PIBufSS) needs to be correctly pre-configured with Buffering Manager. Currently, buffering data through PIBufSS has a limitation where error feedback from PI Data Archive cannot be returned to the caller.

Data write through Buffer will be fanned to Collective members.

Note Notes to Callers
This call might use a background task to complete some of its work. See the Threading Overview for some matters to consider when execution transitions to another thread.

Version Information

AFSDK

Supported in: 3.1.1, 3.1.0, 3.0.2, 3.0.1, 3.0.0, 2.10.11, 2.10.5, 2.10.0, 2.10, 2.9.5, 2.9, 2.8.5, 2.8

See Also

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