Click or drag to resize

RddInfo Function

Return and optionally change settings controlled directly by the RDD.

Namespace:  XSharp.RT
Assembly:  XSharp.RT (in XSharp.RT.dll) Version: 2.08
Syntax
 FUNCTION RddInfo(
	 kInfoType AS USUAL,
	 uNewSetting AS USUAL
) AS USUAL
View Source

Parameters

kInfoType
Type: Usual
Specifies the setting.  The initial default of a setting depends on the RDD.
The constants are described in the Constants section below.  Note, however, that not all constants are supported for all RDDs.
Important!  _SET_USER is a constant that returns the minimum value that third-party RDD developers can use for defining new <kInfoType> parameters.  Values less than _SET_USER are reserved for CA development.
uNewSetting
Type: Usual
If specified, this parameter is used to change the value of a setting.  The data type (and whether <uNewSetting> can be specified), depends on the <kInfoType> constant and is documented in the Constants section below.

_SET_AUTOOPEN Returns and optionally changes the logical flag that determines whether the RDD will open production indexes automatically when a database file is opened.  A TRUE setting indicates that the production index is opened automatically.
_SET_AUTOORDER Returns and optionally changes the numeric setting that determines whether the production index will set a controlling order.  A setting of 1 indicates that the first order in the production index will be the controlling order.  A setting of 0 indicates that database files will be processed in natural order when the production index is initially opened.
_SET_AUTOSHARE Returns and optionally changes the numeric setting that determines the automatic sharing mode.
A setting of 0 completely disables automatic sharing control.  This is primarily useful when developing network applications in a stand-alone environment.
A setting of 1 causes the RDD to determine at runtime whether the application is running in a network environment.  If not, the RDD automatically opens all files in exclusive mode.  This allows you to write code that is network-aware, while still getting optimal performance when you application is running in single-user mode.
A setting of 2 opens all files in exclusive mode, regardless of the current environment.  Using this mode, you can easily convert an application designed for a network environment to work as a single-user application.  This is useful if you prefer to deliver separate stand-alone and LAN versions of the application.
_SET_BLOB_CIRCULAR_ARRAY_REF
Returns and optionally sets the logical flag indicating whether to check for circular array references when storing and retrieving arrays to and from BLOB fields.  A FALSE setting indicates that the RDD will not check for circular references.
The algorithm for storing/retrieving arrays uses a recursive process which will call itself indefinitely if the array has a circular reference, quickly exhausting the program's stack.  You can set RDDInfo(_SET_BLOB_CIRCULAR_ARRAY_REF, TRUE) to cause the algorithm to check for and correctly process circular references.  Note, however, that the checking takes extra time and is unnecessary unless there are circular references.
_SET_DEFAULTRDD Returns the name of the default RDD, specified as a string.
_SET_HPLOCKING Returns and optionally changes the logical flag that determines whether to use the High Performance (HP) locking schema for newly created index files.  A FALSE setting indicates that the HP locking schema is not used.
_SET_MEMOBLOCKSIZE
Returns and optionally changes the numeric value specifying block size (in bytes) for memo files.
_SET_MEMOEXT Returns and optionally changes the string value indicating the default memo file extension.
_SET_NEWINDEXLOCK
Returns and optionally changes the logical flag that determines the locking offset flag for newly created index files.  A FALSE setting indicates a locking offset that is compatible with Xbase applications but more restrictive than the offset that will be used if this flag is set to TRUE.
_SET_OPTIMIZE Returns and optionally changes the logical flag that determines whether optimization will be used when filtering records in the database files.  A TRUE setting indicates that the RDD will use the available orders in a work area to make processing a filtered database as efficient as possible.
_SET_STRICTREAD Returns and optionally changes the logical flag that determines whether the RDD will read records directly from disk when creating orders.
A FALSE setting indicates that the RDD will read records directly from disk when creating orders, which is the most efficient setting.  However, if you are using a DBF RDD layer that encrypts the database file, this setting will give incorrect results because the RDD will see the encrypted value rather than the actual value of the records.  In order to use the RDD with encryption packages, use RDDInfo(_SET_STRICTREAD, TRUE).  This setting lets the DBF RDD layer read the records when creating an order.

Return Value

Type: Usual
If <uNewSetting> is not specified, RDDInfo() returns the current setting.  If <uNewSetting> is specified, the previous setting is returned.
Remarks