Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

$

@

ANALYZE

AT_END

BACKUP

CHANGE

CHANGE_DATABASE

CHANGE_FIELD

CHANGE_INDEX

CHANGE_PROTECTION

CHANGE_RELATION

CHANGE_STORAGE_MAP

CLOSE

COMMIT

CONVERT

CREATE_SEGMENT

DATABASE

DECLARE_STREAM

DEFINE

DEFINE_CONSTRAINT

DEFINE_DATABASE

DEFINE_FIELD

DEFINE_INDEX

DEFINE_PROTECTION

DEFINE_RELATION

DEFINE_STORAGE_MAP

DEFINE_VIEW

DELETE

DELETE_CONSTRAINT

DELETE_DATABASE

DELETE_FIELD

DELETE_INDEX

DELETE_PATHNAME

DELETE_PROTECTION

DELETE_RELATION

DELETE_STORAGE_MAP

DELETE_VIEW

EDIT

END_SEGMENT

END_STREAM

ERASE

EXIT

EXPORT

FETCH

FINISH

FOR

GET

HELP

IMPORT

INTEGRATE

INVOKE

MODIFY

ON_ERROR

OPEN

PLACE

PRINT

RDOINI

READY

RECOVER

REFRESH

RESTORE

ROLLBACK

RSE

SET

SHOW

SPOOL

START_SEGMENT

START_STREAM

START_TRANS

STOP_MONITOR

STORE

Access rights

Command Recall

Cond expr

Datatypes

Data Distrib

DCL invoke

Demo

Errors

Execute

Field attr

Preprocessors

RDO Foreign Cmd

Release Notes

Rel operators

Segment str

Tech changes

Value expr

DATA_ACCESS

DEF_ACCESS

More

ANY

BETWEEN

UNIQUE

CONTAINING

STARTING_WITH

MISSING

MATCHING

Format

value-expr

EXTRACTION

EXTRACTION_ROLLUP

REPLICATION

SHOW_TRANSFER

DELETE_SCHEDULE

DELETE_TRANSFER

DEFINE_TRANSFER

DEFINE_SCHEDULE

REINITIALIZE_TRANSFER

START_TRANSFER

STOP_TRANSFER

Release Notes

Error msg doc

Format

Format

More

Example

transfer-name

Format

More

Example

transfer-name

Format

More

Examples

REPLICATION

EXTRACTION

EXTRACTION_ROLLUP

ENABLED_IMMEDIATE

ENABLED_DEFERRED

DISABLED

MOVE_RELATIONS_ALL

ASCENDING

DESCENDING

SELECT_FIELDS_ALL

transfer-name

file-spec

text

target-db-param-clause

number-pages

page-blocks

number-buffers

number-users

buffer-blocks

snp-pages

ext-pages

min-pages

max-pages

growth

move-relations-clause

rse

first-clause

relation-clause

context-variable

db-handle

with-clause

conditional-expr

reduce-clause

sort-clause

value-expr

select-field-name

move-views-clause

view-name

move-relations-rollup-clause

transfer-file-options-clause

prologue-file-spec

epilogue-file-spec

log-file-spec

Format

More

Examples

transfer-name

start-date-time

every-delta-time

every-absolute-time

at-time

count

delta-time

Format

More

Example

transfer-name

Format

More

Examples

NOW

WAIT_NOWAIT

transfer-name

Format

More

Example

transfer-name

Example

RDB

RDMS

RDO

DDAL

ACCVIO

ACTQUERY

AIJDEVDIR

AIJDISABLED

AIJENABLED

ALLMIN

ALROPE

ANAEXTOBS

AREABUSY

AREA_CORRUPT

AREA_INCONSIST

AREA_NAME

ARITH

BADAIJFILE

BADAIJVER

BADASCTOID

BADBNDPRM

BADBOUNDS

BADDATDEF

BADDBNAME

BADFILTYP

BADHANDLE

BADROOTMATCH

BAD_AREA_NAME

BAD_CODE

BAD_DATATYPE

BAD_NAME

BAD_SYM

BAD_XPR

BDDATRANG

BKUPEMPTYAIJ

BOUND

BPPMAX

BPPMIN

BUFLIMEXC

BUFSMLPAG

BUFTOOSML

BUGCHECK

BUGCHKDMP

CANTASSMBX

CANTBINDRT

CANTCLOSEDB

CANTCREDBR

CANTCREGBL

CANTCREMBX

CANTCREMON

CANTDELETE

CANTLCKTRM

CANTMAPTROOT

CANTOPENDB

CANTOPENIN

CANTQIOMBX

CANTREADDB

CANTREADDBS

CANTSNAP

CANTSPAWN

CANTWRITEDBS

CDDISREQD

CDDREQALONE

CHECKSUM

CNVNUMDAT

COLNOTDEF

COMPLEX

CONEXI

CONEXTS

CONNOEXI

CONNOTDEL

CONVERR

CONVW

DATCNVERR

DBACTIVE

DBBUSY

DBCRUPT

DBNOTACTIVE

DBNOTEXTEN

DBNOTINTRAN

DBNOTOPEN

DBRABORTED

DBSHUTDOWN

DEADLOCK

DELAREA

DUPLANAME

DUPLFNAME

DUPNOTALL

EMPTYAIJ

EMPTYFILE

END

ERRACCROO

ERREXTFIL

ERRFILSIZ

ERRFMTFIL

ERRFOREIGN

ERRMODEOF

ERROPENIN

ERROPENOUT

ERROPNOUT

ERRPARSFIL

ERRREAD

ERRREADING

ERRRUJFIL

ERRTRUNFIL

ERRWRITE

ERRWRITING

EXQUOTA

EXTDBONLY

FIELD_MISSING

FIEUSETRA

FILACCERR

FLDEX

FLDINCOM

FLDINCOMREL

FLDINCON

FLDINSTO

FLDINUSE

FLDINVIEW

FLDNOEX

FLDNOEXI

FLDNOTCHG

FLDNOTDEL

FLDNOTINREL

GFLDEXTS

GFLDNOEX

HASHEDMIX

IDXNOTDEL

ILLNCHAR

INDEXTS

INDEX_S_MIN

INDINMAP

INDLIMITBAD

INDNEEDSLIMIT

INDNOTEXI

INDNOTREL

INDTOOBIG

INFUNK

INVACE_LENGTH

INVDBSFIL

INVDB_NAME

INVDTYPINDX

INVHEADER

INVNAME

INVTBL_NAME

INV_DATE_CHG

INV_RATOR

INV_ROOT

LASTARENOLIMIT

LBMAX

LBMIN

LCKCNFLCT

LOGAIJBCK

LOGRECOVR

LOGRECSTAT

MAPAREAINUSE

MAPBLRMISSING

MAPNMINUSE

MAPREFAREA

MAXRELVER

MAX_CCTX

MISMMORDD

MIXCLUST

MONALSTART

MONMBXOPN

MONSTOPPED

MULTCHGAREA

MUSTRECDB

NBMAX

NBMIN

NOACCSEGSTR

NOAIJDEF

NOCHAR

NOCHGRDBSYS

NOCHGVW

NOCREMBX

NODBK

NODEVDIR

NODMAX

NODMIN

NOINTERUNI

NOMONITOR

NONODE

NOPRIV

NORTUPB

NOSIP

NOSNAPS

NOSTAREAEXT

NOSTRTUP

NOTBOOL

NOTDSKFIL

NOTHRESUNI

NOTIMPLYET

NOTIP

NOTOPE

NOTRANAPP

NOTROOT

NOTSYSCONCEAL

NOT_BOUND

NOT_LICENSED

NOT_READY

NOT_RESERV

NOT_UPDATE

NOT_VALID_FR

NOVIEWIND

NOWILD

OBSVER

OK_NO_ACE

OPERCLOSE

OPERSHUTDN

OVERFLOW

PREMEOF

QIOXFRLEN

QUIETPT

RECMAXEXC

RELALRDYMP

RELEXI

RELEXTS

RELFLDEX

RELFLDNOC

RELFLDNOD

RELINCOM

RELNEXTS

RELNOEXI

RELNOTCHG

RELNOTDEL

RELNOTEMPTY

RELUSETRA

REQUNIFORM

RESTART

ROOMAJVER

ROOTMAJVER

RUJDEVDIR

SEGSTR_NO_CHG

SETWIDTH

SIP

SNAPFULL

SPIMAX

SPIMIN

SSNOTINROOT

STALL

STAREAFUL

STOMAPNOEXI

SYMTOOBIG

SYNERR

TABIDNOTDEF

TABNOTDEF

TADMISMATCH

TERMINATE

TRANSFDEF

TRAN_IN_PROG

TRUE

TRUNCATION

UNDERFLOW

UNSARITH

UNSCOMP

UNSCONV

UNS_DTYPE

UPDINSNAP

USRMAX

USRMIN

VIEWEXI

VIEWINVIEW

VIEWNOEXI

VIEWNOTDEL

VIEWNOUP

VIEW_NO_ANA

WASBOOL

WISH_LIST

WRNG_REL

XPR_STACK_OFLO

ACCVIO

ACENOTFND

AGGNOTALL

AIJDEVDIR

AIJDISABLED

AIJENABLED

AMB_KEYWORD

ANODBHAND

ANYNOTALL

AREABUSY

AREA_CORRUPT

AREA_INCONSIST

ARIEXPEXP

ATTMISSING

BACKCONV

BADADJLOCKGRAN

BADAIJFILE

BADAIJVER

BADASCTOID

BADBLOB

BADBNDPRM

BADBOUNDS

BADCLUMP

BADCORATT

BADDATDEF

BADDBNAME

BADEPILOGUE

BADFILEVER

BADFILTYP

BADFLDTYP

BADINTERVAL

BADLOGFILE

BADLOGNAM

BADMETNAM

BADMVIEWFLD

BADMVIEWREL

BADMVIEWVEW

BADMVRELS

BADMVVIEWS

BADPAGEFORMAT

BADPROLOGUE

BADRECBUF

BADROLMVFLD

BADROOTMATCH

BADSNAPFILENAME

BADTHRESHOLD

BADVAXCLUSNODES

BAD_END_NAME

BAD_NAME

BDDATRANG

BKUPEMPTYAIJ

BOOEXPEXP

BOUND

BUFTOOSML

BUGCHECK

BUGCHK

BUGCHKDMP

CABORT

CANTASSMBX

CANTBINDRT

CANTCLOSEDB

CANTCONVERT

CANTCREDBR

CANTCREGBL

CANTCREMBX

CANTCREMON

CANTCVRT

CANTDELETE

CANTLCKTRM

CANTMAPTROOT

CANTOPENDB

CANTOPENIN

CANTQIOMBX

CANTREADDB

CANTREADDBS

CANTSNAP

CANTSPAWN

CANTWRITEDBS

CDDDEFERR

CDDERR

CHDBNOPARAM

CHECKSUM

CLOSERR

CMDINTR

CMPBYINVW

CNTSPNSUB

CNVNUMDAT

COMPLEX

COMPNOTRANS

COMTOOLON

CONALREXI

CONAMBIG

CONCHAILL

CONFATRSPEC

CONNOTDEF

CONVARDEF

CONVARILL

CONVARUND

CONVERR

CONVONLY

CVT_PROCEED

DATCNVERR

DATCONERR

DATNOTSUP

DATTYPUNK

DBACTIVE

DBBUSY

DBHANDUNK

DBHDLREQ

DBKNOTALL

DBNAMEHV

DBNOTACTIVE

DBNOTOPEN

DBNOTSPEC

DBRABORTED

DBSHUTDOWN

DB_CVT_FAIL

DB_CVT_SCS

DB_HANDEC

DB_HANDEC2

DB_HANLON

DB_NOTCVT

DDALERR

DEADLOCK

DEGMODSPC

DELAREA

DELBACKUP

DESCTOOBIG

DUPFLDDEF

EMPTYAIJ

EMPTYFILE

ERRACCROO

ERRDET

ERREXTFIL

ERRFILSIZ

ERRFMTFIL

ERRFOREIGN

ERRMODEOF

ERROPENIN

ERROPENOUT

ERROPNOUT

ERRPARSFIL

ERRREAD

ERRREADING

ERRRUJFIL

ERRTRUNFIL

ERRWRITE

ERRWRITING

EXPCV_DOT

EXQUOTA

EXTNOTSUP

EXTRADATA

FETNOTDON

FIELD_EXISTS

FIENOTALL

FIENOTREN

FIENOTSEG

FILACCERR

FLDAMBIG

FLDNOTBCK

FLDNOTCRS

FLDNOTDEF

FLDNOTINREL

FLDNOTREFD

FLUINPBUF

GARBLED

HOWCHANOT

ILLBEGIN

ILLCHAR

ILLNCHAR

IMP_IDX_CONFLICT

IMP_IDX_TWICE

IMP_STO_CONFLICT

IMP_STO_MAP_CONFLICT

IMP_STO_MAP_TWICE

IMP_STO_TWICE

INDEXTS

INTEGDBDIF

INTEGFRFAIL

INTONOTALW

INTSYNERR

INVCHAINP

INVCHANUMSTR

INVCONS

INVDBSFIL

INVFLD

INVHEADER

INVINDEX

INVNOTDON

INVRELVIEW

INVSEGSTRATR

INV_ROOT

IOERROR

JUNONLIN

LANFILEXT

LCKCNFLCT

LENMISMAT

LHSNOTDBN

LHSNOTVAR

LOGAIJBCK

LOGRECOVR

LOGRECSTAT

LOOK_FOR

LOOK_FOR_CON

LOOK_FOR_FIN

LOOK_FOR_STT

LOOK_FOR_UNTERM

MAXFLDPRTSTR

MAXNESEXC

MAXRELEXC

MAXVOLLABEXC

MISMMORDD

MONMBXOPN

MONSTOPPED

MULSPECATR

MUSINVPATH

MUSTRECDB

MVRELABSNT

NOAGGALL

NOAIJDEF

NOANYALL

NOBCKFIL

NOBCKTRNS

NOCDD

NOCDDUPDAT

NOCHAR

NOCMPBYRES

NOCONRES

NOCREMBX

NODATRES

NODBHALW

NODBHAN

NODBK

NODBKALL

NODBNAME

NODEVDIR

NODUPLIVIEW

NOFLDRES

NOFSTINREPT

NOIDXRES

NOITEMDEF

NOMAPRES

NOMLTIMV

NOMLTIMVIEW

NOMONITOR

NOMVRALL

NOMVVROL

NONODE

NOPRECOMPSEL

NOPRIV

NOPRVMVIEW

NOPRVMVREL

NOPRVREPLI

NOPRVROLMVR

NOREDINREPT

NORELRES

NOREMVER

NOREQHAN

NORTUPB

NOSEGSTRAREA

NOSELALL

NOSIP

NOSNAPS

NOSORTINREPT

NOSUPREPLI

NOTAVIEW

NOTBOOL

NOTDSKFIL

NOTENUFHV

NOTEXPSEG

NOTFOUND

NOTIMPLYET

NOTIP

NOTRANAPP

NOTREQSTA

NOTROOT

NOTSEGSTR

NOTSYSCONCEAL

NOT_BOUND

NOT_INSTALLED

NOT_READY

NOT_UPDATE

NOUPDCOMP

NOVIERES

NOVIEWALW

NOVIEWINREPT

NOWILD

NO_CROSEG

NO_FILFND

NO_FIRSEG

NO_MORSEG

NO_PERBLO

NO_REDSEG

NO_SORSEG

NO_SUCH_FIELD

NO_TXNOUT

NO_WITSEG

NULLNOIND

ONLFIRVAR

ONLONEDB

ONLONERED

ONLONEREQ

ONLONESOR

ONLONETRA

ONLONETRN

ONLONEWIT

ONLYONEPSECT

OPENERR

OPERCLOSE

OPERSHUTDN

OPRSTK_OVRFLO

OVERFLOW

PARSE_STACK_OVERFLOW

PATHREQCDD

PREMATURE_EOF

PREMEOF

QIOXFRLEN

QUIETPT

REANOWRT

REFSEGSTR

RELAMBIG

RELNOTDEF

REL_EXISTS

REMNOTALW

RESABORT

RESERVED_WORD

RESTART

RETMODSPC

ROOMAJVER

ROOTMAJVER

RSENOTSEG

RTOCMDILL

RUJDEVDIR

SCALEOPSBASIC

SEGALRSTA

SEGNOTSTA

SEGOUTSCO

SEGSTREXP

SELMORVAL

SETWIDTH

SEVERRDET

SFDBONLY

SIP

SNAPFULL

SPACREQ

SSNOTINROOT

STALL

STAREAFUL

STARNOTALL

STOCONVAR

STOMAP_LITS

STRALRDEC

STRALROPE

STRLITMISQUO

STRNOTDEC

STRNOTOPE

STROUTSCO

SYM_EXP

SYNTAX_ERR

TADMISMATCH

TERMINATE

TOKTOOBIG

TOOBIGBLR

TRAACT

TRAACT_1

TRAACT_2

TRAACT_3

TRAHDLBVAL

TRAHDLINV

TRAMODSPC

TRANONERR1

TRANONERR2

TRAN_IN_PROG

TREE_OVRFLO

TRUE

TRUNCATION

UNBTMPFIL

UNDERFLOW

UNLCONVAR

UNSARITH

UNSCOMP

UNSCOMPBY

UNSCONV

UNSDSCCLA

UNSSTRXPR

UNSSUPDAT

UNTSTR

USINGNOTSPEC

VEWNOTDEF

WAIMODSPC

WASBOOL

WISH_LIST

ZABORT

BADDBINFO

BADDBKBLO

BADDBKERA

BADDBKMOD

BADDBKSTO

BADDBKUNK

BADINTLEN

BIDNOTFOU

BUGFILCRE

BUGFILINC

BUGFILNOT

CANTFINDENTRY

CANT_WRITE_LOG_FILE

COMNOTFOU

CONFIGERR

CPENQERR

DBEXISTS

ERRACCDSTDB

ERRACCSRCDB

ERRDELTNSF

ERROR_ACCESS_TDB

FAIL_CRE_CP

FILE_IO_ERROR

FLDNOTFND

FLDNOTFOU

FLDNOTSYM

GETDVIERR

GETFORERR

GETJPIERR

GETSYIERR

INVACTTYP

INVBUFNUM

INVDBKLEN

INVJOUVER

INVLOGCLA

INVLOGTYP

INVRDBDTY

INVSEGINF

INVSELBLR

INVSYSBLOB

INVTRAOPT

LOGCHOOUTRAN

LOG_AST_ERROR

LOG_ERROR

LOG_PRIV_ERROR

MBXERR

NOREPTNSF

NOTDTCH

NOVINTAGE

NO_DEFINE

NO_PRIV

NO_READ

NO_READ_REL

NO_TR_MON

PREMATEOT

PRIV_READ_ERROR

QIOERR

RDBERR

RDODEQERR

RELNOTFND

RMSERR

SCHDEQERR

SCHENQERR

SCH_DEF_EXIST

SRCRELCK

SUPP

SYMNOTFND

TMNBUGCHK

TNSF_ACT_RETRY

TNSF_NAME_UNKNOWN

TNSF_NAME_USED

TNSF_NOT_SUSPENDED

TOOMANYRDO

TOO_MANY_CP

TRANOTFOU

TRANOTSOU

TRANS_NORETRY

TRDEQERR

TRENQERR

TRNLNMERR

UNKNMODE

UNRECQUAL

VINNOTFND

WRONUMARG

Format

Examples

data-type

validity-clause

missing-value-clause

dtr-clause

Segmented string

fxd-pnt-num

quoted-string

Examples

Format

Examples

RDBPRE

RDBPASCAL

RDML

More

More

host variable

database field

literal

statistical expression

arithmetic expression

first from

concatenated expression

database key

database handle

transaction handle

request handle

AVERAGE

COUNT

MAX

MIN

TOTAL

Format

Examples

RDB/VMS Relational Database Operator — VMS CDD+_4.1A

Additional information available:

$@ANALYZEAT_ENDBACKUPCHANGECHANGE_DATABASE
CHANGE_FIELDCHANGE_INDEXCHANGE_PROTECTION
CHANGE_RELATIONCHANGE_STORAGE_MAPCLOSECOMMIT
CONVERTCREATE_SEGMENTDATABASEDECLARE_STREAMDEFINE
DEFINE_CONSTRAINTDEFINE_DATABASEDEFINE_FIELDDEFINE_INDEX
DEFINE_PROTECTIONDEFINE_RELATIONDEFINE_STORAGE_MAP
DEFINE_VIEWDELETEDELETE_CONSTRAINTDELETE_DATABASE
DELETE_FIELDDELETE_INDEXDELETE_PATHNAMEDELETE_PROTECTION
DELETE_RELATIONDELETE_STORAGE_MAPDELETE_VIEW
EDITEND_SEGMENTEND_STREAMERASEEXIT
EXPORTFETCHFINISHFORGETHELPIMPORT
INTEGRATEINVOKEMODIFYON_ERROROPENPLACE
PRINTRDOINIREADYRECOVERREFRESHRESTOREROLLBACK
RSESETSHOWSPOOLSTART_SEGMENTSTART_STREAM
START_TRANSSTOP_MONITORSTORE

Access rightsCommand RecallCond exprDatatypesData DistribDCL invoke
DemoErrorsExecuteField attrPreprocessorsRDO Foreign Cmd
Release NotesRel operatorsSegment strTech changesValue expr

Access rights

 Rdb/VMS controls access rights that grant or deny users access to:

  o  Data in an Rdb/VMS database
  o  Rdb/VMS data definition statements
  o  Rdb/VMS utility statements

 When specifying access rights, remember these rules:

  o  Rdb/VMS denies all access rights not explicitly granted.
  o  Specify only those access rights to which you want to grant
     access.

 For tables that define these access rights, ask for Additional
 Information on DATA_ACCESS, DEF_ACCESS.

Additional information available:

DATA_ACCESSDEF_ACCESS

DATA_ACCESS

 This table lists the access rights that control access to data.

 Table 1:
 +----------------+-------------+----------------+
 |                |             |                |
   Access Right      To Grant       To Deny
 | Access Right   |  To Grant   |   To Deny      |
 +----------------+-------------+----------------+
 |                |             |                |
 | Read data      |  READ       |   NOREAD       |
 |                |             |                |
 | Store data     |  WRITE      |   NOWRITE      |
 |                |             |                |
 | Modify data    |  MODIFY     |   NOMODIFY     |
 |                |             |                |
 | Erase data     |  ERASE      |   NOERASE      |
 +----------------+-------------+----------------+

DEF_ACCESS

 This table lists the access rights that control access to database
 definitions.

 +---------------------------------------+--------------------+--------------------+
 |                                       |                    |                    |
   Access Right                            To Grant             To Deny
 | Access Right                          | To Grant           | To Deny            |
 +---------------------------------------+--------------------+--------------------+
 |                                       |                    |                    |
 | Define global field                   | DEFINE             | NODEFINE           |
 | or relation                           |                    |                    |
 |                                       |                    |                    |
 | Change global field                   | CHANGE             | NOCHANGE           |
 | or database                           |                    |                    |
 |                                       |                    |                    |
 | Delete global field                   | DELETE             | NODELETE           |
 | or database                           |                    |                    |
 |                                       |                    |                    |
 | Define, change, delete protection for | CONTROL            | NOCONTROL          |
 | database                              |                    |                    |
 |                                       |                    |                    |
 | [Reserved for future versions]        | SHOW               | NOSHOW             |
 |                                       |                    |                    |
 | OPEN or CLOSE a database              | ADMINISTRATOR      | NOADMINISTRATOR    |
 |                                       |                    |                    |
 | Use any CHANGE DATABASE option        | ADMINISTRATOR      | NOADMINISTRATOR    |
 |                                       | or CHANGE          | or NOCHANGE        |
 +---------------------------------------+--------------------+--------------------+

 This table lists the access rights that control access to relation definitions.

 +---------------------------+--------------------+------------------+
 |                           |                    |                  |
   Access Right                  To Grant            To Deny
 | Access Right              |   To Grant         |  To Deny         |
 +---------------------------+--------------------+------------------+
 |                           |                    |                  |
 | Define view, index,       |   DEFINE           |  NODEFINE        |
 | constraint, or storage    |                    |                  |
 | map                       |                    |                  |
 |                           |                    |                  |
 | Change relation           |   CHANGE           |  NOCHANGE        |
 |                           |                    |                  |
 | Delete relation,          |   DELETE           |  NODELETE        |
 | index, view,              |                    |                  |
 | constraint, or storage    |                    |                  |
 | map                       |                    |                  |
 |                           |                    |                  |
 | Define, change, delete    |   CONTROL          |  NOCONTROL       |
 | protection for            |                    |                  |
 | relation                  |                    |                  |
 |                           |                    |                  |
 | [Reserved for future      |   SHOW             |  NOSHOW          |
 | versions]                 |                    |                  |
 |                           |                    |                  |
 | CHANGE PROTECTION         |                    |                  |
 | DEFINE PROTECTION         |   CONTROL          |  NOCONTROL       |
 | DELETE PROTECTION         |                    |                  |
 |                           |                    |                  |
 | [Reserved  for  future    |   OPERATOR         |  NOOPERATOR      |
 | versions]                 |                    |                  |
 +---------------------------+--------------------+------------------+

Command Recall

 Rdb/VMS saves and allows you to access up to 20 of your most recently
 entered RDO commands.  Use the UP-ARROW or CTRL/B keys to recall
 previously entered commands.  Use the DOWN-ARROW key to reexamine a
 command that you had retrieved using the UP-ARROW key.

 This feature is designed for the convenience of RDO users.  It greatly
 reduces the need to enter the RDO editing buffer to rerun one or more of
 your last 20 commands.  The EDIT statement continues to be a useful tool
 for created RDO procedures in that it lets you take advantage of your
 editor's text manipulation features and it lets you edit multiple lines.

Additional information available:

More

More

 Any string entered at the RDO> prompt is saved in the recall buffer.  This
 includes all DCL commands prefaced by the dollar sign ($), commented text
 that begins with the exclamation point (!), and any RDO statements.  The
 carriage return delimits each line written to the recall buffer.  Thus, in
 the following example, four separate entries are written to the recall
 buffer:

 RDO> FOR E IN EMPLOYEES
 cont> WITH E.EMPLOYEE_ID BETWEEN "00164" AND "00175"
 cont> PRINT E.LAST_NAME, E.EMPLOYEE_ID
 cont> END_FOR

 The most recently typed command is at the top of the recall buffer.  If
 the user enters CTRL/B at this point, the END_FOR statement would appear
 first.

 There are no parameters or logicals available to control the maximum
 number of lines saved in the recall buffer.

Cond expr

 An expression, sometimes called a Boolean expression, that represents
 the relationship between two value expressions.  The value of a
 conditional expression is either true, false, or null.

 Conditional expressions can be combined with AND and OR or qualified
 with NOT.  AND, OR, and NOT are called logical operators.

Additional information available:

ANYBETWEENUNIQUECONTAININGSTARTING_WITH
MISSINGMATCHING

Formatvalue-expr

Format

 conditional-expr =

 ──┬───> conditional-expr ──> 
A

N

D
──> conditional-expr ───┬──> ├───> conditional-expr ──> 
O

R
───> conditional-expr ───┤ ├────────────────────────> 
N

O

T
──> conditional-expr ───┤ ├───> value-expr ──> operator ──> value-expr ────────┤ ├───> any-clause ──────────────────────────────────────┤ ├───> between-clause ──────────────────────────────────┤ ├───> containing-clause ───────────────────────────────┤ ├───> matching-clause ─────────────────────────────────┤ ├───> missing-clause ──────────────────────────────────┤ ├───> starting-with-clause ────────────────────────────┤ └───> unique-clause ───────────────────────────────────┘

value-expr

 For a complete description of Rdb/VMS value expressions, ask for HELP
 on Value_expr.

ANY

 any-clause =

 ────┬───>────────┬──> 
A

N

Y
───> rse ───> └───> 
N

O

T
───┘ The condition containing ANY is true if the record stream specified by the record selection expression (RSE) includes at least one record. If you add NOT, the condition is true if there are no records in the record stream.

BETWEEN

 between-clause =

 ────> value-expr  ────┬───>──────┬───> 
B

E

T

W

E

E

N
────┐ └──> 
N

O

T
──┘ │ ┌─────────────────────────────────────────────┘ └───> value-expr ───> typebox (A)typebox (N)typebox (D) ───> value-expr ───────> The condition containing BETWEEN is true if the first value expression is between the second and the third value expressions or equal to one of them.

UNIQUE

 unique-clause =

   ──────┬───>─────┬─> 
U

N

I

Q

U

E
───> rse ───> └──> 
N

O

T
─┘ The condition containing UNIQUE is true if the record stream specified by the RSE includes only one record. If you add NOT, the condition is true if there is more than one record in the record or the record stream is empty.

CONTAINING

 containing-clause =

 ───> value-expr ───┬─────>────┬──> 
C

O

N

T

A

I

N

I

N

G
───> value-expr ───> └──> 
N

O

T
──┘ With CONTAINING, the condition is true if the second value expression is found within the first. In most cases, the value expressions in a CONTAINING clause evaluate to text strings, but CONTAINING also operates on numeric data types. NOTE CONTAINING is not case sensitive; it considers upper- and lowercase forms of the same letter to be a match. If either of the value expressions in a CONTAINING clause is null, the result is null.

STARTING_WITH

 starting-with-clause =

 ───> value-expr ───┬─────>─────┬──> 
S

T

A

R

T

I

N

G

W

I

T

H
───> value-expr ──> └──> 
N

O

T
───┘ If a condition contains STARTING WITH, the condition is true if the first characters of the first string expression match the second string expression. In most cases, the value expressions in a STARTING WITH clause evaluate to text strings, but STARTING WITH also operates on numeric data types. NOTE STARTING WITH is case sensitive; it considers upper- and lowercase forms of the same letter to be different. If either of the string expressions in a STARTING WITH clause is null, the result is null.

MISSING

 missing-clause =

 ───> db-field  ────────┬────>─────┬──> 
M

I

S

S

I

N

G
───> └──> 
N

O

T
──┘ This condition is true if the value specified by db-field is missing.

MATCHING

 matching-clause =

 ───> value-expr ───┬─────>────┬─> 
M

A

T

C

H

I

N

G
───> match-expr ────> └──> 
N

O

T
──┘ With MATCHING, the condition is true if the match expression matches the value expression. MATCHING uses the following symbols: * Matches any string of zero or more characters % Matches any single character NOTE MATCHING is not case sensitive; it considers upper- and lowercase forms of the same letter to be a match. If either of the expressions is null, the result is null.

Datatypes

 This table summarizes the characteristics of the Rdb/VMS data types.


Table 1:  Rdb/VMS Data Types

VAX Rdb/VMS   Corresponding   Size      Range          Other
Data Type     VAX Data Type             Precision      Parameters

SIGNED        Signed word     16 bits   -32768 to       n = scale
WORD          integer                   32767           factor

SIGNED        Signed          32 bits   -2**31 to      n = scale
LONGWORD      longword                  (2**31)-1      factor
              integer

SIGNED        Signed          64 bits   -2**63 to      n = scale
QUADWORD      quadword                  (2**63)-1      factor
              integer

F_FLOATING    F_floating      32 bits   Approximately   None
              Single                    seven decimal
              precision                 digits
              floating
              point number

G_FLOATING    G_floating      64 bits   Approximately   None
              Extended                  15 decimal
              precision                 digits
              floating
              point number

DATE          Absolute date   64 bits   Not             None
              and time                  applicable

TEXT          ASCII text      n bytes   0 to 16383      n = number of
                                        characters      characters
                                                        (unsigned
                                                        integer)

VARYING       Varying         Varies    0 to 16383      n = maximum
STRING        length ASCII              characters      number of
              text                                      characters
                                                        (unsigned
                                                        integer)

SEGMENTED     None            Varies    0 to 64k        None
STRING                                  bytes per
                                        segment

Note:         For more information on SEGMENTED STRINGS, request HELP
              on Segmentstr.

Data Distrib

 VAX Data Distributor is a software product that lets you distribute
 whole databases, or parts of them, to target directories on the same or
 different nodes in the network.  The source database for extraction and
 extraction rollup target databases can be a DSRI-compliant database such
 as Rdb/VMS or VIDA.  The source database for a replication target
 database must be an Rdb/VMS database.

 You can issue all language statements, options, and qualifiers of VAX
 Data Distributor from RDO when VAX Data Distributor is installed on your
 system.

Additional information available:

EXTRACTIONEXTRACTION_ROLLUPREPLICATIONSHOW_TRANSFER
DELETE_SCHEDULEDELETE_TRANSFERDEFINE_TRANSFERDEFINE_SCHEDULE
REINITIALIZE_TRANSFERSTART_TRANSFERSTOP_TRANSFER

Release NotesError msg doc

Release Notes

 To see the current Release Notes for VAX Data Distributor, type or print
 the following file:

     SYS$HELP:DDALvvu.RELEASE_NOTES

         where    vv = version
                  u  = update

 For example:

     SYS$HELP:DDAL020.RELEASE_NOTES

Error msg doc

 Errors returned by Data Distributor are documented online in two
 locations:

  o  This Help file.  Enter "RDO> HELP Errors DDAL" and then specify the
     message on which you want an explanation and suggested user action.

  o  In the file SYS$HELP:DDAL$MSG.DOC, which you can PRINT, TYPE, or
     SEARCH at DCL level.

EXTRACTION

 Specifies that Data Distributor create an extraction database at the
 target site.  Because each extraction database is independent of the
 source database, users at the target directory can access extraction
 databases with either read-only or read-write transactions.  Each time
 an extraction transfer executes, Data Distributor creates a new version
 of the target database and transfers a complete copy of the selected
 records to the target node.

 Indexes, constraints, and access rights are not transferred when the
 target database is created.  Once the target database has been created,
 you can define views, indexes, and constraints for it and modify the
 access rights.  Refer to the VAX Data Distributor Handbook for more
 information about extraction databases.

EXTRACTION_ROLLUP

 Specifies that Data Distributor create an extraction rollup database at
 the target site with records selected from one or more source databases.
 Because each extraction rollup database is independent of the source
 database, users at the target directory can access extraction rollup
 databases with either read-only or read-write transactions.  Each time
 an extraction rollup transfer executes, Data Distributor creates a new
 version of the target database and transfers a complete copy of the
 selected records to the target node.

 Indexes, constraints, and access rights are not transferred when the
 target database is created.  Once the target database has been created,
 you can define indexes and constraints for it and modify the access
 rights.  Refer to the VAX Data Distributor Handbook for more information
 about extraction databases.

REPLICATION

 Specifies that Data Distributor create a replication database at the
 target site.  When a replication transfer executes, Data Distributor
 creates a database at the target site during the initial execution and
 supplies updates to it during subsequent transfers.  In addition, the
 execution of a replication transfer might create special-purpose
 relations in the source database and the target database to handle
 updating.

 Refer to the VAX Data Distributor Handbook for specific information
 about these special database entities.  Because the source database is
 modified with the addition of these new system relations, the user who
 defined the transfer needs the DEFINE access right to the source
 database.

 After Data Distributor creates the target database and transfers the
 data records to it, users are expected to access the replication
 database to retrieve data only.  Applications should not attempt to
 store, modify, or erase values in records of the replication database.

SHOW_TRANSFER

 Displays information about the transfer definition, schedule definition,
 the transfer status, or all these transfer attributes.  When you enter
 the SHOW TRANSFER statement, you can display information about one
 transfer or all of them, but not about a selected number of transfers.

Additional information available:

Format

Format

 SHOW TRANSFER ────> transfer-attribute ───┐
    ┌──────────────────────────────────────┘
    └──────> 
F

O

R
───┬───> 
A

L

L
────────────┬───> └───> transfer-name ──┘ transfer-attribute = ───┬───> 
D

E

F

I

N

I

T

I

O

N
─────┬────> ├───> 
S

C

H

E

D

U

L

E
───────┤ ├───> 
S

T

A

T

U

S
─────────┤ └───> 
A

L

L
────────────┘

DELETE_SCHEDULE

 Deletes the schedule definition associated with a transfer definition.
 You can delete a schedule definition only when the associated transfer
 is in the suspended state.  Refer to the STOP TRANSFER statement for
 information about how to suspend a transfer.  If you issue a START
 TRANSFER statement after deleting the schedule, the transfer will be
 placed in the unscheduled state.

Additional information available:

FormatMoreExample

Format

 DELETE SCHEDULE ──> Ftypebox (O)typebox (R) ───> transfer-name ──────> .





















Additional information available:

transfer-name

transfer-name

 Identifies the transfer whose schedule is to be deleted.  The
 transfer-name parameter is required.

More

 You must execute the DELETE SCHEDULE statement outside of the scope of a
 transaction.  If you issue this statement when a transaction is
 outstanding, Data Distributor returns an error message.

 If a transfer has a schedule definition, DELETE TRANSFER also deletes
 the corresponding schedule definition.  If you want to delete a transfer
 schedule, the schedule definition must be associated with your UIC.

Example

 This example places the NH_EMPLOYEES transfer in a suspended state and
 then deletes the associated schedule.

 RDO> STOP TRANSFER NH_EMPLOYEES
 RDO> DELETE SCHEDULE FOR NH_EMPLOYEES.


DELETE_TRANSFER

 Deletes a transfer definition.  If a transfer has a schedule definition,
 DELETE TRANSFER also deletes the corresponding schedule definition.

Additional information available:

FormatMoreExample

Format

 DELETE TRANSFER ───> transfer-name ────> .





















Additional information available:

transfer-name

transfer-name

 The transfer definition to be deleted.  The transfer-name parameter is
 required.

More

 You must execute the DELETE TRANSFER statement outside of the scope of a
 transaction.  If you issue this statement when a transaction is
 outstanding, Data Distributor returns an error message.

 You can delete a transfer only if the transfer is in the suspended
 state.  Refer to the STOP TRANSFER statement for information about how
 to suspend a transfer.

 When you delete a transfer definition, the associated target database
 does not change in any way.

 If you want to delete a transfer definition, the transfer definition
 must be associated with your UIC.

Example

 The following example suspends the MA_EMPLOYEES transfer and then
 deletes its definition:

 RDO> STOP TRANSFER MA_EMPLOYEES
 RDO> DELETE TRANSFER MA_EMPLOYEES.

DEFINE_TRANSFER

 Creates a transfer definition and stores it in the transfer database.  A
 transfer definition contains all the information necessary to select a
 set of records from the source database and to define a target database.
 A transfer definition also can contain the views to be defined on the
 target database and the command procedures to be executed before and
 after the execution of the transfer.

 A source database for extraction or extraction rollup transfers can be
 any DSRI-compliant database, such as Rdb/VMS or VIDA.  For replication
 transfers, the source database must be an Rdb/VMS database.

Additional information available:

FormatMoreExamples

Format

 DEFINE TRANSFER ──>transfer-name ──┬───> 
R

E

P

L

I

C

A

T

I

O

N
──────────┬──┐ ├───> 
E

X

T

R

A

C

T

I

O

N
───────────┤ │ └───> 
E

X

T

R

A

C

T

I

O

N

R

O

L

L

U

P
────┘ │ ┌───────────────────────────<─────────────────────────────────────┘ └──┬─>───────────────────────────────┬──>
T

O
──> file-spec ─┐ └─> 
D

E

S

C

R

I

P

T

I

O

N
typebox (I)typebox (S) ─> typebox (/)typebox (*) text */ ─┘ │ ┌──────────────────────────────<───────────────────────────┘ └┬─>───────────────────────┬─┬─┬─>─────────────────────────────┬─┬─┐ └─>target-db-param-clause─┘ │ ├─>move-relations-clause────────┤ │ │ │ ├─>move-views-clause ───────────┤ │ │ │ └─>move-relations-rollup-clause─┘ │ │ └─────────────<─────────────────────┘ │ ┌─────────────────────────────────────────────────────────────────┘ └──┬──────────>────────────────────────┬────────────────────────────┐ └──> transfer-file-options-clause ──┘ │ ┌───────────────────────────────<───────────────────────────────────┘ └──> 
E

N

D
───┬───────────────────┬──┬──────────────┬───────> . └─> transfer-name ──┘ └─> 
T

R

A

N

S

F

E

R
──┘ target-db-param-clause = ───┬─┬─>────────────────────────────────────────────────────┬─┬──> │ ├─> 
A

L

L

O

C

A

T

I

O

N
typebox (I)typebox (S) ────────> number-pages ──> typebox (P)typebox (A)typebox (G)typebox (E)typebox (S) ────┤ │ │ ├─> 
P

A

G

E

S

I

Z

E
typebox (I)typebox (S) ───> page-blocks ──────> typebox (B)typebox (L)typebox (O)typebox (C)typebox (K)typebox (S) ──────┤ │ │ ├─> 
N

U

M

B

E

R
typebox (O)F 
B

U

F

F

E

R

S
typebox (I)typebox (S) ──> number-buffers ───────────┤ │ │ ├─> 
N

U

M

B

E

R
typebox (O)F 
U

S

E

R

S
typebox (I)typebox (S) ────> number-users ─────────────┤ │ │ ├─> 
B

U

F

F

E

R

S

I

Z

E
typebox (I)typebox (S) ──> buffer-blocks ───> typebox (B)typebox (L)typebox (O)typebox (C)typebox (K)typebox (S) ──────┤ │ │ ├─> 
E

X

T

E

N

T
typebox (I)typebox (S) ──────────┬─> ext-pages ───> typebox (P)typebox (A)typebox (G)typebox (E)typebox (S) ───┬──┤ │ │ │ └─> (multi-vol-ext-clause) ─┘ │ │ │ ├─> 
S

N

A

P

S

H

O

T
typebox (I)typebox (S) ────┬─> 
E

N

A

B

L

E

D
─┬─> 
I

M

M

E

D

I

A

T

E
──┬─┬───┤ │ │ │ │ └─> 
D

E

F

E

R

R

E

D
──┘ │ │ │ │ │ └─> 
D

I

S

A

B

L

E

D
──────>───────────┘ │ │ │ ├─> 
S

N

A

P

S

H

O

T

A

L

L

O

C

A

T

I

O

N
typebox (I)typebox (S) ─> snp-pages ─> typebox (P)typebox (A)typebox (G)typebox (E)typebox (S) ──────┤ │ │ └─> 
S

N

A

P

S

H

O

T

E

X

T

E

N

T
typebox (I)typebox (S) ─┬> ext-pages ────> typebox (P)typebox (A)typebox (G)typebox (E)typebox (S) ────┬─┘ │ │ └> (multi-vol-ext-clause) ───┘ │ └──────────────────<──────────────────────────<────────────┘ multi-vol-ext-clause = ─────> 
M

I

N

I

M

U

M
typebox (O)F ──> min-pages ───> typebox (P)typebox (A)typebox (G)typebox (E)typebox (S), ─┐ ┌──────────────────────────────────────────┘ └──> 
M

A

X

I

M

U

M
typebox (O)F ──> max-pages ───> typebox (P)typebox (A)typebox (G)typebox (E)typebox (S), ─┐ ┌──────────────────────────────────────────┘ └──> 
P

E

R

C

E

N

T

G

R

O

W

T

H
typebox (I)typebox (S) ───> growth ────> move-relations-clause = ─┬──> 
M

O

V

E

R

E

L

A

T

I

O

N

S

A

L

L
─────────────────>───────────────────┬────> │ │ └─┬─> 
M

O

V

E

R

E

L

A

T

I

O

N
─┬───────────────┬──> rse ──┐ │ │ └─> typebox (/)typebox (*) text */ ─┘ │ │ │ ┌────────────────────────<───────────────┘ │ │ └──────> 
S

E

L

E

C

T

F

I

E

L

D

S
─┬──> 
A

L

L
────────>───────┬──┬─┘ │ └┬─> select-field-name ─┬┘ │ │ └──────── , <──────────┘ │ └──────────────────────── typebox (;) <────────────────────────────┘ rse = ──┬─────────────────┬───> relation-clause ───>────────────────────┐ └─> first-clause ─┘ │ ┌─────────────────────────────────────────────────────────────────┘ └─┬────────────────┬─┬───────────────────┬──┬────────────────┬─────> └─> with-clause ─┘ └─> reduce-clause ──┘ └─> sort-clause ─┘ first-clause = ─────────────────> 
F

I

R

S

T
──────────> value-expr ───────────────> relation clause = ──> context-variable ──> 
I

N
─┬────────────────────┬─> relation-name ──> └─> db-handle ── . ──┘ with-clause = ─────────────> 
W

I

T

H
──────────> conditional-expr ───────────> reduce-clause = ──────────────> 
R

E

D

U

C

E

D

T

O
───┬─────> value-expr ───┬─────> └──────── , <─────────┘ sort-clause = ───> 
S

O

R

T

E

D

B

Y
──┬─┬──────────────────┬─────> value-expr ───┬───> │ ├──> 
A

S

C

E

N

D

I

N

G
────┤ │ │ └──> 
D

E

S

C

E

N

D

I

N

G
───┘ │ └────────────────────── , <────────────────┘ conditional-expr = ─┬───> conditional-expr ──> 
A

N

D
──> conditional-expr ───┬───> ├───> conditional-expr ──> 
O

R
───> conditional-expr ───┤ ├────────────────────────> 
N

O

T
──> conditional-expr ───┤ ├───> value-expr1 ──> rel-oper ──> value-expr2 ────────┤ ├───> between-clause ──────────────────────────────────┤ ├───> containing-clause ───────────────────────────────┤ ├───> matching-clause ─────────────────────────────────┤ ├───> starting-with-clause ────────────────────────────┤ └───> missing-clause ──────────────────────────────────┘ value-expr = ───────┬────> database-field ──────┬──> ├────> quoted-string ───────┤ ├────> numeric-literal ─────┤ ├────> arithmetic-expr ─────┤ ├────> missing-value ───────┤ ├────> concat-expr ─────────┤ ├────> ( value-expr ) ──────┤ └────> - ──> value-expr ───┘ move-views-clause = ────> 
M

O

V

E

V

I

E

W

S
──┬──> 
A

L

L
───────────┬───> └┬─> view-name ──┬──┘ └────── , <──────┘ .! ddal-11 move-relations-rollup-clause = ─┬─ 
M

O

V

E

R

E

L

A

T

I

O

N
──────────┬─────────────────┬─> rse ────┬─────────┬──> │ └─> typebox (/) typebox (*)text*/─────┘ │ │ │ ┌─────────────────────────────────<─────────────────┘ │ │ └──┬──────────────────────────────>───────────┬─────┐ │ │ └─> 
I

N

T

O

R

E

L

A

T

I

O

N
────> relation-name ─────┘ │ │ │ ┌─────────────────────────────────<─────────────────┘ │ │ └─> 
S

E

L

E

C

T

F

I

E

L

D

S
──┬──> select-field-name ─────────┬───────┬─┘ │ └────────── , <─────────────────┘ │ └─────────────────────────────────── typebox (;) <─────────────────────────┘ select-field-name = ────────> context-variable ──> . ───> field-name ─────> transfer-file-options-clause ─┬─┬─────────────────────────>───────────────────────────┬───────> │ ├──> 
P

R

O

L

O

G

U

E
Ftypebox (I)typebox (L)typebox (E) typebox (I)typebox (S) ────> prologue-file-spec ───────┤ │ ├──> 
N

O

P

R

O

L

O

G

U

E
──────────>───────────────────────────┤ │ ├──> 
E

P

I

L

O

G

U

E
Ftypebox (I)typebox (L)typebox (E) typebox (I)typebox (S) ────> epilogue-file-spec ───────┤ │ ├──> 
N

O

E

P

I

L

O

G

U

E
──────────>───────────────────────────┤ │ ├──> 
L

O

G
Ftypebox (I)typebox (L)typebox (E) typebox (I)typebox (S) ─────────> log-file-spec ────────────┤ │ └──> 
N

O

L

O

G
───────────────>───────────────────────────┤ └───────────────────────────<───────────────────────────┘

Additional information available:

REPLICATIONEXTRACTIONEXTRACTION_ROLLUPENABLED_IMMEDIATE
ENABLED_DEFERREDDISABLEDMOVE_RELATIONS_ALLASCENDING
DESCENDINGSELECT_FIELDS_ALL

transfer-namefile-spectexttarget-db-param-clausenumber-pages
page-blocksnumber-buffersnumber-usersbuffer-blockssnp-pagesext-pages
min-pagesmax-pagesgrowthmove-relations-clausersefirst-clause
relation-clausecontext-variabledb-handlewith-clauseconditional-expr
reduce-clausesort-clausevalue-exprselect-field-namemove-views-clause
view-namemove-relations-rollup-clausetransfer-file-options-clauseprologue-file-spec
epilogue-file-speclog-file-spec

transfer-name

 The name that identifies the transfer.  The transfer name must be
 unique among the set of all transfers defined in the transfer
 database.  Because a single transfer database serves all source
 databases on a node or VAXcluster, the transfer name must be unique
 across all source databases at a given site.

 The transfer-name parameter is required.

REPLICATION

 Specifies that Data Distributor create a replication database at the
 target site.  When a replication transfer executes, Data Distributor
 creates a database at the target site during the initial execution
 and maintains a connection to that target database so the source can
 supply updates to the target.  Subsequent transfers involve only
 those modifications that have been made to the selected records in
 the source database.  (If the target and source database should
 become inconsistent with each other, you can use the REINITIALIZE
 TRANSFER statement to restore consistency.)

 In addition, the execution of a replication transfer generally
 creates special-purpose relations in the source database and the
 target database to handle updating.  Because the source database is
 modified with the addition of these system relations, the transfer
 definer's account needs the DEFINE access right to the source
 database itself.

 Users are expected to access the replication target database only to
 retrieve data.  Applications should not attempt to store, modify, or
 erase values in records of the replication database.  Although data
 values should not be manipulated in a replication database, you can
 modify the target database by defining views and indexes, and adding
 access rights.

EXTRACTION

 Specifies that Data Distributor create an extraction database at the
 target site.  Because each extraction database is independent of the
 source database, users at the target directory can access extraction
 databases with READ_WRITE as well as READ_ONLY transactions.  Each
 time an extraction mode transfer executes, Data Distributor creates a
 new version of the target database and transfers a complete copy of
 the selected records to the target node.

 Indexes, constraints, and access rights are not transferred when the
 target database is created.  Once the target database has been
 created, you can define indexes and constraints for it and modify the
 access rights.

EXTRACTION_ROLLUP

 Specifies that Data Distributor create an extraction rollup database
 at the target site by transferring selected relations and fields from
 one or more source databases into a single target database.  An
 extraction rollup database is defined at the target site, and Data
 Distributor pulls data from the source databases into the target.

 Each time an extraction rollup transfer is executed, Data Distributor
 creates a new version of the target database and transfers a complete
 copy of the selected records to the target node.

 The EXTRACTION ROLLUP option in the DEFINE TRANSFER statement has the
 following characteristics and limitations:

  o  All extraction rollup transfers are pull transfers; that is, you
     define the extraction transfer at the target site to transfer
     data from a number of remote source databases to a single target
     database.
  o  Data Distributor issues an error message if you do not enter a
     MOVE RELATION clause or a SELECT FIELDS list in a
     move-relations-rollup-clause.
  o  You must refer to each source database in the DEFINE TRANSFER
     statement by its database handle.
  o  On the target database, relation names and field names must be
     unique.  Consequently, all target relations of the same name must
     have the same definition, and all target fields of the same name
     must have the same datatype.  If the definitions or datatypes
     differ, Data Distributor issues an error message and the transfer
     fails.
  o  If any database specified in the transfer definition is on a node
     that is not available, Data Distributor places the transfer in a
     waiting-to-retry state.  Data Distributor will retry the transfer
     at the time specified for retry in the schedule definition.
  o  If any of the source nodes specified in the transfer definition
     fail during the transfer, the transfer will also fail.  Data
     Distributor will retry the transfer at the time specified for
     retry in the schedule definition.
  o  If the transfer fails, the retry will start at the beginning, not
     where the transfer left off.


 Indexes, constraints, and access rights are not transferred when the
 target database is created.  Once the target database has been
 created, you can define indexes and constraints for it and modify the
 access rights.

file-spec

 Designates a file specification for the target database.  The target
 database is an Rdb/VMS database.  Data Distributor uses the file
 specification to create and access the target database.  You can use
 either a full or partial file specification or a logical name.  The
 file-spec parameter is required.  If you do not specify the node,
 device, or directory, Data Distributor assumes the SYS$LOGIN of the
 user defining the transfer.  If the file type is not .RDB, the
 transfer will fail during the creation of the target database.  The
 default file type is .RDB.

 When you specify the name of a remote node as part of the file
 specification, you can include an access control list (ACL) for
 login.  However, the most effective method of allowing access to a
 target node uses proxy accounts.

 Note that the file specification is resolved at run time.  All
 logical names used for the file-spec parameter are resolved within
 the copy process after it executes the transfer definer's login
 initialization file, LOGIN.COM.  If the target database name is a
 logical symbol name, when it is translated, the default directory is
 the one pointed to by SYS$LOGIN.

 Data Distributor makes no attempt to verify whether a database or
 file of the same name already exists in the target directory.  When
 you issue a duplicate file specification, Data Distributor creates a
 second file with the same name, but a higher version number.

 If the database system (Rdb/VMS) returns an error while attempting to
 create a database in the target directory, the copy process writes
 the error in the copy process log file and returns the error status
 to the transfer monitor.

text

 A text string that allows you to associate a comment with the
 transfer definition.  The text string, together with other parts of
 the transfer definition, appears in the SHOW TRANSFER DEFINITION
 display.  The DESCRIPTION IS clause is optional.

target-db-param-clause

 Enables you to specify values for the parameters that affect the
 creation of the target database.  This clause uses syntax similar to
 the Rdb/VMS DEFINE DATABASE statement.  However, Data Distributor
 does not support all the parameters that DEFINE DATABASE supports.
 Data Distributor uses the values provided in this clause to create
 the target database.

number-pages

 The number of database pages initially allocated to the target
 database.  Rdb/VMS automatically extends the allocation to handle the
 loading of data and subsequent expansion.  The default is 400 pages.

page-blocks

 The size in blocks of each database page in the target directory.
 Page size is allocated in 512-byte blocks.  The default is two blocks
 (1024 bytes).  If your largest record has more than approximately 950
 bytes, you can specify more blocks for each page to prevent records
 from being fragmented.

number-buffers

 The number of buffers Rdb/VMS allocates for each process using the
 target database.  The value must be greater than zero.  The default
 is 20 buffers.

number-users

 The maximum number of users allowed to access the target database at
 one time.  The default is 50 users.  After the maximum is reached,
 the next user who tries to invoke the database receives an error
 message and must wait for access.  The largest number of users you
 can specify is 508 and the smallest is 1.

buffer-blocks

 The number of blocks Rdb/VMS allocates for each buffer.  The value
 must be greater than zero.  If you do not specify this parameter,
 Rdb/VMS uses a buffer size that is three times the page size value.

ENABLED_IMMEDIATE

 Specifies that READ_WRITE transactions write previously updated
 copies of records they modify to the snapshot file, regardless of
 whether a READ_ONLY transaction is active.  Snapshot writing is
 enabled immediately by default.  With snapshots enabled, users or
 applications can read from either the snapshot file or the database
 file itself.

ENABLED_DEFERRED

 Specifies that READ_WRITE transactions not write previously updated
 copies of records they modify to the snapshot file unless a READ_ONLY
 transaction is already active.  READ_ONLY transactions that attempt
 to start after an active READ_WRITE transaction must wait for all
 active READ_WRITE users to complete their transactions.  With
 snapshots enabled, users or applications can read from either the
 snapshot file or the database file itself.

DISABLED

 Specifies that snapshot writing be disabled.  There is usually some
 performance gain when snapshot writing is disabled because Rdb/VMS
 does not need to perform write operations to the snapshot file during
 updates to the database.

 You should not disable snapshots for replication databases.  Although
 users are expected only to retrieve data from the replication
 database, retrieval can occur in either READ_ONLY or READ_WRITE
 transactions.

snp-pages

 The number of pages allocated for the snapshot file.  The default is
 100 pages.  After the target database has been created, you can use
 the RDO CHANGE DATABASE statement to truncate the snapshot file.  To
 truncate the file, specify an allocation size smaller than the
 current snapshot file size.

ext-pages

 The number of pages of each target database extent.  This parameter
 provides direct control over the extent of the target database.  For
 greater control, and particularly for multivolume databases, use the
 MINIMUM, MAXIMUM, and PERCENT GROWTH parameters of the
 multi-vol-ext-clause instead.  The default extent is 100 pages.

min-pages

 The minimum number of pages of each target database extent.  The
 default is 100 pages.

max-pages

 The maximum number of pages of each target database extent.  The
 default is 10,000 pages.

growth

 The percent of growth for each target database extent.  The default
 is 20 percent growth.

move-relations-clause

 Selects the records Data Distributor transfers to the target database
 during an extraction or a replication transfer.  The records selected
 for replications are specified with a restricted form of a record
 selection expression (RSE).  You must specify a move-relations-clause
 for each user relation moved to the target database.  If you do not
 include a move-relations-clause, Data Distributor assumes the
 default, MOVE RELATIONS ALL.

 When you specify a view in a MOVE RELATION clause, the records
 selected by that view are created as a relation in the target
 database.  You can also transfer views using the move-views-clause.

 You must have READ privilege for the relations of an Rdb/VMS source
 database that you specify in a MOVE RELATION clause or a MOVE
 RELATIONS ALL clause.  For VIDA databases, Data Distributor does not
 check for READ privilege for views.

MOVE_RELATIONS_ALL

 Allows you to have Data Distributor select all records and fields
 from all user relations, excluding views, that are in the source
 database at the time the transfer is defined.  If you wish to move
 views, you must use the move-views-clause or the MOVE RELATION
 clause.  Fields defined with a COMPUTED_BY clause are restricted to
 those that use the value expressions shown in the value-expr syntax
 diagram in this section.  If a field is not defined by a supported
 value expression, you will receive a warning message, and the
 COMPUTED_BY fields will not be transferred.

 If you define a transfer on a source database that is itself a target
 extraction database, do not use the MOVE RELATIONS ALL clause.  An
 error will result during transfer execution because Data Distributor
 will attempt to define the DDAL$VINTAGE relation in the new target
 database twice.  The second transfer would create a DDAL$VINTAGE
 relation in the target database.  Then, using the MOVE RELATIONS ALL
 clause, it would attempt to copy the DDAL$VINTAGE relation that
 already exists in the source database.  To avoid this error, specify
 explicitly each relation to be moved instead of using MOVE RELATIONS
 ALL.

 Do not use the MOVE RELATIONS ALL statement for an extraction rollup
 transfer.  If you use the MOVE RELATIONS ALL statement to define an
 extraction rollup transfer, the transfer will fail on execution.
 Instead, you must name the individual relations you want to transfer
 to the extraction rollup target.

rse

 The record selection expression (RSE) used to identify records from
 the source database that Data Distributor includes in a record stream
 and transfers to the target database.  The RSE specifies conditions
 that individual records must satisfy in order to be included in the
 transfer to the target database.

 Data Distributor supports COMPUTED_BY fields named in an RSE if the
 fields are defined using the value expressions shown in the
 value-expr syntax diagram in this section.  If the fields are not
 defined by a supported value expression, you will receive a fatal
 error message.

 In extraction, extraction rollup, and replication transfers, you can
 use a relation-clause and with-clause.  In extraction and extraction
 rollup transfers, you can also use a first-clause, reduce-clause, and
 sort-clause.

first-clause

 Specifies how many records are selected from the record stream formed
 by the record selection expression (RSE).  You can only use the
 first-clause for an extraction or an extraction rollup transfer.  If
 you specify a first-clause for a replication transfer, Data
 Distributor issues an error message.

relation-clause

 The context variables and relations to be included in the record
 stream or loop.

 If you specify a view name in the relation-clause, the moved view
 becomes a relation in the target database.

context-variable

 Supplies a temporary name to identify the record stream.  Once you
 have associated a context-variable with a relation, you use the
 context-variable to refer to fields from that relation.

db-handle

 A host variable or name used to refer to a specific database you have
 invoked.

 In extraction or replication transfers, you should not use database
 handles in the RSE of a MOVE RELATION clause.  Data Distributor
 returns an error message if you include a database handle in the RSE.
 However, in an extraction rollup transfer, you must use database
 handles in the RSE to specify the relation or Data Distributor will
 return an error message.

with-clause

 Contains a conditional expression that allows you to specify
 conditions that must be true for a record to be included in a record
 stream.

conditional-expr

 Conditions that must be true for a record to be included in a record
 stream.

reduce-clause

 Allows you to eliminate duplicate values for fields in a record
 stream.  You can use the reduce-clause for an extraction or an
 extraction rollup transfer.  If you specify a reduce-clause for a
 replication transfer, Data Distributor issues an error message.

sort-clause

 Allows you to sort the records in the record stream by the values of
 specific fields.  You can sort the records according to a value
 expression called a sort key.  The sort key determines the order of
 the records in the record stream.  You can use the sort-clause for an
 extraction or an extraction rollup transfer.  If you specify a
 sort-clause for a replication transfer, Data Distributor issues an
 error message.

ASCENDING

 Specifies that the records be sorted in ascending order.  The default
 is ASCENDING.

DESCENDING

 Specifies that Rdb/VMS sort the records in descending order.

value-expr

 A value expression specifying the sort value.  This value is called
 the sort key.

  o  database-field
  o  quoted-string
  o  numeric-literal
  o  arithmetic-expr
  o  missing-value
  o  concat-expr

select-field-name

 Allows you to name a specific field or group of fields you want moved
 to the target database.  You can specify only one SELECT clause for
 each MOVE clause.  Data Distributor moves only the named fields to
 the target database.  If you do not specify SELECT FIELDS ALL, the
 select-field-name clause is required.

 Data Distributor supports COMPUTED_BY fields named in the
 select-field-name clause if the fields are defined using the value
 expressions shown in the value-expr syntax diagram in this section.
 If the fields are not defined by a supported value expression, you
 will receive a fatal error message.

SELECT_FIELDS_ALL

 Enables you to include every field in a specific relation.  Fields
 defined with a COMPUTED_BY clause are restricted to those that use
 the value expressions shown in the value-expr syntax diagram in this
 section.  If a field is not defined by a supported value expression,
 you will receive a warning message, and the COMPUTED_BY fields will
 not be transferred.  You cannot use the SELECT FIELDS ALL statement
 for an extraction rollup transfer.

move-views-clause

 Selects the views Data Distributor defines on the target database
 during an extraction or a replication transfer.  All the relations,
 views, and fields on which the transferred views are based must also
 be explicitly or implicitly named in the DEFINE TRANSFER statement.
 The transfer definition will fail if any underlying relation, view,
 or field is not named when you define the transfer.

 If you specify a view name in this clause, the view definition is
 transferred to the target database.  You can include only one
 move-views-clause in a DEFINE TRANSFER statement.  However, you can
 specify two or more views in that move-views-clause.

 Transferring views is limited by the following restrictions:


  o  COMPUTED_BY fields

     Data Distributor transfers those COMPUTED_BY fields that depend
     only on the values of the relation in which the field is defined.
     Views that contain unsupported COMPUTED_BY fields cannot be
     transferred.  If views that contain unsupported COMPUTED_BY
     fields are specified in the move-views-clause of a DEFINE
     TRANSFER statement, the transfer definition fails.  You need to
     redefine the transfer, excluding the views that refer to the
     unsupported COMPUTED_BY fields.

  o  READ privilege for the view

     For a view in an Rdb/VMS database to be transferred, Data
     Distributor requires that you have Rdb/VMS READ privilege for the
     view and for the underlying relations.  If you do not have READ
     privilege for views you specify in the move-views-clause of a
     DEFINE TRANSFER statement, the transfer will fail.  You need to
     obtain READ privilege for these views before including them in a
     DEFINE TRANSFER statement.

     For VIDA databases, Data Distributor does not check for READ
     privilege for views.


 You can also move views with the move-relations-clause.  However,
 when you use the move-relations-clause to move a view, the view
 becomes a relation in the target database.

view-name

 The name of the view Data Distributor transfers to the target during
 a transfer.  If you do not specify a view name, Data Distributor
 assumes the default, MOVE VIEWS ALL.

move-relations-rollup-clause

 Selects the records Data Distributor transfers into the target
 database from a number of source databases during an extraction
 rollup transfer.  The move-relations-rollup-clause has the following
 restrictions:

  o  Data Distributor requires you to invoke each source database with
     a different database handle.  You must then use these handles in
     the move-relations-rollup-clause.
  o  The move-relations-rollup-clause must be used with the EXTRACTION
     ROLLUP parameter.

     Rollup transfers must be extractions.  If you attempt to use the
     move-relations-rollup-clause with a replication transfer, the
     transfer definition will fail.
  o  The MOVE RELATIONS ALL and SELECT FIELDS ALL clauses are not
     allowed in rollup transfers.

transfer-file-options-clause

 The DCL command procedures to be executed before or after transfers
 and the VMS file where logging information related to the transfer
 execution is located.

prologue-file-spec

 The name of the prologue command procedure file to be run before the
 transfer executes.  This file runs at the beginning of the first
 execution of the transfer and of all subsequent transfers.  The
 prologue file is a DCL command file.  You can include a version
 number and a remote node name in the file specification.  The name is
 resolved when the transfer is defined.

 The prologue-file-spec parameter is optional.  If you do not include
 this parameter, Data Distributor assumes that NOPROLOGUE is in
 effect.  The default file type is .COM.  The default directory for
 the prologue file is SYS$LOGIN.

epilogue-file-spec

 The name of the epilogue command procedure file to be run after the
 transfer executes.  This file runs after the first execution of the
 transfer and after all subsequent transfers.  The epilogue file is a
 DCL command file.  You can include a version number or a remote node
 name in the file specification.  The name is resolved when the
 transfer is defined.

 The epilogue-file-spec parameter is optional.  If you do not include
 this parameter, Data Distributor assumes that NOEPILOGUE is in
 effect.  The default file type is .COM.  The default directory for
 the epilogue file is SYS$LOGIN.

log-file-spec

 The VMS file where the Data Distributor copy process writes any
 logging information related to the execution of the transfer.  If you
 include a version number or a node name in the file specification,
 Data Distributor returns an error.  Data Distributor creates a new
 log file every time a transfer executes.  The name is resolved when
 the transfer is defined.

 The log-file-spec parameter is optional.  If you do not include this
 parameter, Data Distributor assumes that NOLOG is in effect.  The
 default file type is .LOG.  The default directory for the log file is
 SYS$LOGIN.

More

 You must execute the DEFINE TRANSFER statement outside of the scope
 of a transaction.  If you issue this statement when a transaction is
 outstanding, Data Distributor returns an error message.

 You must have READ privilege for the relations and views of an
 Rdb/VMS source database that you specify in a DEFINE TRANSFER
 statement.  Data Distributor returns an error message when you
 specify relations and views in a DEFINE TRANSFER statement for which
 you do not have READ privilege.  If you specify a VIDA database, Data
 Distributor does not check for READ privilege for the relations and
 views.

 You can refer to relations, fields, and views in a DEFINE TRANSFER
 statement either implicitly or explicitly.  When you include either
 the MOVE RELATIONS ALL, SELECT FIELDS ALL, or MOVE VIEWS ALL clause,
 you refer to relations, fields, or views implicitly.  Data
 Distributor uses the current definitions of the relations, fields,
 and views in the source database and stores those names explicitly in
 the transfer definition.  You refer to relations, fields, and views
 explicitly when you include the MOVE RELATION, SELECT FIELDS, or MOVE
 VIEWS clauses and supply specific relation, field, or view names.

 Data Distributor transfers those COMPUTED_BY fields that depend only
 on the values of a relation in which the field is defined.  You
 cannot transfer views that contain unsupported COMPUTED_BY fields.
 If views that contain unsupported COMPUTED_BY fields are specified in
 the move-views-clause of a DEFINE TRANSFER statement, the transfer
 definition fails.  You need to redefine the transfer, excluding the
 views that refer to the unsupported COMPUTED_BY fields.

 Data Distributor allows you to transfer views in two ways:

  o  Using the move-views-clause

     Data Distributor transfers the definition of the view when you
     specify MOVE VIEWS view-name or MOVE VIEWS ALL.  You must also
     explicitly or implicitly name in the DEFINE TRANSFER statement
     all the relations, views, or fields on which the transferred view
     definitions are based.  The transfer will fail if any underlying
     relations, views, or fields are not named.
  o  Using the move-relations-clause

     Data Distributor transfers a view by creating a relation in the
     target database containing the view's records when you use the
     MOVE RELATION clause.  This method improves query performance in
     the target database.  For example, you can achieve the effect of
     a CROSS clause by transferring a view that is a CROSS in the
     source.


 You specify the relations you wish to move in the
 move-relations-clause and the views in the move-views-clause of the
 DEFINE TRANSFER statement.  When you are doing an extraction rollup
 transfer, you specify the relations you wish to move in the
 move-relations-rollup-clause of the DEFINE TRANSFER statement.

 The same clause can occur in a DEFINE TRANSFER statement no more than
 once.  You cannot specify the same relation or view more than once in
 the move clauses.  If a relation name or view name appears in more
 than one move clause, Data Distributor returns an error.

 Individual move-relations clauses are separated by semicolons, as
 indicated in the syntax diagrams.  You can implement the
 move-relations-clause in two ways:

  o  Specify MOVE RELATIONS ALL
  o  Specify a series of relations separated by semicolons


 The move-relations-clause has the following characteristics and
 limitations:

  o  All fields in each move-relations-clause must reside in the same
     relation.
  o  You cannot name the same relation in more than one MOVE clause of
     a single transfer definition.


 The move-relations-rollup-clause has the following characteristics
 and limitations:

  o  All fields in each move-relations-rollup-clause must reside in
     the same relation.
  o  You cannot name the same relation in more than one MOVE clause of
     a single transfer definition.
  o  For each relation of a move-relations-rollup-clause that you
     enter, you can supply a target relation specification in the form
     of an INTO RELATION clause.  You can create one or many relations
     in the target database from several source database relations by
     renaming the target relations in the transfer definition.
  o  You cannot specify MOVE RELATIONS ALL or SELECT FIELDS ALL in a
     move-relations-rollup-clause.  When you specify these clauses in
     the DEFINE TRANSFER statement, the transfer will fail at the time
     of definition.


 If a transfer fails during execution, the transfer will begin again
 at one of the two following times:

  o  The next scheduled retry time if the failure results from a
     nonfatal error
  o  The next scheduled transfer time if the failure results from a
     fatal error


 This next transfer will start from the beginning to ensure
 consistency with any updates that might have been made to the source
 database.

 Data Distributor transfers only definitions for the database, fields,
 and relations specified in the transfer definition.  If the source
 database includes additional database entities such as indexes,
 constraints, or access control lists, these are not transferred to
 the target database.  You must either directly access the individual
 target database and explicitly define these entities or run command
 procedures to define the entities after the transfer executes.

 When relations specified in the transfer definition are created in
 the target database, they are given the access control lists (ACLs)
 that have the Rdb/VMS default values.  You can change the ACLs in the
 target database after it has been created.

 In a transfer definition, you can use logical symbol names to name
 the source database file, the target database file, the copy process
 log file, and the prologue and the epilogue command procedure files.
 However, Data Distributor treats these file names differently:

  o  Source database file logical names

     If the source file name is a logical symbol that translates to a
     standard VMS file name specification, Data Distributor performs
     the logical name translation.  The SHOW TRANSFER DEFINITION
     statement shows the source file name in its translated form.  The
     logical symbol can also translate into strings that, in turn,
     contain logical symbols.  As long as the resulting string looks
     like a VMS file specification and the logical symbol is not a
     concealed device name, the translation process is repeated.

     If the logical symbol translates into a VIDA access string (for
     example, /TYPE=VIDA/FILE=ACCESS_FILE/...), Data Distributor does
     no further translations.  Even if the VIDA name string contains
     logical symbol references, these references are not translated
     into VMS file specifications.  You can use a logical name in
     place of the string to identify a VIDA database.

  o  Target database file logical name

     If the target database name is a logical name, it is not
     translated by Data Distributor when it is stored in the transfer
     definition.

  o  Copy process log file logical name

     Data Distributor translates the log file logical name in the same
     way as source file logical names, with the following exceptions:

      o  The log file specification is translated in RDO when the
         DEFINE TRANSFER statement is executed.

      o  These log file names must be standard VMS file
         specifications.  Node names or version numbers are not
         allowed.


  o  Prologue and epilogue command procedure file logical names

     Data Distributor translates the prologue and epilogue file
     logical names in the same way as the source file logical name,
     with the following exceptions:

      o  The prologue and epilogue file specifications are translated
         in RDO when the DEFINE TRANSFER statement is executed.

      o  The log file names must be standard VMS file specifications.
         Node names and version numbers are allowed.


Examples

 Example 1

 The following example defines a transfer, NH_EMPLOYEES, that creates
 an extraction database.  The transfer definition selects New
 Hampshire employees' address records for transfer to the remote node.

 RDO> INVOKE DATABASE FILENAME PERSONNEL
 RDO> DEFINE TRANSFER NH_EMPLOYEES EXTRACTION
 cont>  DESCRIPTION IS /* Employees who live in New Hampshire */
 cont>  TO NODE1::DISK1:[ADAMS]NH_EMP
 cont>  MOVE RELATION E IN EMPLOYEES WITH E.STATE = "NH"
 cont>  SELECT FIELDS E.EMPLOYEE_ID,
 cont>     E.LAST_NAME,
 cont>     E.FIRST_NAME,
 cont>     E.MIDDLE_INITIAL,
 cont>     E.ADDRESS_DATA_1,
 cont>     E.ADDRESS_DATA_2,
 cont>     E.CITY,
 cont>     E.STATE,
 cont>     E.POSTAL_CODE
 cont>  LOG IS NH_EMPLOYEES.LOG
 cont>  END.


 Example 2

 This example shows an extraction from a remote source database to a
 local target database.  The DEFINE TRANSFER statement specifies the
 transfer of all personnel records to the target node.

 RDO> INVOKE DATABASE FILENAME NODE1::DISK1:[DIR1]PERSONNEL
 RDO> DEFINE TRANSFER PERS_EXAMP EXTRACTION
 cont>  DESCRIPTION IS /* Extraction of personnel records*/
 cont>  TO [LEARNER.PERS]PERS_COPY
 cont>  MOVE RELATIONS ALL
 cont>  LOG IS [LEARNER.PERS]PERS_EXAMP.LOG
 cont>  END.


 Example 3

 This example shows an extraction transfer from a remote source to a
 remote target database.  The log file, PERS_EXAMP.LOG, is located on
 the source node.

 RDO> INVOKE DATABASE FILENAME NODE1::DISK1:[DIR1]PERSONNEL
 RDO> DEFINE TRANSFER PERS_EXAMP EXTRACTION
 cont>  DESCRIPTION IS /* Extraction of personnel records*/
 cont>  TO NODE2::DISK2:[PROTO]PERS_TARGET
 cont>  MOVE RELATIONS ALL
 cont>  LOG IS PERS_EXAMP.LOG
 cont>  END.


 Example 4

 This example of a replication transfer definition sends the entire
 colleges relation and the entire degrees relation to the target
 database.  The replication database can be accessed for information
 about employees' college and degree histories.  The transfer
 definition includes some database parameters for the target database.

 RDO> INVOKE DATABASE FILENAME PERSONNEL
 RDO> DEFINE TRANSFER COLLEGE_INFO REPLICATION
 cont>  DESCRIPTION IS /* Info about employees' colleges only */
 cont>  TO NODE1::DISK1:[BURTON]EMP_COLLEGE
 cont>  NUMBER OF USERS IS 25
 cont>  SNAPSHOT ALLOCATION IS 150 PAGES
 cont>  MOVE RELATION C IN COLLEGES
 cont>  SELECT FIELDS ALL;
 cont>  MOVE RELATION D IN DEGREES
 cont>  SELECT FIELDS ALL
 cont>  LOG IS COLLEGE_INFO.LOG
 cont>  END.


 Example 5

 This replication transfer specifies three fields from the
 CREDIT_CARDS source database for transfer to the target database.
 The fields are CARD_NUM, EXPIRATION_DATE, and VALID.  Only invalid
 credit card records are selected for the transfer.

 RDO> INVOKE DATABASE FILENAME CREDIT_CARDS
 RDO> DEFINE TRANSFER BAD_CARDS REPLICATION
 cont>  DESCRIPTION IS /* Invalid credit cards */
 cont>  TO NODE1::DISK1:[CREDIT]BAD_CARDS
 cont>  MOVE RELATION C IN CARDS WITH C.VALID = "N"
 cont>  SELECT FIELDS C.CARD_NUM,
 cont>     C.EXPIRATION_DATE,
 cont>     C.VALID
 cont>  LOG IS BAD_CARDS.LOG
 cont>  END.


 Example 6

 The following example defines a replication transfer that sends the
 entire EMPLOYEES, JOB_HISTORY, SALARY_HISTORY, DEPARTMENTS, and JOBS
 relations.  The definition also selects three views for transfer:
 CURRENT_INFO, CURRENT_JOB, and CURRENT_SALARY.

 RDO> INVOKE DATABASE FILENAME PERSONNEL
 RDO> DEFINE TRANSFER NH_PERSONNEL REPLICATION
 cont> TO NODE1::DISK1:[DBADMIN]NHP.RDB
 cont>   MOVE RELATION E IN EMPLOYEES        SELECT FIELDS ALL;
 cont>   MOVE RELATION JH IN JOB_HISTORY     SELECT FIELDS ALL;
 cont>   MOVE RELATION SH IN SALARY_HISTORY  SELECT FIELDS ALL;
 cont>   MOVE RELATION D IN DEPARTMENTS      SELECT FIELDS ALL;
 cont>   MOVE RELATION J IN JOBS             SELECT FIELDS ALL
 cont>   MOVE VIEWS CURRENT_INFO, CURRENT_JOB, CURRENT_SALARY
 cont> LOG FILE IS DISK1:[DBADMIN]NHP.LOG
 cont> END.


 Example 7

 The following example moves the CURRENT_JOB view defined in the
 source database as a CROSS of the EMPLOYEES relation and the
 JOB_HISTORY relation.  You can achieve the effect of a CROSS clause
 by transferring a view that is a CROSS in the source database.  On
 the target database, the records selected by the view are created as
 a relation.

 RDO> INVOKE DATABASE FILENAME PERSONNEL
 RDO> DEFINE TRANSFER CJOB EXTRACTION
 cont>  TO NODE1::DISK1:[RAMESH]JOB_DB
 cont>  MOVE RELATION C IN CURRENT_JOB WITH C.JOB_CODE = "SEII"
 cont>     SELECT FIELDS C.LAST_NAME, C.FIRST_NAME, C.ADDRESS
 cont>  LOG FILE IS CJOB.LOG
 cont>  END TRANSFER.



 Example 8

 The following example shows an extraction rollup transfer that
 invokes several source databases:  PERSONNEL, WORKERS, and STAFF.
 The transfer selects fields in the EMPLOYEES relations from the three
 databases identified by the database handles DB1, DB2, and DB3 and
 located on three different nodes and in the JOBS relation from DB1.
 Then the transfer moves these relations to a single target database,
 LOCAL_DB.

 RDO> INVOKE DATABASE DB1=FILENAME "NODE1::DISK1:[DIR1]PERSONNEL"
 RDO> INVOKE DATABASE DB2=FILENAME "NODE2::DISK2:[DIR2]WORKERS"
 RDO> INVOKE DATABASE DB3=FILENAME "NODE3::DISK3:[DIR1]STAFF"
 RDO> DEFINE TRANSFER LABOR EXTRACTION ROLLUP
 cont>  TO NODE4::DISK4:[DIR4]LOCAL_DB
 cont>  MOVE RELATION E IN DB1.EMPLOYEES WITH E.EMP_CODE= "A+"
 cont>    INTO RELATION EXEMPT_EMPLOYEES
 cont>      SELECT FIELDS E.EMP.ID,E.SALARY,E.JOB_CODE;
 cont>  MOVE RELATION E IN DB2.EMPLOYEES WITH E.EMP_CODE= "A+"
 cont>    INTO RELATION EXEMPT_EMPLOYEES
 cont>      SELECT FIELDS E.EMP_ID,E.SALARY,E.JOB_CODE;
 cont>  MOVE RELATION E IN DB3.EMPLOYEES WITH E.EMP_CODE= "A+"
 cont>    INTO RELATION EXEMPT_EMPLOYEES
 cont>      SELECT FIELDS E.EMP.ID,E.SALARY,E.JOB_CODE;
 cont>  MOVE RELATION J IN DB1.JOBS WITH J.JOB_CODE= "J17"
 cont>    INTO RELATION ENTRY_JOBS
 cont>      SELECT FIELDS J.JOB_NAME,J.JOB_CODE
 cont>  LOG FILE IS DISK4:[DIR4]LOCAL.LOG
 cont>  END.


 Example 9

 The following EMPLOYEES transfer creates an extraction database.  The
 transfer selects records using a first-clause, with-clause,
 reduce-clause, and sort-clause.

 RDO> INVOKE DATABASE FILENAME PERSONNEL
 RDO> DEFINE TRANSFER EMPLOYEES EXTRACTION
 cont>   TO NODE1::DISK1:[NELSON]EMPLOYEES_INFO
 cont>   MOVE RELATION FIRST 10 E IN EMPLOYEES
 cont>     WITH E.CITY = "BOSTON"
 cont>     REDUCED TO E.LAST_NAME, E.FIRST_NAME, E.ADDRESS
 cont>     SORTED BY DESCENDING E.LAST_NAME
 cont>   SELECT FIELDS E.LAST_NAME, E.FIRST_NAME, E.ADDRESS
 cont> LOG FILE IS DISK1:[NELSON]EMPLOYEES.LOG
 cont> END TRANSFER.



 Example 10

 The following extraction transfer includes two command files.  The
 prologue command procedure establishes a connection to a remote node,
 and the epilogue command procedure terminates the connection.  This
 example shows how to specify the prologue file and epilogue file; it
 does not show the command procedures.

 RDO> INVOKE DATABASE FILENAME NODE1::DISK1:[DBADMIN.PERS]PERSONNEL
 RDO> DEFINE TRANSFER PERS_SAMPLE EXTRACTION
 cont>  TO PERS_COPY
 cont>  MOVE RELATIONS ALL
 cont>  PROLOGUE FILE IS DIALUP.COM
 cont>  EPILOGUE FILE IS HANGUP.COM
 cont>  LOG IS PERS_SAMPLE.LOG
 cont>  END.


DEFINE_SCHEDULE

 Creates a schedule definition and stores it in the transfer database.
 The schedule definition specifies when and how often a transfer
 should execute.  A transfer can have only one schedule definition
 associated with it.  Data Distributor returns an error if you attempt
 to define a schedule for a transfer that already has one.

Additional information available:

FormatMoreExamples

Format

 DEFINE SCHEDULE ──> Ftypebox (O)typebox (R) ──> transfer-name ───┐
 ┌────────────────────────────────────────────┘
 └───┬─────────────────────────────────┬─┐
     └──> 
S

T

A

R

T
──> start-date-time ───┘ │ ┌───────────────────────────────────────┘ └───┬─────────────────────────────────────────┬─┐ └──> 
E

V

E

R

Y
──┬─> every-delta-time ─────┬──┘ │ └─> every-absolute-time ──┘ │ ┌───────────────────────────────────────────────┘ └─┬─────────────────────────────────────────────────────────────┬─┐ └─> 
R

E

T

R

Y
─> count ─> 
T

I

M

E

S
─┬───────────────────────────────┬┘ │ └─> 
R

E

T

R

Y

E

V

E

R

Y
──> delta-time ─┘ │ ┌─────────────────────────────────────────────────────────────────┘ └──> 
E

N

D
─┬───────────────────┬─┬─────────────┬───> . └──> transfer-name ─┘ └─> typebox (S)typebox (C)typebox (H)typebox (E)typebox (D)typebox (U)typebox (L)typebox (E) ─┘ every-absolute-time = ─────┬──────> 
D

A

Y
──────┬──┬─────────────────────┬─┬───> ├──────> 
W

E

E

K
─────┤ └──> 
A

T
──> at-time ──┘ │ ├──────> 
M

O

N

T

H
────┘ │ └──┬───> weekday ───┬───────────────────┬──┬──┘ │ └─> 
A

T
──>at-time ──┘ │ └──────────────── , <───────────────────┘

Additional information available:

transfer-namestart-date-timeevery-delta-timeevery-absolute-time
at-timecountdelta-time

transfer-name

 The transfer for which this schedule is being defined.  The transfer
 must already exist when you create a schedule definition for it.  The
 transfer-name parameter is required.

start-date-time

 The time to execute the initial transfer.  You can specify an
 absolute or delta time.  If you supply an absolute time, the initial
 transfer will be executed at the time specified.  If you use a delta
 time, Data Distributor uses the current time and the delta-time value
 to calculate the actual transfer time.  The START clause is optional.
 If you do not include a START clause, the start time is set to the
 current time so that the transfer will execute as soon as the
 transfer schedule definition is processed.

 The start-date-time parameter uses the following absolute and
 delta-time formats.  You can omit any of the trailing fields in the
 date or time.  You can omit any of the fields in the middle of the
 format as long as you include the punctuation marks.  For more
 information on date and time formats, see the entry on the $BINTIM
 VMS system service in the VMS documentation set.

 Absolute-time

 dd-mmm-yyyy hh:mm:ss.cc

 Delta time

 dddd:hh:mm:ss.cc

 In the absolute and delta time designations, the abbreviations have
 the following meanings:

 dddd   Number of days
 dd     Day of the month
 mmm    Month
 yyyy   Year
 hh     Hours
 mm     Minutes
 ss     Seconds
 cc     Hundredths of a second

every-delta-time

 Used to calculate the time to execute the next transfer.  The EVERY
 clause is optional.  If you specify the EVERY clause, you must
 specify either every-delta-time or every-absolute-time.  If you omit
 the EVERY clause, the transfer occurs only once.

 The valid specification for every-delta-time is the delta format used
 by the $BINTIM VMS system service.  The delta time you specify is the
 time from the completion of the last transfer sequence until the
 start of the next one.  A transfer sequence is the set of transfers
 from the first attempt until one of the following conditions is met:
 the execution is successful, the maximum number of retries specified
 in the RETRY clause has been reached, or a fatal error has occurred
 (one for which retries are not attempted).

every-absolute-time

 Used to calculate the time to execute the next transfer.  The EVERY
 clause is optional.  If you specify the EVERY clause, you must
 specify either every-absolute-time or every-delta-time.  If you omit
 the EVERY clause, the transfer occurs only once.

 Valid specifications for the every-absolute-time parameter are:

  o  DAY

     The transfer executes on a daily basis.

  o  WEEK

     The transfer occurs every week on the same day of the week as the
     initial transfer.

  o  MONTH

     The transfer occurs on a monthly cycle on the same day of the
     month as the initial transfer.

     Note that if the initial transfer starts on the 31st of the month
     and the transfer schedule specifies EVERY MONTH, the next
     execution of the transfer will be on the last day of the
     following month, whether the last day is the 28th, 29th, 30th, or
     31st.

  o  Weekday

     The transfer executes on the weekdays that you list.  If you list
     more than one weekday, separate the days with commas.  Valid
     weekday specifications are:

     SUNDAY
     MONDAY
     TUESDAY
     WEDNESDAY
     THURSDAY
     FRIDAY
     SATURDAY


at-time

 Qualifies every-absolute-time by specifying the time of day at which
 the transfer should occur.  This parameter is optional.  If you
 specify DAY, WEEK, or MONTH, but do not specify an at-time, Data
 Distributor uses the time of day of the initial transfer.  In the
 case of a list of weekdays, the at-time for each day can be
 specified.  If the at-time for any weekday is not specified, the
 default is the time used for the previous entry in the list.  For the
 first entry in the list, the time of day of the initial transfer is
 used, if none is specified.

count

 The maximum number of times to retry a transfer if a transfer
 execution fails.  If you do not include a retry count or if the count
 value is set to zero, Data Distributor does not attempt to retry the
 transfer until the next scheduled transfer time as indicated by the
 EVERY clause.

 Data Distributor does not retry a transfer if the transfer failed as
 a result of a fatal error.  You can recover from a fatal error only
 by manual intervention.

delta-time

 The length of time Data Distributor waits between the time of the
 last failed attempt and the time of the next retry attempt.  The
 RETRY EVERY delta-time clause is optional and can only be specified
 if the RETRY count TIMES clause is included.

 If you specify RETRY count TIMES in the schedule definition, but do
 not specify RETRY EVERY delta-time, Data Distributor attempts the
 retry immediately.  See the description of the start-date-time
 parameter earlier in this section for valid delta-time values.

More

 When you define a schedule for a transfer in the unscheduled state,
 that transfer is placed in the scheduled state.  If the transfer is
 in the suspended state, it remains in the suspended state.  To place
 the suspended transfer in the scheduled state, use the START TRANSFER
 statement.  When the transfer executes, Data Distributor places the
 transfer in the active state.

 You cannot modify a schedule definition.  If you need to change a
 parameter value in a schedule definition, you must first delete the
 schedule using the DELETE SCHEDULE statement and then define a new
 schedule.

 You must execute the DEFINE SCHEDULE statement outside of the scope
 of a transaction.  If you issue this statement when a transaction is
 outstanding, Data Distributor returns an error message.

 To define a transfer schedule, you must have the same user
 identification code (UIC) as the user who defined the transfer.  If
 you define a schedule for a transfer defined by a user with a
 different UIC, Data Distributor returns an error message and prevents
 the schedule from executing.  If you have BYPASS privilege, you can
 define a schedule for a transfer associated with a different UIC.  In
 this case, the UIC associated with the transfer does not change.

Examples

 Example 1

 Executes the NH_EMPLOYEES transfer at 1:24 a.m.  on June 24, 1988.
 The transfer will then execute every day at 5:30 p.m.  If a nonfatal
 error occurs, the transfer execution will be retried three times with
 30 minutes between the end of the failed transfer execution and the
 start of the next one.

 RDO> DEFINE SCHEDULE FOR NH_EMPLOYEES
 cont>  START 24-JUN-1988 01:24:00.00       <---- Absolute time
 cont>     EVERY DAY AT 17:30               <---- Absolute time
 cont>     RETRY 3 TIMES
 cont>     RETRY EVERY 0 00:30:00
 cont>  END SCHEDULE.


 Example 2

 This example uses a delta-time specification to have 36 hours (1 day
 plus 12 hours) between the completion of one transfer execution and
 the beginning of the next.  The example uses two delta times, EVERY 1
 12:00 and RETRY EVERY 0 03:00:00.  EVERY 1 12:00 states that there
 will be 36 hours (1 day plus 12 hours) between the completion of the
 first transfer and the beginning of the next.  If transfer execution
 does not succeed on the first attempt, the transfer schedule permits
 Data Distributor to make up to five additional attempts to complete
 the transfer.  RETRY EVERY 0 03:00:00 means Data Distributor should
 retry the transfer three hours after a nonfatal failure until the
 transfer completes successfully or until the maximum of five retries
 has been attempted.  If the transfer does not complete successfully
 after five retries, the next attempt will be 36 hours after the last
 failed attempt.

 RDO> DEFINE SCHEDULE FOR NH_EMPLOYEES
 cont>  START 15-MAY-1988
 cont>  EVERY 1 12:00                  !<---- 1 day plus 12 hours
 cont>  RETRY 5 TIMES
 cont>  RETRY EVERY 0 03:00:00         !<---- 3 hours
 cont>  END.



 Example 3

 The following transfer schedule causes Data Distributor to execute a
 transfer for the first time at 12 noon on the 15th of October 1988.
 Subsequent transfers will occur every day thereafter at 5:30 p.m.  If
 an error occurs preventing a successful transfer, Data Distributor
 will retry every 30 minutes until the transfer is successful or the
 maximum of three retries has been reached.


 RDO> DEFINE SCHEDULE FOR NH_EMPLOYEES
 cont>  START 15-OCT-1988  12:00
 cont>     EVERY DAY AT 17:30             !<---- Every day
 cont>     RETRY 3 TIMES
 cont>     RETRY EVERY 0 00:30:00
 cont>  END SCHEDULE.

 Example 4

 The following schedule definition assumes that you want to execute
 the transfer immediately after you complete the schedule definition
 and, therefore, it contains no START clause.  If the system time is
 20-OCT-1988 16:00:00 when you complete the DEFINE SCHEDULE statement,
 the next execution of the NH_EMPLOYEES transfer will start on
 20-NOV-1988 16:00:00.

 RDO> DEFINE SCHEDULE FOR NH_EMPLOYEES
 cont>   EVERY MONTH
 cont>   RETRY 3 TIMES
 cont>   RETRY EVERY 0 00:30:00
 cont>  END.


 Example 5

 This example calls for the NH_EMPLOYEES transfer to execute at 3:00
 p.m.  every Wednesday.  The schedule definition calls for a maximum
 of three retries occurring at intervals of 30 minutes.

 RDO> DEFINE SCHEDULE FOR NH_EMPLOYEES
 cont>  START 12-NOV-1988 15:00:00.00
 cont>     EVERY WEDNESDAY AT 15:00:00     !<---- Wednesdays at 3 p.m.
 cont>     RETRY 3 TIMES
 cont>     RETRY EVERY 0 00:30:00
 cont>  END.

 Example 6

 The following example causes an initial transfer to execute on the
 15th of July at 5 p.m., on every Monday after the 15th at 5 p.m.,
 every Tuesday at 11 a.m., and every Friday at 11 a.m.  Because a
 RETRY clause is not specified, even if a nonfatal failure occurs, the
 transfer will not execute until the next regularly scheduled time.

 RDO> DEFINE SCHEDULE FOR NH_EMPLOYEES
 cont>   START 15-JUL-1988 17:00
 cont>   EVERY MONDAY, TUESDAY AT 11:00, FRIDAY
 cont>  END.


 Example 7

 This example causes a transfer to start at midnight on July 15th and
 on the 15th of every month thereafter at 7 p.m.

 RDO> DEFINE SCHEDULE FOR NH_EMPLOYEES
 cont>   START 15-JUL-1988
 cont>   EVERY MONTH AT 19:00
 cont>  END.

REINITIALIZE_TRANSFER

 Reinitializes a replication transfer.  You use this statement when
 the source database and the replication target database are no longer
 consistent with each other.

Additional information available:

FormatMoreExample

Format

 REINITIALIZE TRANSFER ──────> transfer-name ───>





















Additional information available:

transfer-name

transfer-name

 The replication transfer that you want to reinitialize.  The
 transfer-name parameter is required.

More

 You can reinitialize a transfer only when the transfer is in the
 suspended state.  To suspend a transfer, first issue a STOP TRANSFER
 statement.  You must execute the REINITIALIZE TRANSFER statement
 outside the scope of a transaction.  If you issue this statement when
 a transaction is outstanding, Data Distributor returns an error
 message.

 After you enter the REINITIALIZE statement, the transfer remains in
 the suspended state.  You must then issue a START TRANSFER statement
 to restart the transfer.

 The REINITIALIZE statement forces the next execution of a replication
 transfer to create a new replication database in the target
 directory.  You must reinitialize a transfer when someone restores a
 previous version of the source database.

 If you want to reinitialize a particular transfer, the transfer
 definition must be associated with your UIC.

Example

 This example places the CARS_LAX transfer in a suspended state and
 then reinitializes it.  The schedule and definition for this
 replication transfer remain in place.  Once the transfer has been
 reinitialized, you can restart it.

 RDO> STOP TRANSFER CARS_LAX
 RDO> REINITIALIZE TRANSFER CARS_LAX
 RDO> START TRANSFER CARS_LAX


START_TRANSFER

 Executes a transfer on demand, or changes the state of a transfer
 from the suspended state to the scheduled, unscheduled, or active
 state.

Additional information available:

FormatMoreExamples

Format

 START TRANSFER ─────> transfer-name ──┐
    ┌──────────────────────────────────┘
    └───┬────────────>──────────────┬────>
        └───> 
N

O

W
──┬────────────┬──┘ ├─> 
W

A

I

T
────┤ └─> 
N

O

W

A

I

T
──┘

Additional information available:

NOWWAIT_NOWAIT

transfer-name

transfer-name

 The transfer to be started.  The transfer-name parameter is required.

NOW

 Changes the transfer state to active and begins execution.  If the
 transfer has a schedule defined for it, subsequent transfers occur as
 specified by that schedule.  The NOW argument is optional.

WAIT_NOWAIT

 Specifies whether Data Distributor returns control to RDO immediately
 after the transfer starts or waits until the transfer completes.  You
 must use the NOW argument if you specify WAIT or NOWAIT.  The
 default, NOWAIT, causes Data Distributor to return control
 immediately to the RDO command mode while the transfer executes.
 With NOWAIT in effect, you can enter other RDO statements while the
 copy process completes the transfer of database records to the target
 database.

 The WAIT option ensures that the transfer completes before control is
 returned to RDO.

More

 You can use the START TRANSFER statement without any qualifiers to
 change the state of a suspended transfer.  Issuing the START TRANSFER
 statement places the transfer in the scheduled state if a schedule
 definition exists for the transfer.  Execution then occurs at the
 next scheduled time.  If a schedule definition does not exist, the
 transfer is placed in the unscheduled state and will execute only
 when you issue a START TRANSFER statement using the NOW qualifier or
 you define a schedule for the transfer.

 You cannot enter the START TRANSFER statement when a transaction is
 outstanding.  You must terminate any outstanding transactions before
 issuing the START TRANSFER statement.

 You can use the START TRANSFER statement to initiate a transfer on
 demand by including the NOW option.  The NOW option immediately
 places the transfer in the active state.  This execute-on-demand
 feature is useful in batch processing environments when you want to
 initiate the transfer after another job has completed successfully,
 regardless of the transfer's schedule.

 If you want to start a transfer, the transfer definition must be
 associated with your UIC.

Examples

 Example 1

 This example starts a transfer called ENROLL_SPANISH1.  If this
 transfer has a schedule defined for execution one hour from now but
 the transfer is suspended, issuing the START TRANSFER statement only
 changes the transfer's state to scheduled.  Execution of the transfer
 will not occur for another hour.

 RDO> START TRANSFER ENROLL_SPANISH1


 Example 2

 In this example, transfer ENROLL_SPANISH1 has been defined but has no
 schedule.  You issue this START TRANSFER NOW statement because you
 want to execute the transfer immediately.  Control returns to RDO as
 soon as the transfer begins.

 RDO> START TRANSFER ENROLL_SPANISH1 NOW

STOP_TRANSFER

 Places a transfer in the suspended state.  Data Distributor does not
 attempt to execute the transfer until you remove it from the
 suspended state using the START TRANSFER statement.  If the transfer
 is in the active state, the STOP TRANSFER statement also stops the
 copy process associated with that transfer.

Additional information available:

FormatMoreExample

Format

 STOP TRANSFER ───────> transfer-name ─────>





















Additional information available:

transfer-name

transfer-name

 The transfer to be suspended.  The transfer-name parameter is
 required.

More

 You must terminate any outstanding transactions before you issue a
 STOP TRANSFER statement.

 If you want to stop a particular transfer, the transfer definition
 must be associated with your UIC.

Example

 The following example places the EUROPE_PERS transfer in the
 suspended state.

 RDO> STOP TRANSFER EUROPE_PERS

DCL invoke

 Gives access to DCL from inside RDO.

 The dollar sign ($) instructs RDO to spawn a subprocess and pass the
 next keyword to DCL for processing.  You must follow the dollar sign
 with a DCL command.  After DCL processes the command, it logs out of
 the subprocess and returns control to RDO.

 Example:

      RDO> $ MAIL

      MAIL>

 Format

      $ dcl-command

Additional information available:

Example

Example

 Show current default VMS directory:

 RDO> $ DIRECTORY

 Directory DISK2:[DEPT3.ACCT]

 DEFPRO.RDO;6    NOTEQUAL.RDO;1   QUERY.RDO;1    REFEXAM.RDO;12
 STORE.RDO;1     UPDATE.RDO;2

 Total of 6 files.

 RDO>

Demo

 To see an online demonstration of Rdb/VMS, type the following:

      $ @RDM$DEMO:RDBDEMO

Errors

 Help is available on the following types of error messages:

 1.  RDB facility error messages -- Common to all Rdb relational
     database systems.

 2.  RDMS facility error messages -- Specific to Rdb/VMS.

 3.  RDO facility error messages -- Seen when you are running the
     interactive RDO utility.

 4.  DDAL facility error messages -- Specific to VAX Data Distributor.

Additional information available:

RDBRDMSRDODDAL

RDB

 Print or type the SYS$HELP:RDB_MSG.DOC file for information on
 messages returned by the RDB facility.  The RDB facility is common
 code shared by all DIGITAL Standard Relational Interface (DSRI)
 compliant database systems.

 The SYS$HELP:RDB_MSG.DOC file contains the RDB facility messages from
 the most recently installed version of a DSRI-compliant database
 product on your system or VAXcluster.  (Installation of a new version
 of VIDA, VAX Rdb/ELN, or Rdb/VMS upgrades the RDB_MSG.DOC file
 whenever the RDB message image, RDBMSGS.EXE, includes new or revised
 error messages.

RDMS

Additional information available:

ACCVIOACTQUERYAIJDEVDIRAIJDISABLEDAIJENABLED
ALLMINALROPEANAEXTOBSAREABUSYAREA_CORRUPT
AREA_INCONSISTAREA_NAMEARITHBADAIJFILE
BADAIJVERBADASCTOIDBADBNDPRMBADBOUNDS
BADDATDEFBADDBNAMEBADFILTYPBADHANDLE
BADROOTMATCHBAD_AREA_NAMEBAD_CODEBAD_DATATYPE
BAD_NAMEBAD_SYMBAD_XPRBDDATRANGBKUPEMPTYAIJ
BOUNDBPPMAXBPPMINBUFLIMEXCBUFSMLPAG
BUFTOOSMLBUGCHECKBUGCHKDMPCANTASSMBX
CANTBINDRTCANTCLOSEDBCANTCREDBRCANTCREGBL
CANTCREMBXCANTCREMONCANTDELETECANTLCKTRM
CANTMAPTROOTCANTOPENDBCANTOPENINCANTQIOMBX
CANTREADDBCANTREADDBSCANTSNAPCANTSPAWN
CANTWRITEDBSCDDISREQDCDDREQALONECHECKSUM
CNVNUMDATCOLNOTDEFCOMPLEXCONEXICONEXTS
CONNOEXICONNOTDELCONVERRCONVWDATCNVERR
DBACTIVEDBBUSYDBCRUPTDBNOTACTIVEDBNOTEXTEN
DBNOTINTRANDBNOTOPENDBRABORTEDDBSHUTDOWN
DEADLOCKDELAREADUPLANAMEDUPLFNAMEDUPNOTALL
EMPTYAIJEMPTYFILEENDERRACCROOERREXTFIL
ERRFILSIZERRFMTFILERRFOREIGNERRMODEOF
ERROPENINERROPENOUTERROPNOUTERRPARSFIL
ERRREADERRREADINGERRRUJFILERRTRUNFILERRWRITE
ERRWRITINGEXQUOTAEXTDBONLYFIELD_MISSING
FIEUSETRAFILACCERRFLDEXFLDINCOMFLDINCOMRELFLDINCON
FLDINSTOFLDINUSEFLDINVIEWFLDNOEXFLDNOEXIFLDNOTCHG
FLDNOTDELFLDNOTINRELGFLDEXTSGFLDNOEXHASHEDMIX
IDXNOTDELILLNCHARINDEXTSINDEX_S_MININDINMAP
INDLIMITBADINDNEEDSLIMITINDNOTEXIINDNOTREL
INDTOOBIGINFUNKINVACE_LENGTHINVDBSFILINVDB_NAME
INVDTYPINDXINVHEADERINVNAMEINVTBL_NAME
INV_DATE_CHGINV_RATORINV_ROOTLASTARENOLIMIT
LBMAXLBMINLCKCNFLCTLOGAIJBCKLOGRECOVR
LOGRECSTATMAPAREAINUSEMAPBLRMISSINGMAPNMINUSE
MAPREFAREAMAXRELVERMAX_CCTXMISMMORDD
MIXCLUSTMONALSTARTMONMBXOPNMONSTOPPED
MULTCHGAREAMUSTRECDBNBMAXNBMINNOACCSEGSTR
NOAIJDEFNOCHARNOCHGRDBSYSNOCHGVWNOCREMBX
NODBKNODEVDIRNODMAXNODMINNOINTERUNINOMONITOR
NONODENOPRIVNORTUPBNOSIPNOSNAPSNOSTAREAEXT
NOSTRTUPNOTBOOLNOTDSKFILNOTHRESUNINOTIMPLYET
NOTIPNOTOPENOTRANAPPNOTROOTNOTSYSCONCEAL
NOT_BOUNDNOT_LICENSEDNOT_READYNOT_RESERV
NOT_UPDATENOT_VALID_FRNOVIEWINDNOWILD
OBSVEROK_NO_ACEOPERCLOSEOPERSHUTDN
OVERFLOWPREMEOFQIOXFRLENQUIETPTRECMAXEXC
RELALRDYMPRELEXIRELEXTSRELFLDEXRELFLDNOC
RELFLDNODRELINCOMRELNEXTSRELNOEXIRELNOTCHG
RELNOTDELRELNOTEMPTYRELUSETRAREQUNIFORM
RESTARTROOMAJVERROOTMAJVERRUJDEVDIR
SEGSTR_NO_CHGSETWIDTHSIPSNAPFULLSPIMAXSPIMIN
SSNOTINROOTSTALLSTAREAFULSTOMAPNOEXI
SYMTOOBIGSYNERRTABIDNOTDEFTABNOTDEF
TADMISMATCHTERMINATETRANSFDEFTRAN_IN_PROG
TRUETRUNCATIONUNDERFLOWUNSARITHUNSCOMP
UNSCONVUNS_DTYPEUPDINSNAPUSRMAXUSRMIN
VIEWEXIVIEWINVIEWVIEWNOEXIVIEWNOTDEL
VIEWNOUPVIEW_NO_ANAWASBOOLWISH_LISTWRNG_REL
XPR_STACK_OFLO

ACCVIO

 access violation on read/write of user address

 Explanation:  A readable parameter is not readable by the DBCS
 or a writeable parameter is not writeable by the DBCS.

 User Action:  Pass good parameters to the DBCS.

ACTQUERY

 there are queries compiled that reference relation <str>

 Explanation:  You tried to update relation definitions while
 your query refers to the relation you are trying to change.

 User Action:  Finish executing the query and retry the metadata
 update.

AIJDEVDIR

 AIJ file name does not include device and directory

 Explanation:  The file you specified did not include a device
 and directory.

 User Action:  You should always include a device and directory
 in the file specification, preferably different from the
 database device for maximum protection.

AIJDISABLED

 after-image journaling must be enabled for backup

 Explanation:  You attempted to back up an after-image journal
 file for a database that has after-image journaling disabled.

 User Action:  Enable after-image journaling for your database
 and try the backup again at some later time.

AIJENABLED

 after-image journaling must be disabled during recovery

 Explanation:  You attempted to recover your database using an
 after-image journal file, but the database still has after-image
 journaling enabled.

 User Action:  Disable after-image journaling for your database
 and try the recovery again.  After recovery has completed, you
 can enable after-image journaling again.

ALLMIN

 number of pages in database must be greater than 1

 Explanation:  The page allocation for the database you specified
 is too small.

 User Action:  Try another value.

ALROPE

 this record stream for this cursor is already open

 Explanation:  The call to RDMS$OPEN has failed.  You attempted
 to open a stream that is already open.

 User Action:  Call RDMS$CLOSE to close the stream.

ANAEXTOBS

 analyze extension is obsolete

 Explanation:  The RDB$K_EXT_ANALYZE function provided through
 the RDB$EXTENSION RCI call is no longer available.

 User Action:  Use the RMU/ANALYZE utility to gather static
 database statistics.

AREABUSY

 usage of storage area <str> conflicts with a co-user

 Explanation:  You attempted to ready an area that is already
 being accessed by another user, and that usage mode is
 incompatible with the usage mode you requested.

 User Action:  Wait until the storage area you requested is
 available, and try again, or ready the area with the WAIT
 option.

AREA_CORRUPT

 storage area <str> is corrupt

 Explanation:  The storage area has been corrupted by an abnormal
 termination of a BATCH UPDATE run unit.  It cannot be readied.

 User Action:  Either try to fix the problem by verifying the
 area and then altering the corrupt pages or reload/restore the
 area.

AREA_INCONSIST

 storage area <str> is inconsistent

 Explanation:  The storage area has been marked inconsistent with
 the rest of the database.  It cannot be readied.

 User Action:  Recover the area to make it consistent.

AREA_NAME

 area <str>

 Explanation:  This message supplies supplementary information
 for an accompanying message.

 User Action:  As specified for accompanying message.

ARITH

 arithmetic exception

 Explanation:  An exception occurred while Rdb/VMS was evaluating
 an arithmetic expression.  The subordinate status explains the
 exception.

 User Action:  Change the expression to eliminate the error.  For
 example, if the exception was division by zero, change your
 query to exclude records that cause a division by zero.

BADAIJFILE

 illegal after-image journal format

 Explanation:  The file you specified is not an after-image
 journal file.

 User Action:  Check the file name and try again.

BADAIJVER

 after-image journal version is incompatible with the DBCS

 Explanation:  Your after-image journal file was created with an
 incompatible version of the software.

 User Action:  Your after-image journal file cannot be used with
 the version of the software you have installed on your machine.

BADASCTOID

 "<str>" is not a valid user identifier

 Explanation:  An error occurred when accessing the rights
 database to translate an identifier name to a binary identifier.

 User Action:  See the secondary error message and supply a valid
 user identifier.

BADBNDPRM

 bad bind parameter <str> value "<str>"

 Explanation:  The logical bind parameter value is invalid.

 User Action:  See the secondary error message for more
 information.

BADBOUNDS

 value not in range <num> to <num>

 Explanation:  The value of the translated logical name is not in
 the range of acceptable values.

 User Action:  Delete the logical name, or redefine it with a
 value in the acceptable range.

BADDATDEF

 illegal default format for date string

 Explanation:  The logical name, SYS$DATE_INPUT, represents the
 default format for a date string.  It is a three character field
 (MDY,DMY, etc.) with M = month, D = day, and Y = year.

 User Action:  Redefine the logical name with a legal date string
 format.

BADDBNAME

 can't find database root <str>

 Explanation:  The database root file you specified could not be
 accessed.

 User Action:  Examine the associated messages to determine the
 reason for failure.

BADFILTYP

 database file must have extension "<str>"

 Explanation:  All database files must have the specified file
 type.

 User Action:  You might be attempting to access a nondatabase
 file.  If not, rename or copy the database file to have the
 proper type.

BADHANDLE

 invalid handle passed on call to Rdb

 Explanation:  A call to Rdb/VMS passed a nonzero handle when
 zero was expected or passed a handle that was not valid.  A
 handle is output by certain Rdb/VMS calls.  This error can be
 caused by errors in software, such as a preprocessor, that
 creates the calls to Rdb/VMS.

 User Action:  None.

BADROOTMATCH

 root file "<str>" no longer has its original name "<str>"

 Explanation:  The current root filename does not match the name
 the used when the root file was created.  This could happen if
 you copied or renamed the root file, or if the file was created
 using a concealed logical device name and that logical name is
 no longer defined.

 User Action:  Rename or copy the root file back to its original
 name or location, or redefine the necessary concealed logical
 device name in the system logical name table.

BAD_AREA_NAME

 area name <str> is bad

 Explanation:  You specified an area name that is incorrect.

 User Action:  Check with your DBA to determine the correct area
 names for your database and reissue your command correctly.

BAD_CODE

 corruption in the query string

 Explanation:  An illegal entry was found in the query string.

 User Action:  If you called Rdb/VMS, check the query string;
 otherwise submit an SPR.

BAD_DATATYPE

 unsupported datatype

 Explanation:  You attempted to do math with incompatible data
 types.

 User Action:  Submit an SPR.

BAD_NAME

 illegal filename

 Explanation:  You specified an illegal file name.  A second line
 of explanatory text is supplied in addition to this message.

 User Action:  Retry the command with a valid file name.

BAD_SYM

 unknown <str> symbol - <str>

 Explanation:  Invalid symbol.

 User Action:  Check the definition and retype the command.

BAD_XPR

 corrupt expression

 Explanation:  A corrupt expression was found in the query
 string.

 User Action:  If you called Rdb/VMS, check the query string.
 Otherwise, submit an SPR.

BDDATRANG

 day, month, or year field in date string out of range

 Explanation:  The month field must be between 1 and 12
 inclusive.  The day field must be between 1 and 31 inclusive.
 The year field must be between 0 and 3000 inclusive.

 User Action:  Reenter the DATE data item with the error
 corrected.

BKUPEMPTYAIJ

 after-image journal file is empty

 Explanation:  An attempt was made to backup an empty after image
 journal file.

 User Action:  Be sure the correct after image journal file was
 specified.

BOUND

 multiple binds are not allowed

 Explanation:  You are already bound to a database.  You can only
 be bound to one database at a time for a given stream.

 User Action:  You can execute an UNBIND statement and try the
 BIND again, or use the multiple stream feature to bind to a
 database on another stream.

BPPMAX

 <num> blocks per page is greater than the Rdb/VMS maximum of
 <num>

 Explanation:  The page size for the database you specified is
 too large.

 User Action:  Try another value.

BPPMIN

 <num> blocks per page is less than the Rdb/VMS minimum of <num>

 Explanation:  The page size for the database you specified is
 too small.

 User Action:  Try another value.

BUFLIMEXC

 internal buffer limit exceeded

 Explanation:  You have provided a request whose compilation
 exceeds the buffer capabilities of Rdb/VMS.  An example would be
 a request that attempts to retrieve several thousand fields from
 a relation.

 User Action:  Rewrite the request, possibly breaking it up into
 multiple requests.

BUFSMLPAG

 buffer size is less than page size

 Explanation:  Buffer size must be large enough for at least one
 page.

 User Action:  Try another value for the buffer size.

BUFTOOSML

 buffer size (<num>) is smaller than largest page (<num>)

 Explanation:  The buffer size must be large enough to
 accommodate the largest page size within the database.

 User Action:  Specify a buffer size at least as large as the
 message indicates.

BUGCHECK

 fatal, unexpected error detected

 Explanation:  A fatal, unexpected error was detected by the
 database management system.

 User Action:  Please submit an SPR (and include any bugcheck
 dump files).

BUGCHKDMP

 generating bugcheck dump file <str>

 Explanation:  The database management system has detected a
 fatal, unexpected error, and is writing a bugcheck dump file
 with the specified file name.

 User Action:  Please send this bugcheck dump file to your
 software specialist, along with any other related programs or
 data.

CANTASSMBX

 error assigning a channel to a mailbox

 Explanation:  An error occurred while you attempted to assign a
 channel to a VMS mailbox.

 User Action:  Examine the secondary message for more
 information.

CANTBINDRT

 error mapping database root file

 Explanation:  An error occurred while mapping to the database
 root file.

 User Action:  Examine the associated messages to determine the
 reason for failure.

CANTCLOSEDB

 database could not be closed as requested

 Explanation:  The database monitor detected an error while
 attempting to close the database you specified.

 User Action:  Examine the secondary message(s) or look in the
 database monitor log file (SYS$SYSTEM:*MON.LOG) for more
 information.

CANTCREDBR

 error creating database recovery process

 Explanation:  An error occurred while you attempted to create a
 detached database recovery process.

 User Action:  Examine the secondary message(s) or look in the
 database monitor log file (SYS$SYSTEM:*MON.LOG) for more
 information.

CANTCREGBL

 error creating and mapping database global section

 Explanation:  There was an error while you attempted to create a
 map to the database global section.

 User Action:  Examine the secondary message(s) for more
 information.

CANTCREMBX

 cannot create mailbox

 Explanation:  An error occurred while you attempted to create a
 mailbox.  Mailboxes are used for interprocess communication by
 the database management system.

 User Action:  Examine the associated messages to determine the
 reason for failure.  Usually, you will have to change one of
 your quotas (most likely, the buffered I/O byte count quota or
 the open file quota).

CANTCREMON

 unable to start database monitor process

 Explanation:  An error occurred while you attempted to start the
 database monitor process.  This is a detached process.

 User Action:  Examine the secondary message(s) to determine the
 reason for the failure.

CANTDELETE

 error deleting "<str>"

 Explanation:  An error occurred while you attempted to delete
 the indicated file.  You must be able to change the protection
 on a file in order to delete it.

 User Action:  Examine the associated messages to determine the
 reason for failure.

CANTLCKTRM

 database monitor error establishing termination lock

 Explanation:  The database monitor was unable to assert a
 request on the user's image termination lock.  The user's image
 might already have terminated before the monitor received the
 request.

 User Action:  Examine the secondary message(s) for more
 information.

CANTMAPTROOT

 error mapping to the troot section

 Explanation:  An error occurred while mapping to the shared
 database page-file section.

 User Action:  Examine the associated messages to determine the
 reason for failure.

CANTOPENDB

 database could not be opened as requested

 Explanation:  The database monitor detected an error while
 attempting to open the database you specified.

 User Action:  Examine the secondary message(s) or look in the
 database monitor log file (SYS$SYSTEM:*MON.LOG) for more
 information.

CANTOPENIN

 error opening input file <str>

 Explanation:  An error occurred while opening the input file.

 User Action:  Examine the associated messages to determine the
 reason for failure.

CANTQIOMBX

 unable to send mail to a mailbox

 Explanation:  An error occurred while you attempted to send mail
 to a mailbox.

 User Action:  Examine the secondary message(s) to determine the
 reason for the failure.

CANTREADDB

 error opening or reading database file

 Explanation:  There was an error while you attempted to open or
 read from the database file.

 User Action:  Examine the secondary message(s) for more
 information.

CANTREADDBS

 error reading pages <num>:<num>-<num>

 Explanation:  An error occurred while you attempted to read one
 or more database pages.  The message indicates the storage area
 ID number and the page numbers of the first and last pages being
 read.

 User Action:  Examine the associated messages to determine the
 reason for failure.

CANTSNAP

 can't ready storage area <str> for snapshots

 Explanation:  Snapshots were last enabled for this area by a
 transaction that had not committed before the snapshot started.
 Information to materialize the snapshot is not present.

 User Action:  Restart the snapshot transaction.  If failure of a
 snapshot transaction is critical, you should ready all areas
 before doing any retrievals.

CANTSPAWN

 error spawning subprocess

 Explanation:  An error occurred while you attempted to spawn a
 subprocess.

 User Action:  Examine the secondary message for more
 information.

CANTWRITEDBS

 error writing pages <num>:<num>-<num>

 Explanation:  An error occurred while you attempted to write one
 or more database pages.  The message indicates the storage area
 ID number and the page numbers of the first and last pages being
 written.

 User Action:  Examine the associated messages to determine the
 reason for failure.

CDDISREQD

 CDD required for metadata updates is not being maintained

 Explanation:  You attempted to change a definition in a database
 which requires that all definition changes be reflected in the
 CDD, after issuing an INVOKE DATABASE FILENAME statement.  User
 Actions:  INVOKE DATABASE PATHNAME and retry the metadata
 update.

CDDREQALONE

 CDD is required clause must be alone in CHANGE DATABASE command

 Explanation:  You attempted to specify DICTIONARY is (not)
 REQUIRED along with other parameters in the same CHANGE DATABASE
 statement.

 User Action:  Break down your request into two separate
 statements.

CHECKSUM

 checksum error - computed <num>, page contained <num>

 Explanation:  The computed checksum for the database page
 disagreed with the checksum actually stored on the page.  This
 usually is caused by a hardware problem.

 User Action:  None.

CNVNUMDAT

 cannot convert number to a date string

 Explanation:  A quadword DATE data type is not in the correct
 form to be converted to a text string.

 User Action:  Reenter the DATE data item in the correct format.

COLNOTDEF

 field <str> is not defined in relation <str>

 Explanation:  The specified field does not exist in the relation
 specified.

 User Action:  The relation definition associated with the
 context variable did not include a definition for the specified
 field.  You may have specified the wrong context variable with
 the field or mistyped the field name.

COMPLEX

 data conversion error on complex data type

 Explanation:  There would have been loss of information on a
 complex data type conversion.  The operation was not performed.

 User Action:  Enter another value.

CONEXI

 relation <str> is referenced in constraint <str>

 Explanation:  Before you can delete a relation, all constraints
 and views based on this relation must be deleted.

 User Action:  Delete the dependent constraints and any views
 that refer to this relation.

CONEXTS

 there is another constraint named <str> in this database

 Explanation:  The constraint name you tried to define already
 exists.

 User Action:  Choose another constraint name.

CONNOEXI

 constraint <str> does not exist in this database

 Explanation:  The name specified for the constraint was not
 found in the database.

 User Action:  Check the name of the constraint using the SHOW
 command and try again.

CONNOTDEL

 constraint <str> has not been deleted

 Explanation:  The specified constraint was not deleted.

 User Action:  Correct the problem and retry the metadata update.

CONVERR

 data conversion error

 Explanation:  The database management system was unable to
 convert the data item from one datatype to another.

 User Action:  Enter another value.

CONVW

 views cannot be used within constraints

 Explanation:  Constraints cannot be placed on views.

 User Action:  Place constraints on the relation referred to in
 the view definition.

DATCNVERR

 conversion error in date string

 Explanation:  The date string is not in one of the legal
 formats.  As a result, it cannot be converted to the DATE data
 type.

 User Action:  Reenter the DATE data item in one of the correct
 formats.

DBACTIVE

 database is already being used

 Explanation:  You attempted to open a database that is already
 being used.  You can only open a database that is not being
 accessed.

 User Action:  Wait for all users to finish using the database,
 or force the users off by closing the database.

DBBUSY

 database is busy - try again later

 Explanation:  You attempted to access a database that is shut
 down.

 User Action:  Wait for the database to become available, and try
 again.

DBCRUPT

 database is corrupt

 Explanation:  Your database is not a valid Rdb/VMS database.
 This can happen if DEFINE DATABASE does not terminate normally.

 User Action:  Recreate your database.  If the database was not
 just created, submit an SPR.

DBNOTACTIVE

 database is not being used

 Explanation:  You attempted to close a database that is not
 open.

 User Action:  There is no need to close the database - it is
 already closed.

DBNOTEXTEN

 database not multifile, areas may not be added

 Explanation:  Your database was not specified as multifile, yet
 you attempted to add areas to the database.  User Actions:  If
 you want to create a multifile database from a single file
 database, use the EXPORT and IMPORT statements.

DBNOTINTRAN

 that database is not in the current transaction

 Explanation:  You tried to start a request or use a segmented
 string in a database not included in your current transaction.

 User Action:  Commit or roll back your transaction, and start a
 new transaction that includes the proper databases.

DBNOTOPEN

 database is not open for access

 Explanation:  The database must be opened to allow users to
 access it.

 User Action:  Open the database and try again.

DBRABORTED

 database recovery process terminated abnormally

 Explanation:  A detached database recovery process failed to
 recover a transaction.

 User Action:  Examine the database monitor log file and any
 SYS$SYSTEM:*DBRBUG.DMP bugcheck dump files for more information.

DBSHUTDOWN

 database shutdown is in progress

 Explanation:  The request you made could not be completed
 because the database is being shut down.

 User Action:  Examine the database monitor log file
 (SYS$SYSTEM:*MON.LOG) for more information.

DEADLOCK

 deadlock on <str>

 Explanation:  The operation you attempted has been forbidden by
 the database management system because it would have led to a
 system deadlock.

 User Action:  Execute a ROLLBACK or a COMMIT to release your
 locks, and try the transaction again.

DELAREA

 area <str> was previously deleted

 Explanation:  An attempt was made to ready an area which was
 previously deleted.

DUPLANAME

 area name <str> already used

 Explanation:  The area name specified is already in use for this
 database.

 User Action:  Choose a different name.

DUPLFNAME

 file name <str> already used

 Explanation:  The file name specified is already in use for this
 database.

 User Action:  Choose a different name.

DUPNOTALL

 duplicate records not allowed for index <str>

 Explanation:  You are trying to add a duplicate record to an
 index on a field that does not allow duplicates.

 User Action:  Do not add duplicate records unless you
 restructure the relation to allow them.

EMPTYAIJ

 after-image journal file is empty

 Explanation:  A recovery operation was attempted on an empty
 after-image journal file, or the UNTIL time predates any
 journaled transactions.  The former can happen if no
 transactions were initiated while after-image journaling was in
 progress.

 User Action:  Correct the error and try again.

EMPTYFILE

 <str> file is empty

 Explanation:  The file is empty.

 User Action:  None.

END

 end of record stream for this cursor

 Explanation:  A status returned from RDMS$DO that indicates
 there are no more records to be returned.

 User Action:  There are no more records in the record stream.
 Process as you would for an end-of-file condition.

ERRACCROO

 error accessing database root file

 Explanation:  An error occurred while opening a database file.

 User Action:  Examine the secondary message for more
 information.

ERREXTFIL

 error extending file

 Explanation:  An error occurred while extending a file.

 User Action:  Examine the secondary message for more
 information.

ERRFILSIZ

 error determining size of file

 Explanation:  An error occurred while accessing a file to
 retrieve the record attributes, in order to determine the
 physical size of the file.

 User Action:  Examine the secondary message for more
 information.

ERRFMTFIL

 error formatting output file

 Explanation:  An error occurred while formatting an output file.

 User Action:  Examine the secondary message for more
 information.

ERRFOREIGN

 error opening foreign command file as input

 Explanation:  An error occurred while reading a foreign command
 file.

 User Action:  Examine the secondary message for more
 information.

ERRMODEOF

 error extending or truncating file

 Explanation:  An error occurred while extending a file.

 User Action:  Examine the secondary message for more
 information.

ERROPENIN

 error opening <str> as input

 Explanation:  An error occurred while opening an input file.

 User Action:  Examine the secondary message for more
 information.

ERROPENOUT

 error opening <str> as output

 Explanation:  An error occurred while opening an output file.

 User Action:  Examine the secondary message for more
 information.

ERROPNOUT

 error opening <str> as output

 Explanation:  An error occurred while opening an output file.

 User Action:  Examine the secondary message for more
 information.

ERRPARSFIL

 error parsing file <str>

 Explanation:  An error occurred while parsing a file name.

 User Action:  Examine the secondary message for more
 information.

ERRREAD

 error reading file

 Explanation:  An error occurred while reading a file.

 User Action:  Examine the secondary message for more
 information.

ERRREADING

 error reading file <str>

 Explanation:  An error occurred while reading a file.

 User Action:  Examine the secondary message for more
 information.

ERRRUJFIL

 error using recovery-unit file <str>

 Explanation:  An error occurred while parsing a file name.

 User Action:  Examine the secondary message for more
 information.

ERRTRUNFIL

 error truncating file

 Explanation:  An error occurred while truncating a file.

 User Action:  Examine the secondary message for more
 information.

ERRWRITE

 error writing file

 Explanation:  An error occurred while writing a file.

 User Action:  Examine the secondary message for more
 information.

ERRWRITING

 error writing file <str>

 Explanation:  An error occurred while reading a file.

 User Action:  Examine the secondary message for more
 information.

EXQUOTA

 exceeded quota

 Explanation:  The image could not proceed because a resource
 quota or limit had been exceeded.

 User Action:  The secondary error message describes the resource
 that was exceeded.  If this occurs consistently, increase your
 quota.

EXTDBONLY

 operation is not allowed on single file databases

 Explanation:  You attempted to change or delete storage areas or
 change the number of nodes or number of users in a single-file
 database.

 User Action:  If you want to create a multifile database from a
 single-file database, use the EXPORT and IMPORT statements.

FIELD_MISSING

 field <str> is missing from this statement

 Explanation:  The specified field is required in this statement.
 The field was determined to be invalid if it was missing from
 the statement.

 User Action:  You must specify the field in the statement.

FIEUSETRA

 field <str> is used in the transferred relation <str>

 Explanation:  The specified field is used in the specified
 relation.  The relation is involved in a DDAL transfer
 definition.

 User Action:  You must delete the DDAL transfer definition
 before modifying the field.

FILACCERR

 <str>

 Explanation:  This general message indicates an error accessing
 a file.

 User Action:  Examine the secondary message for more
 information.

FLDEX

 field name <str> appears more than once in this relation or
 view

 Explanation:  You chose a field name that appears more than once
 within a relation or view.

 User Action:  Use the BASED ON or COMPUTED BY clauses to change
 one occurrence of the field name.

FLDINCOM

 field <str> is referenced in COMPUTED BY field <str>

 Explanation:  You attempted to delete a field from a relation
 but the field is used in a COMPUTED BY field in the same
 relation.

 User Action:  First, review the database design; then, if
 desired, delete the COMPUTED BY field, and then delete the field
 from the relation.

FLDINCOMREL

 field <str> is referenced in COMPUTED BY field <str> in
 relation <str>

 Explanation:  You attempted to delete a field from a relation
 but the field is used in a COMPUTED BY field in another
 relation.

 User Action:  First, review the database design; then, if
 desired, delete the COMPUTED BY field, and then delete the field
 from the relation.

FLDINCON

 field <str> is referenced in constraint <str>

 Explanation:  You attempted to delete a field from a relation
 but the field is used in a constraint.

 User Action:  First, review the database design; then, if
 desired, delete the constraint, and then delete the field from
 the relation.

FLDINSTO

 field <str> is referenced in storage map <str>

 Explanation:  You attempted to delete a field from a relation
 but the field is used in a storage map.

 User Action:  First, review the database design; then, if
 desired, delete the storage map, and then delete the field from
 the relation.

FLDINUSE

 field <str> is referenced in index <str>

 Explanation:  The field you attempted to delete is an indexed
 field.

 User Action:  First, delete the index on the field, and then
 delete the field.

FLDINVIEW

 field <str> is referenced in view <str>

 Explanation:  You attempted to delete a field from a relation
 but the field is used in a view of that relation.

 User Action:  First, review the database design; then, if
 desired, delete the view, and then delete the field from the
 relation.

FLDNOEX

 field <str> is not part of this relation

 Explanation:  The field you named is not part of the target
 relation.

 User Action:  Check the relation definition for the correct
 field name.

FLDNOEXI

 field <str> does not exist in this database

 Explanation:  The field that you attempted to delete was not
 found.  It might be a local field in a relation rather than a
 global field.

 User Action:  Check the exact name of the field and try again to
 delete it.  If it is a local field, use the CHANGE RELATION
 statement to delete the field.

FLDNOTCHG

 field <str> has not been changed

 Explanation:  The field specified was not deleted.

 User Action:  Correct the problem and retry the operation.

FLDNOTDEL

 field <str> has not been deleted

 Explanation:  The field in question has not been deleted for the
 reason explained by the previous message.

 User Action:  Correct the problem and retry the statement.

FLDNOTINREL

 <str> is not a field in relation <str>

 Explanation:  The field you named is not part of the named
 relation.

 User Action:  Check the relation definition for the correct
 field name or specify another relation.

GFLDEXTS

 there is another global field named <str> in this database

 Explanation:  The field name you tried to define already exists.

 User Action:  Use another field name.

GFLDNOEX

 there is not a global field named <str> in this database

 Explanation:  The field you tried to include in a relation
 definition does not exist.

 User Action:  Define the field and then try to create the
 relation again.

HASHEDMIX

 index of TYPE HASHED must be stored in area(s) with PAGES MIXED

 Explanation:  You attempted to define a hashed index to be
 stored in a storage area with a uniform page format.  A hashed
 index must be stored in a storage area with a mixed page format.

 User Action:  Specify one or more storage area with mixed page
 format for the hashed index.

IDXNOTDEL

 index <str> has not been deleted

 Explanation:  The specified index was not deleted.

 User Action:  Correct the problem and retry the metadata update.

ILLNCHAR

 illegal character found in numeric input

 Explanation:  You specified a number containing a nonnumeric
 character.

 User Action:  Correct the error and try again.

INDEXTS

 there is another index named <str> in this database

 Explanation:  The index name you tried to define already exists.

 User Action:  Try another index name.

INDEX_S_MIN

 user requested node size of <num> bytes for index needing <num>

 Explanation:  The index node size you specified is less than
 that needed by the implementation.

 User Action:  Refer to the documentation and supply another
 value.

INDINMAP

 index <str> is used in storage map definition

 Explanation:  You attempted to delete an index used in a map
 definition.

INDLIMITBAD

 partition field <str> not in index

 Explanation:  You attempted to partition an index using a field
 not included in the index.

 User Action:  Respecify the command using only fields defined
 for the index.

INDNEEDSLIMIT

 limits must be specified for index

 Explanation:  You attempted to define an index without
 specifying limits for all but the last partition of the index.

 User Action:  Respecify your index definition, providing limits
 for all but the last area.

INDNOTEXI

 index <str> does not exist in this database

 Explanation:  There is no index with the given name.

 User Action:  Try SHOW INDEX to see which indexes exist.

INDNOTREL

 index <str> does not reference same relation as storage map

 Explanation:  The index specified in the PLACEMENT VIA clause is
 not an index on the relation whose storage map is being defined.

 User Action:  Select or create a new index for placement.

INDTOOBIG

 requested index is too big

 Explanation:  You attempted to define an index that requires
 more than 255 characters.  The limit is the number of fields
 plus the sum of the number of bytes specifying the size of each
 field.

 User Action:  Simplify the index definition or break it into two
 or more components.

INFUNK

 information item unknown

 Explanation:  You called RDB$REQUEST_INFO or another INFO
 routine and asked for an item that Rdb/VMS did not understand.

 User Action:  If you do not need that item, ignore this
 condition.  Otherwise, modify the call to the routine.

INVACE_LENGTH

 invalid Access Control Entry length

 Explanation:  You specified too many identifiers in the access
 control entry (ACE).

 User Action:  Reduce the number of identifiers in the ACE.  The
 maximum number of identifiers in ACE is 30.

INVDBSFIL

 inconsistent storage area file <str>

 Explanation:  The indicated storage area file is inconsistent
 with the root file.  This might happen if you have improperly
 used any unsupported methods for backing up or restoring files,
 for instance COPY or RENAME.  This can also happen if you tried
 to use an old root file -- one whose storage area file names
 have been reused for another database.

 User Action:  Restore the correct storage area file or delete
 the obsolete root file.

INVDB_NAME

 invalid database name

 Explanation:  A misspelled or nonexistent database name was
 specified in the command string.  A database name must contain
 only the following characters:  A/a-Z/z, 0-9, $, _.

 User Action:  Reenter the command with the correct spelling of a
 valid database name.

INVDTYPINDX

 cannot use computed by or segmented string for index

 Explanation:  You attempted to define an index using either a
 COMPUTED BY field or a segmented string as the key.

 User Action:  Select another field as the key.

INVHEADER

 invalid file header record

 Explanation:  An invalid file header record was read from the
 file.

 User Action:  Check the file specification and try again.

INVNAME

 symbol <str> contains invalid characters

 Explanation:  Name symbols may contain only the characters A
 through Z, 0 through 9, and $ and _.  They may not end in $ or
 _.

 User Action:  Use a different name symbol.

INVTBL_NAME

 invalid relation name

 Explanation:  You entered a misspelled or nonexistent relation
 name.

 User Action:  Reenter the command with the correct spelling of a
 valid relation name.

INV_DATE_CHG

 invalid field datatype change to/from DATE

 Explanation:  User attempted to change the data type of a global
 field to or from DATE with an incompatible data type.

 User Action:  Use the TEXT data type.

INV_RATOR

 invalid operator for arithmetic

 Explanation:  The operator was not +, -, *, or /.

 User Action:  The query should not get this far before this is
 detected.  Submit an SPR with a copy of your query.

INV_ROOT

 database file has illegal format

 Explanation:  You attempted to use a file that is not a database
 file.

 User Action:  Check the file specification and try again.

LASTARENOLIMIT

 last area clause must not have a LIMIT clause

 Explanation:  You specified limits (RDO) or BLR (DSRI) for the
 data to be inserted into the last area listed.  User Actions:
 Do not specify a limit for the data in the last storage area.

LBMAX

 <num> blocks per buffers is greater than the Rdb/VMS maximum
 of <num>

 Explanation:  The number of blocks per buffers for the database
 you specified is too large.

 User Action:  Try another value.

LBMIN

 <num> blocks per buffers is less than the Rdb/VMS minimum of
 <num>

 Explanation:  The number of blocks per buffers for the database
 you specified is too small.

 User Action:  Try another value.

LCKCNFLCT

 lock conflict on <str>

 Explanation:  The operation you attempted failed because another
 run unit is holding a lock in a mode that conflicts with the
 lock mode you needed.

 User Action:  Wait for the other run unit to finish.  Use
 ROLLBACK or COMMIT to release all your locks and retry the
 transaction, or specify that you want to wait on lock conflicts.

LOGAIJBCK

 backed up <num> committed transaction(s) at <time>

 Explanation:  The specified number of committed transactions
 were successfully backed up from the after-image journal file.
 This count does not include transactions that rolled back.

LOGRECOVR

 <num> transaction(s) <str>

 Explanation:  Database recovery was successful.  The specified
 number of transactions were re-applied to the database, ignored
 or rolled back.

 User Action:  None.

LOGRECSTAT

 transaction with TSN <num> <str>

 Explanation:  During rollforward, this message is displayed
 every time a transaction is committed, rolled back, or ignored.

MAPAREAINUSE

 area <str> already specified for map <str>

 Explanation:  You used the area name more than once in the same
 storage map.  User Actions:  Use the area name only once in the
 storage map definition.

MAPBLRMISSING

 one or more areas is missing limitation

 Explanation:  You have not specified limits or BLR for all areas
 that are required to have limits.  You can omit limits on all
 storage areas, and you must omit limits on the last storage
 area.  User Actions:  Specify limits on all the areas except the
 last, or do not specify limits on any of the areas.

MAPNMINUSE

 map name <str> is already in use in this database

 Explanation:  You tried to define a map or index using a name
 that already exists in the database.  User Actions:  Use a name
 that has not already been used in the database.

MAPREFAREA

 error deleting storage area <str> referenced by <str>

 Explanation:  You attempted to delete a storage area currently
 referenced by a storage map.

 User Action:  Make sure the storage area you wish to delete is
 empty and no storage maps refer to it.

MAXRELVER

 exceeded maximum relation identifier

 Explanation:  No more relation identifiers are available.

 User Action:  Unload your database, recreate the database, and
 reload.

MAX_CCTX

 exceeded maximum allowable context number

 Explanation:  A context identification number greater than 32
 was encountered.

 User Action:  If you called Rdb/VMS, check the query string;
 otherwise submit an SPR.

MISMMORDD

 missing either month or day field in date string

 Explanation:  The date string must contain the month and day
 field.  If it does not, it will not be converted to the DATE
 data type.

 User Action:  Reenter the DATE data item having both the month
 and day fields.

MIXCLUST

 relation or index may not be stored in mixed and uniform areas

 Explanation:  You attempted to define a storage map that refers
 to both mixed and uniform areas.

 User Action:  Define the storage map to refer to only uniform
 areas or only mixed areas.

MONALSTART

 database monitor is already running

 Explanation:  The database monitor has previously been started.

 User Action:  Continue or see your system manager.

MONMBXOPN

 monitor is already running

 Explanation:  The monitor has already been started by another
 user.

 User Action:  None.

MONSTOPPED

 database monitor process is being shut down

 Explanation:  The request you made could not be completed
 because the database monitor process is being shut down.

 User Action:  Examine the database monitor log file
 (SYS$SYSTEM:*MON.LOG) for more information.

MULTCHGAREA

 multiple references to area <str> in same CHANGE DATABASE
 command

 Explanation:  You attempted to change one storage area multiple
 times in your CHANGE DATABASE statement.

 User Action:  Combine your changes to one storage area to one
 clause.

MUSTRECDB

 database must be closed or recovered

 Explanation:  The operation can be done only on databases that
 are closed and recovered.

 User Action:  Use the CLOSE command if an OPEN was performed.
 Recovery, if required, can be forced by opening the database.
 If other users are accessing the database, you must wait for
 them to finish.

NBMAX

 <num> number of buffers is greater than the Rdb/VMS maximum
 of <num>

 Explanation:  The number of buffers for the database you
 specified is too large.

 User Action:  Try another value.

NBMIN

 <num> number of buffers is less than the Rdb/VMS minimum of
 <num>

 Explanation:  The number of buffers for the database you
 specified is too small.

 User Action:  Try another value.

NOACCSEGSTR

 cannot access buffer for segmented string

 Explanation:  At least part of the user's buffer is not
 accessible.

 User Action:  Check program logic; the segmented string buffer
 address and/or length is incorrect.

NOAIJDEF

 no default after-image filename available

 Explanation:  A default after-image journal file name cannot be
 formed since no journal file name is presently in the database
 root.

 User Action:  Enable after-image journaling and supply a name
 for the after-image journal.

NOCHAR

 no character after '' in pattern

 Explanation:  A MATCH operation was in progress and the pattern
 was exhausted with the pattern quote character as the last
 character in the pattern.

 User Action:  Rewrite the expression in error to have the proper
 format.

NOCHGRDBSYS

 cannot change RDB$SYSTEM storage area explicitly

 Explanation:  You included a CHANGE STORAGE AREA RDB$SYSTEM
 clause in the CHANGE DATABASE statement.

 User Action:  Issue the CHANGE DATABASE statement without this
 clause.  When you change database-wide parameters, the
 RDB$SYSTEM parameters are automatically changed.

NOCHGVW

 the definition of a view may not be changed

 Explanation:  You cannot change a view definition.

 User Action:  A view may be changed by deleting its old
 definition and defining a new one.

NOCREMBX

 can't create mailbox

 Explanation:  An error occurred while you attempted to create a
 mailbox.  See the secondary message for more information.

 User Action:  Correct the condition and try again.

NODBK

 <num>:<num>:<num> does not point to a data record

 Explanation:  An attempt was made to fetch a record by its
 database key value, but the record has been deleted.

 User Action:  Correct the condition and try again.

NODEVDIR

 !AC file name does not include device and directory

 Explanation:  The file you specified did not include a device
 and directory.

 User Action:  You should always include a device and directory
 in the file specification, preferably different from the
 database device for maximum protection.

NODMAX

 <num> number of VAXcluster nodes is greater than the Rdb/VMS
 maximum of <num>

 Explanation:  The number of VAXcluster nodes which may access
 the database you specified is too large.

 User Action:  Refer to documentation and try another value.

NODMIN

 <num> number of VAXcluster nodes is less than the Rdb/VMS
 minimum of <num>

 Explanation:  The number of VAXcluster nodes which may access
 the database you specified is too small.

 User Action:  Refer to documentation and supply another value.

NOINTERUNI

 no interval may be specified on uniform format pages

 Explanation:  You attempted to specify a spam interval on a
 PAGES UNIFORM storage area.

 User Action:  Do not specify an interval, as one will be
 automatically determined for you.

NOMONITOR

 database monitor is not running

 Explanation:  The database monitor process is not running.

 User Action:  Have your database administrator start the
 monitor, and try again.

NONODE

 no node name is allowed in the file specification

 Explanation:  A node name was found in the file specification.
 Node names cannot be used.

 User Action:  Use a file name without a node specification.

NOPRIV

 no privilege for attempted operation

 Explanation:  You attempted an operation that requires VMS
 privileges and you do not have those privileges enabled.

 User Action:  Examine the secondary message for more
 information.

NORTUPB

 no more user slots are available in the database

 Explanation:  The maximum number of users are already accessing
 your database.

 User Action:  Try again later.

NOSIP

 transaction is not a snapshot transaction

 Explanation:  You have already started a transaction that is not
 a snapshot transaction.

 User Action:  Use COMMIT or ROLLBACK to terminate your current
 transaction.  Use READY BATCH RETRIEVAL to start a new snapshot
 transaction.

NOSNAPS

 snapshots are not allowed or not enabled for area <str>

 Explanation:  Snapshots are not allowed or not enabled for this
 area.

 User Action:  This is a normal situation created by the database
 definition or by a change or modify database command.  Check
 with your DBA to make sure this situation is desirable.

NOSTAREAEXT

 storage area not defined in the database

 Explanation:  A storage area mentioned in the CHANGE DATABASE
 statement is not defined in the database.

 User Action:  Reenter your statement with valid storage area
 names.

NOSTRTUP

 database software not started

 Explanation:  Before you can use VAX Rdb/VMS, the software must
 be started.

 User Action:  Execute the command procedure
 SYS$MANAGER:RMONSTART.COM

NOTBOOL

 expression in AND, OR, or NOT was not a Boolean

 Explanation:  The Boolean evaluator was processing an expression
 or subexpression of the form "A AND B", "A OR B", or "NOT A".
 Either the "A" or the "B" expression was not in the proper form.
 The correct forms are "NOT X", "X EQ Y", "X NE Y", "X LT Y", "X
 GT Y", "X LE Y", "X GE Y", "X CONTAINS Y", or "X MATCHES Y".
 The operand of NOT, and both sides of AND and OR expressions
 must be Boolean expressions.

 User Action:  Rewrite the expression in error to have the proper
 format.

NOTDSKFIL

 filespec does not specify disk device type

 Explanation:  An error occurred while you attempted to create an
 AIJ file.

 User Action:  Modify the database with a valid AIJ filespec.

NOTHRESUNI

 no thresholds may be specified on uniform format pages

 Explanation:  You attempted to specify thresholds on PAGES
 UNIFORM storage area.

NOTIMPLYET

 feature is not implemented yet

 Explanation:  You attempted to access a feature that has been
 planned but has not been implemented yet.

 User Action:  Avoid this feature.

NOTIP

 no transaction in progress

 Explanation:  You attempted to execute a DML verb, but there is
 no transaction in progress yet.

 User Action:  Execute a READY statement before executing any
 other DML statements.

NOTOPE

 this record stream for this cursor is not OPEN

 Explanation:  The call to RDMS$SEND or RDMS$RECEIVE has failed.
 You attempted to use a stream that is not open.

 User Action:  Call RDMS$START_REQUEST to open the stream.

NOTRANAPP

 no transactions in this journal were applied

 Explanation:  This journal file contains transactions that
 cannot be applied to the specified backup of the database.

 User Action:  Be sure you are using the correct database backup
 and journal file.

NOTROOT

 not a root file

 Explanation:  The specified file is not a database root file.

 User Action:  Specify a database root file and try again.

NOTSYSCONCEAL

 non-system concealed device name in filename

 Explanation:  Concealed device name must be defined in the
 system logical table.

 User Action:  If the device name has to be concealed, then
 define it in the system logical table.

NOT_BOUND

 database is not bound

 Explanation:  You have not bound to a database yet, or you have
 unbound the database and have not bound to another one yet.

 User Action:  Bind to a database before continuing.

NOT_LICENSED

 system is not licensed for use of database software

 Explanation:  A VAX Rdb/VMS kit has not been properly installed
 on the system.

 User Action:  Check to see that you are licensed to use VAX
 Rdb/VMS; and if you are, install or re-install the VAX Rdb/VMS
 kit.

NOT_READY

 storage area <str> not in ready mode

 Explanation:  You attempted to access an area for which you have
 not declared your intentions.

 User Action:  If the area is included in your subschema, you can
 use the READY statement to prepare it for processing.

NOT_RESERV

 attempt to access relation not mentioned in reserving list

 Explanation:  You tried to access a relation not mentioned in
 the reserving list of your START_TRANSACTION statement.

 User Action:  Start a new transaction and include the required
 relations in the reserving list.

NOT_UPDATE

 storage area <str> not readied in update usage mode

 Explanation:  You attempted to modify the contents of an area
 without having declared your intentions.

 User Action:  If you have not readied the area yet, you can
 READY for UPDATE.  If you have already readied it, you must
 abort your transation by executing a ROLLBACK before you can
 READY for UPDATE.

NOT_VALID_FR

 field <str> in relation <str> fails validation

 Explanation:  While attempting the change field ...  valid if,
 data was found which violated the specified criteria.

 User Action:  Either change the validation criteria or change
 the data.

NOVIEWIND

 cannot define an index for a view

 Explanation:  You attempted to define an index for a view.

 User Action:  Define an index for the field in the relation
 named in the view definition.

NOWILD

 no wild cards are allowed in the file specification

 Explanation:  Wild card characters ("*" and "%") cannot be used
 in that file specification.

 User Action:  Use a file specification without wild card
 characters.

OBSVER

 obsolete version of database

 Explanation:  You are trying to use an obsolete version of an
 Rdb/VMS database.

 User Action:  Using an older version of Rdb/VMS, back up the
 database, and then restore it using your current version of
 Rdb/VMS.

OK_NO_ACE

 successful protection execution - no ACE returned

 Explanation:  Indicates that no access control entry is
 returned.

 User Action:  No user action.

OPERCLOSE

 database operator requested database shutdown

 Explanation:  Your program has been terminated because the
 database operator shut down the database you were using.

 User Action:  Try again later after the database shutdown is
 complete.

OPERSHUTDN

 database operator requested monitor process shutdown

 Explanation:  Your program has been terminated because the
 database operator shut down the database monitor process.

 User Action:  Try again later after the database shutdown is
 complete.

OVERFLOW

 data conversion overflow

 Explanation:  A loss of information would have occurred on a
 data item transformation.  The operation was not performed.

 User Action:  Correct the error and try again.

PREMEOF

 premature end of file encountered in <str>

 Explanation:  A premature end-of-file was encountered while
 reading the specified file.

QIOXFRLEN

 data transfer length error - expected <num>, actual <num>

 Explanation:  The expected data transfer length was not equal to
 the actual data transfer length.

 User Action:  This is usually caused by a hardware problem.

QUIETPT

 waiting for database quiet point

 Explanation:  User is waiting for the quiet lock in order to
 force a database quiet point.

 User Action:  None.

RECMAXEXC

 relation <str> definition exceeds data limit

 Explanation:  You attempted to define or change a relation that
 is too large.

 User Action:  Modify the relation definition.

RELALRDYMP

 there already exists a map for relation <str>

 Explanation:  You tried to define a storage map for a relation
 that already has a storage map defined for it.  User Actions:
 Use CHANGE STORAGE MAP if you want to change the storage map for
 that relation.

RELEXI

 field <str> is used in relation <str>

 Explanation:  The specified field you attempted to delete is
 used in a relation.

 User Action:  You should first change the relation to exclude
 this field, and then delete the field.

RELEXTS

 there is another relation named <str> in this database

 Explanation:  The relation name you tried to define already
 exists.

 User Action:  Use another relation name.

RELFLDEX

 there is another field named <str> in relation <str>

 Explanation:  The field name you want to define already exists
 in this relation.

 User Action:  Choose another name for the field.

RELFLDNOC

 field <str> in relation <str> has not been changed

 Explanation:  The field named was not changed.

 User Action:  Correct the problem and then change the field.

RELFLDNOD

 field <str> has not been deleted from relation <str>

 Explanation:  The field named was not deleted.

 User Action:  Correct the problem and then delete the field.

RELINCOM

 relation <str> is referenced in COMPUTED BY field <str> in
 relation <str>

 Explanation:  You attempted to delete a field from a relation
 but the field is used in a COMPUTED BY field in another
 relation.

 User Action:  First, review the database design; then, if
 desired, delete the COMPUTED BY field, and then delete the field
 from the relation.

RELNEXTS

 relation <str> does not exist in this database

 Explanation:  The relation name you tried to use does not exist.

 User Action:  Use another relation name.

RELNOEXI

 relation <str> does not exist in this database

 Explanation:  The relation that you attempted to delete was not
 found.

 User Action:  Check the name of the relation using the SHOW
 command and try again to delete it.

RELNOTCHG

 relation <str> has not been changed

 Explanation:  The specified relation was not changed.

 User Action:  Correct the problem and retry the metadata update.

RELNOTDEL

 relation <str> has not been deleted

 Explanation:  The specified relation was not deleted.

 User Action:  Correct the problem and retry the metadata update.

RELNOTEMPTY

 relation <str> has data in it

 Explanation:  You specified a storage map for a relation which
 has data in it.  User Actions:  You cannot specify a storage map
 for a relation that has data in it.  Specify a relation that
 does not already have data stored in it.

RELUSETRA

 relation <str> is used in a transferred definition

 Explanation:  The specified field is used in the specified
 relation.  The relation is involved in a DDAL transfer
 definition.

 User Action:  You must delete the DDAL transfer definition
 before modifying the field.

REQUNIFORM

 storage area RDB$SYSTEM must contain uniform format pages

 Explanation:  You attempted to assign PAGE FORMAT IS MIXED to
 RDB$SYSTEM storage area.

 User Action:

RESTART

 restarted recovery after ignoring <num> committed
 transaction(s)

 Explanation:  The specified number of committed transactions did
 not apply to this database root.  All subsequent transactions
 were applied.

 User Action:  None.

ROOMAJVER

 root major version is incompatible with the DBCS

 Explanation:  Your database was created with an incompatible
 version of the software.

 User Action:  Your database cannot be used with the version of
 the software you have installed on your machine.

ROOTMAJVER

 database format is not compatible with software version

 Explanation:  Your database was created with an incompatible
 version of the software.

 User Action:  Your database cannot be used with the version of
 the software you have installed on your machine.

RUJDEVDIR

 RUJ file name does not include device and directory

 Explanation:  The file you specified did not include a device
 and directory.

 User Action:  You should always include a device and directory
 in the file specification, preferably different from the
 database device for maximum protection.

SEGSTR_NO_CHG

 you cannot change a field's datatype to or from a segmented
 string

 Explanation:  Nonsegmented string fields cannot be changed to or
 from segmented string fields.

 User Action:  Define a new field with the desired data type and
 use a program to properly load/unload the segmented string.

SETWIDTH

 error setting width of terminal

 Explanation:  An error occurred while parsing a file name.

 User Action:  Examine the secondary message for more
 information.

SIP

 transaction is a snapshot transaction

 Explanation:  You have already started a transaction that is a
 snapshot transaction.

 User Action:  Use READY BATCH RETRIEVAL to ready the area for
 the snapshot transaction or use COMMIT to terminate the snapshot
 transaction.

SNAPFULL

 snapshot area too full for operation

 Explanation:  You attempted to store a record in the database,
 because there was an active reader and the snapshot area in
 which the record would go is too full.

 User Action:  Modify the snapshot area extend parameter to allow
 snapshot area extension.

SPIMAX

 spam interval of <num> is more than the Rdb/VMS maximum of
 <num>

 Explanation:  The SPAM interval you specified is too large.

 User Action:  Choose a smaller interval.

SPIMIN

 spam interval of <num> is less than the Rdb/VMS minimum of
 <num>

 Explanation:  The SPAM interval you specified is too small.

 User Action:  Choose a larger interval.

SSNOTINROOT

 <str> is not in the root file

 Explanation:  The DDCB you specified is not in the root file.
 You can see which DDCBs a root file has with the DBO/DUMP
 command.

 User Action:  Add the DDCB to your root file (DBO/MODIFY), or
 check your bind sequence and try again.

STALL

 asynchronous operation requires a stall

 Explanation:  The operation has not completed yet.

 User Action:  Check the event flag and I/O status block for
 final completion and submit and SPR..

STAREAFUL

 storage area too full for operation

 Explanation:  You attempted to store a record in the database,
 but the storage area in which the record would go is too full.

 User Action:  Modify the storage area extend parameter to allow
 storage area extension.

STOMAPNOEXI

 storage map <str> does not exist in this database

 Explanation:  The storage map you attempted to delete was not
 found.

 User Action:  Check the name of the storage map using the SHOW
 command and try again to delete it.

SYMTOOBIG

 symbol <str> is longer than the maximum 31 characters

 Explanation:  The maximum size for a symbol name is 31
 characters.  You attempted to use a symbol longer than 31
 characters.

 User Action:  Use a shorter symbol.

SYNERR

 request synchronization error

 Explanation:  You tried to send a message to Rdb/VMS when
 Rdb/VMS was not expecting it, or you tried to receive a message
 from Rdb/VMS when Rdb/VMS was not prepared to send it.

 User Action:  If you called Rdb/VMS directly, correct your BLR
 or calling program.  If you are using a program that generates
 calls to Rdb/VMS, submit an SPR for that program.

TABIDNOTDEF

 relation ID, <num>, is not defined in database

 Explanation:  The specified relation identification does not
 exist in the current database.

 User Action:  Invoke the correct database.  Specify the correct
 relation identification.  Perhaps you specified a term or
 keyword where the parser expected a relation identification.

TABNOTDEF

 relation <str> is not defined in database

 Explanation:  The specified relation does not exist in the
 current database.

 User Action:  Invoke the correct database.  Spell the relation
 name correctly.  Perhaps you specified a term or keyword where
 the parser expected a relation name.

TADMISMATCH

 journal is for database version <time>, not <time>

 Explanation:  The version time and date stamp in the root does
 not match the version time and date stamp in the journal file.
 This journal cannot be applied to this backup.

 User Action:  Use the correct journal file or backup file.

TERMINATE

 database monitor forced image exit to protect database

 Explanation:  To maintain the integrity of the database, the
 monitor forced your image exit because an unrecoverable error
 has been detected.

 User Action:  Restart your transaction.

TRANSFDEF

 there is another transfer named <str> for this database

 Explanation:  DDAL tried to store information in the source
 database for the transfer name given and discovered that the
 transfer name was already stored.

 User Action:  Delete this replication transfer, and pick a new
 transfer name.

TRAN_IN_PROG

 transaction in progress

 Explanation:  You attempted an operation that is allowed only
 when you have no transaction in progress.

 User Action:  Complete your transaction by executing a COMMIT or
 ROLLBACK.

TRUE

 condition value is true

 Explanation:

TRUNCATION

 data conversion truncation error

 Explanation:  You attempted an operation that would cause loss
 of information on a data item movement.

 User Action:  Correct the error and try again.

UNDERFLOW

 data conversion underflow

 Explanation:  You attempted an operation that would cause loss
 of information on a data item movement.

 User Action:  Correct the error and try again.

UNSARITH

 expression includes unsupported arithmetic operation

 Explanation:  The Boolean evaluator was processing an expression
 or sub-expression that contained an arithmetic operator.
 Arithmetic operators are not supported.

 User Action:  Rewrite the expression in error without the
 arithmetic operator.

UNSCOMP

 unsupported data comparison

 Explanation:  You attempted an operation that would compare two
 incommensurate data items.

 User Action:  Correct the error and try again.

UNSCONV

 unsupported data conversion

 Explanation:  You attempted an operation that would cause loss
 of information on a data item movement.

 User Action:  Correct the error and try again.

UNS_DTYPE

 unsupported datatype

 Explanation:  Rdb/VMS does not support this data type.

 User Action:  Refer to documentation for information on data
 types and host language data type conversion.

UPDINSNAP

 cannot update in READ_ONLY transaction

 Explanation:  You tried an update operation in a transaction
 started without the READ_WRITE option.

 User Action:  Use the START_TRANSACTION READ_WRITE statement.

USRMAX

 <num> number of users is greater than the Rdb/VMS maximum of
 <num>

 Explanation:  The number of users for the database you specified
 is too large.

 User Action:  Refer to documentation and try another value.

USRMIN

 <num> number of users is less than the Rdb/VMS minimum of <num>

 Explanation:  The number of users for the database you specified
 is too small.

 User Action:  Refer to documentation and supply another value.

VIEWEXI

 relation <str> is referenced by view <str>

 Explanation:  Before deleting a relation, all constraints and
 views based on this relation must be deleted.

 User Action:  Delete the dependent views and any constraints
 that refer to the relation, then delete the relation.

VIEWINVIEW

 view <str> is referenced by view <str>

 Explanation:  A view cannot be deleted if another view depends
 upon it.

 User Action:  Delete the dependent view first.

VIEWNOEXI

 view <str> does not exist in this database

 Explanation:  The view you attempted to delete was not found.

 User Action:  Check the name of the view using the SHOW command
 and try again to delete it.

VIEWNOTDEL

 view <str> has not been deleted

 Explanation:  The specified view was not deleted.

 User Action:  Correct the problem and retry the metadata update.

VIEWNOUP

 view cannot be updated

 Explanation:  A view containing a CROSS, REDUCE TO, or FIRST
 clause cannot be updated.

 User Action:  Update the relations to which the view refers.

VIEW_NO_ANA

 views cannot be analyzed

 Explanation:  You attempted to analyze a view.

 User Action:  Use a relation name.

WASBOOL

 expression in CONTAINS or MATCHES was a Boolean

 Explanation:  The Boolean evaluator was processing an expression
 or sub-expression of the form "A CONTAINS B" or "A MATCHES B".
 Either the "A" or the "B" expression was a Boolean of the form
 "NOT X", "X EQ Y", "X NE Y", "X LT Y", "X GT Y", "X LE Y", "X GE
 Y", "X CONTAINS Y", or "X MATCHES Y".  Neither side of CONTAINS
 and MATCHES expressions are allowed to be Boolean expressions.

 User Action:  Rewrite the expression in error to have the proper
 format.

WISH_LIST

 feature not implemented yet

 Explanation:  The action you requested requires a feature that
 is not implemented in the current version of this product.

 User Action:  Try a simpler way of doing things.

WRNG_REL

 attempt to retrieve <str> with DBKEY from another relation

 Explanation:  You attempted to retrieve a relation using a
 database key value, but the database key was from another
 relation.

 User Action:  Supply the key value from the correct relation.

XPR_STACK_OFLO

 expression forces too many levels of recursion

 Explanation:  You provided an expression which forces too many
 levels of recursion.  The expression should be rewritten to use
 parentheses and therefore cause fewer levels of recursion.

 User Action:  Rewrite the expression.

RDO

Additional information available:

ACCVIOACENOTFNDAGGNOTALLAIJDEVDIRAIJDISABLED
AIJENABLEDAMB_KEYWORDANODBHANDANYNOTALL
AREABUSYAREA_CORRUPTAREA_INCONSISTARIEXPEXP
ATTMISSINGBACKCONVBADADJLOCKGRANBADAIJFILE
BADAIJVERBADASCTOIDBADBLOBBADBNDPRM
BADBOUNDSBADCLUMPBADCORATTBADDATDEF
BADDBNAMEBADEPILOGUEBADFILEVERBADFILTYP
BADFLDTYPBADINTERVALBADLOGFILEBADLOGNAM
BADMETNAMBADMVIEWFLDBADMVIEWRELBADMVIEWVEW
BADMVRELSBADMVVIEWSBADPAGEFORMATBADPROLOGUE
BADRECBUFBADROLMVFLDBADROOTMATCHBADSNAPFILENAME
BADTHRESHOLDBADVAXCLUSNODESBAD_END_NAMEBAD_NAME
BDDATRANGBKUPEMPTYAIJBOOEXPEXPBOUND
BUFTOOSMLBUGCHECKBUGCHKBUGCHKDMPCABORT
CANTASSMBXCANTBINDRTCANTCLOSEDBCANTCONVERT
CANTCREDBRCANTCREGBLCANTCREMBXCANTCREMON
CANTCVRTCANTDELETECANTLCKTRMCANTMAPTROOT
CANTOPENDBCANTOPENINCANTQIOMBXCANTREADDB
CANTREADDBSCANTSNAPCANTSPAWNCANTWRITEDBS
CDDDEFERRCDDERRCHDBNOPARAMCHECKSUMCLOSERR
CMDINTRCMPBYINVWCNTSPNSUBCNVNUMDAT
COMPLEXCOMPNOTRANSCOMTOOLONCONALREXI
CONAMBIGCONCHAILLCONFATRSPECCONNOTDEF
CONVARDEFCONVARILLCONVARUNDCONVERR
CONVONLYCVT_PROCEEDDATCNVERRDATCONERR
DATNOTSUPDATTYPUNKDBACTIVEDBBUSYDBHANDUNK
DBHDLREQDBKNOTALLDBNAMEHVDBNOTACTIVE
DBNOTOPENDBNOTSPECDBRABORTEDDBSHUTDOWN
DB_CVT_FAILDB_CVT_SCSDB_HANDECDB_HANDEC2
DB_HANLONDB_NOTCVTDDALERRDEADLOCKDEGMODSPC
DELAREADELBACKUPDESCTOOBIGDUPFLDDEF
EMPTYAIJEMPTYFILEERRACCROOERRDETERREXTFIL
ERRFILSIZERRFMTFILERRFOREIGNERRMODEOF
ERROPENINERROPENOUTERROPNOUTERRPARSFIL
ERRREADERRREADINGERRRUJFILERRTRUNFILERRWRITE
ERRWRITINGEXPCV_DOTEXQUOTAEXTNOTSUP
EXTRADATAFETNOTDONFIELD_EXISTSFIENOTALL
FIENOTRENFIENOTSEGFILACCERRFLDAMBIGFLDNOTBCK
FLDNOTCRSFLDNOTDEFFLDNOTINRELFLDNOTREFD
FLUINPBUFGARBLEDHOWCHANOTILLBEGINILLCHARILLNCHAR
IMP_IDX_CONFLICTIMP_IDX_TWICEIMP_STO_CONFLICTIMP_STO_MAP_CONFLICT
IMP_STO_MAP_TWICEIMP_STO_TWICEINDEXTSINTEGDBDIF
INTEGFRFAILINTONOTALWINTSYNERRINVCHAINP
INVCHANUMSTRINVCONSINVDBSFILINVFLDINVHEADER
INVINDEXINVNOTDONINVRELVIEWINVSEGSTRATR
INV_ROOTIOERRORJUNONLINLANFILEXTLCKCNFLCTLENMISMAT
LHSNOTDBNLHSNOTVARLOGAIJBCKLOGRECOVR
LOGRECSTATLOOK_FORLOOK_FOR_CONLOOK_FOR_FIN
LOOK_FOR_STTLOOK_FOR_UNTERMMAXFLDPRTSTRMAXNESEXC
MAXRELEXCMAXVOLLABEXCMISMMORDDMONMBXOPN
MONSTOPPEDMULSPECATRMUSINVPATHMUSTRECDB
MVRELABSNTNOAGGALLNOAIJDEFNOANYALLNOBCKFILNOBCKTRNS
NOCDDNOCDDUPDATNOCHARNOCMPBYRESNOCONRES
NOCREMBXNODATRESNODBHALWNODBHANNODBK
NODBKALLNODBNAMENODEVDIRNODUPLIVIEWNOFLDRES
NOFSTINREPTNOIDXRESNOITEMDEFNOMAPRESNOMLTIMV
NOMLTIMVIEWNOMONITORNOMVRALLNOMVVROL
NONODENOPRECOMPSELNOPRIVNOPRVMVIEWNOPRVMVREL
NOPRVREPLINOPRVROLMVRNOREDINREPTNORELRES
NOREMVERNOREQHANNORTUPBNOSEGSTRAREA
NOSELALLNOSIPNOSNAPSNOSORTINREPTNOSUPREPLI
NOTAVIEWNOTBOOLNOTDSKFILNOTENUFHVNOTEXPSEG
NOTFOUNDNOTIMPLYETNOTIPNOTRANAPPNOTREQSTA
NOTROOTNOTSEGSTRNOTSYSCONCEALNOT_BOUND
NOT_INSTALLEDNOT_READYNOT_UPDATENOUPDCOMP
NOVIERESNOVIEWALWNOVIEWINREPTNOWILDNO_CROSEG
NO_FILFNDNO_FIRSEGNO_MORSEGNO_PERBLO
NO_REDSEGNO_SORSEGNO_SUCH_FIELDNO_TXNOUT
NO_WITSEGNULLNOINDONLFIRVARONLONEDBONLONERED
ONLONEREQONLONESORONLONETRAONLONETRN
ONLONEWITONLYONEPSECTOPENERROPERCLOSE
OPERSHUTDNOPRSTK_OVRFLOOVERFLOWPARSE_STACK_OVERFLOW
PATHREQCDDPREMATURE_EOFPREMEOFQIOXFRLEN
QUIETPTREANOWRTREFSEGSTRRELAMBIGRELNOTDEF
REL_EXISTSREMNOTALWRESABORTRESERVED_WORD
RESTARTRETMODSPCROOMAJVERROOTMAJVER
RSENOTSEGRTOCMDILLRUJDEVDIRSCALEOPSBASIC
SEGALRSTASEGNOTSTASEGOUTSCOSEGSTREXP
SELMORVALSETWIDTHSEVERRDETSFDBONLYSIP
SNAPFULLSPACREQSSNOTINROOTSTALLSTAREAFUL
STARNOTALLSTOCONVARSTOMAP_LITSSTRALRDEC
STRALROPESTRLITMISQUOSTRNOTDECSTRNOTOPE
STROUTSCOSYM_EXPSYNTAX_ERRTADMISMATCH
TERMINATETOKTOOBIGTOOBIGBLRTRAACT
TRAACT_1TRAACT_2TRAACT_3TRAHDLBVALTRAHDLINV
TRAMODSPCTRANONERR1TRANONERR2TRAN_IN_PROG
TREE_OVRFLOTRUETRUNCATIONUNBTMPFIL
UNDERFLOWUNLCONVARUNSARITHUNSCOMPUNSCOMPBY
UNSCONVUNSDSCCLAUNSSTRXPRUNSSUPDAT
UNTSTRUSINGNOTSPECVEWNOTDEFWAIMODSPC
WASBOOLWISH_LISTZABORT

ACCVIO

 access violation on read/write of user address

 Explanation:  A readable parameter is not readable by the DBCS
 or a writeable parameter is not writeable by the DBCS.

 User Action:  Pass good parameters to the DBCS.

ACENOTFND

 no matching access control entry found

 Explanation:  In a protection statement that refers to an
 existing access control entry, there was no existing entry that
 matched the input.

 User Action:  Use SHOW PROTECTION to see what the ACL currently
 looks like, and correct your statement.

AGGNOTALL

 aggregate expressions are not allowed in VALID IF expressions

 Explanation:  You entered a VALID IF expression that contained
 something other than an operator, literal value, or the field
 name.

 User Action:  Check the Rdb/VMS Reference Manual for details on
 VALID IF.

AIJDEVDIR

 AIJ file name does not include device and directory

 Explanation:  The file you specified did not include a device
 and directory.

 User Action:  You should always include a device and directory
 in the file specification, preferably different from the
 database device for maximum protection.

AIJDISABLED

 after-image journaling must be enabled for backup

 Explanation:  You attempted to back up an after-image journal
 file for a database that has after-image journaling disabled.

 User Action:  Enable after-image journaling for your database
 and try the backup again at some later time.

AIJENABLED

 after-image journaling must be disabled during recovery

 Explanation:  You attempted to recover your database using an
 after-image journal file, but the database still has after-image
 journaling enabled.

 User Action:  Disable after-image journaling for your database
 and try the recovery again.  After recovery has completed, you
 can enable after-image journaling again.

AMB_KEYWORD

 ambiguous keyword abbreviation

 Explanation:  You used an ambiguous abbreviation.

 User Action:  Specify the entire keyword.

ANODBHAND

 another database has been invoked with the same db_handle
 name <str>

 Explanation:  You specified in the INVOKE statement the same
 name for the db_handle as in a previous INVOKE statement.

 User Action:  Reenter the INVOKE statement with a different
 db_handle name.

ANYNOTALL

 ANY and UNIQUE are not allowed in a VALID IF expression

 Explanation:  You entered a VALID IF expression containing
 something other than an operator, literal value, or field name.

 User Action:  Check the VAX Rdb/VMS Reference Manual for details
 on VALID IF.

AREABUSY

 usage of storage area <str> conflicts with a co-user

 Explanation:  You attempted to ready an area that is already
 being accessed by another user, and that usage mode is
 incompatible with the usage mode you requested.

 User Action:  Wait until the storage area you requested is
 available, and try again, or ready the area with the WAIT
 option.

AREA_CORRUPT

 storage area <str> is corrupt

 Explanation:  The storage area has been corrupted by an abnormal
 termination of a BATCH UPDATE run unit.  It cannot be readied.

 User Action:  Either try to fix the problem by verifying the
 area and then altering the corrupt pages or reload/restore the
 area.

AREA_INCONSIST

 storage area <str> is inconsistent

 Explanation:  The storage area has been marked inconsistent with
 the rest of the database.  It cannot be readied.

 User Action:  Recover the area to make it consistent.

ARIEXPEXP

 an arithmetic expression was expected

 Explanation:  An arithmetic expression was expected in the
 current context.  A Boolean expression was found.

 User Action:  You must use an arithmetic expression in this
 context.

ATTMISSING

 invalid or missing attributes

 Explanation:  Internal error -- a required attribute (such as
 the data type in a GLOBAL FIELD clump) is missing.

 User Action:  Submit an SPR with a copy of the Rdb/VMS
 interchange file (.RBR) that caused the error.

BACKCONV

 please backup your database and use the RMU/CONVERT command

 Explanation:  The database has an obsolete root file and must be
 converted.

 User Action:  The database must be converted.  First make a
 backup copy.  Then use the RMU/CONVERT command.

BADADJLOCKGRAN

 ADJUSTABLE LOCK GRANULARITY clause is not allowed in the
 DEFINE TRANSFER statment.

 Explanation:  You have specified an ADJUSTABLE LOCK GRANULARITY
 clause as an attribute for the target database in a DEFINE
 TRANSFER statement.

 User Action:  Reenter the DEFINE TRANSFER statement without the
 ADJUSTABLE LOCK GRANULARITY clause.

BADAIJFILE

 illegal after-image journal format

 Explanation:  The file you specified is not an after-image
 journal file.

 User Action:  Check the file name and try again.

BADAIJVER

 after-image journal version is incompatible with the DBCS

 Explanation:  Your after-image journal file was created with an
 incompatible version of the software.

 User Action:  Your after-image journal file cannot be used with
 the version of the software you have installed on your machine.

BADASCTOID

 "<str>" is not a valid user identifier

 Explanation:  An error occurred when accessing the rights
 database to translate an identifier name to a binary identifier.

 User Action:  See the secondary error message and supply a valid
 user identifier.

BADBLOB

 unable to IMPORT segmented string

 Explanation:  Error from Rdb$CREATE_SEGMENTED_STRING.  See the
 following message for more information.

 User Action:  If the nature of the problem is not obvious,
 submit an SPR with a copy of the Rdb/VMS interchange file (.RBR)
 that caused the error.

BADBNDPRM

 bad bind parameter <str> value "<str>"

 Explanation:  The logical bind parameter value is invalid.

 User Action:  See the secondary error message for more
 information.

BADBOUNDS

 value not in range <num> to <num>

 Explanation:  The value of the translated logical name is not in
 the range of acceptable values.

 User Action:  Delete the logical name, or redefine it with a
 value in the acceptable range.

BADCLUMP

 invalid clump type encountered

 Explanation:  Internal error - bad data in the Rdb/VMS
 interchange file (.RBR).

 User Action:  Submit an SPR with a copy of the Rdb/VMS
 interchange file (.RBR) that caused the error.

BADCORATT

 invalid core attribute <num>, <num> in .RBR file

 Explanation:  Internal error - bad data in the Rdb/VMS
 interchange file (.RBR).

 User Action:  Submit an SPR with a copy of the Rdb/VMS
 interchange file (.RBR) that caused the error.

BADDATDEF

 illegal default format for date string

 Explanation:  The logical name, SYS$DATE_INPUT, represents the
 default format for a date string.  It is a three character field
 (MDY,DMY, etc.) with M = month, D = day, and Y = year.

 User Action:  Redefine the logical name with a legal date string
 format.

BADDBNAME

 can't find database root <str>

 Explanation:  The database root file you specified could not be
 accessed.

 User Action:  Examine the associated messages to determine the
 reason for failure.

BADEPILOGUE

 only one epilogue file clause can be specified per transfer

 Explanation:  You specified more than one epilogue file clause
 in the DEFINE TRANSFER statement.  This is not permitted.

 User Action:  Reenter the DEFINE TRANSFER statement, specifying
 only one EPILOGUE IS or NOEPILOGUE clause.

BADFILEVER

 incompatible .RBR file type

 Explanation:  This version of RDO cannot import a database from
 this Rdb/VMS interchange file (.RBR).

 User Action:  Use a version of RDO that corresponds to the
 version of RDO that created this file.

BADFILTYP

 database file must have extension "<str>"

 Explanation:  All database files must have the specified file
 type.

 User Action:  You might be attempting to access a nondatabase
 file.  If not, rename or copy the database file to have the
 proper type.

BADFLDTYP

 field <str> of target relation <str> has conflicting field
 types

 Explanation:  In a DEFINE TRANSFER statement of EXTRACTION
 ROLLUP transfer, you have entered MOVE RELATION clauses with the
 same target relation name but specified fields with same names
 but of different data types in the source databases.

 User Action:  Reenter the DEFINE TRANSFER statement by
 specifying the fields of same datatype in all the MOVE RELATION
 clauses with the same target relation .

BADINTERVAL

 INTERVAL clause is not allowed in the DEFINE TRANSFER
 statement.

 Explanation:  You have specified an INTERVAL clause as an
 attribute for the target datbase in a DEFINE TRANSFER statement.

 User Action:  Reenter the DEFINE TRANSFER statement without the
 INTERVAL clause.

BADLOGFILE

 only one log file clause can be specified per transfer

 Explanation:  You specified more than one log file clause in the
 DEFINE TRANSFER statement.  This is not permitted.

 User Action:  Reenter the DEFINE TRANSFER statement, specifying
 only one LOG FILE IS or NOLOG clause.

BADLOGNAM

 invalid log file name

 Explanation:  You entered an invalid log file name.

 User Action:  Refer to the explanation in the user action
 section of the secondary error message.

BADMETNAM

 metadata names must end in A - Z or 0 - 9

 Explanation:  The name given in a DML or DDL statement ended in
 a dollar sign or an underscore.  These symbols are not allowed.

 User Action:  Specify a valid name.

BADMVIEWFLD

 field <str> of relation <str> must be moved for view <str>

 Explanation:  You attempted to transfer a view without
 transferring a field to which the view refers.  You must also
 explicitly transfer in the DEFINE TRANSFER statement all
 relevant fields of relations to which the view refers.

 User Action:  Reenter the DEFINE TRANSFER statement, adding the
 required field to the appropriate MOVE RELATION clause.

BADMVIEWREL

 underlying relation <str> of view <str> must also be moved

 Explanation:  You attempted to transfer a view without
 transferring the relations to which the view refers.  You must
 explicitly transfer the relations to which the view refers in
 the DEFINE TRANSFER statement.

 User Action:  Reenter the DEFINE TRANSFER statement adding the
 required MOVE RELATION clause.

BADMVIEWVEW

 underlying view <str> of view <str> must also be moved

 Explanation:  You attempted to transfer a view without
 transferring other views that underlie the view you want to
 transfer.  You must explicitly transfer the views to which the
 view refers in the DEFINE TRANSFER statement.

 User Action:  Reenter the DEFINE TRANSFER statement adding the
 required views to the MOVE VIEW clause.

BADMVRELS

 move-relations-clause is allowed only once in DEFINE TRANSFER

 Explanation:  You specified more than one move-relations-clause
 in a DEFINE TRANSFER statement.  Possibly you did not separate
 the MOVE RELATION clauses with semicolons.

 User Action:  When you use a DEFINE TRANSFER statement, group
 all the MOVE RELATION clauses together and separate them with
 semicolons.

BADMVVIEWS

 move-views-clause is allowed only once in DEFINE TRANSFER

 Explanation:  You entered more than one move-views-clause in a
 DEFINE TRANSFER statement.  Only one move-views-clause is
 allowed in a DEFINE TRANSFER statement.

 User Action:  Combine all MOVE VIEWS clauses into one list and
 separate the view names with commas.

BADPAGEFORMAT

 PAGE FORMAT clause is not allowed in the DEFINE TRANSFER
 statement.

 Explanation:  You have specified a PAGE FORMAT clause as an
 attribute for the target database in a DEFINE TRANSFER
 statement.

 User Action:  Reenter the DEFINE TRANSFER statement without the
 PAGE FORMAT clause.

BADPROLOGUE

 only one prologue file clause can be specified per transfer

 Explanation:  You specified more than one prologue file clause
 in the DEFINE TRANSFER statement.  This is not permitted.

 User Action:  Reenter the DEFINE TRANSFER statement, specifying
 only one PROLOGUE IS or NOPROLOGUE clause.

BADRECBUF

 NUMBER OF RECOVERY BUFFERS clause is not allowed in the
 DEFINE TRANSFER statement.

 Explanation:  You have specified the NUMBER OF RECOVERY BUFFERS
 clause as an attribute for the target database in a DEFINE
 TRANSFER statement.

 User Action:  Reenter the DEFINE TRANSFER statement without the
 NUMBER OF RECOVERY BUFFERS clause.

BADROLMVFLD

 MOVE RELATION clauses of target relation <str> have different
 fields

 Explanation:  In a DEFINE TRANSFER statement of EXTRACTION
 ROLLUP transfer, you have entered MOVE RELATION clauses with the
 same target relation name but specified different set of fields
 ineach clause.

 User Action:  Reenter the DEFINE TRANSFER statement by
 specifying the same set of fields in all the MOVE RELATION
 clauses with the same target relation .

BADROOTMATCH

 root file "<str>" no longer has its original name "<str>"

 Explanation:  The current root filename does not match the name
 the used when the root file was created.  This could happen if
 you copied or renamed the root file, or if the file was created
 using a concealed logical device name and that logical name is
 no longer defined.

 User Action:  Rename or copy the root file back to its original
 name or location, or redefine the necessary concealed logical
 device name in the system logical name table.

BADSNAPFILENAME

 SNAPSHOT_FILENAME clause is not allowed in the DEFINE
 TRANSFER statement.

 Explanation:  You have specified a SNAPSHOT_FILENAME clause as
 an attribute for the target database in a DEFINE TRANSFER
 statement.

 User Action:  Reenter the DEFINE TRANSFER statement without the
 SNAPSHOT_FILENAME clause.

BADTHRESHOLD

 THRESHOLDS clause is not allowed in the DEFINE TRANSFER
 statement.

 Explanation:  You have specified a THRESHOLDS clause as an
 attribute for the target database in a DEFINE TRANSFER
 statement.

 User Action:  Reenter the DEFINE TRANSFER statement without the
 THRESHOLDS clause.

BADVAXCLUSNODES

 NUMBER OF VAXCLUSTER NODES clause is not allowed in the
 DEFINE TRANSFER statement.

 Explanation:  You have specified a NUMBER OF VAXCLUSTER NODES
 clause as an attribute for the target database in a DEFINE
 TRANSFER statement.

 User Action:  Reenter the DEFINE TRANSFER statement without the
 NUMBER OF VAXCLUSTER NODES clause.

BAD_END_NAME

 the name in END <str> does not match item name <str>

 Explanation:  The name given in an END <name> <structure> (for
 example, END name RELATION) does not match the name given to the
 item (DEFINE RELATION name).

 User Action:  Specify the same item name.

BAD_NAME

 identifiers and names may not exceed 31 characters in length

 Explanation:  The name given in a DML/DDL statement was longer
 than the permitted limit.

 User Action:  For data definition statements, specify a shorter
 name.  For data manipulation statements, consult your database
 design specifications to find the correct name.

BDDATRANG

 day, month, or year field in date string out of range

 Explanation:  The month field must be between 1 and 12
 inclusive.  The day field must be between 1 and 31 inclusive.
 The year field must be between 0 and 3000 inclusive.

 User Action:  Reenter the DATE data item with the error
 corrected.

BKUPEMPTYAIJ

 after-image journal file is empty

 Explanation:  An attempt was made to backup an empty after image
 journal file.

 User Action:  Be sure the correct after image journal file was
 specified.

BOOEXPEXP

 a Boolean expression was expected

 Explanation:  Either a numeric or string expression was found
 where a Boolean expression was expected.

 User Action:  You must use a Boolean expression in this context.

BOUND

 multiple binds are not allowed

 Explanation:  You are already bound to a database.  You can only
 be bound to one database at a time for a given stream.

 User Action:  You can execute an UNBIND statement and try the
 BIND again, or use the multiple stream feature to bind to a
 database on another stream.

BUFTOOSML

 buffer size (<num>) is smaller than largest page (<num>)

 Explanation:  The buffer size must be large enough to
 accommodate the largest page size within the database.

 User Action:  Specify a buffer size at least as large as the
 message indicates.

BUGCHECK

 fatal, unexpected error detected

 Explanation:  A fatal, unexpected error was detected by the
 database management system.

 User Action:  Please submit an SPR (and include any bugcheck
 dump files).

BUGCHK

 there has been a fatal error; please submit an SPR; no dump
 was produced

 Explanation:  A fatal error has occurred.

 User Action:  Submit an SPR with information about the
 circumstances under which the bug occurred.  Note that
 RDO$_BUGCHECKs do not produce dumps as RDB$_BUGCHECKs do.

BUGCHKDMP

 generating bugcheck dump file <str>

 Explanation:  The database management system has detected a
 fatal, unexpected error, and is writing a bugcheck dump file
 with the specified file name.

 User Action:  Please send this bugcheck dump file to your
 software specialist, along with any other related programs or
 data.

CABORT

 user entered Control-C to abort command

 Explanation:  You entered a CTRL/C to abort the current command.

 User Action:  None.

CANTASSMBX

 error assigning a channel to a mailbox

 Explanation:  An error occurred while you attempted to assign a
 channel to a VMS mailbox.

 User Action:  Examine the secondary message for more
 information.

CANTBINDRT

 error mapping database root file

 Explanation:  An error occurred while mapping to the database
 root file.

 User Action:  Examine the associated messages to determine the
 reason for failure.

CANTCLOSEDB

 database could not be closed as requested

 Explanation:  The database monitor detected an error while
 attempting to close the database you specified.

 User Action:  Examine the secondary message(s) or look in the
 database monitor log file (SYS$SYSTEM:*MON.LOG) for more
 information.

CANTCONVERT

 CONVERT command may be not issued, use RMU/CONVERT

 Explanation:

CANTCREDBR

 error creating database recovery process

 Explanation:  An error occurred while you attempted to create a
 detached database recovery process.

 User Action:  Examine the secondary message(s) or look in the
 database monitor log file (SYS$SYSTEM:*MON.LOG) for more
 information.

CANTCREGBL

 error creating and mapping database global section

 Explanation:  There was an error while you attempted to create a
 map to the database global section.

 User Action:  Examine the secondary message(s) for more
 information.

CANTCREMBX

 cannot create mailbox

 Explanation:  An error occurred while you attempted to create a
 mailbox.  Mailboxes are used for interprocess communication by
 the database management system.

 User Action:  Examine the associated messages to determine the
 reason for failure.  Usually, you will have to change one of
 your quotas (most likely, the buffered I/O byte count quota or
 the open file quota).

CANTCREMON

 unable to start database monitor process

 Explanation:  An error occurred while you attempted to start the
 database monitor process.  This is a detached process.

 User Action:  Examine the secondary message(s) to determine the
 reason for the failure.

CANTCVRT

 cannot convert this database version

 Explanation:  Your database is not recognized as one which can
 be converted.

 User Action:  Either the database being converted has already
 been converted, is too old to be converted, or is not a
 database.  You should check your backups.

CANTDELETE

 error deleting "<str>"

 Explanation:  An error occurred while you attempted to delete
 the indicated file.  You must be able to change the protection
 on a file in order to delete it.

 User Action:  Examine the associated messages to determine the
 reason for failure.

CANTLCKTRM

 database monitor error establishing termination lock

 Explanation:  The database monitor was unable to assert a
 request on the user's image termination lock.  The user's image
 might already have terminated before the monitor received the
 request.

 User Action:  Examine the secondary message(s) for more
 information.

CANTMAPTROOT

 error mapping to the troot section

 Explanation:  An error occurred while mapping to the shared
 database page-file section.

 User Action:  Examine the associated messages to determine the
 reason for failure.

CANTOPENDB

 database could not be opened as requested

 Explanation:  The database monitor detected an error while
 attempting to open the database you specified.

 User Action:  Examine the secondary message(s) or look in the
 database monitor log file (SYS$SYSTEM:*MON.LOG) for more
 information.

CANTOPENIN

 error opening input file <str>

 Explanation:  An error occurred while opening the input file.

 User Action:  Examine the associated messages to determine the
 reason for failure.

CANTQIOMBX

 unable to send mail to a mailbox

 Explanation:  An error occurred while you attempted to send mail
 to a mailbox.

 User Action:  Examine the secondary message(s) to determine the
 reason for the failure.

CANTREADDB

 error opening or reading database file

 Explanation:  There was an error while you attempted to open or
 read from the database file.

 User Action:  Examine the secondary message(s) for more
 information.

CANTREADDBS

 error reading pages <num>:<num>-<num>

 Explanation:  An error occurred while you attempted to read one
 or more database pages.  The message indicates the storage area
 ID number and the page numbers of the first and last pages being
 read.

 User Action:  Examine the associated messages to determine the
 reason for failure.

CANTSNAP

 can't ready storage area <str> for snapshots

 Explanation:  Snapshots were last enabled for this area by a
 transaction that had not committed before the snapshot started.
 Information to materialize the snapshot is not present.

 User Action:  Restart the snapshot transaction.  If failure of a
 snapshot transaction is critical, you should ready all areas
 before doing any retrievals.

CANTSPAWN

 error spawning subprocess

 Explanation:  An error occurred while you attempted to spawn a
 subprocess.

 User Action:  Examine the secondary message for more
 information.

CANTWRITEDBS

 error writing pages <num>:<num>-<num>

 Explanation:  An error occurred while you attempted to write one
 or more database pages.  The message indicates the storage area
 ID number and the page numbers of the first and last pages being
 written.

 User Action:  Examine the associated messages to determine the
 reason for failure.

CDDDEFERR

 Unable to update or read the CDD default path

 Explanation:  An error occurred updating or reading the CDD
 default path.

 User Action:  Check the CDD message that follows for more
 details.

CDDERR

 error occurred during CDD signin, CDD will not be used

 Explanation:  An error occurred during signin.  Refer to the CDD
 manual for more information.

 User Action:  Check the CDD message that follows for more
 details.

CHDBNOPARAM

 command CHANGE DATABASE included no parameters

 Explanation:  User entered CHANGE DATABASE {PATH | NAME} db_name
 without entering any parameters to change.

 User Action:  Specify what you intend to change on a CHANGE
 DATABASE command.

CHECKSUM

 checksum error - computed <num>, page contained <num>

 Explanation:  The computed checksum for the database page
 disagreed with the checksum actually stored on the page.  This
 usually is caused by a hardware problem.

 User Action:  None.

CLOSERR

 error detected when closing .RBR file

 Explanation:  See the message that follows for details.

 User Action:  In the absence of other error messages, the
 database has probably been imported successfully.

CMDINTR

 this statement is not allowed in a transaction

 Explanation:  You entered a statement that cannot be used when a
 transaction is outstanding.

 User Action:  Commit or rollback the transaction and try the
 statement again.

CMPBYINVW

 view <str> cannot be transferred

 Explanation:  In a DEFINE TRANSFER statement, you are attempting
 to move a view which references a COMPUTED_BY field which
 contains an unsupported value expression.

 User Action:  Reenter the DEFINE TRANSFER statement and omit the
 view that contains the COMPUTED_BY field that uses the
 unsupported value expression.  Refer to the DEFINE TRANSFER
 statement in the Data Distributor Handbook for information on
 what value expressions are supported for a COMPUTED_BY field.

CNTSPNSUB

 cannot spawn subprocess

 Explanation:  The preprocessor was unable to spawn a subprocess
 to compile the program.

 User Action:  Read the next message and determine what to do.

CNVNUMDAT

 cannot convert number to a date string

 Explanation:  A quadword DATE data type is not in the correct
 form to be converted to a text string.

 User Action:  Reenter the DATE data item in the correct format.

COMPLEX

 data conversion error on complex data type

 Explanation:  There would have been loss of information on a
 complex data type conversion.  The operation was not performed.

 User Action:  Enter another value.

COMPNOTRANS

 <str> in relation <str> will not be transferred

 Explanation:  You entered a SELECT FIELDS ALL clause in the
 DEFINE TRANSFER statement to move a relation that contains a
 COMPUTED_BY field using a value expression that is unsupported.
 The DEFINE TRANSFER statement is accepted with all the fields of
 this MOVE RELATION clause except the specified COMPUTED_BY field
 that is unsupported.

 User Action:  Refer to the DEFINE TRANSFER statement in the Data
 Distributor Handbook for information on what value expressions
 are supported.

COMTOOLON

 command line longer than <num> character maximum

 Explanation:  You typed a command line longer than the current
 maximum line length.

 User Action:  Break up the command line with continuation lines.
 There is no practical limit on the total length of all
 continuation lines in a single command.

CONALREXI

 constraint <str> already exists in this database

 Explanation:  You requested that a constraint be named with the
 name of an existing constraint.

 User Action:  Choose a different name.

CONAMBIG

 the constraint <str> was not qualified and is in multiple
 databases

 Explanation:  You must qualify the constraint with database
 handles when accessing more than one database containing that
 constraint.

 User Action:  Make sure the INVOKE statements include
 qualifiers, and retype the query using the appropriate
 qualifier.

CONCHAILL

 cannot begin program with continuation character

 Explanation:  Apparently the COBOL program starts with a
 continuation character.

 User Action:  Correct the source text and resubmit the job.

CONFATRSPEC

 conflicting or contradictory attributes specified

 Explanation:  You specified attributes which cannot be used
 together.  Because Rdb/VMS cannot determine which attribute to
 use, it rejects the command.

 User Action:  Respecify the DDL without the redundant clauses.

CONNOTDEF

 constraint <str> is not defined in database

 Explanation:  The specified constraint does not exist in the
 current database.

 User Action:  Invoke the correct database.  Check the constraint
 name for correct spelling.  Check the constraint definition to
 make sure you did not specify a term where the constraint name
 was expected.

CONVARDEF

 context variable <str> is already defined

 Explanation:  The current statement attempts to define an
 existing context variable such as the P in OPEN IN STREAM S FOR
 P IN PORT.  However, the context variable has already been
 defined in another RSE.

 User Action:  Use another context variable, or close the stream
 in which the context variable is defined.

CONVARILL

 cannot use the context variable, <str>, declared in the store

 Explanation:  A context variable was used in a STORE statement
 that was the same as the one declared in the STORE RSE.
 Example:  STORE J IN PORT USING J.CITY = J.COUNTRY END_STORE

 User Action:  Change the command to include the correct context
 variable.

CONVARUND

 context variable <str> is not defined

 Explanation:  The current statement attempts to use a context
 variable that is not defined in a current RSE.  You may have
 closed the stream in which the context variable was defined.

 User Action:  Use the context variable within a FOR loop, OPEN
 STREAM loop, or aggregate expression.

CONVERR

 data conversion error

 Explanation:  The database management system was unable to
 convert the data item from one datatype to another.

 User Action:  Enter another value.

CONVONLY

 only a CONVERT command may be issued

 Explanation:

CVT_PROCEED

 convert proceeding

 Explanation:  You issued a CONVERT command and the conversion is
 underway.

 User Action:  Wait a moment.

DATCNVERR

 conversion error in date string

 Explanation:  The date string is not in one of the legal
 formats.  As a result, it cannot be converted to the DATE data
 type.

 User Action:  Reenter the DATE data item in one of the correct
 formats.

DATCONERR

 data conversion error

 Explanation:  An error occurred during data conversion.  Refer
 to next message.

 User Action:  The secondary message should clarify the problem.

DATNOTSUP

 date data type not supported in this context

 Explanation:  The output of a date value to the language file is
 not supported.  Example:  HV = rdb$missing(date field).

 User Action:  Do not use dates in this manner.

DATTYPUNK

 datatype unknown.  Expression cannot use only host variables

 Explanation:  An assignment or a Boolean expression must have at
 least one database field or literal.

 User Action:  You must use a database variable or literal in the
 expression.

DBACTIVE

 database is already being used

 Explanation:  You attempted to open a database that is already
 being used.  You can only open a database that is not being
 accessed.

 User Action:  Wait for all users to finish using the database,
 or force the users off by closing the database.

DBBUSY

 database is busy - try again later

 Explanation:  You attempted to access a database that is shut
 down.

 User Action:  Wait for the database to become available, and try
 again.

DBHANDUNK

 no DATABASE command specified a handle of <str>

 Explanation:  You specified an unknown database handle in a
 context variable table definition.

 User Action:  Check the query and the INVOKE statement to make
 sure they match.

DBHDLREQ

 db handle should be specified for EXTRACTION ROLLUP transfers

 Explanation:  In a DEFINE TRANSFER statement of EXTRATION ROLLUP
 transfer , you are attempting to move a relation without
 specifying the database handle of the source database.

 User Action:  Reenter the DEFINE TRANSFER statement by
 specifying the database handle of the source database for eaach
 of the move-relation-clause's.

DBKNOTALL

 DB key references are not allowed in VALID IF expressions

 Explanation:  You entered a VALID IF expression that did not
 contain an operator, literal value, or field name.

 User Action:  Check the VAX Rdb/VMS Reference Manual for details
 on VALID IF.

DBNAMEHV

 a database name is not allowed in a qualified host variable

 Explanation:  You cannot use a database field name to qualify a
 host variable.  For example, you cannot have the following
 expression:  FOR E IN EMPLOYEES WITH E.EMPLOYEE_ID =
 HOST_VAR(E.EMPLOYEE_ID) ~.~.~.

 User Action:  Use an additional GET statement to assign the
 value of the database field to another host variable and use
 that host variable to qualify the first host variable.  For
 example, FOR E IN EMPLOYEES GET HOST-VAR-2 = E.EMPLOYEE_ID FOR
 E1 IN EMPLOYEES WITH E.EMPLOYEE_ID = HOST-VAR(HOST-VAR-2) ~.~.~.
 END_FOR END_FOR

DBNOTACTIVE

 database is not being used

 Explanation:  You attempted to close a database that is not
 open.

 User Action:  There is no need to close the database - it is
 already closed.

DBNOTOPEN

 database is not open for access

 Explanation:  The database must be opened to allow users to
 access it.

 User Action:  Open the database and try again.

DBNOTSPEC

 db handle not specified for segmented string creation

 Explanation:  A CREATE_SEG was done with more than one database
 invoked.  You did not specify in which database the segmented
 string was to be created.

 User Action:  Add a database handle to the segment handle.

DBRABORTED

 database recovery process terminated abnormally

 Explanation:  A detached database recovery process failed to
 recover a transaction.

 User Action:  Examine the database monitor log file and any
 SYS$SYSTEM:*DBRBUG.DMP bugcheck dump files for more information.

DBSHUTDOWN

 database shutdown is in progress

 Explanation:  The request you made could not be completed
 because the database is being shut down.

 User Action:  Examine the database monitor log file
 (SYS$SYSTEM:*MON.LOG) for more information.

DB_CVT_FAIL

 database conversion failed

 Explanation:  You issued a CONVERT command and the conversion
 has failed.

 User Action:  Accompanying messages should indicate further
 action.  The conversion process will have left the database in
 an inconsistent state so you will have to restore a copy of the
 database from the backup media and retry the CONVERT command on
 the restored copy of the database.

DB_CVT_SCS

 database !AC successfully converted from version !UL.!UL to
 !UL.!UL

 Explanation:  You issued a CONVERT command and the conversion
 has completed.

 User Action:  None.

DB_HANDEC

 handle already declared

 Explanation:  You declared a database handle through ACMS.  This
 interferes with defining a handle through the interpreter.

 User Action:  You should not specify another handle.

DB_HANDEC2

 handle already declared

 Explanation:  You declared a database handle through ACMS.  This
 interferes with defining a handle through the interpreter.  This
 also interferes with declaring multiple database handles.

 User Action:  You should not specify another handle.

DB_HANLON

 the DB handle must be a longword

 Explanation:  Database handles that are passed to RDB$INTERPRET
 must be longwords passed by descriptor.

 User Action:  Define the database handle to be a longword.
 Examples:  For COBOL:  01 DBHANDLE PIC S9(9) COMP.  For FORTRAN:
 INTEGER*4 DBHANDLE.  For BASIC:  LONG DBHANDLE.

DB_NOTCVT

 database not converted

 Explanation:  You issued a convert command and the conversion
 was not attempted.

 User Action:  You should correct the problem and retry the
 convert.

DDALERR

 VAX Data Distributor fatal error

 Explanation:  You entered a VAX Data Distributor statement which
 failed.

 User Action:  Refer to the explanation in the user action
 section of the secondary error message.

DEADLOCK

 deadlock on <str>

 Explanation:  The operation you attempted has been forbidden by
 the database management system because it would have led to a
 system deadlock.

 User Action:  Execute a ROLLBACK or a COMMIT to release your
 locks, and try the transaction again.

DEGMODSPC

 only one degree mode may be specified for a transaction

 Explanation:  You specified two degree modes (consistency or
 concurrency) in a START_TRANSACTION statement.

 User Action:  Specify one degree mode in your START_TRANSACTION
 statement.

DELAREA

 area <str> was previously deleted

 Explanation:  An attempt was made to ready an area which was
 previously deleted.

DELBACKUP

 EXPORT errors, interchange file deleted

 Explanation:  The EXPORT that you were performing could not be
 successfully completed.

 User Action:  Determine why the EXPORT failed and correct that
 situation.

DESCTOOBIG

 the description clause's maximum length is !UL

 Explanation:  Rdb/VMS currently has a limit for a description
 clause size.

 User Action:  Use a shorter description clause.

DUPFLDDEF

 field <str> has different definitions in relations <str> and
 <str>

 Explanation:  In a DEFINE TRANSFER statement of EXTRACTION
 ROLLUP transfer, you are attempting to move a field which has
 more than one definition on to the target database.

 User Action:  Reenter the DEFINE TRANSFER statement by including
 only one definition of the above mentioned field or by changing
 all the definitions of this field into same type.

EMPTYAIJ

 after-image journal file is empty

 Explanation:  A recovery operation was attempted on an empty
 after-image journal file, or the UNTIL time predates any
 journaled transactions.  The former can happen if no
 transactions were initiated while after-image journaling was in
 progress.

 User Action:  Correct the error and try again.

EMPTYFILE

 <str> file is empty

 Explanation:  The file is empty.

 User Action:  None.

ERRACCROO

 error accessing database root file

 Explanation:  An error occurred while opening a database file.

 User Action:  Examine the secondary message for more
 information.

ERRDET

 an error was detected

 Explanation:  An "error level" (-E-) error condition was
 detected by RDO and returned to DCL during the execution of an
 RDO statement.

 User Action:  If possible, run the statement(s) again in
 interactive RDO and read any additional RDO error messages to
 determine what caused the error condition.  Then fix the error.
 Remember, in a DCL command procedure containing RDO statements,
 use the $SEVERITY symbol to test for RDO$_ERRDET.

ERREXTFIL

 error extending file

 Explanation:  An error occurred while extending a file.

 User Action:  Examine the secondary message for more
 information.

ERRFILSIZ

 error determining size of file

 Explanation:  An error occurred while accessing a file to
 retrieve the record attributes, in order to determine the
 physical size of the file.

 User Action:  Examine the secondary message for more
 information.

ERRFMTFIL

 error formatting output file

 Explanation:  An error occurred while formatting an output file.

 User Action:  Examine the secondary message for more
 information.

ERRFOREIGN

 error opening foreign command file as input

 Explanation:  An error occurred while reading a foreign command
 file.

 User Action:  Examine the secondary message for more
 information.

ERRMODEOF

 error extending or truncating file

 Explanation:  An error occurred while extending a file.

 User Action:  Examine the secondary message for more
 information.

ERROPENIN

 error opening <str> as input

 Explanation:  An error occurred while opening an input file.

 User Action:  Examine the secondary message for more
 information.

ERROPENOUT

 error opening <str> as output

 Explanation:  An error occurred while opening an output file.

 User Action:  Examine the secondary message for more
 information.

ERROPNOUT

 error opening <str> as output

 Explanation:  An error occurred while opening an output file.

 User Action:  Examine the secondary message for more
 information.

ERRPARSFIL

 error parsing file <str>

 Explanation:  An error occurred while parsing a file name.

 User Action:  Examine the secondary message for more
 information.

ERRREAD

 error reading file

 Explanation:  An error occurred while reading a file.

 User Action:  Examine the secondary message for more
 information.

ERRREADING

 error reading file <str>

 Explanation:  An error occurred while reading a file.

 User Action:  Examine the secondary message for more
 information.

ERRRUJFIL

 error using recovery-unit file <str>

 Explanation:  An error occurred while parsing a file name.

 User Action:  Examine the secondary message for more
 information.

ERRTRUNFIL

 error truncating file

 Explanation:  An error occurred while truncating a file.

 User Action:  Examine the secondary message for more
 information.

ERRWRITE

 error writing file

 Explanation:  An error occurred while writing a file.

 User Action:  Examine the secondary message for more
 information.

ERRWRITING

 error writing file <str>

 Explanation:  An error occurred while reading a file.

 User Action:  Examine the secondary message for more
 information.

EXPCV_DOT

 expected context variable and dot, host variables not
 permitted here

 Explanation:  You attempted to use a name where a variable or
 literal was required.  The error message indicates that you
 probably forgot to type the context variable and a period before
 a field name, or you forgot to use quotation marks around a
 quoted string.

 User Action:  Add a context variable and a period or use a
 literal.

EXQUOTA

 exceeded quota

 Explanation:  The image could not proceed because a resource
 quota or limit had been exceeded.

 User Action:  The secondary error message describes the resource
 that was exceeded.  If this occurs consistently, increase your
 quota.

EXTNOTSUP

 EXTERNAL database handles are not supported for RDB$INTERPRET

 Explanation:  External database handles are not supported for
 RDB$INTERPRET.  Only LOCAL and the default database handle are
 supported.  External database handles apply only to
 preprocessors that can declare variables for database handles.

 User Action:  For database handles that must be accessed in
 multiple modules, use LOCAL.  Otherwise, use the default
 database handle.

EXTRADATA

 unexpected data at the end of the .RBR file

 Explanation:  Internal error - found more data than expected in
 the Rdb/VMS interchange file (.RBR).

 User Action:  Submit an SPR with a copy of the Rdb/VMS
 interchange file (.RBR) that caused the error.

FETNOTDON

 a fetch has not been done yet for stream <str>

 Explanation:  You referenced a stream, but you did not issue a
 FETCH statement for that stream.

 User Action:  Type FETCH <stream name>.

FIELD_EXISTS

 field <str> already exists in this database

 Explanation:  You requested that a field be named with the name
 of an existing field.

 User Action:  Choose a different name.

FIENOTALL

 field, <str>, is not allowed in the VALID IF expression for
 field <str>

 Explanation:  You entered a field name in a VALID IF clause that
 does not match the name of the field being defined.

 User Action:  Check the VAX Rdb/VMS Reference Manual for details
 on VALID IF, or use the name of the field you are defining.

FIENOTREN

 field <str> cannot rename CDD field <str>

 Explanation:  You requested that a field being defined from a
 CDD definition be named something other than the name of the CDD
 field.

 User Action:  Respecify the field definition using the CDD field
 name.

FIENOTSEG

 field, <str>, is not a segmented string

 Explanation:  You attempted a START_SEGMENTED_STRING operation
 using a field that is not a segmented string.

 User Action:  Use a segmented string field with the
 START_SEGMENTED_STRING statement.

FILACCERR

 <str>

 Explanation:  This general message indicates an error accessing
 a file.

 User Action:  Examine the secondary message for more
 information.

FLDAMBIG

 field <str> is not unique in previous relations in the CROSS

 Explanation:  You specified a field that does not exist in the
 previous relations specified by the CROSS clause.

 User Action:  The relation definition associated with the
 context variable does not include a definition for the specified
 field.  You may have specified the wrong context variable with
 the field or mistyped the field name.

FLDNOTBCK

 global field <str> not defined as specified

 Explanation:  The base field for a local field is not defined.

 User Action:  This is caused by an inconsistency in the
 database.  Try to recover the missing global field.

FLDNOTCRS

 field <str> was not found in previous relations in the CROSS

 Explanation:  You specified a field that is not in the relations
 specified in the CROSS clause.

 User Action:  The relation definition associated with the
 context variable did not include a definition for the specified
 field.  You may have specified the wrong context variable with
 the field or mistyped the field name.

FLDNOTDEF

 field <str> is not defined in relation <str>

 Explanation:  You specified a field that does not exist in the
 named relation.

 User Action:  The relation definition associated with the
 context variable did not include a definition for the specified
 field.  You may have specified the wrong context variable with
 the field or mistyped the field name.

FLDNOTINREL

 <str> is not a field in relation, <str>

 Explanation:  The field you specified is not part of the named
 relation.

 User Action:  Check the relation definition for the correct
 field name, or specify another relation.

FLDNOTREFD

 defined field, <str>, is not used in VALID IF clause

 Explanation:  You defined a field with a VALID IF clause that
 does not reference the defined field.

 User Action:  Define the field again, and name that field in the
 VALID IF clause.

FLUINPBUF

 indirect command file buffer flushed for Control C

 Explanation:  You entered CTRL/C while executing an indirect
 command file.

 User Action:  None.

GARBLED

 interchange file is corrupt

 Explanation:  Internal error - probably mismatched BEGIN and END
 clumps.

 User Action:  Submit an SPR with a copy of the Rdb/VMS
 interchange file (.RBR) that caused the error.

HOWCHANOT

 no attribute specified for command to change field !AC

 Explanation:  You tried to change a field but did not specify
 any attribute to change.

 User Action:  Specify an attribute to change.

ILLBEGIN

 file <str> is corrupt or not an Rdb interchange file

 Explanation:  IMPORT can recreate databases only from the
 Rdb/VMS interchange file (.RBR).  This file is not an Rdb/VMS
 interchange file (.RBR).

 User Action:  Retry the operation with the correct file name.

ILLCHAR

 illegal character detected

 Explanation:  An illegal character has been detected.

 User Action:  Use only valid characters.

ILLNCHAR

 illegal character found in numeric input

 Explanation:  You specified a number containing a nonnumeric
 character.

 User Action:  Correct the error and try again.

IMP_IDX_CONFLICT

 DEFINE and DELETE INDEX <str> specified

 Explanation:  You specified a DEFINE and DELETE INDEX using the
 same name.

 User Action:  Specify either a DEFINE or a DELETE INDEX.

IMP_IDX_TWICE

 DEFINE INDEX <str> specified twice

 Explanation:  You specified a DEFINE INDEX twice using the same
 name.

 User Action:  Specify a INDEX name only once.

IMP_STO_CONFLICT

 DEFINE and DELETE STORAGE AREA <str> specified

 Explanation:  You specified a DEFINE and DELETE STORAGE AREA
 using the same name.

 User Action:  Specify a either a DEFINE or a DELETE STORAGE
 AREA.

IMP_STO_MAP_CONFLICT

 DEFINE and DELETE STORAGE MAP <str> specified

 Explanation:  You specified a DEFINE and DELETE STORAGE MAP
 using the same name.

 User Action:  Specify either a DEFINE or a DELETE STORAGE AREA.

IMP_STO_MAP_TWICE

 DEFINE STORAGE MAP <str> specified twice

 Explanation:  You specified a DEFINE STORAGE MAP twice using the
 same name.

 User Action:  Specify a STORAGE MAP name only once.

IMP_STO_TWICE

 DEFINE STORAGE AREA <str> specified twice

 Explanation:  You specified a DEFINE STORAGE AREA twice using
 the same name.

 User Action:  Specify a STORAGE AREA name only once.

INDEXTS

 there is another index named, <str>, in this database

 Explanation:  The index name you tried to define already exists.

 User Action:  Try another index name.

INTEGDBDIF

 Database filespec must equate to filespec <str> recorded in CDD

 Explanation:  The INTEGRATE database filespec and the filespec
 recorded with the dictionary database definitions found at the
 specified pathname refer to different databases.

 User Action:  Reissue the command with a filespec that
 corresponds to the database referenced in the data dictionary,
 or with a different pathname.

INTEGFRFAIL

 attempt to INTEGRATE FROM nonexistent CDD entity <str>

 Explanation:  The data dictionary entity required for INTEGRATE
 FROM does not exist.

 User Action:  Respecify a path that points to an existing data
 dictionary entity.

INTONOTALW

 INTO RELATION clause is not allowed in this context

 Explanation:  In a DEFINE TRANSFER statement of EXTRATION or
 REPLICATION transfer , you have specified an INTO RELATION
 clause .

 User Action:  Reenter the DEFINE TRANSFER statement by not
 specifying INTO RELATION clause.

INTSYNERR

 <str> <str>

 Explanation:  This message is used by the interpreter to put the
 line with the syntax error into the message vector.

 User Action:  Call RDB$SIGNAL and find the syntax error.

INVCHAINP

 invalid character in input

 Explanation:  The input contains an illegal or unrecognizable
 character.

 User Action:  Correct the source text and resubmit the job.

INVCHANUMSTR

 invalid character in numeric string

 Explanation:  The string appears to be a numeric literal.
 However, it contains one or more illegal characters.

 User Action:  Correct the source text and resubmit the job.

INVCONS

 unable to IMPORT constraint <str>

 Explanation:  Internal error - the named constraint will not
 appear in the recreated database.

 User Action:  Submit an SPR with a copy of the Rdb/VMS
 interchange file (.RBR) that caused the error.  In the meantime,
 you can redefine this constraint explicitly.

INVDBSFIL

 inconsistent storage area file <str>

 Explanation:  The indicated storage area file is inconsistent
 with the root file.  This might happen if you have improperly
 used any unsupported methods for backing up or restoring files,
 for instance COPY or RENAME.  This can also happen if you tried
 to use an old root file -- one whose storage area file names
 have been reused for another database.

 User Action:  Restore the correct storage area file or delete
 the obsolete root file.

INVFLD

 unable to IMPORT field <str>

 Explanation:  Internal error - the named field will not appear
 in the recreated database.

 User Action:  Submit an SPR with a copy of the Rdb/VMS
 interchange file (.RBR) that caused the error.

INVHEADER

 invalid file header record

 Explanation:  An invalid file header record was read from the
 file.

 User Action:  Check the file specification and try again.

INVINDEX

 unable to IMPORT index <str>

 Explanation:  Internal error - the named index will not appear
 in the recreated database.

 User Action:  Submit an SPR with a copy of the Rdb/VMS
 interchange file (.RBR) that caused the error.  In the meantime,
 you can recreate this index explicitly.

INVNOTDON

 no DATABASE invoked yet, please issue a DATABASE command

 Explanation:  You must invoke a database before you issue an RDO
 statement.  can be executed.

 User Action:  Invoke the database, and then issue the RDO
 statement.

INVRELVIEW

 unable to IMPORT relation or view <str>

 Explanation:  Internal error - the named relation or view (and
 its data) has been lost.

 User Action:  Submit an SPR with a copy of the Rdb/VMS
 interchange file (.RBR) that caused the error.

INVSEGSTRATR

 invalid segmented string attribute

 Explanation:  You specified a MISSING VALUE or VALID IF clause
 along with a segmented string data type.

 User Action:  You should respecify the data definition statement
 without the MISSING VALUE or VALID IF clauses.

INV_ROOT

 database file has illegal format

 Explanation:  You attempted to use a file that is not a database
 file.

 User Action:  Check the file specification and try again.

IOERROR

 an unexpected I/O error occurred

 Explanation:  Unable to read any more of the Rdb/VMS interchange
 file (.RBR); part of the database may be imported.

 User Action:  Correct the problem indicated by the message that
 follows this message and retry the operation.

JUNONLIN

 extraneous characters found after the end of the statement

 Explanation:  You typed extra characters after the end of the
 statement.

 User Action:  Check statement syntax for correct statement
 termination.

LANFILEXT

 <str> is the language file extension, please use another
 extension

 Explanation:  The input file type you specified to the
 preprocessor is the same file type as the output file type.

 User Action:  Rename the file with the default file
 specifications and run the preprocessor again.  Refer to the
                                    ___ _______ _____ __
 default file specifications in the VAX Rdb/VMS Guide to
 ___________
 Programming.

LCKCNFLCT

 lock conflict on <str>

 Explanation:  The operation you attempted failed because another
 run unit is holding a lock in a mode that conflicts with the
 lock mode you needed.

 User Action:  Wait for the other run unit to finish.  Use
 ROLLBACK or COMMIT to release all your locks and retry the
 transaction, or specify that you want to wait on lock conflicts.

LENMISMAT

 truncating right hand side string for assignment to field <str>

 Explanation:  You executed a STORE or MODIFY statement, and the
 string on the right hand side of the equation is longer than the
 string on the left.

 User Action:  The message is just a warning.  You can issue a
 MODIFY statement to correct the store or a ROLLBACK statement to
 terminate the transaction.

LHSNOTDBN

 the left hand side of the assignment expression is not a DB
 name

 Explanation:  The left side of an assignment expression in a
 STORE or MODIFY statement must be a field name qualified by a
 context variable.  Example:  P.CITY

 User Action:  Use a qualified database field name in the left
 side of an assignment expression.

LHSNOTVAR

 the left hand side of the assignment expression is not a
 variable

 Explanation:  The left side of an assignment expression in a GET
 command must be a host variable.  For preprocessed statements,
 the variable must be a host language variable.  For Callable
 RDO, the variable must be "!VAL".

 User Action:  Use a host variable in the left side of an
 assignment expression.

LOGAIJBCK

 backed up <num> committed transaction(s) at <time>

 Explanation:  The specified number of committed transactions
 were successfully backed up from the after-image journal file.
 This count does not include transactions that rolled back.

LOGRECOVR

 <num> transaction(s) <str>

 Explanation:  Database recovery was successful.  The specified
 number of transactions were re-applied to the database, ignored
 or rolled back.

 User Action:  None.

LOGRECSTAT

 transaction with TSN <num> <str>

 Explanation:  During rollforward, this message is displayed
 every time a transaction is committed, rolled back, or ignored.

LOOK_FOR

 syntax error, looking for <str>, found <str> instead

 Explanation:  The syntax expected a specific keyword, but you
 entered another.

 User Action:  Check the syntax and reenter the correct keyword.

LOOK_FOR_CON

 <str>

 Explanation:  This message is used for listing syntactically
 legitimate alternatives.

 User Action:  Consider options from the list.

LOOK_FOR_FIN

 found <str> instead

 Explanation:  This terminates the list of syntactically valid
 alternatives and should give you an idea of what has happened.

 User Action:  Reenter the statement, or use EDIT to correct it.

LOOK_FOR_STT

 syntax error, looking for:

 Explanation:  The syntax expected a list of things, list
 follows.

 User Action:  Consider options from the list.

LOOK_FOR_UNTERM

 syntax error, looking for <str>, found <str> instead

 Explanation:  This is issued with a RDO-F-BUGCHK because it
 indicates that a severe error has occurred in the syntax tables.

 User Action:  Record the exact command line as typed (use EDIT
 to write it to a file), and submit an SPR.  Then consider
 finding a workaround.

MAXFLDPRTSTR

 maximum number of fields in a print star relation is <num>

 Explanation:  You used a PRINT <context variable>.* for a
 relation that has too many fields.

 User Action:  Name the fields explicitly in the PRINT statement.

MAXNESEXC

 maximum statement nesting level is exceeded

 Explanation:  You exceeded the maximum nesting of FOR and
 START_STREAM statements.

 User Action:  Reduce the nesting level.

MAXRELEXC

 maximum number of relations in an RSE has been exceeded

 Explanation:  You exceeded the maximum number of relations in an
 RSE.  There are too many CROSS clauses.

 User Action:  Reduce the number of CROSS expressions.

MAXVOLLABEXC

 maximum size of volume label is <num>

 Explanation:  You entered a name for a volume label that exceeds
 the limit for a journal file name.

 User Action:  Choose a smaller name.

MISMMORDD

 missing either month or day field in date string

 Explanation:  The date string must contain the month and day
 field.  If it does not, it will not be converted to the DATE
 data type.

 User Action:  Reenter the DATE data item having both the month
 and day fields.

MONMBXOPN

 monitor is already running

 Explanation:  The monitor has already been started by another
 user.

 User Action:  None.

MONSTOPPED

 database monitor process is being shut down

 Explanation:  The request you made could not be completed
 because the database monitor process is being shut down.

 User Action:  Examine the database monitor log file
 (SYS$SYSTEM:*MON.LOG) for more information.

MULSPECATR

 attribute is specified redundantly

 Explanation:  You specified a field attribute more than once.
 Because Rdb/VMS cannot determine which attribute to use, it
 rejects it.

 User Action:  Respecify the data definition statement without
 the redundant clauses.

MUSINVPATH

 cannot DEFINE FROM CDD unless database invoked by pathname

 Explanation:  You requested that a field or relation be defined
 from the CDD but no CDD has been attached via an INVOKE by
 PATHNAME.

 User Action:  INVOKE the database by PATHNAME, then respecify
 the definition.

MUSTRECDB

 database must be closed or recovered

 Explanation:  The operation can be done only on databases that
 are closed and recovered.

 User Action:  Use the CLOSE command if an OPEN was performed.
 Recovery, if required, can be forced by opening the database.
 If other users are accessing the database, you must wait for
 them to finish.

MVRELABSNT

 no MOVE RELATION clause is specified in an EXTRACTION ROLLUP
 transfer

 Explanation:  In a DEFINE TRANSFER statement of EXTRATION ROLLUP
 transfer , you have not specified any MOVE RELATION clause.

 User Action:  Since MOVE RELATIONS ALL clause is not allowed in
 this context, you have to explicitly specify the MOVE RELATION
 clauses.  Reenter the DEFINE TRANSFER statement by specifying
 the MOVE RELATION clauses explicitly.

NOAGGALL

 aggregate expressions are not allowed in MOVE RELATION clauses

 Explanation:  You entered a MOVE RELATION clause that contained
 an aggregate expression.  Only an operator, literal value, or
 field name are allowed in a MOVE RELATION clause.

 User Action:  Check the VAX Data Distributor Handbook or the VAX
 Rdb/VMS Reference Manual for details on the MOVE RELATION
 clause.  Reenter the DEFINE TRANSFER statement with a correct
 MOVE RELATION clause.

NOAIJDEF

 no default after-image filename available

 Explanation:  A default after-image journal file name cannot be
 formed since no journal file name is presently in the database
 root.

 User Action:  Enable after-image journaling and supply a name
 for the after-image journal.

NOANYALL

 ANY and UNIQUE are not allowed in a MOVE RELATION clause

 Explanation:  You entered a MOVE RELATION clause containing ANY
 or UNIQUE.  Only an operator, literal value, or field name are
 allowed in a MOVE RELATION clause.

 User Action:  Check the VAX Data Distributor Handbook or the VAX
 Rdb/VMS Reference Manual for details on the MOVE RELATION
 clause.  Reenter the DEFINE TRANSFER statement with a correct
 MOVE RELATION clause.

NOBCKFIL

 interchange file <str> not created

 Explanation:  An error has occurred during creation of the
 interchange file.

 User Action:  Follow actions directed by the corresponding RMS
 error.

NOBCKTRNS

 you cannot EXPORT a database from within a transaction

 Explanation:  You typed EXPORT from inside a transaction.

 User Action:  End the transaction and try again.

NOCDD

 there is no CDD on this system, specify a filename on the
 DATABASE command

 Explanation:  Because there is no CDD running on this system,
 you cannot invoke a database using a path name.

 User Action:  Invoke the database with the database file name.

NOCDDUPDAT

 database invoked by filename, the CDD will not be updated

 Explanation:  (In RDO or Rdb$INTERPRET) You issued a data
 definition statement after invoking by file name.

 User Action:  This is a warning.  You can roll back and invoke
 the database by specifying the path name.  This ensures that
 data definitions are updated both in the data dictionary and in
 the database itself.

NOCHAR

 no character after '' in pattern

 Explanation:  A MATCH operation was in progress and the pattern
 was exhausted with the pattern quote character as the last
 character in the pattern.

 User Action:  Rewrite the expression in error to have the proper
 format.

NOCMPBYRES

 computed field !AC in relation !AC not IMPORTed

 Explanation:  You specified a computed field in your database
 that could not be imported.  Perhaps the field references other
 fields and relations that were deleted from the database by an
 older version of the software that would have permitted such a
 thing.

 User Action:  You must investigate the problem further.  The
 relation should have been properly imported except for the
 listed field.

NOCONRES

 unable to IMPORT constraint <str>

 Explanation:  Could not import this constraint -- see the
 message that follows.

 User Action:  Correct the problem and retry the operation.

NOCREMBX

 can't create mailbox

 Explanation:  An error occurred while you attempted to create a
 mailbox.  See the secondary message for more information.

 User Action:  Correct the condition and try again.

NODATRES

 remaining data for this relation will be ignored

 Explanation:  An error occurred while you attempted to store the
 data; see the following message.

 User Action:  Correct the problem and retry the operation.

NODBHALW

 database handles are not allowed in a MOVE RELATION clause

 Explanation:  You specified a database handle for the record
 selection expression (RSE) in a MOVE RELATION clause.  Inside a
 MOVE RELATION clause, database handles are not allowed for the
 RSE.

 User Action:  Reenter the DEFINE TRANSFER statement omitting the
 database handle name.

NODBHAN

 A database handle may not be specified on this statement

 Explanation:  You specified a database handle on a statement
 that does not use one.

 User Action:  Remove the handle.

NODBK

 <num>:<num>:<num> does not point to a data record

 Explanation:  An attempt was made to fetch a record by its
 database key value, but the record has been deleted.

 User Action:  Correct the condition and try again.

NODBKALL

 database key references are not allowed in a MOVE RELATION
 clause

 Explanation:  You entered a MOVE RELATION clause that contained
 a database key or a host variable.  Only an operator, literal
 value, or field name are allowed in a MOVE RELATION clause.

 User Action:  Check the VAX Data Distributor Handbook or the VAX
 Rdb/VMS Reference Manual for details on the MOVE RELATION
 clause.  Reenter the DEFINE TRANSFER statement with a correct
 MOVE RELATION clause.

NODBNAME

 a database name was not specified on a DATABASE command

 Explanation:  You issued an INVOKE DATABASE statement that did
 not specify a database by file specification or data dictionary
 path name.

 User Action:  Check the syntax of the INVOKE DATABASE statement.

NODEVDIR

 !AC file name does not include device and directory

 Explanation:  The file you specified did not include a device
 and directory.

 User Action:  You should always include a device and directory
 in the file specification, preferably different from the
 database device for maximum protection.

NODUPLIVIEW

 view <str> cannot be specified more than once in a transfer
 definition

 Explanation:  You have specified a view name in both
 move-relations-clause and in move-views-clause.

 User Action:  Reenter the DEFINE TRANSFER statement by
 specifying the view either in move-relations-clause or in
 move-views-clause but not in both.

NOFLDRES

 unable to IMPORT field <str>

 Explanation:  Could not import this field.  See the following
 message.

 User Action:  Correct the problem and retry the operation.

NOFSTINREPT

 FIRST clause is not allowed in MOVE RELATION clause of a
 REPLICATION transfer

 Explanation:  In the MOVE RELATIONS clause of a REPLICATION
 TRANSFER definition you have entered a FIRST clause .

 User Action:  Reenter the DEFINE TRANSFER statement without the
 FIRST clause in the MOVE RELATIONS clause.

NOIDXRES

 unable to IMPORT index <str>

 Explanation:  Could not import this index.  See the following
 message.

 User Action:  Correct the problem and retry the operation.

NOITEMDEF

 unable to define item from command line

 Explanation:  Could not define an item from the command line.
 See the following message.

 User Action:  Correct the problem and retry the operation.

NOMAPRES

 unable to IMPORT storage map <str>

 Explanation:  Could not import this storage map.  See the
 following message.

 User Action:  Correct the problem and retry the operation.

NOMLTIMV

 attempt to move the relation <str> multiple times

 Explanation:  You attempted to specify the same relation name
 more than once in the MOVE clause of a DEFINE TRANSFER
 statement.  In a DEFINE TRANSFER statement, you can not move the
 same relation more than once.

 User Action:  Reenter the DEFINE TRANSFER statement omitting the
 duplicate MOVE RELATION clause.

NOMLTIMVIEW

 attempt to move the view <str> multiple times

 Explanation:  You attempted to move the named view more than
 once in a DEFINE TRANSFER statement.  This action is not
 permitted.

 User Action:  Reenter the DEFINE TRANSFER statement, specifying
 each view only once.

NOMONITOR

 database monitor is not running

 Explanation:  The database monitor process is not running.

 User Action:  Have your database administrator start the
 monitor, and try again.

NOMVRALL

 MOVE RELATIONS ALL clause is not allowed in an EXTRACTION
 ROLLUP transfer

 Explanation:  In a DEFINE TRANSFER statement of EXTRATION ROLLUP
 transfer , you have specified MOVE RELATIONS ALL clause.

 User Action:  Reenter the DEFINE TRANSFER statement by
 specifying each relation explicitly in a MOVE RELATION clause.

NOMVVROL

 MOVE VIEWS clause is not allowed in an EXTRACTION ROLLUP
 transfer

 Explanation:  In a DEFINE TRANSFER statement of EXTRACTION
 ROLLUP transfer, you have specified a MOVE VIEWS clause.

 User Action:  Reenter the DEFINE TRANSFER statement without the
 MOVE VIEWS clause.

NONODE

 no node name is allowed in the file specification

 Explanation:  A node name was found in the file specification.
 Node names cannot be used.

 User Action:  Use a file name without a node specification.

NOPRECOMPSEL

 no precompiler selected

 Explanation:  You invoked the preprocessor without specifying
 the language option desired.

 User Action:  Specify a switch or file type.

NOPRIV

 no privilege for attempted operation

 Explanation:  You attempted an operation that requires VMS
 privileges and you do not have those privileges enabled.

 User Action:  Examine the secondary message for more
 information.

NOPRVMVIEW

 insufficient privilege to transfer the view <str>

 Explanation:  You attempted to transfer the named view without
 READ privilege on the view.  You must have READ privilege on the
 view to be able to transfer the view in a DEFINE TRANSFER
 statement.

 User Action:  Reenter the DEFINE TRANSFER statement excluding
 the named view.  Check the VAX Rdb/VMS Reference Manual for
 details on PROTECTION statements.

NOPRVMVREL

 insufficient privilege to transfer the relation <str>

 Explanation:  You specified a relation for which you do not have
 READ privilege.  You must have READ privilege on the relation to
 transfer the relation in a DEFINE TRANSFER statement.

 User Action:  Reenter the DEFINE TRANSFER statement excluding
 the named relation.  Check the VAX Rdb/VMS Reference Manual for
 details on PROTECTION statements.  Also consult your database
 administrator.

NOPRVREPLI

 insufficient privilege to define a replication transfer

 Explanation:  You attempted to define a replication transfer
 without DEFINE privilege on the source database.  To define a
 replication transfer, you must have DEFINE privilege on the
 source database.

 User Action:  Check the VAX Rdb/VMS Reference Manual for details
 on PROTECTION statements.  See your database administrator to
 obtain DEFINE privilege.

NOPRVROLMVR

 insufficient privilege to transfer the relation <str>.<str>

 Explanation:  You specified a relation for which you do not have
 READ privilege in the specified database.  You must have READ
 privilege on the relation to transfer the relation in a DEFINE
 TRANSFER statement.

 User Action:  Reenter the DEFINE TRANSFER statement excluding
 the named relation.  Check the VAX Rdb/VMS Reference Manual for
 details on PROTECTION statements.  Also consult your database
 administrator.

NOREDINREPT

 REDUCE clause is not allowed in MOVE RELATION clause of a
 REPLICATION transfer

 Explanation:  In the MOVE RELATIONS clause of a REPLICATION
 TRANSFER definition you have entered a REDUCE clause .

 User Action:  Reenter the DEFINE TRANSFER statement without the
 REDUCE clause in the MOVE RELATIONS clause.

NORELRES

 unable to IMPORT relation <str>

 Explanation:  Could not import this relation.  See the following
 message.

 User Action:  Correct the problem and retry the operation.

NOREMVER

 remote node or version number is not allowed in a log file name

 Explanation:  You used a node name or a version number in the
 log file specification of a DEFINE TRANSFER statement.

 User Action:  Reenter the DEFINE TRANSFER statement using a log
 file specification which contains neither a node name nor a
 version number.

NOREQHAN

 a request handle may not be specified on this statement

 Explanation:  You specified a request handle on a statement that
 does not use one.

 User Action:  Remove the handle.

NORTUPB

 no more user slots are available in the database

 Explanation:  The maximum number of users are already accessing
 your database.

 User Action:  Try again later.

NOSEGSTRAREA

 segmented string storage area <str> is not defined

 Explanation:  You specified a storage area in the SEGMENTED
 STRING STORAGE AREA clause that does not exist.

 User Action:  Specify a storage area which is already defined in
 the DEFINE DATABASE statement.

NOSELALL

 SELECT FIELDS ALL clause is not allowed in an EXTRACTION
 ROLLUP transfer

 Explanation:  In a DEFINE TRANSFER statement of EXTRATION ROLLUP
 transfer , you have specified SELECT FIELDS ALL clause.

 User Action:  Reenter the DEFINE TRANSFER statement by
 specifying each field explicitly in the SELECT FIELDS clause.

NOSIP

 transaction is not a snapshot transaction

 Explanation:  You have already started a transaction that is not
 a snapshot transaction.

 User Action:  Use COMMIT or ROLLBACK to terminate your current
 transaction.  Use READY BATCH RETRIEVAL to start a new snapshot
 transaction.

NOSNAPS

 snapshots are not allowed or not enabled for area <str>

 Explanation:  Snapshots are not allowed or not enabled for this
 area.

 User Action:  This is a normal situation created by the database
 definition or by a change or modify database command.  Check
 with your DBA to make sure this situation is desirable.

NOSORTINREPT

 SORT clause is not allowed in MOVE RELATION clause of a
 REPLICATION transfer

 Explanation:  In the MOVE RELATIONS clause of a REPLICATION
 TRANSFER definition you have entered a SORT clause .

 User Action:  Reenter the DEFINE TRANSFER statement without the
 SORT clause in the MOVE RELATIONS clause.

NOSUPREPLI

 replication transfer is not supported for this source database

 Explanation:  You attempted to define a replication transfer on
 a source database which is not an Rdb/VMS database.  Replication
 transfers can be defined only for Rdb/VMS databases.  For other
 databases you can define only extraction transfers.

 User Action:  If your source database is not an Rdb/VMS
 database, define an extraction transfer.

NOTAVIEW

 <str> is not a view

 Explanation:  The name you specified in a MOVE VIEWS clause is
 not the name of a view.

 User Action:  Retype the DEFINE TRANSFER command with the
 correct view name.

NOTBOOL

 expression in AND, OR, or NOT was not a Boolean

 Explanation:  The Boolean evaluator was processing an expression
 or subexpression of the form "A AND B", "A OR B", or "NOT A".
 Either the "A" or the "B" expression was not in the proper form.
 The correct forms are "NOT X", "X EQ Y", "X NE Y", "X LT Y", "X
 GT Y", "X LE Y", "X GE Y", "X CONTAINS Y", or "X MATCHES Y".
 The operand of NOT, and both sides of AND and OR expressions
 must be Boolean expressions.

 User Action:  Rewrite the expression in error to have the proper
 format.

NOTDSKFIL

 filespec does not specify disk device type

 Explanation:  An error occurred while you attempted to create an
 AIJ file.

 User Action:  Modify the database with a valid AIJ filespec.

NOTENUFHV

 not enough host variables passed; <num> passed, at least
 <num> used

 Explanation:  You did not pass enough host variables to
 RDB$INTERPRET.  For RDB$INTERPRET, there were more !VALs in the
 command string than host variable descriptors passed.  If one
 more host variable is detected by the parser than was passed,
 parsing stops.  There could be more host variables used than the
 error message specifies.

 User Action:  Supply matching number of host variables and
 !VALs.

NOTEXPSEG

 cannot assign an expression to RDB$VALUE or RDB$LENGTH

 Explanation:  Your preprocessor does not support assigning an
 expression value to RDB$VALUE or RDB$LENGTH.

 User Action:  You can work around this problem by assigning the
 value of the expression to a temporary variable.  Then assign
 the temporary variable value to RDB$VALUE or RDB$LENGTH.

NOTFOUND

 No rows were found for this statement

 Explanation:  No rows were found for an UPDATE or DELETE
 statement, or a query produced an empty table.

 User Action:  None, this is a warning message.

NOTIMPLYET

 feature is not implemented yet

 Explanation:  You attempted to access a feature that has been
 planned but has not been implemented yet.

 User Action:  Avoid this feature.

NOTIP

 no transaction in progress

 Explanation:  You attempted to execute a DML verb, but there is
 no transaction in progress yet.

 User Action:  Execute a READY statement before executing any
 other DML statements.

NOTRANAPP

 no transactions in this journal were applied

 Explanation:  This journal file contains transactions that
 cannot be applied to the specified backup of the database.

 User Action:  Be sure you are using the correct database backup
 and journal file.

NOTREQSTA

 not a request statement.  Can only use request options on
 request statement

 Explanation:  You attempted to use a REQUEST_HANDLE or
 TRANSACTION_HANDLE clause in a statement that was not a request
 statement.  Request options are not necessary on statements that
 are not request statements.

 User Action:  Put the handle option clause in the request
 statement.

NOTROOT

 not a root file

 Explanation:  The specified file is not a database root file.

 User Action:  Specify a database root file and try again.

NOTSEGSTR

 context variable <str> does not reference a segmented string

 Explanation:  You attempted to use a context variable with
 RDB$VALUE or RDB$LENGTH, and the context variable does not refer
 to a segmented string field.

 User Action:  Use a context variable defined for a segmented
 string with RDB$VALUE and RDB$LENGTH.

NOTSYSCONCEAL

 non-system concealed device name in filename

 Explanation:  Concealed device name must be defined in the
 system logical table.

 User Action:  If the device name has to be concealed, then
 define it in the system logical table.

NOT_BOUND

 database is not bound

 Explanation:  You have not bound to a database yet, or you have
 unbound the database and have not bound to another one yet.

 User Action:  Bind to a database before continuing.

NOT_INSTALLED

 <str> is not installed

 Explanation:  The product is not installed on the system.

 User Action:  The named product must be installed before the
 attempted statement can be successfully executed.

NOT_READY

 storage area <str> not in ready mode

 Explanation:  You attempted to access an area for which you have
 not declared your intentions.

 User Action:  If the area is included in your subschema, you can
 use the READY statement to prepare it for processing.

NOT_UPDATE

 storage area <str> not readied in update usage mode

 Explanation:  You attempted to modify the contents of an area
 without having declared your intentions.

 User Action:  If you have not readied the area yet, you can
 READY for UPDATE.  If you have already readied it, you must
 abort your transation by executing a ROLLBACK before you can
 READY for UPDATE.

NOUPDCOMP

 can not update computed by field, <str>

 Explanation:  You tried to store or modify a COMPUTED BY field.
 This is not allowed.

 User Action:  Restate the update removing the COMPUTED BY field.

NOVIERES

 unable to IMPORT view <str>

 Explanation:  Could not import this view -- see the message that
 follows.

 User Action:  Correct the problem and retry the operation.

NOVIEWALW

 views are not allowed in a MOVE RELATION clause

 Explanation:  The relation referred to in the MOVE RELATION
 clause of a DEFINE TRANSFER statement is a view.

 User Action:  Reenter the DEFINE TRANSFER statement excluding
 the MOVE RELATION clause which references a view.  Enter the
 view in a MOVE VIEWS clause instead.

NOVIEWINREPT

 view <str> is not allowed in MOVE RELATION clause of a
 REPLICATION transfer

 Explanation:  In the MOVE RELATIONS clause of a REPLICATION
 TRANSFER definition you have specified a view .

 User Action:  Reenter the DEFINE TRANSFER statement without the
 view in the MOVE RELATIONS clause.  The view definition can be
 moved by specifying the view in MOVE VIEWS clause.

NOWILD

 no wild cards are allowed in the file specification

 Explanation:  Wild card characters ("*" and "%") cannot be used
 in that file specification.

 User Action:  Use a file specification without wild card
 characters.

NO_CROSEG

 no CROSS clause may be used with a segmented string
 specification

 Explanation:  You attempted to use a CROSS clause with a
 segmented string specification.  This is not permitted.

 User Action:  Remove the CROSS clause.

NO_FILFND

 file <str> not found for input to the precompiler

 Explanation:  You attempted to open a nonexistent file.

 User Action:  Check the file specified.  Supply complete file
 specification.

NO_FIRSEG

 no FIRST clause may be used with a segmented string
 specification

 Explanation:  You attempted to use a FIRST clause with a
 segmented string specification.  This is not permitted.

 User Action:  Remove the FIRST clause.

NO_MORSEG

 there are no more segments in this segmented string

 Explanation:  You attempted to print or get a segment from a
 segmented string and the last segment has already been read.

 User Action:  This is a normal case.  You have retrieved the
 entire segmented string.

NO_PERBLO

 no periods are permitted within a FOR or an ON ERROR block

 Explanation:  COBOL does not permit periods between the PERFORM
 and END_PERFORM block, or the IF and END_IF block that the
 preprocessor generates.

 User Action:  Remove the period from the end of the DML
 statement within the FOR or ON ERROR block.

NO_REDSEG

 no REDUCED TO clause may be used with a segmented string
 specification

 Explanation:  You attempted to use a REDUCED TO clause with a
 segmented string specification.  This is not permitted.

 User Action:  Remove the REDUCED TO clause.

NO_SORSEG

 no SORTED BY clause may be used with a segmented string
 specification

 Explanation:  You attempted to use a SORTED BY clause with a
 segmented string specification.  This is not permitted.

 User Action:  Remove the SORTED BY clause.

NO_SUCH_FIELD

 field, <str>, does not exist in this database

 Explanation:  You specified a field that does not exist in the
 database.

 User Action:  Check database entity definitions for the valid
 database field name.

NO_TXNOUT

 no transaction outstanding

 Explanation:  You attempted to terminate a transaction with a
 COMMIT or a ROLLBACK when no transaction was outstanding.

 User Action:  Enter a START_TRANSACTION statement before COMMIT
 or ROLLBACK.

NO_WITSEG

 no WITH clause may be used with a segmented string
 specification

 Explanation:  You attempted to use a WITH clause with a
 segmented string specification.  This is not permitted.

 User Action:  Remove the WITH clause.

NULLNOIND

 tried to store null into host variable with no indicator
 variable

 Explanation:  Null values can only be stored in host variables
 which have indicator variables.

 User Action:  Add an indicator variable to the host variable
 reference or make sure that no null values can be returned to
 it.

ONLFIRVAR

 only first variable in qualified variable expression

 Explanation:  COBOL allows only the first variable in a
 qualification to be an array.  The preprocessors do not
 recognize the arrays of arrays in FORTRAN, COBOL or BASIC.

 User Action:  Rewrite the query and check the appropriate
 reference manual.

ONLONEDB

 only one database can be referenced in an RSE or an expression

 Explanation:  You cannot use database variables from more than
 one database in an RSE or in an expression.  You can, however,
 refer to variables from one database in an expression and refer
 to variables in another database in a STORE or a MODIFY
 statement.  Nested FOR statements may refer to different
 databases in the RSEs of each FOR statement.

 User Action:  Use separate statements or nested FOR loops for
 multiple database access.

ONLONERED

 only one REDUCE clause can appear in an RSE

 Explanation:  You included more than one REDUCED TO clause in
 the RSE.  This is not permitted.

 User Action:  Specify all reduce expressions in one reduce list.

ONLONEREQ

 only one request handle may be specified on a STMT

 Explanation:  You included more than one REQUEST_HANDLE in your
 statement.  Only one is permitted.

 User Action:  Use only one REQUEST_HANDLE.  You may have
 intended to use a TRANSACTION_HANDLE.

ONLONESOR

 only one SORT clause can appear in an RSE

 Explanation:  You included more than one SORTED BY clause in
 your RSE.  This is not permitted.

 User Action:  Specify all sort expressions in one sort list.

ONLONETRA

 only one transaction handle may be specified on a STMT

 Explanation:  You included more than one TRANSACTION_HANDLE in
 your statement.  Only one TRANSACTION_HANDLE is permitted.

 User Action:  Use only one TRANSACTION_HANDLE.  You may have
 intended to use a REQUEST_HANDLE.

ONLONETRN

 only one transaction allowed at a time

 Explanation:  You attempted to use more than one transaction.
 Only one transaction is allowed at a time.  Note that RDO does
 an implicit START_TRANSACTION on the first DML statement.

 User Action:  A COMMIT or ROLLBACK terminates a transaction.

ONLONEWIT

 only one WITH clause can appear in an RSE

 Explanation:  You included more than one WITH clause in the RSE.
 This is not permitted.

 User Action:  Specify all Boolean expressions in one WITH
 clause.

ONLYONEPSECT

 only one PSECT statement per module is supported

 Explanation:  You attempted to use more than one PSECT directive
 per module.  The PSECT directive may only be used once per
 module.

 User Action:  Decide which PSECT statement is really desired and
 delete all others.

OPENERR

 unable to open <str> as the interchange file

 Explanation:  Could not access the Rdb/VMS interchange file
 (.RBR).

 User Action:  Correct the problem indicated by subsequent
 messages and retry the operation.

OPERCLOSE

 database operator requested database shutdown

 Explanation:  Your program has been terminated because the
 database operator shut down the database you were using.

 User Action:  Try again later after the database shutdown is
 complete.

OPERSHUTDN

 database operator requested monitor process shutdown

 Explanation:  Your program has been terminated because the
 database operator shut down the database monitor process.

 User Action:  Try again later after the database shutdown is
 complete.

OPRSTK_OVRFLO

 operator stack overflow

 Explanation:  The internal limit of the parsing operator stack
 was exceeded.

 User Action:  Submit an SPR with the query that caused the
 error.

OVERFLOW

 data conversion overflow

 Explanation:  A loss of information would have occurred on a
 data item transformation.  The operation was not performed.

 User Action:  Correct the error and try again.

PARSE_STACK_OVERFLOW

 parse stack overflow

 Explanation:  The internal limits of the parsing stack were
 exceeded.

 User Action:  Submit an SPR with the query that caused the
 error.

PATHREQCDD

 A pathname is specified but no CDD is available

 Explanation:  The statement entered specifies a CDD pathname,
 but there is no CDD available for use (may not be installed).

 User Action:  Choose a statement or statement option that does
 not specify a pathname, or check with the system administrator
 to determine why the CDD is not available.

PREMATURE_EOF

 statement is syntactically incomplete

 Explanation:  You entered a syntactically incomplete statement.

 User Action:  Complete the statement before pressing RETURN.

PREMEOF

 premature end of file encountered in <str>

 Explanation:  A premature end-of-file was encountered while
 reading the specified file.

QIOXFRLEN

 data transfer length error - expected <num>, actual <num>

 Explanation:  The expected data transfer length was not equal to
 the actual data transfer length.

 User Action:  This is usually caused by a hardware problem.

QUIETPT

 waiting for database quiet point

 Explanation:  User is waiting for the quiet lock in order to
 force a database quiet point.

 User Action:  None.

REANOWRT

 a READ_ONLY transaction cannot specify write locks

 Explanation:  You specified a READ_ONLY transaction and a
 relation was locked for write access.  This is a conflict of
 access modes.

 User Action:  Start a transaction READ_WRITE or use a read lock.
 Note, the default is always READ_ONLY.

REFSEGSTR

 reference to segmented string <str> must use RDB$VALUE or
 RDB$LENGTH

 Explanation:  You attempted to use a context variable that was
 defined in a segmented string RSE with a field name that was
 neither RDB$VALUE or RDB$LENGTH.  You can only use RDB$VALUE or
 RDB$LENGTH to refer to a segmented string.

 User Action:  Use either <context-variable>.RDB$VALUE or
 <context-variable>.RDB$LENGTH, where context variable is the one
 defined in the segmented string RSE.

RELAMBIG

 the relation <str> was not qualified and is in multiple
 databases

 Explanation:  You must qualify the database with relation names
 when accessing more than one database containing that relation.

 User Action:  Make sure the INVOKE statements include
 qualifiers, and retype the query using the appropriate
 qualifier.

RELNOTDEF

 relation <str> is not defined in database

 Explanation:  The specified relation does not exist in the
 current database.

 User Action:  Invoke the correct database.  Spell the relation
 name correctly.  You may have specified a name other than a
 relation name.

REL_EXISTS

 relation <str> already exists in this database

 Explanation:  You attempted to define a relation with the name
 of an existing relation.

 User Action:  Choose a different name.

REMNOTALW

 a remote source database is not allowed to be replicated

 Explanation:  You were attached to a database which is on a
 remote node when you tried to define a replication mode transfer
 using the DEFINE TRANSFER statement.

 User Action:  Define an extraction transfer instead.

RESABORT

 terminating the IMPORT operation

 Explanation:  The IMPORT operation has been aborted; see the
 messages preceding this one.

 User Action:  None.

RESERVED_WORD

 <str> is a keyword; it cannot be used as a name

 Explanation:  You entered a keyword where a name was expected.

 User Action:  Specify a unique name instead of the keyword.

RESTART

 restarted recovery after ignoring <num> committed
 transaction(s)

 Explanation:  The specified number of committed transactions did
 not apply to this database root.  All subsequent transactions
 were applied.

 User Action:  None.

RETMODSPC

 only one retain mode may be specified for a transaction

 Explanation:  You specified two transaction modes in a
 START_TRANSACTION statement.

 User Action:  Specify only one transaction mode in a
 START_TRANSACTION statement.

ROOMAJVER

 root major version is incompatible with the DBCS

 Explanation:  Your database was created with an incompatible
 version of the software.

 User Action:  Your database cannot be used with the version of
 the software you have installed on your machine.

ROOTMAJVER

 database format is not compatible with software version

 Explanation:  Your database was created with an incompatible
 version of the software.

 User Action:  Your database cannot be used with the version of
 the software you have installed on your machine.

RSENOTSEG

 the RSE in a START_SEGMENTED_STRING does not reference a
 segmented string

 Explanation:  The START_SEGMENTED_STRING record selection
 expression refers to a real record stream instead of a segmented
 string field.  START_SEGMENTED_STRING may refer only to
 segmented strings.

 User Action:  Use a segmented string field in the RSE portion of
 the START_SEGMENTED_STRING command.

RTOCMDILL

 requested command is not supported in runtime-only or remote
 environment

 Explanation:  You issued a statement that is not supported in a
 run-time-only or remote system (such as DEFINE FIELD).

 User Action:  You may have to move your database to a system
 that has a development system to do this task.

RUJDEVDIR

 RUJ file name does not include device and directory

 Explanation:  The file you specified did not include a device
 and directory.

 User Action:  You should always include a device and directory
 in the file specification, preferably different from the
 database device for maximum protection.

SCALEOPSBASIC

 cannot use scaled operands in BASIC operations

 Explanation:  You attempted to perform arithmetic operations on
 scaled data types.  This is not supported in the BASIC
 preprocessor.

 User Action:  Use simple assignment statements to convert the
 variables to the desired data types and perform operations on
 those data types.

SEGALRSTA

 segmented string <str> is already started

 Explanation:  You issued a START_SEGMENTED_STRING statement
 using a segmented string name for which a START_SEGMENTED_STRING
 statement has been issued without a corresponding
 END_SEGMENTED_STRING.

 User Action:  Issue END_SEGMENTED_STRING or use another
 segmented string.

SEGNOTSTA

 segmented string <str> is not started or created

 Explanation:  You issued an END_SEGMENTED_STRING statement using
 a name for which no corresponding START_SEGMENTED_STRING or
 CREATE_SEGMENTED_STRING was issued, or for which an
 END_SEGMENTED_STRING has already been entered.

 User Action:  Issue a START_SEGMENTED_STRING or
 CREATE_SEGMENTED_STRING statement before using
 END_SEGMENTED_STRING, or only use END_SEGMENTED_STRING once for
 each START_SEGMENTED_STRING or CREATE_SEGMENTED_STRING.

SEGOUTSCO

 segmented string <str> was used out of scope

 Explanation:  You attempted to issue an END_SEGMENTED_STRING
 command using a name that was already ended.

 User Action:  Use only one END_SEGMENTED_STRING per
 START_SEGMENTED_STRING.

SEGSTREXP

 cannot use a segmented string in an expression

 Explanation:  You attempted to use a segmented string in an
 expression.  Segmented strings may be used only in expressions
 using the MISSING operator.

 User Action:  Remove the operations on the segmented string from
 the DML query.

SELMORVAL

 the result of a singelton select returned more than 1 value

 Explanation:  A singleton select statement (SELECT...INTO) may
 only return 1 row of values.  The result table for this
 singleton select contains more than one row.

 User Action:  Either embed the SELECT statement (without the
 INTO clause) in a DECLARE CURSOR statement and process it with
 OPEN and FETCH statements, or modify the SELECT statement so it
 will return only one row.

SETWIDTH

 error setting width of terminal

 Explanation:  An error occurred while parsing a file name.

 User Action:  Examine the secondary message for more
 information.

SEVERRDET

 a severe error was detected

 Explanation:  A severe error was detected by RDO and returned to
 DCL during the execution of an RDO statement.

 User Action:  If possible, run the statement(s) again in
 interactive RDO and read any additional RDO error messages to
 determine what caused the severe error condition.  Then fix the
 error.  Remember, in a DCL command procedure containing RDO
 statements, use the $SEVERITY symbol to test for RDO$_SEVERRDET.

SFDBONLY

 <str> function restricted to Single File DataBases

 Explanation:  This function is restricted to single-file
 databases.  It can not be used with multifile databases.

 User Action:  Use the corresponding RMU function for a multifile
 database.

SIP

 transaction is a snapshot transaction

 Explanation:  You have already started a transaction that is a
 snapshot transaction.

 User Action:  Use READY BATCH RETRIEVAL to ready the area for
 the snapshot transaction or use COMMIT to terminate the snapshot
 transaction.

SNAPFULL

 snapshot area too full for operation

 Explanation:  You attempted to store a record in the database,
 because there was an active reader and the snapshot area in
 which the record would go is too full.

 User Action:  Modify the snapshot area extend parameter to allow
 snapshot area extension.

SPACREQ

 a space is required before file specification

 Explanation:  A space is required to parse the begining of the
 file specification.

 User Action:  Run the preprocessor again and include a space
 before the file specification.

SSNOTINROOT

 <str> is not in the root file

 Explanation:  The DDCB you specified is not in the root file.
 You can see which DDCBs a root file has with the DBO/DUMP
 command.

 User Action:  Add the DDCB to your root file (DBO/MODIFY), or
 check your bind sequence and try again.

STALL

 asynchronous operation requires a stall

 Explanation:  The operation has not completed yet.

 User Action:  Check the event flag and I/O status block for
 final completion and submit and SPR..

STAREAFUL

 storage area too full for operation

 Explanation:  You attempted to store a record in the database,
 but the storage area in which the record would go is too full.

 User Action:  Modify the storage area extend parameter to allow
 storage area extension.

STARNOTALL

 invalid use of asterisk - expected field name

 Explanation:  You attempted to use a context_variable.* in a
 field-required context.

 User Action:  Supply names of fields to be referenced.

STOCONVAR

 must use the context variable, <str>, declared in the
 STORE/MODIFY.  You had <str>

 Explanation:  You used a context variable in a STORE statement
 that does not match the one declared in the RSE of the STORE
 statement.  For example:  FOR P IN PORT STORE J IN PORT USING
 P.CITY = J.CITY END_STORE END_FOR

 User Action:  Include the correct context variable in your STORE
 or MODIFY statement.

STOMAP_LITS

 too many fields in limit clause

 Explanation:  A DEFINE STORAGE MAP statement has specified more
 literal values as limits than corresponding fields in the USING
 clause.

 User Action:  Correct the statement.  The number of literal
 values you specify must match the number of fields in the USING
 clause.

STRALRDEC

 stream <str> is already declared

 Explanation:  You attempted to declare a stream that was already
 declared.

 User Action:  Use another stream name.

STRALROPE

 stream <str> is already opened

 Explanation:  You attempted to open a stream that was already
 open.

 User Action:  Close the open stream or use another stream name.

STRLITMISQUO

 string literal missing closing quote

 Explanation:  The string in a user assignment statement is
 missing a closing quote.

 User Action:  Insert one or more quotes as appropriate.

STRNOTDEC

 stream <str> has not been declared

 Explanation:  You attempted to open a predeclared stream that
 hasn't been declared

 User Action:  Declare the stream or use the name of a
 predeclared stream.

STRNOTOPE

 stream <str> is not opened

 Explanation:  You attempted to fetch a row from a stream that
 was not open, or you attempted to close a stream that was not
 open.

 User Action:  Issue a START_STREAM <stream-name> command before
 using FETCH.  Start a stream before closing, or close a stream
 only once after opening it.

STROUTSCO

 stream <str> was used out of scope

 Explanation:  You attempted to use a stream name outside the
 scope of the START_STREAM/END_STREAM block.  This is not
 permitted.

 User Action:  Use FETCH only within the START/END block.

SYM_EXP

 one of the following symbols was expected:

 Explanation:  You typed an unexpected keyword.

 User Action:  Type a correct keyword.

SYNTAX_ERR

 syntax error

 Explanation:  A syntax error was detected in a your RDO
 statement.

 User Action:  Correct the syntax error and retry the statement.

TADMISMATCH

 journal is for database version <time>, not <time>

 Explanation:  The version time and date stamp in the root does
 not match the version time and date stamp in the journal file.
 This journal cannot be applied to this backup.

 User Action:  Use the correct journal file or backup file.

TERMINATE

 database monitor forced image exit to protect database

 Explanation:  To maintain the integrity of the database, the
 monitor forced your image exit because an unrecoverable error
 has been detected.

 User Action:  Restart your transaction.

TOKTOOBIG

 symbol name is too big

 Explanation:  You entered a symbol (token) name with a length
 greater than 32 characters.  The length of a symbol name must be
 less than or equal to 32 characters.

 User Action:  Use a symbol with no more than 32 characters.

TOOBIGBLR

 request BLR would be too large to execute

 Explanation:  The user's request is too large to be compiled.

 User Action:  The DML statement must be broken up into smaller
 parts.

TRAACT

 a database cannot be invoked while a transaction is active

 Explanation:  You issued an INVOKE statement while a transaction
 was still in progress.

 User Action:  You must either commit or roll back the current
 transaction or wait until the current transaction is terminated
 before invoking another database.

TRAACT_1

 a database cannot be defined while a transaction is active

 Explanation:  You issued a DEFINE DATABASE command while a
 transaction was still in progress.

 User Action:  You must either commit or roll back the current
 transaction or wait until the current transaction is terminated
 before invoking another database.

TRAACT_2

 ROLLBACK or COMMIT the transaction

 Explanation:  You are attempting an operation that cannot be
 executed while the current transaction is still in progress.

 User Action:  You must either commit or roll back the current
 transaction or wait until the current transaction is terminated
 before attempting the new database activity.

TRAACT_3

 a database cannot be deleted while a transaction is active

 Explanation:  You issued a data definition statement while a
 data manipulation transaction was still in progress.

 User Action:  Commit or roll back the data manipulation
 transaction, start a new transaction, and reissue the data
 definition statement.

TRAHDLBVAL

 transaction handle must be !VAL

 Explanation:  You specified a transaction handle name to
 RDB$INTERPRET.

 User Action:  You must use !VAL and a longword variable.

TRAHDLINV

 transaction handle datatype invalid, must be longword

 Explanation:  You specified a transaction handle to
 RDB$INTERPRET that was not a longword.

 User Action:  You must use !VAL and a longword variable.

TRAMODSPC

 only one transaction mode may be specified for a transaction

 Explanation:  You specified two transaction modes in a
 START_TRANSACTION statement.

 User Action:  Specify one transaction mode in a
 START_TRANSACTION statement.

TRANONERR1

 start_transaction not allowed in on error

 Explanation:  A START_TRANSACTION statement is not allowed in an
 ON ERROR clause.

 User Action:  The ON ERROR clause is within a request.  If a new
 transaction is desired, leave the current request and then start
 the transaction.

TRANONERR2

 must leave current request to start a new transaction

 Explanation:  A START_TRANSACTION statement is not allowed in an
 ON ERROR clause.

 User Action:  The ON ERROR clause is within a request.  If a new
 transaction is desired, leave the current request and then start
 the transaction.

TRAN_IN_PROG

 transaction in progress

 Explanation:  You attempted an operation that is allowed only
 when you have no transaction in progress.

 User Action:  Complete your transaction by executing a COMMIT or
 ROLLBACK.

TREE_OVRFLO

 tree storage overflow

 Explanation:  The internal limit of the AST tree nodes was
 exceeded.

 User Action:  Submit an SPR with the query that caused the
 error.

TRUE

 condition value is true

 Explanation:

TRUNCATION

 data conversion truncation error

 Explanation:  You attempted an operation that would cause loss
 of information on a data item movement.

 User Action:  Correct the error and try again.

UNBTMPFIL

 unable to open a temporary file called <str>

 Explanation:  RDO attempted to open a temporary file.  It was
 either in the default directory or the directory specified with
 the /OBJ compile qualifier.

 User Action:  Include a valid directory specification with
 protection level that allows temporary files to be created.

UNDERFLOW

 data conversion underflow

 Explanation:  You attempted an operation that would cause loss
 of information on a data item movement.

 User Action:  Correct the error and try again.

UNLCONVAR

 unlike context variables; can update only one relation at a
 time

 Explanation:  The current MODIFY or STORE statement attempts to
 update database fields in multiple relations.  Example:  "MODIFY
 USING P.EMPLOYEE_NUM = "FOO"; J.NAME = "JONES" END-MODIFY."

 User Action:  Use a separate MODIFY or STORE statement to update
 fields in multiple relations.

UNSARITH

 expression includes unsupported arithmetic operation

 Explanation:  The Boolean evaluator was processing an expression
 or sub-expression that contained an arithmetic operator.
 Arithmetic operators are not supported.

 User Action:  Rewrite the expression in error without the
 arithmetic operator.

UNSCOMP

 unsupported data comparison

 Explanation:  You attempted an operation that would compare two
 incommensurate data items.

 User Action:  Correct the error and try again.

UNSCOMPBY

 <str>.<str> is not supported in this context

 Explanation:  You included the COMPUTED_BY field named in this
 error message in the SELECT FIELDS clause of a DEFINE TRANSFER
 statement.  This COMPUTED_BY field uses a value expression that
 is unsupported.

 User Action:  Reenter the DEFINE TRANSFER statement and omit the
 COMPUTED_BY field that uses the unsupported value expression.
 Refer to the DEFINE TRANSFER statement in the Data Distributor
 Handbook for information on what value expressions are
 supported.

UNSCONV

 unsupported data conversion

 Explanation:  You attempted an operation that would cause loss
 of information on a data item movement.

 User Action:  Correct the error and try again.

UNSDSCCLA

 unsupported descriptor class <num>

 Explanation:  The class of the descriptor in an input parameter
 is not supported by Rdb/VMS.

 User Action:  Use class S, D, DS, or VS.

UNSSTRXPR

 unsupported string expression

 Explanation:  You attempted an operation on a string that is not
 supported.  ie string = string + string;

 User Action:  Please check the manual for the string expressions
 allowed.  If you are using the preprocessors, you might be able
 to work around the limitation by using a temporary variable.

UNSSUPDAT

 unsupported datatype requested

 Explanation:  You requested input or output of an unsupported
 data type from Callable RDO.

 User Action:  Review the data types of the variables in the call
 and change the offending data type to a supported data type.

UNTSTR

 unterminated string found

 Explanation:  The matching quotation mark (" or ') for a string
 was not found.

 User Action:  Reenter the command with the matching quotation
 mark.

USINGNOTSPEC

 no USING clause specified

 Explanation:  A DEFINE STORAGE MAP statement has specified
 literal values as limits but has specified no fields in the
 USING clause.

 User Action:  Correct the statement.  The number of literal
 values you specify must match the number of fields in the USING
 clause.

VEWNOTDEF

 view <str> is not defined in database

 Explanation:  The specified view does not exist in the current
 database.

 User Action:  Invoke the proper database.  Spell the view name
 correctly.  You may have specified an expression where a view
 name was expected.

WAIMODSPC

 only one wait mode may be specified for a transaction

 Explanation:  You specified two transaction modes in a
 START_TRANSACTION statement.

 User Action:  Specify only one transaction mode in a
 START_TRANSACTION statement.

WASBOOL

 expression in CONTAINS or MATCHES was a Boolean

 Explanation:  The Boolean evaluator was processing an expression
 or sub-expression of the form "A CONTAINS B" or "A MATCHES B".
 Either the "A" or the "B" expression was a Boolean of the form
 "NOT X", "X EQ Y", "X NE Y", "X LT Y", "X GT Y", "X LE Y", "X GE
 Y", "X CONTAINS Y", or "X MATCHES Y".  Neither side of CONTAINS
 and MATCHES expressions are allowed to be Boolean expressions.

 User Action:  Rewrite the expression in error to have the proper
 format.

WISH_LIST

 feature not yet implemented

 Explanation:  The action you requested requires a feature that
 is not implemented in the current version of this product.

 User Action:  Avoid using this feature.

ZABORT

 user entered Control-Z to abort command

 Explanation:  You entered a CTRL/Z to abort the current command.

 User Action:  None.

DDAL

Additional information available:

BADDBINFOBADDBKBLOBADDBKERABADDBKMOD
BADDBKSTOBADDBKUNKBADINTLENBIDNOTFOU
BUGFILCREBUGFILINCBUGFILNOTCANTFINDENTRY
CANT_WRITE_LOG_FILECOMNOTFOUCONFIGERR
CPENQERRDBEXISTSERRACCDSTDBERRACCSRCDBERRDELTNSF
ERROR_ACCESS_TDBFAIL_CRE_CPFILE_IO_ERRORFLDNOTFND
FLDNOTFOUFLDNOTSYMGETDVIERRGETFORERR
GETJPIERRGETSYIERRINVACTTYPINVBUFNUM
INVDBKLENINVJOUVERINVLOGCLAINVLOGTYP
INVRDBDTYINVSEGINFINVSELBLRINVSYSBLOBINVTRAOPT
LOGCHOOUTRANLOG_AST_ERRORLOG_ERRORLOG_PRIV_ERROR
MBXERRNOREPTNSFNOTDTCHNOVINTAGENO_DEFINE
NO_PRIVNO_READNO_READ_RELNO_TR_MONPREMATEOT
PRIV_READ_ERRORQIOERRRDBERRRDODEQERRRELNOTFND
RMSERRSCHDEQERRSCHENQERRSCH_DEF_EXIST
SRCRELCKSUPPSYMNOTFNDTMNBUGCHKTNSF_ACT_RETRY
TNSF_NAME_UNKNOWNTNSF_NAME_USEDTNSF_NOT_SUSPENDED
TOOMANYRDOTOO_MANY_CPTRANOTFOUTRANOTSOU
TRANS_NORETRYTRDEQERRTRENQERRTRNLNMERRUNKNMODE
UNRECQUALVINNOTFNDWRONUMARG

BADDBINFO

 invalid information returned from Rdb$DATABASE_INFO call

 Explanation:  The image called Rdb$DATABASE_INFO, and the TYPE
 returned was an unexpected value.

 User Action:  Please submit an SPR.

BADDBKBLO

 blob update to the destination database failed (relation
 "<str>" DBKEY "<num> <num>")

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

BADDBKERA

 erasure to the destination database failed (relation "<str>"
 DBKEY "<num> <num>")

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

BADDBKMOD

 modification to the destination database failed (relation
 "<str>" DBKEY "<num> <num>")

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

BADDBKSTO

 store to the destination database failed (relation "<str>"
 DBKEY "<num> <num>")

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

BADDBKUNK

 unknown operation value received from the destination database

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

BADINTLEN

 internally calculated length was incorrect

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

BIDNOTFOU

 segmented string identification was not found in the record
 image

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

BUGFILCRE

 Data Distributor bugcheck dump file <str> was created

 Explanation:  An unexpected, fatal error has been detected
 during the execution of Vax Data Distributor.  Data Distributor
 has created a bugcheck dump file to capture information that
 might help diagnose the cause of the error.  This message is
 accompanied by other messages that give information about the
 cause of the problem.

 User Action:  Please submit a Software Performance Report (SPR).

BUGFILINC

 Data Distributor bugcheck dump file <str> was created but is
 incomplete

 Explanation:  An unexpected, fatal error has been detected
 during the execution of VAX Data Distributor.  Data Distributor
 then created a bugcheck dump file to capture information that
 might help diagnose the cause of the error.  However, another
 fatal error occurred while writing the dump file.  The dump file
 information is incomplete.  This message is accompanied by other
 messages that give further information about the cause of the
 original problem as well as the cause of the dump file failure.

 User Action:  Refer to the accompanying system messages for the
 cause of the dump file problem.  A typical reason might be that
 the disk is full.  Correct the cause of the error that prevented
 completion of the dump file.  Then attempt to recreate the
 original problem that resulted in the fatal error so that a
 bugcheck dump file can be obtained.  Please submit a Software
 Performance Report (SPR).

BUGFILNOT

 Data Distributor bugcheck dump file was not created

 Explanation:  An unexpected, fatal error has been detected
 during the execution of VAX Data Distributor.  Data Distributor
 then attempted to write a bugcheck dump file to capture
 information that might help diagnose the cause of the error.
 However, creation of the dump file failed.  This message is
 accompanied by other messages that give further information
 about the cause of the original problem as well as the cause of
 the dump file failure.

 User Action:  Refer to the accompanying system messages for the
 cause of the dump file problem.  Typical reasons might be a full
 disk or write access error.  Correct the cause of the error that
 prevented creation of the dump file.  Then attempt to recreate
 the original problem that resulted in the fatal error so that a
 bugcheck dump file can be obtained.  Please submit a Software
 Performance Report (SPR).

CANTFINDENTRY

 cannot find an entry under the process name shown in the queue

 Explanation:  The transfer monitor stopped when it didn't
 recognize the user who issued a SHOW TRANSFER statement.

 User Action:  Refer to the transfer monitor log for information
 about the bugcheck dump file.  Please submit an SPR with the
 relevant section of the transfer monitor log file.

CANT_WRITE_LOG_FILE

 cannot write to the log file <str>

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

COMNOTFOU

 commit logical record was not found for PSN <num>

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

CONFIGERR

 error occurred enqueueing or dequeueing the configure lock
 <str>, LKID <num>

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

CPENQERR

 copy process encountered an error enqueueing a lock

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

DBEXISTS

 transfer database already exists under the name given; not
 initialized

 Explanation:  When a transfer database with the name you
 specified already exists, the transfer monitor does not create a
 new transfer database.

 User Action:

ERRACCDSTDB

 error occurred accessing the destination database

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

ERRACCSRCDB

 error occurred accessing the source database

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

ERRDELTNSF

 failed to delete transfer definition from source database;
 transaction rolled back

 Explanation:  You designated the deletion of one or more
 replication transfers.  The deletion of one of the transfers
 failed when the transfer monitor ran a copy process to delete
 the transfer information in the source database.  Your
 transaction automatically rolled back.

 User Action:  Read the copy process log file to learn if the
 problem was caused by the copy process.  You can use the SHOW
 TRANSFER DEFINITION command to review the location and name of
 the log file you specified in your transfer definition.  Refer
 to the transfer monitor log file to determine if there was a
 failure in creating and starting the copy process.  You must
 have special privileges to read this log file.

ERROR_ACCESS_TDB

 error accessing the transfer definition database

 Explanation:  An access error occurred when either the transfer
 monitor or the copy process attempted a read-write operation to
 the transfer database.

 User Action:  See the following message.

FAIL_CRE_CP

 failed to create a copy process

 Explanation:  You entered a START TRANSFER NOW statement or a
 START TRANSFER NOW WAIT statement, but the transfer monitor did
 not create a copy process to execute the transfer and placed
 your transfer in the "suspended" state.

 User Action:  Note the time and date the failure occurred; then
 examine the transfer monitor log file (DDAL$TM_LOG_FILE) for
 information on the failure.

FILE_IO_ERROR

 file IO error was encountered with log file

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

FLDNOTFND

 transferred field <str> in relation <str> was not found in
 the source database

 Explanation:  The field named (in the relation named) is listed
 in a move clause of the transfer currently being run.  It could
 not be found in the source database.

 User Action:  Delete the transfer, and redefine it without the
 relation.  If the field is needed for that relation, delete the
 transfer, reconstruct the relation, and re-define the transfer.

FLDNOTFOU

 field <str> of relation <str> was not found in the source
 database

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

FLDNOTSYM

 field <str> was not found in the symbol table

 Explanation:  The copy process could not find the named field in
 the source database.  Fields for which there are replication
 transfers defined are not allowed to be deleted or modified.

 User Action:  Please submit an SPR.

GETDVIERR

 error occurred calling the GETDVI system service

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

GETFORERR

 error ocurred using the LIB$GET_FOREIGN call

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

GETJPIERR

 error occurred using the GETJPI system service

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

GETSYIERR

 error occurred using the GETSYI system service

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

INVACTTYP

 invalid or unsupported action type from EXTR module

 Explanation:  An invalid or unsupported action type was
 specified.

 User Action:  Please submit a Software Performance Report (SPR).

INVBUFNUM

 invalid buffer number in GET_MESSAGE_BUF routine call

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

INVDBKLEN

 DBKEY read from the changes relation is not 8 bytes long.

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

INVJOUVER

 invalid journal format version number (<num>) was found

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

INVLOGCLA

 invalid logical change file record class (<num>) was found

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

INVLOGTYP

 invalid logical change file record type (<num>) was found

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

INVRDBDTY

 invalid datatype value was read from a VAX Rdb/VMS system
 relation.

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

INVSEGINF

 invalid information from an RDB$SEGMENT_INFO routine call

 Explanation:  An internal routine received invalid information
 when it called RDB$SEGMENT_INFO.

 User Action:  Check the integrity of the source and transfer
 databases.  Attach to the database and check that the contents
 of the segmented strings are the same as you set up.  If they
 are the same, please submit a Software Performance Report (SPR).

INVSELBLR

 invalid selection BLR string

 Explanation:  The copy process either encountered a value that
 is not a Binary Language Representation (BLR) literal, or it
 found a BLR literal that it does not support.  Either Rdb/VMS
 has incorrectly generated the BLR or VAX Data Distributor has
 incorrectly stored the BLR.

 User Action:  Please submit an SPR.

INVSYSBLOB

 system relation segmented string was expected to be a single
 segment

 Explanation:  In querying the segmented string field of a system
 relation, the copy process was told to expect multiple segments
 instead of the single segment allowed in system relations.

 User Action:  Check the integrity of the source database.
 Attach to the database and check that the contents of the
 segmented strings are single segments.  If they are single
 segments, please submit a Software Performance Report (SPR).

INVTRAOPT

 invalid transfer option

 Explanation:  The transfer option must be Extraction,
 Initialize, or Update.

 User Action:  Please submit a Software Performance Report (SPR).

LOGCHOOUTRAN

 log choice <num> is out of range

 Explanation:  DDAL code could not process a correctly identified
 logging item.

 User Action:  <To be supplied>

LOG_AST_ERROR

 error occurred while enabling or disabling ASTs during logging

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

LOG_ERROR

 error occurred during logging

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

LOG_PRIV_ERROR

 error logging privileges

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

MBXERR

 mailbox error in the transfer monitor

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

NOREPTNSF

 this transfer is not a replication

 Explanation:  You issued the REINITIALIZE TRANSFER statement for
 an extraction transfer.  You can use the REINITIALIZE TRANSFER
 statements only for replications.  Your request was ignored.

 User Action:  If you intended to reinitialize a replication
 transfer, use the SHOW TRANSFER statement to check that you have
 supplied the correct replication transfer name.  If you entered
 the name correctly, then use the SHOW TRANSFER DEFINITION
 statement to check the transfer definition.

NOTDTCH

 transfer monitor should be run as a detached process

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

NOVINTAGE

 vintage information was not found in the destination database

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

NO_DEFINE

 no define access to the source database

 Explanation:  The user who owns the transfer being run does not
 have DEFINE access to the source database at the time of the
 initial replication transfer.

 User Action:  Modify the user's ACL entry so that he has READ
 access to the database in question.  REINITIALIZE and START the
 transfer.

NO_PRIV

 no privilege to access this transfer

 Explanation:  To execute a DELETE TRANSFER, REINITIALIZE
 TRANSFER, START TRANSFER, STOP TRANSFER, DEFINE SCHEDULE, or
 DELETE SCHEDULE statement, your user identification code (UIC)
 must match the UIC in the transfer definition or your process
 must have BYPASS privileges.

 User Action:  Check to see that you named the transfer you want.

NO_READ

 no read access to source database

 Explanation:  The user who owns the transfer being run does not
 have READ access to the source database at the time of the
 transfer.

 User Action:  Modify the user's ACL entry to provide READ access
 to the database in question, and start the transfer.  If this
 was a replication initialization, REINITIALIZE the transfer
 first.

NO_READ_REL

 no read access to relation <str>

 Explanation:  The user who owns the transfer being run does not
 have READ access to the relation specified in the source
 database at the time of the transfer.

 User Action:  Modify the user's ACL entry for that relation so
 that he has READ access.  START the transfer.  If this transfer
 was a replication initialization, REINITIALIZE the transfer
 first.

NO_TR_MON

 transfer monitor is not running

 Explanation:  You cannot execute any Data Distributor statement
 because the transfer monitor is not running.  It is possible
 that the transfer monitor was never started.

 User Action:  Have the system manager start the monitor, and
 issue the statement again.  The VAX Data Distributor
 Installation Guide describes the SYS$MANAGER:DDAL$START_TR_MON
 command procedure for starting the transfer monitor when the
 system is started.  This command procedure also defines the
 system-wide logical symbol that identifies the transfer
 monitor's mailbox, DDAL$TR_MON_MBX.  This logical symbol must be
 correctly defined and your process must have read-write
 privileges for the transfer monitor's mailbox.  The system
 manager can examine the transfer monitor log file,
 DDAL$TM_LOG_FILE for information on why the transfer monitor is
 not running.

PREMATEOT

 END_OF_TRANSACTION encountered prematurely

 Explanation:  While reading from the RDB$CHANGES relation, the
 copy process encountered an end-of-stream condition before it
 found the end-of-transaction mark.

 User Action:  Reinitialize the transaction and issue a START
 TRANSFER statement.  If the replication transfer is not
 successful, please submit an SPR.

PRIV_READ_ERROR

 error reading privileges

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

QIOERR

 error occurred performing QIO

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

RDBERR

 database error detected

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

RDODEQERR

 error occurred dequeueing the RDO deadman lock in the
 transfer monitor

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

RELNOTFND

 transferred relation <str> was not found in the source database

 Explanation:  The relation named is listed in a MOVE clause of
 the transfer currently being run.  It could not be found in the
 source database.

 User Action:  Delete the transfer and redefine it without the
 relation.  If the relation is needed, delete the transfer,
 reconstruct the relation, and re-define the transfer.

RMSERR

 error occurred using RMS PARSE or SEARCH on the file <str>

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

SCHDEQERR

 error occurred dequeueing the next transfer lock <str>, LKID
 <num> for scheduling

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

SCHENQERR

 error occurred enqueueing the next transfer lock <str>, LKID
 <num> for scheduling

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

SCH_DEF_EXIST

 schedule definition for the transfer already exists

 Explanation:  A schedule already exists for the transfer you
 specified.

 User Action:  To replace the existing schedule with a new one,
 suspend the transfer by issuing a STOP TRANSFER statement.
 Delete the old schedule definition with DELETE SCHEDULE.  Define
 a new schedule and issue a START TRANSFER statement.

SRCRELCK

 error occurred in enqueueing or dequeueing the lock <str>

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

SUPP

 <str>

 Explanation:  This message provides supplementary information
 sent from a low level DSRI.

 User Action:  Interpret the message in light of the higher level
 messages that precede it.

SYMNOTFND

 symbol table was not found for relation <str> record version
 "<num>"

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

TMNBUGCHK

 the transfer monitor is starting a bugcheck dump

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

TNSF_ACT_RETRY

 transfer is active or retrying

 Explanation:  The transfer you specified in the START TRANSFER
 statement is already executing.

 User Action:  None.

TNSF_NAME_UNKNOWN

 transfer name is unknown

 Explanation:  You specified the name of a transfer definition
 that does not exist.

 User Action:  Enter the name of an existing transfer.  You can
 enter a SHOW TRANSFER statement to check the names of existing
 transfers.

TNSF_NAME_USED

 transfer name already exists

 Explanation:  You cannot specify a transfer name that has
 already been defined.

 User Action:  To replace the existing transfer definition, use
 the STOP TRANSFER statement to suspend the transfer and issue a
 DELETE TRANSFER statement to delete the current definition.
 Then enter the new transfer definition using the DEFINE TRANSFER
 statement.

TNSF_NOT_SUSPENDED

 transfer is not suspended

 Explanation:  You must suspend a tranfer before starting an
 operation to define or delete a schedule or to delete,
 reinitialize, or start a transfer.

 User Action:  Issue a STOP TRANSFER statement to suspend the
 transfer.  Then reissue your original command.

TOOMANYRDO

 too many RDO users at this moment; please try again later

 Explanation:  The transfer monitor rejected your request because
 it either is executing a transaction for another RDO user or the
 maximum allowable number of users attempting to request the
 transfer monitor's services has reached.

 User Action:  Wait before reissuing your request.

TOO_MANY_CP

 too many copy processes running; another copy process will be
 started later

 Explanation:  You issued either a START TRANSFER NOW WAIT
 statement or a START TRANSFER NOW statement.  In the case of
 START TRANSFER NOW WAIT, Data Distributor already is executing
 the maximum number of transfers that can be handled
 concurrently; another copy process will not be started later.
 In the case of START TRANSFER NOW, the message indicates that
 Data Distributor already is executing the maximum number of
 concurrent processes and that your transfer's status has changed
 from "suspended" to "scheduled."

 User Action:  Issue a START TRANSFER NOW WAIT at a time when the
 maximum number of processes are not running.  If you issued a
 START TRANSFER NOW statement, the transfer will execute
 automatically at the next scheduled transfer time.

TRANOTFOU

 transfer <str> could not be found in the transfer database

 Explanation:  The transfer monitor specifies a transfer name for
 the copy operation.  The copy process could not find the
 transfer name in the transfer database.

 User Action:  Please submit a Software Performance Report (SPR).

TRANOTSOU

 transfer <str> could not be found in the source database

 Explanation:  The copy process could not find the specified
 replication transfer in the special system relations in the
 source database.  The transfer is suspended.  This error can
 result when the user restores an old backup copy of the source
 database.

 User Action:  Reinitialize the replication transfer and issue a
 START TRANSFER statement.

TRANS_NORETRY

 transfer failed; maximum retry count reached

 Explanation:  Your transfer has failed and the maximum number of
 retries you specified has been exhausted.

 User Action:  Examine the copy process log file for an error
 message which indicates the reason for the transfer failure.

TRDEQERR

 error occurred dequeueing the lock <str> , LKID <num> on
 transfer currently executing or owned by another transfer
 monitor

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

TRENQERR

 error occurred enqueueing the lock <str> , LKID <num> on
 transfer currently executing or owned by another transfer
 monitor

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

TRNLNMERR

 error occurred getting, creating, or translating the logical
 name in transfer monitor

 Explanation:  <To be supplied>

 User Action:  <To be supplied>

UNKNMODE

 mode is out of range

 Explanation:  The VMS operating system has returned an unknown
 code in response to the copy process or transfer monitor call to
 determine what mode it is operating in.  The normal modes are
 NETWORK, BATCH, INTERACTIVE, or OTHER.  If the copy process
 originated the call, the copy process stops executing and the
 transfer monitor marks the transfer as failed.  The transfer
 will not retry.  If the transfer monitor originated the call,
 the transfer monitor creates a bugcheck dump file.

 User Action:  Refer to the transfer monitor log for information
 about the bugcheck dump file.  Please submit an SPR with the
 relevant section of the transfer monitor log file and of the
 copy process log file.

UNRECQUAL

 parameter <str> is unknown

 Explanation:  New transfer databases are created as part of a
 system startup procedure which uses the command file
 SYS$COMMON:[SYSMGR]DDAL$INIT_TR_DB.COM or as part of your
 process if you invoke the transfer database directly.  When you
 define a Digital Command Language (DCL) command or command
 procedure to call the transfer monitor to initialize the
 transfer database, you must include the INIT or NOINIT
 qualifier.  The transfer monitor was passed a qualifier other
 than INIT or NOINIT and aborted its operation.

 User Action:  Correct the DCL command or command procedure that
 invokes the transfer monitor to include either the INIT
 parameter or the NOINIT parameter.

VINNOTFND

 vintage TSN <num> was not found in the source database

 Explanation:  The source database and the destination database
 of a replication transfer are out of synchronization with each
 other.  This error can result when the user restores a backup
 copy of the source database.

 User Action:  Reinitialize the replication transfer and issue a
 START TRANSFER statement.

WRONUMARG

 wrong number of arguments to an internal routine call

 Explanation:  An internal routine with an incorrect number of
 arguments was called.

 User Action:  Please submit a Software Performance Report (SPR).

Execute

 The 'at' sign (@) means "execute" in RDO, just as in DCL.  When you
 type @ and the name of an indirect command file, RDO executes the
 statements in the file as if you had typed them one at a time at the
 RDO prompt.  The default file type for an indirect command file is
 RDO.  You can use the SET VERIFY statement to have the commands in
 the file displayed on the screen as they execute.

 Example:

      $ TYPE ACCOUNTING.RDO
      INVOKE DATABASE FILENAME "DEPT3:ACCOUNTING"
      SHOW DATABASES
      $ RDO
      RDO> @ACCOUNTING
      Database with filename  ACCOUNTING

Additional information available:

FormatExamples

Format

 @file-spec

 file-spec

 The name of an indirect command file.  You can use either a full VMS
 file specification, a file name, or a logical name.  If you use a
 file name, RDO looks in the current default VMS directory for a file
 by that name.  The file must contain valid RDO statements.

Examples

 Example 1

 Use an indirect command file to execute a frequently used query:

 $ TY EMPADDR.RDO
 !
 ! This command file generates information for a mailing list.
 !
 SET OUTPUT 'DISK2:[DEPT32]MAILLIST.DOC'
 FOR E IN EMPLOYEES
  PRINT E.FIRST_NAME, E.MIDDLE_INITIAL, E.LAST_NAME,
        E.ADDRESS_DATA_1, E.ADDRESS_DATA_2, E.CITY, E.STATE,
 E.POSTAL_CODE
 END_FOR
 $ RDO
 RDO> @EMPADDR


 Example 2

 You can use a logical name to run a command file:

 $ SET DEFAULT DISK1:[FORESTER]
 $ DEFINE COUNT "DISK2:[DEPT3]COUNT.RDO"
 $ TYPE DISK2:[DEPT3]COUNT.RDO
 !
 ! This command file counts the records in
 ! each relation in the PERSONNEL database.
 !
 SET NOVERIFY
 SET OUTPUT COUNT.LOG

 PRINT "   "
 PRINT "Statistics for the PERSONNEL database follow: "
 PRINT "  "
 PRINT "Count of Employees -------> ", COUNT OF X IN EMPLOYEES
 PRINT "Count of Jobs ------------> ", COUNT OF J IN JOBS
 PRINT "Count of Degrees ---------> ", COUNT OF D IN DEGREES
 PRINT "Count of Salary_History --> ", COUNT OF SH IN SALARY_HISTORY
 PRINT "Count of Job_History -----> ", COUNT OF JH IN JOB_HISTORY
 PRINT "Count of Work_Status -----> ", COUNT OF W IN WORK_STATUS
 PRINT "Count of Departments -----> ", COUNT OF D IN DEPARTMENTS
 PRINT "Count of Colleges --------> ", COUNT OF C IN COLLEGES
 PRINT "Count of Resumes ---------> ", COUNT OF R IN RESUMES
 PRINT "  "
 PRINT "Statistics Complete for Database - written to COUNT.LOG"
 PRINT "    "
 PRINT "   "
 $ !
 $ @COUNT

 Statistics for the PERSONNEL database follow:

  Count of Employees ------->            100
  Count of Jobs ------------>             15
  Count of Degrees --------->            166
  Count of Salary_History -->            729
  Count of Job_History ----->            274
  Count of Work_Status ----->              3
  Count of Departments ----->             26
  Count of Colleges -------->             16
  Count of Resumes --------->              0

 Statistics Complete for Database - written to COUNT.LOG

 $

 Notice that the default VMS directory is not the same as the
 directory containing the command file.  You define the process
 logical name to point to the correct command file.  Then you use the
 logical name as the object of the @ command.

Field attr

 The characteristics of a field.

 field-attributes =

 DATATYPE IS ───> data-type ───┬───────────────────────────────────┬───>
                               └┬─┬──> validity-clause ────────┬─┬─┘
                                │ ├──> missing-value-clause ───┤ │
                                │ └──> dtr-clause ─────────────┘ │
                                └───────────<───────────<────────┘

Additional information available:

data-typevalidity-clausemissing-value-clausedtr-clause

data-type

 Describes the characteristics of data stored in fields.  Request HELP on
 data-types for a table of Rdb/VMS data types.

Additional information available:

Segmented string

Segmented string

 seg-str-option =

   ─┬─┬───> 
S

E

G

M

E

N

T

L

E

N

G

T

H
typebox (I)typebox (S) ───> n ───> typebox (B)typebox (Y)typebox (T)typebox (E)typebox (S) ──┬─┬─> │ └───> 
S

U

B

T

Y

P

E
typebox (I)typebox (S) ────┬────> 
B

L

R
──────┬────┘ │ │ ├────> 
T

E

X

T
─────┤ │ │ └────> n ────────┘ │ └──────────────────────<────────────────────────┘

validity-clause

 Specifies a validation check for a field.  Rdb/VMS evaluates the
 conditional expression at run time when the field is stored or
 modified.

 validity-clause =

   ────> 
V

A

L

I

D

I

F
───> conditional-expr ───> conditional-expr Specifies a valid conditional expression. This conditional expression must refer only to the field being defined. Ask for HELP on Cond_expr for a complete description of Rdb/VMS conditional expressions.

missing-value-clause

 Specifies a numeric or character string literal that denotes that no
 value is stored in the field.  When you retrieve or display the
 value, Rdb/VMS returns the contents of the MISSING_VALUE string or
 number.

 missing-value-clause =

   ─────> 
M

I

S

S

I

N

G

V

A

L

U

E
typebox (I)typebox (S) ───┬───> fxd-pnt-num ─────┬───> └───> quoted-string ───┘

Additional information available:

fxd-pnt-numquoted-stringExamples

fxd-pnt-num

 A fixed-point number that Rdb/VMS uses to replace a retrieved null
 value.

 A fixed-point number always includes a decimal point, even when there
 are no digits to the right of the decimal point.

 For example, if a field contains dollar and cent values, you may want
 to use 0.00 as the missing value to preserve the value context when
 Rdb/VMS retrieves and displays null values.  In this particular case,
 if you do not allow null values and you do not specify a missing
 value, Rdb/VMS fills the retrieved field with zeros.

 Specify a number that does not exceed the defined field length and
 include a decimal point.

quoted-string

 A character string that Rdb/VMS uses to replace retrieved null
 values.  For example, you could specify a missing value of "Value not
 found" to replace null values.  Specify a character string whose
 length does not exceed the length of the field.  Enclose the string
 in single or double quotation marks ("string" or 'string').  Ask for
 HELP on Value_expr for a complete description of the use of literal
 expressions.

Examples

 Example 1

 Define missing value for dates:

 DEFINE FIELD  STANDARD_DATE
         DESCRIPTION /* Universal date field */
         DATATYPE IS DATE
         MISSING_VALUE IS "17-NOV-1858 00:00:00.00"
         EDIT_STRING FOR DATATRIEVE IS 'DD-MMM-YYYY'.

 This definition defines a missing value for date fields to be the
 same as the base date and time for VMS.


 Example 2

 Define missing values for numeric fields:

 DEFINE FIELD  SALARY
         DATATYPE IS SIGNED LONGWORD SCALE -2
         MISSING_VALUE IS 0.00
         EDIT_STRING FOR DATATRIEVE IS '$$$$,$$9.99'.

 This statement specifies "0.00" as the missing value for SALARY
 fields.


 Example 3

 Define missing values for text fields:

 DEFINE FIELD  ADDRESS_DATA
         DATATYPE IS TEXT SIZE 20
         MISSING_VALUE IS "Not available".

 When you retrieve a field whose value is missing, Rdb/VMS displays
 the string "Not available".

dtr-clause

 Rdb/VMS provides support for VAX DATATRIEVE, the DIGITAL query
 language.  You can specify one or more of the following clauses:

      Query header
      Query name
      Default value
      Edit string

 If you specify a DATATRIEVE attribute on a global field, you can
 cancel that attribute for a particular relation, using the NO
 qualifier.  The NO qualifier of the dtr-clause is available when you
 are changing a definition with the CHANGE FIELD or CHANGE RELATION
 statement.  The NO qualifier is not used with the dtr-clause of
 DEFINE FIELD, DEFINE RELATION, and DEFINE VIEW.

Additional information available:

FormatExamples

Format

 dtr-clause =

 ─┬─> 
Q

U

E

R

Y

H

E

A

D

E

R
Ftypebox (O)typebox (R) ──┬─> typebox (D)typebox (T)typebox (R) ────────┬──> typebox (I)typebox (S) ─┬> quoted-string ──┬─┬─> │ └─> typebox (D)typebox (A)typebox (T)typebox (A)typebox (T)typebox (R)typebox (I)typebox (E)typebox (V)typebox (E) ─┘ └────── typebox (/) <────────┘ │ ├─> 
N

O

Q

U

E

R

Y

H

E

A

D

E

R
Ftypebox (O)typebox (R) ──┬── typebox (D)typebox (T)typebox (R) ──────────┬────────────────────────┤ │ └─> typebox (D)typebox (A)typebox (T)typebox (A)typebox (T)typebox (R)typebox (I)typebox (E)typebox (V)typebox (E) ───┘ │ ├─> 
Q

U

E

R

Y

N

A

M

E
Ftypebox (O)typebox (R) ────┬─> typebox (D)typebox (T)typebox (R) ─────────┬─> typebox (I)typebox (S) ─┬> quoted-string ──┬─┤ │ └─> typebox (D)typebox (A)typebox (T)typebox (A)typebox (T)typebox (R)typebox (I)typebox (E)typebox (V)typebox (E) ──┘ └────── typebox (/) <────────┘ │ ├─> 
N

O

Q

U

E

R

Y

N

A

M

E
Ftypebox (O)typebox (R) ────┬── typebox (D)typebox (T)typebox (R) ─────────┬─────────────────────────┤ │ └─> typebox (D)typebox (A)typebox (T)typebox (A)typebox (T)typebox (R)typebox (I)typebox (E)typebox (V)typebox (E) ──┘ │ ├─> 
D

E

F

A

U

L

T

V

A

L

U

E
Ftypebox (O)typebox (R) ─┬─> typebox (D)typebox (T)typebox (R) ─────────┬─> typebox (I)typebox (S) ─┬> fxd-pnt-num ────┬─┤ │ └─> typebox (D)typebox (A)typebox (T)typebox (A)typebox (T)typebox (R)typebox (I)typebox (E)typebox (V)typebox (E) ──┘ └> quoted-string ──┘ │ ├─> 
N

O

D

E

F

A

U

L

T

V

A

L

U

E
Ftypebox (O)typebox (R) ─┬─> typebox (D)typebox (T)typebox (R) ─────────┬─────────────────────────┤ │ └─> typebox (D)typebox (A)typebox (T)typebox (A)typebox (T)typebox (R)typebox (I)typebox (E)typebox (V)typebox (E) ──┘ │ ├─> 
E

D

I

T

S

T

R

I

N

G
Ftypebox (O)typebox (R) ───┬─> typebox (D)typebox (T)typebox (R) ─────────┬─> typebox (I)typebox (S) ──> quoted-string ────┤ │ └─> typebox (D)typebox (A)typebox (T)typebox (A)typebox (T)typebox (R)typebox (I)typebox (E)typebox (V)typebox (E) ──┘ │ └─> 
N

O

E

D

I

T

S

T

R

I

N

G
Ftypebox (O)typebox (R) ┬─> typebox (D)typebox (T)typebox (R) ─────────┬────────────────────────────┘ └─> typebox (D)typebox (A)typebox (T)typebox (A)typebox (T)typebox (R)typebox (I)typebox (E)typebox (V)typebox (E) ──┘ fxd-pnt-num The default value returned to DATATRIEVE when Rdb/VMS retrieves null values. A fixed-point number is a number that always includes a decimal point, even when there are no digits to the right of the decimal point. quoted-string A literal expression that Rdb/VMS returns to DATATRIEVE.

Examples

 Example 1

 The following example defines a field and specifies a DATATRIEVE edit
 string for that field:

 DEFINE FIELD  MIDDLE_INITIAL
         DATATYPE IS TEXT SIZE 1
         EDIT_STRING FOR DATATRIEVE IS 'X.'.

 The X represents any alphanumeric character.  When you access this
 field through DATATRIEVE, the field value is followed by a period.
 The DATATRIEVE documentation set contains a complete list of editing
 characters.


 Example 2

 The following example defines a DATATRIEVE query name for one field
 and a DATATRIEVE query header for another:

 DEFINE FIELD  STATE
         DATATYPE IS TEXT SIZE 2
         QUERY_NAME FOR DATATRIEVE IS "ST".
 DEFINE FIELD  SEX
         DATATYPE IS TEXT SIZE 1
         VALID IF SEX = 'M' OR SEX = 'F'
         QUERY_HEADER FOR DATATRIEVE IS "S"/"E"/"X".

 These statements define DATATRIEVE query names and query headers for
 the STATE and SEX fields.  The header for the SEX field will be one
 character wide, like the field itself.

Preprocessors

 Rdb/VMS preprocessors check and process Rdb/VMS statements in your
 program, converting the Rdb/VMS statements to host language calls to the
 database.  RDBPRE, the preprocessor for BASIC, COBOL, and FORTRAN,
 automatically invokes the necessary host language compiler for your
 program.  You must invoke the host language compiler after you preprocess
 a VAX C or VAX Pascal program with the RDML preprocessor.

Additional information available:

RDBPRERDBPASCALRDML

RDBPRE

 You can invoke RDBPRE with the Digital Command Language (DCL) RUN command;
 once in the RDBPRE environment, you can specify the programming language
 and the input file specification.  For example:

 $ RUN SYS$SYSTEM:RDBPRE
 INPUT FILE> MYPROG.RFO/FORTRAN

 A more convenient method is to define a symbol that invokes a particular
 preprocessor.  For example, if you frequently use the preprocessor with
 VAX FORTRAN data manipulation language (DML) programs:

 $ RFOR :== $RDBPRE/FORTRAN
 $ RFOR MYPROGRAM.RFO

RDBPASCAL

 The RDBPASCAL preprocessor is no longer available in Rdb/VMS V3.0.  Use
 the Relational Data Manipulation Language (RDML) preprocessor instead.
 For information about RDML, see the RDML Reference Manual and the online
 RDML Help file, accessible from DCL level.

RDML

 You can invoke the Relational Data Manipulation Language (RDML)
 preprocessor with the DCL RUN command.  For example:

 $ RUN SYS$SYSTEM:RDML
 _Source file: SAL_HISTORY.RC

 A more convenient method is to define symbols.  For example:

 $ RDMLC    :== $RDML/C
 $ RDMLPAS  :== $RDML/PASCAL
 $!
 $ RDMLC SAL_HISTORY.RC

 See the RDML Help module that is available from DCL level for details.

RDO Foreign Cmd

 You can invoke RDO as a foreign Digital Command Language (DCL) command.
 Example:

 $ RDO :== $RDO
 $ RDO CHANGE DATABASE FILE PERS JOURNAL FILE DSK1:[TOP]PS.AIJ

Additional information available:

More

More

 RDO as a foreign DCL command is useful in DCL command procedures because
 it lets you test the success or failure of the RDO DCL command line.  For
 example, after each DCL command, you can enter in your procedure:

 $ IF $SEVERITY .NES. "1" THEN GOTO HANDLE_ERROR

 The integer values for each DCL severity level are:

 Value           Severity

 0               Warning
 1               Success
 2               Error
 3               Information
 4               Severe (fatal) error

 The possible integer values returned by RDO are 1, 2, or 4.  The specific
 status codes returned by RDO are:

 SS$_NORMAL
 RDO-E-ERRDET, an error was detected
 RDO-F-SEVERRDET, a severe error was detected

 These are returned in DCL's $STATUS symbol.

 Users who currently invoke RDO as a foreign command will receive one of
 the above (as additional) messages if the RDO command fails.  See the VMS
 DCL Dictionary for more information about handling errors in DCL command
 procedures.

Release Notes

 The VAX Rdb/VMS Release Notes are in the following file:

      SYS$HELP:RDBVMSvvu.RELEASE_NOTES

                where   vv = version
                        u  = update

           For example:

      SYS$HELP:RDBVMS030.RELEASE_NOTES

Rel operators

 Permitted                  Relational Operation
 Symbols


 EQ  =                      True if the two value expressions are
                            equal.

 NE  <>                     True if the two value expressions are not
                            equal.

 GT  >                      True if the first value expression is
                            greater than the second.

 GE  >=                     True if the first value expression is
                            greater than or equal to the second.

 LT  <                      True if the first value expression is less
                            than the second.

 LE  <=                     True if the first value expression is less
                            than or equal to the second.

 BETWEEN                    True if the first value expression is
                            between the second and third or equal to
                            one of them.

 ANY                        True if the record stream specified by the
                            RSE includes at least one record. If you
                            add NOT, the condition is true if there are
                            no records in the record stream.

 MATCHING                   True if the second expression matches a
                            substring of the first value expression.
                            MATCHING uses these special characters:

                                 *  Matches any string
                                 %  Matches any character

 MISSING                    True if the value expression is null.

 UNIQUE                     True if the record stream specified by the
                            RSE includes only one record. If you add
                            NOT, the condition is true if there is more
                            than one record in the record stream or the
                            record stream is empty.

 CONTAINING                 True if the string specified by the second
                            string expression is found within the
                            string specified by the first. Not
                            case sensitive.

 STARTING WITH              True if the first characters of the first
                            string expression match the second string
                            expression. Case sensitive.

Segment str

 A special Rdb/VMS data type designed to handle large pieces of data
 with a segmented internal structure.  The maximum size of a string
 segment is 64K bytes.  Except for the length of the string's
 segments, Rdb/VMS does not know anything about the type of data
 contained in a segmented string.  In a segmented string, you can
 store large amounts of text, long strings of binary input from a data
 collecting device, or graphic data.  A program can then extract the
 data from the database and handle it in the appropriate way.

Additional information available:

More

More

 Because Rdb/VMS does not know what kind of data is contained in a
 segmented string, you cannot perform many of the standard data
 manipulation functions on it.  You cannot use logical operators, such
 as EQ and CONTAINING, to compare segmented strings.  Rdb/VMS does not
 perform any data type conversion on data that is transferred into or
 out of a segmented string.  You can use the MISSING operator on a
 segmented string field.

 Rdb/VMS defines a special name to refer to the segments of a
 segmented string.  This name is equivalent to a field name; it names
 the "fields" or segments of the string.  Furthermore, because
 segments can vary in length, Rdb/VMS also defines a name for the
 length of a segment.  You must use these names in the value
 expressions that you use to retrieve the length and value of a
 segment.  These names are:

     RDB$VALUE      The value stored in a segment of a segmented
                    string

     RDB$LENGTH     The length in bytes of a segment

 Because a single segmented string field value is made up of multiple
 segments, you must manipulate the segments one at a time.  Therefore,
 segmented string operations require an internal looping mechanism,
 much like the record stream set up by a FOR or START_STREAM
 statement.

Tech changes

 The V3.0 major new features and technical changes include:


  o  Multifile databases.  In V3.0, you can define storage area (RDA) files
     that contain user-stored data from one or multiple relations.  You can
     place these files on separate disks.  Rdb/VMS V3.0 can greatly reduce
     the disk I/O bottleneck that could occur in earlier releases and lets
     you create and use larger databases.  The DEFINE DATABASE statement
     reflects the multifile changes.

  o  The addition of storage maps.  You can now define storage maps to
     partition data over multiple relations.  See the new DEFINE STORAGE
     MAP, CHANGE STORAGE MAP, and DELETE STORAGE MAP statements.

  o  Two new statements, SHOW STORAGE AREAS and SHOW STORAGE MAPS.  These
     statements let you display information about these new multifile
     features.

  o  New record storage and access options, along with the multifile
     database feature.  You can define hashed indexes (in addition to the
     sorted, or B-tree, indexes used in earlier releases).  Hashed indexes
     provide direct access to a specific record but are not useful for
     range retrievals.  You can also create clustered indexes.  An index
     that is clustered causes records to be stored in the relation in
     approximately the same order in which they appear in the index.  These
     changes are reflected in the DEFINE INDEX and DEFINE STORAGE MAP
     statements.

  o  Support for VAX CDD/Plus V4.0.  This support lets you use shareable
     field and record definitions.  See the DEFINE FIELD and DEFINE
     RELATION statements.

  o  Enhancements to the INTEGRATE statement.  This statement now lets you
     copy metadata from the data dictionary into the database.

  o  Two new statements, RDO EXPORT and RDO IMPORT.  The RDO EXPORT
     statement replaces the existing RDO BACKUP statement, and the RDO
     IMPORT statement replaces the RDO RESTORE statement.  All new options
     will be added to the IMPORT and EXPORT statements.  The RESTORE and
     BACKUP statements are maintained for compatibility with applications
     that use previous versions of Rdb/VMS.  However, DIGITAL recommends
     the use of the IMPORT statement rather than the RESTORE statement, and
     the use of the EXPORT statement rather than the BACKUP statement.  You
     can use the EXPORT and IMPORT statements to restructure a single-file
     database into a multifile database.

  o  A new option in the RECOVER statement.  This option lets you speed the
     recovery process by specifying the number of database buffers and a
     new trace option to display details of the recovery process.

  o  The ability to specify the number of database buffers used during the
     automatic recovery process.  The NUMBER OF RECOVERY BUFFERS option has
     been added to the DEFINE DATABASE, CHANGE DATABASE, and IMPORT
     statements.

  o  After-image journal file performance enhancements.  On the CHANGE
     DATABASE statement, you can specify the amount of disk space initially
     allocated to the after-image journal file, and the size of after-image
     journal file extents.

  o  Enhancements to the CHANGE DATABASE statement.  You can now change
     more database characteristics than in previous versions of Rdb/VMS.

  o  A new PLACE statement.  This statements lets you determine the target
     page number for records that are to be loaded into the database.

  o  A new option on the SET statement.  This option lets you direct RDO
     not to execute data manipulation statements you issue in an
     interactive RDO session.  You can use this in conjunction with
     RDMS$DEBUG_FLAGS to display the access strategies and cost of
     executing a query, without actually executing the query.

  o  Two new statements, DECLARE_STREAM and a declared START_STREAM
     statement.  These statements let you have more flexibility in
     programming.

  o  New Rdb/VMS Management Utility (RMU) commands.

      o  RMU/ANALYZE

         Displays statistics on database space usage.

      o  RMU/ANALYZE/INDEXES

         Displays statistics on indexes.

      o  RMU/BACKUP database

         Performs a full or incremental backup of an Rdb/VMS database.

      o  RMU/BACKUP/AFTER_JOURNAL

         Truncates a database's current after-image journal (AIJ) file and
         creates a backup of the AIJ file.  This command replaces the RDO
         SPOOL command used in previous versions of Rdb/VMS.

      o  RMU/CONVERT

         Converts an existing database to a format compatible with a new
         version of Rdb/VMS.  This command replaces the RDO CONVERT
         statement used in previous versions of Rdb/VMS.

      o  RMU/DUMP/BACKUP

         Displays information about a file produced with RMU/BACKUP.

      o  RMU/RESTORE

         Restores a database to the condition it was in at the time of a
         full or incremental backup.

      o  RMU/VERIFY

         Checks and verifies the internal integrity of database data
         structures.



Value expr

 A symbol or string of symbols that you use to calculate a value.
 When you use a value expression in a statement, Rdb/VMS calculates
 the value associated with the expression and uses that value when
 executing the statement.  Any value expression can be enclosed in
 parentheses or preceded by a minus sign.

 You can get help on each of the following Rdb/VMS value expressions:

      Host_variable                 Arithmetic_expression
      Database_field                FIRST_FROM_expression
      Literal                       Concatenated_expression
      Statistical_expression        Database_key

Additional information available:

host variabledatabase fieldliteralstatistical expressionarithmetic expression
first fromconcatenated expressiondatabase key

host variable

 A host or substitution variable, used to communicate with a calling
 (host) program.  A host language program declares a host language
 variable and then assigns database values to it.  Host language
 variables are not used in RDO.

 You can also use host language variables as names to represent
 databases and database elements.  These names are called handles.

Additional information available:

database handletransaction handlerequest handle

database handle

 A variable name declared as a longword in a host language program.
 You can use the database handle in several statements and clauses to
 identify a database.

transaction handle

 A host language variable you associate with a transaction.  If you do
 not declare the transaction handle explicitly, Rdb/VMS attaches an
 internal identifier to the transaction.

 The ability to declare a transaction handle is provided for
 compatibility with other database products and future releases of VAX
 Rdb/VMS.

request handle

 A host language variable you associate with a compiled request.

database field

      --> context-var . field-name -->

 The name of a field in the database that consists of a context
 variable and a field name.  A context variable is a temporary name
 that you associate with a relation.  You define a context variable in
 a record selection expression.  For more information, request HELP on
 Context_var or RSE.

 For example:

     FOR E IN EMPLOYEES PRINT  E.LAST_NAME
         |        |           |            |
         |        |           +------+-----+
         |        |                  |
      context   relation          database
      variable   name               field

literal

 A character string or a numeric literal.  You can use a literal as a
 value expression.  For example:

     FOR E IN EMPLOYEES WITH E.LAST_NAME = "Toliver"
        PRINT E.EMPLOYEE_ID                 -------
     END_FOR                                   |
                                         string literal


     FOR S IN SALARY_HISTORY WITH S.SALARY_AMOUNT > 40000
        PRINT S.EMPLOYEE_ID                         -----
     END_FOR                                          |
                                               numeric literal

statistical expression

 Calculates a value based on a value expression for every record in a
 record stream.  When you use a statistical expression (except for
 COUNT), you specify a value expression and a record selection
 expression (RSE).  Rdb/VMS first evaluates the value expression for
 each record in the record stream formed by the RSE.  Then it
 calculates a single value based on all the results of the first step.

 For more information on value expressions and record selection
 expressions, ask for HELP on Value_expr and RSE.

Additional information available:

AVERAGECOUNTMAXMINTOTAL

Format

Format

 statistical-expr =

   ───────┬──> 
M

A

X
─────┬──> value-expr ──┬──> 
O

F
──> rse ──> ├──> 
M

I

N
─────┤ │ ├──> 
T

O

T

A

L
───┤ │ ├──> 
A

V

E

R

A

G

E
─┘ │ └──> 
C

O

U

N

T
─────────────────────┘

AVERAGE

 --> AVERAGE --> value-expr --> OF --> rse -->

 Display the average salary of all the employees whose salaries exceed
 $50,000:

 PRINT  AVERAGE CS.SALARY_AMOUNT OF
         CS IN CURRENT_SALARY WITH
          CS.SALARY_AMOUNT GT 50000

COUNT

 --> COUNT --> OF --> rse -->

 The following COBOL code fragment finds out the number of employees
 who live in a particular state, specified by the host language
 variable STATE:

         ACCEPT STATE.
 &RDB&   GET STATE-COUNT = COUNT OF E IN EMPLOYEES
 &RDB&            WITH E.STATE = STATE
 &RDB&   END_GET
         DISPLAY "Number of employees in ", STATE, " is ",
             STATE-COUNT.

MAX

 --> MAX --> value-expr --> OF --> rse -->

 Find the highest paid employee in the company:

 START_TRANSACTION READ_ONLY

 FOR SAL IN CURRENT_SALARY WITH SAL.SALARY_AMOUNT =
     MAX CURR.SALARY_AMOUNT OF
         CURR IN CURRENT_SALARY
 PRINT SAL.EMPLOYEE_ID,
       SAL.LAST_NAME,
       SAL.SALARY_AMOUNT
 END_FOR

 COMMIT

MIN

 --> MIN --> value-expr --> OF --> rse -->

 Find the job title with the smallest minimum salary:

 FOR J IN JOBS WITH J.MINIMUM_SALARY =
       MIN JM.MINIMUM_SALARY OF JM IN JOBS
 PRINT J.JOB_TITLE,
       J.MINIMUM_SALARY
 END_FOR

TOTAL

 --> TOTAL --> value-expr --> OF --> rse -->

 Assign the total payroll for the company to a host language variable:

 &RDB&   START_TRANSACTION READ_ONLY
 &RDB&       GET TOTAL-SALARY = TOTAL CH.SALARY_AMOUNT
 &RDB&            OF CH IN CURRENT_SALARY
 &RDB&   END_GET
 &RDB&   COMMIT

arithmetic expression

 An arithmetic expression combines arithmetic operators with:  numeric
 values, numeric host language variables, and/or numeric database
 fields.  When you use an arithmetic expression in a statement,
 Rdb/VMS calculates the value associated with the expression and uses
 that value when executing the statement.  Therefore, an arithmetic
 expression must be reducible to a value.  If either operand of an
 arithmetic expression is a null value, the resulting value is also
 null.

 arith-expr =

 ─┬─> numeric-value    ─┬──┬──> typebox (+) ──┬──┬─> numeric-value    ─┬───>
  ├─> numeric-host-var ─┤  ├──> - ──┤  ├─> numeric-host-var ─┤
  └─> numeric-db-field ─┘  ├──> typebox (*) ──┤  └─> numeric-db-field ─┘
                           └──> typebox (/) ──┘

first from

 The FIRST FROM expression works in two steps:

  o  It forms the record stream as specified by the record selection
     expression.

  o  If at least one record matches the RSE, Rdb/VMS uses the values
     stored in the first record of the record stream to evaluate the
     value expression.


 Format

 first-from-expr

   ───> 
F

I

R

S

T
───> value-expr ───> 
F

R

O

M
───> rse ───>

concatenated expression

 A value expression that combines two other value expressions by
 joining the second to the end of the first.  Concatenated expressions
 uses the concatenate operator (|).  You can combine value expressions
 of any kind, including numeric expressions, string expressions, and
 literals.

 You can use concatenated expressions to simulate group fields and
 edit strings.

 Format

 concat-expr =

   ───> value-expr ───>  |  ───> value-expr ───>

Additional information available:

Examples

Examples

 Example 1

 Use a concatenated expression as a field in a view:

 DEFINE VIEW MAIL OF
  E IN EMPLOYEES.
   NAME COMPUTED BY
     E.FIRST_NAME | ' ' | E.MIDDLE_INITIAL | ' ' | E.LAST_NAME.
   E.ADDRESS_DATA_1.
   E.CITY.
   E.POSTAL_CODE.
 END MAIL VIEW.

 This statement creates a field for the view by combining the three
 name fields from the EMPLOYEES relation.


 Example 2

 Use a concatenated expression to simulate an edit string:

 DEFINE VIEW BUCKS OF S IN SALARY_HISTORY.
    EMPLOYEE_ID.
    SALARY_START.
    SALARY_END.
    SAL COMPUTED BY "$"|S.SALARY_AMOUNT.
 END.


 When you display the fields of BUCKS, a dollar sign appears in front
 of the salary amount.

database key

 A pointer that indicates a specific record in the database.  You can
 use the database key to retrieve a record in a FETCH statement or in
 a record selection expression.  Database keys are intended primarily
 for use in host language programs.

 db-key =

   ───> context-var ──> . ───> 
R

D

B

$

D

B

K

E

Y
───>

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026