MDBS_Application_Programming_Ref_Dec1985 MDBS Application Programming Ref Dec1985

MDBS_Application_Programming_Ref_Dec1985 MDBS_Application_Programming_Ref_Dec1985

User Manual: MDBS_Application_Programming_Ref_Dec1985

Open the PDF directly: View PDF PDF.
Page Count: 193 [warning: Documents this large are best viewed by clicking the View PDF Link!]

MDBS APPLICATION PROGRAMMING REFERENCE MANUAL -
The MDBS DMS MANUAL
Version 3.08
Micro Data Base Systems, Inc.
P. O. Box 248
Lafayette, Indiana 47902
USA
Telex: 209147 ISE UR
(312) 303-6300 (in Illinois)
December 1985
Copyright Notice
This entire manual is provided for the use of the customer and the customer 's
employees .The entire contents have been copyrighted by Micro Data Base Systems,
Inc .,and reproduction by any means is prohibited except as permitted in awritten
agreement with Micro Data Base Systems, Inc.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A
3250332
NEW RELEASES, VERSIONS, AND AWARNING
Any programming endeavor of the magnitude of the MDBS software will
necessarily continue to evolve over time. ReaHzing this, Micro Data "
Base Systems, Inc., vows to provide its users with updates to this
version for anominal handling fee.
New versions of MDBS software will be considered as separate products.
However, bona fide owners of previous versions are generally entitled
to apreferential rate structure.
Finally, each copy of our software is personalized to identify the
licensee. There are several levels of this personalization,' some of
which involve encryption methods guaranteed to be combinatorially
difficult to decipher. Our products have been produced with avery
substantial investment of capital and labor, to say nothing of the
years of prior involvement in the data base management area by our
principals. Accordingly, we are seriously concerned about any
unauthorized copying of our products and will take any and all
available legal action against illegal copying or distribution of our
products.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL MDBS DMS MANUAL
PREFACE
By the miá-1960s, application developers were well aware of the
data handling limitations of programming languages and file management _
systems. To overcome these limitations, data base management systems
began to appear. By 1971, four major approaches to data base
management had taken shape: the hierarchical, shallow-network,
relational, and CODASYL-network approaches to logical data structuring
and manipulation. Each represented an advance over the old file-
oriented data handling methods and the latter two approaches offered
advances over the former two. By the mid-1970s, data base management
software was well established as the cornerstone for application
development on mainframes and some mini computers.
Near the end of the decade, microcomputers -- with their
phenomenal computing power on aper dollar basis -- began to
proliferate. The acceptance of mainframe data base management systems
coupled with the rise of microcomputers led to the formation of Micro
Data Base Systems Incorporated by agroup with expertise in both
areas. The initial objective was to make qenl1ine data base management
tools available in the micro realm. This objective was fulfilled in
1979 with the release of MDBS I-- the first authentic and viable data
base management system (dbms) for microcomputers. Over the years,
this has evolved into the present MDBS III which operates not only on
many microcomputers but on larger machines as well. The evolution of
MDBS III is highlighted with many firsts: first micro dbms with
built-in logging and recovery, first full implementation of a
postrelational dbms, first multiuser micro dbms, first dbms to run
under PCDOS, MSDOS and UNIX.
Today, MDBS III offers professional application developers a
degree of power and flexibility unavailable with any other data base
management software -- be it on micros, minis or mainframes. This is
partially due to the highly efficient, proprietary implementation
techniques. MDBS III is not amainframe retread shoehorned into a
microcomputer. It is also due to the innovative data modeling
features that MDBS III provides. Because these features go far beyond
those of the older data base management approaches, MDBS III is
variously referred to as postrelational or multiarchical or extended-
network. The emphasis in this approach to data base management is on
direct, natural representation of the application world. The result
is atremendous increase in developer productivity. As stated in the
authoritative DApt'ÁhÁqe -r.he 7"Ñí generÁr.ic)n· qtAfe of fjie Arr. pepc)rt.
(ed., D. j. L. Gradwell, Pergamon press, Oxford, England, 1982):
"The data modelling capability of MDBS III is superior to any
other commercially available DBMS." MDBS III is "... aproduct
that is, in many ways, ahead of mainframe DBMSs." (D. j. L.
gradwell)
All of this translates into convenience for application system
developers and administrators.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A
mdbs dms manual mdbs Dl4S manual
The MDBS R&D Lab's expertise in the areas of decision support
systems and artificial intelligence has resulteá in two unique
environments for processing MDBS III data bases. One is adecision
support environment called Kmwledgeí·iam It functions as auniversal
knowledge management system, allowing users to represent and process
knowledge in many different ways -- including spreadsheets, text,
graphics, forms, procedural models, relational data bases, and -
postrelational MDBS III data bases. The second is arevolutionary
artificial intelligence environment called Guru. It wakes the
benefits of both expert system technology and natural language
processing easily accessible to business users, without sacrificing
familiar business computing capabilities. FIDBS III data base contents
are directly accessible within the Guru environment.
This manual provides details on the features and utilization of
the l<DElS Data fianipulation Language. Companion manuals discuss the
I·1DBS Data Description Language and various optional modules. This
manual is not intended to be atutorial. For atutorial treatment of
data base management (including it smany advantages over flle
management), the reader is advised to consult such suitable references
as:
l. i'iicrQ nAt'AhAse l'1AnAqpmenr, -pra'w im'íl Tpchniq\Íes Mr t\pp1 i-
c(qt.ion Dpve1Apm.enr by r. H. Bonczek, et. al, 53CC pages,
Academic Press, New York, 1984.
2. "A Perspective on Data Models," pc Tech jc)l1rnÁ1 Pvol. 2, No.
l, 1984.
3."Fiicros Get Mainframe Data Scheme," sY5r.elAs Áñá 8oftwa.rp,!
Vol. 3, No. 5, 1984.
4."Uniting Relational and Postrelational Database bianagenent
Tools," sYsrems arrí ,qoftware,, Vol. 3, No. li, 1984.
The first reference provides the most definitive coverage to date of
the postrelational approach, comparing and contrasting it with the
four oláer data base management approaches. That book also includes
extensive examples of !·ÍDI3S III usage. It is available through your
local bookstore, from the publisher, or from Í4DBS, Inc. For many
years, the Company has offered practical I'ÍDBS III training seminars in
major cities and at customer sites.
Rev .85A (C) COPYRIGHT 1981 i·licro Data Base Systems, Inc.
»
MDBS DEIS MANUAL MDBS DMS MANUAL
The I'IDBS, Inc. commitment to customer success does not stop with
software innovation, quality and support. The Company offers afull
range of consulting and application development services to clients
through its regional offices in the Dallas its regional Chicago and
New York areas. Services include:
l. Customized application systems design
2.Customized application systems development using Guru,
Knowledgeí·lan and/or the MDBS III tools
3.Communications interfaces including mainf rame-wicro links
4.Special training on awide variety of topics including
specific application systems, Cprogramming, HDBS III usage,
and Guru usage
5.General consulting including feasibility studies and
hardware/software recommendations
The experienced, professional staff handles consulting and application
development needs of some of the world's largest corporations and
governments. It has developed very extensive micro application
systems in such diverse areas as cash management, strategic planning,
human resources administration, waste disposal management, and
distributed service support. In many cases, these application systems
have involved multiuser processing or mainframe-micro links.
(C) COPYRIGHT 1981 blicro Data Base Systems, Inc. Rev .85A
.
MDBS DMS MANUAL MDBS DEIS MANUAL
Table of Contents
PREFACE
CHAPTER I. OVERVIEW .. . . . . . . . . . . . ........ l
A. Organization ...... . . . . . . . . . ....... l-
b. The Role of DRIL in Application Development ...... . l
CHAPTER II. GENERAL BACKGROUND ... . ...... . . . 3
A. Data Transferral . . . . . .. . . ......... . . 3
B.Currency Indicators. ..... . .. . . . . . . . . . . 3
C.Classes of D!4L Commands. . . . . . . . . . ..... . . 5
D.Stating aDML Command. . . . . . . . . . . . .. . . . . 5
E.l·lultiuser Environment. . . . . . . . . . . . . . . ... 8
F.Protecting Data Base Consistency against
External Factors. . . . . . . . . . . . . . . . . . . 9
CHAPTER III. FIND COMMANDS ......... . ..... . li
A.Overv iew . . . . . . . . . . . . . . . . . . . . . . . . li
B.Comnaaná Details .. . . . . . . . . . . . . .. . ... . 12
CHAPTER IV. RETRIEVAL COMMANDS . . . . . . . . . . . . .29
A. Overview . . . . . . . .. . . . . . . . . . ......29
B. Command Details. ....... . . . . . . .... . . . 3 O
CHAPTER V. MODIFY COMMANDS . . . . . ......... . 33
a. Overview .. . . .... . . . . . . . . . . . . . . . . 3 3
B. Command Details. . . . . . . . . ....... . . . . . 34
CHAPTER VI. ASSIGNMENT COMMANDS ...... . . . . . . 39
a. Overview . . . . . . . . . . . . . . . . . . . . . .. . 3 9
B. Command Details. . . . . . . ..............40
CHAPTER VII. CREATION COMMANDS . . . . . . . . . . . . .53
A.Overv iew ... . . . . . ..... . . . . . . . . . . . 53
B.Comrtíand Details. ...... . . . . . ......... 54
CHAPTER VIII. CONNECT COMMANDS ............. 57
A.Overview . . ........ . . . . . . . . . . ....57
B.Command Details . . . . . . . .D............57
CHAPTER IX. DISCONNECT COMMANDS . . ... . . . . . . . 59
A. Overview . . ...................... 59
El .Command Details. ........ . . . . . . . . . . . . 59
CHAPTER X. DELETION COMMANDS . . . ... . . ......63
a. Overview . . . . .... . . . ............ . 63
B. Command Details. .... . . . . . . . . . . ......63
CHAPTER XI. UTILITY COMMANDS ........ . . . . . . . 67
A. Overv iew . . ......... . . . . . . . . . . . . .67
B.Command Details. .... . . .......... . . . . 67
CHAPTER XII. BOOLEAN COMMANDS ... . . . . . . . . . .81
A.Overview . . . . ... . . . . . . ....... . . . .81
B.Command Details. . . . . . . . . . . . . . . . . . . . .82
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A i
6
MDBS DMS MANUAL 14DBS DEIS MANUAL
Ea=
CHAPTER XIII. SPECIAL COMMANDS .. . . . ...... . . . 89
A. Overview ................... . . ... 89
B. Commaná Details. . . .. . . . . . . . .. . . . . . . . 89
CHAPTER XIV. MULTIUSER LOCKING COMMANDS . . . . . . .93
A. Overview .O. . . . ........... . . . . . . . 93
B. Command Details. ... . . . . . . ........... 95
CHAPTER XV. RECOVERY COMMANDS . . ...... . . . . . lOl
A. Overview . . . . . . ..................101
B. Command Details. . . . . . . . . . . . . .. . . . . . . 102
CHAPTER XVI. COMMAND STATUS DESCRIPTIONS ... . . . . 107
a. Overview . . . . . . . .................107
B. Command Status Details . . . . . . . . . . . . . . . . . 107
TABLE XIV"1: tiultiuser Locking Contention Protocols. ... . . . 94
APPENDIX A. . . .................. . . . . . A-l
APPENDIX B. . . . . . . . ...........T. . . . . . B-l
COMMAND INDEX .......................CI-l
GENERAL INDEX .. . .. . . . . . . . . . . . . . . . . . ..GI-l
ii Rev. 85A (C) COPYRIGHT 1981 Ezicro Data Base Systems, Inc.
MDBS DMS MANUAL MDBS DMS MANUAL
COMMAND CLASSIFICATIONS
ÉácLQ
ASSIGNMENT COMMANDS
SCD (Set Current oft run unit to Data base key). . . . . . 40.1
SCM (8et Current of run unit based on MeInber) . . . . . . 40.1 -
SCN (Set Current of run unit to ]$[ull) .... . . . . . .40.2
seo (8et Current of run unit based on Qwner). . . . . . . 40.2
SCU (Set Current of run unit based on user indicator) . . .41
SDC (Save Qata base key for Qirrent of run unit). ... . .41
SMC (Set Member based on Cwxent of run unit) ... . ...42
SME (Set Member to current of run unit (£xception)) .. . .43
SMM (Set ELe1Tber based on Member). .... . . . ......43
spin (,aet Member to fiull). . . . . .............44
SMO (Set Member based on Qwner) ............ . .44
SMU (Set Member based on Eser indicator). . . . . ... . .45
SOC (Set Qwner based on Current of run unit). . . ... . .46
SOE (£et Qwner to current of run unit (Exception)). ....46
SOM (Set Qwner based on Member) .. . ...... . . ...47
SON (Set Qwner to Elull) .... . . . ...........47
SOO (Set Qwner based on Qwner). .. . . . . . . . ... . . 48
SOU (8et Qwner based on lZser indicator) .. . ... . . . .49
sue (Set user indicator to Current of run unit) .. . ...49
SUM (Set ¶ser indicator to E!ember). ...... . .....50
SUN (áet Aser indicator to HUD. .. . .... . . . ...50
SUO (Set LLser indicator to Qwner) ....... . . . . . .51
SUU (Set Rser indicator to user indicator). ........52
BOOLEAN COMMANDS
AÑM (Añd of Members with Members) . . ..... . . . . . . 82
AMO (AM of Members with Qwners). . . ..... . . . . . . 83
AOM (And of Qwners with Members). .. . . . . . ... . . . 83
AOO (And of Qwners with Qwners) ............ . . 84
XMM (eXclude Wembers from Members). .......... . . 85
XMO (eXclude Members from Qwners) .............86
XOM (eXclude Qwners from MeInbers) . . ...... . ....87
XOO (eXclude Qwners from Qwners). . . ... . . . . . . . . 88
CONNECT COMMANDS
IMS (Lnsert Uember into 8et). ...............57
lOS (Lnsert Qwner into Set) . . ....... . ..... . 58
CREATION COMMANDS
CRA (Cxeate Becord in Area) ................54
CRS Greate Eecord and 8tore) ... . . . .........55
(C) COPYRIGHT 1981 Micro jjata Base Systems, Inc. Rev. 85A iii
MDBS DMS MANUAL !4DBS Dl4S MANUAL
DELETION COMMANDS
DRC (Qelete Record that is Current) . . . .. . . .....63
DRE! (IZelete Record that is Member) . . . . . . . . . . . ..64
DRO Qelete Eecord that is Qwner) ...... . ..... . 65 "
DISCONNECT COMMANDS
RMS (Bemove fiember froríi Set) .. . ... . . ........59
ROS (Bemove Qwner from Set) . . . . . . . . . . .. . ...60
RSÉ4 (EeInove all Bet MeInbers) . . . . . . ..........60
RSO (Bemve all Set Qwners) ................61
FIND COMMANDS
FDRK (Eind Quplicate Record based on calc Key) .......12
ffm (Eind Urst Member) . . . . . . . . . . . . .. . . ..13
FEO (Eind Eirst Qwner) . . . . . . . . . . . . . . . . . . . 14
FPS (Eirúí Eirst aequential record) . . . . . . ... . . @.14
FLÍ'Í (Eind j¿ást Member) .0.O0 0 e . . © O ..e. . G © .15
FLO (EiM Last Qwner) ..* 0 0 ....e G ..e.0 C G .15
FÉ4I (Eind j',ember based on data ítem) . . ©...G. . . O.16
F81SK (Eind Kerber based on Sort [[ey) . . . . . . . . . . . .17
FN!·1 (Eind Eext L1enber) .. . . . . . . . .... . . . ...18
FNI'.II (Eind Next áember based on data Ltem) .........19
FNFISK (Einá 4ext l1elTber based on Sort Key) . . . . . . . . . . 19
fno (Eiñd Next Qwner) ...................20
FNOI (Eind Next Qwner based on data ítem) 0.........21
FNOSK (EiU Eext Qwner based on ,áort Key) ..... . . . . . 22
FNS (Eind Eext ,aequential record) .............23
FOl (Einá Qwner based on data Ltem) ............24
FOSK (Eind Qwner based on Sort U}') ... . . . . . . . . . . 25
FPt.l (EÁnd Etüor Member) .......... . O... . . . 26
FPMI (Eind 2rior Éáerrlber based on data Ltera) . . . . . . . . . 26
F!¥1SK (Eind 2rior Llember based on Sort %ey) . . ..... . .27
FPO (Eiñd 2rior Qwner) . . . . . . . . . . . .0. . . . . . 28
FPOI (Einá Erior Qwner based on data Lten'.) .. . . . ...28.1
FPOSK (Eind Erior Qwner based on Sort Key). ........28.2
frk (Eiñd Record based on calc Key) . . ..... . . . . 28.3
MODIFY COMMANDS
PFC (2ut data into Ueicí of Current of run unit) ......34
pF!q (Eut data into Eield of Member) ....... . . . . . 34
PEO (Eut data into EidLd of Qwner) .............35
PUTC (EñT data into Current of run unit) ... . ... . . . 35
PUTI·1 (= data into KeTaber) .. . . . . . . .........36
PUTO (E9T data into Qwner) . . . . . . . . .........37
iv Rev. 85A (C) COPYRIGET 1981 l'licro Data Base Systems, Inc.
MDBS DMS MANUAL MDBS DMS MANUAL
MULTIUSER LOCKING
MAU (Multiuser Active Qser indicators) ...........95
MCC (Mültiuser Gontention Count). . . . . . . . . . . . ..96
MCF (Multiuser >rrent of run unit Eree) .... . . . ...96 "
MCP (Múltiuser >rrent of run unit Erotect). .... . . . .97
MRTF (Multiuser Becord Type Eree). ... . . . . . . ....98
MRTP (Multiuser Eecord jype Erotect) ............98
MSF (Multiuser Set Eree). . . . . . . . . . . . . .... . 99
MSP (Mültiuser Set Erotect) .. . ...... . ......99
RECOVERY COMMANDS
LGCPLX (LoG start of ComELeX transactions) . . . . . . . . . .105
LGENDX (LoG ENCL compleá transactions). ... . ... . ....106
LGFILE (LoG EILE specification). . . ...... . . .....102
LGFLSH (LoG file buffer El,úSH) ....... . ........103
lgmsg (LoG UJ& ]y[eSsage). . . ...... . .. . ......103
PIFD (EXe-Lmage Eile Declaration). . . ...........104
TRABT (TEansaction AEoRT) .. . . . . . . . .........104
TRBGN (=ansaction BeGiN) . . . . . . . .. . ........105
TRCOE4 (=ransaction CQélmit) ... . ...... . ......106
RETRIEVAL COMMANDS
GETC (GET data from Current of run unit) . . ... . ....30
GETM (GEE data from Member). .... . .. . . . ......30
GETO (GET data from Qwner) . . . . ... . ...... . ..31
GFC (Get Eield from Current of run unit). ...... . ..31
GFM (Get Uekí from Member) ............. . . . 32
GFO (Get Eield from Qwner). ............ . ...32
ODRK (Qbtain Duplicate Record based on calc Key) . . . . . 32.1
OF'M (Qbtain Eirst Me1nber) . . . . . . . . ..... . ..32.2
OFO (Qbtain Urst Qwner). ..... . .... . .. . . . 32.3
OLM (Qbtain j,ast Member). . . . . . . . . . . . . . . . . 32.4
OLO (Qbtain Last Qwner) ............. . .. . 32.5
OMI (Qbtain Member based on data ftem). ..... . .. . 32.6
OMSK (Qbtain Member based on Sort Key) ...... . ...32.7
ONM (Qbtain Next fjember). .. . .. . .... . .. . . . 32.8
ONMI (Qbtain Next MeInber based on data Ltem) .......32.9
ONMSK (Qbtain Next E1elnber based on 8ort Key). . . .....32.10
ONO (Qbtain Next Qwner) .. . . .. . ...... . ...32.11
ONOI (Qbtain Next Qwner based on data ítem). .... . ..32.12
ONOSK (Qbtain Next Qwner based on Sort Key) ........32.13
OOI (Qbtain Qwner based on data ítem) . . . . . .. . . .32.14
OOSK (Qbtain Qwner based on 8ort Key). ..........32.15
OPM (Obtain Erior Member) . . .. . . ....... . . .32.16
OPPII (Qbtain 2Uor Member based on data Ltem). ......32.17
OPMSK (Qbtain 2rior MeTnber based on 8ort Key) . . . . ...32.18
OPO (Qbtain 2Uor Qwner). ... . . ...........32.19
OPOI (Qbtain 12rior Qwner based on data Lteni) . . . . ...32.20
OPOSK (Qbtain Erior Qwner based on Sort Key). . . . . ...32.21
ORK (Qbtain Eecord based on calc Key) . . . .......32.22
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A v
MDBS DMS MANUAL MDBS DMS MANUAL
SPECIAL COMMANDS
ALTEOS (ÁLíTer Eñd Qfi ,aet). ..................89
dbinit (IZata Base control system INITialization) .. . . . . . 90
DBSEL (Qata 2ase SEl,ection) .................90
DEFINE (PFFTNF data block) . . . . . . ...........90.1
DMSSJP (wis Set JimE). ...................90.2
EXTEND (FYTFNP data block) . . . . . . . . . . . . . . . . .90.2
MPL (Mu1tiuser Eriority j,evel). ......... . ....91
SETPBF (SEE Eage BuEfer region). . . . . ...........92
undef (TjNr)EFine data blocks). .. . . . ...........92
varcs (miable for Command átatus) ............92.1
UTILITY COMMANDS
AUI (Allocate Aser Lndicators). ....... . . . ....67
CCU (Check Qirrent of run unit against Yser indicator). . . 68
DBCLS (Oata Base CCLoáe) ...................69
DBCLSA (Oata Base CL,oáe for Area). . . . . . . . . .. . . . . 70
DBCNV (pata Rase format CoNyersion) .............70
DBENV (Qata Base ENYironment) ...............70.1
dbopn (Oata j3,ase QEeN). ... . . .B. . . . . . . . . O.71
DBOPNA (Oata Base QEeli Áxea) .. . . . ........ . .. . 72
DBSAVE (Oata E,ase .. . . . . . . . . . .........73
DBSTAT (Oata Base .................74
GMC (Get fjember Count). ...... . . . . . . . . . ...75
GOC (Get Qwner Count) . . .................75
GTC (Get Type of >rrent of run unit) ...........76
GTM (Get Type of fjember). . . . . . . .........·. .76
GTO (Get Type of Qwner) . . . . . . . . . . ........77
NCI (Null all >rrency Lñdicators). ........... . 77
TCN (Tfst Current of run unit for Eiull) ..........78
TCT (Fest Current of run unit Type) .......... . . 78
TMN (Test Member for NUI). .............. . 78.1
TMT (Tést Member Type). . . . . G.............78
TON (Tést Qwner for tiull) .. . .... . . . ......78.2
TOT (Tést Qwner rype) . . . . . . . . . .... . . . . . 78.2
TUN (Test Yser indicator for NullA ........... . 79
vi Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL MDBS DMS MANUAL
I. OVERVIEW
a. Organization
This is the MDBS DMS Manual. It is the second component in the "
set of MDBS Reference Manuals and assumes the reader is familiar with
data description facilities presented in the MDBS DDL Manual. This
document describes the MDBS III Data Manipulation Language (DML) and
the effect that each DML command has on the behavior of the data base
control system (MDBS.DMS). The MDBS DMS Manual is written on two
levels: fundamental manipulation features and advanced manipulation
features. An understanding of the fundamentals is sufficient for
developing useful application systems. The advanced features are
denoted by avertical bar in the outsiáe margin. These are perhaps
less frequently needed, but they are valuable for certain special
kinds of data manipulation.
The documentation in this manual is applicable to both versions
3a and 3c. Appendix Adescribes those data manipulation features that
are applicable only to Version 3a. It is also independent of the host
language(s) selected to interface with mdbs.dms. Host language-
dependent aspects of the interface are described in appropriate MDBS
System Specific Manuals.
Tlíe remainder of this chapter outlines the role of MDBS.DMS
software and its associated Data Manipulation Language (DML), in
application development. Chapter II provides the detailed background
that is necessary to effectively use the MDBS Data Manipulation
Language. Each of Chapters III through XV documents aclass of DML
commands. The individual commands in each class are presented
alphabetically and the function of each command is described. When a
DML command is executed, MDBS.DMS reports on the status of that
command's execution. Each possible command status is explained in
Chapter XVI.
b. The Role of DML in Application Development
The MDBS Data Manipulation Language consists of agroup of
commands, each of which performs some data manipulation task. ADML
command is stated within an application program. The programming
language used to write an application program is called the hzak
1(Ínql1(aqe. aDML command is typically invoked as afunction in the
host language. when aDML command is given, the MDBS.DMS software
carries out the actual data manipulation. This could involve storing
data from ahost program variable into the data base. Conversely, it
could involve extracting data from the data base and depositing it in
ahost language variable. Many other kinds of data manipulation are
supported. In effect, the DML extends the data handling capability of
aprogramming language, so that programs can utilize MDBS data bases
in addition to traditional files.
Usage of the MDBS DML in developing an application program
depends QIÜY upon aknowledge of the data base's logical structure.
The application programmer need not be concerned with using pointers,
searching indices, disk I/O, file handling, free space management,
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A l
MDBS.DMS MANUAL -I: OVERVIEI·I -IQJBS.DMS MANUAL
etc. All of these factors are automatically handled by the I'IDBS.DE1S
software. Furthermore, all data manipulation occurs subject to the
security and integrity constraints defined in adata base's DDL
specif ication. In amultiuser environment, MDBS.DMS manages record
lockout to prevent such problems as one user attempting to modify a
record that another user is reading. Special DÍ4L commands are -
available to the application programmer who (beyond the standard
passive lockouts) desires to actively lock out records, record types[
or sets.
Adata manipulation language provides aprocedural approach to
data manipulation. It can therefore be contrasted with aquery
language, which provides anonprocedural approach to data
manipulation. From the standpoint of achieving the highest
performance for application software, using aDML is inevitably
superior to using anonprocedural query language. On the other hand,
the application developer who is not experienced in using DEIL can very
likely achieve more rapid development by using anonprocedural query
language (at the expense of asacrifice in perll'-Xmance). In data base
management systems that do not support both aDI4L and aquery
language, the application developer has no choice. Both kinds of
languages are available with FIDBS. It is recommended that the query
lanquage (see the MDBS QRS Manual) be used in situations where the
need flor rapid development outweighs the need for optimal perforr.íance.
If optimal performance is the overriáing consideration, then the MDEIS
DML is most appropriate. In addition to QRS, there are other optional
access modules including IDML, IBS, RDL and BLF.
Although the MDBS DML makes many commands available, it is
typically the case that an application developer will need to use only
afew kinds of DML commands in any given application program. Across
all application programs, there is asmall group of about adozen DML
commands that tend to be heavily used. Varying degrees of selective
MDBS.DL4S linking are permitted, depending on the host language used
(see MDBS System Specific Manuals for details). In other words, only
that part of 14DBS.DI4S that is needed to execute an application
program's DFIL commands is held in main meiaoryú Since the entire
!4DBS.DMS software is not in main memory, there is more memory
available for alarger appliCation program or alarger page buffer
region.
One component of FIDBS.DMS performs virtual buffer paging, based
on an enhanced least-recently-used page replacement algorithm. When a
DML command is executed, MDBS.DMS determines whether images of all
needed pages are in main memory. If needed pages are not resident,
!4DEIS.DMS has them read into main memory. Tíie larger the page buffer
region in main memory, the more likely it is that needed pages are
resident and the Faster the processing will be. Thus it is important
for the application developer to allow as large apage buffer region
as possible. In asingle-user environment, the page buffer region
size is directly assigned by the programmer. In amultiuser
environment, EÍDBS.DPIS determines the size of the page buffer region
that isshared by all users (i.e .,simultaneously executing
application programs) .
2Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL MDBS DMS MANUAL
II. GENERALBACKGROUND
A. Data Transfer
Some DML commands pass data from ahost language variable into
the data base. Others retrieve data from the data base into ahost
language variable, from which the data can then be used for
computation or program output. There are two basic approaches for
allowing MDBS.DMS to accomplish the data transferral between adata
base and an application program. The approach used depends on the
nature of the host programming language. Non-record-oriented
languages (such as BASIC) require the data block approach. Host
languages with afacility for defining program record types (e.g.r
COBOL, PL/l, PASCAL) use the program record type approach. Füll
details of the approach used for aparticular host language appear in
the MDBS System Specific Manual for that host language.
l. Rata ElQgks. Adata block is anamed sequence of one or
more host language variables. MDBS DML commands exist to
define, extend, and undefine data blocks (see Chapter XIII).
agiven host language variable can participate in many data
blocks. A DML command to put data into adata base has a
data block name as one of its arguments. The value(s) of
the host language variable(s) for that data block is(are)
put into the data base. ADMLcommandto retrieve data from
adata base has adata block name as one of its arguments.
The retrieved value(s) becomes the new value(s) for the data
block's host language variable(s).
2. elq9lmd BegQrg Typq,s. Aprogram record type plays the same
role as adata block. It is anamed sequence of one or more
host language variables. It is not defined with DML
commands, but is specified with the host language's facility
for defining program record types (for example, aDl level
entry in aCOBOL working storage section, or arecord
structure of Cor PASCAL). Agiven host language variable
usually cannot participate in more than one program record
type. ADML command to put data into adata base has a
program record type name as one of its arguments. The
value(s) of the host language variable(s) for that program
record type is(are) put into the data base. A DML commaná
to retrieve data from adata base has aprogram record type
name as one of its arguments. The retrieved value(s)
becomes the new value(s) of the program record type's host
language variable(s).
B. Currency Indicators
Cjjll£1jgy iÁÁicátQts are used by an application programmer to keep
track of which record occurrences in adata base are currently of
interest. MDBS.DMS maintains two currency indicators for each set
specified in adata base's schema: the cutxent qwrrl of the set and
the cuixent id£iÜ2qL of the set. There can be many owner record
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. 3
MDBS DMS MANUAL -II: BACKGROUND -MDBS DMS MANUAL
occurrences in the data base for agiven set. At any moment during
the execution of an application program no more than one of those
owner record occurrences is the csuxmt owner of the set. dml
commands allow the application programmer to control which (if any)
owner record occurrence is the current owner of aset. The SXSTEM -
LéQQKjj QggyKKeÁge ia aluavs the cjjtr£nt qwijal 2y£ly sYskelD=Qwneg
sek (unless it is explicitly made to be null by the programmer).
Similarly, there can be many member record occurrences in the data
base for agiven set. At any moment during the execution of an
application program, no more than one of those member record
occurrences is the set's mirrent member. DML commands allow the
application programmer to control which (if any) member record
occurrence is the current member of aset.
As soon as arecord occurrence becomes the current owner of a
set,the DML can be used:
to find any of its related members through that set (Chapter III),
to modify its data values (Chapter V),
to retrieve its data values (Chapter IV),
to delete the record occurrence from the data base (Chapter X),
etc.
As soon as arecord becomes the current member of aset, the IJML can
be used:
to find any of its related owners through that set (Chapter III),
to delete the record from the data base (Chapter IX),
to modify its data values (Chapter V),
to retrieve its data values (Chapter IV),
etc.
Another kind of currency indicator that can be used during data
manipulation is called the CjjttMjt the ljji) jjjjit. Arun unit is an
executing instance of an application program. There are many record
occurrences in adata base. At any moment during the execution of an
application program, no more than one record occurrence in the entire
data base is the current record of that run unit. The current of a
run unit is typically the record that was most recently found by the
application program (i.e., by the run unit). DML commands allow the
application programmer to control which (if any) data base record is
the current of run unit. As soon as arecord becomes the current of
run unit, the DML can be used:
to delete the record from the data base (Chapter IX),
to modify its data values (Chapter V),
to retrieve its data values (Chapter IV).
Suppose adata base schema has five sets. These can be any
mixture of l:l, I:N, N: l, N: M sets. An application program can make
use of any of eleven currency indicators. There are five current
owner indicators (one per set), five current member indicators (one
per set), and the current of run unit. In amultiuser environment,
each application program that is using this data base will have its
own eleven currency indicators.
4(C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -II: BACKGROUND -MDBS DMS MANUAL
In addition to the three kinds of currency indicators already
mentioned, MDBS allows an application programmer to optionally define
additional currency indicators within the scope of an application
program. No more than 255 user-defined currency indicators can be used
within an application program. These additional currency indicators -
can be usefully employed to "remember" the current owner of some set,
before processing causes that current owner to change. The same
principle can be applied to current members and the current of run
unit. Various DML commands can be used in subsequent processing to
access the remembered record. DML commands are also provided for the
user (i.e., application programmer) to define additional currency
indicators and to make the record that is aset's current owner (or
member or current of run unit) the current record for auser-defined
currency indicator.
All currency indicators are null when an application program
begins execution, except the current owner of each system-owned set
and the current of run unit, which also has the SYSTEM record as its
current record. Acurrency indicator remains null until aDML command
is executed to change it.
C. Classes of DML Commands
The DML commanás fall into thirteen classes. Each command class
has one chapter devoted to it. The order of presentation for these
classes is as follows:
Finding records (Chapter III)
Retrieving data from records (Chapter IV)
Modifying data in records (Chapter V)
Assigning currency indicators (Chapter VI)
Creating records (Chapter VII)
Connecting records (Chapter VIII)
Disconnecting records (Chapter IX)
Deleting records (Chapter X)
Utilities (Chapter XI)
Boolean operations (Chapter XII)
Special operators (Chapter XIII)
Multiuser locking (Chapter XIV)
Recovery operators (Chapter XV)
The DML commands within agiven class are presented alphabetically in
the chapter for that class. In becoming acquainted with this manual,
it is recommended that these chapters be examined in sequence. Also,
the reader may want to ignore the advanced manipulation features on
the initial pass through this manual.
D. Stating aDML Conunand
Each DML command consists of ashort mnemonic. For instance, the
mnemonic FFM is used for Finding the first újember record connected to
the current owner of aset. Alist of zero, one, two, or three
arguments is stated along with aDML command. An argument is either a
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. 5
>
MDBS DMS MANUAL -II: BACKGROUND -MDBS DMS MANUAL
set name, record type name, area name, data item name, or data
block/program record name. For example, FEM needs asingle argument:
aset name, to indicate for which set we want to find the first
member. Correct usage of aDML command depends on aknowledge of the
kinds of arguments required by that commaná. If one of the arguments _
is adata block (or program record), the application programmer must
be aware of whether the command will use the data block's variables as
inputs or outputs.
A DML command can use currency indicators and can change currency
indicators. An application programmer must know which currency
indicators aDML command can use and which currency ináicators it can
alter (and the nature of the alterations) .
Command Status
The execution of aDML command always results in acQIuDang
Státjjá. Acommand status is an integer in the range from Othrough
255. The command status number is returned as the value of ahost
language variable of the programmer's choosing. Acommand status of O
means that the execution of acommand was successfully completetL A
command status of 255 means that the data manipulation system tried to
find arecord occurrence indicated by the command, but that the
indicated record occurrence does not exist in the data base. Any
other command status means that the command did not execute normally.
Generally speaking, this is caused by either faulty logic of the
programmer, amis-statement of the command, an attempt to violate
security or integrity constraints specified in the DDL, failure to
have aneeded disk on-line, or ahardware malfunction. Adetailed
description of each such command status error appears in Chapter XVI.
Comnand Form
The precise syntax employed for stating aDML command depends on
the host language being used. The MDBS System Specific Manual for a
given host language shows the syntax for using DML within that host
language. There are flour major categories of host language
interfaces:
a) Data block oriented with direct DML invocation (e. g. ,
some FORTRANS, some BASICS)
b) Data block oriented with indirect DML invocation (e.g., some
BASICS)
C) Record oriented with direct DML invocation (e.g., C, some
PASCALS, PL/l)
d) Record oriented with indirect DML invocation (e.g., some
PASCALS, some COBOLS)
Ahost language is data block oriented if it does not allow program
record types; otherwise, it is said to be record oriented. Invoking a
DML command directly means that the host language allows aDML
mnemonic to be treated as ahost language function. This is not
6(C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -II: BACKGROUND -MDBS OMS MANUAL
allowed in the indirect case, where aDML mnemonic and its associated
arguments are parameters of afunction. For instance, in the direct
case the FFM command has the following generic form:
ED =FFM ("arguments") "
where ED is ahost language variable that receives the command status
value returned by the FFM function. In the indirect case, the FFM
command has the following generic form:
ED =OMS ("FFM,arguments")
where ED is ahost language variable that receives the command status
returned by the DMS function as aresult of executing the FFM command.
Command String
When aDML command is stated, the portion of that command within
quotes is called the command string.* Two elements in acommand
string are separated by
aseries of one or more blanks,
a comma, or
a comma embedded in aseries of blanks.
Two consecutive commas, without an intervening nonblank character,
indicate amissing element in acommand string (e.g., "X,,Y"). A
command string with one fewer than the permitted number of elements is
typically treated as if the rightmost element is missing (e.g.r if
three elements are permitted, then the rightmost element is regarded
as missing from "X,Y"). The exception is when the omitted element
should have been adata block name (or program record type name)
immediately following adata item or record type name (e.g., with the
CRS command). In this case, the data block name is assumed to be the
same a"s the record type or data item name (e.g., if Zis adata item
name, then "X,Z" is equivalent to "X,Z,Z").
All elements are missing from acommand string if there are no
elements in the quotes. For some DML commands, it is permissible for
an argument in acommand string or the entire command string to be
'missing (e.g., FE'S). Some DML commands have no command string (e.g~
DBCLS) .
Command Descriptions
As each DML command is described in the following chapters,
examples of the four different categories of command usage are
provided. Even within acategory, the exact syntax for using a
0
*Some host languages do not use double quotes (""). The exact
convention employed by ahost language is described in its system
specific manual.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. 7
MDBS DMS MANUAL -II: BACKGROUND -MDBS DMS MANUAL
command may differ slightly from one host language to another. To
repeat, the 4pprQptiat£ áYátéw áHqgi£ig wanml ahQula Kq cQn,ajjlkQg £ql
the exact §YjjtÁx L£AjjjL£g Ky agjj¿qjj jjQSt l@Dgjj4ge. The mnemonic,
arguments, currency indicators used, currency indicators changed, and
impact on the data base for each dml command are all independent of "
the host language used. All of these factors are described in
subsequent chapters of the MDBS DMS Manual. Thus the logic employed
iii using the data manipulation language is the same, regardless of the
host languages used.
In presenting the DML commands in subsequent Chapters, the
following conventions are used:
EQ host language variable for the command status
itío the name of adata item defined with the DDL
k9g the name of arecord type defined with the DDL
áeF=LL 'M_?, sgt=3 the names of sets áefined with the DDL
áLé@ the name of an area defined with the DDL
klk the name of adata block (or program record type)
ihlk the name of adata block (or program recordtype) whose host
language variables provide input to aDML command
oklk the name of adata block (or program recordtype) whose host
language variables receive output from aDML command
CEUI current of run jjnit indicator
CQSsqtL gurrent Qwñer of the indicated set
CMLáétL current wember of the indicated set
ICiLLiL gurrent ijser-defined indicator i(lSiS255)
for example, CU(7) denotes the current record for the
seventh user-defined indicator
Although the description for aDML command may refer to adata block,
it should be understood that aprogram record type takes the place of
adata block for record-oriented host languages.
E. Multiuser Environment
In amultiuser environment, many run units can simultaneously
share the same copy of serially reentrant MDBS.DMS code. They also
share acommon page buffer area. Each run unit has its own program
region, which contains the application program and program buffers. a
run unit's program buffers are used by MDBS.DMS to manage the specific
operations pertinent to that run unit. Each run unit has its own
group of currency indicators, which are maintained independently of
other run units' currency indicators.
Arun unit can passively and actively lock various record
occurrences to prevent them from being altered and/or read by other
run units. The rules governing active and passive locking are
presented in Chapter XIV. Also presented in that chapter are the DML
commands for active locking and unlocking and for controlling the
number of times (and the time interval length) that aDML command will
re-try to access apreviously locked record.
8(C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -II: BACKGROUND -MDBS DMS MANUAL
Built-in to the multiuser MDBS.DMS is amechanism that allows an
|appiication developer to prevent both binary and n-ary deadlock
situations. If arun unit attempts an access that will create a
deadlock situation, acommand status error to that effect is returned
for the DML command that attempted the access. The run unit can use
this information in its control structure to avoid adeadlock "
situation.
F. Protecting Data Base Consistency against External Factors
When arun unit opens adata base for processing, it can specify
read-only processing. If this is the case, then page images in the
page buffer region are always identical to their corresponding pages
in the data base (i.e., in auxiliary memory). Thus data base
consistency is not damaged by an abnormal interruption (e.g., power
failure) of the run unit, which does not allow the run unit to close
the data base.
If arun unit does not open the data base for read-only
processing, then the run unit can alter the data base. Since these
alterations are necessarily buffered through the page buffer region,
it can happen that apage image in this region is not identical to the
corresponding data base page. An abnormal interruption of the run
unit could leave the data base inconsistent since the latest changes
to page images in main memory might not have been written to the data
base. When this occurs, subsequent efforts to open the data base
yield acommand status error of 15. abackup copy of the data base
must be used in this event or the recovery utility furnished with the
RTL form of MDBS can be used to restore the data base. There are two
ways to drastically reduce the likelihood of such asituation.
One method makes use of aDML command (DBSAVE) that rewrites all
changed page images into the data base. This memory flushing command
can be used wherever and whenever desired in an application program.
If, when arun unit abnormally terminates, no changes have been made
to the page images in memory since the last flush, then the data base
is consistent and error 15 will not occur in asubsequent attempt to
open the data base for processing.
The second method is available with the RTL form of MDBS in
single user situations. It allows the run unit to specify apage-image
file via the PIED command. This method of preserving consistency is
particularly useful if the run unit carries out acomplex kind of
transaction that can change records on several pages. At some moment
during the execution of acomplex transaction, some changed page image
may have been rewritten into the data base, while other altered images
may still reside in the buffer region. An abnormal termination at
this point would leave the data base inconsistent. If the data base
could be restored to its former state, that existed at the start of
the complex transaction, then that data base would be consistent and
the interrupted transaction could be reinitiated. This is the purpose
of the page image file.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 9
t
MDBS DMS MANUAL -II: BACKGROUND -MOBS DMS MANUAL
At any juncture in arun unit, the TRBGN command can be used to
declare the beginning of acomplex transaction. When acommit
(TRCOM) command is invoked, the entire complex transaction is
committed to the data base. All changes made since TRBGN was last
invoked are incorporated into the data base. If an abort (TRABT)
command is invoked instead of TRCOM, no changes that were made since
TRBGN was last invoked are incorporated into the data base. If the
run unit abnormally terminates after aTRBGN and before aTRABT or
TRCOM, then asubsequent command to open the data base finds the data
base in the state that existed at the beginning of the complex
transaction. With operating systems that do not dynamically allocate
file sizes, it is important to create apage image file of sufficient
size. Because page image posting is not meaningful in multiuser
situations, it is available only for the single user version of MDBS.
The PIED, TRBGN, TRCOM and TRABT commands are described in Chapter XVI
and in the MDBS RTL Manual.
Selective RQ11r)a.ck. The foregoing mechanisms do not help in the
event of ahardware failure that physically destroys aportion of the
data base. In this case the RTL transaction logging and recovery
facilities are used to restore the data base. The DML commands for
utilizing automatic transaction logging within arun unit are
presented in Chapter XVI. Thé transaction log file (defined in the
DDL specification) is distinct from the page-image file. Either,
both, or neither can be used by arun unit. In the event of AIEL type
of inconsistency in the data base (due to abnormal termination,
hardware failure, incorrect data entry, etc.) the transaction log file
can automatically be applied to adata base back-up copy by using the
RTL recovery utility (RCV). This recovery can be selective if
desired, so that only certain logged transactions are used to recover.
Bad transactions (e.g., incorrect data entry) can be discarded during
the selective rollback.
Full details about the MDBS recovery facilities available with
the RTL form of MDBS, including its use for surveillance of users'
activities, are presented in the KDBS RTL Manual.
10 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL MOBS DMS MANUAL
III. FINDCOMMANDS
a. Overview
TPíe MDBS Data Manipulation t,anguage supports twenty-four find
conunands, providing an application programmer with many ways to find a
given record. Thé principal objective of any find command is to make
arecord the current owner of aset, the current member of aset, the
current of the run unit, or some combination of these. The found
record becomes one of the records that the application program is
mirrmt.1v interested in; as soon as arecord becomes current, it can
be processed in various ways by other DML commands. The find commands
fall into four main groups:
1. Find amember record that is related to agiven owner
record via some set:
find the first member,
next member,
last member,
prior member,
member with aparticular sort key value,
member with aparticular value for some data item,
member with the same value for adata item or sort
key as an already found member.
which member is first, next, last, or prior depends on the
set's member order specified in the DDL. If the member
order is sorted, members can quickly be found on the basis
of their sort key values.
2. Find an owner record that is related to agiven member
record via some set:
find the tirst owner,
next owner,
last owner,
prior owner,
owner with aparticular sort key value,
owner with aparticular value for some data item,
owner with the same value for adata item or sort
key as an already found owner.
Which owner is first, next, last, or prior depends on the
set's owner order specified in the DDL. If the owner order
is sorted, owners can quickly be found on the basis of their
sort key values.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A li
MDBS DMS MANUAL -III: FIND COMMANDS -MDBS DMS MANUAL
3. If arecord type was declared in the DDL to have acalc key,
then any of its records can be found "out Qt the blue,"
without reference to any set in which the record type
participates. MDBS.DMS finds the desired record on the
basis of acalc key value furnished by the application
program. IE "duplicate calc keys are allowed, then all '"
records with the same calc key value can be fQund.
4. The application prograiu can sequentially find the records in
adesired area or areas. This refers to the physical
sequence of recorcts.
If afind command returns acommand status of zero, then the
desired record was found. If the command status is 255, then the
record requested through afind command does not exist in the data
base. The branching and control structure of ahost language program
is typically based quite tieavily on the command status returned by the
various find commands used in the program.
Data security conditions, as defined in aDDL schema
specification, are automatically enforced when afind command is
invoked. If the user of an application program attempts to perform a
"find" that is inconsistent with the user's read access codes, a
command status will result which indicates that the find was not
performed.
0
B. Corutµnci Detai18
EREK EiM Ruplicate Record based on calc Xey EJ2RK
Command and Arguments
FDRK,rec,iblk
Currency Indicators
=: cru chanqpd: cruc record having duplicate
calc key value
Description
JLE Un cl]rrent :Qt =jj= ila AQÉ nUí wtm uinvQkea:
Find an occurrence of the same record type as the current of run
unit, and having acalc key value that matches the calc key value
held in iblk's variab1e(s). If such arecord is found, it
becomes the new current of run unit. This command is valid only
if the record that is the current of run unit is an occurrence of
rec and rec has been ctefined (in the DDL) as having acalc key.
The calc key value indicated by iblk must duplicate the calc key
value of the current of run unit, otherwise acommand status
error results (the current of run unit is not altered).
12 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -III: FIND COMMANDS -MDBS DMS MANUAL
Use of FRK, followed by repeated use of FDRK, will find all
records of agiven record type having the same calc key value.
The order in which these are found is not guaranteed. If an FDRR
command is given when there are no more duplicates of a
particular calc key value, then the current of run unit becomes "
null and the command status is 255. If auser does not have read
access to all data items that form the calc key, then acommand
status error is returned.
If khe currmt Qt tjjlj jjñit is null jÚj£jj EDEE is irlyQkeg: fork
has exactly the same effect as FRK.
Examples of Command Usage
block/direct ... ED =FDRK ("rec,iblk")
block/indirect ... ED =DMS ("FDRK,rec,iblk")
record/direct ... ED =FDRK ("rec", iblk)
recorá/indirect... ED =DMSD ("FDRK,rec", iblk)
EU Eind Eirst Member =
Commaná and Arguments
FFM,set-l
Currency Indicators
IISM: CO(set-l) Chajjgeg: CM(set-l)c first member (set-l)
CRU <——first member (set-l)
Description
The first member connected to the current owner of set—l becomes
the current member of set-l and the current of the run unit.
Which member is first depends on the set-l member order, as
specified with the DDL. If the current owner of set-l has no
member, then the command status is 255, the current of run unit
becomes null, and the current member of set—l is null. If auser
does not have read access to set-l, then acommand status error
is returned.
Examples of Command Usage
block/direct ... ED =FEM ("set-l")
block/indirect ... ED =dms ("FFM,set-l")
record/direct ... ED =ffm ("set-l")
record/indirect... ED =DMS ("FFM,set-l")
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. 13
MDBS DKS MANUAL -III: FIND COMMANDS -MDBS DMS MANUAL
EEQ Eind Eirst Qwner EEQ
Command and Arguments
FFO,set-l
Currency Indicatprs
u§£g: CM(set-l) ChaAgeg: CO(set-l)<——£irst owner (set-l)
CRU c——first owner (set-l)
Description
The first owner connected to the current member of set—l becomes
the current owner of set—l and the current of the run unit.
Which owner is first depends on the set-l owner order, as
specified with the DDL. If the current member of set-l has no
owner, then the command status is255, the current of run unit is
null, and the current owner of set-l is null. If auser does not
have read access to set-l, then acommand status error is
returned.
Examples of Command Usage
block/direct ... ED =FFO ("set-l")
block/indirect ... ED =OMS ("FFO,set-l")
record/áirect ... ED =FFO ("set-l")
record/indirect... ED =OMS ("FFO,set-l")
EES Eiñd Eirst Sequential record EES
Command and Arguments
FFS,area (the area argument is optional)
Currency Indicators
UáC9: none ch@ng£g: cru( first record in area
Description
The record that is physically first within the indicated area
becomes the current of run unit. I:Ethe indicated area has no
records, then current of run unit becomes null and the command
status is 255. When the area argument is omitted, FFS operates
on the main area and then on all subsequent areas until arecord
is found (i.e., the main area may have no data recordsA
FFS allows auser with any access code to find the physically
first record of an area regardless of the access codes of that
record's record type. However, the user will be unable to
14 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -III: FIND COMMANDS -MDBS DMS MANUAL
retrieve data from the found record or modify its data unless the
user's access authorization permits read or write access to
occurrences oil the record type.
Examples of Command Usage
block/direct ... ED =FFS ("area") or ED =FFS (" ")
block/indirect ... ED =DMS ("FFS,area") or ED =DMS ("FE'S")
recorá/direct ... ED =FPS ("area") or ED =FFS (" ")
record/indirect... ED =DMS ("FFS,area") or ED =DMS ("FFS")
ELM Eind Last Member EIM
Command and Arguments
FLM,set-l
Currency Indicators
tlsé9: CO(set-l) ChgRgQd: CM(set-l) (last member (set-l)
CRU <last member (set-l)
Description
The last member connected to the current owner of set-l becomes
the current member of set-l and the current of the run unit.
which member is last depends on the set-l member order, as
specified with the DDL. If the current owner of set-l has no
member, then the command status is 255, the current of run unit
becomes null and the current member of set—l becomes null. If a
user does not have read access to set-l, then acommand status
error is returned.
Examples of Command Usage
block/direct ... ED =FLM ("set-l")
block/indirect ... ED =DMS ("FLM,set-l")
record/direct ... ED =FLM ("set-l")
record/indirect... ED =DMS ("FLM,set-l")
ELQ Eirid Last Qwner ELQ
Command and Arguments
FLO,set-l
Currency Indicators
Ué9: CM(set-l) Cbanged: CO(set-lA——last owner (set-l)
CRU <———last owner (set-l)
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. 15
MDBS DMS MANUAL -III: FIND COMMANDS -MDBS DMS MANUAL
Description
The last owner connected to the current member of set—l becomes
the current owner of set—l and the current of the run unit.
which owner is last depends on the set-l owner order, as
specified with the ddl. If the current member of set-l has no "
owner, then the command status is 255, the current of run unit
becomes null, and the current owner of set-l becomes null. If a
user does not have read access to set-l, then acommand status
error is returned.
Examples of Command Usage
block/áirect ... ED =FLO ("set-l")
block/indirect ... ED =DMS ("FLO,set-l")
record/direct ... ED =FLO ("set-l")
record/ináirect... ED =DMS ("FLO,set-l")
MI Eind Member based on data Item MI
Command and Arguments
FMI,item,set-l,iblk
Currency Indicators
tl§eg: CO(set-1) ch!angQg: CM(set-l) first member(set-l)
CRU having data item value
Description
The first member record connected to the current owner of set-l,
and having avalue for itm that matches the value of iblk,
becomes the current member of set—l. It also becomes the current
of run unit. Iii there are two or more member records for the
current owner of set-l, all having the iblk value for itin, which
one is first depends on the set-l member order. The command FNMI
can be used to find the next member having the same ib1k value
for itm.
The host languagevariableof iblkmust be consistent in size and
type with the itm data item (as specified in the DDL). If the
value of iblk's host language variable does not match the itm
value of any member record connected to the current owner of set—
I, then the command status is 255, the current member of set—l
becomes null, and the current of run unit becomes null. A
command status error is returned if auser does not have read
access to both itm and set-l.
16 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -III: FIND COMMANDS -MDBS DMS MANUAL
Examples of Command Usage
block/direct ... ED =FMI ("itm,set-l,iblk")
block/indirect ... ED =DMS ("FMI,itm,set-l,iblk")
recorá/direct ... ED =FMI ("itm,set-l",iblk) "
record/indirect... ED =DMSD ("FMI,itm,set-l",iblk)
Eind Member based on Sort Key EMSK
Command and Arguments
FMSK,set-l,iblk
Currency Indicators
QSé9: CO(set-l) Cbanged: CM(set-l) first member (set-l)
CRU "having sort key value
Description
The first member record that has the sort key value of iblk and
that is connected to the current owner of set—l becomes the
current member of set—l. It also becomes the current of the run
unit. Set-l must have asorted member order.
If several member records for the current owner of set-l have the
same sort key value, the one that is first depends on the DDL
sort-clause specification for the set-l member order (either
LIFO, FIFO, or IMMATERIAL). The host language variable(s) of
iblk must contain the desired sort key value. If there are
multiple data items for the set-l sort key, the sort key value
for iblk must be consistent with the sequence, types and sizes of
the data items in the DDL sort key specification. If RECORD-TYPE
is part of the sort key, then the name of the desired record type
must appear as part of the iblk sort key value; the host language
variable holding the record type name must be consistent with a
string data item of 8bytes in size.
If the current owner of the set-l has no member whose sort key
value matches the sort key value of iblk, then the command status
is 255. The member whose sort key value immediately follows the
iblk sort key value becomes the current member of set-l, as well
as the current of run unit. The exceptions are when the current
owner of set-l has no members or when iblk's sort key value is
greater than the sort key value of the last member of set—l's
current owner. In these cases, the current member of set—l
becomes null and the current of run unit becomes null.
Acommand status error is returned if auser does not have read
access to set-l and all data items that make up the member sort
key.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. 17
MDBS DMS MANUAL -III: FIND COMMANDS -MDBS DMS MANUAL
Examples of Command Usage
block/direct ... ED =FMSK ("set-1,iblk")
block/indirect ... ED =DMS ("FMSK,set-l,iblk")
record/direct ... ED =FMSK ("set-l",iblk) "
record/indirect... ED =DMSD ("FMSK,set-l",iblk)
ENM Eind Next Member =
Command and Arguments
FNM,set-1
Currency Indicators
Yáé9: CO(set-l) chang£g: CM(set-l)<——next member(set-l)
CM(set-l) CRU <µ——ñext member(set-l)
Description
If the gjjrr£nt ID£¡Dbqt oE set=l is ñQt null wheri ENÉI is inyQk£sj:
The next member record (connected to the current owner of set-l)
following the current member of set-l becomes the new current
member of set—l. It also becomes the current of run unit. which
member record is logically next depends on the set-l member
order, as specified with the ddl. If the current member of set-l
is the last member for the current owner of set-l, then FNM
cannot find anext member. When there is no next member for the
current owner of set-l, the command status is 255, the current
member of set-l becomes null, and the current of run unit becomes
null. Aconunand status error is returned if auser does not have
read access to set—l.
If tjjQ current IDQIDkQK Qt set=1 is null when enei is injLQkeg: fnm
has exactly the same effect as FFM.
Examples of Command Usage
block/áirect ... ED =FNM ("set-l")
block/indirect ... ED =DMS ("FNM,set-l")
record/direct ... ED =FNM ("set-l")
record/ináirect... ED =DMS ("FNM,set-1")
18 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
6
MDBS DMS MANUAL -III: FIND COMMANDS -MDBS DMS MANUAL
Eind Bext Member based on data 1tem E=
Command and Arguments
FNMI,itm,set-l,iblk
Currency Indicators m~
sI=a: CO(set-l) charlqed: CM(set-l)<i__next member(set-l)
CM(set-1) CRU with item value
Description
LE the curre.rlt .µleFtjber :smt-1 1& =iuüj when :=1 ui.ñvoPeck
The next member record connected to the current owner of set-l,
and having avalue for itm that matches the value of iblk,
becomes the current member of set-l. It also becomes the current
of run unit. The host language variable of iblk must be
consistent in size and type with the itm data item (as specified
in the DDL). If there are two or more member records following
the current member of set-l, all having the iblk value for itm,
which one is next depends on the set-l member order. If such a
record does not exist, the command status is 255, the current
member of set-l becomes null, and the current of run unit becomes
null. If auser does not have read access to both itm and set—l,
then acommand status error is returned.
IE Ehe c|lrrent menjber GLÉ "mt-l utúLl JÚléll As in\Tokea:
FNMI has exactly the same effect as FMI. The first member record
connected to the current owner of set—l, and having avalue for
itm that matches the value of iblk, becomes the current member of
set-l.
Examples of Command Usage
block/direct ... ED =FNMI ("itm,set-l,iblk")
block/indirect ... ED =DMS ("FNMI,itm,set-l,iblk")
record/direct ... ED =FNMI ("itm,set-1",iblk)
reeord/indirect... ED =DMSD ("FNMI,itm,set-l",iblk)
FNMY EiM Bext MeInber based on Sort Key FNMqK
Command and Arguments
FNMSK,set-l,iblk
Currency Indicators
Used: CO(set-1) cha.nqe{í: CM(set-l) 6ext member
CM(set-l) CRU <(set-l) having
Sort key value
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 19
X
MDBS OMS MANUAL -III: FIND COMMANDS -WJBS DMS MANUAL
Description
The next member record (after the current member) that has the
sort key value OE iblk and that is connected to the current owner
of set-l becomes the current member oE set-l. It also becomes
the current of the run unit. Set-l must have asorted member -
order.
If 8et-l has no current member, then FNMSK behaves just as fmsk.
If several member records for the current owner of set-l have the
same sort key value, the one that is next depends on the DDL
sort-clause specification for the set-l member order (either
LIFO, FIFO, or IMMATERIAL). Tlíe host language variable(s) of
iblk must contain the desired sort key value. If there are
multiple data items for the set-l sort key, the sort key value
for iblk must be consistent with the sequence, types and sizes of
the data items in the DDL sort key specification. If RECORD-TYPE
is part of the sort key, then the name of the desired record type
must appear as part of the iblk sort key value; the host language
variable holding the record type name must be consistent with a
string data item of 8bytes in SiZee
IE the current owner of the set-l has no member (after the
current member) whose sort key value matches the sort key value
of iblk, then the command status is 255. The next member
immediately following the current member becomes the current
member of set-l, as well as the current of run unit. The
exceptions are when the current owner of set-l has no members or
when iblk's sort key value is greater than the sort key value of
the last member of set-l's current owner. In these cases, the
current member of set-l becomes null and the current of run unit
becomes null.
Acommand status error is returned if auser does not have read
access to set-l and all data items that make up the member sort
key.
Examples Qt Command Usage
block/direct ... ED =FNMSK ("set-l,iblk")
block/indirect ... ED =OMS ("FNMSK,set-l,iblk")
record/direct ... ED =FNMSK ("set-l",iblk)
record/indirect... ED =DMSD ("FNMSK,set-l",iblk)
ENQ EiM Next Qwner ENQ
Command and Arguments
FNO,set-l
Currency Indicators
jjs,e,d,: CM(set-1) chanqeq: CO(set-l)< next owner(set-1)
CO(set-l) CRU (next owner(set-l)
20 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -III: FIND COMMANDS -MDBS DMS MANUAL
Description .
XE the current owner ff't-i is ñQt Áüáí whm ENQ 1& Invokea:
The next owner record (connected to the current member of set-l)
following the current owner of set-l becomes the new current
owner of set-l. It also becomes the current of run unit. Which
owner record is logically next depends on the set-l owner order,
as specified with the DDL. If the current owner of set-l is the
last owner for the current member of set-l, then FNO cannot find
anext owner. When there is no next owner for the current member
of set-l, the command status is 255, the current owner of set-l
becomes null, and the current of run unit becomes null. A
command status error is returned if auser does not have read
access to set~l.
If the cuFrent QYner :Qt rM"1 1& JCL9ÁJ jÚLéjll ENQ uin\Topea: fno
has exactly the same effect as FFO.
Examples of Command Usage
block/direct ... ED =FNO ("set-l")
block/indirect ... ED =DMS ("FNO,set-l")
record/direct ... ED =FNO ("set-l")
record/indirect... ED =DMS ("FNO,set-l")
.
ENQI Eind Bext ,Qwner based on data Item ENQL
Command and Arguments
FNOI,itm,set-1,iblk
Currency Indicators
Used: CM(set-l) ChanqeQ: CO(set-l)< next owner(set-l)
CO(set-l) CRU with item value
Description
LE :Éhe cl]rrent. owner fíf't-i u=Ájjíi Ehm enqi la i.n\/okea:
The next owner record connected to the current member of set—l,
and having avalue for itm that matches the value of iblk,
becomes the current owner of set-l. It also becomes the current
of run unit. The host language variable of iblk must be
consistent in size and type with the itm data item (as specified
in the DDL). If there are two or more owner records following
the current owner of set-l, all having the iblk value for itju,
which one is next depends on the set-l owner order. If such a
record does not exist, the command status is 255, the current
owner of set-l becomes null, and the current of run unit becomes
null. If auser does not have read access to both itm and set-l,
then acommand status error is returned.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 21
MDBS DMS MANUAL -III: FIND COMMANDS -MDBS OMS MANUAL
JL£ mc11rrent c)wner StE símT-1 uñjúj U&ii uin\/nked: fnoi
has exactly the same effect as FOl. The first owner record
connected to the current member of set-l, and having avalue for
itm that matches the value of iblk, becomes the current owner of
set-l.
Examples of Command Usage
block/direct ... ED =FNOI ("itm,set-l,iblk")
biock/indirect ... ED =DMS ("FNOI, itm,set-l,iblk")
record/direct ... ED =FNOI ("itm,set-l",iblk)
record/indirect. .. ED =DMS ("FNOI, itm,set-l",ib1k)
pNnqr Eind Next Qwner based on Sort Key pjqcwp
Command and Arguments
fnosk, set-l,iblk
Currency Indicators
ILs,e.d,: CO (set-l) cha.rlqpc1: co (set-l) íiext owner (set-l)
CM(set-l) CRU <having sort key
value'
Description
The next owner record (after the current owner) that has the sort
key value of iblk and that is connected to the current member of
set-l becomes the current owner of set-l. It also becomes the
current of the run unit. Set-l must have asorted owner order.
If set-l has no current owner, then FNOSK behaves just as fosk.
If several owner records for the current member of set-l have the
same sort key value, the one that is next depends on the DDL
sort-clause specification for the set-l owner order (either LIFO,
FIFO, or IMMATERIAL) .The host language variable (S) of iblk must
contain the desired sort key value. If there are multiple data
items for the set-l sort key, the sort key value for iblk must be
consistent with the sequence, types and sizes of the data items
in the DDL sort key specification. If RECORD-TYPE is part of the
sort key, then the name of the desired record type must appear as
part of the íblk sort key value; the host language variable
holding the record type name must be consistent with astring
data item of 8bytes in size.
If the cur rent member of the set-l has no owner (after the
current owner) whose sort key value matches the sort key value of
ibik, then the command status is 255. The next owner immediately
following the current member becomes the current owner of set-l,
as well as the current of run unit. Tite exceptions are when the
22 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -III: FIND COMMANDS -MDBS DMS MANUAL
current member of set-l has no owners or when iblk's sort key
value is greater than the sort key value of the last owner of
set—l's current member. In these cases, the current owner of
set—l becomes null and the current of run unit becomes null.
Acommand status error is returned if auser does not have read
access to set-l and all data items that make up the owner sort
key.
Examples of Command Usage
block/direct ... ED =FNOSK ("set-l,iblk")
block/indirect ... ED =OMS ("FNOSK,set-l,iblk")
record/direct ... El) =FNOSK ("set-l",iblk)
record/indirect... ED =DMSD ("FNOSK,set-l",ib1k)
ENS Eind Next 8equential record ENS
Command and Arguments
FNS,area (the area argument is optional)
Currency Indicators
tlswi: CRU ch@ngeg: CRUE——next recorá in area
Description
The record that is physically next after the current of run unit
within the indicated area becomes the current of run unit. A
command status error is issued if the current of run unit is not
in the indicated area; the current of run unit is not changed.
If the current of run unit is the physically last record in an
area when FNS is invoked, then FNS will give acommand status of
255 and the current of run unit is unchanged. If an area name is
not indicated, then FNS will not give a255 command status at the
end of an area. It will proceed to make the physically first
record of the next area the current of run unit. The sequence of
areas is determined by the order in which areas are defined in
the DDL area section. The main area is always the first area.
If the current of run unit is the last record in the last area,
invoking FNS will give a255 command status and leave the current
of run unit null.
FNS allows auser with any access code to find the physically
next record of an area regardless of the access codes of that
record's record type. However, the user will be unable to
retrieve data from the found record or modify its data unless the
user's access authorization permits read or write access to
occurrences of the record type. -
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. 23
MDBS DMS MANUAL -III: FIND COMMANDS -MDBS DMS MANUAL
Examples of Command Usage
block/direct ... ED =FNS ("area") or ED =FNS (" ")
block/ináirect ... ED =DMS ("FNS,area") or ED =DMS ("FNS")
record/direct ... ED =FNS ("area") or ED =FNS (" ") "
record/indirect... ED =OMS ("FNS,area") or ED =DMS ("FNS")
EQI Eind Qwner based on data Item EQI
Command and Arguments
FOl,item,set-l,iblk
Currency Indicators
Ué9: CM(set-1) cbÁng£g: CO(set-l)m first owner(set-l)
CRU having data item value
Description
The first owner record connected to the current member of set-l,
and having avalue for itm that matches the value of ib1k,
becomes the current owner of set—l. It also becomes the current
of run unit. If there are two or more owner records for the
current member of set-l, all having the iblk value for itm, which
one is first depends on the set-l owner order. The command FNOI
canbe usedto findthe next owner havingthe same iblk value for
itm.
The host languagevariableof ib1kmust be consistent in sizeaná
type with the itm data item (as specified in the DDL). If the
value of ib1k's host language variable does not match the itm
value of any owner record connected to the current member of set—
l, then the command status is 255, the current owner of set-l
becomes null, and the current of run unit becomes null. A
command status error is returned if auser does not have read
access to both itm and set-l.
Examples of Command Usage
block/direct ... ED =FOl ("itm,set-l,iblk")
block/indirect ... ED =DMS ("FOl,itm,set-l,iblk")
record/direct ... ED =FOl ("itm,set-l",iblk)
record/indirect... ED =DMSD ("FOl,itm,set-l",iblk)
24 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -III: FIND COMMANDS -MOBS DMS MANUAL
EQSK Eiñd Qwner based on Sort Key
Command and Arguments
FOSk,set-l,iblk
Currency Indicators
C!4(set-l) cha,pqecj; CO(set-1) first owner (set-l)
CRU <having sort key value
Description
The first owner record that has the sort key value of iblk and
that is connected to the current member of set-l becomes the
current owner of set-l. It also becomes the current of the run
unit. Set-l must have asorted owner order.
If several owner records for the current member of set-l have the
same sort key value, the one that is first depends on the DDL
sort-clause specification for the set-l owner order (either LIFO,
FIFO, or IMMATERIAL). TPie host language variab1e(s) of iblk must
contain the desired sort key value. If there are multiple data
items for the set-l sort key, the sort key value for iblk must be
consistent with the sequence, types and sizes of the data items
in the ddl sort key specification. If RECORD-TYPE is part of the
sort key, then the name of the desired record type must appear as
part of the iblk sort key value; the host" language variable
holding the record type name must be consistent with astring
data item of 8bytes in size.
If the current member of the set-l has no owner whose sort key
value matches the sort key value of iblk, then the command status
is 255. The owner whose sort key value immediately follows the
iblk sort key value becomes the current owner of set-l, as well
as the current of run unit. The exceptions are when the current
member of set-l has no owners or when iblk's sort key value is
greater than the sort key value of the last owner of set-l's
current member. In these cases, the current owner of set-l
becomes null and the current of run unit becomes null.
Acommand status error is returned if auser does not have read
access to set-l and all data items that make up the owner sort
key.
Examples of Command Usage
block/direct ... ED =FOSK ("set-l,iblk")
block/indirect ... ED =DMS ("POSK,set-l,iblk")
record/direct ... ED =FOSK ("set-l",iblk)
record/indirect... EC =DMSD ("FOSk,set-l",iblk)
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. 25
MDBS DMS MANUAL -III: FIND COMMANDS -MDBS DMS MANUAL
EEM Eind Erior Member m
Comnaná and Arguments
PPM, set-l
Currency Indicators
CO (set-l) chÁ.rlqec1: CM(set-l) <prior member(set-l)
CM(set-1) CRU <prior member (set-l)
Description
IE the cl]rre,nt Fnemhe.r Aet-1 1& =Ájjíí Um =uiñvMU:
The prior member record (connected to the current owner of set-l)
preceding the current member of set-l becomes the new current
member of set-l. It also becomes the current of run unit. which
member record is logically prior depends on the set-l membe r
order, as specified with the DDL. If the current member of set-l
is the first member for the current owner of set-l, then FPM
cannot find aprior member. when there is no prior member for
the current owner of set-l, the command status is 255, the
current member of set-l becomes null, and the current of run unit
becomes null. Acommand status error is returned if auser does
not have read access to set-l.
the c|}r.rent memPer ff't-i 1& JULJÁ JÚEII =ís jnxTokelí: fpm
has exactly the same effect as FLM.
Examples of Command Usage
block/direct ... ED =ppm ("set-l")
block/indirect ... ED =DMS ("FPM, set-l")
record/direct ... ED =FPM ("set-l")
record/indirect. .. ED =DMS ("FPM,set-l")
Eind Erior Member based on data 1tem
Command and Arguments
FPMI, itm,set-l,iblk
Currency Indicators
Tjsed: CO (set-l) chanqed: CM(set-l) prior member (set-l)
CM(set-l) CRU cwith item value
26 Rev. 85A (C) COPYRIGHT 1981 Micro' Data Base Systems, Inc.
MDBS DMS MANUAL -III: FIND COMMANDS -MOBS DMS MANUAL
Description
the Current meInher fílPt-1 is AQÉ :waLl Um ja invopeq:
The prior member record connected to the current owner of set-l,
and having avalue for itm that matches the value of iblk,
becomes the current member of set-l. It also becomes the current
of run unit. The host language variable of iblk must be ""
consistent in size and type with the itjñ data item (as specif led
in the DDL) .If there are two or more member records preceding
the current member of set-l, all having the iblk value for itjn,
which one is prior depends on the set-l member order. If such a
record does not exist, the command status is 255, the current
member of set-l becomes null, and the current of run unit becomes
null. If auser does not have read access to both itm and set-l,
then acommand status error is returned.
If the curren.t nmmMr :fíft-i 1& nÁLl júLen =i is in\Topea: The
last membe"r record connected to the current owner of set-l, and
having avalue for itm that matches the value of iblk, becomes
the current member of set-l.
Examples of Command Usage
block/direct ... ED =FPMI ("itm,set-l,iblk")
block/indirect ... ED =DMS ("FPMI,itm,set-l,iblk")
record/direct ... ED =FPMI ("itm,set-l", iblk)
record/indirect. .. ED =D!4SD ("FpMI,itm, set-l" ,iblk)
FPMFF EiM Erior Member based on Sort Key PPM'ík
Command and Arguments
FPMSK, set-l,iblk
Currency Indicators
SLSM: CO (set-l) ChapLqecí: CM(set-l) "prior member
CM(set-l) CRU <(set-l) having
sort key value
Description
Set-l must have asorted member order. The prior member record
(after the current member) that has the sort key value of iblk
and that is connected to the current owner of set-l becomes the
current member olí set-l. It also becomes the current of the run
unit. If set-l has no current member, then the last membe r
hav ing the sort key value is found. If several member records
for the current owner of set-l have the same sort key value, the
one that is prior depends on the DDL sort-clause specification
for the set-l member order (either LIFO, FIFO, or IMMATERIAL) .
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 27
MDBS DMS MANUAL -III: FIND COMMANDS -MDBS DMS MANUAL
The host language variable(s) of iblk must contain the desired
sort key value. If there are multiple áata items for the set"1
sort key, the sort key value for iblk must be consistent with the
sequence, types and sizes of the data items in the DDL sort key
specification. If RECORD-TYPE is part of the sort key, then the _
4name of the desired record type must appear as part of the iblk
sort key value; the host language variable holding the record
type name must be consistent with astring data item oÍl 8bytes
in size.
If the current owner of the set-l has no member (before the
current member) whose sort key value matches the sort key value
of iblk, then the command status is 255. The member immediately
preceding the current member becomes the current member of set-l,
as well as the current of run unit. Tkie exceptions are when the
current owner of set-l has no members or when iblk's sort key
value is lower than the sort key value of the first member OF
set-l's current owner. In these cases, the current member of
set—l becomes null and the current of run unit becomes null.
Acommand status error is returned if auser does not have read
access to set-l and all data items that make up the member sort
key.
Examples of Command Usage
block/direct ... ED =FPMSK ("set-l,iblk")
block/indirect ... ED =DMS ("FpMSK,set-l,iblk")
record/direct ... ED =FPMSK ("set-l",iblk)
record/indirect... ED =DMSD ("FPMSK,set-l",iblk)
EEQ Eind Erior Qwner EEQ
Command and Arguments
FpO,set-l
Currency Indicators
ueg: CM(set-l) charlqe¿i: CO(set-l) (prior owner(set-l)
CO(set-l) CRU 'c——prior owner(set-l)
Description
LE tlLe c1]rre,n.t ownm rmt-l 1& =a!jjj júiéja EEQ 1& in.vokea:
The prior owner record (connected to the current member of set-l)
preceding the current owner of set-l becomes the new current
owner of set-l. It also becomes the current of run unit. Which
owner record is logically prior depends on the set-l owner order,
as specified with the DDL. If the current owner of set-l is the
first owner for the current member of set-l, then FPO cannot find
aprior owner. When there is no prior owner for the current
member of set-l, the command status is 255, the current owner of
28 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -III: FIND COMMANDS -MOBS DMS MANUAL
set-l becomes null, and the current of run unit becomes null. A
command status error is returned if auser (loes not have read
access to set—l.
LE the cujxent c)wner :Sift-i La AjjÁÁ jútén EEQ 1& ip\Tc)ker1: FPO _
has exactly the same effect as FLO.
Examples of Command Usage
block/direct ... ED =FPO ("set-l")
block/indirect ... ED =DMS ("FPO,set-l")
record/direct ... ED =FPO ("set-l")
record/indirect. .. ED =DMS ("FPO,set-l")
EEQL Eind Erior Qwner based on data 1tem Em:
Command and Arguments
FPOl,itm,set-l,iblk
Currency Indicators
SLaed: CM(set-l) ctlanqe(i: co (set-l) prior owner(set-l)
CO (set-l) CRU "with item value
Description
uthe current own.er fC't~j u=AJÚÁ jÚléll EEQI u.i.nvokea:
Tííe prior owner record connected to the current member of set-l,
and having avalue for itm that matches the value of iblk ,
becomes the current owner of set-l. It also becomes the current
of run unit. The host language variable of iblk must be
consistent in size and type with the itm data item (as specified
in the DDL) .If there are two or more owner records preceding
the current owner of set-l, all having the iblk value for itm,
which one is prior depends on the set-l owner order. If such a
record does not exist, the command status is 255, the current
owner of set-l becomes null, and the current of run unit becomes
null. If auser does not have read access to both itm and set-l,
then acommand status error is returned.
LE the current owner :ff't.-i 1& iiÁLl ~EEQI uinvopea: The
last owner record connected to the current member of set-l, and
having avalue for itm that matches the value of iblk, becomes
the current owner of set—l.
Examples of Command Usage
block/direct ... ED =FPOI ("itm,set-l,iblk")
b1ock/indirect ... ED =DMS ("FPOl,itm,set-l, iblk")
record/direct ... ED =FPOI ("itm,set-l",iblk)
record/indirect.. .ED =DMS ("FPO1,itm,set-l",iblk)
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 28 .l
MDBS DMS MANUAL -III: FIND COMMANDS -MDBS DMS MANUAL
F'PñSP Eind Erior Qwner based on Sort Key FPKF
Command and ArguInents
FPOSk,s'et-l,iblk
Currency Indicators '
.
.U.s.eÁ: CO (set-l) c.hanqed: co (set-l) "prior owner (set-l)
CM (set-l) CRU €__having sort key
val ue
Description
Set-l must have asorted owner order. The prior owner record
(before the current owner) that has the sort key value of iblk
and that is connected to the current member of set-l becomes the
current owner of set-l. It also becomes the current of the run
unit. If set-l has no current owner, then the last owner having
the sort key value is found. If several owner records for the
current member of set-l have the same sort key value, the one
that is prior depends on the DDL sort-clause specification for
the set-i owner order (either LIFO, FIFO, or IMMATERIAL) .
The host language variable (S) oE iblk must contain the desired
sort key value. If t-here are multiple data items for the set-l
sort key, the sort key value for iblk must be consistent with the
sequence, types and sizes of the data items in the ddl sort key
specif ication. If RECORD-TYPE is part of the sort key, then the
name of the desired record type must appear as part of the iblk
sort key value; the host language variable holding the record
type name must be consistent with astring data item of 8bytes
in size.
If the cur rent member of the set-l has no owner (before the
current owner) whose sort key value matches the sort key value of
iblk, then the command status is 255. The owner immediately
preceding the current owner becomes the current owner of set-l,
as well as the current of run unit. The exceptions are when the
cur rent membe rof set-l has no owners or when iblk's sort key
value is less than the sort key value of the first owner of set-
l's current member. In these cases, the current owner of set-l
becomes null and the current of run unit becomes null.
Acommand status error is returned if auser does not have read
access to set-l and all data items that make up the owner sort
key.
Examples of Command Usage
block/direct ©.. ED =FPOSK ("set-l,iblk")
block/índirect ...ED =DMS ("FPOSk,set-l,iblk")
record/direct ... ED =FPOSK ("set-1",iblk)
record/indirect.. .ED =DMSD ("FPOSK, set-1",iblk)
28 .2 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -III: FIND COMMANDS -MDBS DMS MANUAL
=EiM Becord based on calc Key =
Command Arguments
P
FRK,rec,iblk
Currency Indicators
=: none c.hanqeq: cru<—— record having calc
key value
Description
Finci the occurrence oiE the indicated record type (rec) whose calc
key has avalue that matches the value of iblk's host language
variable (S) .If such an occurrence is found, it becomes the
current of run uní t. This command is valid only if rec has a
calc key clause in the DDL specification. Occurrences of rec
with duplicate calc key values may exist in the data base, if the
DDL specification declares that duplicates are allowed. If there
is more than one occurrence of rec whose calc key value matches
the iblk value, then FRK finds one of these duplicates and FDRK
can be used repeatedly to find each of the other duplicates.
The sequence, size and type of iblk's host language variables
must be consistent with the sequence, size and type of data items
that make up the calc key for rec. If the iblk value does not
match the calc key value for any occurrence of the rec record
type, then the command status is 255 and CRU becomes null. A
command status error is returned if auser does not have read
access to all data items that make up rec's calc key.
Examples of Command Usage
block/direct ... ED =FRK ("rec,iblk")
block/indirect ... ED =DMS ("FRK, rec, iblk")
record/direct ... ED =FRK ("rec", iblk)
record/indirect. . . ED =DMSD ("FRK,rec", iblk)
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 28 .3
6
MDBS DMS MANUAL -III: FIND COMMANDS -MDBS DMS MANUAL
This page intentionally left blank.
28.4 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS OMS MANUAL MDBS DMS MANUAL
IV. RETRIEVALCOMMANDS
A. Overview
The MDBS Data Manipulation Language supports twenty-eight data
retrieval commands. Each retrieval command has the effect of
transferring data trom arecord to ahost language variable(s) through -
the mechanism of adata block (or program record type). There are two
major groups of retrieval commands: those that get data From a
mirrmt record and those that obtain data from arecord that may not
have previously been current.
The first group is intended for situations where data need to be
retrieved from apreviously found record that is presently the current
owner of aset, the current member of aset, or the current of run
unit. This group of retrieval commands is composed of two subgroups.
l. get the values of ,aLl data items (i.e., fields) from the record
that is the current owner of an indicated set, the current member
of an indicated set, or the current of run unit. These values
are deposited in the host language variable(s) of aspecified
data block.
2. get the value of apartj,ct11Ar data item (i.e., field) from the
record that is the current owner of an indicated set, the current
member of an indicated set, or the current of run unit. This
data value is deposited in the host language variable of a
specified data block. Commands in this subgroup should be used
where maximum data independence is desired.
Tlze second major group of retrieval commands is intended for
situations where data needs to be retrieved from arecord that is not
presently current. Each of these commands obtains adesired record by
first making it the current owner of an indicated set, the current
member of an indicated set, and/or the current of run unit. Then the
values of ajj data items from that record are deposited in the host
language variable(s) of aspecified data block. This retrieval
approach can result in faster processing than using afind conunand
followed by acommand to get data from the found record, particularly
in multiuser environments.
For either retrieval approach, it is vital that the host language
variable(s) receiving retrieved data is consistent with the type and
size of the data item(s). Each data value is converted from the
internal MDBS form for the data item type into the consistent host
language form. If ahost language variable is of insufficient size to
hold the entire stored data value, acommand status error results.
However, MDBS.DMS does attempt to return as much of the data value as
possible into the host language variable. Where all data values of a
record are being retrieved at once, the host language variables
defined for the receiving data block must also conform with the
sequence of data items as defined for that record's type in the DDL.
Data security conditions, as defined in aDDL schema
specification, are automatically enforced when aretrieval command is
invoked. If the user of an application program attempts to perform a
retrieval that is inconsistent with that user's read access codes, a
command status will result which indicates that the retrieval was not
performed.
If any command status other than zero is returned, then no data
was retrieved by the command and the values of the data block's
variables are unchanged.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 29
MDBS DMS MANUAL -IV: RETRIEVAL COMMANDS -MDBS OMS MANUAL
B. Command Details
GETC GET data From Current of run unit GETG
Command and AEguInents
GETC,oblk
Currency Indicators
~: cru ch1Inqe(j: none
Description
All data values in the record that is the current of run unit are
returned in the host language variables of oblk. The types,
sizes and sequence of these variables must be consistent with the
data items that make up the record type For the current OF run
unit. Acommand status error is returned if auser does not have
read access to all data items that make up the record type for
the current of run unit.
Examples oft Conunand üsaqe
block/direct ... ED =GETC ("oblk")
block/indirect ... ED =DEIS ("GETC,oblk")
record/direct ... ED =GETC (oblk)
record/indirect... EC) =DMSD ("G2TC",oblk)
GEM =data from Member GE=
Command and Argument
GETM,set-1,oblk
Currency Indicators
9áM: CM(set-l) rhqnqpej· none
Description
All data values in the current member of set—l are returned in
the host language variables of oblk. The types, sizes and
sequence OF these variables must be consistent with the data
items that make up the member record type oÍl set-l. Acommand
status error is returned if auser does not have read access to
alldata itemsofthe member record type of set-l.
Examples of Command Usage
block/direct ... ED =GETM ("set-l,Qblk")
block/ináirect ... ED =DMS ("GETM,set-l,oblk")
recorá/áirect ... ED =GETM ("set-l",oblk)
record/indirect... ED =DMSD ("GETM,set-l",oblk)
3Q (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
b
MDBS DMS MANUAL -IV: RETRIEVAL COMMANDS -MDBS DMS MANUAL
GETQ GET data from Qwner =
Command and Argument
gETO,set-l,oblk
Currency Indicators
Uséd: CO(set-l) chang£g: none
Description
All data values inthe current owner of set-l are returned inthe
host language variables of oblk. The types, sizes and sequence
of these variables must be consistent with the data items that
make up the owner record type of set-l. Acommand status error
is returned if auser does not have readaccess to all data items
of the owner record type of set-l.
Examples of Command Usage
block/direct ... ED =GETO ("set-l,oblk")
block/indirect ... ED =DMS ("GETO,set-1,oblk")
record/direct ... ED =GETO ("set-l",oblk)
record/indirect... ED =DMSD ("GETO,set-l",oblk)
GEC Get Eield from Current of run unit GEC
Command and Arguments
GFC,itm,oblk
Currency Indicators
tl§wi: CRU Ch4Ág£!j: none
Description
The value of the itm data item (Eield) in the record that is the
current of run unit is returned in the host language variable of
oblk. The type and size of this variable must be consistent with
the type and size of itm in the DDL specification. Acommand
status error is returned if auser does not have read access to
the itm field.
Examples of Command Usage
block/direct ... ED =GFC ("itm,oblk")
block/indirect ... ED =OMS ("GFC,itm,oblk")
record/direct ... ED =GFC ("itm",oblk)
record/indirect... ED =DMSD ("GFC,itm",oblk)
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. 31
MDBS DMS MANUAL -IV: RETRIEVAL COMMANDS -MDBS DMS MANUAL
GEM Get Eield from lgember GEM
Command and Arguments
GFM,itm,set-l,ob1k
Currency Indicators
Aaqg: CM(set-l} cjjar]g2g: none
Description
The value of the item data item (field) in the current member of
set-l is returned in the host language variable of oblk. The
type and size of this variable must be consistent with the type
and size of itm in the DDL specification. Acommand status error
is returned if auser does not have read access to the itm field.
Examples of Command Usage
block/direct ... ED =GEM ("itm,set-l,oblk")
block/indirect ... ED =DMS ("GFM,itm,set-1,oblk")
record/direct ... ED =GFM ("itm,set-l",oblk)
recorá/indirect... ED =DMSD ("GFM,itm,set-l",oblk)
GEQ Get E: ielci from Qwner GEQ
Command and Arguments
GFO,itm,set-l,oblk
Currency Indicators
!l§ési: CO(set-l) CháiwU: none
Description
The value of the item data item (field) in the current owner of
set—l is returned in the host language variable of oblk. The
type and size of this variable must be consistent with the type
and size of itm in the DDL specification. Acommand status error
is returned if auser does not have read access to the itm field.
Examples of Command Usage
block/direct ... ED =GFO ("itm,set-l,oblk")
block/indirect ... ED =OMS ("GFO,itm,set-l,oblk")
record/áirect ... ED =GEO ("itm,set-l",oblk)
record/indirect... ED =DMSD ("GFO,itm,set-1",oblk)
32 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -IV: RETRIEVAL COMMANDS -MOBS DMS MANUAL
QRBK Qbta: ín Gµiplicate Eecord based on calc Key =
Command and Arguments
ODRK,rec,blk
Currency Indicators
Usea: CRU chAnqec]: CRü record having duplicate
calc key value
Description
The types, sizes and sequence of host language variables
designated for blk must be consistent with the data items defined
for rec. Before ODRK is invoked, the desired calc key value
should be assigned to the blk variab1e(s) that corresponds to the
calc key's data item(s).
JLE the current =üáik ís =i1!jjj JÚlMl QRRK u.inx/oked:
Obtain an occurrence of the same record type as the current of
run unit, and having acalc key value that matches the calc key
value held in blk's variable(s). If such arecord exists, it
becomes the new current of run unit and the obtained data values
are returned in the host language variables of blk. This command
is valid only if the record that is the current of run unit is an
occurrence of rec and rec has been definéd (in the DDL) as having
acalc key. The calc key value indicated by blk must duplicate
the calc key value of the current of run unit, otherwise a
command status error results, no record is obtained and the
current of run unit is not altered.
Use of ORK, followed by repeated use of ODRK, will obtain all
records of agiven record type having the same calc key value.
The order in which these are obtained is not guaranteed. If an
ODRK command is given when there are no more duplicates of a
particular calc key value, then the command status is 255, no
record is obtained, and the current of run unit becomes null.
If auser does not have read access to all of rec's data items,
then acommand status error results. The record is not obtained,
but it does become the current of run unit.
If =c\1rrent run aUE 1& Ájíü, yqhen QDEK.i.s. invQked: ODRK
has exactly the same effect as ORK.
Examples of Command Usage
block/direct ... ED =ODRK ("rec,blk")
block/indirect ... ED =DMS ("ODRK,rec,blk")
record/direct ... ED =ODRK ("rec",blk)
record/indirect... ED =DMSD ("ODRK,rec",blk)
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 32.1
MDBS DF!S MANUAL -IV: RETRIEVAL COÉ41·!ANDS -MDBS DMS MANUAL
=Qbtaín Eirst Member QEM
Command and Argwíients
OFM,set-l,oblk
Currency Indicators
y=d: CO(set-l) charÍqec7: CM(set-l) {—first member (set-l)
CRU C—first member (set-l)
Description
Thé first member connected to the current owner of set-l is
obtained. It becomes the current member of set-l and the current
of the run unit. Its data values are returned in the host
language variables of oblk. The types, sizes and sequence of
variables designated for oblk must conform to the data items
existing for the member record type. Which member is first
depends on the set-l member order, as specified with the DDL.
If the current owner of set-l has no member, then the command
status is 255, no record is obtained, the current of run unit
becomes null, and the current member of set-l is null. If auser
does not have read access to set-l, then acommand status error
is returned, no record is obtained, and the currency indicators
are unchanged. If auser has read access to set-l but not to all
data items of its member record type, then acommand status error
results. The currency indicators are changed, but no record is
obtained.
Examples of Command Usage
block/direct ... ED =OFM ("set-l,oblk")
block/indirect ... ED =DMS ("OFM,set-l,oblk")
record/áirect ... ED =OFE4 ("set-l",oblk)
record/indirect... ED =D!4SD ("OFb!,set-l",oblk)
32.2 Rev. 85A (C) COPYRIGHT 1981 l.licro Data Base Systems, Inc.
MDBS DMS MANUAL -IV: RETRIEVAL COPIELANDS -MDBS DMS MANUAL
QEQ Qbtain Eirst Qwner QEQ
Command and Arguments
OFO,set-l,oblk
Currency Indicators
UU: Cl·l(set-1) chanqeci: CO(set-l)~first owner (set-l)
CRU t—first owner (set-l)
Description
The first owner connected to the current member of set-l is
obtained. It becomes the current owner of set-l and the current
of the run unit. Its data values are returned in the host
language variables of oblk. The types, sizes and sequence of
variables designated for ob1k must be consistent with the data
items existing for the owner record type. tihich owner is first
depends on the set-l owner order, as specified with the ddl.
If the current member of set-l has no owner, then the command
status is 255, no record is obtained, the current of run unit is
null, and the current owner of set-l is null. If auser dces not
have read access to set_l, then acommand status error is
returned, no record is obtained, and currency indicators are
unchanged. If auser has read access to set-l but not to all
data items of its owner record type,- then acommand status error
results. The currency indicators are changeá, but no record is
obtained.
Examples of Command Usage
block/direct ... ED =OFO ("set-l,oblk")
block/indirect ... ED =deis ("OFO,set-l,oblk")
record/direct ... ED =OFO ("set-l",oblk)
recorá/indirect... ED =DFISD ("OFO,set-l",oblk)
(C) COPYRIGET 1981 Fjicro Data Base Systems, Inc. Rev. 85A 32.3
MDBS DMS MANUAL -IV: RETRIEVAL CCM?.1ANDS -MDBS DblS MANUAL
=Qbtain Last iSember =
Command and A,rguments
OLM,set-l,oblk ,
Currency Indicators
üáéá: CO(set-l) ch&nqea: CM(set-l) (last member (set-l)
CRU (last member (set-l)
Description
The last member connected to the current owner of set-l is
obtained. It becomes the current member of set-l and the current
of the run unit. Its data values are returned in the host
language variables of oblk. The types, sizes and sequence of
variables designated for oblk must be consistent with data items
existing for the member record type. which member is last
depends on the set-l member order, as specified with the DDL.
If the current owner of set-l has no member, then the command
status is 255, no record is obtained, the current of run unit
becomes null and the current member of set-l becomes null. If a
user does not have read access to set—l, then acommand status
error is returned, no record is obtained, aná the currency
indicators are unchanged. If auser has read access to set-l but
.not to all data items of its niember record type, then acommand
status error results. The currency indicators are changed, but
no record is obtained.
Examples of Command Usage
block/áirect ... ED =OLi·l ("set-l,oblk")
block/indirect .. .EC =DbiS ("OLt4,set-l,oblk")
record/direct ... ED =OLi4 ("set-l",oblk)
recorCi/indirect. ..ED =DC.ÍSD ("OLt'1,set-l" ,oblk)
32 .4 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -IV: RETRIEVAL COMMANDS -MDBS DMS MANUAL
QLQ Qbtain Last Qwner QLQ
Command and Arguments
OLO,set-1,oblk
Currency Indicators
!=d: CF4(set-l) c.hanqed: CO(set-l) (last owner (set-l)
CRU é-—iast owner (set-l)
Description
The last owner connected to the current member of set-l is
obtained. It becomes the current owner of set-l and the current
of the run unit. Its data values are returned in the host
language variables of oblk. The types, sizes and sequence of
variables designated for oblk must be consistent with data items
existing for the owner record type. which owner is last depends
on the set-l owner order, as specified with the DDL.
If the current member of set-l has no owner, then the command
status is 255, no record is obtained, the current of run unit
becomes null, and the current owner of set-l becomes null. If a
user does not have read access to set—l, then acommand status
error isreturned, no record is obtained, and no currency
indicators are changed. If auser has read access to set-l but
not to all data iteras of its owner record type, then acommand
status error results. The currency indicators are changed, but
no record is obtained.
Examples of Command Usage
block/direct ... ED =OLO ("set-l,ob1k")
block/indirect .. .ED =DEIS ("OLO,set-l,oblk")
recorá/direct ... ED =OLO ("set-l",oblk)
record/indirect... ED =D1·ÍSD ("OLO,set-l",oblk)
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 32.5
MDBS DMS MANUAL -IV: RETRIEVAL COMMANDS -MDBS DMS MANUAL
QML Qbtain Member based on data 1tem QM1
Command and Arguments
OMl,itm,set-l,blk
Currency Indicators
Tjsed: CO(set-l) chanqea: CM(set-l) first member(set-l)
CRU <""having data item value
Description
The types, sizes and sequence of host language variables
designated for blk must be consistent with the data items
existing for the member record type of set-l. Before OMI is
invoked, the desired item value should be assigned to the blk
variable that corresponds to itm. The system obtains the first
member record connected to the current owner of set-l, and having
the indicated value for itm. It becomes the current member of
set-l and the current of run unit. The obtained data values are
returned in the hOSt language variables of blk. I:Ethere are two
or more member records for the current owner of set-l, all having
the blk value for itm which one is first depends on the set-l
member order. The command ONMI can be used to obtain the next
member having the same value for itm.
If the value of blk's host language variable does not match the
itm value of any member record connected to the current owner of
set-l, then the command status is 255, no record is obtained, the
current member of set-l becomes null, and the current of run unit
becomes null. It auser does not have read access to set-l and
itm, then acomnand status error will result, no record will be
obtained, and currency indicators will remain unchanged. If a
user has read access to set-l and itm but not to all data items
of the member record type, then acommand status error results.
The currency indicators are changed, but no record is obtained.
Examples of Command Usage
block/direct ... ED =OMI ("itm,set-1,blk")
block/indirect ... ED =DMS ("OMl,itm,set-l,blk")
record/direct ... ED =OMI ("itm,set-1",blk)
record/indirect... ED =DMSD ("OMl,itm,set-l",blk)
32.6 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -IV: RETRIEVAL COMMANDS -MOBS DMS MANUAL
SZMák Qbtairi Member based on Sort Key QM8K
Command and Arguments
OMSk,set-l,blk
Currency Indicators
YSéá: CO(set-l) charlqeq: CM(set-i)( first member (set-l)
CRU having sort key value
Description
Set-l must have asorted member order. Tkie types, sizes and
sequence oE host language variables designated for blk must he
consistent with the data items existing for the member record
type of 8et-l. Before OMSK is invoked, the desired sort key
value should be assigned to the blk variable(s) that corresponds
to the sort key's data item(s). If RECORD-TYPE is part of the
sort key, then OMSK cannot be used in place of FMSK and GETC.
The system obtains the first member record connected to the
current owner of set-l and having the indicated sort key value.
This record becomes the current member of set-l and the current
of run unit. Its data values are returned in the host language
variables of blk.
If several member records for the current owner of set-l have the
same sort key value, the one that is first depends on the DDL
sort-clause specification for the set-l member order (either
LIFO, FIFO, or IMMATERIAL).
If the current owner of the set-l has no member whose sort key
value matches the sort key value of blk, then the command status
is 255 and no record is obtained. Tííe member whose sort key
value immediately follows the b1k sort key value becomes the
current member of set-l, as well as the current of run unit. Tlie
exceptions are when the current owner of set-l has no members or
when b1k's sort key value is greater than the sort key value of
the íast member of set-l's current owner. In these cases, the
current member of set-l becomes null and the current of run unit
becomes null.
Acommand status error is returned if auser does not have read
access to set-l and all data items that make up the member sort
key. No recorci is obtained and currency indicators are
unchanged. If auser has read access to set-l and the sort key
but not to all data items of the member record type, then a
command' status error is returned. Currency indicators are
changed, but no record is obtained.
Examples of Command Usage
block/áirect ... ED =OMSK ("set-l,blk")
block/indirect ... ED =DMS ("OMSk,set-l,blk")
record/direct ... ED =OMSK ("set-l",b1k)
record/indirect... ED =DMSD ("OMSk,set-l",blk)
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 32.7
MDBS DMS MANUAL -IV: RETRIEVAL COMMANDS -MDBS DMS MANUAL
=Qbtain Next jjember =
Command and Arguments
ONM,set-1,oblk .
Currency Indicators
jZSéá: CO(set-l) chanqea: CM(set-l)< next member(set-l)
CM(set-l) CRU (next member(set-l)
Description
LE =c'1rrent mmPmr siet-1 u=jáÁjÁ sUm =uirI'Tokeq:
The next member record (connected to the current owner of set-l)
following the current member of set-l is obtained. It becomes
the new current member of set-l and the current of run unit. Its
data values are returned in the host language variables of oblk.
The types, sizes and sequence of variables designated for oblk
must be consistent with data items existing for the member record
type. Which member record is logically next depends on the set-l
member order, as specified with the DDM
If the current member of set-l is the íast member for the current
owner of set-l, then ONM cannot find anext member. When there
is no next member for the current owner of set-l, the command
status is 255,'no record is obtained, the current member of set-l
becomes null, and the current of run unit becomes null. If a
user does not have read access to set-l, then acommand status
error is returned, no record is obtained, and the currency
indicators remain unchanged. If auser has read access to set-l
but not to all data items of its member record type, then a
command status error results. The currency indicators are
changed, but no record is obtained.
uthe current meFnber :Ñf't-i 1& miLL ~=la invc)kea: onm
has exactly the same e££ect as OFM.
Examples of Command Usage
block/direct ... ED =ONM ("set-l,oblk")
block/indirect ... ED =DMS ("ONM,set-l,oblk")
record/direct ... ED =ONM ("set-1",oblk)
record/indirect... ED =DMSD ("ONM,set-l",oblk)
32.8 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
b
MDBS DMS MANUAL -IV: RETRIEVAL COMMANDS -MDBS DMS MANUAL
QNKL Qbta: ini Next Member based on data 1tem =
Command and Arguments
ONMI,itm,set-l,blk
Currency Indicators
jZSéá: CO(set-l) chÁnqe(í: CM(set-l) next member(set-l)
CM(set-l) CRU <with item value
Description
The types, sizes and sequence of host language variables
designated for blk must be consistent with the data items
existing for the member record type of set-l. Before ONMI is
invoked, the desired item value should be assigned to the blk
variable that corresponds to itm.
IE the curren,t pljember m4-1 uAQK jájjjj jÚ&já QNMI la in¶/okea:
The system obtains the next member record connected to the
current owner of set-l and having the indicated value for itm.
This recorci becomes the current member of set-l and the current
of run unit. Tlie obtained data values are returned in the host
language variables of blk. If there are two or more member
records Eollowing the current member of 6et-l, all having the blk
value for itm, which one is next depends on the set-l member
order. If there is no next member with the indicated value for
itm, the command status is 255, no record is obtained, the
current member of set-l becomes null, and the current of run unit
becomes null. If auser does not have read access to both itm
and set-l, then acommand status error is returned, no record is
obtained, and currency indicators remain unchanged. If auser
has read access to set-l and itm but not to all member data
items, then acommand status error results. Currency indicators
-are changed, but no data values are retrieved.
JLE =c11rTent. lpemher m'f-l ujájiij jÚlqi1 la in'/opea:
ONMI has exactly the same effect as OMI. The first member record
connected to the current owner of set-l, and having avalue for
itm that matches the indicated blk value becomes the current
member of set-l.
Examples of Command Usage
block/direct ... ED =ONMI ("itm,set-l,blk")
block/indirect ... ED =DMS ("ONMI,itm,set-l,blk")
record/direct ... ED =ONMI ("itm,set-l",blk)
record/indirect... ED =DMSD ("ONMI,itm,set-l",blk)
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 32.9
MDBS DMS MANUAL -IV: RETRIEVAL COMMANDS -MDBS DMS MANUAL
nNMqr Qbtain 4ext Melnber based on Sort Key QNMqr
Command and Arguments
ONMSK,set-l,blk
Currency Indicators
ASU: CO(set-l) Chanqed: CM(set-l) next member
CM(set-1) CRU <—— (set-l) having
_sort key value
Description
Set-l must have asorted member order. The type, sizes and
sequence of host language variables designated for blk must be
consistent with the data items existing for the member record
type of set-l. Before ONMSK is invoked, the desired sort key
value should be assigned to the blk variable(s) that corresponds
to the sort key's data ítem(s). If RECORD-TYPE is part of the
sort key, then ONMSK cannot be used in place of FNMSK and GETC.
The system obtains the next member record (after the current
member) that has the indicated sort key value and is connected to
the current owner of set—l. This record becomes the current
member of set-l and the current of run unit. Its data values are
returned in the hoSt language variables of blk.
If set-l has no current member, then ONMSK behaves just as omsk.
If several member recorcts for the current owner of set-l have the
same sort key value, the one that is next depends on the DDL
sort-clause specification for the set-l member order (either
LIFO, FIFO, or IMMATERIAL).
If the current owner of the set-l has no member (after the
current member) whose sort key value matches the sort key value
of blk, then the command status is 255 and no record is obtained.
The next member immediately following the current member becomes
the current member of set-l, as well as the current of run unit.
The exceptions are when the current owner of set-l has no members
or when blk's sort key value is greater than the sort key value
of the last member of set-l's current owner. In these cases, the
current member of set-l becomes null and the current of run unit
becomes null.
Acommand status error is returned if auser does not have read
access to set-l and all data items that make up the member sort
key. No record is obtained and currency indicators are
unchanged. If auser has read access to set-l and the sort key
but not to all member data items, then acommand status error
results. The currency indicators are changed, but no data values
are retrieved.
Examples of Command Usage
block/direct ... ED =ONMSK ("set-1,blk")
block/indirect ... ED =DMS ("ONMSK,set-l,blk")
record/direct ... ED =ONMSK ("set-l",blk)
record/indirect... ED =DMSD ("ONMSK,set-l",blk)
32.10 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -IV: RETRIEVAL COMMANDS -MDBS DMS MANUAL
QNQ Qbtain Next Qwner QNQ
Command and Arguments
ONO, set-l,oblk
Currency Indicators
Us%: CM(set-l) chanqpd: co (set-l)< next owner (set-l)
CO (set-l) CRU <next owner(set-l)
Description
:=c!1rrent nYlner :síet'-1 1& =jjjúj jÚlQll QNQ 1& in¶/QPec1:
Tlie next owner record (connected to the current member of set-l)
following the current owner of set-l is obtained. Thi srecord
becomes the new current owner of set-l and the current oF run
unit. Its data values are returned in the host language
variables of oblk. The types, sizes and sequence of variables
designated for oblk must be consistent with data items existing
for the owner record type. Which owner record is logically next
áepenás on the set-l owner order, as specified with the DDL.
If the current owner of set-l is the last owner for the cur rent
member of set-l, then ONO cannot find anext owner. When there
is no next owner for the current member of set-l ,the command
status is 255, no record is obtained, the current owner of set-l
becomes null, and the current of run unit becomes null. If a
user does not have read access to set-l, then acommand status
error is returned, no record is obtained, and currency indicators
remain unchanged. If auser has read access to set-l but not to
all owner data items, then acommand status error results.
Cur rency indicators are changed, but no data values are
retrieved.
=c'lrrenr. ojf7ner of Áét"i ís míLL Umj QNQ uinvc}kea: ono
has exactly the same effect as OFO.
Examples of Command Usage
block/direct ... ED =ONO ("set-1,oblk")
block/indirect .. .ED =OMS ("ONO,set-l,oblk")
record/direct ... ED =ONO ("set-l",oblk)
record/indirect.. .ED =DMSD ("ONO, set-1",oblk)
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 32.11
MDBS DMS MANUAL -IV: RETRIEVAL COMMANDS -MOBS DMS MANUAL
QNQI Qbtain Mext Qwner based on data 1teIn QNQI
Command and Arguments
QNOI, ítm, set-l,blk
Currency Indicators
=: CM (set-l) chanqeq: co (set-l) ,next owner (set-l)
CO (set-l) CRU 'with item value
Description
TPie types, sizes and sequence of host language variables
designated for blk must be consistent with the data items
existing fi or the owner record type of set-l. Bef ore qnoi is
invoked, the desired item value should be assigned to the blk
variable that corresponds to itm.
LE :kh,e c1lrrent Qwner :m4-1 u=Ájiij jÚl9á QNQI uin¶/oke(í:
The system obtains the next owner record connected to the current
member of set-l and having the indicated value for itm© This
record becomes the current owner of set-i and the current of run
unit. Tlie obtained data values are returned in the host language
variable of blkó If there are two or more owner records
following the current owner of set-l, all having the blk value
for itm, which one is next depends on the set-l owner order. If
there is no next owner with the indicated value for itjñ, then the
command status is 255, no record is obtained, the current owner
of 8et-l becomes null, and the current of run unit becomes null.
If auser does not have read access to both itm and set-l, then a
command status error is returned, no record is obtained, and
currency indicators remain unchanged. If auser has read access
to set-l and itm but not to all owner data items, then acommand
status error results. Currency indicators are changed, but no
.data are retrieved.
LE the cÍ1rrent owner rmt-1 unúLL Ueij QNQI uinvokec1: ONOI
has exactly the same effect as OOI. The f irst owner record
connected to the current member of set~l, and having avalue for
itm that matches the indicated bík value becomes the current
owner of set—l.
Examples of Command Usage
block/direct ... ED =ONOI ("itm,set-l,b1k")
block/indirect ...ED =DMS ("ONOI, itm, set-l, blk")
record/direct ... ED =ONOI ("itm,set-l",blk)
record/indirect. .. ED =DMSD ("ONOl,itm, set-l",blk)
3 2 .12 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
mdbs dms manual -iv: retrieval commands -mobs dms manual
qppcp Qbtain jjext Qwner based on aort Key mimx,
Command and Arguments
ONQSK,set-l,blk
Currency Indicators
4: CO(set-l) Crh.anqed: CO(set-l) "next owner(set-1)
CM(set-l) CRU having sort key
value
Description
Set-l must have asorted owner order. The types, sizes and
sequence of host language variables designated for blk must be
consistent with the data items existing for the owner record type
of set-l. Before ONOSK is invoked, the desired sort key value
should be assigned to the blk variab1e(s) that corresponds to the
sort key's data ítem(s). IE RECORD-TYPE is apart of the sort
key, then ONOSK cannot be used in place of FNOSK and GETC. Tite
system obtains the next owner record (after the current owner)
that has the indicated sort key value and is connected to the
current member of set-l. This record becomes the current owner
of set~l and the current of the run unit. Its data values are
returned in the host language variables of blk.
If set-l has no current owner, then ONQSK behaves just as oosk.
If several owner records for the current member of set-l have the
same sort key value, the one that is next depends on the DDL
sort-clause specification for the set-l owner orcter (either LIFO,
fifo, or immaterial).
If the current member of the set-l has no owner (after the
current owner) whose sort key value matches the sort key value of
blk, then the command status is 255 and no record is obtained.
The next owner immediately following the current member becomes
the current owner of set—l, as well as the current of run unit.
The exceptions are when the current member of set-l has no owners
or when blk's sort key value is greater than the sort key value
of the last owner of set-l's current member. In these cases, the
current owner of set-l becomes null and the current of run unit
becomes null.
Acommand status error is returned if auser does not have read
access to set-l and all data items that make up the owner sort
key. No record is obtained and currency indicators are
unchanged. If auser has read access to set-l and the sort key
but not to all owner data items, then acommand status error
results. Currency indicators are changed, but no data are
retrieved.
Examples of Command Usage
block/direct ... ED =ONOSK ("set-l,blk")
block/indirect ... ED =DMS ("ONOSk,set-l,blk")
record/direct ... ED =ONOSK ("set-l",blk)
record/indirect... ED =DMSD ("ONOSk,set-l",blk)
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 32.13
MDBS DMS MANUAL -IV: RETRIEVAL COMMANDS -MOBS DMS MANUAL
QQI Qbtain Qwner based on data 1teIn QQI
Command and Arguments
OOI,itm,set-l,blk ,
Currency Indicators
=g: CM(set-l) cha,nqeq: CO(set-l) ,first owner(set-1)
CRU 'having data item value
Oescription
The types, sizes and sequence of host language variables
designated for blk must be consistent with the data items
existing for the owner record type of set-l. Before OOI is
invoked, the desired item value should be assigned to the blk
variable that corresponds to itm. The system obtains the first
owner record connected to the current member of set-l and having
the indicated value for itm. This record becomes the current
owner OiE set-l and the current of run unit. The obtained data
values are returneci in the host language variables of blk. If
there are two or more owner records for the current member of
set-l, all having the blk value for itui, which one is first
depends on the set-l owner order. The command ONOI can be used
to obtain the next owner having the same value for itm.
If the value of blk's host language variable for itm does not
match the itm value of any owner record connected to the current
member of set-l, then the command status is 255, no record is
obtained, the current owner of set-l becomes null, and the
current of run unit becomes null. If auser does not have read
access to both itjñ and set-l, then acommand status error will
result, no record will be obtained, and currency indicators will
remain unchanged. If auser has read access to set-l and itin but
not to all owner data items, then acommand status error results.
Currency indicators are changed, but no data are retrieved.
Examples of Command Usage
block/direct ... ED =OOI ("itm,set-1,blk")
block/indirect ... ED =DMS ("OOI,itm,set-l,blk")
record/direct ... ED =OOI ("itm,set-l",blk)
record/indirect... ED =DMSD ("OOI,itm,set-l",blk)
P
32.14 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -IV: RETRIEVAL COMMANDS -MDBS DMS MANUAL
QQSK Qbtain Qwner based on Sort Key
Command and Arguments
OOSK,set-l,blk
Currency Indicators
=g: CM(set-l) ch(qnqed: CO(set-l), first owner (set-l)
CRU "having sort key value
Description
Set-l must have asorted owner order. The types, sizes and
sequence of host language variables designated for blk must be
consistent with the data items existing for the owner record type
of set-l. Before OOSK is invoked, the desired sort key value
should be assigned to the blk variab1e(s) that corresponds to the
sort key's data iteín(s). If RECORD-TYPE is part of the sort key,
then OOSK cannot be used in place of FOSK and GETC. The system
obtains the first owner record connected to the current member of
set-l and having the indicated sort key value. This record
becomes the current owner of set-l and the current of the run
unit. Its data values are returned in the host language
variables of blk.
If several owner records for the current member of set-l have the
same sort key value, the one that is first depends on the DDL
sort-clause specification for the set-l owner order (either LIFO,
FIFO, or IMMATERIAL).
If the current member of the set-l has no owner whose sort key
value matches the sort key value of blk, then the command status
is 255 and no record is obtained. The owner whose sort key value
immediately follows the blk sort key value becomes the current
owner of set-l, as well as the current of run unit. The
exceptions are when the current member of set-l has no owners or
when blk's sort key value is greater than the sort key value of
the last owner of set-l's current member. In these cases, the
current owner of set-l becomes null and the current of run unit
becomes null.
Acommand status error is returned if auser does not have read
access to set-l and all data items that make up the owner sort
key. No record is obtained and currency indicators are
unchanged. If auser has read access to set-l and the sort key
but not to all owner data items, then acommand status error
results. Currency indicators are changed, but no data are
retrieved.
Examples of Command Usage
block/direct ... ED =OOSK ("set-l,blk")
block/indirect ... ED =DMS ("OOSK,set-l,blk")
record/direct ... ED =OOSK ("set-l",b1k)
record/indirect... ED =DMSD ("OOSK,set-l",blk)
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 32.15
t
MDBS DMS MANUAL -IV: RETRIEVAL COMMANDS -MDBS DMS MANUAL
QU Qbtain 2rior Member =
Command and Arguments
OpM,set-l,oblk
Currency Indicators
jLáéd: CO(set-l) ch.anqed: CM(set-l)< prior meínber(set-l)
CM(set-l) CRU <prior member(set-l)
Description
JLE the c\1rrent me1pr)er ¶f't-i ja jáQt AJJÁÁ jÜléA QEM uin\Tc)PF!r1:
The prior member record (connected to the current owner of set-l)
preceding the current member of set-l is obtained. This record
becomes the new current member of set-l and the current of run
unit. Its data values are returned in the host language
variables of oblk. The types, sizes and sequence of variables
desígnated for oblk must be consistent with data items existing
tor the member record type. Which member record is logically
prior depends on the set-l member order, as specified with the
DDL.
If the current member of set-l is the first member for the
current owner of set-l, then OPM cannot find aprior member.
When there is no prior member for the current owner of set-l,
then the command status is 255, the current member of set-l
becomes null, and the current of run unit becomes null. If a
user does not have read access to set-l, then acommand status
error is returned and the currency indicators remain unchanged.
If auser has read access to set-l but not to all member data
items, then acommand status error results. Currency indicators
are changed, but no data are retrieved.
JL£ =mirrmit. memher ¶ét~i ís mLLl Qím =La invQked: OPEl
has exactly the same effect as QLM.
Examples of Command Usage
block/direct ... ED =OPM ("set-l,oblk")
block/indirect ... ED =DMS ("OPM,set-1,oblk")
record/direct ... ED =OPM ("set-1",oblk)
record/indirect... ED =DMSD ("OPM,set-1",oblk)
32.16 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -IV: RETRIEVAL COMHANDS -MDBS DMS MANUAL
Qbtain Erior Zember based on data Ltem QEML
Command and Arguments
OpMl,itm,set-l,blk
.
Currency Indicators
y=a: CO(set-l) chAnqed: CM(set-jjc prior member(set-1)
CM(set-l) CRU with item value
Description
The types, sizes and sequence of host language variables
designated for blk must be consistent with the data items
existing for the member record type of set-l. Before OPMI is
invoked, the desired item value should be assigned to the blk
variable that corresponds to itm.
LE @c11rrent. memher Qt set-l La =ijjjjÁ Uml QEMJL la in'Tc)red:
The system obtains the prior member record connected to the
current owner of set-l and having the indicated value for itm.
This record becomes the current member of set-l and the current
of run unit. The obtained data values are returned in the host
language variable of blk. If there are two or more member
records preceding the current member of set-l, all having the blk
value for itm, which one is prior depends on the set-l member
order. If there is no prior member with the indicated value for
itm, then the command status is 255, no record is obtained, the
current member of set-l becomes null, and the current of run unit
becomes null. If auser does not have read access to both itm
and set-l, then acommand status error is returned, no record is
obtained, and currency indicators remain unchanged. If auser
has read access to itm and set-l but not to all member data
items, then acommand status error results. Currency indicators
are changed, but no data are retrieved.
IfWcl]rrenr. memherQ£sf!t-1 unu1whmQEM1uínmo@]ua: The
last member record connected to the current owner of set—l, and
having avalue for itm that matches the indicated blk value
becomes the current member of set-l.
Examples of Command Usage
block/direct ... ED =OPMI ("itm,set-l,blk")
block/indirect ... ED =DMS ("OPMl,itm,set-l,blk")
record/direct ... ED =OPMI ("itm,set-1",blk)
record/indirect... ED =DMSD ("OPMl,itm,set-1",blk)
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 32.17
MDBS DMS MANUAL -IV: RETRIEVAL COMMANDS -MDBS DMS MANUAL
ñpj¶Y Qbtain EHor Member based on Sort Key QPMGY
Command and Arguments
OPMSk,set-l,b1k
Currency Indicators
9sq± CO(set-l) chÁnqed: CM(set-l) "prior member
CM(set-l) CRU ((set-l) having
sort key value
Description
Set-l must have asorted member order. The types, sizes and
sequence of host language variables designated for blk must be
consistent with the data items existing in the member record type
for set-l. Before OPMSK is invoked, the desired sort key value
should be assigned to the blk variable(s) that corresponds to the
sort key's data item(s). If RECORD-TYPE is part of the sort key,
then OPMSK cannot be used in place of EPMSK and GETC. The prior
member record (after the current member) that has the sort key
value of blk and that is connected to the current owner of set-l
becomes the current member of set-l and the current of the run
unit.
If set-l has no current member, then the last member having the
sort key value is found. Iii several member records for the
currentowner of set-l havethe same sortkeyvalue, theone that
is prior depends on the DDL sort-clause specification for the
set-l member order (either LIFO, FIFO, or IMMATERIAL).
If the current owner of the set-l has no member (before the
current member) whose sort key value matches the sort key value
of blk, then the command status is 255 and no record is obtained.
The member immediately preceding the current member becomes the
current member of set-l, as well as the current of run unit. The
exceptions are when the current owner of set-l has no members or
when blk's sort key value is lower than the sort key value of the
first member of set-l's current owner. In these cases, the
current member of set-l becomes null and the current of run unit
becomes null.
Acommand status error is returned if auser does not have read
access to set-l and all data items that make up the member sort
key. No record is obtained and currency indicators remain
unchanged. If auser has read access to set-l and the sort key
but not to all member data items, then acommand status error
results. Currency indicators are changed, but no data are
retrieved.
Examples of Conunand Usage
block/direct ... ED =OPMSK ("set-l,blk")
block/indirect ... ED =DMS ("OPMSk,set-l,b1k")
record/direct ... ED =OPMSK ("set-l",b1k)
record/indirect... ED =DMSD ("OPN!Sk,set-l",blk)
32.18 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
~
MDBS DMS MANUAL -IV: RETRIEVAL COMMANDS -MDBS DMS MANUAL
QEQ Qbtain 2Xior Qwner QEQ
Command and Arguments
OPO,set-l,oblk
Currency Indicators
CM(set-l) chanqed: CO(set-1)< prior owner(set-l)
CO(set-l) CRU (prior owner(set-l)
Description
LE =cl1rrent nyner uset-l ianQknjLLL w.hmlQEQía i.nxTc'kec1:
TPie prior owner record (connected to the current member of set-l)
preceding the current owner of set-l is obtained. This record
becomes the new current owner of set-l and the current of run
unit. Its data values are returned in the host language
variables of oblk. The types, sizes and sequence of variables
designated for oblk must be consistent with data items existing
for the owner record type. which owner record is logically prior
depends on the set-l owner order, as specified with the DDL.
If the current owner of set-l is the first owner for the current
member of set-l, then CIPO cannot find aprior owner. When there
is no prior owner for the current member of set-l, then the
command status is 255, no record is obtained, the current owner
of set—l becomes null, and the current of run unit becomes null.
If auser does not have read access to set-l, then acommand
status error is returned and currency indicators remain
unchanged. If auser has read access to set-l but not to all its
owner data items, then acommand status error results. Currency
indicators are changed, but no data are retrieved.
L£=c}1rrenr. c)wner QjÉ ";ef.-1 ísnaLLw4QEQU in'Tc)kec1: OPO
has exactly the same effect as OLO.
Examples of Command Usage
block/direct ... EO =OPO ("set-1,oblk")
block/indirect ... EO =DMS ("OPO,set-l,oblk")
record/direct ... EO =OPO ("set-l",oblk)
record/indirect... EO =DMSD ("OPO,set-l",ob1k)
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 32.19
MDBS DMS MANUAL -IV: RETRIEVAL COMMANDS -MDBS DMS MANUAL
QESLL Qbtain Erior Qwner based on data ftem QÍEQL
Command and Arguments
OPOI,itm,set-1,blk
Currency Indicators
CM(set-l) chanqeq: CQ(set-l) prior owner(set-l)
CO(set-1) CRU <with item value
Description
The type, sizes and sequences of host language variables
designated for blk must be consistent with the data items
existing for the owner record type of set-l. Before OPOI is
invoked, the desired item value should be assigned to the blk
variable that corresponds to itm.
JI£ =curren,t owner fiét"i la nsú: =LL iüm qeqi Áa invopea:
The system obtains the prior owner record connected to the
current member of set-l and having the indicated value for itm.
This record becomes the current owner of set-l and the current of
run unit. Tlíe obtained data values are returned in the host
language variable of blk. If there are two or more owner records
preceding the current owner set-l, all having the blk value
for itm, which one is prior depends on the set-l owner order. If
there is no prior owner with the indicated value for itm, then
the command status is 255, no record is obtained, the current
owner of set-l becomes null, and the current of run unit becomes
null. If auser does not have read access to both itm and set-l,
then acommand status error is returned, no record is obtained,
and currency indicators remain unchanged. If auser has read
access to itm and set—l, but not to all owner data items, then a
command status error results. Currency indicators are changed,
but no data are retrieved.
LE the cuumt o\qne.r fíét"i uI1JLJÁ Umz QEQI 1& iñ'M'M: The
last owner record connected to the current member of set-l, and
having avalue for itm that matches the indicated blk value
becomes the current owner of set"l.
Examples of Command Usage
block/direct ... ED =OPOI ("itm,set-l,blk")
block/indirect ... ED =DMS ("OPOI,itm,set-l,blk")
record/direct ... ED =OPOI ("itm,set-l",blk)
record/indirect... ED =DMSD ("OPOI,itm,set-l",blk)
32.20 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -IV: RETRIEVAL COMMANDS -MDBS DMS MANUAL
npn'jp Qbtain Erior Qwner based on Sort Key npnw
Command and Arguments
OPOSK,set-l,blk .
Currency Indicators
jL=a: CO(set-l) Crhanqrd: CO(set-l) "prior owner(set-l)
CM(set-l) CRU chaving sort key
_value
Description
Set-l must have asorted owner order. The types, sizes and
sequence of host language variables designated for blk must be
consistent with the data items existing for the owner record type
of 8et-l. Before OPOSK is invoked, the desired sort key value
should be assigned to the blk variable(s) that corresponds to the
sort key's data item(s). If RECORD-TYPE is apart of the sort
key, then OPOSK cannot be used in place of FPOSK and GETC. TM
system obtains the prior owner record (before the current owner)
that has the indicated sort key value and is connected to the
current member of set-l. This record becomes the current owner
of set-l and the current of the run unit. Its data values are
returned in the host language variables of blk.
If set-l has no current owner, then the last owner having the
sort key value is found. If several owner records for the
current member of set-l have the same sort key value, the one
that is prior depends on the DDL sort-clause specification for
the set-l owner order (either LIFO, FIFO, or IMMATERIAL).
If the current member of the set-l has no owner (before the
current owner) whose sort key value matches the sort key value of
blk, then the command status is 255 and no record is obtained.
The owner immediately preceding the current member becomes the
current owner of set-l, as well as the current of run unit. Tlie
exceptions are when the current member of set-l has no owners or
when blk's sort key value is less than the sort key value of the
first owner of set-l's current member. In these cases, the
current owner of set-l becomes null and the current of run unit
becomes null.
Acommand status error is returned if auser does not have read
access to set-l and all data items that make up the owner sort
key. No record is obtained and currency indicators are
unchanged. If auser has read access to set-l and the sort key
but not to all owner data items, then acommand status error
results. Currency indicators are changed, but no data are
retrieved.
Examples of Command Usage
block/direct ... ED =OPOSK ("set-l,blk")
block/indirect ... EC =DMS ("OPOSK,set-l,blk")
record/direct ... ED =OPOSK ("set-l",blk)
record/indirect... ED =DMSD ("OPOSK,set-l",blk)
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 32.21
X
MDBS DMS MANUAL -IV: RETRIEVAL COMMANDS -MDBS OMS MANUAL
QRK Qbtain RecQrd based on calc Key m
Command Arguments
ORk,rec,b1k
Currency Indicators
jl=a: none chanqe(i: cru< record having calc
key value
Description
This command is valid only if rec has acalc key clause in the
DDL specification. The types, sizes and sequence of host
language variables designated for blk must be consistent with the
data items defined for rec. Before ORK is invoked, the desired
calc key value should be assigned to the blk variable(s) that
corresponds to the calc key's data item(s). The system obtains
an occurrence of rec having the indicated calc key value. This
record becomes the current of run unit.
Occurrences of rec with duplicate calc key values may exist in
the data base, if the DDL specification declares that duplicates
are allowed. If there is more than one occurrence of rec whose
calc key value matches the indicated value, then ORK obtains one
of these duplicates and ODRK can be used repeatedly to obtain
each of the other duplicates.
If there is no rec occurrence having the indicated calc key
value, then the command status is 255, no record is obtained and
CRU becomes null. Acommand status error is returned if auser
does not have read access to all data items that make up rec's
calc key. No record is obtained and currency indicators remain
unchanged. If auser has read access to the calc key but not to
all rec data items, then acommand status error results. The
current of run unit changes, but no data are retrieved.
Examples of Command Usage
block/direct ... ED =ORK ("rec,blk")
block/indirect ... ED =DMS ("ORK,rec,b1k")
record/direct ... £0 =ORK ("rec",blk)
record/indirect... ED =DMSD ("ORk,rec",blk)
32.22 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL MDBS DMS MANUAL
V. MODIFYCOMMANDS
A. Overview
Six commands are available for modifying the data values of a-
record occurrence. Each command has the effect of transferring data
from ahost language variable(s) into amittmt record through the
mechanism of adata block (or program record type). Arecord must be
either the current owner of aset, the current member of aset, or the
current of run unit before its data can be modified. In other words,
the record must have been found before its data can be modified.
Modify commands never alter any currency indicator. The modify
commands fall into two groups.
l. Put new values into all data items (i.e., fields) for the
record that is the current owner of an indicated set, the
current member of an indicated set, or the current of run
unit. MDBS.DMS obtains these new values from the host
language variable(s) of aspecified data block.
2. Put a new value into apaLticjjlaL data item (i.e., field for
the record that is the current owner of an indicated set,
the current member of an indicated set, or the current of
run unit. MDBS.DMS obtains the new value from the host
language variable(s) of aspecified data block. Commanás in
this group should be used where maximum data independence is
desired.
In either case, it is vital that the host language variables,
containing data to be put into arecord, are consistent with the type
and size of the target data items. where áll data values of arecord
are being modified at once, the host language variables defined for
the sending data block must also conform to the sequence of data items
as defined for that record's type in the DDL.
If adata value being modified is part of asort key, MDBS.DMS
automatiqally maintains the sorted order.
Adata item's value cannot be modified with the modify commands
if this is part of acalc key. The modification can be accomplished
by retrieving the record's contents, deleting the record from the data
base, creating anew record having the old record's contents (except
for the new calc key value), and re-establishing any relevant set
connections.
Data security conditions, as defined in aDDL schema
specification, are automatically enforced when adata modification
command is invoked. If the user of an application program attempts to
perform a"put" that is inconsistent with that user's write access
codes, acommand status will result which indicates that the
modification was not performed.
If adata base has multiple areas, then all areas which permit I
pointer indices must be on-line during the execution of data
modification commands
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 83A 33
MDBS DMS MANUAL -V: MODIFY COMMANDS -MDBS DMS MANUAL
Data integrity conditions, as defined in aDDL schema
specification, are automatically enforced when adata modification
command is invoked. If an attempt is made to store anew data item
value that is outside of the data item's feasible range of values,
then acommand status will result which indicates that the -
modification was not performed.
If any command status other than zero is returned, then no data
in the record (current owner, current member, or current of run unit)
was modified.
B. Command DetaHs
EEC Eút data into Eield of Cjirrent of run unit EEC
Command and Arguments
PFC,itm,iblk
Currency Indicators
Raqg: cru ch,augeg: none
t
Description
The value of the ib1k host language variable is put into the itm
field of the record that is current of run unit. The type and
size of this variable must be consistent with itin. Acommand
status error is returned if the user does not have write access
to itm and to the area containing the record to be changed. A
command status error is also returned if the value of iblk's
variable is outside of itm's feasibility ranqe.
Examples OE Command Usage
block/direct ... ED =PFC ("itm,ib1k")
block/indirect ... ED =D9S ("PFC,itm,iblk")
record/direct ... ED =PFC ("itm",iblk)
record/indirect... ED =DMSD ("PFC,itm",iblk)
EU 2ut data into Eield of Member =
Command and Arguments
PFM,itm,set-l,iblk
Currency Indicators
tIsQg: CM(set-1) chárjgeg: none
34 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -V: MODIFY COMMANDS -MDBS DMS MANUAL
Description
The value of the ib1k host language variable is put into the itm
field of the current member of set—l. Acommand status error is
returned if the user does not have write access to itm andto the
area containing the record to be changed. Acommand status error -
is also returned if the value of iblk's variable is outside of
itm's feasibility range.
Examples of Command Usage
block/direct ... ED =PFM ("itm,set-l,iblk")
block/indirect ... ED =OMS ("PFM,itm,set-l,iblk")
record/direct ... ED =PFM ("itm,set-l",ib1k)
record/indirect... ED =DMSD ("PFM,itm,set-l",iblk)
REQ Eut data into Eield of Qwner REQ
Command and Arguments
PFO,itm,set-l,iblk
Currency Indicators
tLaQsj: CO(set-l) ChaQg£d: none
Description
The value of the ib1k host language variable is put into the itm
field of the current owner of set—l. Acommand status error is
returned if the user does not have write access to itm andto the
area containinq the record to be changed. Acommand status error
is also returned if the value of ib1k's variable is outside of
itm's feasibility range.
Examples of Command Usage
block/áirect ... ED =PFO ("itm,set-l,iblk")
block/indirect ... ED =DMS ("PFO,itm,set-1,iblk")
record/direct ... ED =PFO ("itm,set-l",iblk)
record/indirect... ED =DMSD ("PFO,itm,set-l",iblk)
EJJT data into Current of run unit EñTC
Command and Arguments
PUTC,iblk
Currency Indicators
tLáé9: cru Charjg£sj: none
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. 35
MDBS DMS MANUAL -V: MODIFY COMMANDS -MDBS DMS MANUAL
Description
Data values o: Ethe iblk host language variables are put into the
record that is the current of run unit. The types, sizes and
sequence of these variables must be consistent with the data
items that make up the record type for the current of run unit.
Acommand status error is returned if the user does not have
write access to all data items that make up the record type for
the current of run unit and to the area containing the record to
be changed. Acommand status error is also returned if the value
of an iblk variable is outside of the feasibility range defined
for the corresponding data item.
Examples of Command Usage
block/direct ... ED =PUTC ("iblk")
block/indirect ... ED =OMS ("PUTC,iblk")
record/direct ... ED =PUTC (iblk)
record/indirect... ED =DMSD ("PUTC",ib1k)
EtlT data into Member
Command and Arguments
PUTM,set-l,iblk
Currency Indicators
tláM: CM(set-l) chanmk none
Description
Data values of the ib1k host language variables are put into the
current member of set-l. The types, sizes and sequence of these
variables must be consistent with the data items that make up the
member record type for set-l. Acommand status error is returned
if the user does not have write access to all data items that
make up the member record type and to the area containing the
record to be changed. Acommand status error is also returned if
the value of an ib1k variable is outside the feasibility range
defined for the corresponding data item.
Examples of Command Usage
block/direct ... ED =PUTM ("set-l,iblk")
block/indirect ... ED =DMS ("pUTM,set-l,iblk")
record/direct ... ED =PUTM ("set-l",iblk)
record/indirect... ED =DMSD ("pUTM,set-l,"iblk)
36 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -V: MODIFY COMMANDS -MDBS DMS MANUAL
UT data into Qwner RSITQ
Command and Arguments
-..
PUTO,set-l,iblk
Currency Indicators
RSC9: CO(set-l) cb@ng2g: none
Description
Data values of the iblk host language variables are put into the
current owner of set—l. The types, sizes and sequence of these
variables must be consistent with the data items that make up the
owner record type for set-l. Acommand status error is returned
if the user does not have write access to all data items that
make up the owner record type and to the area containing the
record to be changed. Acommand status error is also returned if
the value of an iblk variable is outside the feasibility range
defined for the corresponding data item.
Examples of Command Usage
block/direct ... ED =PUTO ("set-l,iblk")
blockjindirect ... ED =OMS ("PUTO,set-l,iblk")
recorá/direct ... ED =PUTO ("set-l",iblk)
record/indirect... ED =DMSD ("PUTO,set-1,"iblk)
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. 37
MDBS DMS MANUAL -V: MODIFY COMMANDS -MDBS DMS MANUAL
This page intentionally left blank.
38 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MOBS DMS MANUAL MDBS DMS MANUAL
VI. ASSIGNMENTCOMMANDS
A. Overview
Assignment commands allow an application programmer to assign a
particular record (that has been previously found) to acurrency
indicator. Together with the find commands, the assignment commands
form the basis for "navigating" through the record occurrences in a
data base. As an example, suppose that adept (department) record
type owns an EMP (employee) record type through a1: N set named
CONTAINS. Afind command can be used to find aparticular occurrence
of DEPT, making that occurrence the current of run unit. An
assignment command (SOC) can then be used to set the current owner of
CONTAINS to be the same record as the current of run unit. This
leaves the program poised to find various employees (members of
CONTAINS) that are related to aparticular department (the current
owner of CONTAINS). The assignment commands fall into four major
groups.
l. Assign the new current of run unit to be the same as:
the current owner of aparticular set,
the current member of aparticular set,
the current record OF aparticular user-defined
indicator, or
apreviously saved current of run unit.
The current of run unit can also be set to null and can be
saved in the form of adata base key. It can also be set to
null.
2. Assign the new current member of aparticular set to be the
same as:
the current of run unit,
the current member of aparticular set,
the current owner of aparticular set, or
Ithe current record of aparticular user-defined
indicator.
The current member of any set can also be set to null.
3. Assign the new current owner of aparticular set to be the
same as:
the current of run unit,
the current member of aparticular set,
the current owner of aparticular set, or
the current record of aparticular user-defined
indicator.
The current owner of any set can also be set to null.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 39
MDBS DMS MANUAL -VI: ASSIGNMENT COMMANDS -MDBS DMS MANUAL
4. Assign the current record of aparticular user-de£ined
indicator to be the sanie as:
the current of run unit,
.the current member of aparticular set,
the current owner of aparticular set, or
the current record of aparticular user-defined
indicator.
Auser-defined indicator can also be set to null.
With the exception of SOE and SON, any assignment command that
sets the current owner of set-l to be the same as some other currency
indicator also automatically performs FFM, set-l. With the exception
of SME and SMN, any assignment command that sets the current member of
set-l to be the same as some other currency indicator also
automatically performs FFO, set-l. The DBENV command can be used to
suppress the automatic FFM and FFO operations for assignment commands.
Instead of FFM, the current member becomes null. Instead of FFO, the
current owner becomes null. Setting arun unit's environment in this
way may allow the program to be more compact if it needs to loop
through owners or members of aset.
If auser does not have read access to ali sets that are
specified as arguments to an assignment command, then acommand status
error results and no currency indicator is altered.
40 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -VI: ASSIGNMENT COMMANDS -MDBS DMS MANUAL
B. Command Details
,8CIl Set Sjnxent of run unit to Qata base key =
P
Command and Arguments
SCD,iblk
Currency Indicators
tláM: none chanqed: cru< data base key
Description
The value of iblk's host language variable becomes the new
current of run unit. Normally, the value will be adata base key
that was previously saved by the SDC command. If the system
detects that thevalue isnotavalid data base key, then command
status error 49 results for SCD and the current of run unit
remains unchanged. The integrity of the data base itself will
not be damaged.
In most environments, the iblk host language variable must be
consistent with afour-byte binary data item. If some other type
or size is necessary for aparticular environment, then the
difference is described in the pertinent system specific manual.
Examples of Command Usage
block/direct ... EO =SCD ("iblk")
block/indirect ... EO =DNIS ("SCD,ib1k")
record/direct ... EO =SCD (iblk)
record/indirect... EO =DMSD ("SCD",iblk)
SCM Get Current of run unit based on E!ember SCM
Command and Arguments
SCM,set-l
Currency Indicators
CM(set-l) ch&nqed: CRUc CM(set-l)
Description
The record that is presently the current member of set-l becomes
the new current of run unit. The current member of set-l remains
unchanged. If the user does not have read access to set-l, a
command status error is returned and the current of run unit is
unchanged.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 40.1
6
MDBS DMS MANUAL -VI: ASSIGNMENT COMMANDS -MDBS DMS MANUAL
Examples of Command Usage
block/direct ... ED =SCM ("set-l")
block/indirect ... ED =DMS ("SCM,set-l")
record/direct ... ED =SCM ("set-l")
record/indirect... ED =DMS ('"SCM,set-l")
SCN áet Current of run unit to Null SCN
Command and Arguments
SCN (no arguments)
Currency Indicators
none chñnqp(i: cru< null
Description
The current of run unit becomes null.
Examples of Command Usage
block/direct ... ED =SCN ( )
block/indirect ... ED =DMS ("SCN")
record/direct ... ED =SCN ( )
record/indirect... ED =DMS ("SCN")
SCQ áet Current of run unit based on Qwner sect
Command and Arguments
SCO,set-l
Currency Indicators
Uq± CO(set-l) chAnqed: CRU< CO(set-l)
Description
The record that is presently the current owner of set-l becomes
the new current of run unit. The current owner of set—l remains
unchanged. If the user does not have read access to set-l, a
command status error is returned and the current of run unit is
unchanged.
Examples of Command Usage
block/direct ... ED =SCO ("set-l")
block/indirect ... ED =DMS ("SCO,set-l")
record/direct ... ED =seo ("set-l")
record/indirect... ED =DMS ("SCO,set-l")
40.2 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -VI: ASSIGI·'MENT co?4MAtvDs -E4DBS DMS MANUAL
SCJZ áet Cjirrent of run unit based on Aser indicator sen
Command and Arguments
SCU, iblk
Currency Indicators
j1=d: CU(i) rh(nnqed: cru< CU(i)
Description
The current record of auser-defined indicator becomes the new
current oE run unit. The value of the host language variable for
iblk determines which one of the user-defined indicators is
involved in this command. Thte host language variable must be
consistent with an unsigned data item that is one byte in size.
The variable's value must be an integer between land 255,
inclusive. The current record of the user-defined indicator
remains unchanged. The AUI command (Chapter XI) is employed to
allocate user-defined indicators.
Examples of Command Usage
block/direct ... ED =SCU (" iblk")
block/indirect .. .ED =D74S ("SCU,iblk")
record/direct ... ED =SCU (iblk)
record/indirect. .. ED =DF4SD ("SCU" ,iblk)
árzc aave Qata base key for Gurrent oÍl run unit Sl2C
Comniand and Arguments
SDC,oblk
Currency Indicators
Used: CRU Changed: none
Description
Adata base key is aunique internal identifier for arecord
occurrence. The SDC command saves the data base key for the
record that is the current of run unit. if the current of run
unit is null, then anull data base key is saved. The data base
key is saved in oblk's host language variable. In most
environments, this variable must be consistent with afour-byte
binary data item. If some other type or size is necessary for a
particular environment, then the difference is described in the
pertinent system specific manual.
(C) COPYRIGHT 1981 !4icro Data Base Systems, Inc. Rev. 85A 41
MDBS DMS MANUAL -VI: ASSlGt'&lENT COiZb1ANDS -HDBS DMS MANUAL
The SOC comiaand can be used to set the current of run unit to be
the same as asaved data base key.
Examples of Command Usage
block/direct ... EO =SDC ("oblk")
block/indirect ... EC) =DMS ("SDC,oblk")
record/direct ... EO =SDC (oblk)
record/indirect.. .EO mDMSD ("SDC" ,ob1k)
=Set Kember based on Current of run unit =
Command and Arguments
SMC,set-l
Currency Indicators
tláM: cru rh1lnqpa: C14(set-l)< CRU
CO(set-l) <first owner
CRU <first owner
Description
The record that is the current of run unit becomes the new
current member of set-l. Thé first owner connected to the new
current member of set~l becomes the new current owner of set-l
and the current run unit. IE the current member of set-l has
no owners via set-l, then the current of run unit becomes null,
the current owner of set"l becomes null, and acommand status of
255 is returned. If the user does not have read access to set-l,
acommand status error is returned and no currency indicators are
changed .
42 Rev. 85A (C) COPYRIGHT 1981 l4icro Data Base Systems, Inc.
MDBS DMS MANUAL -VI: ASSIGNMENT COMMANDS -MDBS DMS MANUAL
Examples of Command Usage .
block/direct ... ED =SMC ("set-l")
block/indirect ... ED =DMS ("SMC,set-l")
recorá/direct ... ED =SMC ("set-l")
record/indirect... ED =DMS ("SMC,set-l")
=Set Member to current of run unit (Exception) SME
Command and Arguments
SME,set-l
Currency Indicators
Uswi: cru chal]geg: CM(set-l)< CRU
Description
The record that is the current oft run unit becomes the new
current member of set-l. The current of run unit remains
unchanged. If auser does not have read access to set-l, the
current member of set—l does not change and acommand status
error is returned. If the record type of the current of run unit
is not amember of set—l, thena command status error is returned
andthe current member of set-l is unchanged. If acurrent owner
for set-l exists and the record indicated by the current of run
unit is not' connected to that owner through set-l, then acommand
status error of 12 is returned.
Examples of Command Usage
block/direct ... ED =SME ("set-l")
block/indirect ... ED =DMS ("SME,set-l")
record/áirect ... ED =SME ("set-l")
record/indirect... ED =OMS ("SME,set-l")
SMM Set Member based on Member =
Command and Arguments
SMM,set-l,set-2
Currency Indicators
CIáKk CM(set-2) chaRgqg: C!4(set-l>' CM(set-2)
CO(set-l)<——first owner
CRU t——first owner
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. 43
MDBS DMS MANUAL -VI: ASSIGNMENT COMMANDS -MDBS DMS MANUAL
Description
Set the current member of set—l to be the same as the current
member of set-2. This command is valid only if set-l and set-2
have the same member record type(s). The first owner of the new
current member of set—l becomes the new current owner of set—l '"
and the current of run unit. If the new current member of set-l
has no owners via set—l, then the current owner oF set—l becomes
null, the current of run unit becomes null and acommand status
of 255 is returned. If auser does not have read access to both
set-l and set-2, then acommand status error is returned and no
currency indicators change.
Examples of Command Usage
block/direct ... ED =SMM ("set-l,set-2")
block/indirect ... ED =OMS ("SMM,set-l,set-2")
record/direct ... ED =SMM ("set-l,set-2")
record/indirect... ED =DMS ("SMM,set-l,set-2")
SMN Set Member to NUl SMN
Command and Arguments
SMN,set-1
t
Currency Indicators
'tlsesk none ch!angesj: CM(set-l)( null
Description
The cur"rent member of set-l becomes null. The current owner of
set-l is unaffected. If auser does not have read access to set-
1, then the current member of set-l does not change and acommand
status error is returned.
Examples of Command Usage
block/direct ... ED =SMN ("set-l")
block/indirect ... ED =DNIS ("SMN,set-l")
record/direct ... ED =SMN ("set-l")
record/indirect... ED =DMS ("SMN,set-l")
SKI Set Member based on Qwner SMQ
Command and Arguments
SMO,set-l,set-2
Currency Indicators
Usésl: CO(set-2) Ch@ng£d: CM(set-l)< CO(set-2)
CO(set-lfé——first owner
CRU <first owner
44 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS OMS MANUAL -VI: ASSIGNL·1ENT COL4MANDS -MDBS DblS MANUAL
Description
Set the current member of set-l to be the same as the current
owner of set-2. This command is valid only the member recora
type(s) for set-l is the same as the owner record type(s) for
set-2. The first owner of the new current member of set-l
becomes the new current owner of set-l and the current of run _
un it. If the new current member of set-l has no owners via set
set"l, then the current owner of set-l becomes null, the current
of run unit becomes null, and the command status is 255. If a
user cícjés not have read access to set-l and set-2, then acommand
status error is returned and no currency indicators change.
Examples of Command Usage
block/direct ... Ell =SMO ("set-l,set-2")
block/indirect ... £0 =Dl4S ("SbiO,set-l,set-2")
record/direct ... ED =Si·1O ("set-l,set-2")
recorá/ináirect.. .ED =deis ("SbiO,set-l,set-2")
=áet t1eInber baseá on 9ser indicator =
Command and Arguments
SMU,set-l, iblk
Currency Indicators
g=d: CU(i) rh¶nq@d· Cl4(set-l)< CU(i)
CO(set-l) <first owner
CRU <first owner
0
Description
set the current member of set-l to be the same as the current
record of auser-defined indicator. The value of the host
language variable for iblk determines which one of the user-
defined indicators is involved in this command. The host
language variable must be consistent with an unsiqned data item
that is one byte in size. The variable's value must be an
integer between 1and 255, inclusive. The first owner of the new
current member set~l becomes the new current owner of set-l
and the current of run unit. IE the new current member has no
owners via set"l, then the current owner of set-l becomes null,
the current of run unit become null, and the commaná status is
255. The AUI command (Chapter XI) is employed to allocate user-
defined ind icators.
Examples of Command Usage
block/direct ... ED =SF4U ("set-l,iblk")
block/indirect ... ED =DF4S ("sMU,set-l,iblk")
record/direct ... ED =SHU ("set-l",iblk)
record/indirect. . . EC) =DI4SD ("SMU,set-l" ,ib1k)
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 45
MDBS DMS MANUAL -VI: ASSIGN1·!ENT COt.1l.!ANDS -MDBS DEIS MANUAL
SQC áet Qwner based on Current of run unit SQC
ComüanCi and Arguments
SOC,set-l
Currency Indicators
ilsm: cru ch(anqpa: CO(set-l)< CRU
CM(set-l)< first member
CRU <first member
Description
The record that is the current of run unit becoir,es the new
current owner of set~1. The first member connected to the new
current owner of set~l becomes the new current meir.ber OF set-l
and the current of run unit. uthe current owner of set—l has
ñQ members via set-l, then the current of run unit becomes null,
the current member of set-l becomes null, and acommand status of
255 is returned. If the user dQes not have read access to set-l,
acommand status error is teturned and no currency ináicators are
changed.
Examples of Command Usage
block/direct ... EC =SOC ("set-l")
block/indirect ... ED =DMS ("SOC,set-l")
record/direct ... EQ =SOC ("set-l")
record/ináirect... ED =OMS ("SOC,set-l")
sqe aet Qwner to current of run unit (Exception) SQE
Command and Mguments
SOE,set-l
Currency Indicators
=: cru ch¡nq?r1: CO(set-l)< CRU
Description
The record that is the current of run unit becomes the new
current owner of set~l. The current of run unit remains
unchanged. If auser does not have read access to set-l, the
current owner of set-l does not change and acommand status error
is returned. If the record type of the current of run unit is
not an owner set~1, then acommand status error is returned
and thecurrent ownerof set-l isunchanged. uacurrent member
for set-l exists and the record indicated by the current of run
unit is not connected to that member through set-l, then a
command status error of 12 is returned.
46 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -VI: ASSIGNMENT COMMANDS -MDBS DMS MANUAL
Examples of Command Usage
block/direct ... ED =SOE ("set-l")
block/indirect ... ED =DMS ("SOE,set-l")
record/direct ... ED =SOE ("set-l")
recorá/indirect... ED =DMS ("SOE,set-l")
=Set Qwner based on Member SCM
Command and Arguments
SOM,set-l,set-2
Currency Indicators
Uéd: CM(set-2) ch@ng£g: CO(set-l) (CM(set-2)
CM(set-l)<——first member
CRU <——first member
Description
Set the current owner of set—l to be the same as the current
member of set-2. This command is valid only if the owner record
type(s) for set-l is the same as the member record type(s) for
set—2. The first member of the new current owner of set—l
becomes the new current member of set—l and the current of run
unit. If the new current owner of set—l has no members via set
set—l, then the current member of set—l becomes null, the current
of run unit becomes null and the command status is 255. If a
user does not have read access to set—l andset—2, thena command
status error is returned and no currency indicators change.
Examples of Command Usage
block/áirect ... ED =SOM ("$et-l,set-2")
block/indirect ... ED =DMS ("SOM,set-l,set-2")
recorá/áirect ... ED =SOM ("set-l,set-2")
record/indirect... ED =DMS ("SOM,set-l,set-2")
SQN Set Qwner to Null SQN
Command and Arguments
SON,set-l
Currency Indicators
tlseCk none ·chan!g£g: CO(set-l)< null
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. 47
MDBS DMS MANUAL -VI: ASSIGNMENT COMMANDS -MDBS DMS MANUAL
Description
The current owner of set—l becomes null. The current member of
set—l is unaffected. If auser does not have read access to set-
l, then the current owner of set-l does not change and acommand
status error is returned. C"
Examples of Command Usage
block/direct .G. ED =SON ("set-l")
block/indirect ... ED =DMS ("SON,set-l")
record/direct ... ED =SON ("set-l")
record/indirect... ED =DMS ("SON,set-l")
SQQ Set Qwner based on Qwner SQQ
Command and Arguments
SQO,set-l,set-2
Currency Indicators
Usési: CO(set-2) cbánmk CO(set-l)< CO(set-2)
CM(set-l)<——first member
CRU <——Uirst member
Description
Set the current owner of set-l to be the same as the current
owner of set-2. This command is valid only if set-l and set-2
have the same owner record type(s). The first member of the new
current owner of set—l becomes the new current member of set—l
and the current of run unit. If the new current owner of set-l
has no members via set-l, then the current member of set-l
becomes null, the current of run unit becomes null, and acommand
status OE 255 is returned. If auser does not have read access
to both set-l and set—2, then acommand status error is returned
and no currency indicators change.
Examples of Command Usage
block/direct ... ED =SQQ ("set-l,set-2")
block/indirect ... ED =OMS ("SOO,set-l,set-2")
record/direct ... ED =SQQ ("set-l,set-2")
record/indirect... ED =DMS ("SOO,set-l,set-2")
48 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
~
MDBS DMS MANUAL -VI: ASSIGNMENT COMMANDS -MDBS DMS MANUAL
SC9I Set Qwner based on Rser indicator SC9I
Command and Arguments
SOU,set-l,iblk
Currency Indicators
tIaqg: CU(i) chang£g: CO(set-l)< cU(i)
CM(set-l)<——first member
CRU <——-first member
Description
Set the current owner of set-l to be the same as the current
record of auser-defined indicator. The value of the host
language variable for ib1k determines which one of the user-
defined indicators is involved in this command. The host
language variable must be consistent with an unsigned data item
that is one byte in size. The variable's value must be an
integer between land 255, inclusive. The first member of the
new current owner of set—l becomes the new current member of set-
1and the current of run unit. IE the new current owner has no
members via set-l, then the current member of set-l becomes null,
the current of run unit becomes null, and the command status is
255. The AUI command (Chapter XI) is employed to allocate user-
defined indicators.
Examples of Command Usage
block/direct ... ED =SOU ("set-l,iblk")
block/indirect ... ED =DMS ("SOU,set-l,iblk")
recorá/Urect ... ED =SOU ("set-l",iblk)
record/indirect... ED =DMSD ("SOU,set-l",iblk)
am Set Aser indicator to Current of run unit snc
Command and Arguments
SUC,ib1k
Currency Indicators
U,áési: cru chai]ggsj: CU(i)< cru
Description
Set the current recordof auser-defined indicator to be the same
as the current of run unit. The value of the host language
variable for iblk determines which one of the user-defined
indicators is involved in this command. The host language
variable must be consistent with an unsigned data item that is
one byte in size. The variable's value must be an integer
between land 255, inclusive. The AUI command (Chapter XI) is
employed to allocate user-defined indicators.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. 49
MDBS DMS MANUAL -VI: ASSIGNMENT COMMANDS -MDBS DMS MANUAL '
Examples of Command Usage
block/direct ... ED =sue ("iblk")
block/indirect ... ED =DMS ("SUC,iblk")
record/direct ... ED =sue (iblk)
record/indirect... ED =DMSD ("SUC",iblk)
am Set tIser indicator to Member SñM
Command and Arguments
SUM,set-l,iblk
Currency Indicators
tIs£g: CM(set-l) ch4ngesj: CU(i) (CM(set-1)
Description
Set the current recordof auser-defined indicator to be the same
as the current member of set-l. The value of the host language
variable for ib1k determines which one of the user-defined
indicators is involved in this command. The host language
variable must be consistent with an unsigned data item that is
one byte in size. The variable's value must be an integer
between land 255, inclusive. The AUI command (Chapter XI) is
employed to allocate user-defined indicators.
Iii auser does not have read access to set—l, no currency
indicator changes and acommand status error is returned.
Examples of Command Usage
b
block/direct ... ED =SUM ("set-l,iblk")
block/ináirect ... ED =OMS ("SU"M,set-l,iblk")
record/direct ... ED =SUM ("set-l",iblk)
record/indirect... ED =DMSD ("SUM,set-l",iblk)
SUN Set tIser indicator to Núll SñN
Command and Arguments
SUN,iblk
Currency Indicators
IISU: none char]geg: cwm null
50 (C) COPYRIGHT 1981 Micro oata Base Systems, Inc.
MDBS DMS MANUAL -VI: ASSIGNMENT COMMANDS -MDBS DMS MANUAL
Description
Set the current record of auser-defined indicator to be null.
The value of the host language variable for iblk determines which
one of the user-defined indicators is involved in this command.
The host language variable must be consistent with an unsigned "
data item that is one byte in size. The variable's value must be
an integer between land 255, inclusive. The AUI command
(Chapter XI) is employed to allocate user-defined indicators.
Examples of Command Usage
block/direct ... ED =SUN ("iblk")
block/indirect ... ED =DMS ("SUN,iblk")
record/direct ... ED =SUN (iblk)
record/indirect... ED =DMSD ("SUN",iblk)
SñQ Set User indicator to Qwner SñQ
Command and Arguments
SUO,set-l,iblk
Currency Indicators
y§£sj: CO(set-l) ch!ang£g: CU(i)l CO(set-l)
Description
Set the current recordof auser-defined indicator to be the same
as the current owner of set—l. The value oÍl the host language
variable for iblk determines which one of the user-defined
indicators is involved in this command. The host language
variable must be consistent with an unsigned data item that is
one byte in size. The variable's value must be an integer
between land 255, inclusive. The AUI command (Chapter XI) is
employed to allocate user-defined indicators.
If auser does not have read access to set—l, no currency
indicator changes and acommand status error is returned.
Examples of Command Usage
block/direct ... ED =SUO ("set-l,iblk")
block/indirect ... EC =OMS ("SUO,set-l,iblk")
record/direct ... ED =SUD ("set-l",iblk)
record/ináirect... ED =DMSD ("SUO,set-l",iblk)
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. 51
MDBS DMS MANUAL -VI: ASSIGNMENT COMMANDS -MDBS DMS MANUAL
mSet tjser indicator to tlser indicator sam
Command and Arguments
SUU,iblk
Currency Indicators
tiseSk cU(j) changQg: cU(i)1g-—cU(j)
Description
Two host language variables, say iand jr are defined for ib1k.
Each must be consistent with an unsigned data item that is one
byte in size. Each must have an integer value between land 255,
inclusive. This command sets the current record of auser-
defined indicator (determined by i's value) to be the sanie as the
current record of another user-defined indicator (determined by
j's value). The AUI command (Chapter XI) is employed to allocate
user-defined indicators.
Examples of Command Usage
block/direct ... ED =SUU ("iblk")
block/indirect ... ED =OMS ("SUU,iblk")
record/direct ... ED =SUU (iblk)
record/indirect... ED =DMSD ("SUU",iblk)
52 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL MDBS DMS MANUAL
VII. CREATIONCOMMANDS
A. Overview
There are two MOBS DML commands that can be used to create a
record occurrence. One forces MDBS.DMS to create the record in a
particular desired area, indicated by acommand argument. However, I
the record cannot be forced into an area it was not assigned to in the
.DDL specification. This command cannot be used with arecord type that
has acalc key.
The other creation command allows MDBS.DMS to place the new
record in any area it was assigned to in the DDL specification. If a
CALC or clustering record location mode was defined for the record in
the DDL, then MDBS.DMS physically positions the new record
accordingly. In the case of clustering, the new member (owner) record
is clusteredon the basisof the current owner (current member) of the
set indicated in that record type's clustering clause (as specified in
the DDL).
Data to be stored in the new record is transferred from the host
language variables of adata block (or program record type) in to the
data base. The types, sizes and sequence of these variables must be
consistent with the types, sizes and sequences of the record type's
data items as specified in the DDL. The values of these variables
must conform to the feasibility ranges specified for the record type's
data items in the DDL specification. If they do not, the record is
not created and acommand status error is returned. Data compression
and encryption are automatic, where applicable.
arecord can be created only if the user has write access to all
data items of that recordtype, write access to the area in which that
record is to be created, and write access to all sets in which that
record type participates as an automatic owner or member. In the
event that there is no space left, in the area(s) in which MDBS.DMS is
permitted to create an occurrence of the record type, acommand status
error to that effect is returned.
If adata base has multiple areas, then all areas which permit
pointer indices must be on-line during record creation.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 83A 53
9DBS DMS MANUAL -VII: CREATION COMMANDS -MDBS DMS MANUAL
B. Comnand Details
cu Create Record in Area CEA
Command and Arguments
CRA,rec,area,iblk
Currency Indicators
tI£esj: ch!aRgesj: cru( newly created record
...if rec is AUTO ...if rec is AUTO
member of set member of set
CO(autoset) CM(autoset) <——newly created record
...if rec is AUTO ...if rec is AUTO
owner of set owner of set
CM(autoset) CO(autosetR—-newly created record
Description
An occurrence of the record type rec is created in the indicated
area. The values of the host language variables for iblk are
stored into that record occurrence. The sequence,, types, and
sizes of host lanquage variables defined for iblk must correspond
to the sequence, types, and sizes of data items defined for rec
in the DDL specification. The values of the variables must
conform to feasibility ranges specified for the record type's
data items. If they do not, acommand status error is returned,
the record is not created, and no currency indicators change.
The physical placement of the newly created record is consistent
with the DDL specification for rec (either clustered or system-
determined). Arecord with acaíc key cannot be created with CRA.
In order to create arecord with CRA, auser must have write
access to rec, to the area in which the record is to be created,
and to all sets in which the record type participates as an
automatic owner or member. If auser does not have this security
clearance, acommand status error is returned, the record is not
created, and no currency indicator is changed.
If rec has been declared to be the AUTO member of aset, then the
newly created record is automatically connected to the current
owner of that set and the new record becomes the current member
of that set. The connection takes place according to the member
order specified with the DDL (SORTED, FIFO, etc.). If the member
order £or the set is NEXT, then the new record is connected
(i.e., logically inserted) immediately after the set's current
member. If there is no current member, the record is insertedas
the first member. For PRIOR member order, the new record is
logically connecteá immediately before the set's current member.
If there is no current member, the recordis insertedas the last
member.
54 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -VII: CREATION COMMANDS -MDBS DMS MANUAL
If rec has been declared to be the AUTO owner of aset, then the
newly created record is automatically connected to the current
member of that set and the new record becomes the current owner
of that set. The connection occurs according to the set's owner
order, as specified with the DDL (SORTED, LIFO, NEXT, etc.). If -
the owner order for the set is NEXT (or PRIOR), then the new
record is logically connected immediately after (or before) the
set's current owner. If there is no current owner, the record is
inserted as the first (last) owner.
Examples of Command Usage
block/direct ... ED =CRA ("rec,area,iblk")
block/indirect ... ED =DMS ("CRA,rec,area,iblk")
record/direct ... ED =CRA ("rec,area",iblk)
record/indirect... ED =DMSD ("CRA,rec,area",iblk)
CBS Create Record and Store CRS
Command and Arguments
CRS,rec,ib1k
Currency Indicators
g,aQg: changeg: CRU<——newly created record
...if rec is AUTO ...if rec is AUTO
member of set member of set
CO(autoset) CM(autoset) <—-newly created record
...if rec is AUTO ...if rec is AUTO
owner of set owner of set
CM(autoset) CO(autoset)<——newly created record
Description
An occurrence of the record type rec is created in apermissible
area. The values of the host language variables for ib1k are
stored into that record occurrence. The sequence, types, and
sizes oft host language variables defined for ib1k must correspond
to the sequence, types, and sizes of data items defined for rec
in the DDL specification. The values of the variables must
conform to feasibility ranges specified for the record type's
data items. If they do not, acommand status error is returned,
the record is not created, and no currency indicators change.
The physical placement of the newly created record is consistent
with the DDL specification for rec (either CALCed, clustered, or
system-determined). In order to create the record, auser must
have write access to rec, to the area in which the record is to
be created, and to all sets in which the record type participates
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. 55
MDBS DMS MANUAL -VII: CREATION COMMANDS -MDBS DMS MANUAL
as an automatic owner or member. If auser does not have this
security clearance, acommand status error is returned, the
record is not created, and no currency indicator is changed.
If rec has been declared to be the AUTO member of aset, then the
newly created record is automatically connected to the current
owner of that set and the new record becomes the current member
of that set. The connection takes place according to the member
order specified with the ddl (SORTED, FIFO, etc.). If the member
order for the set is NEXT, then the new record is connected
(i.e., logically inserted) immediately after the set's current
member. If there is no current member, the record is inserted as
the first member. For PRIOR member order, the new record is
logically connected immediately before the set's current member.
If there is no current member, the record is inserted as the last
member.
If rec has been declared to be the AUTO owner of aset, then the
newly created record is automatically connected to the current
member of that set and the new record becomes the current owner
of that set. The connection occurs according to the set's owner
order, as specified with the DDL (SORTED, LIFO, NEXT, etc.). If
the owner order for the set is NEXT (or PRIOR), then the new
record is logically connected immediately af ter (or before) the
set's current owner. If there is no current owner, the record is
inserted as the f irst (last) owner.
Examples of Command Usage
block/direct ... ED =CRS ("rec,iblk")
block/indirect .. .ED =DMS ("CRS,rec,ib1k")
recorá/direct ... ED =CRS ("rec",ib1k)
record/indirect. .. ED =DMSD ("CRS,rec",iblk)
56 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL MDBS DMS MANUAL
VIII. CONNECTCOMMANDS
A. Overview
.
The MDBS connect commands allow two record occurrences to be
connected to each other through aset relationship. The record that
is the current of run unit becomes connected to the current owner of
an indicated set or the current member of an indicated set, depending
on which connect command is used. When arecord is connected as a
member (owner), it is inserted into aset relationship on the basis of
that set's member (owner) order. During record connection, all areas i
allowing pointer indices must be on-line.
Connection commands are used to accomplish the manual insertion
of arecord into aset relationship. This is typically needed in
cases where a) MANUAL set insertion has been defined for aset's owner
or member record type, b) AUTO set insertion has been declared in the
DDL for both the owner and member record types of an N: m set, c) it is
necessary to reconnect arecord (perhaps, to adifferent owner or
member record) after it has been disconnected.
In the MANUAL case, the creation of amember (owner) record does
not automatically connect it to an owner (member) record of the set.
If and when such aconnection is desired, it is accomplished with a
.connect command. In the second case, suppose that amember (owner)
record of an N: NI set is created. It is automatically connected to one
owner (member) record. If it is desired to connect it to additional
owner (member) records, aconnect command is used. In the third case,
it is sometimes important to disconnect amember (owner) from an owner
(member) and later connect that member (owner) to the same or adif-
ferent owner (member). Regardless of whether there is AUTO or MANUAL
set insertion, this reconnection is accomplished by aconnect command.
The integrity of all set relationships i.s preserved. Acommand
status error results if an attempt is made to connect amember with
more than one owner in al:lor I:Nset, to connect an owner with more
than one member of l:lor N: lset, or to connect amember with an
owner to which it is already connected.
If auser does not have write access to the set involved in a
connect command, the connection does not take place and acommand
status error to that effect is returned.
B. Command Details
IMS Insert Member into Set IMS
Command and Arguments
1MS,set-l
Currency Indicators
E!áM: CO(set-l) Changgg: CM(set-l)< CRU
CRU
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 83A 57
MDBS DMS MANUAL -VIII: CONNECT COMMANDS -MDBS DMS MANUAL
Description
The record that is current of run unit becomes connected to the
current owner of set—l. This new member for the current owner of
set-l ismade the current member of set-l. The insertionof this
new member record among the existing member records, connected to
the current owner of set—l, is made in accordance with the member
order declared for set-l in the DDL specification. If the member
order is NEXT (or PRIOR) then the new member is logically
inserted after (or before) the set's current member; if the set
has no current member, the record is logically inserted as the
first (or last) member.
If multiple owners can exist for this new member, the record that
is the current owner is logically inserted into those owners
according to the owner order of set-l. The exception is if the
owner order is NEXT (or PRIOR), in which case the record that is
the current owner becomes the logically first (or last) owner of
the set's new current member.
The current of run unit must be an occurrence of arecord type
that is amember of set-l. Auser must have write access to set-
l, in order to connect amember record to an owner record.
Examples of Command Usage
block/direct ... ED =IMS ("set-l")
block/indirect ... ED =OMS ("1MS,set-l")
record/direct ... ED =IMS ("set-l")
recorá/indirect... ED =DMS ("1MS,set-l")
IQS Insert Qwner into Set IQS
Command and Arguments
IOS,set-l
Currency Indicators
Usqg: CM(set-l) ch4l]geg: CO(set-l) (CRU
CRU
Description
The record that is current of run unit becomes connected to the
current member of set-l. This new owner for the current member
of set-l is made the current owner of set-l. The insertion of
this new owner record among the existing owner records, connected
to the current member of set—l, is made in accordance with the
owner order declared for set-l in the ddl specification. Iii the
owner order is NEXT (or PRIOR) then the new owner is logically
inserted after (or before) the set's current owner; if the set
has no current owner, the record is logically inserted as the
first (or last) owner.
58 Rev. 82A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -VIII: CONNECT COMMANDS -MDBS DMS MANUAL
If multiple members can exist for this new owner, the record that
is the current member is logically inserted into those members
according to the member order of set-l. The exception is if the
member order is NEXT (or PRIOR), in which case the record that is
the current member becomes the logically first (or last) member -
of the set's new current owner.
The current of run unit must be an occurrence of arecord type
that is aowner of set—l. auser must have write access to set-
1, in order to connect an owner record to amember record.
Examples of Command Usage
block/áirect ... ED =lOS ("set-l")
block/indirect ... ED =OMS ("IOS,set-l")
record/direct ... ED =lOS ("set-l")
record/indirect... ED =DMS ("IOS,set-l")
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 82A 58.1
MDBS DMS MANUAL -VIII: CONNECT COMMANDS -MDBS DMS MANUAL
C
This page intentionally left blank.
58.2 Rev. 82A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL MDBS DMS MANUAL
IX. DISCONNECTCOMMANDS
A. Overview
The MDBS DML disconnect commands allow an owner record and a
member record that are connected via aset to be disconnected from
each other. Either the current member or all members can be
disconnected from aset's current owner. Similarly, either the
current owner or all owners can be disconnected from aset's current
member. Removing aset connection between two occurrences does not
delete those occurrences from the data base.
If aset has fixed retention, no disconnections can be made for I
it; in this case, arecord must be deleted to be disconnected. If a
user does not have write access for aset, then that user cannot
perform any disconnections on that set. During disconnection all
areas allowing pointer indices must be on-line.
B. Command Details
BMS Bemove Member from Set BMS
Command and Arguments
RMS,set-l
Currency Indicators
LISWj: CM(set-l) Cbangqg: CM(set-l)<——next member
CO(set-l) CRU E——next member
Description
Remove the connection between the current owner and current
member of set-l. The next member (following the member that was
removed) of the current owner of set-l becomes the new current
member of set-l and the current of run unit. which member is
logically next depends on the member order of set—l, as declared
in the DDL specification. If there is no next member, the
current member indicator for set—l becomes null, the current of
run unit becomes null, and the command status is 255. If auser
does not have write access to set-l, then the current member is
not disconnected, no currency indicators change, and acommand
status error is returned.
Examples of Command Usage
block/direct ... ED =RMS ("set-l")
block/indirect ... ED =DMS ("RMS,set-l")
recorá/direct ... ED =RMS ("set-l")
record/indirect... ED =DMS ("RMS,set-l")
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 83A 59
X
MDBS DMS MANUAL -IX: DISCONNECT COMMANDS -MDBS DMS MANUAL
BQS Remove Qwner from Set =
Command and Arguments
ROS,set-l
Currency Indicators
USU: CO(set-l) changfa: CO(set-l) (next owner
CM(set-l) CRU <——next owner
Description
Remove the connection between the current member and current
owner of set—l. The next owner (following the owner that was
removed) of the current member of set—l becomes the new current
owner of set—l and the current of run unit. which owner is
logically next depends on the owner order of set-l, as declared
in the DDL specification. If there is no next owner, the current
owner indicator for set-l becomes null, the current of run unit
becomes null, and the command status is 255e If auser does not
have write access to set-l, then the current owner is not
disconnected, no currency indicators change, and acommand status
error is returned.
Examples of Command Usage
block/áirect ... ED =ROS ("set-l")
block/indirect ... ED =OMS ("ROS,set-l")
record/direct ... ED =ROS ("set-l")
record/indirect... ED =OMS ("ROS,set-1")
RSM Bemove all Set Members RSM
Command and Arguments
RSM,set-l
Currency Indicators
ysQg: CO(set-l) chanmSk CM(set-l) (null
Description
Remove the connection between the current owner of set-l and each
one of its members. The current member of set-l becomes null.
If auser does not have write access to set-l, then the members
are not disconnected, the current member of set-l does not
change, and acommand status error is returned.
60 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -IX: DISCONNECT COMMANDS -MDBS DMS MANUAL
Examples of Command Usage
block/direct ... ED =RSM ("set-l")
block/indirect ... ED =OMS ("RSM,set-1")
recorá/direct ... ED =RSM ("set-l")
record/indirect... ED =DMS ("RSM,set-l")
RáQ Bemove all Set Qwners RSQ
Command and Arguments
RSO,set-l
Currency Indicators
usqg: CM(set-l) Ch,arlg2d: CO(set-l)( null
Description
Remove the connection between the current member of set—l and
each one of its owners. The current owner of set-l becomes null.
If auser does not have write access to set—l, then the owners
are not disconnected, the current owner of set-l does not chanCler
and acommand status error is returned.
Examples of Command Usage
block/direct ... ED =RSO ("set-l")
block/indirect ... ED =DMS ("RSO,set-1")
record/direct ... ED =RSO ("set-l")
record/indirect... ED =OMS ("RSO,set-l")
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. 61
MDBS DMS MANUAL -IX: DISCONNECT COMMANDS -MDBS DMS MANUAL
This page intentionally left blank.
62 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS JJMS MANUAL MDBS DMS MANUAL
X. DELETIONCOMMANDS
A. Overview
Each of the three MDBS DML deletion commands deletes arecord "
occurrence from the data base. Arecord must have been found before
it can be deleted. Thus there are commands to delete the record that
is the
current of run unit,
current owner of an indicated set, or
current member of an indicated set.
Arecord that has been remembered in auser-defined indicator can also
be deleted, after first making it the current of run unit, acurrent
owner, or acurrent member (with an assignment command).
when arecord is deleted, MDBS.DMS disconnects it from every
record that owns it and from every member record that it owns. The
space occupied by that record is nulled and is returned to the pool of
free space, so that it can later be reused by MDBS.DMS. Deletion
commands can have extensive effects on currency indicators.
auser is not allowed to delete arecord without write access to
all of the record type's data items, write access to all sets in which
that record type participates, and write access to the area containing
the record and all areas containing records connected to the record
being deleted. An attempt to violate these security constraints does
not affect the record and it results in acommand status error.
In the case of multiple areas, all areas that can contain pointer
indices must be on-line for record deletion.
B. Command Details
9
DBC Relete Becord that is Current of run unit DBC
Command and Arguments
DRC (no argument)
Currency Indicators
usgsj: cru cjjangQg: cru( null
also see description
Description
The record that is the current of run unit is disconnected from
all set relationships and is physically deleted from the data
base. The current of run unit becomes null. If the deleted
record is the current owner of any set, the current member of any
set, or the current record of any user-defined indicator, then
those indicators become null. If auser does not have write
access to the current of run unit's record type, to the record's
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 83A 63
MDBS DMS MANUAL -X: DELETION COMMANDS -MDBS DMS MANUAL
area and to all sets in which that reccnd type participates, then
no deletion occurs, no currency indicator changes, and acommand
status error is returned.
Examples of Command Usage
block/direct ... ED =DRC ()
block/indirect ... ED =OMS ("DRC")
record/direct ... ED =DRC ()
record/.indirect... ED =OMS ("DRC")
ñRM Delete Becord that is Member RRM
Command and Arguments
DRM,set-l
Currency Indicators
Uáésj: CO(set-l) Ch4I)ged: CM(set-l)<——next member
CM(set-l) CRU ( next member
also see description
Description
The record that is the current member of set-l is disconnected
from all set relationships and is physically deleted from the
data base. The next member that isownedby the current owner of
set-l becomes the current member of set-l and the current of run
unit. which member is next depends on the member order of set-l.
If there is no next member, then the current of run unit becomes
null the current member of set—l becomes null, and the command
status is 255. If the record being deleted is the current owner
of any set, the current member of any set other than set-l, or
the current record of any user-defined indicator, then those
indicators become null.
If the user does not have write access to set-l's member record
type, to the record's area and to all sets in which that record
type participates, then no deletion occurs, no currency indicator
changes, and acommand status error is returned.
Examples of Command Usage
block/direct ... ED =DRM ("set-l")
block/indirect ... ED =OMS ("DRM,set-l")
record/direct ... ED =DRM ("set-l")
record/indirect... ED =OMS ("DRM,set-1")
64 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -X: DELETION COMMANDS -MDBS DMS MANUAL
DBQ Delete Record that is Qwner DBQ
Command and Arguments
DRO,set-l
Currency Indicators
tlseSk CM(set-l) charlgqg: CO(set-l)< next owner
CO(set-1) CRU <——next owner
also see description
Description
The record that is the current owner of set—l is disconnected
from all set relationships and is physically deleted from the
data base. The next owner that is owned by the current member of
set—l becomes the current owner of set—l and the current of run
unit. which owner is next depends on the owner order of set-l.
If there is no next owner, then the current of run unit becomes
null, the current owner of set-l becomes null, and the command
status is 255. If the record being deleted is the current member
of any set, the current owner of any set other than set-l, or the
current record of any user-defined indicator, then those
indicators become null.
If the user does not have write access to set—l's owner record
type and to all sets in which that record type participates, then
no deletion occurs, no currency indicator changes, and acommand
status error is returned.
Examples of Command Usage
block/direct ... ED =DRO ("set-l")
block/indirect ... ED =OMS ("DRO,set-l")
record/direct ... ED =DRO ("set-l")
record/indirect... ED =OMS ("DRO,set-l")
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. 65
MDBS DMS MANUAL -X: DELETION COMMANDS -MDBS DMS MANUAL
This page intentionally left blank.
66 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL MDBS DMS MANUAL
XI. UTILITY COMMANDS
A. Overview
Utility commands fall into the following groups:
l. Opening and closing adatabase or database area
DBCLS,DBCLSA,DBOPN,DBOPNA
2. Flúshing the page buffers
DBSAVE
I3. Allocating user-defined indicators
AUI
4. Getting the owner (member) count for amember (owner)
GMC,GOC
I5. Getting the type of arecord occurrence
GTC,GTM,GTO
6. Testing for the type of arecord occurrence and checking for
the equality of currency indicators
TCT,CCU,TMT,TOT
7. Acquiring database statistics
DBSTAT
8. Nulling all currency indicators
NCI
I9. Customizing the data base control system's behavior
DBCNV, DBENV
B. Command Deta: íls
AUI Állocate Rser Indicators EUZI
Command and Arguments
AUI,ib1k
Currency Indicators
jLáU: none c.h&nqpd: see description
Description
One host language variable is defined For iblk. It must be
consistent with aone byte unsigned data item. The value of that
variable must be between Oand 255, inclusive. This value tells
MDBS.DMS how many user-defined indicators are to be allocated.
If the value is O, then no user-defined indicators are allocated.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 67
MDBS DMS MANUAL -XI: UTILITY COMMANDS -MDBS DMS MANUAL
If the value is 12, then user indicators lthrough 12 are
allocated. If the value is 139, the user indicators lthrough
139 are allocated.
AUI can be invoked repeatedly within an application program to
increase or decrease the number of user-defined indicators, as
desíred. When adata base is opened Eor data manipulation (with
the dbopn command), four user-defined indicators are
automatically allocated and set to null. These first two user
indicators (1,2) are needed when performing aBoolean DML
command. If an application program does not use aBoolean
command and does not need any user indicator, the AUI can be used
to allocate zero user indicators. Ifi more than four user
indicators are needed, AUI is used to allocate the desired
number. When AUI is employed to increase the number of user
indicators, the records that were current for already allocated
user indicators are still current. The new indicators are set to
null. When AUI is employed to decrease the number of user
indicators, only those records that are current for the resultant
user indicators are still current. F'or instance, if ten user
indicators are allocated and AUI is used to reduce this to five,
then only those records that were current for user indicators 1
through 5are still current after invoking AUI. Knowledge about
which records =e current for user indicators 6through 10 is
not maintained.
Examples of Command Usage
block/direct ... ED =AUI ("iblk")
block/indirect ... ED =DMS ("AUI,iblk")
record/direct ... ED =AUI (iblk)
record/indirect... ED =DMSD ("AUI",iblk)
SXA Check Qirrent of run unit against Qser indicator GCtl
Command and Arguments
CCU,iblk
Currency Indicators
jL=á: cru c,ha.nqed: none
CU(i) ,
Description
Check to determine whether the record that is current for auser-
defined indicator is the same record that is the current of run
unit. The value of iblk's host language variable determines the
user indicator for which this check is made. That variable must
be consistent with aone byte, unsigned data item. If the
current of run unit is the same record as the specified user
indicator, then the command status is O. If it is not, then the
command status is 255.
68 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -XI: UTILITY COMMANDS -MDBS DMS MANUAL
»
Examples of Command Usage
block/direct ... ED =CCU ("iblk")
block/indirect ... ED =DMS ("CCU,iblk")
record/direct ... ED =CCU (iblk)
record/indirect. .. ED =DMSD ("CCU", iblk)
ñFN,T cRata Base £Lo,áe PFN.T q
Command and Arguments
DBCLS (no arguments)
Currency Indicators
9áéá: none c.hanqpd: all'í null
Description
In asinqle-qser enx/ i.ronmen.t ,DBCLS should be the last DML
command invoked in an application program. DBCLS nulls all of
that program' scurrency indicators, eliminates all of the
program' suser indicators, flushes the page buffers (i. e. ,
rewrites all pages, that have changed since entering main memory,
into auxiliary memory) ,and performs aTRCOM (for the rtl form of
the system) .No further data manipulation can be performed after
DBCLS, until the data base is reopened (with DBOPN) .
Failure to close adata base can leave its contents inconsistent,
if the data base was opened for modification. This inconsistency
will prevent subsequent efforts to open the data base. The data
base can be restored to aconsistent state with the MDBS RCV
utility.
In an1u1ti-|?ser epvj ronmenr Tmany application programs share the
same page buffers. Invoking DBCLS within an application proqram
nulls out all of that program' scurrency indicators and
el iminates all of the program's user indicators. It will also
flush the page buffers if no other application program currently
has the data base open for processing. In order to flush the
page buffers, irrespective of whether other programs have the
data base open for processing, the DBSAVE command should be used.
Aii application program can perform no further data manipulation
after it has invoked DBCLS, until it reopens the data base (with
DBOPN) .
Examples and Command Usage
block/direct .. . ED =DBCLS ()
block/indirect ... ED =DMS ("DBCLS")
record/direct . . .ED =DBCLS ()
record/indirect. .. ED =DMS ("DBCLS")
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 69
MDBS DMS MANUAL -XI: UTILITY COMMANDS -MDBS DMS MANUAL
ñFTUP Rata Base CIKSe For Area pRcTqB
Command and Arguments
DBCLsA,area
Currency Indicators
=: none cpha.nqea: none
Description
DBCLSA flushes all page buffers that contain pages from the
indicated area. "Flush" means to rewrite pages, that have
changed since entering main memory, into auxiliary memory. A
user must have either read or write access to the indicated area
in order to use this command. The file on which the area resides
is closed by the operating system.
Examples of Command Usage
biock/direct ... ED =DBCLSA ("area")
blocklináirect 00. ED =DMS ("DBCLSA,area")
record/direct ... ED =DBCLSA ("area")
record/indirect... ED =DMS ("DBCLSA,area")
nRlcrrT Rata Base format GclNSLersion ppQjv
Command and Arguments
DBCNv,iblk
Currency Indicators
jZSM: none Crhanqed: none
Description
Arun unit can use the DBCNV command to cause the data base
control system to automatically convert date values into an
alternative format as they are transferred between that run unit
and adata base. As avalue is transferred to adata base, it is
converted from the alternative format to the standard MDBS format
(mm/dd/yyyy for date, prior to compression). Conversely, as a
value is transferred to the run unit, it is converted from the
standard MDBS format to the alternative format.
The desired alternative format is indicated by the value of
iblk's host language variable¢ This variable must be consistent
with aone byte, unsigned data item. The permissible iblk
variable values and their correspcinding formats are:
lmm/dd/yyyy (the standard MDBS date format)
2dd/mm/yyyy
3yyyy/mm/dd
4yyyy/dd/mm
j
70 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -XI: UTILITY COMMANDS -MDBS DMS MANUAL
DBCNV can be invoked multiple times within arun unit to switch
between various date formats.
DBCNV can also be used to allow (or disallow) null date or time
values. The standard MDBS default condition is that null dates
and null times are not allowed. Additional permissible iblk -
variable values and their effects are.as follows:
5null dates are allowed on input
6null dates are not allowed on input (default condition)
7null times are allowed on input
8null'times are not allowed on input (de£ault condition)
Here, "input" refers to any attempt to create or alter the value
of adate or time data item. IE anull date or time is involved
in asorted relationship, null values are sequenced after non-
null values.
Examples of Command Usage
block/direct ... ED =DBCNV ("iblk")
block/indirect ... ED =DMS ("DBCNV,iblk")
record/direct ... ED =DBCNV (iblk)
record/indirect ... ED =DMSD ("DBCNV",iblk)
nFlF1\FT Rata Base ENjLironment options ñPFBF
Command and Arguments
DBENV,iblk
Currency Indicators
iZ=± none chanqpcí: none
Description
Arun unit can use this command to customize its processing
environment by specifying how the data base control system should
behave when interacting with that run unit. The value of iblk's
host language variable governs which aspect oF the environment is
altered. If the value is l, 2or 3then MDBS.DMS behavior is
altered for ,áu run units for as long as any of them still has
the data base open. The host language variable for ib1k must be
consistent with aone byte unsigned data item. Since option l
alleviates some of the checking that is otherwise performed by
MDBS.DMS, it can increase the processing speed of an application
program that modifies adata base. This option is typically used
in an application program that is known to be "bug" free.
If the variable has avalue of l, then MDBS.DMS does not perform
acheck to determine whether arecord being connected to an owner
record tor aset is already owned by that owner record via that
set.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 70.1
MDBS DMS MANUAL -XI: UTILITY COMMANDS -MDBS DMS MANUAL
If the variable has avalue of 2, then checksums on disk reads
are not suppressed. If the variable has avalue of 3, the
MDBS.DMS automatically performs aDBSAVE whenever aDML command
causes achange to apage(s) in memory. Although these two
options provide additional integrity safeguards, they will result
in slower processing. G
If iblk's variable has avalue of 4, then no passive lock
checking will be performed for the run unit that invokes DBENV.
Though this option results in faster processing of the run unit's
DML commands, it should be used QJCljtL Ukh eYtreme rpÁl1r.inn because
it eliminates asignificant portion of the built-in integrity
checking. When its passive lock checking is disabled, the run
unit will be allowed to alter records that are pasively locked by
other run units. It will not be allowed to actively lock a
record that is passively locked by others. The usual record
deletion and set removal integrity restrictions are still
enforced (see Table XIV-l).
If iblk's variable has avalue of 5, the run unit's attempts to
find arecord based on asort key (e.g., with FMSK) will be
processed in aslightly different way than usual. If arecord
with an indicated sort key value cannot be found (because it does
not exist), then the pertinent currency indicators (CRU and
eitherCOorCM) becomenull and the command status is 255.
If the variable has avalue of 6, the automatic FFM or FFO that
is normally carried out for assignment commands (e.g., som is
not performed. In some situations this allows the run unit's
control logic to be more concise.
After DBENV has been invoked to alter some aspect of the
environment, that aspect of the environment can be restored to
its default behavior. This is accomplished by invoking DBENV
again, using avariable value that is lOó greater than what was
previously used. For instance, if iblk's variable has avalue of
105, thentheeffectof formerly invokingDBENVwith avalue of 5
is no longer in force. If DBENV is invoked with avalue of lOl,
102, or 103 then the normal MDBS.DMS behavior is restored for all
run units.
Examples of Command Usage
block/direct ... ED =DBENV ("iblk")
block/indirect ... ED =DMS ("DBENV,ib1k")
record/direct ... ED =DBENV (iblk)
record/indirect... ED =DMSD ("DBENV",iblk)
70.2 Rev. 85A (C) COPYRIGHT 1983 Micro Data Base Systems, Inc.
~
MDBS DMS MANUAL -XI: UTILITY COMMANDS -MDBS DMS MANUAL
DBQEN Data Base Q12eN DEQRN
Command and Arguments
DBOpN,iblk
Currency Indicators
tIs2g: none cbaljgQg: CO(system-owned set) <——system
CO(other sets) <——null
CM(all sets) <——null
CRU F——system
CU(1),CU(2),CU(3),CU(4) (null
Description
DBOPN opens adata base for processing by an application program.
An application program IDJJmÁÉ invoke the DBOPN command hQfQrg any
data held in the data base can be accessed. There are four host
language variables for the iblk data block (or program record
type), which MDBS.DMS expects in the following sequence:
l. The first variable's value is auser's name that has
been specified in the DDL. This variable must be
consistent with astring data item of no more than 16
bytes.
2. The second variable's value is the user's password as
specified in the ddl. This variable must be consistent
with astring data item of no more than 12 bytes.
3. The third variable's value indicates the type of pro-
cessing that the program will perform. This variable
must be consistent with astring data item of no more
than 4bytes. If the variable's value begins with r,
the program is allowed to perform retrieval only (i.e.,
read access only, regardless of auser's write access
codes). If it begins with M, the program can modify
(as well as retrieve) data. If the variable's value
begins with e, the run unit has exclusive modification
and retrieval access to adata base, subject to
security constraints; in amultiuser environment this
prohibits any other application program from accessing
adata base, until the program with exclusive access
invokes dbcls. Since it is not sharing the data base
with other run units, arun unit with exclusive access
will execute Easter than if it had ror maccess.
4. The fourth variable's value is the fully qualified file
name for the main area of the data base being opened.
This variable must be consistent with astring data
item; the maximum length is operating system dependent.
It cannot exceed the length of afully qualified file
name permitted in the operating system (consult the
appropriate system specific manual).
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 83A 71
MDBS DMS MANUAL -XI: UTILITY COMMANDS -MDBS DMS MANUAL
In block-oriented languages, the iblk data block must be the last
data block defined (see DEFINE command) before invoking DBOPN.
This block and all other data blocks defined before invoking
DBOPN are inoperative after invoking DBOPN. (They must be
defined again, after DBOPN, in order to be used after DBOPN.)
Upon opening adata base for processing the current oÍl run unit
and the current owners of all system-owned sets become the SYSTEM
record occurrence. All other currency indicators are null. Four
user-defined currency indicators are automatically allocated. If
any page images exist on the page-image file, they are used to
automatically restore data base consistency. The page-image file
must have been delcared with the PIFD command (Chapter XV) prior
to invoking DBOPN. For the RTLform, acommand status warning of
74 is returned if no log file is present; this does not prevent
the data base from being opened.
Although DBOPN opens only the main area of the data base, other
areas are automatically opened by MDBS.DMS when the application
program needs to access records in those areas. These are opened
for the same type of processing as the main area. acommand
status error results if an area that needs to be automatically
opened is not on-line. Acommand status error results if the
user does not have read access or write access to the area that
needs to be opened.
Examples and Command Usage
block/direct ... ED =DBOPN ("iblk")
block/indirect ... ED =CALL OMS ("DBOPN,iblk")
record/direct ... ED =DBOPN (iblk)
recorá/indirect... ED =CALL DMSD ("DBOPN",iblk)
DBQRNÁ Data Base QEeN Area DBQRNÁ
Command and Arguments
DBOpNA,area,iblk
Currency Indicators
UsQg: none chmmsk none
72 Rev. 83A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
gi MDBS DMS MANUAL -XI: UTILITY COMMANDS -MDBS DMS MANUAL
Description
DBOPNA explicitly opens the indicated area for processing.
MDBS.DMS expects to find this area on the file indicated by the
value of ib1k's host language variable. This variable must be
consistent with astring data item; its size is operating system "
dependent, but cannot exceed the maximum length of afully
qualified file name allowed by the host operating system (consult
the pertinent system specific manual). The value of the variable
must be the fully qualified name of afile that is on-line when
DBOPNA is invoked. This name does not need to match the file
name assigned to the area in the DDL specifications. If the
indicated file is not on-line, acommand status of 54 is
returned. This fact can be used by the application developer to
determine whether an end user of the application program has the
appropriate disks on-line; if they are not, acorresponding
prompt can be issued to the end user.
If iblk's host language variable has anull value, then MDBS.DMS
assumes that the area exists on the file specified for that area
in the DDL specifications (or its default name, if none is
specified).
Examples and Command Usage
block/direct ... E0=DBOPNA("area,iblk")
or ED =DBOPNA ("area") .
block/indirect ... ED =OMS ("DBOPNA,area,iblk")
or ED =DMS ("DBOPNA,area")
record/direct ... ED =DBOPNA ("area",iblk)
record/ináirect... ED =CALL DMSD ("DBOPNA,area",iblk)
nFlq)TTF Data Ease SAYE np)qpvF
Command and Arguments
DBSAVE (no arguments)
Currency Indicators
""' U,áU: none charlgeg: none
-"(
Description
DBSAVE flushes the page buffers, regardless of whether the run
"" unit is executing in asingle-user or multiuser environment.
This saves all changes that have been made to pages (in the page
buffers) since they entered main memory. These changed pages are
saved by rewriting them into the data base that exists in aux-
iliary memory. It is advisable to invoke DBSAVE after extremely
crucial transactions that change data base contents. This
guarantees that those transactions are immediately incorporated
into the permanent copy of adata base. In the event of an
abnormal interruption of arun unit, the following rule holds.
If no changes have been made to the data base since the last
DBSAVE, then the data base is consistent and can be re-opened
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. 73
9DBS DMS MANUAL -XI: UTILITY COMMANDS -MDBS DMS MANUAL
successfully (i.e., without acommand status error of 15). In a
multiuser environment, the data base control system may
automatically invoke DBSAVE many times, independently of any
executing run unit. Thus an abnormal interruption may still
leave the data base in aconsistent state so that it can be
successfully re-opened.
Examples of Command Usage
block/direct ... ED =DBSAVE ()
block/indirect ... ED =OMS ("DBSAVE")
recorá/direct ... ED =DBSAVE ()
record/indirect... ED =DMS ("DBSAVE")
DBSTAT Rata Base STáTistics DBSMT
Command and Arguments
DBSTAT,oblk
Currency Indicators
USC9: none changgsj: none
Description
Statistics on data base utilization are returned as values of
oblk's five host langugage variables. Each of these variables
must be consistent with atwo byte, unsigned data item. The
sequence of the five returned statistics is as follows:
l. the number of page buffers currently allocated in main
memory,
2. the number of times (since opening the data base) that
the most recent page access was to adifferent page
than the last page access,
3. the number of read requests issued by MDBS.DMS since
opening the data base,
4. the number of write requests issued since the data base
was opened that were due to DBSAVE or to background
processing in amultiuser environment,
5. the total number of write requests issued by MDBS.DMS
since opening the data base.
Examples of Command Usage
block/direct ... ED =DBSTAT ("oblk")
block/indirect ... ED =dms ("DBSTAT,oblk")
record/direct ... ED =DBSTAT (oblk)
record/indirect... ED =DMSD ("DBSTAT",oblk)
74 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -XI: UTILITY COMMANDS -MDBS DMS MA-NUAL
GMC Get Member Count GMC
Command and Arguments
GMC,set-l,oblk
Currency Indicators
tI££g: CO(set-l) changgg: none
Description
The number of member records connected to the current owner oft
set-l is returned in the host language variable defined for oblk.
This variable must be consistent with afour byte, unsigned data
item (see system specific manuals). If auser does not have read
access to set-l, the member count is not returned and acommand
status error is issued.
Examples of Command Usage
block/direct ... ED =GMC ("set-l,oblk")
block/indirect ... ED =DMS ("GMC,set-l,oblk")
record/direct ... ED =GMC ("set-l",oblk)
record/indirect... ED =DMSD ("GMC,set-l",oblk)
GQC Get Qwner Count GQC
Command and Arguments
GOC,set-l,oblk
Currency Indicators
tlÁéSl: CM(set-l) charlg£g: none
Description
The number of owner records connected to the current member of
set-l is returned in the host language variable defined for ob1k.
This variable must be consistent with afour byte, unsigned data
item (see system specific manuals). If auser does not have read
access to set—l, the owner count is not returned and acommand
status error is issued.
Examples of Command Usage
block/áirect ... ED =GOC ("set-l,oblk")
block/indirect ... ED =OMS ("GOC,set-l,oblk")
record/direct ... ED =GOC ("set-l",oblk)
record/indirect... ED =DMSD ("GOC,set-l",ob1k)
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. 75
MDBS DMS MANUAL -XI: UTILITY COMMANDS -MDBS DMS MANUAL
GTC Get Type of kurrent of run unit GTC
Command and Arguments
,
GTC,oblk
Currency Indicators
tl§qg: cru ChangQgj: none
Description
The name of the record type for the record that is current of run
unit is returneá in oblk's host language variable. That variable
must be consistent with an eight byte, character data item.
Examples of Command Usage
block/direct ... ED =GTC ("oblk")
block/indirect ... ED =DMS ("GTC,oblk")
record/direct ... ED =GTC (oblk)
record/indirect... EC =DMSD ("GTC",oblk)
GTM Get Type of Member g=
Command and Arguments
GTM,set-l,oblk
Currency Indicators
ljscd: CM(set-l) chAngqg: none
Description
The name of the record type for the record that is the current
member of set-l is returned in oblk's host language variable.
That variable must be consistent with an eight byte, character
data item. If auser does not have read access to set-l, a
command status error is returned and the value of oblk's host
language variable is unchanged.
Examples of Command Usage
block/direct ... ED =GTM ("set-l,oblk")
block/indirect ... ED =OMS ("GTM,set-l,oblk")
record/direct ... ED =GTM ("set-l",oblk)
record/indirect... ED =DMSD ("GTM,set-l",oblk)
76 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL ,-XI: UTILITY COMMANDS -MDBS DMS MANUAL
GTQ get ;jype of Qwner GTQ
Command and Arguments
gTO,set-l,ob1k
Currency Indicators
=: CO(set-l) c[,hanqed: none
Description
The name of the record type for the record that is the current
owner of set-l is returned in oblk's host language variable.
That variable must be consistent with an eight byte, character
data item. If auser does not have read access to set-l, a
command status error is returned and the value of oblk's host
language variable is unchanged.
Examples of Command Usage
block/direct ... ED =GTO ("set-l,oblk")
block/indirect ... ED =DMS ("gTO,set-1,oblk")
record/direct ... ED =GTO ("set-l",oblk)
record/indirect... ED =DMSD ("gTO,set-1"oblk)
NCL Null all Currency 1Micators ÁCI
Command and Arguments
NCI (no arguments)
Currency Indicators
none Chanqed: all currency indicators null
Description
All currency indicators are made null, with the exceptions of
current owners of system-owned sets. The active lock statuses
are not affected. Thus, if MCP is in effect, NCI nulls the
current of run unit; but as soon as the current of run unit again
becomes non-null, its record is actively locked.
Examples of Command Usage
block/direct ... ED =NCI ()
block/indirect ... ED =DMS ("NCI")
record/direct ... ED =NCI ()
record/indirect... ED =DMS ("NCI")
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 77
MDBS DMS MANUAL -XI: UTILITY COMMANDS -MDBS DMS MANUAL
=Test Current of run unit flor Null TCN
Command and Arguments
TCN (no arguments)
Currency Indicators
KZáOi: cru ch1'ínqpc1¶ none
Description
Acommand status of 255 is returned if the current of run unit is
null. If it is not null, the command status is O.
Examples of Command Usage
block/direct ... ED =TCN ()
block/indirect ... ED =DMS ("TCN")
record/direct ... ED =TCN ( )
record/indirect ... ED =DMS ("TCN")
=Test Current of run unit Type =
Command and Arguments
TCT,rec
Currency Indicators
cru ch(Anqpd: none
Description
The record type of the current of run unit is compared to rec.
If they are the same, the command status is O. If they are not
the same, the command status is 3.
Examples of Command Usage
block/direct ... ED =TCT ("rec")
block/indirect ... ED =DMS ("TCT,rec")
record/direct ... ED =TCT ("rec")
record/indirect... ED =DMS ("TCT,rec")
78 Rev. 83A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -XI: UTILITY COMMANDS -MDBS DMS MANUAL
TMN Test Member for Null TMN
Command and Arguments
.
TMN,set-l
Currency Indicators
tlswj: CM(set-l) chaQgea: none
Description
If the current member of set-l is null, acommand status of 255
is returned. If it is not null, the command status is O.
Examples of Command Usage
block/direct ... ED =TMN ("set-l")
block/indirect ... ED =OMS ("TMN,set-l")
record/direct ... ED =TMN ("set-l")
record/indirect ... ED =OMS ("TMN,set-1")
TMT Test Member Type TMT
Command and Arguments
TMT,rec,set-l
Currency Indicators
9áWj: CM(set-l) Ch¢nggd: none
Description
The record type of the current member of set-l is compared to
rec. If they are the same, the command status is O. If they are
not the same, the command status is 3.
Examples of Command Usage
block/direct ... ED =TMT ("rec,set-l")
block/indirect ... ED =OMS ("TMT,rec,set-l")
record/direct ... ED =TMT ("rec,set-1")
record/ináirect... ED =OMS ("TMT,rec,set-l")
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 83A 78.1
MDBS DMS MANUAL -XI: UTILITY COMMANDS -MDBS DMS MANUAL
TQN Test Qwner for Null TQN
Command and Arguments
TON,set-l ·
Currency Indicators
nsqg: CM(set-l) chang2g: none
Description
If the current owner of set-l is null, acommand status of 255 is
returned. If it is not null, the command status is O.
Examples of Command Usage
block/direct ... ED =TON ("set-l")
block/indirect ... ED =OMS ("TON,set-l")
record/direct ... ED =TON ("set-l")
record/indirect ... ED =OMS ("TON,set-l")
TQT Test Qwner Type TQT
Command and Arguments
TOT,rec,set-l
Currency Indicators
U,áC9: CO(set-l) cbaL]g£g: none
Description
The record type of the current owner of set-l is compared to rec.
If they are the same, the command status is O. If they are not
the same, the command status is 3.
Examples of Command Usage
block/direct ... ED =TOT ("rec,set-l")
block/indirect ... ED =OMS ("TOT,rec,set-l")
record/direct ... ED =TOT ("rec,set-l")
record/indirect..Q ED =DMS ("TOT,rec,set-l")
78.2 Rev. 83A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
W
MDBS DMS MANUAL -XI: UTILITY COMMANDS -MDBS DMS MANUAL
TñN Test User indicator for Nüll TUN
Command and Arguments
TUN,iblk
Currency Indicators
úáU: CU(i) cbaDgqg: none
Description
The value of iblk's host language variable determines the user
indicator which is tested for being null. That variable must be
consistent with aone byte, unsigned data item. A255 command
status is returned if the indicated user indicator is null. If
it is not null, then aOcommand status is returned.
Examples of Command Usage
block/direct ... ED =TUN ("iblk")
block/indirect ... ED =OMS ("TUN,iblk")
record/direct ... ED =TUN (iblk)
record/indirect... ED =DMS ("TUN",iblk)
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 83A 79
MDBS DMS MANUAL -XI: UTILITY COMMANDS -MDBS DMS MANUAL
This page intentionally left blank.
80 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL MDBS DMS MANUAL
XII. BOOLEANCOMMANDS
A. Overview
MDBS DI4L supports the Boolean int£rsect (i.e., logical AND) and -
Ái: Efermce operators on sets. Each Boolean DML command has three sets
as arguments. The first two sets are used to specify inputs to the
Boolean operation. The third set is asystem-owned set whose member
record occurrences, after the execution of aBoolean command, are the
result of the Boolean operation. This system-owned set must be either
SSYSSET or aset that owns all record types whose occurrences could be
aresult of the Booleanoperation. The first two set names may or may
not be the same (SSYSSET can be used as an input set). The third set
can be the same as either of the first two sets. The user of a
Boolean command must have read access to the first two sets and write
access to the third set.
Each Boolean command utilizes the first two user-defined
indicators. These must have been allocated prior to invoking the
Boolean command. They are automatically allocated by the DBOPN
command and can be reallocated by the AUI command, as needed.
There are four intersect commands. Take the intersection of
l. the members of the owner of the first set (as indicated by
the first user indicator) and the members of the owner of
the second set (as indicated by the second user indicator):
AMM: ,
2. the members of the owner of the first set (as indicated by
the first user indicator) and the owners of the member of
the second set (as indicated by the second user indicator):
AMO,
3. the owners of the member of the first set (as indicated by
the first user indicator) and the members of the owner of
the second set (as indicated by the second user indicator):
AOM,
4. the owners of the member of the first set (as indicated by
the first user indicator) and the owners of the member of
the second set (as indicated by the second user indicator):
AOO.
Similarly, there are four difference commands. Exclude from
l. the members of the owner of the first set (as indicated by
the first user indicator) those records that are also
members of the owner of the second set (as indicated by the
second user indicator): XMM,
2. the members of the owner of the first set (as indicated by
the first user indicator) those records that are also owners
of the member of the second set (as indicated by the second
user indicator): XMO,
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 82A 81
MDBS DMS MANUAL -XII. BOOLEAN COMMANDS -MDBS DMS MANUAL
3. the owners of the member of the first set (as indicated by
the first user indicator) those records that are also
members of the owner of the second set (as indicated by the
second user indicator): XOM,
4. the owners of the member of the first set (as indicated by
the first user indicator) those records that are also owners
of the member of the second set (as indicated by the second
user indicator): XOO.
In the case of multiple areas, all areas allowing pointer arrays must
be on-line during the execution of Boolean commands.
b. Command Details
UM And of Members with Members m
Command and Arguments
AMM,set-l,set-2,set-3
Currency Indicators
Q8Q!á: CU(l) ch@ngqg: CM(set-3kc——null
CU(2) CRU
Description
Take the intersection (logical AND) of the members of the owner
of set-l (denoted by the first user indicator) and the members of
the owner of set-2 (denoted by the second user indicator). All
records in the intersection are made members of set—3© Any
member of set-3 that is not in the intersection is disconnected
from set—3 during the execution of amm. The current member of
set-3 and the current of run unit become null and the command
status becomes 255. If the member order of set-3 is not sorted,
then the ordering of members of set-3 after AMM is afunction of
the member order of set-l and the member order OE set-2. $SYSSET
has FIFO ordering.
It isnot reasonable to use AMM unless the member recordtypes of
set—l and the member record types of set-2 have at least one
record type in common. Otherwise, the intersection will be
empty. IE set=3 iS jjQt SSXSSETl then it Íojját qwji each tQGOÚi
L¥K2Q khat La tmth awmoker Qt sek=L ariá awmoker set=2. If
the intersection is empty, then set-3 will have no members€
Examples and Command Usage
block/direct ... ED =AMt4 ("set-l,set-2,set-3")
block/indirect ... ED =OMS ("AMM,set-l,set-2,set-3")
recorá/direct ... ED =AMM ("set-l,set-2,set-3")
record/indirect... ED =OMS ("AMM,set-l,set-2,set-3")
82 Rev. 83A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -XII. BOOLEAN COMMANDS -MDBS DMS MANUAL
AMQ And of Members with Qwners AMQ
Command and Arguments
AMO,set-l,set-2,set-3
Currency Indicators
u££g: cu (l) ch!angQg: cm (set-3) <——nu1l
CU(2) CRU <—— null
Description
Take the intersection (logical AND) of the members of the owner
of set-l (denoted by the first user indicator) and the owners of
the member of set-2 (denoted by the second user indicator). All
records in the intersection are made members of set-3. Any
member of set—3 that is not in the intersection is disconnected
from set—3 during the execution of AMO. The current member of
set-3 and the current of run unit become null and the command
status becomes 255. If the member order of set-3 is not sorted,
then the ordering of members of set-3 after AMO is afunction of
the member order of set-l and the owner order and of set-2.
SSYSSET has FIFO ordering.
It is not reasonable to use AMO unless the member record types of
set—l and the owner record types of set—2 have at least one
record type in common. Otherwise, the intersection will be
empty. If set=3 iS ñQt SSXSSETt theri it mast Qwñ mcb tQCQtá
Kypq that is tmth químoket OF sek=L and an S2WñQL CZ:E S£t=2. If
the intersection is empty, then' set-3 will have no members.
Examples and Command Usage
block/direct ... ED =AMO ("set-l,set-2,set-3")
block/indirect ... ED =DMS ("AMO,set-l,set-2, set-3")
record/direct ... ED =AMO ("set-l,set-2,set-3")
record/indirect. . . ED =DMS ("AMO, set-l, set-2, set-3 ")
AQK áná of Qwners with Members =
Command and Arguments
AOM,set-l,set-2,set-3
Currency Indicators
Usq± cu (l) chanmí :CM(set-3) (null
CU(2) CRU <—— null
-
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 82B 83
MDBS DMS MANUAL -XII. BOOLEAN COMMANDS -MDBS DMS MANUAL
Description
Take the intersection (logical AND) of the owners of the member
of set-l (denoted by the first user indicator) and the members of
the owner of set-2 (denoted by the second user indicator). All
records in the intersection are made members of set—3. Any
member of set—3 that is not in the intersection is disconnected
from set—3 during the execution of ADM. The current member of
set-3 and the current of run unit become null and the command
status becomes 255. If the member order of set-3 is not sorted,
then the oráering of members of set-3 after AOM is afunction of
the owner order of set-l and the member order of set-2. $SYSSET
has FIFO ordering.
It is not reasonable to use ADM unless the owner record types of
set-l and the member record types of set-2 have at least one
record type in common. Otherwise, the intersection will be
empty. IE set=3 iS ijQt SSXSSET.l thmi it m,ak Qwñ each tecaúi
Xyp9 that ia hoth álj QWljGt SU set=L an9 alD£u)ket aet=2. If
the intersection is empty, then set—3 will have no members.
Examples and Command Usage
block/direct .C@ ED =ADM ("set—l,set-2,set—3")
block/indirect .. .ED =DMS ("AONl,set-l, set-2,set-3")
record/direct ... ED =ADM ("set-l,set-2,set-3")
record/indirect. .. ED =DMS ("AOM,set-l, set-2, set-3"}
áQQ And of Qwners with Qwners AQQ
Command and Arguments
AOO,set-l,set-2,set-3
Currency Indicators
uuj: cu (l) ch,angeg: CM(set-3) (null
CU(2) CRU <—— null
Description
Take the intersection (logical AND) of the owners of the member
of set-l (denoted by the first user indicator) and the owners of
the member of set—2 (denoted by the second user indicator). All
records in the intersection are made members of set-3. Any
member of set-3 that is not in the intersection is disconnected
from set-3 during the execution of AOO. The current member of
set—3 and the current of run unit become null and the command
status becomes 255. If the member order of set-3 is not sorted,
then the ordering of members of set-3 after AOQ is afunction of
the owner order of set-l and the owner order of set-2. $SYSSET
has FIFO ordering.
84 Rev. 82B (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -XII. BOOLEAN COMMANDS -MDBS DMS MANUAL
It is not reasonable to use ADO unless the owner record types of
set-l and the owner record types of set-2 have at least one
record type in common. Otherwise, the intersection will be
empty. If se: k=3 is jjQt §SXSSETl then it wjjst Qwñ each recoÚi
Lypq that is kQth áD qsu)£k Qt &Qt=1 ansi ájj QjLljeL se: k=2. If _
the intersection is empty, then set-3 will have no members.
Examples and Command Usage
block/direct ... ED =ADO ("set-l,set-2,set-3")
block/indirect ... ED =OMS ("AOO,set-l,set-2,set-3")
record/direct ... ED =AOO ("set-l,set-2,set-3")
recorá/ináirect... ED =DMS ("AOO,set-l,set-2,set-3")
=eXclude Members from Members XMN
Command and Arguments
XMM,set-l,set-2,set-3
Currency Indicators
WQáv CU(l) cjj8ngesj: CM(set-3) <null
CU(2) CRU <——null
Description
Exclude (logical difference) from the members of the owner of
set-l (denoted by the first user indicator) those records that
are also members of the owner of set-2 (denoted by the second
indicator). All records in the difference are made members of
set-3. Any member of set-3 that is not in the logical difference
is disconnected from set-3 during the execution of XMM. The
current member of set-3 and the current of run unit become null
and the command status becomes 255. If the member order of set-3
is not sorted, then the orderingof membersof set-3 after XMM is
afunction of the member order of set-l and the member order of
set-2. $SYSSET has FIFO ordering.
It is not reasonable to use XMM unless the member record types of
set—l and the member record types of set-2 have at least one
record type in common. I£set=3isnQtSSYSSET&thenik Íojjst QWlj
each l:cgql!j Lye?q that is hath aioember Qt set=1 arid gidqiÚ2Ql aE
set=2. If the difference is empty, then set-3 will have no
members.
Examples and Command Usage
block/direct ... ED =XMM ("set-l,set-2,set-3")
block/indirect ... ED =DMS ("XMM,set-l,set-2,set-3")
record/direct ... ED =XMM ("set-l,set-2,set-3")
record/ináirect... ED =DMS ("XMM,set-l,set-2,set-3")
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 82B 85
MDBS DMS MANUAL -XII. BOOLEAN COMMANDS -MDBS DMS MANUAL
XMQ eXclude Members from Qwners =
Command and Arguments
XMO,set-l,set-2,set-3
Currency Indicators
tlsé9: CU(l) chaRgqg: CM(set-3)+——ñull
CU(2) CRU <null
Description
Exclude (logical difference) from the members of the owner of
set-l (denoted by the first user indicator) those records that
are also owners of the member of set-2 (denoted by the second
indicator). All records in the difference are made members of
set-3. Any member of set-3 that is not in the logical difference
is disconnected from set-3 during the execution of XMO. The
current member of set—3 and the current oft run unit become null
and the command status becomes 255. If the member order of set-3
is not sorted, then the orderingof membersof set-3 after XMO is
afunction of the member order of set-l and the owner order oF
set-2. $SYSSET has FIFO ordering.
It is not reasonable to use XMO unless the member record types of
set-l and the owner record types of set-2 have at least one
recordtype in common. I£sQtz3i£Dgt§sYSSETLtheDitwAst qwij
2@gb l2gqksj Ky1?£ that is tmtb aumotmt ae: E=L ami g¡j qwilqk Qt
sek=2. If the difference is empty, then set-3 will have no
members.
Examples and Command Usaqe
block/direct ... ED =XMO ("set-l,set-2,set-3")
block/indirect ... ED =OMS ("XMO,set-l,set-2,set-3")
record/direct ©0. ED =XMO ("set-l,set-2,set-3")
record/indirect... ED =DNIS ("XMCl,set-l,set-2,set-3")
86 Rev. 82B (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -XII. BOOLEAN COMMANDS -MDBS DMS MANUAL
XQM eZclude Qwners from Wembers XQM
Command and Arguments
XOM,set-l,set-2,set-3
Currency Indicators
tIsé9: CU(l) chÁrlg£g: CM(set-3)<——null
CU(2) CRU <——null
Description
Exclude (logical difference) from the owners of the member of
set-l (denoted by the first user indicator) those records that
are also members of the owner of set-2 (denoted by the second
indicator). All records in the difference are made members of
set-3. Any member of set-3 that is not in the logical difference
is disconnected from set-3 during the execution of XOM. The
current member of set—3 and the current of run unit become null
and the command status becomes 255. If the member order of set-3
is not sorted, then the orderingof members of set-3 after XOM is
afunction of the owner order of set-l and the member order of
set-2. SSYSSET has FIFO ordering.
It is not reasonable to use XOM unless the owner record types of
set—l and the member record types of set-2 have at least one
record type in common. Ifset=3isnQtSsYssETLthQBit Íojjst Qwñ
each l£cqkáj t¥p:éthat is Emth an Qwrlet Qt set=í and ,a umoker Qt
§QtÁñÁ If the difference is empty, then set-3 will have no
members.
Examples and Command Usage
block/direct ... ED =XOM ("set-l,set-2,set-3")
block/indirect ... ED =OMS ("XOM,set-l,set-2,set-3")
record/direct ... ED =XOM ("set-l,set-2,set-3")
record/indirect... ED =DMS ("xOM,set-l,set-2,set-3")
t
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 82B 87
MDBS DMS MANUAL -XII. BOOLEAN COMMANDS -MDBS DMS MANUAL
ZQQ eZclude Qwners from Qwners XQQ
Command and Arguments
XOO,set-l',set-2,set-3
Currency Indicators
UsM: CU(l) changesj: CM(set-3)< null
CU(2) CRU (null
Description
Exclude (logical difference) from the owners of the member of
set-l (denoted by the first user indicator) those records that
are also owners of the member of set—2 (denoted by the second
indicator). All records in the áifference are made members of
set-3. Any member of set-3 that is not in the logical difference
is disconnected from set-3 during the execution of XOO. The
current member of set—3 and the current of run unit become null
and the command status becomes 255c If the member order of set-3
is not sorted, then the ordering of members of set-3 after XOO is
afunction of the owner order Qt set-l and the owner order of
set-2. $SYSSET has FIFO ordering.
It is--not reasonable to use XOO unless the owner record types of
set-l and the owner record types of set-2 have at least one
record type in common. I£aek=3iaQQt§SYSS£T^thgRit msist qwjj
each KégQLsj FYpe that ia both an Qwnqt Qt =:L=L and ál) Qwñer czF
aQt=2. If the difference is empty, then set-3 will have no
members.
Examples and Command Usage
block/direct ..: ED =XOO ("set-l,set-2,set-3")
block/indirect ... ED =DMS ("XOQ,set-l,set-2,set-3")
record/direct ... ED =XOQ ("set-l,set-2,set-3")
record/indirect... ED =OMS ("XOO,set-l,set-2,set-3")
88 Rev. 82B (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL MOBS OMS MANUAL
XIII. SPECIALCOMMANDS
A. Overview
There are several MDBS DML commands that are used only within
certain host languages or environments. These are referred to as
special commands. For instance, there are some commands that are used
only in block-oriented host languages in order to define, extend, and
undefine data blocks. Another special command is employed in
languages that do not allow DML commands to be used as functions that
take on acommand status value. This command is used to set up the
host language variable that will hold the command status. Yet another
special command is used to alter the end-of-set command status number
(255). For instance, with FORTRAN, 255 can be altered to -l; this is
useful in branching structures involving an arithmetic IF statement.
Avery important special command, used with nearly every host
language, is SETPBF. It is used at the start of aprogram to set up
the program buffers that MDBS.DMS will utilize for that run unit. In
asingle user environment, the program buffers are used as the page
buffer region. It is advisable to allocate as much space as possible
for page buffers. In amultiuser environment, the page buffer region
is shared by many users and is therefore not allocated by an
individual run unit. Each run unit may however, have its own program
buffers that are used by MDBS.DMS when interacting with the run unit.
arun unit uses SETPBF to allocate its program buffers. In some
multiuser environments there is yet another special DML command that
allows each run unit to control its own throughput priority level.
The system specific manual for ahost language and environment
indicates which of these special commands are available in that
setting.
B. Command Details
RTTFn"l =er EM Qf £et gTTFn"F
Command and Arguments
ALTEOS (no arguments)
Currency Indicators
We± none c,.ha.n.qeq: none
Description
The command status value of 255 that is normally used to indicate
an end-of-set is altered within the scope of the application
program that uses ALTEOS. If ALTEOS is permitted within agiven
host language, the system specific manual for that language
indicates the altered end-of-set command status value (usually
"l).
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 89
MDBS DMS MANUAL -XIII. SPECIAL COMMANDS MDBS DMS MANUAL
Examples of Command Usage
block/direct ... ED =ALTEOS ( )
block/indirect ... ED =DMS ("ALTEOS")
record/direct ... ED =ALTEOS ( )
record/indirect... ED =DMS ("ALTEOS")
PFTNTT Rata Base control system 1NITialization
Command and Arguments
DBINIT,host language variables
Currency Indicators
U: none .chanqed: none
Description
When DBINIT is available, it is invoked as the first DML command
of arun unit. Two (or more) host language variables or
constants are used as arguments. Tlie nature of these arguments
and the precise actions performed by DBINIT are operating system
speci£ic. See the appropriate system specific manual. In
general, DBINIT initializes the data base control system(s) to be
used by arun unit.
In run units that support DBINIT, asingle run unit can use
DBINIT to have multiple MDBS data bases open simultaneously.
Examples of Command Usage
See system specific manuals.
ñFNFT Rata Base aEL,ection mm
Command and Arguments
DBSEL,host language variable
Currency Indicators
9SM: none ch.gnqu: none
Description
Where DBSEL is available, it can be used by arun unit to select
any one of the concurrently open MDBS data bases for processinq.
The host language variable (or constant) is used to indicate
which of the data bases is to be processed.
Examples of Command Usage
See system specific manuals.
90 Rev. 83A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -XIII. SPECIAL COMMANDS MDBS DMS MANUAL
ñFFTNF PFFTNF data block PFFTNF
Command and Arguments
t
DEFINE,blk,list
Currency Indicators
jZSM: none chkanqed: none
Description
This command is used with host languages that do not support
program record types. It defines the blk data block to have the
characteristics indicated in list. The composition of list is
host language dependent. It typically consists of at least a
list of the host language variables that make up the data block.
FtíLl details for each host language appear in the system specific
manuals.
Adata block must have been defined with the define command
before it can be used as an argument in any other DML command. A
given host language variable can appear more than once in the
same or different data blocks. Many different data blocks can be
used in ahost language program. Only the last data block
defined be£ore using DBOPN will exist after invoking DBOPN. Ariy
data block defined after the data base is opened will continue to
exist until it is undefined (with the UNDEF command).
Examples of Command Usage
block/direct ... ED =DEFINE ("blk",list)
block/indirect ... ED =DMSD ("DEFINE,blk",list)
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 83A 90.1
W
MDBS DMS MANUAL -XIII. SPECIAL COMMANDS MOBS DMS MANUAL
pMqq1Tp =aet iLumR rírmr
Command and Arguments
DMssjp,host language jump description, command status array
Currency Indicators
lláéd: none Chq¡nqed: none
Description
This special command pertains to Chost languages and provides a
concise error trapping mechanism. The indicated host language
jump description is apointer to astack environment. The values
of the indicated array specify which command status numbers are
to be exempted from the error trapping. The last element of this
array must have avalue of O.
when DMSSjP is invoked, its first argument indicates the
environment to which control is transferred whenever acommand
status other than those specified in the array occurs. This
condition remains in force until DMSSjP is re-invoked with a
different argument (indicating adifferent error handling module
or adifferent set of exempt command status numbers). If the
first argument is O, then standard error handling is resumed. If
the second argument is Orather than an array, then all command
status numbers other than Oand 255 are trapped.
Example of Command Usage
See system specific manuals.
F"TFNP F"TFNP data block F"TFNñ
Command and Arguments
ExTEND,blk,list
Currency Indicators
g=d: none chanqed: none
Description
This command is used with host languages that do not support
program record types. It is used to extend the previously
defined blk data block by assigning more host language variables
to it. These additional variables are indicated in list and they
will follow the variables already defined for the data block.
The composition of list is host language dependent. It typically
consists of at least alist of the additional variables. FUI
details for each host language appear in the system specific
manuals.
90.2 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -XIII. SPECIAL COÍ4MANDS WJBS DMS MANUAL
The blk áata block must have been defined with the DEFINE command
before it can be used in an EXTUD command (otherwise acommand
status oF 7is returned). Agiven host language variable can
appear more than once in the same or different data blocks.
Examples of Command Usage
block/direct ... ED =EXTEND ("blk",list)
block/indirect ... ED =DMSD ("EXTEND,blk" ,list)
=MUtiuser 2rkxity Level MEL
Comínand and Arguments
!4PL, iblk
Currency Indicators
u=já: none rh'ínqF'a: none
Description
The MPL command is of interest in multiuser processing
situations. It enables different run units to have varying
degrees of throughput priority. IF arun unit invokes 1·!PL, the
value of iblk's host language variable is used to set that run
unit's priority. The iblk host language variable must be
consistent with atwo byte unsigned data item. Its value can be
any integer from lthrough 10.
The highest possible priority level is l. Selecting this level
results in throughput that is at least as East as level 2. Level
2throughput, in turn, is at least as fast as level 3, and so
forth. Arun unit that does not require fastest throughput
should use MPL to set its priority level lower than l(i.e.,
2-10) .arun unit that requires more than minimal throughput
should use MPL to set its priority level higher than 10 (i.e.,
9-l) .Arun unit can invoke 14PL repeatedly to alter its own
priority level at desired points in the program.
An interactive run unit has apriority level of 3until it
invokes MPL to get adifferent priority. abatch run unit has a
priority level of 7until it invokes ¢·1PL to get adifferent
priority.
Examples of Command Usage
block/direct ... ED =MPL ("iblk")
block/indirect .. .ED =DEIS ("MPL, iblk")
record/direct ... ED =blPL (iblk)
record/indirect. . . Ell =D14SD ("MPL" ,iblk)
(C) COPYRIGAT 1981 Micro Data Base Systems, Inc. Rev. 85A 91
MDBS DMS MANUAL -XIII. SPECIAL COMMANDS MDBS DMS MANUAL
'FTPRF =Exogram BtiEfer region "FTPBF
·Command and Arguments
SETpBF,list
Currency Indicators
=g: none chAnqec1: none
Description
This command allocates the region of main memory that is to be
used for program buffers. If SETPBF is invoked, it must appear
before any other DML command that needs to use program buffers.
The composition of list is environment dependent and is fully
discussed in the various system specific manuals. It typically
consists of astarting address and alength (in bytes) flor the
page buffer area. For instance, with fortran the starting
address could be indicated by an array name and the length would
be the number of bytes occupied by that array. In the C
language, for example, the SBRK function is adynamic memory
allocation function; the value returned by SBRK can be used as an
input to the SETPBF DML command.
In many environments the programmer can optionally omit SETPBF.
If omitted in asingle-user environment, MDBS.DMS itself sets up
the largest program (i.e., page) buffer region possible. If
omitted in amultiuser environment, MDBS.DMS allocates adequate
program buffers. For agiven operating environment, the system
specific manual indicates whether SETPBF can be omitted.
Examples of Command Usage
See system specific manuals.
!1NñFF ñNñf'Pine data blocks !1NT)FP
Command and Arguments
UNDEF (no arguments)
Currency Indicators
USU: none chanqed: none
Description
ALL data blocks previously defined in the program are undefined
(i.e., they no longer exist). This is typically employed in host
language programs that use chaining. UNDEF is invoked before the
call to achained subprogram and needed data blocks are redefined
within the subprogram.
92 Rev. 82B (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -XIII. SPECIAL COMMANDS MDBS DMS MANUAL
Examples of Command Usage
block/direct ... ED =UNDEF ()
block/indirect ... ED =DMS ("UNDEF")
yABiable for CoMmanO string
Command and Arguments
VARCMD,host language variable
Description
This special command is used in some host languages to specify a
host language variable, whose value is treated as aDML command
string. The application program sets the value of this variable
to the desired command string (i.e., DML command and arguments)
prior to each invocation of the data base control system.
Examples of Command Usage
See system specific manuals.
JIABCS !lÁUable for Command Status JIABCS
Command and Arguments
VARCS,host language variable
Currency Indicators
Uscd: none Cb@Rg£d: none
Description
The indicated host language variable will hold the command status
that results from invoking aDML command. VARCS is needed only
in those very few host languages that do not permit function
subprograms. If VARCS is available for ahost language (see
system specific manuals), it should be the first DML command used
in an application program. An exception to this is the case
where DBINIT is also available, in which case VARCS is invoked
after DBINIT.
Examples of Command Usage
See system specific manuals.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 83A 92.1
MDBS DMS MANUAL -XIII. SPECIAL COMMANDS MDBS DMS MANUAL
This page intentionally left blank.
92.2 Rev. 82B (C) COPYRIGET 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL MDBS DMS MANUAL
XIV. MULTIUSERLOCKINGCOMMANDS
A. Overview
In amultiuser environment, MDBS III supports two kinds of record
locking: passive and active. Arecord is passively locked if it is
the current of any run unit, the current owner or current member of
any set for any run unit, the current record occurrence of any record
type for any run unit (for 3a only: see Appendix A), or the current
record for any user-defined indicator in any run unit. Arecord can
be actively locked by invoking aDML multiuser locking command (of
which there are several). As long as arecord is locked by one run
unit, other run units are denied either read, write, or read and write
access to that record. The type of access denied depends on whether
the record is actively or passively locked.
Restrictions to access caused by multiuser locking do not affect
security restrictions on auser's access. All security restrictions
are enforced independently of whether an environment is single user or
multiuser (though page image posting is unavailable for multiuser).
Using amultiuser locking command in asingle user environment has no
effect.
In amultiuser environment, arecord can be read if it is not
locked or if it is passively locked. Arecord cannot be read if it is
actively locked. Arun unit cali modify arecord, if that record is
not locked by any other run unit. As long as arecord is actively or
passively locked by one run unit, no other run unit can modify it.
The programmer of application systems for amultiuser environment
should keep the following facts in mind:
l. If arecord is not actively locked and arun unit has that
record passively locked (i.e., it is acurrent record for
that run unit), any run unit can read it.*
2. If arun unit has arecord actively locked, no other run
unit can read that record until the active lock is removed
(with aDML command described in this chapter).
3. If arecord is not actively locked and more than one run
unit has that record passively locked, then no run unit can
change or delete the record until all other run units have
removed their passive locks on that record (e.g., with adml
assignment or find command).
4. If arun unit has arecord actively locked, no other run
unit can possibly change that record until the active lock
is removed.
There are four types of active locking commands, which differ
according to the scope of records that they actively lock. One
actively locks the current of run unit, which is normally only
*MDBS QRS utilizes passive locking.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 83A 93
MDBS DMS MANUAL -XIV. MULTIUSER COMMANDS -MDBS DMS MANUAL
Table XIV-l: Multiuser Locking Contention protocols
.
Run Unit B
attempt8 Disconnect ,
Find or Connect Disconnect all member
retrieve Modify record arecord (owner)
Run Unit alocked locked Create into from records Delete
hm record record record set-2 set-2 from sec-2 record
Pa8sive lock permitted nk permítted*"not relevant permitted not permitted not permitted not permitted
on a record If Ahas the if ahas Ehe
same CO and Qq same CO(CM) for
for set~2 =Bset-2 as Band
CM(CO) of set-2
for AIs non-
null
Active lock not permítted ncic relevant not relevant not relevant not relevant permitted not relevant
on a record
Active lock on not permitted not relevant not permitted not relevant not relevant permitted not permitted
all records of
arecord type
Active lock on not permitted not permitted not permitted not permitted not permitted not permitted not permitted
all record8 of through aet-l if attempt to í£ record Is if set-l "if set-l Wif sec-l "if record is
8et—l modify sort auto owner or 3et-2 set—2 set-2 owner or mem—
key value of member of ber of set-l
set~l set"l
*Modification is permitted if B's run unit environment has been
altered by invoking DBENV with ahost language variable value of 4.
94 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -XIV. MULTIUSER COMMANDS -MDBS DMS MANUAL
passively locked. Another command allows arun unit to declare that
one or more user-defined indicators are to be actively (rather than
passively) locked. Another kind of active locking command places an
active lock on all occurrences of arecord type. The fourth actively .
locks aset, meaning that no other run unit can utilize that set and
that the occurrences of that set's owner and member record types are
actively locked. Tíie effects of these locks on record retrieval,
modification, creation, connection, disconnection and deletion are
presented in Tab1e XIV-l. Aspecial DML command for setting run unit
priority levels is available in some environments (see Chapter XIII).
If one run unit attempts to access arecord occurrence (or set)
that is locked in such away that access is prohibited, then the
access attempt will be re-tried periodically until either access is
accomplished or some number of failed access tries have occurred. In
the latter case, acommand status message, indicating that aneeded
record is locked, is returned to the program. At any juncture in a
program, the programmer can use aDML command (MCC) to specify the
number of retries and the time units between tries. Defaults for
these are operating system dependent (see MDBS System Specific
Manuals).
As soon as arun unit invokes DBCLS, all records that it had
locked are freed.
B. Command Details
MAIL MUtiuser Active User indicators EAU
Command and Arguments
MAU,iblk
Currency Indicators
M: user indicators Cphanqer1: none
Description
One host language variable is defined for iblk. It must be
consistent with aone byte unsigned data item. The value of that
variable must be an integer between Oand 255 inclusive. This
value indicates how many user-defined indicators are to be made
actively locked, rather than passively locked. If the value is
O, then all user-defined indicators revert to their normal state
of being passively locked. If the value is 12, then user
indicators lthrough 12 are actively locked and all other
allocated user indicators are passively locked. MAU can be used
repeatedly within arún unit to alter the number of user
indicators that are actively locked.
Auser indicator must have been allocated (with AUI) before it
can be declared to be actively locked. acommand status message
of 62 or 63 results from MAU if any record that is the current
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 95
MDBS DMS MANUAL -XIV. MULTIUSER COMMANDS -MDBS DMS MANUAL
record of auser indicator is already actively or passively
locked by another run unit. In this case, mau will not affect
the current active/passive status of user indicators.
Examples of Command Usage Q
block/direct ... ED =MAU ("iblk")
block/indirect ... ED =("MAU,iblk")
record/direct ... ED =MAU (iblk)
record/indirect... ED =("MAU",iblk)
=Multiuser Contention Count MCC
Command and Arguments
MCC,iblk
Currency Indicators
g=d: none ch(7lnqpc1: none
Description
This command sets the number of re-tries and the time units
between tries that will be enforced by MDBS.DMS when an access
attempt is prohibited due to multiuser locking. This is enforced
for all DML commands that follow MCC, until another !4CC is
invoked. Tlíe first host language variable for iblk has an
integer value that indicates the number of re-tries. The second
variable defined for iblk has an integer value that indicates the
number of time units between tries. The time unit is operating
system dependent (see system specific manuals), but is never
smaller than .01 seconds. Both of ibik's variables must be
consistent with an unsigned data item that is two bytes in size.
Examples of Command Usage
block/direct ... ED =MCC ("iblk")
block/indirect ... ED =DMS ("MCC,iblk")
record/direct ... ED =MCC (iblk)
record/indirect... ED =DMSD ("MCC",ib1k)
=Multiuser Current of run unit Eree =
Command and Arguments
MCF (no arguments)
Currency Indicators
=Á: CRU ch&nqed: none
96 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -XIV. MULTIUSER COMMANDS -MDBS DMS MANUAL
Description
If the record that is the current of run unit has been actively
locked by MCP, invoking MCF will free that record so that it is
only passively locked.
Examples of Command Usage
block/direct ... ED =MCF ( )
block/indirect ... ED =DMS ("MCF")
record/direct ... EC =MCF ()
record/indirect... ED =DMSD ("MCF")
=Mu1tiuser Gurrent of run unit Erotect =
Comnand and itrguments
MCP (no arguments)
Currency Indicators
lZáéá: CRU ch(inqeíí: none
Description
when this command is executed, the record that is the current of
run unit is actively locked for as long as it is the current of
run unit. After MCP has been invoked (and before invoking MCF),
arecord can become the current of run unit only if it is not
actively or passively locked by some other run unit. When it
does become the current of run unit, it becomes actively locked
and the former current of run unit is no longer actively locked
(by way of MCP).
To reinstate the current of run unit to its normal condition of
being only passively locked, the MCF command is used.
Examples of Command Usage
block/direct ... ED =MCP ()
block/indirect ... ED =DMS ("MCP")
record/direct ... ED =MCP ()
record/indirect... ED =dmsd ("MCP")
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 83A 97
MDBS DMS MANUAL -XIV. MULTIUSER COMMANDS -MDBS DMS MANUAL
== MUtiuser Eecord Type Eree ==
Command and Arguments
'MRTF,rec (rec is optional)
Currency Indicators
none CrMnqer1: none
Description
All record occurrences of rec are freed. They are no longer
actively locked by the run unit. The exception is that if one of
those occurrences is actively locked through some other multiuser
protect command, then it is still actively locked (until the
corresponding multiuser tree command is invoked). If no record
type is specified with this command, then every record type that
is actively locked by the run unit is freed.
Examples of Command Usage
biock/ciirect ... ED =MRTF ("rec")
block/indirect ... ED =OMS ("MRTF,rec")
record/direct ... ED =MRTF ("rec")
record/indirect... ED =DMS ("MRTF,rec")
== Multiuser Becord ;jype 2rotect
Command and Mgwnents
MRTP,rec
Currency Indicators
~: none cha.nqed: none
Description
All occurrences of the record type rec are actively locked by the
run unit, if no other run unit has locked any of those
occurrences (either actively or passively). If any occurrence of
rec is locked by another run unit, then the MRTP request is
refused and acommand status message to that effect is returned.
Examples of Command Usage
block/direct ... ED =MRTP ("rec")
block/indirect ... EC =OMS ("MRTP,rec")
record/direct ... ED =MRTP ("rec")
record/indirect... ED =DMS ("MRTP,rec")
98 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -XIV. MULTIUSER COMMANDS -MDBS DMS MANUAL
=Multiuser Set Eree =
Command and Arguments
MsF,set-1 (set-l is optional)
Currency Indicators
úáU: none Chq¶nqe¿i: none
Description
The indicated set-l is freed if it has been actively locked
earlier in the run unit. The record occurrences of the owner and
member record types are no longer actively locked, unless there
is also an active lock on one or more of those record types or on
arecord occurrence (until the corresponding multiuser free
command is invoked). If no set is specified, all of the run
units' actively locked sets are freed.
Examples of Command Usage
block/direct ... ED =MSF ("set-l")
block/indirect ... ED =DMS ("MSF,set-l")
record/direct ... ED =MSF ("set-l")
record/indirect... ED =DMS ("MSF,set-l")
=Multiuser Set Zrotect =
Command and ít,rguments
MSP,set-l
Currency Indicators
!=a: none chanqed: none
Description
An active lock is placed on set-l, if no other run unit has a
lock (either active or passive) on both an owner record and a
member record of that set. If any such occurrence is locked by
another run unit, then the MSP request is refused and acommand
status message to that effect is returned.
Examples of Command Usage
block/direct ... ED =msp ("set-l")
block/indirect ... ED =DMS ("MSp,set-l")
record/direct ... ED =MSP ("set-l")
record/indirect... ED =DMS ("MSP,set-l")
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 99
MDBS DMS MANUAL -XIV. MULTIUSER COMMANDS -MDBS DMS MANUAL
This page intentionally left blank.
lOó (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL MDBS DMS MANUAL
XV. RECOVERYCOMMANDS
a. Overview
The features and commands described in this chapter are available
in various versions of the RTL form of the MDBS data base management
system. The RTL form requires alarger minimum buffer size than the
standard form. Invoking arecovery command follows the same
conventions as invoking any other DML command. Thé recovery commands
fall into two groups:
1. those that deal with page image posting of complex
transactions (TRABT,TRBGN,TRCOM,PIFD), and
2. those that deal with the logging of transactions
(LGFILE,LGFLSH,LGMSG,TRBGN,TRCOM).
Page image posting may be considered to form afirst line of
defense against data base inconsistency due to external factors such
as power failures. The transaction logging commands provide the
ultimate defense against failures of many kinds, including power
failures, hardware malfunctions, and erroneous (although authorized)
data modification. Either or both of the two recovery approaches can
be used by an application program. However, page image posting is not
meaningful in multiuser situations.
Page image posting allows the application developer to specify
the beginning of acomplex transaction sequence (with the TRBGN
command). The data base changes caused by the transaction sequence
are not incorporated into the data base until the commit command
(TRCOM) is invoked. Atransaction sequence can be aborted by invoking
the abort (TRABT) command. An abnormal termination of the program in
the midst of acomplex transaction sequence will not leave the data
base inconsistent. When the data base is re-opened, it is consistent.
It is current up to the point of the last invocation of TRBGN before
the interruption.
Apage image preservation file is used by MDBS.DMS to provide
this automatic recovery capability. The page image file must be
declared with the PIFD command prior to opening the data base. If
PIFD is not invoked, no posting occurs. If apage image file of!
insufficient size is used, then the data base could become
inconsistent if atransaction sequence is abnormally interrupted. In
this event, acommand status error to that effect is returned when an
attempt is made to re-open the data base. The log of transactions can
be used to recover from such asituation.
Transaction logging allows an application program to make use of
the log file defined in the DDL specification. The name of the file
used for logging aprogram's transactions can be changed with the
LGFILE command. áll transactions since the last data base back-up are
automatically logged onto the log file. The log file is used by the
RCV utility (provided with the RTL form). RCV can be used to
automatically re-apply transactions to an old back-up copy of the data
base, thereby recreating an up-to-date data base. The user has
extensive control over which transactions are re-applied.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 83A 101
MDBS DMS MANUAL -XV. RECOVERY COMMANDS -MDBS DMS MANUAL
The TRBGN command is used to indicate the start of acomplex
sequence of transactions, for the purpose oil transaction logging. The
TRCOM command terminates the complex transaction sequence started by
TRBGN. RCV will ignore any logged transactions that occur after an
TRBGN, if asubsequent TRCOM was not reached during arun unit. Other
commands that can be used in conjunction with transaction logging are
LGFLSFI and LGMSG which flush the log file buffers and insert messages
into the log file, respectively.
Acomplete description of the RTL form is presented in the MDBS-
RTL Manual.
B. Command Details
TCFTTF LoG EILE specification TCFTTF
Command and Arguments
LGFILE,iblk
Currency Indicators
USU: none chanmk none
Description
The fully qualified name of atile to which transactions can be
logged is specified by iblk's host language variable. This
variable must be consistent with astring data item, whose
maximum length is operating system dependent (see the appropriate
system specific manual for size information). If the file to
which transactions are to be logged is the same as the log file
specified in the DDL specification, this command need not be
invoked. If it is invoked, this command must appear before the
DBOPN command.
Examples of Command Usage
block/direct ... ED =LGFILE ("iblk")
block/indirect ... ED =DMS ("LGFILE,iblk")
recorá/direct ... ED =LGFILE (iblk)
record/indirect... ED =DMSD ("LGFILE",iblk)
102 Rev. 83A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -XV. RECOVERY COMMANDS -MDBS DMS MANUAL
TgFTqH LOG file buffer ELuSH TWUH
Command and Arguments
LGFLSH (no arguments)
Currency Indicators
=g: none chanqec1: none
Description
The buffers holding transactions to be logged are flushed to the
log file when this command is invoked. LGFLSH is automatically
invoked by DBSAVE. This is especially useful when an important
transaction has been processed by the system. It can be written
to the log file before the log file buffer is full.
Examples of Command Usage
block/direct ... EC =LGFLSH ( )
block/indirect ... ED =OMS ("LGFLSH")
record/direct ... ED =LGFLSH ( )
record/indirect... ED =dms ("LGFLSH")
t
TgMqc LOG file MeSsaGe TCM"C
Command and Arguments
LGMSG,iblk
Currency Indicators
g=d: none chanqpd: none
Description
The message specified in iblk's host language variable is written
to the log file. This variable must be consistent with astring
data item not exceeding 90 bytes. Messages written to the log
file can be listed using the RCV utility program. The use of the
LGMSG command is especially useful for surveillance.
Examples of Command Usage
block/direct ... ED =LGMSG ("iblk")
block/indirect ... ED =DMS ("LGMSG,ib1k")
record/direct ... ED =LGMSG (iblk)
record/indirect... ED =DMSD ("LGMSG",iblk)
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 103
MDBS DMS MANUAL -XV. RECOVERY COMMANDS -MDBS DMS MANUAL
Eage Image Eile Oeclaration ELER
Command and Arguments
pIFD,iblk
Currency Indicators
u=g: none chanqed? none
Description
Tlie fully qualified file name, indicated by iblk's host language
variable, is declared to be apage image file for use by MDBS.DMS
in page image posting. This command must be invoked prior to use
of the TRBGN, TRCOM, and TRABT commands. The host language
variable must be consistent with astring data item. The size
(in bytes) is operating system dependent and is documented in the
corresponding system specific manual. ELER ía invnkedú ik
makappmr befnre J= data u= la npenea.
Examples of Command Usage
block/direct ... ED =PIFD ("iblk")
block/indirect ... ED =DMS-("pIFD,iblk")
record/direct ... ED =PIFD (iblk)
record/indirect... ED =DMSD ("PIFD",Áblk)
TRansaction AEott TP9BT
Command and Arguments
TRABT (no arguments)
Currency Indicators
jkM: none chñnqec1: most currency indicators <——nu1l
escription
Posting Effects (occur only if PIFD has been invoked):
This command aborts acomplex transaction sequence that was
initiated by the TRBGN command. Atransaction cannot be aborted
after it has already been committed (with the TRCOM command).
This command invokes NCI internally to ensure that no
inconsistent currency indicators will be present.
Logging Effects:
TRABT may be invoked only if PIFD has been invoked, in which case
the transaction sequence that is aborted will be ignored by the
RCV recovery processor.
104 Rev. 83A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -XV. RECOVERY COMMANDS -MDBS DMS MANUAL
Examples of Command Usage
block/direct ... ED =TRABT ( )
block/indirect ... ED =DMS ("TRABT")
recorá/áirect ... ED =TRABT ()
record/indirect... ED =DMS ("TRABT")
TRBGN T8ansaction BeGiN TRBGN
Command and Arguments
TRBGN (no arguments) or LGCPLX (no arguments)
Currency Indicators
tIsQsj: none cbang2g: none
Description
Posting Effects (occur only if PIFD has been invoked):
This command denotes the beginning of acomplex transaction
'sequence, involving the use of several DML commands. The changes
that these DML commands cause in the data base do not become
permanent until the TRCOM command is invoked. TRCOM commits
these changes to the data base. The TRABT command aborts a
complex transaction. After TRCOM or TRABT has been invoked,
TRBGN must be re-invoked to initiate another complex transaction.
If TRBGN is re-invoked without having issued aTRABT or TRCOM
command, acommand status error is issued and the re-invocation
of TRBGN is ignored by MDBS.DMS.
F
Logging Effects:
When this command is invoked, it indicates the beginning of a
complex sequence of transactions. Although all transactions are
automatically logged, RCV will ignore any transactions that
follow TRBGN unless asubsequent TRCOM command is encountered.
The TRBGN and TRCOM commands are used in tandem to ensure that
either all or none (if acomplex sequence is not completed) of
the transactions, which form part of acomplex sequence, are used
by RCV during recovery.
Examples of Command Usage
block/direct ... ED =TRBGN ()or ED =LGCPLX ( )
block/indirect ... ED =DMS ("TRBGN") or ED =DMS ("LGCPLX")
recorá/direct ... ED =TRBGN ()or ED =LGCPLX ( )
record/indirect... ED =DMS ("TRBGN") or ED =DMS ("LGCPLX")
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 82A 105
MDBS DMS MANUAL -XV. RECOVERY COMMANDS -MDBS DMS MANUAL
TPCñM TBansactiQn CQtjmit ¶?CñM
Command and Arguments
TRCOM (no arguments) or LGENDX (no arguments)
Currency Indicators
úSé9: none Changea: none
Description
Posting Effects (occur only if pifd has been invoked):
This command commits acomplex transaction, that was initiated by
the TRBGN command, to the data base. It has the added effect of
clearing the contents of the page image file declared with the
PIFD command.
Logging Effects:
This command indicates the end of acomplex sequence of
transactions. Any transactions logged since the last TRBGN
command was invoked can now be processed by the RCV utility for
data base restoration.
Examples of Command Usage
block/direct ,.. ED =TRCOM ()or ED =LGENDX ()
block/indirect ... ED =OMS ("TRCOM") or ED =oms ("LGENDX")
record/direct ... ED =TRCOM ()or ED =LGENDX ()
record/indirect... ED =OMS ("TRCOM") or ED =OMS ("LGENDX")
106 Rev. 82B (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL MDBS DMS MANUAL
XVI. COMMANDSTATUSDESCRIPTIONS
a. Overview
This chapter describes the different command status messages that
may result from the execution of aDML command. For each command
status (other than Oand 255), the possible reasons for which that
command status could be obtained are described. In almost all cases,
the reasons themselves suggest asolution to the problem.
B. Command Status Details
**1** Invalid area name **1**
Possible Causes:
1. Typographical error in spelling area name.
2. Incorrect order in command string.
3. Command string not terminated properly.
**2** Invalid set name **2**
Possible Causes:
l. Typographical error in spelling set name.
2. Incorrect order in command string.
3. Command string not terminated properly.
**3** Invalid record type name **3**
Possible Causes:
l. Typographical error in spelling record type name.
2. Incorrect order in command string.
3. Command string not terminated properly.
**4** Invalid data item for this record type **4**
Possible Causes:
l. Typographical error in spelling data item name.
2. Incorrect order in command string.
3. Command string not terminated properly.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. 107
mDBS DMS MANUAL -XVI. COMMAND STATUS -MDBS DMS MANUAL
**5** Invalid owner record type for this set **5**
Possible Causes:
l. The record occurrence specified has not been defined as the
owner for the set specified.
2. Typographical error in spelling set name.
**6** Invalid member record type for this set **6**
Possible Causes:
l. The record occurrence specified has not been defined as the
member for the set specified.
2. Typographical error in spelling set name.
**7** Invalid data block name **7**
Possible Causes:
l. Adata block specified in the command string has not been
defined.
2. Ablank data block name was specified for a"DEFINE" command.
3. An "EXTEND" command does not immediately follow a"DEFINE"
command.
**8** Invalid name **8**
Possible Causes:
l. There was asyntax error related to the filename
specification in aDBOPN or DBOPNA command.
2. Invalid drive specification.
**9** Invalid number **9**
Possible Causes:
l. An invalid number was passed to DBCNV or DBENV.
**10** Syntax error on command line **10**
Possible Causes:
l. Self-explanatory.
**11** Record already member/owner of set **11**
Possible Causes:
l. An attempt was made to connect amember record to an owner
record for aset, when that member was already connected to
that owner for that set.
2. An attempt was made to connect an owner record to amember
record for aset, when that owner was already connected to
that member for that set.
108 Rev. 83A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -XVI. COMMAND STATUS -MDBS DMS MANUAL
**12** Record does not belong to set occurrence **12**
Possible Causes:
l. Ttie record occurrence specified by the SME (or SOE) command
isnóta member or owner of the specified set.
**13** Invalid area for this record type **13**
possible Causes:
l. Anarea hasbeen specified intheCRAcoinwandandthe record
type does not belong to this area.
**14** Data base area already open **14**
possible Causes:
l. The DBOPN or DBOPNA (for agiven area) command was invoked
twice.
2. For interpretive languages, DBCLS or DBCLSA was not called.
**15** Data base not closed previously **15**
possible Causes:
l. The data base may be inconsistent since it was not closed
previously.
**16** Area not consistent with main area **16**
Possible Causes:
l. Areferenced area was not consistent with the main area.
2. An old copy of the area was on-line rather than acopy of
the area that is up-to-date with the on-line main area.
**17** No space available in data base **17**
possible Causes:
l. No space is available in the data base or area for
processing the requested transaction.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. 109
MDBS DMS MANUAL -XVI. COMMAND STATUS -MDBS DMS MANUAL
**18** Set internally inconsistent **18**
possible Causes:
l. This error is very rare and is returned from the Following .
comnands: CRA, CRS, IMS, lOS.
2. The error occurs due to insufficient space being available
for pointers to be allocated.
**19** No duplicate record allowed **19**
P
Possible Causes:
l. No duplicates have been allowed in the DDL specifications
for the record type.
**20** No current of run unit **20**
Possible Causes:
l. Self-explanatory.
2. The user should check the currency indicators changed by the
previous DML command.
**21** No current owner of set type **21**
Possible Causes:
l. The command SOC, SOE, SOM, SQQ or SOU was not invoked For
this set.
2. The command FEO, FLO, FNO, FPO, SMC, SMM, SMO or SMU
returned command status 255 previously.
**22** No current member of set type **22**
possible Causem
l. The command SMC, SME, SMM, SMO or SMU was not invoked for
this set.
2. Tite command FFM, FL!4, FNM, FPM, SOC, SOM, SQQ or SOU
returned command status 255 previously.
110 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
n
MDBS DMS MANUAL -XVI. COMMAND STATUS -MDBS DMS MANUAL
**23** No current record of record type **23**
Possible Causes:
l. The command CR, CRS,SRC,SRM or SRO was not previously
invoked for this record type.
2. The command DRC, DRM, DRQ, or ORR was invoked for the
current record of this record type.
**24** No current user record **24**
Possible Causes:
l. There is no current record of areferenced user-defined
indicator.
**25** User-defined currency indicator not allocated **25**
Possible Causes:
l. Areferenced user-defined indicator has not been allocated.
**26** Current of run unit not in specified area **26**
possible Causes:
l. The command FNS has been invoked with an area specified as
an argument, and the current of run unit is not in the
indicated area.
**27** Inappropriate set **27**
Possible Causes:
l. An inappropriate set appeared as an argument. For example,
the last set specified in aBoolean command is not system—
owned.
2. The first or second set specified with aBoolean command is
N:l.
**28** Inappropriate record type **28**
Possible Causes:
l. An FRK command has been invoked on arecord whose record
type has not been declared as having acalc key.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A Ill
MDBS DMS MANUAL -XVI. COMMAND STATUS -MDBS DMS MANUAL
**29** Cannot obtain based on record type **29**
Possible Causes:
l. An attempt was made to obtain arecord based on asort key
involving the record type names. Use the corresponding find
command and GETC instead.
**30** Data out of range **30**
possible Causes:
l. The data being input is Óutside the range of possible values
as indicated in the DDL specifications.
2. Tlie value of an input argument to aDML command is not a
permissible value for that argument.
**31** Insufficient room in memory **31**
Possible Causes:
l. For languages using the SETPBF command, not enough buffer
space has been allocated.
2. For languages not using the SETPBF command, the DMS has been
ORGed too high in memory, or the FIRST and LAST word in
memory do not allow enough room.
**32** Data base opened for read access only **32**
Possible Causes:
l. Self-explanatory.
2. Invalid read/write specifications in OPEN command.
**33** Data conversion error **33**
0
possible Causes:
l. An error has been obtained during data conversion by
MDBS.DMS based on the DDL ítem specifications.
**34** No such routine **34**
Possible Causes:
l. Typographical error in spelling command name.
2. Logging cominands have been used without the RTL form of MDBS.
3. Acommand was invoked using wrong entry point (DMS or DMSD).
4. Acommand was invoked that attempted to perform explicitly
disabled processing (e.g., disabled by NOCALC or NOFLOAT).
112 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -XVI. COMMAND STATUS -MDBS DMS MANUAL
±*35** Duplicatedatablockname **35**
possible Causes:
l. The' DEFINE command was invoked for adata block that already
exists.
**36** Invalidpassword **36**
Possible Causes:
l. User name/password does not exactly match DDL
specifications.
**37** Invalid number of arguments **37**
Possible Causes:
l. Too many arguments specified in command string.
**38** Data base not open **38**
Possible Causes:
l. A DNIL command, needing to access the data base, has been
invoked before the data base was opened.
**39** Set not sorted **39**
Possible Causes:
l. The FOSK or FMSK command is invoked on anon-sorted set.
**40** User may not read this set **40**
Possible Causes:
l. The user's read access codes have no common elements with
the read access codes of the set being processed.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. 113
6
MDBS DMS MANUAL -XVI. COMMAND STATUS -MDBS DMS MANUAL
**41** User may not write this set **41**
Possible Causes:
l. The user's write access codes have ñQ elements in common
with the write access codes of the set being processed.
**42** User may not read this record **42**
Possible Causes: '
l. The user's read access codes have no elements in common with
the read access codes of the record being processed.
**43** User may not write this record **43**
Possible Causes:
l. The user's write access codes have no common elements with
the write access codes of the record being processed.
**44** User may not read this item **44**
possible Causes:
l. The user's read access codes have no elements in common with
the read access codes of the item being processed.
**45** User may not write this item **45**
possible Causes:
l. The user's write access codes have no elements in common
with the write access codes of the item being processed.
**46** User may not read this area **46**
possible Causes:
l. The user's read access codes have no elements in common with
the read access codes of the specified area.
114 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -XVI. COMMAND STATUS -MDBS DMS MANUAL
**47** User may not write this area **47**
possible Causes:
l. The user's write access codes have no elements in common
with the write access codes of the specified area.
**48** No value labels defined for this field **48**
Possible Causes:
l. The specified field presently has no value labels.
**49** Invalid data base key **49**
Possible Causes:
l. The value input to the SCD command is not the data base key
for avalid record occurrence in the data base.
2. Arecord whose data base key was formerly saved by SDC may
have since been deleted or moved.
**50** Checksum error **50**
Possible Causes:
MDBS.DMS automatically closes the data base when this error
occurs.
l. An error was encountered when achecksum was being
performed on the data base pages.
**51** Disk read or write error **51**
Possible Causes:
This command status is returned as aresult of any I/O error.
MDBS.DMS automatically closes the data base when this error
occurs. Some of the possible causes are:
l. Bad sector on disk.
2. Disk drive misaligned.
3. The operating system has detected an error when trying
to read/write from/to disk.
**52** Invalid data base format **52**
Possible Causes:
An error was encountered when the system performed a
synchronization check on the data base pages. MDBS.DMS
automatically closes the data base when this error occurs.
This may mean that:
1. Disk is in the wrong drive.
2. The correct area disk is not on-line.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 115
MDBS DMS MANUAL -XVI. COMMAND STATUS -MDBS DMS MANUAL
**53** Dáta base not expanded **53**
Possible Causes:
l. The data base was initialized with the sor ooption, but
was not expanded with MDBS.DMU.
**54** Pile not present **54**
Possible Causes:
l. Disk in wrong drive.
2. File name misspelled.
**55** Log file I/O error **55**
Possible Causes:
l. An I/O error was encountered when trying to open the log
file.
2. See also Command Status 51.
**56** Log file not current **56**
Possible Causes:
l. The log file is not up-to-date. Y
**57** Logging inhibited **57**
Possible Causes:
l. An I/O error was detected on the log file.
2. Ttte log file may already be open.
**59** Needed area not on-line **59**
possible Causes:
l. As the result oF aDML command, the data base control system
attempted to reference an area that is currently off-line.
2. For record types, whose records can exist in any area, aCRS
was invoked without having on-line the first (as specified
in the DDL) extra area with sufficient space.
3. FFS or FNS was invoked for an off-line area.
4. All areas allowing pointer indices were not on-line for data
base alteration.
**60** Data base not available **60**
Possible Causes:
l. This command status is returned only when multiple users are
accessing the data base.
2. The user is not allowed to open the data base because some
other user has opened the data base on an exclusive basis.
116 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -XVI. COMMAND STATUS -MDBS DMS MANUAL
**61** Exclusive open refused **61**
Possible Causes:
l. This command status is returned only when multiple users are -
accessing the data base.
2. An exclusive open was not granted as some other user had the
data base already open.
**62** Operation rejected due to active lock **62**
Possible Causes:
l. This command status is returned only when multiple users are
accessing the data base.
2. Ttte operation requested was not performed since there was an
active lock on the record or set specified.
3. The run unit is attempting to access arecord when the
access request, if granted, would cause adeadlock
situation.
4. Tlie error is issued after the waiting time specified with
MCC is exhausted.
5. T!ie run unit encountering this situation can invoke NCI (and
TRABT, if applicable) and restart its processing. This is
not advisable if the run unit is in the midst of logging a
complex transaction.
**63** Operation rejected due to passive lock **63**
Possible Causes:
l. This command status is returned only when multiple users are
accessing the data base.
2. Tkie operation requested was refused as there was apassive
lock on the record specified.
"3. Ttte run unit is attempting to access arecord when the
access request, if granted, would cause adeadlock
situation.
4. The error is issued after the waiting time specified with
MCC is exhausted.
5. Tlie run unit encountering this situation can invoke NCI (and
TRABT, if applicable) and restart its processing. This is
not advisable if the run unit is in the midst of logging a
complex transaction.
6. The SYSTEM record cannot be actively locked because it is
always the current owner of every system-owned set (i.e., it
is always passively locked).
**65** Invalid use of CALC record **65**
Possible Causes:
l. The CRA command was used for arecord type having acalc
key.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 117
MDBS DMS MANUAL -XVI. COMMAND STATUS -MOBS DMS MANUAL
**66** Record may not'be removed from fixed set **66**
Possible Causes:
l. The retention for the set specified has been declared as
fixed in the DDL specifications.
**67** U8er coUnt exceeded **67**
possible Causes:
1. Too many run units attempted to concurrently access the data
base.
**70** No transaction in progress **70**
possible Causes:
l. The TRABT, TRCOM, or LGENDX command was invoked when no
complex transaction was in progress.
2. TRBGN or LGCPLX has not been invoked.
**71** Transaction already in progress **71**
Possible Causes:
i. The TRBGN or LGCPLX command was invoked before the prior
complex transaction was terminated by aTRABT, TRCOM Qr
LGENDX command.
**72** Posting not active **72**
Possible Causes:
1. The TRABT command was invoked without having previously
invoked pifd.
2. PIFD has not been invoked before opening the data base.
**73** Posting table overflow **73**
Possible Causes:
l. This command status can be returned from TRCOM or TRABT when
posting is active.
2. The transaction is committed to the data base, even though a
TRABT was attempted.
3. Consider defining several shorter transaction sequences to
replace the existing transaction sequence.
**74** Log file not present **74**
possible Causes:
l. Using the RTL form of MDBS, the data base was opened without
the log file being present. processing continues.
P
118 Rev. 85A (C) COPYRIGHT 1981 Micro Mta Base Systems, Inc.
MDBS DMS MANUAL -XVI. COMMAND STATUS -MDBS DMS MANUAL
**75** Unable to re-insert record into all sets **75**
possible Causes:
1. The value of asort key field changed and there was
insufficient memory for resorting the affected set -
occurrences. The record is removed from all set occurrences
for which there is insufficient resorting room.
**80** Load error from DMSLDR **80**
possible Causes:
1. An attempt was made to load anon-executable file.
2. There are presently too many operating system files open to
allow another to be opened.
**81** Communications Failure **81**
Possible Causes:
l. This command status can appear only in versions of the system
that require interprocess communication (e.g., multiuser
versions).
2. It indicates that an unexpected communication error was
encountered during interprocess communication (e.g., auser
tries to start arun unit while the data base control system
is not executing).
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 119
MDBS DMS MANUAL -XVI. COMMAND STATUS -MDBS DMS MANUAL
**100-199** Catastrophic errors **100-199**
Command status errors lOó through 199 are particular cases of a
general "catastrophic" error, which would result in the integrity of
the data base being destroyed. If any of these extremely rare command
status errors is obtained, the user should contact the Micro Data Base
Systems, Inc. technical support staff for aid in solving the problem.
Afew general notes on some of these errors are provided below.
100 Hole table inconsistency. The table which specifies
how much room is on each page in this area lists more
free bytes than the page itself lists. No workaround.
101 Invalid record occurrence. An invalid record id was
encountered when trying to determine the record type of
the record occurrence. If possible, remove this record
from the set.
103 Cannot find aconnected record when resorting. When
reordering asorted set, problems with set connections
are encountered. This could happen only for a"put"
commancL No workaround.
104 Record not fully connected. When inserting arecord
into aset whose order is next or prior, apartially
connected record was encountered.
106 Invalid record id encountered during acomparison
operation. When comparing two item values, an invalid
record occurrence was encountered.
107 Pointer not found in higher level index (DPA) during
insertion. Invalid pointer encountered when moving a
DPA. Possible workaround: Use Boolean commands to
move all members into SSYSSET, remove all members from
the original set, then reinsert the members back from
$SYSSET.
108 Cannot determine item type. When trying to locate an
item, the data base control system could not find an
item type in the item descriptors.
109 Cannot determine record type during a"find" command.
An invalid record id was found when building the sort
key value.
120 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL -XVI. COMMAND STATUS -MDBS DMS MANUAL
líO Cannot find pointer in higher level during insertion.
Invalid pointer encountered when splitting DPA.
Possible workaround: Use Boolean commands to move all
members into $SYSSET, remove all members from the
original set, then reinsert the members back from
SSYSSET.
Ill Cannot find pointer in higher level during removal.
Invalid pointer encountered when removing arecord from
aset. possible workaround: Use Boolean commands to
move all members into $SYSSET, remove all members from
the original set, then reinsert the members back from
$SYSSET.
112 SYSTEM is not owner of aset. This set is expected to
be asystem-owned set, but the set descriptor does not
list SYSTEM as an owner.
113 Cannot find pointer in higher level during insertion.
Invalid pointer encountered when updating higher DPAS
after first element has changed. Possible workaround:
Use Boolean commands to move all members into $SYSSET,
remove all members from the original set, then reinsert
the members back from $SYSSET.
114 Record reference not found in DPA during removal. The
record for which removal was attempted is not
completely connected in this set.
116 Record not found in set descriptor. when doing a
"find" operation, arecord was encountered that could
not be found in the set descriptor for this set.
117 SYSTEM record DPA not found. When doing a"find"
operation, arecord was encountered that could not be
found in the set descriptor for this set.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A 121
MDBS DMS MANUAL -XVI. COMMAND STATUS -MDBS DMS MANUAL
119 Invalid record type in set descriptor. When doing a
'find' operation on asorted set, arecord was
encountered that could not be found in the set
descriptor for this set.
120 Record not found in set descriptor. When removing a
record from aset, arecord was encountered that could
not be found in the set descriptor for this set.
121 Invalid record type encountered during Boolean
operation. An invalid record id was encountered when
trying to determine the record type of the record
occurrence. If possible, remove the record from the
set.
124 Record not found in set descriptor. When checking for
duplicates, arecord was encountered that could not be
found in the set descriptor for this set.
126 Error in locating record. An invalid record id was
encountered when trying to determine the record type of
the record occurrence. If possible, remove the record
from the set.
130 Master unable to deallocate user descriptor. The user
descriptor was not found when processing user logout.
122 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL MDBS DMS MANUAL
Appendix A
Obsolete DML Commands Available
with Version 3a
(C)COPYRIGFIT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL MDBS DMS MANUAL
Appendix A
A. Introduction
For purposes of upward compatibility from MDBS Version lto N!DBS
Version 3a, additional commands and alternative command names are
available in version 3a. The additional commands primarily involve
the use of akind of currency indicator not described earlier in this
manual. In Version 3a, every record type has acurrent record,
provided the DDL Analyzer was invoked with the -v option. At any
moment during the execution of arun unit, one occurrence of arecord
type is the current record occurrence (CRO) of that record type. If a
schema has nine record types, there are nine currency indicators
beyond those described earlier in this manual. Although these
additional currency indicators exist in Version 3a, they are never
LqgjjjLQg for processing; they exist solely to provide upward
compatibility so that application programs written for Version lcan
be used by Version 3a with only minimal (iii any) changes.
The effects of afew Version 3DML commands differ slightly, in
their effect on currency indicators, from Version lcommands of the
same name. This manual fully explains the effect of each Version 3
command. Most notable among the differences are those for the FMSK,
FOSK, RMS, DRN! and ORO. In Version 3, the FMSK (FOSK) "wildcard"
feature leaves the current member (owner) indicator positioned at the
next record rather than the prior record as is the case with the
Version lFMSK (FOSK). The version 3remove and delete commands do
not leave the set's current member (or current owner for ORO)
indicator null as they do in Version l. The next member (or owner)
becomes current. Also note that theVersion 3SMM, SMO and SMC do not
return acommand status of 12 when there is no owner. They return a
command status of 255 in this situation. Similarly, the Version 3SMR
(described in this appendix) will return a255 command status, rather
than a12 as in version l.
Alternative Command Names
Alternative Command
Name (Supported in Command Name
yqLsiQDs_l-aDsj-3aL y§Qd_jn_tbis-Manygl
ACS IMS
CLOSE DBCLS
CMT TMT
COT TOT
ERRSET VARCS
FINDM FMI
FINDO FOl
OPEN DBOPN
SFC PFC
SFM PFM
SFO PFC)
STAT DBSTAT
TOGGLE DBENV
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 82B A-l
MDBS DMS MANUAL MDBS DMS MANUAL
The Version 3a TOGGLE, OPEN and STAT commands (while identical to
DBENV, DBOPN and DBSTAT respectively) differ slightly from the Version
lTOGGLE, OPEN and STAT commands. See the descriptions of DBENV,
DBOPN and DBSTAT in this manual.
C. Additional Commands
mAdd Member to Set WS
Command and Arguments
AMS,rec,set-l
Currency Indicators
tlseSk CO(set-l) cljangeg: CM(set-l>' CRO(rec)
CRO(rec)
Description
The record that is current record occurrence of rec becomes
connected to the current owner of set-l. This new member for the
current owner of set—l is made the current member of set-l. The
insertion OF this new member record among the existing member
records, connected to the current owner of set-l, is made in
accordance with the member order declared tot set-l in the DDL
specification.
The current record occurrence of rec must be an occurrence of a
record type that is amember of set-l. Auser must have write
access to set-l, in order to connect amember record to an owner
record.
Examples of Command Usage
block/direct ... ED =AMS ("rec,set-l")
block/indirect ... ED =OMS ("AMS,rec,set-l")
record/direct ... ED =AMS ("rec,set-l")
record/indirect... ED =DMS ("AMS,rec,set-l")
A-2 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL MDBS DMS MANUAL
CB Create Becord CR
Command and Arguments
CR,rec
Currency Indicators
tls£d: none changQg: cru created record
CRO(rec) <——newly created record
...if rec is auto ...if rec is AUTO
member of set member of set
CO(autoset) CM(autoset)<——newly created record
...if rec is AUTO ...if rec is AUTO
owner of set owner of set
CM(autoset) CO(autoset)<——newly created record
Description
An occurrence of the record type rec is created. This occurrence
has no data. No range checking is performed.
The physical placement of the newly created record is consistent
with the DDL specification for rec (either CALCed, clustered, or
system-determined). In order to create the record, auser must
have write access to rec, to the area in which the record is to
be created, and to all sets in which the record type participates
as an automatic owner or member. If auser does not have this
security clearance, acommand status error is returned, the
record is not created, and no currency indicator is changed.
If rec has been declared to be the AUTO member of aset, then the
newly created record is automatically connected to the current
owner of that set and the new record becomes the current member
of that set. The connection takes place according to the member
order specified with the DDL (SORTED, FIFO, etc.). If the member
order for the set is NEXT, then the new record is connected
(i.e., logically inserted) immediately after the set's current
member. If there is no current member, the record is inserted as
the first member. For PRIOR member order, the new record is
logically connected immediately before the set's current member.
If there is no current member, the record is insertedas the last
member.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. A-3
MDBS DMS MANUAL MDBS DMS MANUAL
If rec has been declared to be the AUTO owner of aset, then the
newly created record is automatically connected to the current
member of that set and the new record becomes the current owner
of that set. The connection occurs according to the set's owner
order, as specified with the DDL (SORTED, LIFO, NEXT, etc.). IE
the owner order for the set is NEXT (or PRIOR), then the new
record is logically connected immediately after (or before) the
set's current owner. If there is no current owner, the record is
inserted as the first (last) owner.
Examples oft Command Usage
block/direct ... ED =CR ("rec")
block/indirect ... ED =OMS ("CR,rec")
record/direct ... ED =CR ("rec")
record/indirect... ED =OMS ("CR,rec")
RRB Delete Becord that is current Becord occurrence ORR
Command and Arguments
DRR,rec
Currency Indicators
RsU: CRO(rec) CbqLjgqsj: CRO(rec) null
CRU null
also see description
Description
The record that is the current record occurrence Qt rec is
disconnected from all set relationships and is physically deleted
from the data base. The current record oÍl rec and the current of
run unit becomes null. If the deleted record is the current
owner of any set, the current member of any set, or the current
record of any user-defined indicator, then those indicators
become null. If auser does not have write access to the current
of run unit's record type, to the record's area and to all sets
in which that record type participates, then no deletion occurs,
no currency indicator changes, and acommand status error is
returned.
Examples of Command Usage
block/direct .e. ED =DRR ("rec")
block/indirect ... ED =DMS ("DRR,rec")
record/direct ... ED =ORR ("rec")
record/indirect... ED =DMS ("DRR,rec")
A-4 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL MDBS DMS MANUAL
GETB GET data from Becord GETB
Command and Arguments
GETR,rec,oblk
Currency Indicators
tláM: CRO(rec) cjjaRge!a: none
Description
All data values in the current record occurrence of rec are
returned in the host language variables oblk. The types, sizes
and sequence of these variables must be consistent with the data
items that make up the rec record type. Acommand status error
is returned if auser does not have read access to all data items
of the rec record type.
Examples of Command Usage
block/direct ... ED =GETR ("rec,ob1k")
block/indirect ... ED =OMS ("GETR,rec,oblk")
recorá/direct ... ED =GETR ("rec",oblk)
record/indirect... ED =DNISD ("GETR,rec",oblk)
P
GEB Get Eield from Elecord GEB
Command and Arguments
GFR,itm,rec,oblk
Currency Indicators
tjseGk CRO(rec) chang£g: none
Description
The value of the item data item (field) in the current record
occurrence ofi rec is returned in the host language variable of
ob1k. The type and size of this variable must be consistent with
the type and size of itm in the DDL specification. Acommand
status error is returned if auser does not have read access to
the itm field.
Examples of Command Usage
block/direct ... ED =GFR ("itm,rec,oblk")
block/indirect ... ED =OMS ("GFR,itm,rec,oblk")
record/direct ... ED =GFR ("itm,rec",oblk)
record/indirect... ED =DMSD ("GFR,itm,rec",oblk)
(C) COPYRIGHT 1981 Micro Data Base SYstems, Inc. A-5
MDBS DMS MANUAL MDBS DMS MANUAL
EñTB PÍIT data into Record PñTR
Command and Arguments
pUTR,rec,iblk
Currency Indicators
tl§üi: CRO(rec) chang£g: none
Description
Data values of the iblk host language variables put into the
current record occurrence of rec. The types, sizes and sequence
oft these variables must be consistent with the data items that
make up the rec record type. Acommand status error is returned
if the user does not have write access to all data items that
make up the rec record type and to the area containing the record
to be changed. Acommand status error is also returned if the
value of an ib1k variable is outside the feasibility range
defined for the corresponding data item.
Examples of Command Usage
block/direct .... ED =PUTR ("rec,iblk")
block/indirect ... ED =OMS ("PUTR,rec,iblk")
record/direct ... ED =PUTR ("rec",iblk)
record/indirect... ED =DN!SD ("PUTR,rec",iblk)
SCB Set Current of run unit based on Becord SCB
Command and Arguments
SCR,rec
Currency Indicators
tlscsi: CRO(rec) changQsj: cru< CRO(rec)
Description
The record that is presently the current record occurrence of rec
becomes the new current oÍl run unit. The current record
occurrence of rec remains unchanged. If the user does not have
read access to rec, acommand status error is returned and the
current of run unit is unchanged.
Examples of Command Usage
block/direct ... ED =SCR ("rec")
block/indirect ... ED =DMS ("SCR,rec")
record/direct ... ED =SCR ("rec")
record/indirect... ED =OMS ("SCR,rec")
A-6 (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL MDBS DMS MANUAL
SEB Store Eield into Becord SEB
Command and Arguments
SFR,itm,rec,iblk
Currency Indicators
USWj: CRO(rec) changeg: none
Description
The value of the iblk host language variable is put into the itm
Eield of the current record of rec. Acommand status error is
returned if the user does not have write access to itm andtothe
area containing the record to be changed. Acommand status error
is also returned if the value of ib1k's variable is outside of
itm's feasibility range.
Examples of Command Usage
block/direct ... ED =SFR ("itm,rec,iblk")
block/indirect ... ED =DMS ("SFR,itm,rec,iblk")
record/direct ... ED =SFR ("itm,rec",iblk)
record/indirect... ED =DMSD ("SFR,itm,rec",ib1k)
SMB Set Member based on Becord WB
Command and Arguments
SMR,rec,set-l
Currency Indicators
tlá,oá: CRO(rec) Ch4ngeg: CM(set-l) (CRO(rec)
CO(set-l)<——first owner
CRU <——first owner
Description
Set the current member of set-l to be the same as the current
occurrence of rec. This command isvalidonly if rec is amember
record type for set-l. The first owner of the new current member
of set—l becomes the new current owner of set—l and the current
of run unit. If the new current member of set—l becomes null,
the current of run unit becomes null and acommand status of 255
is returned. If auser does not have read access to both set-l
and rec, then acommand status error is returned and no currency
indicators change.
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. A-7
MDBS DMS MANUAL MDBS DMS MANUAL
Examples of Command Usage
block/direct ... ED =SMR ("rec,set-l")
block/ináirect ... ED =OMS ("SMR,rec,set-l")
record/direct ... ED =SMR ("rec,set-1")
record/indirect... ED =DMS ("SMR,rec,set-l")
SQB Set Qwner based on Becord SQB
Command and Arguments
SOR,rec,set-l
Currency Indicators
9sésí: CRO(rec) ChqRged: CO(set-l) (CRO(rec)
CM(set-l)<——-first member
CRU <——£irst member
Description
Set the current owner of set—l to be the same as the current
occurrence of rec. This command isvalidonly if rec is an owner
record type for set-l. The first member of the new current owner
of set-l becomes tbe new current member of set-l and the current
of run unit. If the new current owner of set-i becomes null, the
current of run unit becomes null and acommand status of 255 is
returned. If auser does not have read access to both set—l and
rec, then acommand status error is returned and no currency
indicators change.
Examples of Command Usage
block/direct ... ED =SOR ("rec,set-l")
block/indirect .0. ED =DMS ("SOR,rec,set-i")
record/direct ... ED =SOR ("rec,set-l")
record/indirect... ED =DMS ("SOR,rec,set-l")
SRC Set Record based on Current of run unit SRC
Command and Arguments
SRC
Currency Indicators
9áM: cru chang£sj: crq( cru
A-8 (C) COPYRIGHT 1981 Micro oata Base Systems, Inc.
MDBS DMS MANUAL MDBS DMS MANUAL
Description
The record that is the current of run unit becomes the new
current record occurrence of its record type.
Examples of Command Usage
block/direct ... ED =SRC ()
block/indirect ... ED =DMS ("SRC")
record/direct ... ED =SRC ()
record/indirect... ED =DMS ("SRC")
SRM Set Elecord based on Member =
Command and Arguments
SRM,set-l
Currency Indicators
WCSi: CM(set-l) CbaRged: cro< CM(set-l)
Description
The record that is the current member of set-l becomes the new
current record occurrence of its type.
Examples of Command Usage
lock/direct ... ED =SRM ("set-l")
block/indirect ... ED =DMS ("SRM,set-l")
record/direct ... ED =SRM ("set-l")
record/indirect... ED =DMS ("SRM,set-l")
SEN Set Elecord to Null SEN
Command and Arguments
SRN,rec
Currency Indicators
u=+ none chgngesj: CRO(recA null
Description
The current record occurrence for the rec record type becomes
null. If auser does not have read access to rec, then the
current record occurrence is unchanqed and acommand status error
is returned.
Examples of Command Usage
block/direct ... ED =SRN ("rec")
block/indirect ... ED =DMS ("SRN,rec")
record/direct ... ED =SRN ("rec")
record/indirect ... ED =DMS ("SRN,rec")
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 83A A-9
MDBS DMS MANUAL MDBS DMS MANUAL
SRQ Set Bécord based on Qwner áBQ
Command and Arguments
SRO,set-l
Currency Indicators
Uáé9: CO(set-l) chángQg: CRO%——CO(set-l)
Description
The record that is the current owner of set—l becomes the new
current record occurrence of its type.
Examples of Command Usage
block/direct ... ED =SRO ("set-l")
block/indirect ... ED =DMS ("SRO,set-l")
eecord/direct ... ED =SRO ("set-l")
record/indirect... ED =DMS ("SRO,set-l")
A-lO Rev. 83A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL MDBS DMS MANUAL
Appendix B
DML Command Formats
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL Appendix BMDBS DMS MANUAL
ALTEOS (no arguments). . . . . . . .... . . . . . . . . . . . 89-90
AMM,set-l,set-2,set-3. .......................82
AMO,set-l,set-2,set-3. . . . . . . . . . . . . . . . . . . . . . ..83
AOM,set-l,set-2,set-3. ...... . . . . . . . . . . . . . . . 83-84
AOO,set-l,set-2,set-3. ... . . . . . ........... . . 84-85
AUI,iblk . . . . ... . . . . . . . . . . . . . . . . . . . . . 67-68 -
CCU,iblk . . .... . . . . . . . . . . . . . . . .......68-69
CRA,rec,area,iblk. . . . . . . . . . . . . . . . . .......54-55
CRS,rec,iblk . . . . . . . ...... . . . . . . . . . . . . . 55-56
DBCLS (no arguments) . . . . . . . . . . . . . . . . . . . . . . . .69
DBCLSA,area. . . . . . . . . . . . . . . . ... . . . . . . . . ..70
DBCNV,ib1k . . . . . ........ . . . . . . . . . . . . . 70-70.1
DBENv,iblk . . . . . . . . . . . . . ............70.1-70.2
DBINIT,host language variable . . . . . . ..... . . . . ....90
DBOpN,iblk . . . . . . . . . . . . . . . . . . . ... . . . . . 71-72
DBOPNA,area,iblk . . . . . ... . . . . . . . . . . . . . . . . 72-73
DBSAVE (no arguments). ....... . . . . . . . . . . . . . . 73-74
DBSEL,host language variable ............ . . . . . . ..90
DBSTAT,ob1k. . . . . . . . . . . . . . . . . . . . ... . .....74
DEFINE,blk,list. . . . . . . . . . . . . . . . . . . . . . . . . .90.1
DNSSjP,host language jump description,command status array . . . .90.2
DRC (no arguments) .. . . . . . . . . . . . . . . . . . . . . . 63-64
DRM,set-l. . . . . .. . . . . . . . . . . . .... . .. . . . . .64
DRO,set-1. . . . . . . . . . ..... . . . . . . . . . . . . . ..65
EXTEND,blk,list. ... . . . . . . . . . . . . . . . . . . . .90.2-91
FDRK,rec,iblk. . . . ... . . . . . . .. . . . . . . . . . . . 12-13
FFM,set-l. . . . . . . . . . . . . . . . . . . . . . .. . . . ...13
FFO,set-l. .... . .... . .... . . . . . . . . . . ... . .14
FFS,area (area is optional). . . . . . . . . . . ........14-15
FLM,set-l. . . . . . . ... . ...................15
FLO,set-l. .... . ... . . . . . . . . . . . . . . . .. . . 15-16
FMI,item,set-l,ib1k. . . . . . . . . . . . . . . . . . . . . . . 16-17
FMSK,set-l,ib1k. ........ . ... . . . . . .. . ....17-18
FNM,set-l. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .18
FNMI,itm,set-1,iblk. . . . . . . . . .. . .............19
FNMSK,set-l,iblk . . . . . . . . . . . . . . . . . . . . . . . . 19-20
FNO,set-l. . . . . . . .. . . . . . . . . . . . . . . . . . . .20-21
'FNOI,itm,set-l,iblk. ... . . . . . . . . . . . . . . . . . . . 21-22
FNOSK,set-1,iblk . . . . . . .. . . . . . . . . . . . . . . . . 22-23
FNS,area (area is optional). . . . . . . . ..... . . . . . . 23-24
FOl,item,set-l,iblk. ..... . . . . . . . . . . . .. . . . . . .24
FOSk,set-l,ib1k. ..... . . . . . . . . . . . . . ........25
FPM,set-l. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26
FPMI,itm,set-l,iblk. .. . . . . . . . . . . . . . . . . . . . . 26-27
FPMSK,set-l,ib1k . . . . . . . . . . . . . . . . . . . . . . . . 27-28
FPO,set-l. .. . . . . . . . . . . . . . . . . . . . . . . . . 28-28.1
FPOl,itm,set-l,iblk. . . . . . . . . . . . . . . . . . . .....28.1
FPOSk,set-l,iblk . . . . . . . . . . . . .. . . . . . . . . . . .28.2
FRK,rec,ib1k . . . . . . . . . . . . . . . . . . . . . . . .. . .28.3
GETC,oblk. . . . . . . . . . . . . . . . . . . . . . . . . . ....30
GETM,set-l,oblk. . . . . . . . . . . . . . . . . . . . . . . ....30
GETO,set-l,oblk. ......... . . . . . . . ..........31
GFC,itm,oblk ... . . . . . . . . . . . ............ . .31
GFM,itm,set-l,oblk ........ . . . . . . . . . . . . . . . . .32
GFO,itm,set-l,oblk ... . . . .... . ..............32
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A B-l
MDBS DMS MANUAL Appendix B MDBS DMS MANUAL
GMC,set-1,oblk . . . . . . . .. . ... . .............75
GOC,set-1,oblk . . . . . .... . .... . ... . ,... . . . .75
GTC,oblk .... . ...... . . . ... . . . . . . . . ... . .76
GTM,set-l,oblk . . . . . . . . . . . . . . .. . .. . ..... . .76
GTO,set-l,oblk .. . . .... . .... . ......... . ...77
1MS,set-l. .... . ...... . . . . . ©........ . . 57-58
IOS,set-l. ... . ....... . ... . ..0. . .. . . . . . .58
LGCPLX (no arguments). ... . . .e.............. . 105
LGENDX (no arguments). . . . . . .... . . . . ...... . ..106
LGFILE,iblk. ............ . . . ........... . 102
LGFLSH (no arguments). .......... . ...........103
LGMSG,iblk . . .. . . . .... . .... . . . ... . .. . . . 103
MAU,iblk .... . ...... . .. . . . ....... . ...95-96
MCC,iblk .. . .. . . . . . .. . . . . . .............96
MCF (no arguments) . . . . . . . .. . . . . . . ... . . . . .96-97
MCP (no arguments) .........................97
MpL,iblk .. . . . .........................91
MRTF,rec (rec is optional) . . . . . . .... . . . .... . . . .98
MRTP,rec . . .. . . . ............ . . . .... . . . .98
MSF,set-l (set-l is optional). . . . . .. . . . ..........99
MSP,set—1. .......6........©... . 0.......99
NCI (no arguments) ......O..... . . . a.........77
ODRK,rec,blk . . . . . . . . . . . . . . . . . . .....O 0 ..32.1
OFM,set-1,oblk . . . . .. . . . . . . ...........e..32e2
OFO,set-1,oblk . . ...... . .. . . . ....... . ....32.3
OLM,set-l,ob1k . . . . ................ . . . . ..32.4
OLO,set-Í,ob1k . . . . . . . .. . ... . ....... . ....32.5
OMl,itm,set-1,blk. . . ......................32.6
OMSk,set-1,blk .. . . . . . .. . . . .. . ...... . ....32.7
ONM,set-l,oblk .... . .... . . . . . ....... . ....32.8
ONMI,itm,set-l,b1k .. . ...... . . . ............32.9
ONMSK,set-l,b1k. . . . . . . .. . ........ . ......32.10
ONO,set-l,oblk . . . ...... . ..... . . . . ......32.11
ONOl,itm,set-l,blk .. . . . . . .. . .............32.12
ONC)Sk,set-l,b1k. .... . . .. . ... . .......$G. . 32.13
OOI,itm,set-l,b1k. ........ . . .... . . . . . ® O ..32o14
OOSK,set-1,blk .. . S.... . .... . .. . e.. . G©..32.15
OPM,set-1,oblk . . . . .... . .... . .. . ...... . . 32A6
OpMl,itm,set-l,blk . . ..... . ........ . . . . ...32.17
OPMSk,set-l,blk. ..... . . . ................32.18
OpO,set-l,ob1k .. . . . . ..... . . . . ..... . . . . .32.19
OPOI,itm,set-l,b1k .. . . . . . . . . . . . . . . . . . .. . . 32.20
OpOSK,set-l,blk. . . . . . . . . ............ . . . . 32.21
ORK,rec,b1k. .............. . ...... . . . . .32.22
pFC,itm,iblk .......... . . . .... . ..........34
pFM,itm,set-l,iblk ..... . . . . . .. . . . ........34-35
pFO,itm,set-l,ib1k .........................35
PIFD,ib1k. ... . . . ..... . .C. . . . ......... . 104
PUTCfib1k. .e.... . @ C) .e.0 8 ..e.·.0G. . e...e36
pUTM,set_l,iblk. e.. . @ e .. . . G. . ¢.C.e...©.. . Á36
pUTO,set—l,iblk. .....Q.0. . e... . ..e...G...A37
RMS,set-l. .......... . ...... . . . . . . .. . . . .59
ROS,set-l. . . . . . . . . . .. . . . . . .............60
RSM,set-1. ...... . . . . . ...... . ....... . .60-61
RSO,set-l. ........ . . . ................ . .61
B-2 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL Append ix BMDBS DMS MANUAL
SCD,iblk . . . . . . . . . . . . . . . . . . . . . . . . .. . ..40.1
sC: \I,set-l. .... . . . . . . . .......... . . . . 40.1-40.2
SCN (no arguments) . . ................... . ..40.2
SCC,set-l. . . . .. . . . . . . . . . . . . . . . . . . . . . . .40.2
SCU, iblk . . . . . . . . . . ... . . .. . . . . . . . . . . . ..41
SDC,ob1k . . .... . . .. . . .. . .......... . . . 41-42 -"
SETPBF ,list. . . . . . . . . . . . . . . . . . . ..... . . . ..92
st4C,set-l. .... . ....... . . . . . . . ....... . 42-43
SP1E,set-l. .... . . .. . . ... . . . .. . . . . . . . . . ..43
S2·1!¿: ,set-l,set-2. . . . . ... . . . . . . . . . ........43-44
S14N,set-l. . . . . . . . . . . . . . . . . . . . ..........44
SMO,set-l,set-2. . . . . . . . . . . . . . . . . ........44-45
SK7U,set-l,iblk . . . . . . . . . . . . . . .......... . ..45
SOC,set-l. .... . . . . . . . . . . . . .... . . . . . . . ..46
SOE,set-l. ...... . . . . .... . . . . . . . . . . . . .46-47
SOi·l,set-l,set-2. . . . . . . . . . . . . . . . . . . ..... . ..47
sON,set-l. .. . . . . . . . . . . . . . . . . . . . . . . . . .47-48
SOO,set-l,set-2. ... . . . . . .. . . . . . . . . . . . . . . . .4(3
SOU,set-l,iblk ........ . ... . . . . . . . . . . . . . ..49
SUC,iblk . . . . .. . . . ............ . . . . . . .49-50
SUÉ1,set-l,iblk ... . . . . . . .. . . . . . . . . . . . . . ...50
SUN,iblk ............. . . . . . . . . . . . . . . . 50-51
SUO,set-l,iblk .. . . . ...... . . . .... . . . . . . . ..51
SUU, iblk ...... . . . .... . ..... . ..... . . . ..52
TCN (no arguments) . . . . . . . . . . . ..... . . . .... . .78
TCT,rec. . . .. . . . ..................... . .78
Tl4fI,set-l. ..... . . . . . . .. . . . ......... . ..78 .l
TMT,rec,set-l. ... . . . . . . . . . . . . . . . . . . . . . . .78.Í
TON,set-l. .......... . .. . . . ............78.2
TOT,rec,set-l. ........ . ......... . .......78.2
TRABT (no arguments) ... . . . . . . . . ........... . 104
TRBGK (no arguments) .. . . . . . . ..... . . . . . . . . . . lOS
TRCOFÍ (no arguments) ... . . . .. . . . . . . .... . . . . . 106
TUN,iblk . . . .......... . . . ..............79
UNDEF (no arguments) ... . . . . . . . . .. . . . . . . . .92-92.1
VARC2'D,host language variable. ..... . . . . . . . . . . . . .92.1
vARCs,host language variable ... . . . . . . . . . . . .....92.1
x!·Il·l,set-l,set-2,set-3. . . . . . .......... . . . . . .85-86
xb!O,set-l,set-2,set-3. . . . . . . . . . . . . . . . . . . . . . ..86
XOM,set_l,set-2,set"3. .... . . . Ce. . 0....¢......87
XOO,set_l,set"2,set_3. .e. . ..C e C e C . . e....... . .8 8
-
(C) COPYRIGHT 1983 Micro Data Base Systems, Inc. Rev. 85A B-3
MDBS DMS MANUAL COMMAND INDEX MDBS DMS MANUAL
ALTEOS (áL,Ter End Qf Get) ........ . . . . . . . .. . . 89-90
AMM (And of Éíeirbers with ñembers). .... . ........81,82
AMO (dnd of Members with Qwners) .. . ...... . .. . . 81,83
AOM (And of Qwners with Members) .. . . . . . .. . . . .81,83-84
AOO (And of Qwners with Qwners). . . ....... . ...81,84-85
AUI (AHocate jjser Lndicators) . . . . ....... . . . . 67-68 _
CCU (Check Current of run unit against User indicator) ...68-69
CRA (Create Record in Area). .. . . . . . . . . ......54-55
CRS (Create Eecord and átore). . . .... . . . ......55-56
DBCLS (Qata Ease CLoSe). .. . . . . . . .. . . . . .......69
DBCLSA (l2ata Base CLo8e for Área) .......... . . . . . ..70
DBCNV (Qata Ease format Couversion) . . . . . . . . . . . . 70-70.1
DBENV (Qata áase =ironInent). . . . . . .. . . . . . ..70.1-70.2
DBINIT (Qata Base control system ...... . . . 90
DBOPN (Qata Ease QQEeN) .... . . . . . . . . . . .68,69,71-72,103
DBOPNA (Qata Ease CLlZeN Área). .. . . . . . ..........72-73
DBSAVE (Qata Ease SAJLZ) .. . . . . . .... . . . .9,69,73-74,104
DBSEL (Qata Ease 2EL,ection). .......... . .... . ...90
DBSTAT (Qata Ease S=Tistics) .. . . . . . ..... . ......74
DEFINE (ñFFTNF data block). . . . . .. . ......... . 72,90.1
DMSSJP (QEIS Set jum2) ...... . . . . . . . . . .......90.2
DRC (Delete Record that is Current). . . . . . . .... . . 63-64
DRM (Qelete Record that is qember) .... . . . .. . . . ...64
DRO (Delete Record that is Qwner). . . . ............65
EXTEND (?YTFNn data block). . . . . .. . . . . . . . . . ....90.2
FDRK (Eind Quplicate Eecorá based on calc Key). ... . .. . 12-13
FFM (Eind Eirst Member). . . ............ . ..13,18,40
FFO (Eind Eirst Qwner) .. . . .... . .. . . .. . ..14,20,40
FFS (Eind Eirst Sequential record) .. . .. . .. . .. . . 14-15
ELM (Eind Last Member) .. . . . .......... . .. . 15,24
FLO (Eind Last Qwner). . . ... . . . .... . .....15-16,24
FMI (Eind Member based on data Ltem) ... . . . .. . . .16-17,19
FMSK (Eind áesiíber based on áort XéY). ........ . . . . 17-18
enm (EiM Kext pjenber) . . ... . ........ . .. . . . .18
FNMI (Eind Sext üember based on data íteni). .... . ......19
FNMSK (Eind Next Meniber based on Sort Xey ...... . . . ..19-20
FNO (Eind Xext Qwner). .. . ............... . 20-21
FNOI (Einá tlext Qwner based on data ítem) . . . . . . . . . . 21-22
FNOSK (Eind Next Qwner based on Sort Kq/). ...... . .. . 22-23
ENS (Eind Wext &equential record). .... . . . . . .. . .23-24
FOl (Eind Qwner based on data Lteín). ..............24
FOSK (Eind Qwner based on Sort iíey) .. . .. . . . . . .....25
F'PM (Eind 2rior Member). .... . ...............26
FPMI (Eind 2rior Member based on data ítem) .........26-27
FPMSK (Eind 2rior Élember based on áort XéY .. . . . . . . . .27-28
FPO (Eind 2rior Qwner) .. . . . .. . ....... . . . .28-29
FPOI (Eind 2rior Qwner based on data Ltein). .. . .......28.1
FPOSK (Eind Erior Qwner based on áort Key) ...........28.2
F'RK (Eind Record based on calc Key). . . . . . ... . . . 13,28.3
GETC (GET data from Current of run unit). ......... . ..30
GETM (GET data from ¿¡ember) ... . .. . . . . . ........30
GETO (GET data from Qwner). . . . .. . ... . .........31
GFC (Get Eield from Gurrent of run unit) . . . . ........31
GFbi (Get Eield from Member). . . ................32
GFO (Get Eield from Qwner) . . . . . . .............32
(C) COPYRIGHT 1981 t4icro Data Base Systems, Inc. Rev. 85A CI-l
MDBS DMS MANUAL Command Index MDBS DMS MANUAL
GMC (Get Me%er Count) ... . ... . ........ . . . ..75
GOC (get Qwner Count). .... . . . . .. . ., . . . . ,..,75
GTC (Get Type of >rrent of run unit). ........ . . . . .76
GTM (Get Type of Member) ...... . .. . . . .. . ... . .76
GTO (Get Type of Qwner). . . ..................77
IMS (Lnsert Member into áeU ....... . ........57-58 '
lOS (Lnsert Qwner into Set). ..... . .. . 0........58
LGCPLX (LOG start of ComELe& transactions). . . . .. . .O...105
LGENDX (LoG ENIZ compleX transactions) .©....e...C.. . 106
LGFILE (LoG UÁE specification) ........... . .Q.101,102
LGFLSH (LOG file buffer El,uSR). . . ......... . . 101-102,103
LGMSG (LOG file Me&saGe) .. . . . . . ... . . . .. . l0l,102,103
MAU (Multiuser Active Aser indicators. ...........95-96
MCC (Multiuser Contention Count) ... . . . . . .. . . . . ..96
MCF (9ultiuser Gurrent of run unit Eree). .. . .......96-97
MCP (Multiuser Gµrrent of run unit 2rotect). ..........97
MPL (Multuser Eriority j,eve1). . . . . . . . . .. . ......91
MRTF (Multiuser Record Type Eree) . . . . .. . .... . .. . .98
MRTP (Multiuser Record Type Erotect). ... . ..........98
MSF (Multiuser áet Eree) . . . .. . . .e. . .... . ....99
MSP (Multiuser áet 2rotectC . . .O e . . O.GO....Ge.99
NCI (]$[ull all Currency Lndicators) O. . 0 O .e..O..© O .77
ODRK (Qbtain Quplicate Record based on calc Sey). .....G.32.1
OE?M (Qbtain Eirst Member). ..... . ...... . . ....32©2
OFO (Qbtain Eirst Qwner) ... . ..... . . . .......32.3
OLM (Qbtain Last Member) .. . . . . ......... . ...32.4
OLO (Qbtain Last Qwner). ......... . ..... . ...32.5
OMI (Qbtain Member based on data Ltem) ........ . . . .32.6
OMSK (Qbtain Member based on áort Key). .......... . .32.7
ONM (Qbtain Next Member) . . .... . . ...........32.8
ONPQI (Qbtain Next Member based on data Ltem). . . .......32.9
ONMSK (Qbtain Next [jember based on Sort Key) . . . .. . . . . 32o10
ONO (Qbtain Next Qwner). .. . . . . . . . . ..... . . . 32.11
ONOI (Qbtain Next Qwner based on data Ltem) .... . ....32.12
ONOSK (Qbtain Next Qwner based on 8Qrt Xey)e .........32.13
OOI (Qbtain Qwner based on data Ltem). .0. . . .. . . . . 32.14
OOSK (Qbtain Qwner based on Sort &ey) ..e. . ..©... . 32.15
OPM (Qbtain Zrior KeMer). . . . Ge..Q..... . . . . 32.16
OPMI (Qbtain Ejñor Me%er based on data Ltem) .... . . . . 32.17
OPMSK (Qbtain Erior Member based on Sort Key). . . . . . . . . 32.18
OPO (Qbtain EMor Qwner) . . . . . . . . . . . . .. . . . . 32.19
OPOI (Qbtain 2rior Qwner based on data Ltem). . . . . . .. . 32.20
OPOSK (Qkitain Erior Qwner based on áort Key) . . .. . . . ..32.21
ORK (Qbtain Record based on calc Key). .... . . . . . . . 32.22
PFC (2ut data into Eiéld of Current of run unit) .. . . ....34
PFM (2út data into EiUd of Member). ... . ... . ... . 34-35
PFO (2ut data into Eield of Qwner) O. . . . . . ........35
PIFD (2age Lmage Eile Qeclaration) e 0 . . ©...o9,69,72,l01,l04
PUTC (EñT data into Current of run unit). . . . . 0C....35—36
PUTM (E9T data into Member) . . ..e G .O $ . . ©. . . . * O .36
PUTO (EAT data into QwnerA .e.e0e.e. . e O . . . . . ©c37
ms (Zemove MeMier from Get) .... . e. . . ... . .. . .59
ROS (Remove Qwner from Set). . . .. . . . . . . ........60
RSM (Remve all ,aet Members) ... . . . . . . . ......60-61
RSO (Bemove all aet Qwners). . . ... . ..... . . . .. . .61
CI-2 Rev. 85A (C) COPYRIGHT 1981 Micro Data Base Systems, Inc.
MDBS DMS MANUAL Command Index MDBS DMS MANUAL
SCI) (Get Current of run unit to Qata base key) . . . . ....40.1
SCM (Set Qirrent of run unit based on Menber). . . . . . 40.1-40.2
SCN (Get Current of run unit to 19ull). ............40.2
SCO (Set Current of run unit based on Qwner) .........40.2
SCU (áet Current of run unit based on Eser indicator). .....41 -
SDC (&ave Data base key for Current of run unit) .... . . 41-42
SETPBF (SEL 2age E,uEfer region) .. . . . . . . . .. . . . . . 89,92
SMC (Get Me1nber based on Qirrent of run unit). .... . . . 42-43
sme (Set jjember to current of run unit (Exception)). . . . . 40,43
SMM (Bet Member based on MeInber) .... . . . . . . . . . .43-44
smn (aet Member to Null) . . .. . ...... . . . . . . . 40,44
SFK) (&et Member based on Qwner). . . . . . . . . . . . . . . 44-45
SMU (Get Kember based on Rser indicator) ........ . . . .45
SOC (&et Qwner based on Cjirrent of run unit) ...... . . 39,46
soe (aet Qwner to current of run unit (Exception)) ....40,46-47
SOM (Set Qwner based on WeMer). ........... . . . ..47
SON (Set Qwner to NU1). . . . . . . . . . . . ......41,47-48
SOC) (det Qwner based on Qwner) . . . . . . . . . . .... . . .48
SOU (Set Qwner based on Bser indicator). ........ . . . .49
suc (Set fjser indicator to Current of run unit). .. . . . . 49—50
SUM (Set 9ser indicator to Member) . . . . . . . . . . . . . . .50
sun (&et gser indicator to NUI) ...... . . . . . . . . 50-51
SUO (áet Rser indicator to Qwner). . . . . ......... . .51
SUU (áet user indicator to Bser indicator) .... . . . . . ..52
TCN (Test Current of run unit for 19ull). . . . . . . ......78
TCT (Fest Current of run unit Tj,'pe). ..............78
TMN (Fest Member for Mull) .. . . ..............78.1
TMT (Test Member fype) . . . . . . . . . . . . . . . . . . . .78.1
TON (Test Qwner for NUI). . . . . . . . . . . . . . . . . . .78.2
TOT (Test Qwner Type). ....... . . . . . . . . . . . . .78.2
TRABT (TEransaction WorT) ......... . ......l0,l0l,l04
TRBGN (TEXansaction ReGiN) ........ . .. . ..10,l01-l02,105
TRCOM (=ransaction =mit). ...............10,l0l,106
TUN (Test jlser for Null) .............. . . . . . .79
UNDEF (TjNljEFine data blocks) . . . . . . .. . .. . . . . . 92-92.1
VARCMD (=iable for CoZLmanQ string). ..............92.1
VARCS (UEiable for Gommand Status). ..............92.1
XMM (eXclude Members from Members) ............81,85-86
XMO (eXclude MeInbers from Qwners). . . ....... . . . . 81,86
XOM (eXclude Qwners from Members). . . . . . . . . . . . . . 82,87
XOO (eXclude Qwners from Qwners) . . . . e. . . . . . . . . 82,88
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A CI-3
MDBS DMS MANUAL Command Index FIDBS DMS MANUAL
This page intentionally left blank.
CI-4 Rev. 85A (C) COPYRIGHT 1981 plicro Data Base Systems, Inc.
HDBS DMS MANUAL GENERAL INDEX MDBS DMS MANUAL
active lock .......................................... 8,70.2,77,93-95
application development .......................................... l-2
area file name ................................................. 72-73
assignment commands ....................................... 39-52,70.2
00000000e00 0 0 0 000e000000000 0 0 0 0 0 0 0 0 0 0000e00 0 00 0 0 0 0 0 0 )
AUTO sets .. "4-58
back-up ..................................................... 9-10,101 -
BLF .......:........................................................ 2
Boolean commands ............................................... 81-88
buffer flushing ........................................... 70.2,73-74
calc key ................................. 12-13,25,28.3,32.1,32.22,33
check suppression ............................................... 70.2
close data base ................................................ 69-70
clustering ........................................................ 53
corümand classes .................................................... 5
command description notation ..................................... 7-B
command form ..................................................... 6-7
command status ................................ 6,8,90.2-92,94,l07-ll8
command string ..................................................... 7
connect commands ............................................... 57-58
counts of records .............................................. 75-76
creation commands .............................................. 53-56
current member .............................................. 3-5,8,39
current of run unit ........................................... 4,8,39
currency owner .............................................. 3-5,8,39
currency indicators ........... 3-5,8,29,33,39-52,57,59,63,72,77,93,95
databasekey ......................................... 39,4(1.1,41-42
data block definition ....................................... 90-92,96
data block3 ...................................................... 3,8
Data lzanipulation Language ....................................... l-9
Gate format conversion ....................................... 70-70.1
Geadlock prevention ................................................ 9
deletion commands .............................................. 63-65
difference operators ........................................ 81,85-83
disconnect commands ............................................ 59-63
environment controls ......................................... 70-70.2
feasibility range .............................................. 33,53
tinG commands ........................................... 11-28.3,70.2
fixed retention ................................................... 59
flush of log file buffers .................................... 102,104
flush of page buffers ..................................... 9,69,73-74
get elata commands .............................................. 29-32
host language .................................................... l-3
TBS ................................................................ 2
ID14L ............................................................... 2
intersection operators ......................................... 81-85
log file .................................................. lO,lOl-ló2
74AKUAL sets .................................................... 54-58
modify commands ................................................ 33-37
multiuser environment ................... 2,8-9,69,70.1-72,89,91,95-97
multiuser locking commands ..................................... 93-99
(C) COPYRIGHT 1981 Micro Data Base Systems, Inc. Rev. 85A GI-l
MDBS DMS MANUAL General Index 9DBS DMS MANUAL
null commands ......................................... 39,41,44,67,77
null dates ...........................................,..D....... 70.1
null times .....,..........................................0...0. 70.1
obtain commands ........................................ 29,32.1-32.22
open data base ................................................. 71-73
paqe buffer region .....©...........*.............C..0..... 2,74,89,91 .
page linage file .............................*0....0..e 9—l0,69,72,iOl
passive lock ...¢....¢g©B©0¢0.00.09.0.0.00.e0Q*0g.0oQ©900 8¢7Ü02v93"97
performance tuning ..©...QQ......00.....00®0.0O®..90.S...00 70.2r89v9l
processing modes .....©s©*o.......0o0..0®0e*.®**..e9*.e...*..... 71"72
program buffers .......6........................................ 89,91
program record types ............................................. 3,8
QRS ............................................................. 2,93
RCV ...............................................QC®0.... l0,101-103
RDL ................................................................ 2
recovery ................................................ 9-ló,lOl-l02
recovery commands ............................................ 101-106
retrieval commands .......................................... 29-32.22
run unit ......................................................... 4,8
RTL .................................................. 9_l0,69,101~l02
sequential search ©o....F0.g.....0©v2Qe0Qc00@©.eoe@e*g. l2pl4"l5p23"24
sort key ... ll,l7-l8,2Q-23,25,32g7,32.l0,32.l3,32.l5,32®i9,32.2l,70e2
special commands .&O0OOD09D.@. ...ce... ....00e.0eDo.e€...eQ®.@0Q0 89"92
speed (see performance tuning)
statistics ...................................e................. 74-75
$SYSSET ........................................................ 81-88
throughput priority level ...........................C©...... 89,91,95
tyFe determination .....................Q©6.©G....G..G©....0.... 77_79
user-defined indicators .0e.*..0e.....6.........e.. 5,8,40,67-68,81-88
user name ...0.6..0®0.00.¢©00.Q©G0..... ... ........0. ... .e.0... ..e,o 071
user password .................0...............G................... 71
utility coínrítands ............................................... 67-79
virtual paging .................................................. 2,74
GT-2 Rev. 85A (C) COPYRIGHT 1981 !4icro Data Base Systems, Inc.
P
e
DOCUMENTATION COMMENT FORM
MDBS Document Title:
We welcome and appreciate all comments and suggestions that can
help us to improve our manuals and products. Use this form to
express your views concerning this manual.
Please do not use this form to report system problems or to
request materials, etc. System problems should be reported to
MDBS by phone or telex, or in aseparate letter addressed to the
attention of the technical support division. Requests for
published materials should be addressed to the attention of the
marketing division.
Sender:
(name) (position)
(company) (telephone)
(address)
(city, state, zip)
COMMENTS:
Areas OF comment"are general presentation, format, organization,
completeness, clarity, accuracy, etc. If acomment applies to a
specific page or pages, please cite the page number(s).
Continue on additional pages, as needed. Thank you for your responqe.

Navigation menu