GetEnvironmentOptions Method (IPISDKOptions interface)



This method returns a NamedValues collection containing the set of environment options currently in effect in the running application.  Each contained NamedValue object represents an option where the Name property is the option name and the Value property, its setting.



The object placeholder is an object expression that evaluates to an IPISDKOptions interface, obtained from a PISDK object.

The list of possible items in the returned NamedValues collection is shown in this table.

Setting Description Default
NOPISDKBUFFERING  A boolean flag indicating if buffering is enabled or disabled. false
BUFFER_RECOVERABLE_DELAY_SECS Time in seconds the PI SDK waits after receiving a recoverable error from the buffering subsystem before retrying. 60
BUFFER_RETRY_OPEN_DELAY_SECS Time in seconds the PI SDK waits after failing to open a collective member server for registration only before retrying. 120
BUFFEREDSERVER For buffering configurations that support only one server or collective, this setting returns the name of the server which is buffered.  
CURRENTBUFFEREDSERVER For buffering configurations that support only one server or collective, this setting returns the name of the server which is currently buffered. If the buffering configuration was changed, but the buffering subsystem was not restarted, this setting will not match BUFFEREDSERVER  
BUFFERING For buffering configurations that support only one server or collective, this setting returns whether buffering is enabled. A value of 0 usually means that PI API buffering is enabled in a mode that does not allow PI SDK buffering (using the bufserv buffer service). A PI API configuration utility must be used to change this setting (PI ICU, or manually editing piclient.ini). 0
BUFFERCONFIGERRORS A PIErrors collection is returned with 0 or more items describing configuration problems that the PI Buffer Subsystem may have encountered. See the remarks below for more information. Empty PIErrors
CONFIGURATIONNOTALLOWED A long (PIstatus code) that indicates if PI buffer subsystem will accept configuration changes. A value of 0 indicates buffering configuration may be changed. Otherwise, a status code is returned indicating the condition that prevents configuration. 0
UILANGUAGE The language which the PI SDK uses for displaying PIConstant strings and COM control strings. 0
SDKCODEPAGE The code page for non-UNICODE (multi-byte) string transformations. This applies only to PI Server tag and module attributes. 0
SDKLOCALRPCTIMEOUT The timeout setting for calls to local subsystems such as the buffer subsystem and message subsystem. 5



If errors are encountered retrieving any of the PISDK configuration values, the local PI message log will contain an entry with the specific failure that occured.

The PIError objects returned by BUFFERCONFIGERRORS contain a PIstatus code, string message, and cause. The error code may be used to code specific responses to a condition encountered in PI buffer subsystem. The string contains additional information regarding the error condition. The cause contains a string that may be ConfigErrors or CriticalErrors, where those that are critical prevent the PI Buffer Subsystem from buffering data.

Trappable Errors

In addition to generic errors (such as Out of Memory), the following errors may occur:

Error Description
E_INVALIDARG, E_POINTER Some of the function arguments are not valid.
pseBUFFERCONFIG A problem occured obtaining status or settings from the PI buffer subsystem.
Enabling Operational Intelligence