company logo

DictionaryHandle :: OpenMultiple - Open multiple dictionary source

The function returns true in case of error(s). Otherwise after opening, the dictionary handle refers to a multiple database source (overload objectspace). When the passed path contains a single database reference, an ordinary dictionary handle will be opened.

Return value:  Success ( logical  )

Implementation details

logical DictionaryHandle  :: OpenMultiple ( ODABAClient &client_refc, NPath &cpath, PIACC accopt, logical w_netopt, ::ResourceTypes local_ressources=RES_automatic, char sysenv=NO, RootBase_Types rb_type=RBT_ODABA )

The function opens all dictionary references passed in the multiple path ( cpath ). Before extracting database references, option variables (%...%) are resolved. Database references are separated by semicolon. No semicolon is required after last file name. Each database reference must refer to a valid file location. The database reference on top of the path list has highest priority.

Only the top dictionary is opened with the access mode passed in accopt . All following dictionaries are opened with read mode, i.e. changes can be stored in top dictionary, only.

When running a dictionary in client/server mode ( local_resource is RES_server ), option variables are not resolved but passed to the server.

  • client_refc - Reference to client handle
  • cpath - Complete file or directory path
  • accopt - Access mode
  • w_netopt - Multi-user option

    Passing this value as true ( YES ) indicates that multi-user access is requested. False ( NO ) indicates exclusive use of database. Accessing a database in update or write mode, NO guarantees absolute exclusive access.

  • local_ressources - Resource type

    Depending on the resource type the database or dictionary is opened on the client or server side.

    Default: RES_automatic
  • sysenv - System application

    This option indicates that the application is running as system application. In this case context functions are disabled and will not be executed. This option should never be set in normal applications because this may lead to logical inconsistency of the database.

    When running a replication client, this option contains the value 2. Running a replication client in a system application, the option contains the value 3.

    For maintenance purposes, 4 might be passed in the variable. In this case, versions will not be upgraded automatically.

    Default: NO
  • rb_type - - internal feature (not documented) Default: RBT_ODABA