Previous Topic: Sample Online ProgramNext Topic: CA IDMS Keywords


CA IDMS Call Formats

This appendix contains the call formats used by CA IDMS to execute DML commands. Each DML function can be coded using standard CALL statements.

The two tables in this appendix present the function codes and arguments that are passed to CA IDMS for execution of a DML command. Argument 0, which contains SUBSCHEMA-CTRL (the IDMS communications block), is passed for all functions.

The following example shows the expanded CA IDMS call format for a BIND RECORD statement (BIND EMPLOYEE):

CALL 'IDMS' USING SUBSCHEMA-CTRL
         IDBMSCOM (48)
         SR415
         EMPLOYEE.

The call expansions are presented in two tables; the first table lists the DB expansions and the second table lists the DC expansions.

This section contains the following topics:

DB Call Formats

DC Call Formats

DB Call Formats

CONTROL STATEMENTS

CALLING ARGUMENTS
argument _ contains SUBSCHEMA-CTRL)

Major Function Code

Database Service(in COBOL DML)

(1) IDBMSCOM

(nn)

(2)

(3)

(4)

(5)

14

BIND RUN- UNIT

59

IDMS Communications Block*

subschema-name*

 

 

 

BIND RUN-UNIT FOR

subschema- name

59

IDMS Communications Block*

subschema-name

 

 

 

BIND RUN-UNIT NODENAME

node-name

59

IDMS Communications Block*

subschema-name*

subschema-ctrl*

OR

subschema-lr-ctrl*

node-name

 

BIND RUN-UNIT FOR

subschema-name

NODENAME

node-name

59

IDMS

Communications

Block*

subschema-name

subschema-ctrl*

OR

subschema-lr-ctrl*

node-name

 

BIND RUN-UNIT FOR

subschema-name

DBNAME

database-name

59

IDMS

Communications

Block*

subschema-name

subschema-ctrl*

OR

subschema-lr-ctrl*

node-name

 

BIND RUN-UNIT

NODENAME

node-name

DBNAME

database-name

59

IDMS

Communications

Block*

subschema-name*

subschema-ctrl*

OR

subschema-lr-ctrl*

node-name

 

BIND RUN-UNIT FOR

subschema-name

NODENAME

node-name

DBNAME

database-name

59

IDMS

Communications

Block*

subschema-name

subschema-ctrl*

OR

subschema-lr-ctrl*

node-name

 

BIND record-name

48

record-id

record-location*

 

 

 

BIND record-name

TO

record-name

48

record-id

record-location

 

 

 

BIND

record-location

WITH

record-name

48

record-id

record-location

 

 

 

BIND PROCEDURE

FOR

procedure-name

TO

procedure-

control-location

73

procedure-name

procedure-control-

location

 

 

09

READY

37

 

 

 

 

 

READY area-name

37

area-name

 

 

 

 

READY area-name

USAGE-MODE IS

RETRIEVAL

37

area-name

 

 

 

 

READY area-name

USAGE-MODE IS

PROTECTED

RETRIEVAL

39

area-name

 

 

 

 

READY area-name

USAGE-MODE IS

EXCLUSIVE

RETRIEVAL

40

area-name

 

 

 

 

READY area-name

USAGE-MODE IS

UPDATE

36

area-name

 

 

 

 

READY area-name

USAGE-MODE IS

PROTECTED

UPDATE

38

area-name

 

 

 

 

READY area-name

USAGE-MODE IS

EXCLUSIVE

UPDATE

41

area-name

 

 

 

 

READY USAGE-MODE

IS ...

**Choose function

code from 36-41

as shown above.

**

 

 

 

 

01

FINISH

02

 

 

 

 

 

FINISH TASK

113

 

 

 

 

18

COMMIT

66

 

 

 

 

 

COMMIT ALL

95

 

 

 

 

 

COMMIT TASK

114

 

 

 

 

 

COMMIT TASK ALL

115

 

 

 

 

19

ROLLBACK

67

 

 

 

 

 

ROLLBACK ALL

96

 

 

 

 

 

ROLLBACK TASK

116

 

 

 

 

 

ROLLBACK TASK

CONTINUE

117

 

 

 

 

06

KEEP CURRENT

87

 

 

 

 

 

KEEP EXCLUSIVE

CURRENT

90

 

 

 

 

 

KEEP CURRENT

record-name

89

record-name

 

 

 

 

KEEP EXCLUSIVE

CURRENT

record-name

90

record-name

 

 

 

 

KEEP CURRENT

WITHIN

set-name

91

set-name

 

 

 

 

KEEP EXCLUSIVE

CURRENT

WITHIN

set-name

92

set-name

 

 

 

 

KEEP CURRENT

WITHIN

area-name

93

area-name

 

 

 

 

KEEP EXCLUSIVE

CURRENT

WITHIN

area-name

92

area-name

 

 

 

16

IF set-name

IS EMPTY ...

64

set-name

 

 

 

 

IF set-name

IS NOT EMPTY...

65

set-name

 

 

 

(Upon return to user run-unit, the status indicator=' 0000'

if set is empty;' 1601' if not empty.)

 

IF set-name

MEMBER ...

60

set-name

 

 

 

 

IF NOT set-name

MEMBER ...

62

set-name

 

 

 

(Upon return to user run-unit, the status indicator = ' 0000'

if the record(current of run unit) is linked into the specified set;

' 1601' if it is not a member.)

MODIFICATION STATEMENTS

Major Function Code

Database Service(in COBOL DML)

(1) IDBMSCOM

(nn)

(2)

(3)

(4)

(5)

12

STORE record-name

42

record-name

 

 

 

07

CONNECT

record-name TO

set-name

44

record-name

set-name

 

 

08

MODIFY

record-name

35

record-name

 

 

 

11

DISCONNECT

record-name

FROM set-name

46

record-name

set-name

 

 

02

ERASE record-name

ERASE record-name

PERMANENT

MEMBERS

ERASE record-name

SELECTIVE

MEMBERS

ERASE record-name

ALL MEMBERS

 

52

03

 

 

53

 

 

4

record-name

record-name

 

 

record-name

 

 

record-name

 

 

 

RETRIEVAL STATEMENTS

Major Function Code

Database Service(in COBOL DML)

(1) IDBMSCOM

(nn)

(2)

(3)

(4)

(5)

03

FIND DB-KEY

db-key

FIND record-name

DB-KEY IS

db-key

FIND CURRENT

FIND CURRENT

record-name

75

 

06

 

 

30

07

db-key

 

record-name

 

 

 

record-name

 

 

db-key

 

 

 

FIND CURRENT

WITHIN set-name

08

set-name

 

 

 

 

FIND CURRENT

WITHIN

area-name

09

area-name

 

 

 

 

FIND NEXT WITHIN

set-name

14

set-name

 

 

 

 

FIND NEXT

record-name

WITHIN set-name

10

record-name

set-name

 

 

 

FIND PRIOR

WITHIN set-name

16

set-name

 

 

 

 

FIND PRIOR

record-name

WITHIN set-name

12

record-name

set-name

 

 

 

FIND FIRST

WITHIN set-name

20

set-name

 

 

 

 

FIND FIRST

record-name

WITHIN set-name

18

record-name

set-name

 

 

 

FIND LAST

WITHIN set-name

24

set-name

 

 

 

 

FIND LAST

record-name

WITHIN set-name

22

record-name

set-name

 

 

 

FIND number

WITHIN set-name

78

set-name

number

 

 

 

FIND number

record-name

WITHIN set-name

76

record-name

set-name

number

 

 

FIND NEXT WITHIN

area-name

15

area-name

 

 

 

 

FIND NEXT

record-name

WITHIN

area-name

11

record-name

area-name

 

 

 

FIND PRIOR WITHIN

area-name

17

area-name

 

 

 

 

FIND PRIOR

record-name

WITHIN

area-name

13

record-name

area-name

 

 

 

FIND FIRST WITHIN

area-name

21

area-name

 

 

 

 

FIND FIRST

record-name

WITHIN

area-name

19

record-name

area-name

 

 

 

FIND LAST WITHIN

area-name

25

area-name

 

 

 

 

FIND LAST

record-name

WITHIN

area-name

23

record-name

area-name

 

 

 

FIND number

WITHIN

area-name

79

area-name

number

 

 

 

FIND number

record-name

WITHIN

area-name

77

record-name

area-name

number

 

 

FIND OWNER

WITHIN set-name

31

set-name

 

 

 

 

FIND CALC (ANY)

record-name

32

record-name

 

 

 

 

FIND DUPLICATE

record-name

50

record-name

 

 

 

 

FIND record-name

WITHIN

set-name USING

sort-key

33

record-name

set-name

sort-key

 

 

FIND record-name

WITHIN

set-name

CURRENT USING

sort-key

51

record-name

set-name

sort-key

 

 

OBTAIN

 

 

 

 

 

Any of the above FIND record selection expressions. Call

generated consists of arguments described above for the

FIND in question plus an additional argument of IDBMSCOM

(43) function. For example:

 

OBTAIN CALC

record-name

32

record-name

IDBMSCOM(43)

 

 

 

OBTAIN PRIOR

record-name

WITHIN set-name

12

record-name

 

 

 

 

KEEP

KEEP EXCLUSIVE

 

 

 

 

 

Any of the above FIND/OBTAIN record selection expressions

Call generated consists of arguments described above for the

FIND/OBTAIN in question plus one of the following additional

IDBMSCOM function:

KEEP..............................IDBMSCOM(87)

KEEP EXCLUSIVE...........IDBMSCOM(**)

For example:

 

OBTAIN KEEP CALC

record-name

32

record-name

IDBMSCOM(43)

IDBMSCOM(87)

 

 

FIND KEEP

EXCLUSIVE

CURRENT

30

IDBMSCOM(88)

 

 

 

05

GET

43

index-set-name

db-key

symbolic-key

 

 

GET record-name

34

index-set-name

db-key

symbolic-key

 

17

RETURN db-key

FROM

index-set-name

CURRENCY

KEY INTO

symbolic-key

81

index-set-name

db-key

symbolic-key

 

 

RETURN db-key

FROM

index-set-name

FIRST

KEY INTO

symbolic-key

82

index-set-name

db-key

symbolic-key

 

 

RETURN db-key

FROM

index-set-name

LAST

KEY INTO

symbolic-key

83

index-set-name

db-key

symbolic-key

 

 

RETURN db-key

FROM

index-set-name

NEXT

KEY INTO

symbolic-key

84

index-set-name

db-key

symbolic-key

 

 

RETURN db-key

FROM

index-set-name

PRIOR

KEY INTO

symbolic-key

85

index-set-name

db-key

symbolic-key

 

 

RETURN db-key

FROM

index-set-name

USING

index-key-value

KEY INTO

symbolic-key

86

index-set-name

db-key

index-key-value

symbolic-key

ACCEPT STATEMENTS

Major Function Code

Database Service(in COBOL DML)

(1) IDBMSCOM

(nn)

(2)

(3)

(4)

(5)

15

ACCEPT db-key

FROM CURRENCY

54

db-key

 

 

 

 

ACCEPT db-key

FROM

record-name

CURRENCY

55

record-name

db-key

 

 

 

ACCEPT db-key

FROM

set-name

CURRENCY

57

set-name

db-key

 

 

 

ACCEPT db-key

FROM

area-name

CURRENCY

56

area-name

db-key

 

 

 

ACCEPT db-key

FROM

set-name

NEXT CURRENCY

68

set-name

db-key

 

 

 

ACCEPT db-key

FROM

set-name

PRIOR CURRENCY

69

set-name

db-key

 

 

 

ACCEPT db-key

FROM

set-name

OWNER CURRENCY

70

set-name

db-key

 

 

 

ACCEPT db-statistics

FROM

IDMS STATISTICS

71

db-statistics

 

 

 

 

ACCEPT

bind-address

FROM

record-name

BIND

72

record-name

bind-address

 

 

 

ACCEPT procedure-control-location

FROM

procedure-name

PROCEDURE

74

procedure-name

procedure-control-location

 

 

LRF DML STATEMENTS

Major Function Code

Database Service(in COBOL DML)

(1) IDBMSCOM

(nn)

(2)

(3)

(4)

(5)

20

OBTAIN FIRST

logical-record-name

99

subschema-lr-ctrl*

logical-record-

location*

 

 

 

OBTAIN FIRST

logical-record-name

INTO

alt-logical-record

location

99

subschema-lr-ctrl*

logical-record-

location*

 

 

 

OBTAIN NEXT

logical-record-name

99

subschema-lr-ctrl*

logical-record-

location*

 

 

 

OBTAIN NEXT

logical-record-name

INTO

alt-logical-record

location

99

subschema-lr-ctrl*

logical-record-

location*

 

 

 

MODIFY logical-record-name

99

subschema-lr-ctrl*

logical-record-

location*

 

 

 

MODIFY logical-record-

name

FROM

alt-logical-record-

location

99

subschema-lr-ctrl*

logical-record-

location*

 

 

 

STORE logical-record-name

99

subschema-lr-ctrl*

logical-record-

location*

 

 

 

STORE logical-record-

name

FROM

alt-logical-record-

location

99

subschema-lr-ctrl*

logical-record

location

 

 

 

ERASE logical-record-name

99

subschema-lr-ctrl*

logical-record-

location*

 

 

 

ERASE logical-record-

name

FROM

alt-logical-record-

location

99

subschema-lr-ctrl*

logical-record-

location

 

 

To differentiate between the LRF DML statements,the DML

compiler places the name of the verb issued into the LRC Block

(subschema-lr-ctrl).

DC Call Formats

PROGRAM MANAGEMENT STATEMENTS

Major Function Code

DC System Service(in COBOL DML)

(1)

DCBMSCOM

(nn)

(2)

(3)

(4)

(5)

30

TRANSFER CONTROL

23

DCFLG1

DCSTR2

parameter

 

30

DC RETURN

19

 

 

 

 

34

LOAD TABLE

15

01-level-program-location

end-program-location

 

 

34

DELETE TABLE

5

01-level-program-location

 

 

 

33

SET ABEND EXIT (STATE)

20

 

 

 

 

33

ABEND

1

 

 

 

 

STORAGE MANAGEMENT STATEMENTS

Major Function Code

DC System Service(in COBOL DML)

(1)

DCBMSCOM

(nn)

(2)

(3)

(4)

(5)

32

GET STORAGE

13

01-level-storage-data-location

end-storage-data-location

 

 

32

FREE STORAGE

10

01-level-storage-data-location

start-free-storage-location

 

 

TASK MANAGEMENT STATEMENTS

Major Function Code

DC System Service(in COBOL DML)

(1)

DCBMSCOM

(nn)

(2)

(3)

(4)

(5)

37

ATTACH

3

DCFLG1

DCSTR2

parameter

 

37

CHANGE PRIORITY

4

 

 

 

 

39

ENQUEUE

9

DCFLG1

DCBMSCOM (mode)

DCBMSCOM(length)

resource-id..

39

DEQUEUE

8

DCFLG1

DCBMSCOM (length)

resource-id..

 

31

WAIT

24

ecb

 

 

 

31

POST

16

ecb

 

 

 

TIME MANAGEMENT STATEMENTS

Major Function Code

DC System Service(in COBOL DML)

(1)

DCBMSCOM

(nn)

(2)

(3)

(4)

(5)

35

GET TIME

14

return-time

return-date

 

 

35

SET TIMER

21

task-data-location

end-task-data-location-location

 

 

35

SET TIMER (post)

21

post- ecb

 

 

 

SCRATCH MANAGEMENT STATEMENTS

Major Function Code

DC System Service(in COBOL DML)

(1)

DCBMSCOM

(nn)

(2)

(3)

(4)

(5)

43

PUT SCRATCH

18

scratch-data-location

end-scratch-data-location

 

 

43

GET SCRATCH

12

return-scratch-data-location

end-scratch-data-location

 

 

43

DELETE SCRATCH

6

post- ecb

 

 

 

QUEUE MANAGEMENT STATEMENTS

Major Function Code

DC System Service(in COBOL DML)

(1)

DCBMSCOM

(nn)

(2)

(3)

(4)

(5)

44

PUT QUEUE

17

queue-data-location

end-queue-data-location

 

 

44

GET QUEUE

11

return-queue-data-location

end-queue-data-location

 

 

44

DELETE QUEUE

6

 

 

 

TERMINAL MANAGEMENT STATEMENTS

Major Function Code

DC System Service(in COBOL DML)

(1)

DCBMSCOM

(nn)

(2)

(3)

(4)

(5)

45

READ TERMINAL

30

input-data-location

end-input-data-location

 

 

45

WRITE TERMINAL

30

output-data-location

end-output-data-location

 

 

45

WRITE THEN READ TERMINAL

30

output-data-location

end-output-data-location

input-data-location

end-input-data-location

45

CHECK TERMINAL

31

input-data-location

end-input-data-location

 

 

47

READ LINE FROM TERMINAL

32

input-data-location

end-input-data-location

 

 

47

WRITE LINE TO TERMINAL

32

output-data-location

end-output-data-location

 

 

47

END LINE TERMINAL SESSION

32

 

 

 

 

48

WRITE PRINTER

37

message-location

end-message-location

 

 

46

MAP IN (IO)

34

MRB-mapname

 

 

 

46

MAP IN (NOIO)

34

MRB-mapname

mapped-data-location

end-mapped-data-location

 

46

MAP IN (paging) (a)

34

MRB-mapname

data-field-name

sequence-field-name

page-number

46

MAP IN (paging) (b)

34

MRB-mapname

key

page-number

 

46

MAP OUT (IO)

34

MRB-mapname

message-text

end-message-data-location

OR

DCBMSCOM (length)

 

46

MAP OUT (NOIO)

34

MRB-mapname

mapped-data-location

end-mapped-data- location

 

46

MAP OUT (paging)

34

MRB-mapname

message-text

end-message-location

OR

DCBMSCOM (length)

key

46

MAP OUTIN

34

MRB-mapname

message-text

end-message-data-location

OR

DCBMSCOM (length)

 

46

MODIFY MAP

93

MRB-mapname

MRE

MRB-FLDLST

 

46

INQUIRE MAP (a)

92

MRB-mapname

MRE

 

 

46

INQUIRE MAP (b)

92

MRB-mapname

 

 

 

46

INQUIRE MAP (c)

92

MRB-mapname

MRE

 

 

46

INQUIRE MAP (d)

92

MRB-mapname

MRB-FLDLST

 

 

46

STARTPAGE

40

MRB-mapname

 

 

 

46

ENDPAGE

41

MRB-mapname

 

 

 

UTILITY STATEMENTS

Major Function Code

DC System Service(in COBOL DML)

(1)

DCBMSCOM

(nn)

(2)

(3)

(4)

(5)

48

ACCEPT

2

return-location

 

 

 

40

SNAP

22

DCSTR1

DCSTR1 (6) begin-dump-location

DCSTR1 (7) end-dump-location

title (8)

49

SEND MESSAGE

38

user-id

message-location

end-message-location

DCBMSCOM(1)

38

BIND TRANSACTION STATISTICS

28

 

 

 

 

38

ACCEPT TRANSACTION STATISTICS

28

return-stat-data-location

 

 

 

38

END TRANSACTION STATISTICS

28

return-stat-data-location

 

 

 

51

KEEP LONGTERM

29

record-name

set-name

area-name

 

 

 

36

WRITE LOG

25

text-return-location

end-text-return-location

reply-location

(6)

parameter-location

end-reply-location (7)

end-parameter-location

RECOVERY STATEMENTS

Major Function Code

DC System Service(in COBOL DML)

(1)

DCBMSCOM

(nn)

(2)

(3)

(4)

(5)

50

COMMIT

66

 

 

 

 

50

COMMIT TASK

27

 

 

 

 

50

FINISH

2

 

 

 

 

50

FINISH TASK

27

 

 

 

 

50

ROLLBACK

67

 

 

 

 

50

ROLLBACK TASK

27

 

 

 

 

50

WRITE JOURNAL

26

record-location

end-record-location

 

 

DC-BATCH

Major Function Code

DC System Service(in COBOL DML)

(1)

DCBMSCOM

(nn)

(2)

(3)

(4)

(5)

14

BIND-TASK

28

DCSTR2