DD 문

입력 또는 출력 파일에 대한 데이터 정의를 지정합니다. 파일은 다음 중 하나일 수 있습니다.
  • DD * 문 뒤에 표시되고 /*로 종료되는 내부 스트림 데이터
  • MVS™ 데이터 세트
  • HFSPATH 키워드를 사용하는 HFS 파일 시스템의 파일. HFSPATH 키워드를 사용하는 경우 기타 키워드로 CCUEXT만 허용됩니다.

구문

의사 JCL DD 구문

매개변수

label
DD 이름입니다.
DSN 또는 DSNAME
데이터 세트의 이름입니다. 이 매개변수 또는 HFSPATH 매개변수 중 하나를 선택할 수 있지만 둘 다 선택할 수 없습니다.
HFSPATH = hfsPathName
HFS 디렉토리의 경로입니다. CCUEXT 매개변수만 HFSPATH와 함께 사용할 수 있습니다.
DISP
stat
상태: NEW(기본값), OLD, SHR(공유) 또는 MOD(수정됨).
ndisp
정상 배치: DELETE, KEEP(기본값), CATLG(카탈로그) 또는 UNCATLG(카탈로그 해제).
adisp
비정상 배치: DELETE, KEEP(기본값), CATLG(카탈로그) 또는 UNCATLG(카탈로그 해제).
DCB
LRECL
레코드 길이(바이트)입니다.
BLKSIZE
블록 크기(바이트)입니다.
RECFM
레코드 형식입니다.
DSORG = dataSetOrganization
데이터 세트 조직을 지정합니다. 올바른 값은 다음과 같습니다.
PS
순차 데이터 세트입니다.
PO
파티션된 데이터 세트입니다.
UNIT = unitType
출력을 위한 매체 유형입니다. 올바른 값은 다음과 같습니다.
VIO
가상 I/O
unitType
시스템에서 디바이스의 이름입니다.
SPACE = unitType
단위 유형입니다. 올바른 값은 다음과 같습니다.
unit
할당 단위: TRK, CYL 또는 블록 크기와 동일한 수.
pri
할당 단위의 기본 수입니다.
sec
할당 단위의 보조 수입니다.
dir
PDS 할당을 위한 디렉토리 블록 수입니다.
RLSE
데이터 세트가 닫힌 경우 사용하지 않은 공간을 해제하도록 지정합니다.
CONTIG
할당된 공간이 인접해야 함을 지정합니다.
VOL = SER = volume
데이터 세트를 할당할 볼륨을 지정합니다. DSN이 영구 데이터 세트 이름을 지정하고 DISPNEW를 지정하는 경우 기본적으로 시스템 지정 볼륨이 사용됩니다.
CCUEXT
파일 이름 확장자를 지정하고 입력, 출력 및 메시지 파일 이름을 대상 DDNAME에 맵핑하는 데 사용됩니다. 예:
//USERLIB DD DSN=MY.HEADERS,DISP=SHR,CCUEXT=(H,HPP)
extension
h 및 .hpp 확장자(대소문자를 구분하지 않음)를 사용하는 모든 입력 파일이 DDNAME USERLIB에 할당된 데이터 세트에 배치됨을 지정합니다. 동일한 확장자가 의사 JCL 스크립트에 한 번만 표시될 수 있습니다.
CCUOUT
해당 DDNAME이 순차 데이터 세트이거나, 빌드 클라이언트에 리턴되어야 하는 파티션된 데이터 세트(일반적으로 메시지 목록이 포함됨)의 멤버임을 지정합니다. 예:
//COMPILE EXEC PGM=CBCDRVR,..
//SYSIN ..
//SYSOUT DD CCUEXT=CCUOUT,DISP=(NEW,DELETE),SPACE=(32000,(30,30)),
//          DCB=(RECFM=VB,LRECL=137,BLKSIZE=882)
프로그램 CBCDRVR이 실행된 후 클라이언트의 파일 시스템에 있는 COMPILE.SYSOUT 파일과 같이 SYSOUT의 컨텐츠를 읽어서 클라이언트에 리턴합니다.
CCUSTD
이 값을 사용하여 지정된 DDNAME이 빌드 클라이언트의 STDOUT에 기록되도록 지정합니다. 예:
//COMPILE EXEC PGM=CBCDRVR,..
//SYSIN ..
//SYSOUT DD CCUEXT=CCUSTD,DISP=(NEW,DELETE),SPACE=(32000,(30,30)),
//          DCB=(RECFM=VB,LRECL=137,BLKSIZE=882)
프로그램 CBCDRVR이 실행된 후 클라이언트의 파일 시스템에 있는 COMPILE.SYSOUT 파일과 같이 SYSOUT의 컨텐츠를 읽고 STDOUT에 배치한 후 클라이언트에 리턴합니다.
CCUERR
이 값을 사용하여 지정된 DDNAME이 ccubldc 클라이언트의 STDOUT에 배치되도록 지정합니다. 예:
//COMPILE EXEC PGM=CBCDRVR,..
//SYSIN ..
//SYSOUT DD CCUEXT=CCUERR,DISP=(NEW,DELETE),SPACE=(32000,(30,30)),
//          DCB=(RECFM=VB,LRECL=137,BLKSIZE=882)
프로그램 CBCDRVR이 실행된 후 클라이언트의 파일 시스템에 있는 COMPILE.SYSOUT 파일과 같이 SYSOUT의 컨텐츠를 읽고 STDERR에 배치한 후 클라이언트에 리턴합니다.
ENQ
YES로 설정하면 DD 카드에서 할당한 데이터 세트의 이름의 큐에 넣도록 빌드 서버에 지시합니다. 빌드 스크립트가 두 개 이상의 빌드 요청이 동시에 액세스할 수 있는 파티션된 데이터 세트에 기록될 때 이 값이 필요합니다. 빌드 스크립트가, 계속 활성화되어 있는 특정 빌드 스크립트에서 이전에 큐에 넣은 데이터 세트 이름을 큐에 넣을 경우, 빌드 스크립트는 큐에 배치되며 주기적으로 다시 시도됩니다. 이 때 다수의 동시 빌드 요청을 동일한 데이터 세트 이름의 큐에 넣을 경우, 빌드 요청의 제한시간 초과가 발생할 수 있습니다.

다음은 DSN을 사용하지 않고 임시 MVS 데이터 세트에서 사용되는 DD 문의 예입니다.
//* MVS Dataset, temporary with no DSN
//SYSIN    DD CCUEXT=(C,CPP),DISP=(NEW,DELETE),
//         UNIT=VIO,SPACE=(TRK,(10,5)),
//         DCB+(RECFM=VB,LRECL=256,BLKSIZE=2560)       
다음은 기존 MVS 데이터 세트와 함께 사용된 DD 문의 예입니다.
//* MVS Dataset, already existing
//STEPLIB DD DSNAME=CEE.SCEERUN,DISP=SHR
다음은 HFS 파일 시스템을 사용 중인 DD 문의 예입니다.
//* HFS file. The input files with extension=WSDL will be written to
//* this directory. The output files with extension=WSDL will be copied
//* from this directory.
//MYXML DD HFSPATH=&EZEDESTDIR,CCUEXT=(WSDL)