crssdb, dssdb, dssndb, dssrdb, dsskdb, dsstdb — Create set with sub-divisions
subroutine dssdb(handle,name,ndiv,ldiv,type,initval,status) integer*4 handle character*(*) name integer*4 ndiv integer*4 ldiv character*4 type integer*4|integer*8|real*4|real*8 initval integer*4 status subroutine dssndb(handle,name,ndiv,ldiv,type,initval,status) integer*4 handle character*(*) name integer*4 ndiv integer*4 ldiv character*4 type integer*4|integer*8|real*4|real*8 initval integer*4 status subroutine dssrdb(handle,name,ndiv,ldiv,type,initval,status) integer*4 handle character*(*) name integer*4 ndiv integer*4 ldiv character*4 type integer*4|integer*8|real*4|real*8 initval integer*4 status subroutine dsskdb(handle,name,ndiv,ldiv,status) integer*4 handle character*(*) name integer*4 ndiv integer*4 ldiv integer*4 status subroutine dsstdb(handle,name,ndiv,ldiv,status) integer*4 handle character*(*) name integer*4 ndiv integer*4 ldiv integer*4 status
dssdb reserves space on the database for
a numerical set with sub-divisions, i.e a set of type
I, J, E,
C, F, or Z,
and it initializes the elements of the dataset with a constant value
initval. The sub-divisions (sub-sets) are of
constant size. Thus, the dataset is ndiv*ldiv
data elements long. Datasets with sub-divisions can be accessed by
specifying the sub-division index idiv (see
putdb,
getdb). If
the sub-division index is activated (i.e idiv
> 0), at most ldiv data elements of the
sub-set can be accessed. If idiv is inactivated
(i.e idiv = 0) the set will be accessed as a set
without sub-divisions.
dssndb performs the same function as
dssdb, but it does not abort if the set already
exists and the existing ndiv is smaller or equal
to the required ndiv and the existing
ldiv is equal to the required
ldiv. dssndb does not
re-initialize the dataset with the preset value.
dssrdb performs the same function as
dssndb, but it re-initializes the set with the
preset value.
dsskdb reserves space on the database for
a dataset of type K. The set is
ndiv*ldiv characters long. The set may then be
accessed by specifying the sub-division index
idiv. If idiv > 0 is set,
ldiv characters of the sub-division idiv are
returned. If idiv = 0, an error is returned. Note
that a data of type character cannot be preset. However, the strings
are initialized to blank.
dsstdb defines a relational dataset with
ndiv sub-divisions. The size of each table is
nw integer*4 words (not bytes!). To define a
relational dataset without sub-divisions, call the function
restdb.
handleDatabase handle (input). The file handle
handle may not exceed the maximum number of
simultaneously open databases.
nameName of dataset (input). The string may not exceed the maximum dataset name length.
ndivNumber of sub-sets (sub-records) to be created (input).
ldivSize of one sub-set of the set to be created (input).
Note that the size of relational tables, i.e datasets of
type $, is specified in integer*4 words
(i.e 4 times less than the number of bytes) in order to
maintain compatibility with version 6 of
MemCom.
typeDataset type of the set to be created (input).
initvalPreset value of a single element of the dataset (input). All elements of the dataset will be initialized to that preset value. Note that the preset value must correspond to the data type!
statusStatus code returned (output). Upon successful completion of the operation, the status value 0 is returned. A negative value is returned, if an error has been detected. A positive value is returned, if a warning has been issued. See MemCom error codes.