Retrieves interpolated values over the specified time range at the specified sampling interval.
OSIsoft.AFSDK (in OSIsoft.AFSDK.dll) Version: 220.127.116.11
public Task<AFValues> InterpolatedValuesAsync(
CancellationToken cancellationToken = null
Public Function InterpolatedValuesAsync (
timeRange As AFTimeRange,
interval As AFTimeSpan,
desiredUOM As UOM,
filterExpression As String,
includeFilteredValues As Boolean,
Optional cancellationToken As CancellationToken = Nothing
) As Task(Of AFValues)
Dim instance As AFData
Dim timeRange As AFTimeRange
Dim interval As AFTimeSpan
Dim desiredUOM As UOM
Dim filterExpression As String
Dim includeFilteredValues As Boolean
Dim cancellationToken As CancellationToken
Dim returnValue As Task(Of AFValues)
returnValue = instance.InterpolatedValuesAsync(timeRange,
interval, desiredUOM, filterExpression,
CancellationToken cancellationToken = nullptr
member InterpolatedValuesAsync :
timeRange : AFTimeRange *
interval : AFTimeSpan *
desiredUOM : UOM *
filterExpression : string *
includeFilteredValues : bool *
?cancellationToken : CancellationToken
let _cancellationToken = defaultArg cancellationToken null
- Type: OSIsoft.AF.TimeAFTimeRange
The bounding time range for the interpolated values request.
If the StartTime is earlier than the
EndTime, the resulting values will be in time-ascending order,
otherwise they will be in time-descending order.
- Type: OSIsoft.AF.TimeAFTimeSpan
The Sample interval. If specified in hours, minutes, seconds, or milliseconds,
the time intervals will be evenly spaced UTC time intervals. Longer interval types are interpreted
using wall clock rules and are time zone dependent. For example, an interval created with
the string "24h" means using an evenly spaced 24 UTC hour interval between each event. On the other hand,
an interval created with the string "1d" would return an interval shorter or longer than 24 hours if the
interval encompasses a Daylight Savings Time change.
When a positive interval is specified, the interval calculation begins at the earliest bounding time in
the timeRange and applies the interval repeatedly in time ascending direction to
generate the calculation intervals.
If a negative interval is specified, the interval calculation begins at the latest bounding time in
the timeRange and applies the interval repeatedly in time descending direction to
generate the calculation intervals. Note that the order of values returned will still be reflected
by the timeRange, regardless of the interval sign.
- Type: OSIsoft.AF.UnitsOfMeasureUOM
The desired unit of measure for the returned values. If , then
the values are returned in the unit of measure specified by the associated attribute's
- Type: SystemString
A string containing a filter expression.
Expression variables are relative to the attribute.
Use '.' to reference the containing attribute.
A or empty string indicates no filtering.
If the attribute does not support the Filters
option, the filter will be ignored.
- Type: SystemBoolean
Specify to indicate that values which fail the filter
criteria are present in the returned data at the times where they occurred
with a value set to a "Filtered" enumeration value with bad status.
Repeated consecutive failures are omitted.
- 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.
Returns a task whose result is an AFValues
collection with the interpolated values.
The data reference does not support the this method, or the configured data
reference does not support filter expressions and one was provided.
Asynchronous methods throw AggregateException on failure which will contain one or
more exceptions containing the failure.
| Notes to Callers|
This method, property, or class is only available in the .NET 4 version of the SDK.
| Security Note|
You must have ReadData security rights to
read a data value.
| Notes to Callers|
This call might use a background task to complete some of its work. See the
for some matters to consider when execution transitions to another thread.
Asynchronous data calls in AF SDK attempt to do as much work as possible asynchronously. If no work can be done
asynchronously, then the SupportedDataMethods will report that asynchronous calls are not supported.
If an attribute uses a Formula or other calculated data reference has any input that supports asynchronous calls, then the attribute
will support asynchronous calls. When making an asynchronous data call, input data will be acquired asynchronously when possible
or synchronously otherwise. Data calls that require partitioning across versions will always fall back to synchronous calls.
Impersonation of AF SDK asynchronous calls relies on the .NET framework's built-in support for flowing execution context across
asynchronous points. When making these calls while impersonating, the thread or runtime must be configured to propagate the
impersonation across these asynchronous points (see the SecurityContext documentation for details).
AFSDKSupported in: 2.10.5, 2.10, 2.9.5, 2.9, 2.8.5, 2.8