The following three types of DDI statements specify your Program Specification Blocks (PSBs), Data Base Definitions (DBDs), and their COBOL record descriptions.
| Statement Type | Description and Syntax | 
|---|---|
| *DDI DBD | *DDI DBD specifies the DBD statement in the database. | 
| *DDI DBD NAME=dbdname | |
| *DDI REC | Specifies the SEGM statement/copybook | 
| *DDI REC NAME=copybookrec|[new-COBOL-recordname], *DDI SEG=segname, [COPY=membername|[new-copybookname]], *DDI [GEN01=Y|N] | |
| *DDI FLD | Specifies the FIELD and XDFLD statement/copybook field | 
| *DDI FLD NAME=copybookfldname, IMSNAME=fldname,*DDI [PIC=copybookpic] | 
| DDI Statement | Argument | Value | Len | Req | Default | 
|---|---|---|---|---|---|
| *DDI DBD | NAME | dbname | 8 | yes | none | 
| *DDI REC | NAME | copybookrec | 30 | yes | DBD value of SEGM NAME= | 
| SEG | DBD value of SEG NAME= | 8 | yes | none | |
| COPY | Membername | 8 | no | SEG NAME | |
| GEN01 | Y or N | 1 | no | Y | |
| *DDI FLD | NAME | copybookfieldname | 30 | yes | DBD value of FIELD NAME= or DBD value of XDFLD NAME= | 
| IMSNAME | DBD value of FIELD NAME= or DBD value of XDFLD NAME= | 8 | yes | none | |
| PIC | copybookpic | 24 | no | x(n), where n = the value of the BYTES keyword in the DBD | 
| Special Character | Converts to | 
|---|---|
| $ | X | 
| # | Y | 
| @ | Z | 
DBD statements:
DBD NAME=DBD1,ACCESS=(HDAM,VSAM), ... SEGM NAME=S1,BYTES=100,PTR=T, ... FIELD NAME=S1FLD,START=1,BYTES=3,TYPE=N, ... SEGM NAME=S2,BYTES=80, ... FIELD NAME=S2FLD,START=1,BYTES=30,TYPE=C, ...
copybook record (S1):
01  SALES-REC.
    05  REGION-FLD          PIC 9(03).
          . 
                     				copybook record (S2):
01  CUST-REC.
    05  LOCATION-FLD        PIC X(30).
          .
 
                     				DDI Statements:
*DDI DBD NAME=DBD1 *DDI REC NAME=SALES-REC,SEG=S1,COPY=S1, *DDI GEN01=Y *DDI FLD NAME=REGION-FLD,IMSNAME=S1FLD,PIC=9(03) *DDI REC NAME=CUST-REC,SEG=S2,COPY=S2, *DDI GEN01=Y *DDI FLD NAME=LOCATION-FLD,IMSNAME=S2FLD,PIC=X(30)