The following example stores two records in the FAMILIES domain: DTR> READY FAMILIES WRITE DTR> REPEAT 2 STORE FAMILIES Enter FATHER: GEORGE Enter MOTHER: SANDY Enter NUMBER_KIDS: 2 Enter KID_NAME: DANA Enter AGE: 12 Enter KID_NAME: DACIA Enter AGE: 9 Enter FATHER: WAYNE Enter MOTHER: SHEEL Enter NUMBER_KIDS: 2 Enter KID_NAME: BETE Enter AGE: 8 Enter KID_NAME: ALEX Enter AGE: 5 DTR> FIND FAMILIES WITH MOTHER = "SANDY", "SHEEL" [2 records found] DTR> PRINT ALL NUMBER KID FATHER MOTHER KIDS NAME AGE GEORGE SANDY 2 DANA 12 DACIA 9 WAYNE SHEEL 2 BETE 8 ALEX 5 DTR> The following example stores a record in the YACHTS domain, using a context variable and a VERIFY clause: DTR> SHOW HINKLEY_STORE PROCEDURE HINKLEY_STORE STORE A IN YACHTS USING BEGIN BUILDER = "HINKLEY" MODEL = "BERMUDA 40" RIG = "YAWL" LOA = 40 DISP = 20000 BEAM = 12 PRICE = 82000 END VERIFY USING BEGIN PRINT A.BOAT, SKIP IF *.CONFIRMATION CONT "N" THEN PRINT SKIP THEN ABORT "BAD RECORD" END END_PROCEDURE DTR> READY YACHTS WRITE DTR> :HINKLEY_STORE LENGTH OVER MANUFACTURER MODEL RIG ALL WEIGHT BEAM PRICE HINKLEY BERMUDA 40 YAWL 40 20,000 12 $82,000 Enter CONFIRMATION: N ABORT: BAD RECORD DTR> The following example defines a domain for single-digit integers and their squares, and uses a WHILE statement to control the number of records stored in the domain: DTR> DEFINE DOMAIN SQUARES USING DFN> SQUARES_REC ON SQUARES.DAT; DTR> DEFINE RECORD SQUARES_REC USING DFN> 01 SQUARES. DFN> 03 NUMBER PIC 9. DFN> 03 ITS_SQUARE PIC 99. DFN> ; [Record is 3 bytes long.] DTR> DEFINE FILE FOR SQUARES; DTR> READY SQUARES WRITE DTR> DECLARE N PIC 99. DTR> N = 0 DTR> WHILE N NE 10 STORE SQUARES USING CON> BEGIN CON> NUMBER=N CON> ITS_SQUARE = N * N CON> N = N + 1 CON> END DTR> FIND SQUARES [10 records found] DTR> PRINT ALL ITS NUMBER SQUARE 0 00 1 01 2 04 3 09 4 16 5 25 6 36 7 49 8 64 9 81 DTR> The following example stores data from the WORKER domain into the expanded NEW_WORKER domain. These domains have duplicate elementary field names that are subordinate to different group field names. The example uses a FOR statement to control the STORE statement so that DEC DATATRIEVE stores the data from the elementary fields correctly. The record definitions and the STORE statement are as follows: DTR> SHOW WORK_REC RECORD WORK_REC USING 01 WORK. 03 LOCAL. 05 CITY PIC X(10). 05 STATE PIC X(2). 03 REMOTE. 05 CITY PIC X(10). 05 STATE PIC X(2). ; DTR> SHOW NEW_WORK_REC RECORD NEW_WORK_REC USING 01 WORK. 03 NEW_LOCAL. 05 CITY PIC X(10). 05 STATE PIC X(2). 03 NEW_REMOTE. 05 CITY PIC X(10). 05 STATE PIC X(2). 03 NAME. 05 FIRST PIC X(10). 05 LAST PIC X(15). ; DTR> READY NEW_WORKER WRITE DTR> FOR WORKER CON> STORE NEW_WORKER USING CON> BEGIN CON> NEW_LOCAL = LOCAL CON> NEW_REMOTE = REMOTE CON> END DTR>