작업 제어문
본 장에서는 각 작업 제어문에 대한 사용법을 설명한다.
1. 개요
다음은 작업 제어문에 대한 목록이다.
작업 제어문 | 설명 |
---|---|
파일 이름과 볼륨 번호를 카탈로그에 등록하는 문장이다. |
|
매크로 라이브러리를 동적으로 변경한다. |
|
JOB 이름 이외의 JOB을 식별하는 식별명을 지정하는 문장이다. |
|
현재 문장 이후부터 END 문 직전까지의 데이터를 지정된 데이터셋에 저장한다. |
|
DATA 문에 의해 저장되는 데이터의 끝을 나타내는 문장이다. |
|
STEP의 시작을 나타내고, 그 STEP의 속성을 기술한다. |
|
FDDS 문에 의해 저장되는 데이터의 끝을 나타내는 문장이다. |
|
JOB 또는 JOB STEP에서 사용하는 데이터셋을 정의하고 그 속성을 설정한다. |
|
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다. |
|
JOB 또는 JOB STEP에서 사용하는 데이터셋을 정의하고 그 속성을 설정한다. |
|
FIN 문은 시스템 입력의 끝을 나타낸다. |
|
JEND 문은 작업의 끝부분에 위치하고, 작업의 종료를 나타낸다. |
|
JGEND 문은 작업 그룹의 끝부분에 위치하고, 작업 그룹의 종료를 나타낸다. |
|
JOB Group의 시작을 의미하고, JOB Group의 속성을 기술한다. |
|
JOB의 시작을 의미하고, JOB의 속성을 기술한다. |
|
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다. |
|
MACRO문의 끝을 나타낸다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다. |
|
JOB STEP 수행 전에 지정된 메시지를 운영자 콘솔에 출력한다. |
|
NOP 문 자체는 아무 동작도 수행하지 않는다. |
|
JOB이 실행될 때 메시지 콘솔에 출력하는 문장이다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다. |
|
STEP의 실행 프로그램의 파라미터를 지정하는 문장이다. |
|
JOB은 JOB STEP들로 이루어지고, JOB STEP은 PAUSE 문의 유무에 따라 다음과 같이 다르게 수행된다. |
|
SCAN 문이 나오면 이후로 SCEND 문이나 FIN 문이 나올 때까지의 문장은 문법 검사만 하면 어느것도 실행하지 않는다. |
|
문법 검사의 끝을 의미하는 문장이다. |
|
작업을 실행할 때 지정된 데이터셋을 submit한다. |
|
이전 STEP에서 사용한 데이터셋의 FD명을 변경하여 사용한다. |
|
시스템 입력 파일을 연결한다. |
|
USER 문의 끝을 의미하는 문장이다. |
|
파일명과 볼륨 정보를 카탈로그에서 삭제하는 문장이다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다. |
|
User명을 지정하는 문장이다. |
|
작업 제어 매크로를 호출한다. |
|
JOB 또는 JOB 그룹의 운영 중에 필요한 동작을 처리하기 위한 명령을 기술할 수 있다. |
|
입력 데이터의 끝을 나타낸다. |
|
입력 데이터의 끝을 나타낸다. |
|
작업 제어문의 리스트를 보기 쉽게 하기 위해서 주석을 기입하는 문장이다. |
2. CAT 문
파일 이름과 볼륨 번호를 카탈로그에 등록하는 문장이다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
\[이름]△¹CAT△¹필수 키워드 오퍼랜드[,키워드 오퍼랜드]...△¹[주석]
항목 설명 이름
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다.
8자 이내의 기호 명칭이며 생략할 수 있다. 특수문자 "."을 포함할 수 있다.
CAT
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "CAT"이라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
필수 키워드 오퍼랜드
필수 키워드 오퍼랜드 기술 위치이며 "CAT"에 이어서 1개 이상의 공백을 두고 기술한다.
[,키워드 오퍼랜드]
필수 키워드 오퍼랜드 이후에 1개 이상의 공백을 두고 오퍼랜드를 기술한다. 오퍼랜드에 대한 자세한 내용은 오퍼랜드나 각 절의 설명을 참고한다.
주석
오퍼랜드 이후에 1개 이상의 공백을 두고 기술한다.
주석은 71번째 칸까지 기술할 수 있다.
오퍼랜드
다음은 앞에서 언급한 오퍼랜드에 대한 설명이다. 각 오퍼랜드에 대한 자세한 내용은 해당 절의 내용을 참고한다.
2.1. FILE
카탈로그에 등록할 파일명을 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
FILE=값
항목 설명 값
26문자 이내의 이름으로 지정한다.
3. CHAM 문
매크로 라이브러리를 동적으로 변경한다. CHAM 문의 지정이 없는 경우에는 tjes 설정의 [PROCLIB] 절의 MACLIB 항목에 기술된 경로에서 매크로 호출문에 기술된 파일명을 직접 찾는다. CHAM 문의 유효 범위는 CHAM 문으로부터 다음 CHAM 문이 나타날 때까지이며, CHAM 문에서 지정된 라이브러리가 해당 볼륨 또는 카탈로그에 존재하지 않거나 해당 라이브러리에서 매크로 파일을 찾지 못했을 때는 MACLIB에 기술된 경로에서 재탐색한다. JOB 문 이전에 위치시킬 수 있다.
-
사용법
\[명칭]△¹CHAM△¹필수 키워드 오퍼랜드[,키워드 오퍼랜드]
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다.
8자 이내의 기호명칭이며, 생략할 수 있다. 특수문자 "." 을 포함할 수 있다.
CHAM
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "CHAM"이라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
필수 키워드 오퍼랜드
필수 키워드 오퍼랜드 기술 위치로 "CHAM"에 이어서 1개 이상의 공백을 두고 기술한다. CHAM 문의 필수 키워드 오퍼랜드는 매크로문이 위치한 라이브러리 이름으로 생략할 수 없다.
[,키워드 오퍼랜드]
필수 키워드 오퍼랜드 이후에 키워드 오퍼랜드를 기술한다. 오퍼랜드에 대한 자세한 내용은 오퍼랜드나 각 절의 설명을 참고한다.
주석
오퍼랜드 이후에 1개 이상의 공백을 두고 기술한다.
주석은 71번째 칸까지 기술할 수 있다.
오퍼랜드
다음은 앞에서 언급한 오퍼랜드에 대한 설명이다. 각 오퍼랜드에 대한 자세한 내용은 해당 절의 내용을 참고한다.
3.1. FILE
매크로 파일이 위치한 라이브러리명으로, PDS 데이터셋의 이름을 지정한다.
-
사용법
FILE = 데이터셋 이름
항목 설명 데이터셋 이름
매크로 파일이 위치한 PDS 데이터셋 이름을 지정한다. 26자 이내의 이름을 지정한다.
-
예제
다음은 CHAM 문을 통해서 POMSG라는 이름의 매크로를 찾을 라이브러리를 SYS1.USERLIB으로 변경하는 예제이다.
\ JOB CHAM01 \ CHAM FILE=SYS1.USERLIB \ EX * \ POMSG A,(BB,01) \ JEND
3.2. VOL
FILE 문으로 지정된 라이브러리가 위치한 볼륨 시리얼 번호를 지정한다.
-
사용법
VOL = volser
항목 설명 volser
FILE 문으로 지정된 라이브러리가 위치한 볼륨 시리얼 번호를 지정한다. 6자 이내의 영숫자로 지정한다.
-
예제
다음은 CHAM 문을 통해서 POMSG라는 이름의 매크로를 찾을 라이브러리를 SYS1.MACLIB으로 변경하는 예제이다. SYS1.MACLIB이 위치한 볼륨은 DEFVOL이다.
\ JOB CHAM02 \ CHAM FILE=SYS1.MACLIB,VOL=DEFVOL \ EX * \ POMSG A,(BB,01) \ JEND
4. CODE 문
JOB 이름 이외의 JOB을 식별하는 식별명을 지정하는 문장이다. CODE 문은 생략 가능하며, CODE 문을 지정할 경우에는 반드시 JOB 문이 뒤에 기술되어야 한다.
매크로 호출문, SYSIN 문, 주석문, 명령문은 CODE 문과 JOB 문 사이에 기술할 수 있다.
CODE 문의 적용은 CODE 문 바로 아래에 선언된 JOB 문에 한정되며, CODE 문이 선언되지 않은 JOB 문의 경우 OpenFrame에서 임의로 001 ~ 999 사이의 순차적인 번호 코드를 부여한다. 동일한 JOB 식별 코드를 가진 JOB은 동시에 실행될 수 없으며 나중에 실행된 JOB이 에러 처리되므로 업무 작성 시 주의할 필요가 있다.
-
사용법
\[명칭]△¹CODE△¹필수 오퍼랜드
항목 설명 이름
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다. 8자 이내의 기호 명칭이며, 생략할 수 있다. 특수문자 "."을 포함할 수 있다.
CODE
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "CODE"이라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
필수 오퍼랜드
필수 오퍼랜드 기술 위치로, "CODE"에 이어서 1개 이상의 공백을 두고 기술한다. 필수 오퍼랜드는 JOB 식별코드이다.
주석
오퍼랜드 이후에 1개 이상의 공백을 두고 기술한다.
주석은 71번째 칸까지 기술할 수 있다.
오퍼랜드
다음은 앞에서 언급한 오퍼랜드에 대한 설명이다. 각 오퍼랜드에 대한 자세한 내용은 해당 절의 내용을 참고한다.
-
필수 오퍼랜드
오퍼랜드 설명 JOB 식별코드
3자의 문자로 지정한다. OpenFrame에서 임의로 부여하는 코드인 001 ~ 999와 겹치지 않도록 주의한다.
5. DATA 문
현재 문장 이후부터 END 문 직전까지의 데이터를 지정된 데이터셋에 저장한다. 입력 스트림 내에서 DATA 문은 어느 곳에서든 몇 번이든 등장할 수 있지만, DATA 문 각각에 대응되는 END 문이 존재해야 한다.
-
사용법
\[명칭]△¹DATA△¹필수 키워드 오퍼랜드[,키워드 오퍼랜드]...△¹[주석]
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다. 8자 이내의 기호명칭이며, 생략할 수 있다. 특수문자 "."을 포함할 수 있다.
DATA
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "DATA"라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
필수 키워드 오퍼랜드
DATA 이후에 1개 이상의 공백을 두고 오퍼랜드를 기술한다. 오퍼랜드에 대한 자세한 내용은 오퍼랜드나 각 절의 설명을 참고한다.
[,키워드 오퍼랜드]
필수 키워드 오퍼랜드 이후에 키워드 오퍼랜드를 기술한다. 오퍼랜드에 대한 자세한 내용은 오퍼랜드나 각 절의 설명을 참고한다.
주석
오퍼랜드 이후에 1개 이상의 공백을 두고 기술한다.
주석은 71번째 칸까지 기술할 수 있다.
오퍼랜드
다음은 앞에서 언급한 오퍼랜드에 대한 설명이다. 각 오퍼랜드에 대한 자세한 내용은 해당 절의 내용을 참고한다.
-
필수 키워드 오퍼랜드
오퍼랜드 설명 데이터셋을 어떤 장치에 저장할지 지정한다.
데이터셋의 이름을 지정한다.
-
키워드 오퍼랜드
오퍼랜드 설명 OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
데이터셋의 저장이 완료될 때 이를 통지받을 작업 그룹의 이름을 지정한다.
구분 데이터셋에 새로 등록하거나 덮어쓸 멤버명을 지정한다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
데이터셋을 어떤 장치에 저장할지 지정한다.
데이터셋을 어떤 볼륨에 저장할지 지정한다.
5.1. ABSTR
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
ABSTR=(수량, 값)
항목 설명 수량
1에서 65535 사이의 10진수로 지정한다.
값
1에서 65535 사이의 10진수로 지정한다.
5.2. BLK
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
BLK=({블록장|S블록장}*블록수[, 증분][, RLSE][, ROUND])
항목 설명 블록장
1에서 32760 사이의 10진수로 지정한다.
블록수
1에서 65535 사이의 10진수로 지정한다.
증분
1에서 32767 사이의 10진수로 지정한다.
5.3. CYL
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
CYL=({수량|S수량}[, 증분][, RLSE][, ROUND])
항목 설명 수량
1에서 65535 사이의 10진수로 지정한다.
증분
1에서 255 사이의 10진수로 지정한다.
5.6. DRTY
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
DRTY=([값][,TRK|, BLK][,S|, L])
항목 설명 값
TRK 지정 시 1에서 127 사이의 10진수로 지정한다. BLK 지정 시 1에서 32767 사이의 10진수로 지정한다.
5.7. FCYL
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
FCYL=({수량|S수량}[, 증분][, RLSE][, ROUND])
항목 설명 수량
1에서 65535 사이의 10진수로 지정한다.
증분
1에서 255 사이의 10진수로 지정한다.
5.9. JOBG
데이터셋 저장이 완료된 경우 이를 통지받을 작업 그룹의 이름을 지정한다. 이 오퍼랜드가 의미를 가지려면, 해당 작업 그룹이 존재하고, 해당 작업 그룹에 WAIT=DATA 오퍼랜드가 지정되어 있으며, 데이터셋 저장이 성공적으로 완료되어야 한다. 해당 작업 그룹이 통지를 받으면 그룹 내의 작업들은 즉시 실행 가능 상태가 된다.
-
사용법
JOBG=작업 그룹명
항목 설명 작업 그룹명
1~8자리의 기호명칭으로 지정한다.
5.10. MEMBER
구분 데이터셋에 새로 등록하거나 덮어쓸 멤버명을 지정한다.
-
사용법
MEMBER=(멤버명[,R])
항목 설명 멤버명
구분 데이터셋에 새로 등록하거나 치환할 멤버명을 지정한다. 1~8자리의 기호명칭으로 지정한다.
R
지정된 이름을 가진 멤버가 이미 존재할 경우에는 덮어쓴다.
5.14. TRK
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
TRK=({수량|S수량}[, 증분][, RLSE][, ROUND])
항목 설명 수량
1에서 65535 사이의 10진수로 지정한다.
증분
1에서 255 사이의 10진수로 지정한다.
6. END 문
END 문은 DATA 문에 의해 저장되는 데이터의 끝을 나타내는 문장이다. 단, DATA 문과 END 문 사이에 또 다른 DATA 문과 END 문이 중첩되어 있는 경우에는 안쪽의 문장들을 데이터의 일부로 간주한다. END 문은 DATA 문과 짝을 이루어야 하며, 단독으로 등장할 수 없다.
-
사용법
\[명칭]△¹END△¹[주석]
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다. 8자 이내의 기호명칭이며, 생략할 수 있다. 특수문자 "."을 포함할 수 있다.
END
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "END"라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
주석
END 이후에 1개 이상의 공백을 두고 기술한다.
주석은 71번째 칸까지 기술할 수 있다.
7. EX 문
STEP의 시작을 나타내고, 그 STEP의 속성을 기술한다.
-
사용법
\[STEP 이름]△¹EX△¹위치 오퍼랜드[,키워드 오퍼랜드]...△¹[주석]
항목 설명 STEP 이름
STEP 이름 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다. 생략할 수 있으며 기호명칭으로 한다. 특수문자 "."을 포함할 수 있다.
EX
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "EX"이라고 기술한다. STEP 이름을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
위치 오퍼랜드
위치 오퍼랜드 기술 위치로, 'EX’에 이어서 1개 이상의 공백을 두고 기술한다.
EX 문의 위치오퍼랜드는 프로그램 이름으로 생략할 수 없으며 기호명칭으로 한다.
[,키워드 오퍼랜드]
위치 오퍼랜드 이후에 키워드 오퍼랜드를 기술한다. 오퍼랜드에 대한 자세한 내용은 오퍼랜드나 각 절의 설명을 참고한다.
[주석]
오퍼랜드란 이후에 1개 이상의 공백을 두고 기술한다. 주석은 71번째 칸까지 기술할 수 있다. 모든 오퍼랜드를 생략한 경우에는 주석을 기술할 수 없다.
오퍼랜드
다음은 앞에서 언급한 오퍼랜드에 대한 설명이다. 각 오퍼랜드에 대한 자세한 내용은 해당 절의 내용을 참고한다.
-
위치 오퍼랜드
오퍼랜드 설명 STEP에서 실행할 프로그램 이름을 특수 캐릭터 라인으로 지정한다.
-
키워드 오퍼랜드
오퍼랜드 설명 해당 STEP을 실행할지, 스킵할지 여부를 결정하는 조건을 지정한다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
시스템에 통지할 JCL 실행 일자를 지정한다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
7.1. 프로그램 이름
EX 문의 위치 오퍼랜드는 프로그램 이름으로 해당 항목은 생략할 수 없다. 이 오퍼랜드는 해당 STEP에서 실행할 프로그램을 지정한다. 지정할 수 있는 프로그램은 UNIX에서 실행할 수 있는 모든 Excutable 바이너리들이다.
애스터리스크(*)를 지정한 경우에는 STEP에서 아무것도 실행하지 않겠다는 의미로 DUMMY 프로그램을 실행하는 것으로 처리한다. 만약 COBOL 애플리케이션이 Shared Object Type인 경우 해당 프로그램은 직접 실행될 수 없으므로 OSAMFRUN이라는 유틸리티를 통해서 실행할 수 있다.
프로그램 이름을 기술하면 해당 프로그램을 다음과 같은 순서로 검색한다.
-
PRGLIB FD가 STEP에 지정되어 있다면 지정된 데이터셋의 멤버 중에서 검색한다.
-
tjclrun 설정의 [SYSLIB] 절에 BIN_PATH가 설정되어 있다면 BIN_PATH에 설정된 디렉터리에서 검색한다.
-
tjclrun 설정의 [SYSLIB] 절에 BIN_PATH가 설정되어 있지 않다면 obmjinit 서버가 기동될 때의 환경변수 PATH에 설정된 디렉터리에서 검색한다.
tjclrun 설정에 대한 자세한 내용은 OpenFrame Batch "TJES 안내서"의 "환경설정"을 참고한다. |
-
사용법
프로그램 이름 | *
항목 설명 프로그램 이름
STEP에서 실행할 프로그램 이름을 8자 이내의 특수 캐릭터 라인으로 지정한다.
-
주의사항
해당 오퍼랜드는 생략할 수 없다.
-
예제
다음은 PROD.BATCHLIB에 있는 TMAXSOFT를 실행프로그램의 이름으로 지정하는 예제이다.
\ JOB JOB1 \ FD PRGLIB=DA,FILE=PROD.BATCHLIB \STEP1 EX TMAXSOFT
7.2. COND
해당 STEP을 실행할지, 스킵할지의 여부를 결정하는 조건을 지정한다.
COND 오퍼랜드가 지정되어 있으면 해당 STEP을 시작하기 전에 이전 STEP의 반환코드와 비교해서 이 STEP을 실행할지의 여부를 결정한다.
COND 오퍼랜드가 지정되어 있지 않으면 기본 동작은 COND=(10,49)을 지정한 것과 동일한 동작을 한다.
-
사용법
COND = ([+]코드1[,[+]코드2]|-코드)
항목 설명 코드1
코드1만이 지정된 경우에는 이전 STEP의 반환코드가 코드1보다 작거나 같을 때 해당 STEP을 실행한다. 1에서 99 사이의 부호 없는 정수로 지정한다.
코드1,코드2
코드1과 코드2가 지정된 경우에는 이전 STEP의 반환코드가 코드1과 코드2 사이의 값이거나 같을 때 해당 STEP을 실행한다. 1에서 99 사이의 부호 없는 정수로 지정한다.
-코드
-코드가 지정된 경우에는 이전 STEP의 반환코드가 코드보다 크거나 같을 때 해당 STEP을 실행한다. -99에서 -1 사이의 음의 정수로 지정한다.
-
주의사항
코드1, 코드2로 지정하는 경우 '코드1 <= 코드2’가 만족되어야 한다.
-
예제
다음은 STEP1의 반환코드가 10인 경우 STEP2에서 10이 12보다 작으므로 조건을 만족하여 STEP2가 실행되는 예제이다.
\ JOB JOB1 \STEP1 EX RETURN \STEP2 EX TMAXSOFT,COND=12
다음은 STEP1의 반환코드가 10인 경우 STEP2에서 10이 8보다 크므로 조건을 만족하여 STEP2가 실행되는 예제이다.
\ JOB JOB1 \STEP1 EX RETURN \STEP2 EX TMAXSOFT,COND=-8
다음은 STEP1의 반환코드가 10인 경우 STEP2에서 10이 8보다 크고 12보다 작으므로 조건을 만족하여 STEP2가 실행되는 예제이다.
\ JOB JOB1 \STEP1 EX RETURN \STEP2 EX TMAXSOFT,COND=(8,12)
다음은 COND가 지정되어 있지 않아 COND=(10,49)을 지정한 것과 동일하다. STEP1의 반환코드가 10인 경우 COND 기본설정 10이 10보다 크고 49보다 작으므로 조건을 만족하여 STEP2가 실행되는 예제이다.
\ JOB JOB1 \STEP1 EX RETURN \STEP2 EX TMAXSOFT
7.3. LANG
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
LANG = {ENGLISH|E|JAPANESE|J|CHINESE|C|T#CHINESE|T|KOREAN|K|SPANISH|S}
7.6. PARA
시스템에 통지할 JCL 실행 일자를 지정한다. 이 항목의 값은 JOB 문 및 tjclrun 설정 내 OPTION 절의 설정 항목인 SPARM_DATE, SYSTEM 날짜 순보다 우선한다.
만일 EX 문에 PARA=DATE 값이 없는 경우는 JOB 문 > SPARM_DATE > SYSTEM에 지정된 날짜 순서로 적용된다.
-
사용법
PARA = (DATE = YYYYMMDD | YYMMDD)
항목 설명 YYYYMMDD
1900년대 혹은 2000년대의 년, 월, 일을 지정한다. YYYY는 1900에서 2099 사이의 숫자로, MM은 01에서 12 사이의 숫자로, DD는 01에서 31 사이의 숫자로 지정한다.
YYMMDD
1900년대의 년, 월, 일을 지정한다. YY는 19 또는 20으로 지정한다. MM은 01에서 12 사이의 숫자로, DD는 01에서 31 사이의 숫자로 지정한다.
-
예제
다음은 시스템에 통지할 JCL 실행 일자를 2018년 12월 31일로 지정하는 예제이다.
\ JOB JOB1 \STEP1 EX TMAXSOFT,PARA=(DATE=20181231)
다음은 시스템에 통지할 JCL 실행 일자를 1999년 12월 31일로 지정하는 예제이다.
\ JOB JOB2 \STEP1 EX TMAXSOFT,PARA=(DATE=991231)
8. FDDE 문
FDDE 문은 FDDS 문에 의해 저장되는 데이터의 끝을 나타내는 문장이다. FDDE 문은 FDDS 문과 짝을 이루어야 하며, 단독으로 등장할 수 없다.
-
사용법
\[명칭]△¹FDDE△¹[주석]
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다.
8자 이내의 기호명칭이며, 생략할 수 있다. 특수문자 "." 을 포함할 수 있다.
FDDE
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "FDDE"라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
주석
FDDE 이후에 1개 이상의 공백을 두고 기술한다.
주석은 71번째 칸까지 기술할 수 있다.
9. FDDS 문
JOB 또는 JOB STEP에서 사용하는 데이터셋을 정의하고 그 속성을 설정한다.
FDDS 문은 FD 문에서 ' * '를 사용하는 것과 동일하지만 FDDS 문에서는 ' \ '로 시작하는 문장도 instream 데이터로 받을 수 있는 것이 특징이다. FDDS 문 이후에 FDDE 문이 나오기 전까지의 모든 내용이 instream 데이터로 처리된다.
-
사용법
\[명칭]△¹FDDS△¹필수 키워드 오퍼랜드[,키워드 오퍼랜드]...△¹[주석]
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다. 8자 이내의 기호명칭이며, 생략할 수 있다. 특수문자 "."을 포함할 수 있다.
FDDS
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "FDDS"이라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
필수 키워드 오퍼랜드
필수 키워드 오퍼랜드 기술 위치로, "FDDS"에 이어서 1개 이상의 공백을 두고 기술한다. FD 문의 오퍼랜드는 FD 이름으로 생략할 수 없으며 기호명칭으로 한다.
[,키워드 오퍼랜드]
필수 키워드 오퍼랜드 이후에 키워드 오퍼랜드를 기술한다. 오퍼랜드에 대한 자세한 내용은 오퍼랜드나 각 절의 설명을 참고한다.
주석
오퍼랜드 이후에 1개 이상의 공백을 두고 기술한다. 주석은 71번째 칸까지 기술할 수 있다.
오퍼랜드
다음은 앞에서 언급한 오퍼랜드에 대한 설명이다. 각 오퍼랜드에 대한 자세한 내용은 해당 절의 내용을 참고한다.
9.1. FD 이름
FD 이름을 지정한다.
-
사용법
FD 이름|CF=*
항목 설명 FD 이름
FD 이름을 지정한다. FD 이름은 8자리 이내의 영문자, 숫자이어야 하며 첫 번째 문자는 영문자이어야 한다.
CF
여러 개의 입력용 데이터셋을 논리적으로 1개의 데이터셋처럼 사용하도록 할때 사용된다. CF가 지정이 되면 해당 데이터셋은 이전 FD 문에서 지정한 데이터셋에 연결되어 사용된다.
* / +
해당하는 FDDS 문 이후로 Instream 데이터가 나타나는 것을 의미한다. 그리고 해당 FD는 Instream 데이터의 내용을 가지고 JOB SPOOL에 임시적으로 생성되어서 일반 데이터셋과 동일하게 사용된다.
Instream 데이터는 FDDE 문이 나오면 마지막으로 판단한다.
10. FDR 문
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
\[명칭]△¹FDR△¹오퍼랜드
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다.
8자 이내의 기호명칭이며, 생략할 수 있다. 특수문자 "." 을 포함할 수 있다.
FDR
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "FDR"라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
오퍼랜드
FDR 이후에 1개 이상의 공백을 두고 오퍼랜드를 기술한다. 기술 가능한 오퍼랜드는 FD문의 오퍼랜드와 동일하다. 다만, FD 이름 지정 시 "*" 와 "+" 를 지정할 수 없다.
11. FD 문
JOB 또는 JOB STEP에서 사용하는 데이터셋을 정의하고 그 속성을 설정한다.
-
사용법
\[명칭]△¹FD△¹필수 키워드 오퍼랜드[,키워드 오퍼랜드]...△¹[주석]
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다.
생략할 수 있으며 기호명칭으로 한다. 특수문자 "."을 포함할 수 있다.
FD
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "FD" 라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
필수 키워드 오퍼랜드
필수 키워드 오퍼랜드 기술 위치로, "FD"에 이어서 1개 이상의 공백을 두고 기술한다. FD 문의 오퍼랜드는 FD 이름으로 생략할 수 없으며 기호 명칭으로 한다.
[,키워드 오퍼랜드]
필수 키워드 오퍼랜드 이후에 키워드 오퍼랜드를 기술한다. 오퍼랜드에 대한 자세한 내용은 오퍼랜드나 각 절의 설명을 참고한다.
[주석]
오퍼랜드란 이후에 1개 이상의 공백을 두고 기술한다.
주석은 71번째 칸까지 기술할 수 있다.
모든 오퍼랜드를 생략한 경우에는 주석을 기술할 수 없다.
오퍼랜드
각 오퍼랜드에 대한 자세한 내용은 해당 절의 내용을 참고한다.
-
필수 키워드 오퍼랜드
FD 문의 필수 키워드 오퍼랜드는 FD 이름이다.
오퍼랜드 설명 FD 이름을 지정한다.
-
키워드 오퍼랜드
오퍼랜드 설명 VSAM 데이터셋에 대한 처리 속성을 변경하기 위해서 지정한다.
출력 리스트를 "burst-trimmer-stacker"에 보낼지 "continuous forms stacker"에 보낼지 지정한다.
데이터셋을 출력할 때 출력 문자와 크기에 대한 설정 테이블을 지정한다.
출력 데이터셋의 전체 및 페이지 단위의 복사 횟수를 지정한다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
데이터셋의 후처리에 대한 설정을 지정한다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
데이터셋의 FCB(File Control Block)정보를 지정한다.
데이터셋의 이름과 상태를 지정한다.
용지에 일정한 서식, 범위를 미리 인쇄하는 경우에 사용하는 필름 OVERLAY의 식별명, 적용 매수를 지정한다.
라인 프린터 장치, 페이지 프린터 장치 또는 카드 천공 장치로 출력하는 경우에 용지 코드, 용지 전송 제어 코드 및 캐릭터 셋 코드를 지정한다.
출력 리스트를 용지 라인 프린터 장치, 용지 페이지 프린터 장치 또는 사무실 프린터 장치로 출력하는 경우에 출력 제어 프로그램에 대해서 특정 인쇄 속성을 지정한다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
소모품의 사용량 상한값을 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
데이터셋의 멤버를 지정한다.
출력 데이터셋의 COPY 수식 모듈명과 CHARS 오퍼랜드로 지정하는 테이블의 순서번호를 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
데이터셋을 출력 제어 프로그램에서 출력하는 경우, 그 출력 파일에 연결된 출력 작업 그룹 이름을 지정한다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
처리 프로그램이 파일에 출력하는 인쇄 데이터의 레코드 형식을 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
파일 또는 볼륨에 대한 읽기 쓰기 권한을 권한이 있는 사용자 만큼 허가할 때 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
출력 데이터셋의 출력 클래스을 지정한다.
스위치를 통해서 이전 FD를 사용하면서 FD 이름을 변경하도록 지정한다.
데이터셋의 볼륨을 지정한다.
직접 액세스 볼륨에 신규 데이터셋에 대해 공간의 할당을 지정한다.
11.1. FD 이름
FD 이름을 지정한다. 프로그램에서 인식할 수 있게 데이터셋의 논리적인 이름을 지정하는 것이다.
-
사용법
FD 이름│CF={장치명│DA│DUMMY│*│SAME|/} [, 장치 대수 ] [, MNT=마운트해둔 볼륨의 수]
항목 설명 FD 이름
FD 이름을 지정한다. FD 이름은 8자리 이내의 영문자, 숫자이어야 하며 첫 번째 문자는 영문자이어야 한다.
CF
여러 개의 입력용 데이터셋을 논리적으로 1개의 데이터셋처럼 사용하도록 할때 사용된다. CF가 지정이 되면 해당 데이터셋은 이전 FD 문에서 지정한 데이터셋에 연결되어 사용된다.
장치명
장치명은 영문자, 숫자 및 하이픈(-)으로 이루어진 1~8개의 문자열로 지정한다.
장치명을 지정하기 위해서는 OpenFrame의 unit 설정에 먼저 장치명을 정의해야 한다.
DA
직접 엑세스 장비임을 지정하며 이때 연결될 장치는 VOL 오퍼랜드를 통해서 결정된다.
DUMMY
DUMMY 데이터셋을 지정한다.
SAME
직전 FD 문 또는 SW 문의 장치 정보를 참조한다. 따라서 SAME을 지정할 FD 문의 이전 문장은 반드시 FD 문 또는 SW 문이어야 한다. 또한 직전 FD 문에서 CF를 지정한 경우는 SAME을 지정할 수 없다.
*
해당하는 FD 문 이후로 Instream 데이터가 나타나는 것을 의미한다. 그리고 해당 FD는 Instream 데이터의 내용을 가지고 JOB SPOOL에 임시적으로 생성되어서 일반 데이터셋과 동일하게 사용된다.
Instream 데이터는 다음과 같은 경우에 마지막으로 판단한다.
-
단락문이 나타난 경우
-
입력 스트림의 마지막, UNIX 파일로 EOF가 나타난 경우
-
단락문 이외의 제어문이 나타난 경우
+
매크로 호출문에서 기술한 Instream 데이터가 해당 FD 문에서 사용되는 것을 의미한다. 자세한 설명은 매크로 호출문을 참고한다.
/
입출력 장치가 필요없는 경우 지정한다. 스위치를 통해서 이전 데이터셋을 계승하는 경우나 임시 데이터셋으로 사용하는 경우가 해당된다.
장치 대수
사용하는 입출력 장치의 대수를 지정한다. 1~9까지의 10진수를 허용한다. OpenFrame에서는 문법 검사만 수행하고 지원하지 않는다.
MNT=마운트 볼륨 수
JOB STEP 실행을 시작하기 전에 마운트할 볼륨의 수를 지정한다. 1~9까지의 10진수를 허용한다. OpenFrame에서는 문법 검사만 수행하고 지원하지 않는다.
-
-
SPECIAL DD
다음 FD NAME은 SPECIAL DD Name으로 SYSTEM에서 사용하는 이름으로 사용자가 임의로 사용할 수 없다.
구분 설명 PRGLIB
User Application(COBOL)이 저장된 라이브러리명을 기술한다. STEP 단위로 설정할 수 있다. 해당 PDS DataSet 검색 후, 찾지 못하면 tjclrun 설정의 [SYSLIB]에 기술된 경로에서 검색하며, 만약 찾지 못하면 JOB은 에러로 종료된다.
STEPCAT
User Catalog에 등록된 데이터셋을 사용하는 경우 기술한다. 만약 해당 Catalog 검색 후 찾지 못하면, SYSTEM Catalog를 검색한다. System Catalog에도 없으면 DataSet을 찾지 못하고 JOB은 에러(-5212)로 종료된다.
-
주의사항
위의 설명 이외의 값에 대해서는 지원하지 않는다.
-
예제
다음은 SYSDA 장치에 COIN FD 이름을 지정하는 예제이다.
\ FD COIN=SYSDA,FILE=DATASET
다음은 3개의 데이터셋을 연결하는 예제이다.
\ FD COIN=SYSDA,FILE=DATASET1 \ FD CF=SYSDA,FILE=DATASET2 \ FD CF=SYSDA,FILE=DATASET3
다음은 Instream 데이터의 입력을 한 데이터셋을 지정하는 예제이다.
\ FD COIN=* test data \/
다음은 장치 대수, MNT 파라미터의 사용 예시이다. 기능은 지원하지 않으므로, 문법의 사용법만 참고한다.
\ FD FD01=(UNIT1,3,MNT=9)
11.2. AMP
VSAM 데이터셋에 대한 처리 속성을 변경하기 위해서 지정한다. OpenFrame에서는 AMORG, RECFM 파라미터만 지원한다.
-
사용법
AMP=AMP = (AMORG [, BUFND = 데이터용 버퍼 수] [, BUFNI = 인덱스용 버퍼 수] [, BUFSP = 버퍼 바이트 수] [, STRNO = 동시 처리 수] [, RESET] [, RECFM = { F[B] | V[B]}] [, SYNAD = SYNAD 출구 루틴명])
항목 설명 AMORG
VSAM 데이터셋의 ISAM 인터페이스를 사용하도록 지정한다.
RECFM
VSAM 데이터셋의 레코드 포맷을 FB 또는 VB로 변경한다.
BUFND
1에서 32767까지의 10진수를 지정한다. OpenFrame에서는 문법만 검사한다.
BUFNI
1에서 32767까지의 10진수를 지정한다. OpenFrame에서는 문법만 검사한다.
BUFSP
1에서 8388607까지의 10진수를 지정한다. OpenFrame에서는 문법만 검사한다.
STRNO
1에서 255까지의 10진수를 지정한다. OpenFrame에서는 문법만 검사한다.
RESET
OpenFrame에서는 문법만 검사한다.
SYNAD
8문자 이내의 문자열을 지정한다. OpenFrame에서는 문법만 검사한다.
11.3. BURST
출력 리스트를 "burst trimmer stacker"로 보낼지 "continuous forms stacker"로 보낼지 지정한다.
-
사용법
BURST={Y|N}
항목 설명 Y | N
-
Y: 출력 리스트를 BTS(Burst Trimmer Stacker)로 보내도록 지정한다.
-
N: 출력 리스트를 CFS(Continuous Forms Stacker)로 보내도록 지정한다.
-
-
주의사항
-
출력 데이터셋에 대한 정보가 아닌 경우 BURST 오퍼랜드는 무시된다.
-
OpenFrame에서는 해당 정보를 직접 처리하지 않고 값을 저장해 두었다가 JOB 실행 완료 후 외부 프린터 모듈에 전달하기 위한 스크립트 파일에 출력한다. 해당 정보의 사용 유무는 외부 프린터 모듈의 필요에 따라 다르다.
-
-
예제
외부 프린터 모듈에 BURST=Y의 정보를 전달한다.
\ FD OUT1=DA,SOUT=A,BURST=Y
11.4. CHARS
데이터셋을 출력할 때 출력 문자와 크기에 대한 설정 테이블을 지정한다.
-
사용법
CHARS={테이블명} {(테이블명[,테이블명]...)}
항목 설명 테이블명
데이터셋을 출력할 때 출력 문자와 크기에 대한 설정 테이블을 1~4자리의 영문자, 숫자로 지정한다.
-
주의사항
-
출력 데이터셋에 대한 정보가 아닌 경우 CHARS 오퍼랜드는 무시된다.
-
OpenFrame에서는 해당 정보를 직접 처리하지 않고 값을 저장해 두었다가 JOB 실행 완료 후 외부 프린터 모듈에 전달하기 위한 스크립트 파일에 출력한다. 해당 정보의 사용 유무는 외부 프린터 모듈의 필요에 따라 다르다.
-
-
예제
외부 프린터 모듈에 CHARS=(TBJ1,TBJ2)의 정보를 전달한다.
\ FD OUT1=DA,SOUT=A,CHARS=(TBJ1,TBJ2)
11.5. COPIES
출력 데이터셋의 전체 및 페이지 단위의 복사 횟수를 지정한다.
-
사용법
COPIES=(복사 횟수[,(그룹 복사 횟수[,그룹 복사 횟수]...)])
항목 설명 복사 횟수
출력 데이터셋의 복사 횟수를 1~255의 부호 없는 정수로 지정한다.
(기본값: 1)
그룹 복사 횟수
출력 데이터셋의 페이지 단위의 복사 횟수를 1~255의 부호 없는 정수로 지정한다. (기본값: 1)
-
주의사항
-
출력 데이터셋에 대한 정보가 아닌 경우 COPIES 오퍼랜드는 무시된다.
-
OpenFrame에서는 해당 정보를 직접 처리하지 않고 값을 저장해 두었다가 JOB 실행 완료 후 외부 프린터 모듈에 전달하기 위한 스크립트 파일에 출력한다. 해당 정보의 사용 유무는 외부 프린터 모듈의 필요에 따라 다르다.
-
-
예제
다음은 외부 프린터 모듈에 COPIES=(2,(2,1))의 정보를 전달하는 예제이다.
\ FD OUT1=DA,SOUT=A,COPIES=(2,(2,1))
11.6. DATA
DATA 파라미터는 카드 읽기 장치로부터 데이터를 입력할 때의 데이터 형식 및 시스템 입력 시에 작성하는 임시 파일의 데이터 형식을 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
DATA = ([CVT] [, 블록화 인수])
항목 설명 CVT
026 코드로 천공된 카드를 029 코드로 변환하는 지정이다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
블록화 인수
시스템 입력 시에 작성하는 임시 파일의 레코드 수를 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
11.8. DISP
데이터셋의 후처리에 대한 설정을 지정한다.
-
사용법
DISP=([CONT|LOCK] [,DLT|,CAT|,UNCAT] [,RETAIN|,UNLOAD] [,DEF] [,REF] [,KEEP] [,NOCLOSE])
JOB STEP이 종료했을 때 데이터셋의 후처리 방법을 지정한다.
항목 설명 CONT | LOCK
-
CONT : 해당 데이터셋을 다음 STEP에서도 사용할 수 있도록 지정한다.
-
LOCK : 데이터셋의 LOCK을 지정한다. LOCK이 지정된 경우 OpenFrame에서는 해당 데이터셋의 LOCK을 배타적으로 걸도록 요청한다. LOCK은 JOB 단위로 처리되기 때문에 JOB이 끝날 때까지 유지된다.
DLT | CAT | UNCAT
-
DLT : JOB STEP이 종료할 때 데이터셋을 삭제하도록 지정한다.
-
CAT : JOB STEP이 종료할 때 데이터셋을 카탈로그에 등록하도록 지정한다.
-
UNCAT : JOB STEP이 종료할 때 데이터셋을 카탈로그에서 삭제하도록 지정한다.
RETAIN | UNLOAD
-
RETAIN : 자기 테이프 볼륨 또는 플로피 디스크 볼륨을 떼어낼 때 디마운트하지 않도록 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
UNLOAD : 데이터셋을 클로즈할 때 자기 테이프 볼륨 또는 플로피 디스크 볼륨을 디마운트 하도록 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
DEF
데이터셋이 오픈될 때까지 볼륨을 마운트하지 않도록 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
REF
카탈로그가 아닌 볼륨 시리얼 번호를 참조하도록 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
KEEP
JOB STEP이 종료할 때 데이터셋을 보존하도록 지정한다.
NOCLOSE
데이터셋 작성 중에 비정상 종료되는 경우 후처리를 수행하지 않도록 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
-
주의사항
-
파라미터 1만 지정하는 경우 괄호로 처리할 필요가 없다.
-
DISP 오퍼랜드가 지정되지 않은 경우 KEEP 지정이 기본값이다.
-
-
예제
다음은 일련번호가 333333인 볼륨에 작성되어 있는 데이터셋 ORG.SOURCE.TEST의 배타적인 사용을 요청하는 예제이다. JOB STEP이 종료될 때 데이터셋을 카탈로그한다.
\ FD FD1=DA,FILE=ORG.SOUTCE.TEST,DISP=(LOCK,CAT),VOL=333333
다음은 이미 카탈로그되어 있는 데이터셋 ORG.LIB의 배타적인 사용을 요청하는 예제이다. JOB STEP이 종료될 때 데이터셋을 삭제한다. 데이터셋이 삭제될 뿐만 아니라 카탈로그에서도 제거된다.
\ FD FD1=DA,FILE=ORG.LIB,DISP=(LOCK,DLT)
11.9. DRTY
DRTY 파라미터에서는 PDS 영역의 크기와 형식을 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
DRTY=([수량][,TRK|BLK][,S|L])
항목 설명 수량
PDS 파일의 디렉터리 영역으로 사용하는 크기를 트랙 수 또는 블록 수로 지정한다. TRK 서브 파라미터를 지정한 경우 1에서 127까지의 10진수를 사용한다. BLK 서브 파라미터를 지정한 경우에는 1에서 32767까지의 10진수를 사용한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
TRK| BLK
-
TRK : 지정된 수량만큼 트랙을 디렉터리 영역으로 할당하는 것을 의미한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
BLK : 블록 길이(디렉터리 내의 블록 길이 1000바이트)와 수량으로 지정한 값을 통해 트랙 수로 환산한 다음, 환산한 값만큼을 디렉터리 영역으로 할당하는 것을 의미한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
S | L
-
S : 디렉터리 내의 한 엔트리를 40바이트로 취급한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
L : 디렉터리 내의 한 엔트리를 80바이트로 취급한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
-
예제
\ FD FD01=DA,FILE=D,VOL=DEFVOL,TRK=(30,10),DRTY=(20,BLK)
11.10. FCB
데이터셋의 FCB(File Control Block)정보를 지정한다.
-
사용법
FCB=(fcb 파라미터[,fcb 파라미터]...)
fcb 파라미터 용도 BFALN=값
F 또는 D를 지정할 수 있다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
BLKSIZE={블록 길이}
블록의 길이를 Byte 단위로 지정한다.
BLKSIZE 오퍼랜드로 지정할 수 있는 최대값은 레코드 형식에 관계없이 32760Byte이다.
SYSOUT 데이터셋의 경우 블록 길이가 LRECL 오퍼랜드에서 지정한 레코드 길이의 정수배가 아니면, 블록 길이는 레코드 길이의 정수배로 조정(truncate)된다. 출력 데이터셋 이외의 경우 반드시 블록 길이는 LRECL 오퍼랜드에서 지정한 레코드 길이의 정수배로 지정해야 한다.
BUFNO=값
1에서 255까지의 10진수를 사용한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
CODE=값
4문자 이내의 영문자를 사용한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
DSORG={PS|PSU|PO|
POU|DA|DAU|IS}
데이터셋의 구조를 지정한다.
-
PS : 순서 데이터셋이다.
-
PSU : 이동할 수 없는 순서 데이터셋이다.
-
PO : 구분 데이터셋이다.
-
POU : 이동할 수 없는 구분 데이터셋이다.
-
DA : 직접 데이터셋이다.
-
DAU : 이동할 수 없는 직접 데이터셋이다.
-
IS : OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
EROPT= {ACC|SKP|ABE}
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
FUNC={I|P|PW[X[T]]|W[T]}
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
INARE=인덱스 읽기 길이
인덱스 읽기 길이는 1에서 16000000까지의 10진수를 사용할 수 있다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
KEYLEN=키의 길이
키의 길이는 1에서 255까지의 10진수를 지정할 수 있다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
LRECL=레코드 길이
데이터셋의 레코드의 길이를 지정한다.
레코드 형식이 고정길이 블록 레코드이거나 스팬(Span) 레코드인 경우 반드시 지정해야 한다. 스팬 레코드가 아닌 경우 LRECL 오퍼랜드로 지정한 레코드 길이는 BLKSIZE 오퍼랜드로 지정한 블록 길이를 넘을 수 없다. 각 레코드 형식에서 지정할 수 있는 최댓값은 고정길이 혹은 길이 미지정 레코드에 대해서는 32760Byte이다.
MODE={C|CO|CR|E|EO|ER|O|R}
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OPTCD={I|[X][N]|[U]|[J]}
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
RECFM=F[B][T][A|C|M]
V[B|S|BS][T][A|C|M]
L[A|C|M]
U[T][A|C|M]
데이터셋의 레코드 형식과 특성을 지정한다.
OpenFrame에서는 다음 레코드 형식에 대해서만 지원한다.
-
A : ASA 코드 포함 레코드
-
B : 블록 레코드
-
F : 고정 레코드
-
L : 라인 단위 레코드
-
M : 기계 제어 문자 포함 레코드
-
S : 스팬 레코드
-
V : 가변 레코드
-
U : 길이가 미지정된 레코드
-
C : FACOM 제어 문자 포함 레코드, OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
T : 트럭 오버플로우 기능을 이용하도록 지정, OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
L 레코드 형식은 오픈 환경에서 텍스트 파일을 저장하는 일반적인 레코드 형식으로 OpenFrame으로 마이그레이션한 이후 원활한 데이터 연동을 위해서 새로 추가한 레코드 형식이다.
RKP=레코드 중 키의 위치
0에서 32760까지의 10진수를 지정할 수 있다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
PAGESIZE=레코드 개수
0에서 9999999999까지의 10진수를 지정한다. READ 한 번에 가져올 레코드 개수를 지정한다.
-
11.11. FILE
데이터셋의 이름과 상태를 지정한다.
FILE 오퍼랜드를 지정하지 않거나 슬래시(/)를 지정하면 임시 데이터셋을 의미한다.
-
사용법
FILE = ({데이터셋 명 | / } [, FA | AD | OT ] [, IN | OUT ] [, SL | NL | NSL | IBL ] [, TOVF ] [, 파일 순서 번호 | * | 플로피 디스크 블록])
항목 설명 데이터셋 이름
FD에서 사용할 데이터셋의 이름을 지정한다.
데이터셋 이름은 최대 26자리까지 기술한다. 세대그룹 데이터셋(GDG)은 최대 17자리까지 기술한다.
데이터셋의 이름은 하나의 이름 세그먼트 또는 여러 개의 연결된 이름 세그먼트로 구성하고, 이름 세그먼트를 구분하기 위해 점(.)을 사용한다.
FILE 항목을 이용하여 데이터셋 이름을 지정하면 이름 세그먼트당 특정 문자 수의 제한은 없다.
/
임시 데이터셋을 의미한다.
FA | AD | OT
아무것도 지정되지 않은 경우는 기존에 작성된 데이터셋임을 의미한다.
AD와 OT는 영역 할당 파라미터와 영역 할당 파라미터의 OLD 서브 파라미터의 지정 여부에 따라 다르게 동작한다.
-
FA : 신규 데이터셋으로 취급하여 새롭게 작성한다.
-
AD : 기존에 작성된 데이터셋을 확장(추가 쓰기)하거나 신규 데이터셋으로 취급하여 새롭게 작성한다.
-
영역 할당 파라미터 지정, OLD 서브 파라미터 지정 : 기존에 작성된 데이터셋이면 데이터셋을 확장하고, 신규 데이터셋이면 새롭게 작성한다.
-
영역 할당 파라미터 지정, OLD 서브 파라미터 미지정 : 신규 데이터셋으로 취급하여 새롭게 작성한다.
-
영역 할당 파라미터 미지정 : 기존에 작성된 데이터셋으로 취급하여 데이터셋을 확장한다.
-
-
OT : 기존에 작성된 데이터셋을 덮어 쓰거나 신규 데이터셋으로 취급하여 새롭게 작성한다.
-
영역 할당 파라미터 지정 : 신규 데이터셋으로 취급하여 새롭게 작성한다.
-
영역 할당 파라미터 미지정 : 기존에 작성된 데이터셋으로 취급하여 데이터셋을 덮어 쓴다.
-
IN | OUT
지정한 파일이 입력/출력 전용 파일로 처리되도록 지정하는 파라미터이다. OpenFrame에서는 문법만 검사하고 지원하지 않는다.
SL | NL | NSL | IBL
지정한 파일의 라벨 속성을 지정하는 서브 파라미터이다. OpenFrame에서는 문법만 검사하고 지원하지 않는다.
-
SL : Standard label임을 표시한다.
-
NL : No label임을 표시한다.
-
NSL : Non standard label임을 표시한다.
-
IBL : Identification of basic label임을 표시한다.
TOVF
트랙 오버플로우 기능을 이용하여 파일을 작성하도록 지정하는 서브 파라미터이다. OpenFrame에서는 문법만 검사하고 지원하지 않는다.
파일 순서 번호 | * | 플로피 디스크 블록
지정한 파일이 자기 테이프 장치에 존재하는 파일일 경우 테이프 볼륨상의 위치를 지정하는 서브 파라미터이다. 플로피 디스크 블록은 OpenFrame에서는 문법만 검사하고 지원하지 않는다.
파일 순서 번호와 플로피 디스크 블록은 1부터 32767까지 지정할 수 있다.
[임시 데이터셋]
다음은 임시 데이터셋 설명이다. 임시 데이터셋은 다음과 같은 형식으로 만들어진다.
-
FILE 오퍼랜드가 생략되거나 슬래시(/)인 경우
SYSyyddd.Thhmmss.RA000.jobname.Rggnnnn
항목 설명 yyddd
JOB 실행일이다.
hhmmss
JOB 실행 시간이다.
jobname
JOB 이름이다.
nnnn
FD 테이블 순번으로 JOB 내에서는 유일한 번호이다.
-
FILE 오퍼랜드가 생략되었고 SOUT 오퍼랜드로 인해 출력 데이터셋인 경우
jobid(userid.jobname.jobid.Dnnnnnn)
항목 설명 userid
해당 JOB의 사용자명이다.
jobname
JOB 이름이다.
jobid
해당 JOB의 JOBID이다.
nnnnnn
FD 테이블 순번으로 JOB 내에서는 유일한 번호이다.
-
FILE 오퍼랜드의 데이터셋 이름이 지정되었고 SOUT 오퍼랜드로 인해 출력 데이터셋인 경우
jobid(filename.Dnnnnnn)
항목 설명 filename
데이터셋 이름이다.
nnnnnn
FD 테이블 순번으로 JOB 내에서는 유일한 번호이다.
-
Instream 데이터셋인 경우
jobid(userid.jobname.jobid.Dnnnnnn)
항목 설명 userid
해당 JOB의 사용자명이다.
jobname
JOB 이름이다.
jobid
해당 JOB의 JOBID이다.
nnnnnn
FD 테이블 순번으로 JOB 내에서는 유일한 번호이다.
-
-
주의사항
-
FILE 오퍼랜드를 생략하면 해당 FD는 임시 데이터셋을 사용하는 것으로 판단한다.
-
출력 데이터셋은 FD 문의 SOUT 오퍼랜드가 지정되어있는 경우를 의미한다.
-
-
예제
다음은 데이터셋을 TMAX.DATASET으로 지정하는 예제이다.
\ FD FD1=DA,FILE=TMAX.DATASET
다음은 임시 데이터셋을 지정하는 예제이다.
\ FD FD1=DA,FILE=/
다음은 FILE 오퍼랜드를 생략하여 임시 데이터셋을 지정하는 예제이다.
\ FD FD1=DA,DISP=CONT
다음은 전체 서브 파라미터를 모두 기술하는 예제이다.
\ FD FD08=DA,FILE=(TEST.DS,FA,OUT,IBL,TOVF,327)
11.12. FLASH
용지에 일정한 서식, 범위를 미리 인쇄하는 경우에 사용하는 필름 OVERLAY의 식별명, 적용 매수를 지정한다.
-
사용법
FLASH=(필름 식별명[,적용 매수])
항목 설명 필름 식별명
프린터가 출력을 개시하기 전에 오퍼레이터가 설정하는 필름 OVERLAY의 식별명을 1~4의 영문자, 숫자로 지정한다.
적용 매수
지정한 필름 OVERLAY를 적용해 복사하는 매수를 1~255의 부호 없는 정수로 지정한다. (기본값: 255)
-
주의사항
-
출력 데이터셋에 대한 정보가 아닌 경우 FLASH 오퍼랜드는 무시된다.
-
OpenFrame에서는 해당 정보를 직접 처리하지 않고 값을 저장해 두었다가 JOB 실행 완료 후 외부 프린터 모듈에 전달하기 위한 스크립트 파일에 출력한다. 해당 정보의 사용 유무는 외부 프린터 모듈의 필요에 따라 다르다.
-
-
예제
다음은 외부 프린터 모듈에 FLASH=(FLM1,2)의 정보를 전달하는 예제이다.
\ FD OUT1=DA,SOUT=A,FLASH=(FLM1,2)
11.13. FORM
라인 프린터 장치, 페이지 프린터 장치 또는 카드 천공 장치로 출력하는 경우 용지 코드, 용지 이송 제어 코드 및 문자 코드를 지정한다.
-
사용법
FORM=([CODE=용지 코드] [,LPCI=종이 이송 제어 코드] [,UCS=문자 코드])
항목 설명 CODE=용지 코드
라인 프린터 장치, 페이지 프린터 장치 또는 카드 천공 장치에 출력하려고 할 때 용지 코드를 1 ~ 4바이트 문자열로 지정한다.
LPCI=종이 이송 제어 코드
라인 프린터 장치 또는 페이지 프린터 장치에 출력하려고 할 때 행 위치를 맞추기 위한 종이 이송 제어 코드를 1 ~ 4바이트 문자열로 지정한다.
UCS=문자 코드
라인 프린터 장치에 출력하는 경우 사용할 문자 코드를 1 ~ 4바이트 문자열로 지정한다.
-
주의사항
-
출력 데이터셋에 대한 정보가 아닌 경우 FORM 오퍼랜드는 무시된다.
-
OpenFrame에서는 해당 정보를 직접 처리하지 않고 값을 저장해 두었다가 JOB 실행 완료 후 외부 프린터 모듈에 전달하기 위한 스크립트 파일에 출력한다. 해당 정보의 사용 유무는 외부 프린터 모듈의 필요에 따라 다르다.
-
-
예제
다음은 외부 프린터 모듈에 FORM=(CODE=0000,LPCI=STD1)의 정보를 전달하는 예제이다.
\ FD OUT1=DA,SOUT=A,FORM=(CODE=0000,LPCI=STD1)
11.14. FORMS
출력 리스트를 용지 라인 프린터 장치, 용지 페이지 프린터 장치 또는 사무실 프린터 장치로 출력하는 경우 출력 제어 프로그램에 대해 특정 인쇄 속성을 지정한다.
-
사용법
FORMS=([{PORT|LAND|PZOOM|LZOOM|LIST},{A3|A4|A5|B4|B5|LTR} [,ORGN={A0|A1|A2|A3|A4|A5|B1|B2|B3|B4|B5|LP|LTR}] [,LAYOUT={1|2|4|8}]] [,SIDE={FRONT|BOTH}] [,BIND={LEFT|RIGHT|UPPER|LOWER}] [,HOPPER={PRIME|PRIME1|PRIME2|SECOND}] [,STACKER={PRIME|PRIME1|PRIME2|SECOND}] [,PRTAREA={LIMIT|NOLIMIT}])
항목 설명 인쇄 형식 지정
인쇄 형식을 지정한다.
용지 사이즈 지정
출력 용지의 크기를 지정한다.
ORGN
출력 리스트의 설계 용지 사이즈를 지정한다.
LAYOUT
출력 용지 1페이지에 출력할 출력 페이지 수를 지정한다.
SIDE
출력 용지의 어느 면을 사용할지 지정한다.
BIND
출력 용지에 분철을 위해 비워둘 위치를 지정한다.
HOPPER
출력 용지를 꺼내는 공급구를 지정한다.
STACKER
출력 용지를 내보내는 배출구를 지정한다.
PRTAREA
출력 금지 영역을 설정해 인쇄할지 아닐지를 지정한다.
-
예제
다음은 외부 프린터 모듈에 FORMS=(PORT,A4,LAYOUT=1)의 정보를 전달하는 예제이다.
\ FD OUT1=DA,SOUT=A,FORMS=(PORT,A4,LAYOUT=1)
-
주의사항
-
출력 데이터셋에 대한 정보가 아닌 경우 FORMS 오퍼랜드는 무시된다.
-
OpenFrame에서는 해당 정보를 직접 처리하지 않고 값을 저장해 두었다가 JOB 실행 완료 후 외부 프린터 모듈에 전달하기 위한 스크립트 파일에 출력한다. 해당 정보의 사용 유무는 외부 프린터 모듈의 필요에 따라 다르다.
-
11.15. ISF
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
ISF=([PRIM=실린더 수] [, COVF=트랙 수] [, INDX=master index 수] [, BLKD=밀도] [, SPFL] [, TOP])
항목 설명 PRIM=실린더 수
1에서 9999까지의 10진수를 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
COVF=트랙 수
1에서 99까지의 10진수를 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
INDX=master index 수
1에서 9까지의 10진수를 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
BLKD=밀도
1에서 100까지의 10진수를 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
SPFL
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
TOP
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
11.16. LIMIT
소모품 사용량의 상한값을 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
LIMIT=중단 조건
항목 설명 중단 조건
중단 조건은 0에서 65535까지의 10진수이다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
11.17. MEMBER
데이터셋의 멤버를 지정한다.
-
사용법
MEMBER=(멤버명[,R])
항목 설명 멤버명
데이터셋의 멤버명을 지정한다. 1~8자리의 기호문자로 지정한다.
R
지정한 멤버 이름과 동일한 멤버가 존재할 경우 새로운 멤버로 대체할지 여부를 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
주의사항
FILE 오퍼랜드와 함께 사용해야 한다.
-
예제
다음은 A 데이터셋에 멤버 BB를 지정하는 예제이다.
\ FD F1=DA,FILE=A,MEMBER=BB
11.18. MODIFY
출력 데이터셋의 COPY 수식 모듈명과 CHARS 오퍼랜드로 지정하는 테이블의 순서번호를 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
MODIFY=(모듈명[,테이블번호])
항목 설명 모듈명
COPY 수식 모듈명을 1~4자리의 영문자, 숫자로 지정한다.
테이블번호
CHARS 오퍼랜드로 지정된 테이블 중의 순서번호를 숫자(0~3)로 지정한다.
-
예제
다음은 외부 프린터 모듈에 CHARS=(TBJ0,TBJ1,TBJ2), MODIFY=(TLE2,2)의 정보를 전달하는 예제이다.
\ FD OUT1=DA,SOUT=A,CHARS=(TBJ0,TBJ1,TBJ2),MODIFY=(TLE2,2)
11.19. OG
데이터셋을 출력 제어 프로그램에서 출력하는 경우, 그 출력 파일에 연결된 출력 작업 그룹 이름을 지정한다.
-
사용법
OG={출력 작업 그룹명}
항목 설명 출력 작업 그룹명
FD문으로 할당한 파일의 내용을 출력하는 출력 작업 그룹 이름을 1 ~ 8바이트 문자열로 지정한다.
-
주의사항
-
출력 작업 그룹명은 8글자 이내의 문자열이다.
-
출력 데이터셋에 대한 정보가 아닌 경우 OG 오퍼랜드는 무시된다.
-
OpenFrame에서는 해당 정보를 직접 처리하지 않고 값을 저장해 두었다가 JOB 실행 완료 후 외부 프린터 모듈에 전달하기 위한 스크립트 파일에 출력한다. 해당 정보의 사용 유무는 외부 프린터 모듈의 필요에 따라 다르다.
-
-
예제
다음은 외부 프린터 모듈에 OG=OUTGRP1의 정보를 전달하는 예제이다.
\ FD OUT1=DA,SOUT=A,OG=OUTGRP1
11.21. PRTYPE
처리 프로그램이 파일에 출력하는 인쇄 데이터의 레코드 형식을 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
PRTYPE={LP|PP}
11.23. PSW
PSW 파라미터는 파일 또는 볼륨에 대한 읽기 쓰기 권한을 권한이 있는 사용자 만큼 허가할 때 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
PSW=([패스워드][,WRITE])
항목 설명 패스워드
작성하는 데이터셋에 지정할 패스워드 또는 참조하려고 하는 데이터셋에서 필요로 하는 패스워드를 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
WRITE
다음 WRITE에 대해서 자격 증명을 요구하도록 설정한다. OpenFrame에서는 문법만 검사하고 지원하지 않는다.
-
사용 예시
\ FD FD01=DA,FILE=A,VOL=DEFVOL,PSW=AAAA
11.25. RSV
RSV 파라미터는 볼륨의 전 영역을 사용한다는 것을 지정하는 파라미터이다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
RSV
-
사용 예시
\ FD FD01=DA,RSV
11.26. SOUT
출력 데이터셋의 출력 클래스를 지정한다. 해당 오퍼랜드가 지정되면 출력 데이터셋으로 인식해 SPOOL에 데이터셋을 생성하여 처리한다.
-
사용법
SOUT=(클래스[,용지코드][,REPEAT][,P=n][,PGM=프로그램명]
항목 설명 클래스
출력 데이터셋의 출력 클래스를 지정한다. 출력 클래스의 속성에 따라서 출력 데이터셋의 출력 및 출력 보류 등을 지정된다. 출력 클래스는 A부터 T사이의 영문자로 지정한다.
출력 클래스에 대한 설정은 OpenFrame의 tjes 설정의 [OUTCLASS] 절을 참고한다.
용지코드
프린터 출력 시 용지 코드를 지정할 수 있다. FORM 파라미터의 CODE 값이 지정되지 않은 경우에만 적용된다.
REPEAT
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
P=n
1에서 255까지의 십진수로 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
PGM=프로그램 명
프로그램 명은 8자 이내의 영숫자로 구성된 문자열이며, OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
예제
다음은 출력 클래스를 A로 지정하는 예제이다.
\ FD OUT=DA,SOUT=A
11.27. SW
스위치를 통해서 이전 FD를 사용하면서 FD 이름을 변경하도록 지정한다.
-
사용법
SW=(이전 FD 이름[,STEP={STEP 번호|STEP 이름}]
항목 설명 이전 FD 이름
8자리 이내의 영문자, 숫자이어야 하며 첫 번째 문자는 영문자이어야 한다.
STEP 번호 | STEP 이름
-
STEP 번호 : 바꿀 FD가 지정되 STEP의 순번을 기술한다. 부호 없는 정수로 지정한다.
-
STEP 이름 : 바꿀 FD가 지정된 STEP 이름을 기술한다. 기호명칭으로 한다.
-
-
주의사항
-
FD 이름을 지정할 때 파라미터 값으로 ' / '를 지정해야 한다.
-
바뀔 대상의 FD는 DISP 오퍼랜드에 CONT가 설정되어 있어야 한다.
-
SW 문과 같은 기능을 제공하지만 SW 오퍼랜드를 사용하는 경우 바꾸는 FD 이름으로 CF를 사용할 수 있어서 연속 데이터셋으로 연결할 수 있다.
-
-
예제
다음은 이전 FD OUT1을 FD OUT2로 바꾸어서 사용하는 예제이다.
\STEP1 EX * \ FD OUT1=DA,FILE=DATA.CONT,DISP=CONT \ EX PROGRAM \ FD OUT2=/,SW=(OUT1,STEP=STEP1)
11.28. VOL
데이터셋이 존재하는 볼륨의 볼륨 시리얼 번호를 지정하는 파라미터이다.
-
사용법
VOL=({볼륨 시리얼 번호, ... [, VSEQ=볼륨 순서 번호] | WORK | WORK1 | WORK2 | WORK3 | SLMT })
항목 설명 볼륨 일련번호
데이터셋을 작성할 볼륨 또는 데이터셋이 있는 볼륨의 일련번호를 지정한다. 볼륨 일련번호는 1~6자리의 인용 문자열로 지정한다. 지정한 볼륨 일련번호는 OpenFrame의 volume 설정에 지정되어 있어야 한다.
VSEQ = 볼륨 순서 번호
VSEQ 서브 파라미터는 처리하고 싶은 자기 테이프 볼륨의 선두로부터의 위치를 숫자로 지정한다.
WORK, WORK1, WORK2, WORK3, SLMT
OpenFrame에서는 문법만 검사하고 지원하지 않는다.
-
예제
다음은 EXDD01 FD 문에서 볼륨 일련번호 VOL001의 볼륨에 존재하는 기존의 데이터셋의 사용을 요청하는 예제이다.
\ FD EXDD01=DA,FILE=TAPEDS1,VOL=VOL001
다음은 VSEQ 서브 파라미터의 사용 예제이다. 지정한 볼륨은 테이프 장치여야 한다.
\ FD FD01=TAPE1,FILE=TAPEDS1,VOL=(VOL001,5)
11.29. 영역 할당 파라미터
영역 할당 파라미터는 데이터셋을 새롭게 작성하는 경우에 할당할 영역을 지정한다. 또는 기존에 존재하는 데이터셋의 추가 증분량을 지정할 때 사용한다. 이 때, OLD 서브 파라미터나 '/' 서브 파라미터를 지정하며, 세부 동작은 각 서브 파라미터별로 다르다.
-
사용법
{TRK | CYL | FCYL}=({할당 초기값|/}[,추가값][,RLSE][,OLD][,ROUND])| BLK=(블록의 크기*{블록 수|/}[,추가값][,RLSE][,OLD][,ROUND])| ABSTR=(수량,상대적인 트랙번호 [,OLD])
파라미터 설명 TRK
트랙 단위로 영역을 할당한다.
CYL
지정한 실린더 수를 트랙 단위로 환산해 영역을 할당한다.
FCYL
실린더 단위로 영역을 할당한다.
RLSE
사용되지 않았던 영역은 반환을 실시한다.
OpenFrame에서는 문법 검사만 수행한다.
OLD
기존에 작성된 데이터셋이면 해당 데이터셋을 할당한다. 만약 존재하지 않으면 지정한 영역 할당 파라미터 값에 따라 데이터셋을 새롭게 할당한다.
DISP 파라미터에 CAT 지정이 함께 있으면 STEP 종료 후에 RECATALOG된다.
신규 데이터셋이면 VOL 파라미터의 지정이 함께 있을 경우에만 새롭게 작성한다.
ROUND
지정한 값을 실린더 수로 환산해 실린더 단위로 영역을 할당한다.
OpenFrame에서는 문법 검사만 수행하고 실제로 지정된 값에 의한 영역 할당에는 사용하지는 않는다.
BLK
블록의 크기와 블록 수의 곱을 트랙 단위로 환산해 영역을 할당한다.
OpenFrame에서는 문법 검사만 수행하고 실제로 지정된 값에 의한 영역 할당에는 사용하지는 않는다.
ABSTR
특정 위치에서 영역을 할당한다.
OpenFrame에서는 문법 검사만 수행하고 실제로 지정된 값에 의한 영역 할당에는 사용하지는 않는다.
할당 초기값
1에서 65535까지의 10진수를 사용한다.
/
기존에 존재하는 데이터셋에 추가 값이나 RLSE를 지정함을 의미한다.
추가 값
1에서 255까지의 10진수를 사용한다. BLK를 지정하는 경우, 1에서 32767까지의 10진수를 사용한다.
블록의 크기
1에서 32760까지의 10진수를 사용한다. OpenFrame에서는 문법 검사만 수행하고 실제로 지정된 값에 의한 영역 할당에는 사용하지는 않는다.
블록 수
1에서 65535까지의 10진수를 사용한다. OpenFrame에서는 문법 검사만 수행하고 실제로 지정된 값에 의한 영역 할당에는 사용하지는 않는다.
수량
1에서 65535까지의 10진수를 사용한다. OpenFrame에서는 문법 검사만 수행하고 실제로 지정된 값에 의한 영역 할당에는 사용하지는 않는다.
상대적인 트랙 번호
1에서 65535까지의 10진수를 사용한다. OpenFrame에서는 문법 검사만 수행하고 실제로 지정된 값에 의한 영역 할당에는 사용하지는 않는다.
-
예제
다음은 DATA.FD 데이터셋이 신규 데이터셋임을 지정하는 예제이다.
\ FD FD1=DA,FILE=DATA.FD,TRK=10
12. FIN 문
JCL로 구성된 시스템 입력의 끝을 나타내는 문장이다.
-
사용법
\[명칭]△¹FIN△¹[주석]
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다.
8자 이내의 기호명칭이며, 생략할 수 있다. 특수문자 "." 을 포함할 수 있다.
FIN
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "FIN"이라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
주석
FIN 이후에 1개 이상의 공백을 두고 기술한다. 주석은 71번째 칸까지 기술할 수 있다.
13. JEND 문
JEND 문은 작업의 끝부분에 위치하고, 작업의 종료를 나타낸다.
-
사용법
\[명칭]△¹JEND△¹[주석]
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다.
8자 이내의 기호명칭이며, 생략할 수 있다. 특수문자 "." 을 포함할 수 있다.
JEND
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "JEND"라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
작업의 범위에 대한 자세한 내용은 이후 단락의 설명을 참고한다.
주석
JEND 이후에 1개 이상의 공백을 두고 기술한다.
주석은 71번째 칸까지 기술할 수 있다.
작업의 범위
하나의 작업은 CODE 문이나 JOB 문에서 시작하여 JEND 문에서 끝나며, JEND 문은 생략 가능하다.
JEND 문이 생략된 경우에는 다음 문장들 중 하나(존재할 경우) 이전까지 또는 시스템 입력의 끝까지를 하나의 작업으로 간주한다.
-
JOBG 문, CODE 문, JOB 문, JGEND 문, SCAN 문, SCEND 문, USER 문, UEND 문, FIN 문
JEND 문에서부터 다음 작업 제어문(첫 번째 칸이 "\"인 제어문)까지의 데이터는 버려진다. |
14. JGEND 문
JGEND 문은 작업 그룹의 끝부분에 위치하고, 작업 그룹의 종료를 나타낸다.
-
사용법
\[명칭]△¹JGEND△¹[주석]
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다.
8자 이내의 기호명칭이며, 생략할 수 있다. 특수문자 "." 을 포함할 수 있다.
JGEND
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "JGEND"라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
작업 그룹의 범위에 대한 자세한 내용은 표 이후에 설명한다.
주석
JGEND 이후에 1개 이상의 공백을 두고 기술한다.
주석은 71번째 칸까지 기술할 수 있다.
작업 그룹의 범위
하나의 작업 그룹은 JOBG 문에서 시작하여 JGEND 문에서 끝나며, JGEND 문은 생략 가능하다.
JGEND 문이 생략된 경우에는 다음 문장들 중 하나 (존재할 경우) 이전까지 또는 시스템 입력의 끝까지를 하나의 작업 그룹으로 간주한다.
-
JOBG 문, FIN 문
15. JOBG 문
JOB 그룹의 시작을 의미하고, JOB 그룹의 속성을 기술한다.
-
사용법
\[명칭]△¹JOBG△¹위치 오퍼랜드[,키워드 오퍼랜드]...△¹[주석]
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다.
생략할 수 있으며 기호명칭으로 한다. 특수문자 "."을 포함할 수 있다.
JOBG
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "JOBG"라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
위치 오퍼랜드
위치 오퍼랜드 기술 위치로 "JOBG"에 이어서 1개 이상의 공백을 두고 기술한다. JOBG 문의 위치 오퍼랜드는 JOB group 이름으로 생략할 수 없으며 기호명칭으로 한다.
[,키워드 오퍼랜드]
위치 오퍼랜드 이후에 키워드 오퍼랜드를 기술한다. 오퍼랜드에 대한 자세한 내용은 오퍼랜드나 각 절의 설명을 참고한다.
[주석]
오퍼랜드란 이후에 1개 이상의 공백을 두고 기술한다.
주석은 71번째 칸까지 기술할 수 있다.
모든 오퍼랜드를 생략한 경우에는 주석을 기술할 수 없다.
오퍼랜드
다음은 앞에서 언급한 오퍼랜드에 대한 설명이다. 각 오퍼랜드에 대한 자세한 내용은 해당 절의 내용을 참고한다.
-
위치 오퍼랜드
JOBG 문의 위치 오퍼랜드는 JOB 그룹 이름이다.
오퍼랜드 설명 JOB 그룹 이름을 지정한다.
-
키워드 오퍼랜드
오퍼랜드 설명 OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
JOB 문의 RSIZE, PRTY, ML 파라미터를 생략했을 때 사용될 기본값을 지정한다.
JOB의 동시 처리 수의 최댓값을 지정한다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
JOB 그룹의 우선순위를 지정한다.
JOB 그룹 내의 JOB들의 관련성을 지정한다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
JOB 그룹 내의 JOB을 시작하지 않고 기다리도록 지정한다.
15.4. DVAL
JOB 문의 RSIZE, PRTY, ML 파라미터를 생략했을 때 사용될 기본값을 지정한다. 각각의 파라미터의 설명은 JOB 문의 파라이터의 설명을 참고한다.
-
사용법
DVAL = (RSIZE = 값[,PRTY=우선순위][,ML=메시지 레벨])
항목 설명 값
OpenFrame에서는 문법 오류만 검사하고 사용하지는 않는다.
우선순위
0~3의 부호 없는 정수로 지정한다.
메시지 레벨
0~2의 부호 없는 정수로 지정한다.
-
예제
다음은 JOB의 ML 기본값을 1로 지정하는 예제이다.
\ JOBG JOBG1,DVAL=ML=1
15.5. MULTI
JOB의 동시 처리 수의 최댓값을 지정한다. 해당 JOB 그룹 내의 JOB들을 동시 실행할 수 있는 값이다.
-
사용법
MULTI = 다중도
항목 설명 다중도
1~999의 부호 없는 정수로 지정한다.
-
주의사항
MULTI로 지정한 값이 JOB 그룹 내의 JOB들의 수보다 많다면 해당 JOB들은 모두 동시 실행이 가능하다. 만약 REL 오퍼랜드가 지정되어 있다면 MULTI의 값은 무시된다.
-
예제
다음은 다중도를 2로 지정하는 예제이다.
\ JOBG JOBG1,MULTI=2
15.8. PRTY
JOB 그룹의 우선순위는 스케줄링에 사용되며 숫자가 높을수록 우선순위가 높다.
스케줄러에서는 이 오퍼랜드의 값에 따라서 어떤 JOB 그룹 내의 JOB을 먼저 실행할지를 결정한다. 동일한 우선순위를 가질 때는 라운드 로빈 방식으로 각각의 JOB 그룹 내의 JOB이 돌아가면서 실행된다.
-
사용법
PRTY = 우선순위
항목 설명 우선순위
0~3의 부호 없는 정수로 JOB의 우선순위를 지정한다.
-
예제
다음은 PRTY를 1로 지정하는 예제이다.
\ JOBG JOBG1,PRTY=1
15.9. REL
JOB 그룹 내의 JOB들이 서로 관련이 있어서 순차적으로 실행을 하고 싶을 때 지정하는 오퍼랜드이다. 이 오퍼랜드를 지정하면 JOB은 최초 SUBMIT된 JOB부터 순차적으로 실행한다.
-
사용법
REL
-
예제
다음은 REL을 지정하는 예제이다.
\ JOBG JOBG1,REL
15.10. RSIZE
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
RSIZE = 값[K|M]
항목 설명 값
K 단위의 경우: 0에서 16777215 사이의 10진수로 기술한다.
M 단위의 경우: 0에서 16383 사이의 10진수로 기술한다.
15.11. WAIT
JOB 그룹 내의 JOB들의 스케줄링을 SUBMIT이 되었을 때 바로 시작하지 않고 각각 파라미터의 조건이 만족되었을 때 시작하도록 한다.
-
사용법
WAIT = {GO | DATA | 시작 시간 | (JOB 그룹 이름,...)}
항목 설명 GO
사용자가 직접 TJESMGR의 JOBGCTL 명령을 통해서 JOB 그룹을 릴리즈한 후에 JOB들이 스케줄링된다.
DATA
DATA 문을 통한 JOB 그룹의 릴리즈 후에 JOB들이 스케줄링된다.
DATA 문을 통한 릴리즈에 대해서는 DATA 문의 JOBG 오퍼랜드의 설명을 참고한다.
시작 시간
지정한 시간 이후에 JOB 그룹이 릴리즈되어서 JOB들이 스케줄링된다.
만약 지정한 시간이 submit될 때의 시간보다 이전이라면 다음 날의 시간으로 처리한다.
JOB 그룹 이름
지정한 JOB 그룹이 끝난 이후에 JOB들이 스케줄링된다.
-
예제
다음은 GO를 지정하는 예제이다.
\ JOBG JOBG1,WAIT=GO
다음은 DATA를 지정하는 예제이다.
\ JOBG JOBG1,WAIT=DATA
다음은 시작 시간을 10시 30분으로 지정하는 예제이다.
\ JOBG JOBG1,WAIT=10.30
다음은 JOB Gourp을 JOBG2로 지정하는 예제이다. JOBG1은 JOBG2가 끝나야 시작할 수 있게 된다.
\ JOBG JOBG1,WAIT=JOBG2
16. JOB 문
JOB의 시작을 의미하고, JOB의 속성을 기술한다.
-
사용법
\[명칭]△¹JOB△¹위치 오퍼랜드[,키워드 오퍼랜드]...△¹[주석]
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다.
생략할 수 있으며 기호명칭으로 한다. 특수문자 "."을 포함할 수 있다.
JOB
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "JOB"이라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
위치 오퍼랜드
위치 오퍼랜드 기술 위치로 "JOB"에 이어서 1개 이상의 공백을 두고 기술한다. JOB 문의 위치 오퍼랜드는 JOB 이름으로 생략할 수 없으며 기호명칭으로 한다.
[,키워드 오퍼랜드]
위치 오퍼랜드 이후에 키워드 오퍼랜드를 기술한다. 오퍼랜드에 대한 자세한 내용은 오퍼랜드나 각 절의 설명을 참고한다.
[주석]
오퍼랜드란 이후에 1개 이상의 공백을 두고 기술한다.
주석은 71번째 칸까지 기술할 수 있다.
모든 오퍼랜드를 생략한 경우에는 주석을 기술할 수 없다.
오퍼랜드
다음은 앞에서 언급한 오퍼랜드에 대한 설명이다. 각 오퍼랜드에 대한 자세한 내용은 해당 절의 내용을 참고한다.
-
위치 오퍼랜드
JOB 문의 위치 오퍼랜드는 JOB 이름이다.
오퍼랜드 설명 JOB 이름을 지정한다.
-
키워드 오퍼랜드
오퍼랜드 설명 OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
해당 JOB을 HOLD 상태로 SUBMIT을 한다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
JOB의 시스템 메시지의 출력 레벨을 지정한다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
시스템에 통지할 JCL 실행 일자를 지정한다.
JOB의 우선순위를 지정한다. JOB의 우선순위는 스케줄링에 사용되며 숫자가 높을수록 우선순위가 높다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
중단된 JOB을 재실행할 때 시작 스텝의 번호 또는 이름을 지정한다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
16.5. FORM
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
FORM = ([CODE=용지 코드][,LPCI=종이 이송 제어 코드][,UCS=캐릭터 세트 코드])
항목 설명 용지 코드
4문자 이내의 영숫자로 지정한다.
종이 이송 제어 코드
4문자 이내의 영숫자로 지정한다.
캐릭터 세트 코드
4문자 이내의 영숫자로 지정한다.
16.6. FORMS
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
FORMS = ([{PORT|LAND|PZOOM|LZOOM|LIST},{A3|A4|A5|B4|B5|LTR}][, SIDE={FRONT|BOTH}][, HOPPER={PRIME|PRIME1|PRIME2|SECOND}][, STACKER={PRIME|PRIME1|PRIME2|SECOND}])
16.7. HOLD
해당 JOB을 HOLD 상태로 SUBMIT을 한다. HOLD 상태로 SUBMIT된 JOB은 스케줄링이 되지 않으며 사용자가 START 상태로 변환을 시켜주어야 스케줄링이 가능하다.
-
사용법
HOLD
-
예제
다음은 JOB을 HOLD 상태로 지정하는 예제이다.
\ JOB JOB1,HOLD
16.8. LANG
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
LANG = 값
항목 설명 값
ENGLISH(또는 E), JAPANESE(또는 J), CHINESE(또는 C), T#CHINESE(또는 T), KOREAN(또는 K), SPANISH(또는 S)로 실행 결과의 언어를 지정한다.
16.9. LIST
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
LIST = ([출력 클래스[, JS|, JD|, JSE|, JDE]][, STEP])
항목 설명 출력 클래스
1자 이내의 영문자이며, A 부터 T 사이의 문자이다.
16.11. ML
JOB의 시스템 메시지의 출력 레벨을 지정한다.
-
사용법
ML = 메시지 레벨
항목 설명 메시지 레벨
시스템 메시지의 출력 레벨을 지정한다.
-
0 : 시스템 메시지 중 에러 메시지만을 출력한다.
-
1,2 : 시스템 메시지 중 에러 메시지와 함께 데이터셋의 LOCK, ALLOCATE 등의 정보 메시지를 출력한다.
-
-
주의사항
JOB 문에서 이 오퍼랜드를 생략한 경우 JOBG 문에서 지정한 DVAL의 ML의 값을 따른다. 만약 JOBG 문에도 지정되지 않은 경우 기본값은 1이다.
-
예제
다음은 JOB의 ML을 1로 지정하는 예제이다.
\ JOB JOB1,ML=1
16.16. PARA
시스템에 통지할 JCL 실행 일자를 지정한다.
이 항목의 값은 EX 문에 PARA=DATE 값이 지정되어 있지 않은 경우 적용되며, tjclrun 설정 내 OPTION 절의 설정 항목인 SPARM_DATE, SYSTEM 날짜 순보다 우선한다.
PARA 문의 우선순위는 EX 문 > JOB 문 > SPARM_DATE > SYSTEM에 지정된 날짜 순서대로 적용된다.
-
사용법
PARA = (DATE = YYYYMMDD | YYMMDD)
항목 설명 YYYYMMDD
1900년대 혹은 2000년대의 년, 월, 일을 지정한다.
YYMMDD
1900년대의 년, 월, 일을 지정한다.
-
예제
다음은 시스템에 통지할 JCL 실행 일자를 2018년 12월 31일로 지정하는 예제이다.
\ JOB JOB1,PARA=(DATE=20181231) \STEP1 EX TMAXSOFT
다음은 시스템에 통지할 JCL 실행 일자를 1999년 12월 31일로 지정하는 예제이다.
\ JOB JOB2,PARA=(DATE=991231) \STEP1 EX TMAXSOFT
16.17. PRTY
JOB의 우선순위를 지정한다. JOB의 우선순위는 스케줄링에 사용되며 숫자가 높을수록 우선순위가 높다.
스케줄러에서는 이 오퍼랜드의 값에 따라서 어떤 JOB을 먼저 실행할지를 결정한다. 동일한 우선순위를 가질 때는 먼저 SUBMIT된 JOB이 실행된다.
-
사용법
PRTY = (우선순위[,값])
항목 설명 우선순위
0~3의 부호 없는 정수로 지정한다.
값
0~7의 부호 없는 정수로 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
예제
다음은 PRTY를 1로 지정하는 예제이다.
\ JOB JOB1,PRTY=1
16.19. RSIZE
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
RSIZE = 값[K|M]
항목 설명 값
K : 0에서 2096128 사이의 10진수로 지정한다. 단위를 생략 했을 경우에는 K가 지정된 것으로 간주한다.
M : 0에서 2047 사이의 10진수로 지정한다.
17. MACRO 문
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
\[명칭]△¹MACRO△¹값
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다. 8자 이내의 기호 명칭이며 생략할 수 있다. 특수문자 "."을 포함할 수 있다.
MACRO
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "MACRO" 라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
값
MACRO 이후에 1개 이상의 공백을 두고 기술한다. NOEXPAN, SEXPAN, EXPAN 중 하나를 기술한다. OpenFrame에서는 문법 오류만 검사하고 지원하지 않는다.
19. MSG 문
JOB STEP 수행 전에 지정된 메시지를 운영자 콘솔에 출력한다. PAUSE 문과는 달리 메시지 출력 후 작업을 중지하지는 않는다.
MSG 문은 첫 JOB STEP의 EX 문의 뒤라면 어느 위치에 몇 개가 존재하든 상관없다.
-
사용법
\[명칭]△¹MSG△¹[메시지]
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다.
8자 이내의 기호명칭이며, 생략할 수 있다. 특수문자 "." 을 포함할 수 있다.
MSG
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "MSG"라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
메시지
MSG 이후에 1개 이상의 공백을 두고 메시지를 기술한다. (생략 가능)
자세한 내용은 메시지의 설명을 참고한다.
-
예제
다음은 운영자 콘솔에 EXECUTION TIME=30M이라고 출력한 후 PGM을 실행하는 예제이다.
\ JOB TESTJOB \ EX PGM \ MSG EXECUTION TIME=30M \ JEND
메시지
다음은 앞에서 언급한 메시지에 대한 설명이다.
-
형식
40글자 이내의 인용 캐릭터 라인이다.
-
기능
JOB STEP 수행 전에 메시지를 출력한다. PAUSE 문과는 달리, 메시지 출력 후 작업을 중지하지는 않는다. 메시지가 생략된 경우 운영자 콘솔에 40글자의 공백을 출력한다.
20. NOP 문
NOP 문 자체는 아무 동작도 수행하지 않는다. 하지만 NOP 문의 명칭은 SKIP 문, IF 문 또는 IFN 문의 분기처로 사용될 수 있다. 입력 스트림 내에서 NOP 문은 어느 곳에서든 몇 번이든 등장할 수 있다.
-
사용법
\[명칭]△¹NOP△¹[주석]
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다.
8자 이내의 기호명칭이며, 생략할 수 있다. 특수문자 "." 을 포함할 수 있다.
NOP
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "NOP"라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
주석
NOP 이후에 1개 이상의 공백을 두고 기술한다.
주석은 71번째 칸까지 기술할 수 있다.
-
예제
\S1 NOP
21. NOTE 문
JOB이 실행될 때 메시지를 콘솔에 출력하는 문장이다. 첫 번째 JOB STEP의 EX문 이후에 횟수 상관없이 기술할 수 있다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
\[명칭]△¹NOTE△¹[값]△¹주석
항목 설명 이름
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다. 8자 이내의 기호 명칭이며 생략할 수 있다. 특수문자 "."을 포함할 수 있다.
NOTE
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "NOTE" 라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
값
"NOTE"에 이어서 1개 이상의 공백을 두고 기술한다. 값은 메시지로 출력할 문자를 의미한다. OpenFrame에서는 문법오류만 검사하고 지원하지 않는다.
주석
오퍼랜드 이후에 1개 이상의 공백을 두고 기술한다. 주석은 71번째 칸까지 기술할 수 있다.
오퍼랜드
다음은 앞에서 언급한 오퍼랜드에 대한 설명이다. 각 오퍼랜드에 대한 자세한 내용은 해당 절의 내용을 참고한다.
-
필수 오퍼랜드
오퍼랜드 설명 메시지
40자 이내의 문자로 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
22. PARA 문
STEP의 실행 프로그램의 파라미터를 지정하는 문장이다. PARA 문은 EX 문 이후에 기술해야 한다. PARA 문은 STEP당 하나만 기술할 수 있다.
-
사용법
\[명칭]△¹PARA△¹파라미터△¹[주석]
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다.
8자 이내의 기호명칭이며, 생략할 수 있다. 특수문자 "." 을 포함할 수 있다.
PARA
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "PARA"이라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
파라미터
PARA 이후에 1개 이상의 공백을 두고 파라미터를 기술한다.
주석
파라미터 이후에 1개 이상의 공백을 두고 기술한다.
주석은 71번째 칸까지 기술할 수 있다.
파라미터
STEP에서 실행할 프로그램에게 전해줄 파라미터를 지정한다.
COBOL 프로그램에 파라미터를 넘기는 경우에는 총 130bytes를 넘겨준다. 이때 130bytes 중에 앞의 2bytes는 파라미터의 데이터 길이가 들어가고, 나머지 128bytes에 파라미터가 들어간다.
파라미터 앞뒤에 붙어 있는 스페이스는 모두 제거한다. 파라미터에 데이타가 없거나, 모두 스페이스인 경우에는 COBOL 프로그램에 넘기는 총 130bytes 중에서 2bytes에는 길이가 0으로, 나머지 128bytes에는 스페이스로 채워지게 된다.
-
사용법
파라미터
항목 설명 파라미터
0~128까지 특수 캐릭터 라인으로 지정한다.
23. PAUSE 문
JOB은 JOB STEP들로 이루어지고, JOB STEP은 PAUSE 문의 유무에 따라 다음과 같이 수행된다.
-
PAUSE 문이 없는 경우
해당 JOB STEP의 이전 JOB STEP 수행이 끝나는 대로 해당 JOB STEP을 수행한다.
-
PAUSE 문이 있는 경우
해당 JOB STEP의 이전 JOB STEP 수행이 끝나면, 지정된 메시지를 운영자 콘솔에 출력하고, 응답이 입력될 때까지 대기한 후 응답이 입력되면 해당 JOB STEP을 수행한다.
PAUSE 문은 첫 JOB STEP의 EX 문의 뒤라면, 어느 위치에 몇 개가 존재하든 상관없다.
-
사용법
\[명칭]△¹PAUSE△¹[메시지]
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다.
8자 이내의 기호명칭이며, 생략할 수 있다. 특수문자 "." 을 포함할 수 있다.
PAUSE
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "PAUSE"라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
메시지
PAUSE 이후에 1개 이상의 공백을 두고 메시지를 기술한다. (생략 가능)
자세한 내용은 메시지의 설명을 참고한다.
-
예제
다음은 운영자 콘솔에 "HOW ARE YOU"라고 출력하고 운영자로부터 "OK" 응답을 받은 후 PGM을 실행하는 예제이다. 만약 응답이 "CANCEL"인 경우에는 작업을 중단한다.
\ JOB TESTJOB \ EX PGM \ PAUSE HOW ARE YOU \ JEND
메시지
다음은 앞에서 언급한 메시지에 대한 설명이다.
-
형식
40글자 이내의 인용 캐릭터 라인이다.
-
기능
JOB STEP 수행 전에 메시지를 출력하고, 운영자로부터 응답을 받을 때까지 JOB STEP 수행을 중지한다. 예를 들어 특정 JOB STEP 수행 전에 그 JOB STEP이 필요로 하는 자원을 준비하도록 지시할 수 있다. 메시지가 생략된 경우 운영자 콘솔에 40글자의 공백을 출력한다.
PAUSE 문의 메시지에 대한 운영자의 응답은 다음 둘 중 하나이다. 아래 두 응답이 아닌 그 외의 응답이 지정된 경우에는 다시 PAUSE 문의 메시지가 출력되어 응답을 기다린다. PAUSE 문으로 메시지 출력 후 응답을 기다리는 중에 해당 JOB이 STOP된 경우, 해당 메시지는 자동으로 삭제된다.
응답 설명 OK
OK가 응답으로 지정된 경우 JOB STEP 수행을 재개한다.
CANCEL
CANCEL이 응답으로 지정된 경우 작업을 중단한다.
24. SCAN 문
문법 검사의 시작을 의미하는 문장이다. SCAN 문이 나오면 이후로 SCEND 문이나 FIN 문이 나올 때까지의 문장은 문법 검사만 수행하며 어느 것도 실행하지 않는다.
-
사용법
\[명칭]△¹SCAN△¹오퍼랜드[,오퍼랜드]...△¹[주석]
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다.
8자 이내의 기호 명칭이며, 생략할 수 있다. 특수문자 "."을 포함할 수 있다.
SCAN
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "SCAN"이라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
오퍼랜드[,오퍼랜드]
SCAN 이후에 1개 이상의 공백을 두고 오퍼랜드를 기술한다. 반드시 한 개 이상 기술해야 한다. OpenFrame에서는 오퍼랜드는 지원하지 않는다.
주석
오퍼랜드 이후에 1개 이상의 공백을 두고 기술한다.
주석은 71번째 칸까지 기술할 수 있다.
오퍼랜드
SCAN문의 오퍼랜드는 OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다. 오퍼랜드 애스터리스크(*)는 오퍼랜드를 기술하고 싶지 않을 때 사용된다.
-
오퍼랜드
오퍼랜드 설명 오퍼랜드를 기술하지 않는 경우에 기술한다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
24.3. LIST
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
LIST = ([출력 클래스[, JS|, JD|, JSE|, JDE]])
항목 설명 출력 클래스
1자의 문자로 지정한다.
24.5. VOL
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
VOL = ({볼륨 일련 번호,…|WORK|WORK1|WORK2|WORK3})
항목 설명 볼륨 일련 번호
6문자 이내의 영숫자로 지정한다.
24.7. MEMBER
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
MEMBER = (멤버명[, R])
항목 설명 멤버명
8문자 이내의 영문자로 지정한다.
24.8. TRK
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
TRK = ({수량|S수량}[, 추가분][, RLSE][, ROUND])
항목 설명 수량
1에서 65535 사이의 10진수로 지정한다.
추가분
1에서 255 사이의 10진수로 지정한다.
24.9. CYL
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
CYL = ({수량|S수량}[, 추가분][, RLSE][, ROUND])
항목 설명 수량
1에서 65535 사이의 10진수로 지정한다.
추가분
1에서 255 사이의 10진수로 지정한다.
24.10. FCYL
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
FCYL = ({수량|S수량}[, 추가분][, RLSE][, ROUND])
항목 설명 수량
1에서 65535 사이의 10진수로 지정한다.
추가분
1에서 255 사이의 10진수로 지정한다.
24.11. BLK
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
BLK = ({블록 길이|S블록 길이}*블록 수[, 추가분][, RLSE][, ROUND])
항목 설명 블록 길이
1에서 32760 사이의 10진수로 지정한다.
블록 수
1에서 65535 사이의 10진수로 지정한다.
추가분
1에서 32767 사이의 10진수로 지정한다.
24.12. ABSTR
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
ABSTR = (수량, 트랙 번호)
항목 설명 수량
1에서 65535 사이의 10진수로 지정한다.
트랙 번호
1에서 65535 사이의 10진수로 지정한다.
25. SCEND 문
문법 검사의 끝을 의미하는 문장이다.
SCEND 문은 SCAN문과 함께 사용하는 문장으로 SCAN문 이후에 문법 검사할 문장을 기술한 후 끝에 기술한다.
-
사용법
\[명칭]△¹SCEND△¹[주석]
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다.
8자 이내의 기호명칭이며, 생략할 수 있다. 특수문자 "." 을 포함할 수 있다.
SCEND
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "SCEND"이라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
주석
'SCEND' 이후에 1개 이상의 공백을 두고 기술한다.
주석은 71번째 칸까지 기술할 수 있다.
26. STACK 문
STACK 문은 작업을 실행할 때 지정된 데이터셋을 submit한다. VOL 파라미터를 지정하지 않은 경우 카탈로그를 조회하며, VOL 파라미터를 지정한 경우 해당 볼륨에 대해서만 데이터셋을 조회하여 submit한다.
-
사용법
\[명칭]△¹STACK△¹필수 키워드 오퍼랜드[,키워드 오퍼랜드]
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다.
8자 이내의 기호명칭이며, 생략할 수 있다. 특수문자 "." 을 포함할 수 있다.
STACK
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "STACK"이라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
필수 키워드 오퍼랜드
필수 키워드 오퍼랜드 기술 위치로 "STACK"에 이어서 1개 이상의 공백을 두고 기술한다. STACK 문의 필수 키워드 오퍼랜드는 submit할 데이터셋 이름으로 생략할 수 없다.
[,키워드 오퍼랜드]
필수 키워드 오퍼랜드 이후에 키워드 오퍼랜드를 기술한다. 오퍼랜드에 대한 자세한 내용은 오퍼랜드나 각 절의 설명을 참고한다.
주석
오퍼랜드 이후에 1개 이상의 공백을 두고 기술한다.
주석은 71번째 칸까지 기술할 수 있다.
오퍼랜드
다음은 앞에서 언급한 오퍼랜드에 대한 설명이다. 각 오퍼랜드에 대한 자세한 내용은 해당 절의 내용을 참고한다.
-
필수 키워드 오퍼랜드
STACK 문의 필수 키워드 오퍼랜드는 submit할 데이터셋의 이름이다. 생략할 수 없다.
오퍼랜드 설명 submit할 데이터셋의 이름을 지정한다.
-
키워드 오퍼랜드
오퍼랜드 설명 submit할 데이터셋의 멤버를 지정한다.
submit할 데이터셋이 위치한 볼륨 시리얼을 지정한다.
submit할 JOB의 범위를 지정한다.
submit할 JCL에서 재시작할 스텝의 번호 또는 이름을 지정한다.
submit할 JOB의 JOB 그룹을 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
submit할 JOB의 출력 JOB 그룹을 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
26.1. FILE
submit할 데이터셋 이름을 지정한다.
-
사용법
FILE = 데이터셋 이름
항목 설명 데이터셋 이름
submit할 데이터셋 이름을 지정한다. 데이터셋 이름은 최대 26자리까지 기술한다. MEMBER 오퍼랜드가 생략된 경우에는 일반 NVSM 데이터셋으로 인식한다.
-
예제
다음은 STACK 문을 통해서 A라는 이름의 데이터셋을 submit하는 예제이다.
\ JOB STACK01 \ EX PROGRAM \ STACK FILE=A \ JEND
26.2. MEMBER
submit할 데이터셋 멤버명을 지정한다.
-
사용법
FILE = member
항목 설명 멤버명
submit할 데이터셋 멤버명을 지정한다. 1~8자리의 기호문자로 지정하며, 이때 FILE로 지정한 데이터셋은 PDS 데이터셋이다.
-
예제
다음은 STACK 문을 통해서 A라는 이름의 PDS 멤버인 B를 submit하는 예제이다.
\ JOB STACK02 \ EX PROGRAM \ STACK FILE=A,MEMBER=B \ JEND
26.3. VOL
submit할 데이터셋이 위치한 볼륨 시리얼을 지정한다.
-
사용법
VOL = volser
항목 설명 volser
submit할 데이터셋이 위치한 볼륨 일련번호를 지정한다. 볼륨 일련번호는 1~6자리 문자열로 지정한다. 이 오퍼랜드가 지정된 경우 데이터셋의 경로를 해당 볼륨에서 검색한다. 지정되지 않은 경우에는 카탈로그에서 데이터셋을 검색한다.
-
예제
다음은 STACK 문을 통해서 볼륨 DEFVOL에 위치한 A라는 이름의 PDS 멤버인 B를 submit하는 예제이다.
\ JOB STACK03 \ EX PROGRAM \ STACK FILE=A,MEMBER=B,VOL=DEFVOL \ JEND
26.4. RJ
submit할 JOB의 범위를 지정한다.
-
사용법
RJ = ([JOB 이름 1] [, JOB 이름 2])
항목 설명 JOB 이름 1
해당 JOB부터 submit 하도록 지정한다. JOB 이름은 8자 이내의 기호 명칭으로 지정한다. 생략 시 첫 번째 JOB부터 submit 된다.
JOB 이름 2
해당 JOB까지 submit 하도록 지정한다. JOB 이름은 8자 이내의 기호 명칭으로 지정한다. 생략 시 마지막 JOB까지 submit 된다.
26.5. RJS
submit할 JCL에서 재시작할 스텝의 번호 또는 이름을 지정한다.
-
사용법
RJS = 스텝번호 | 스텝명
항목 설명 스텝번호
submit할 JCL의 재시작할 스텝이 해당 JOB에서 몇 번째 스텝인지 10진수로 지정한다.
스텝명
submit할 JCL의 재시작할 스텝의 이름을 지정한다.
-
예제
다음은 STACK 문을 통해서 볼륨 DEFVOL에 위치한 A라는 이름의 PDS 멤버인 JCL B를 submit해서 JOB의 2번째 스텝부터 재실행하는 예제이다.
\ JOB STACK04 \ EX PROGRAM \ STACK FILE=A,MEMBER=B,VOL=DEFVOL,RJS=2 \ JEND
27. SW 문
SW 문은 이전 STEP에서 사용한 데이터셋의 FD 이름을 변경하여 사용하는 기능이다.
-
사용법
\[명칭]△¹SW△¹필수 키워드 오퍼랜드[,키워드 오퍼랜드]...△¹[주석]
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다.
생략할 수 있으며 기호명칭으로 한다. 특수문자 "."을 포함할 수 있다.
SW
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "SW"이라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
필수 키워드 오퍼랜드
필수 키워드 오퍼랜드 기술 위치로 "SW"에 이어서 1개 이상의 공백을 두고 기술한다. SW 문의 오퍼랜드는 변경할 FD 이름으로 생략할 수 없으며 기호명칭으로 한다.
[,키워드 오퍼랜드]
필수 키워드 오퍼랜드 이후에 키워드 오퍼랜드를 기술한다. 오퍼랜드에 대한 자세한 내용은 오퍼랜드나 각 절의 설명을 참고한다.
[주석]
오퍼랜드란 이후에 1개 이상의 공백을 두고 기술한다.
주석은 71번째 칸까지 기술할 수 있다.
모든 오퍼랜드를 생략한 경우에는 주석을 기술할 수 없다.
오퍼랜드
다음은 앞에서 언급한 오퍼랜드에 대한 설명이다. 각 오퍼랜드에 대한 자세한 내용은 해당 절의 내용을 참고한다.
-
필수 키워드 오퍼랜드
SW 문의 필수 키워드 오퍼랜드는 변경할 FD 이름이다. 생략할 수 없다.
오퍼랜드 설명 변경 FD 이름을 지정한다.
-
키워드 오퍼랜드
오퍼랜드 설명 OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
데이터셋의 후처리에 대한 설정을 지정한다.
데이터셋의 FCB(File Control Block)정보를 지정한다.
데이터셋의 이름과 상태를 지정한다.
데이터셋의 멤버를 지정한다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
이전 FD가 선언되었던 STEP의 정보를 지정한다.
데이터셋의 볼륨을 지정한다.
27.1. 변경 FD 이름
변경 FD 이름을 지정한다.
-
사용법
변경 FD 이름 = 이전 FD 이름
항목 설명 변경 FD 이름
변경FD 이름을 지정한다. FD 이름은 8자리 이내의 영문자, 숫자이어야 하며 첫 번째 문자는 영문자이어야 한다.
이전 FD 이름
이전FD 이름을 지정한다. FD 이름은 8자리 이내의 이어야 하며 첫 번째 문자는 영문자이어야 한다.
-
주의사항
이전 FD의 DISP 키워드 오퍼랜드에 CONT 설정을 지정하여야 한다.
-
예제
다음은 SW 문을 통해서 UIN FD로 사용되었던 DATA.SW 데이터셋을 다음 STEP에서 SIN으로 사용하는 예제이다.
\ EX * \ FD UIN=DA,FILE=DATA.SW,VOL=100000,DISP=CONT \ EX PROGRAM \ SW SIN=UIN
27.3. DISP
데이터셋의 후처리에 대한 설정을 지정한다.
-
사용법
DISP = ([CONT|LOCK][,DLT|,CAT|,UNCAT][,RETAIN|,UNLOAD][,DEF][,REF][,KEEP][,NOCLOSE])
JOB STEP이 종료했을 때 데이터셋의 후처리 방법을 지정한다.
항목 설명 CONT | LOCK
-
CONT : 해당 데이터셋을 다음 STEP에서도 사용할 수 있도록 지정한다.
-
LOCK : 데이터셋의 LOCK을 지정한다 LOCK이 지정된 경우 OpenFrame에서는 해당 데이터셋의 LOCK을 배타적으로 걸도록 요청한다. LOCK은 JOB 단위로 처리되기 때문에 JOB이 끝날 때까지 유지된다.
DLT | CAT | UNCAT
-
DLT : JOB STEP이 종료할 때 데이터셋을 삭제하도록 지정한다.
-
CAT : JOB STEP이 종료할 때 데이터셋을 카탈로그에 등록하도록 지정한다.
-
UNCAT : JOB STEP이 종료할 때 데이터셋을 카탈로그에서 삭제하도록 지정한다.
RETAIN | UNLOAD
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
DEF
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
REF
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
KEEP
JOB STEP이 종료할 때 데이터셋을 보존하도록 지정한다.
NOCLOSE
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
-
주의사항
-
파라미터 1만 지정하는 경우 괄호로 처리할 필요가 없다.
-
DISP 오퍼랜드가 지정되지 않은 경우 KEEP 지정이 기본값이다.
-
-
예제
다음은 이전 STEP의 FD1을 SW1로 스위치하는 예제이다. JOB STEP이 종료될 때 데이터셋을 삭제한다.
\ SW SW1=FD1,DISP=DLT
27.4. FCB
데이터셋의 FCB(File Control Block)정보를 지정한다.
-
사용법
FCB = (fcb 파라미터[,fcb 파라미터]...)
fcb 파라미터 용도 BFALN=값
F 또는 D로 지정한다.OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
BLKSIZE={블록 길이}
블록의 길이를 Byte 단위로 지정한다.
BLKSIZE 오퍼랜드로 지정할 수 있는 최댓값은 레코드 형식에 관계없이 32760Byte이다.
다음은 레코드 형식별 블록 길이를 지정하는 방법이다.
-
RECFM=F
LRECL 오퍼랜드로 레코드 길이를 지정했을 경우 그 값은 블록 길이와 같아야 한다.
-
RECFM=FB
SYSOUT 데이터셋의 경우 블록 길이가 LRECL 오퍼랜드에서 지정한 레코드 길이의 정수배가 아니면, 블록 길이는 레코드 길이의 정수배로 조정(truncate)된다. 출력 데이터셋 이외의 경우 반드시 블록 길이는 LRECL 오퍼랜드에서 지정한 레코드 길이의 정수배로 지정해야 한다.
-
RECFM={V|VB|VS|VBS}
최대 블록 길이를 지정한다.
-
RECFM=U
최대 블록 길이를 지정한다.
BUFNO=값
1에서 255 사이의 10진수로 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
CODE=값
4문자 이내의 영숫자로 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
DSORG={PS|PSU|PO|
POU|DA|DAU}
데이터셋의 구조를 지정한다.
-
PS : 순서 데이터셋이다.
-
PSU : 이동할 수 없는 순서 데이터셋이다.
-
PO : 구분 데이터셋이다.
-
POU : 이동할 수 없는 구분 데이터셋이다.
-
DA : 직접 데이터셋이다.
-
DAU : 이동할 수 없는 직접 데이터셋이다.
EROPT={ACC|SKP|ABE}
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
FUNC={I|P|PW[X[T]]|W [T]}
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
INARE=값
1에서 160000000사이의 10진수로 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
KEYLEN=값
1에서 255사이의 10진수로 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
LRECL=레코드 길이
데이터셋의 레코드의 길이를 지정한다.
레코드 형식이 고정길이 블록 레코드이거나 스팬(Span) 레코드인 경우 반드시 지정해야 한다. 스팬 레코드가 아닌 경우 LRECL 오퍼랜드로 지정한 레코드 길이는 BLKSIZE 오퍼랜드로 지정한 블록 길이를 넘을 수 없다.
각 레코드 형식에서 지정할 수 있는 최댓값은 고정길이 혹은 길이 미지정 레코드에 대해서는 32760Byte이다.
다음은 레코드 형식별 레코드 길이를 지정하는 방법이다.
-
RECFM={F|FB}
레코드 길이를 지정한다.
-
RECFM={V|VB|VS|VBS}
최대 레코드 길이를 지정한다. 4Byte RDW를 포함한 길이이다.
-
RECFM=U
최대 레코드 길이를 지정한다.
MODE={C|CO|CR|E|EO|ER|O|R}
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
OPTCD={I|[X][N]|[U][J]}
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
RECFM=F[B][T][A|C|M]
V[B|S|BS][T][A|C|M]
L[A|C|M]
U[T][A|C|M]
데이터셋의 레코드 형식과 특성을 지정한다.
OpenFrame에서는 다음 레코드 형식에 대해서만 지원한다.
-
A : ASA 코드 포함 레코드
-
B : 블록 레코드
-
F : 고정 레코드
-
L : 라인 단위 레코드
-
M : 기계 제어 문자 포함 레코드
-
S : 스팬 레코드
-
V : 가변 레코드
-
U : 길이가 미지정된 레코드
-
C : FACOM 제어 문자 포함 레코드, OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
T : 트럭 오버플로우 기능을 이용하도록 지정, OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
L 레코드 형식은 오픈 환경에서 텍스트 파일을 저장하는 일반적인 레코드 형식으로 OpenFrame으로 마이그레이션한 이후 원활한 데이터 연동을 위해서 새로 추가한 레코드 형식이다.
RKP=값
0부터 32760 사이의 10진수로 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
PAGESIZE=레코드 개수
0에서 9999999999까지의 10진수를 지정한다. READ 한 번에 가져올 레코드 개수를 지정한다.
-
27.5. FILE
데이터셋의 이름과 상태를 변경한다. FILE 오퍼랜드를 지정하지 않거나 슬래시(/)를 지정하면 임시 데이터셋을 의미한다.
-
사용법
FILE = ({데이터셋 이름|/}[,FA|,AD|,OT][,값])
항목 설명 데이터셋 이름
변경할 데이터셋의 이름을 지정한다.
데이터셋 이름은 "기호문자[.<기호문자>]…" 형식으로 최대 26자리까지 기술한다. 하나의 기호문자는 최대 8자리이다. 세대그룹 데이터셋(GDG)은 최대 17자리까지이다.
/
데이터셋의 이름을 변경하지 않는 것을 의미한다.
FA | AD | OT
아무것도 지정되지 않은 경우는 기존에 작성된 데이터셋임을 의미한다.
AD와 OT는 영역 할당 파라미터와 영역 할당 파라미터의 OLD 서브 파라미터의 지정 여부에 따라 다르게 동작한다.
-
FA : 신규 데이터셋으로 취급하여 새롭게 작성한다.
-
AD : 기존에 작성된 데이터셋을 확장(추가 쓰기)하거나 신규 데이터셋으로 취급하여 새롭게 작성한다.
-
영역 할당 파라미터 지정, OLD 서브 파라미터 지정 : 기존에 작성된 데이터셋이면 데이터셋을 확장하고, 신규 데이터셋이면 새롭게 작성한다.
-
영역 할당 파라미터 지정 : OLD 서브 파라미터 미지정 : 신규 데이터셋으로 취급하여 새롭게 작성한다.
-
영역 할당 파라미터 미지정 : 기존에 작성된 데이터셋으로 취급하여 데이터셋을 확장한다.
-
-
OT : 기존에 작성된 데이터셋을 덮어 쓰거나 신규 데이터셋으로 취급하여 새롭게 작성한다.
-
영역 할당 파라미터 지정 : 신규 데이터셋으로 취급하여 새롭게 작성한다.
-
영역 할당 파라미터 미지정 : 기존에 작성된 데이터셋으로 취급하여 데이터셋을 덮어 쓴다.
-
값
1에서 32767 사이의 10진수로 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
-
예제
다음은 데이터셋을 TMAX.DATASET으로 지정하는 예제이다.
\ SW SW1=FD1,FILE=TMAX.DATASET
27.6. MEMBER
데이터셋의 멤버를 지정한다.
-
사용법
MEMBER = (멤버명[,R])
항목 설명 멤버명
데이터셋의 멤버명을 지정한다. 1~8자리의 기호문자로 지정한다.
R
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
주의사항
FILE 오퍼랜드와 함께 사용해야 한다.
-
예제
다음은 A 데이터셋에 멤버 BB를 지정하는 예제이다.
\ SW SW1=FD1,FILE=A,MEMBER=BB
27.9. STEP
이전 FD가 선언되었던 STEP의 정보를 지정한다.
-
사용법
STEP={STEP 번호|STEP 이름}
항목 설명 STEP 번호|STEP 이름
-
번호 : 바꿀 FD가 지정된 STEP의 순번을 기술한다. 부호 없는 정수로 지정한다.
-
STEP 이름 : 바꿀 FD가 지정된 STEP 이름을 기술한다. 기호명칭으로 한다.
-
-
예제
다음은 STEP2에 있는 이전 FD OUT1을 FD OUT2로 바꾸어서 사용하는 예제이다.
\STEP1 EX * \ FD OUT1=DA,FILE=DATA.CONT,DISP=CONT \STEP2 EX * \ FD OUT1=DA,FILE=DATA2.CONT,DISP=CONT \ EX PROGRAM \ SW OUT2=OUT1,STEP=STEP2
27.10. VOL
데이터셋의 볼륨을 지정한다. 지정하려는 볼륨이 테이프 볼륨일 때만 VOL 파라미터로 볼륨 시리얼 번호를 지정할 수 있다.
-
사용법
VOL = (볼륨 일련번호[,값])
항목 설명 볼륨 일련번호
데이터셋을 작성할 볼륨 또는 데이터셋이 있는 볼륨의 일련번호를 지정한다.
볼륨 일련번호는 1~6자리의 인용 문자열로 지정한다. 지정한 볼륨 일련번호는 OpenFrame의 volume 설정에 지정되어 있어야 한다.
값
1에서 255 사이의 10진수로 지정한다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
예제
다음은 EXDD01 SW 문에서 볼륨 일련번호 VOL001의 볼륨에 존재하는 기존의 데이터셋의 사용을 요청하는 예제이다.
\ SW SW1=FD1,FILE=DATA.CHANGE,VOL=VOL001
28. SYSIN 문
JCL로 기술된 시스템 입력 파일을 연결한다. SYSIN문에 의해 연결되는 파일의 데이터가 SYSIN문 자리에 삽입된다.
-
예제
다음은 SYSIN문을 사용하는 예시이다.
\ JOB JOB1 \ SYSIN UNIT=A,FILE=B \ JEND
다음은 JCL로 구성된 시스템 입력 파일 B에 대한 예시이다.
\ EX PROGRAM \ FD COIN=* / PRINT / FIN \*
다음은 JOB1에 SYSIN문의 내용이 삽입된 결과이다.
\ JOB JOB1 \ EX PROGRAM \ FD COIN=* / PRINT / FIN \* \ JEND
-
사용법
\[명칭]△¹SYSIN△¹오퍼랜드[,오퍼랜드]...△¹[주석]
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다.
8자 이내의 기호 명칭이며, 생략할 수 있다. 특수문자 "."을 포함할 수 있다.
SYSIN
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "SYSIN"이라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
오퍼랜드[,오퍼랜드]
SYSIN 이후에 1개 이상의 공백을 두고 오퍼랜드를 기술한다. 오퍼랜드에 대한 자세한 내용은 오퍼랜드나 각 절의 설명을 참고한다.
주석
오퍼랜드 이후에 1개 이상의 공백을 두고 기술한다.
주석은 71번째 칸까지 기술할 수 있다.
오퍼랜드
다음은 앞에서 언급한 오퍼랜드에 대한 설명이다. 각 오퍼랜드에 대한 자세한 내용은 해당 절의 내용을 참고한다.
28.1. UNIT
OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
UNIT={장치명|기종명|DA|SAME}
항목 설명 장치명, 기종명
4문자 이내의 문자로 지정한다.
29. UEND 문
USER 문의 끝을 의미하는 문장이다.
UEND 문은 USER 문과 함께 사용하는 문장으로 UEND 문이 생략된 경우 다음 USER 문이나 FIN 문까지가 해당 USER 문의 유효범위이다.
-
사용법
\[명칭]△¹UEND△¹[주석]
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다.
8자 이내의 기호명칭이며, 생략할 수 있다. 특수문자 "." 을 포함할 수 있다.
UEND
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "UEND"이라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
주석
'UEND' 이후에 1개 이상의 공백을 두고 기술한다.
주석은 71번째 칸까지 기술할 수 있다.
30. UNCAT 문
파일명과 볼륨 정보를 카탈로그에서 삭제하는 문장이다. OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
-
사용법
\[이름]△¹UNCAT△¹필수 키워드 오퍼랜드[,키워드 오퍼랜드]...△¹[주석]
항목 설명 이름
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다. 8자 이내의 기호 명칭이며, 생략할 수 있다. 특수문자 "."을 포함할 수 있다.
UNCAT
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "UNCAT"이라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
필수 키워드 오퍼랜드
필수 키워드 오퍼랜드 기술 위치로, "UNCAT"에 이어서 1개 이상의 공백을 두고 기술한다.
[,키워드 오퍼랜드]
필수 오퍼랜드 이후에 1개 이상의 공백을 두고 오퍼랜드를 기술한다. 오퍼랜드에 대한 자세한 내용은 오퍼랜드나 각 절의 설명을 참고한다.
주석
오퍼랜드 이후에 1개 이상의 공백을 두고 기술한다. 주석은 71번째 칸까지 기술할 수 있다.
오퍼랜드
다음은 앞에서 언급한 오퍼랜드에 대한 설명이다. 각 오퍼랜드에 대한 자세한 내용은 해당 절의 내용을 참고한다.
31. USER 문
사용자명을 지정하는 문장이다.
USER 문으로 사용자명을 지정하면 UEND 문이 나올 때까지 그 사이의 문장은 USER 문에서 지정된 사용자로 실행이 된다. USER 문은 JOB문 이전에 기술되어야 한다.
-
사용법
\[명칭]△¹USER△¹필수 오퍼랜드[,오퍼랜드]...△¹[주석]
항목 설명 명칭
명칭 기술 위치로 "\"에 이어서 두 번째 칸부터 기술한다. 8자 이내의 기호 명칭이며, 생략할 수 있다. 특수문자 "."을 포함할 수 있다.
USER
오퍼레이션 기술 위치로 명칭 뒤에 1개 이상의 공백을 두고 "USER" 라고 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다.
필수 오퍼랜드
필수 오퍼랜드 기술 위치로, "USER"에 이어서 1개 이상의 공백을 두고 기술한다. USER 문의 필수 오퍼랜드는 USER 이름으로 생략할 수 없으며 기호 명칭으로 한다.
[,오퍼랜드]
필수 오퍼랜드 이후에 1개 이상의 공백을 두고 오퍼랜드를 기술한다. 오퍼랜드에 대한 자세한 내용은 오퍼랜드나 각 절의 설명을 참고한다.
주석
오퍼랜드 이후에 1개 이상의 공백을 두고 기술한다.
주석은 71번째 칸까지 기술할 수 있다.
오퍼랜드
다음은 앞에서 언급한 오퍼랜드에 대한 설명이다. 각 오퍼랜드에 대한 자세한 내용은 해당 절의 내용을 참고한다.
32. 매크로 호출문
작업 제어 매크로를 호출한다.
-
사용법
\[명칭]△¹파일명△¹{*|오퍼랜드[,오퍼랜드]...}△¹[주석]
항목 설명 명칭
명칭 기술 위치로, "\"에 이어서 두 번째 칸부터 기술한다.
8자 이내의 기호명칭이며, 생략할 수 있다. 특수문자 "."을 포함할 수 있다.
파일명
명칭 이후에 1개 이상의 공백을 두고 파일명을 기술한다. 명칭을 생략한 경우 "\" 뒤에 1개 이상의 공백을 두고 기술한다. 파일명에 대한 자세한 내용은 표 이후에 설명한다.
*
아무 파라미터의 값도 지정하지 않는다. "*"을 기술하기 위해서는 매크로 정의(DEFINE 문)에서 모든 파라미터에 대해 디폴트 값이 지정되어 있어야 한다.
오퍼랜드[,오퍼랜드]
파일명 이후에 1개 이상의 공백을 두고 오퍼랜드를 기술한다. 오퍼랜드에 대한 자세한 내용은 파라미터를 참고한다.
주석
"*"이나 오퍼랜드 이후에 1개 이상의 공백을 두고 기술한다.
주석은 71번째 칸까지 기술할 수 있다.
파일명
다음은 앞에서 언급한 파일명에 대한 설명이다.
OpenFrame에서는 매크로를 호출할 때 tjes 설정의 [PROCLIB] 절의 MACLIB 항목에 기술된 경로에서 매크로 호출문에 기술된 파일명을 직접 찾는다. 작업 제어 매크로 파일 내의 DEFINE 문에 기술된 매크로 이름은 무시된다.
파라미터
파라미터 값을 인용 캐릭터 라인으로 지정한다. 다음 두 가지 형식 중 하나에 맞게 기술한다.
-
사용법
{값} {파라미터 이름=값}
첫 번째 형식(positional parameter)의 경우 다음 그림처럼 DEFINE문에 정의된 순서에 맞게 파라미터 값이 지정된다.
Positional parameter위 예제에서 매크로를 호출하는 경우 세 번째 파라미터의 값은 지정하지 않았으므로 C의 값은 디폴트 값인 3을 사용한다. 두 번째 형식(named parameter)의 경우 파라미터 값만 기술하는 게 아니라 DEFINE 문에 정의된 파라미터 이름을 함께 기술한다. 이때의 기술 순서는 DEFINE 문에 정의된 순서와 달라도 무방하다. 매크로 파라미터가 괄호로 묶이는 경우 괄호 안의 파라미터는 하나의 파라미터로 취급한다.
Instream 데이터
매크로 호출문 뒤에는 여러 개의 Instream 데이터가 올 수 있다.
Instream 데이터는 다음과 같은 경우에 마지막으로 판단한다.
-
단락문이 나타난 경우
-
입력 스트림의 마지막, UNIX 파일로 EOF가 나타난 경우
-
단락문 이외의 제어문이 나타난 경우
매크로 호출문 뒤에 기술된 Instream 데이터는 향후 호출된 매크로 내의 FD 문 중에서 FD명의 값으로 '+'를 지정한 FD 문에 할당되어 사용된다.
-
한 개의 Instream 데이터가 사용되는 경우 예제
다음은 AAA 매크로를 호출하는 예제이다.
\ AAA test instream data ... \/
다음은 AAA 매크로의 내용이다.
/ DEFINE \ FD COIN=+ / DEFEND
AAA 매크로는 아래와 같이 전개된다.
\ FD COIN=* test instream data ... \/
-
여러 개의 Instream 데이터가 사용되는 경우 예제
다음은 AAA 매크로를 호출하는 예제이다.
\ AAA test instream data ... \/ test second instream data ... \/
다음은 AAA 매크로의 내용이다.
/ DEFINE \ FD COIN=+ \ FD SYSIN=* test data \/ \ FD DATA=+ / DEFEND
AAA 매크로는 아래와 같이 전개된다.
\ FD COIN=* test instream data ... \/ \ FD SYSIN=* test data \/ \ FD DATA=* test second instream data ... \/
33. 명령문
JOB 또는 JOB 그룹의 운영 중에 필요한 동작을 처리하기 위한 명령을 기술할 수 있다. 현재 지원하고 있는 명령문들은 EX문 하위에 존재하는 명령문들만 실행 가능하다.
-
사용법
\=명령어△¹오퍼랜드[,오퍼랜드]...
항목 설명 명령어
"\=" 이후에 기술한다. 이후 명령어에 따른 오퍼랜드를 콤마로 구분해 기술한다.
33.1. CANCEL
지정된 jobcode를 가진 JOB이 Working 중이면 강제 종료시키고, 실행 대기 중이면 실행을 취소시킨다.
-
사용법
CANCEL {jobcode}
항목 설명 jobcode
취소 명령을 전달할 JOB의 jobcode를 3자리 이하 문자열로 지정한다.
-
예제
jobcode가 ABC인 JOB이 현재 실행 중일 때, 해당 JOB을 강제로 종료시킨다.
\=CANCEL ABC
33.2. FSOUT
외부 프린터에 출력을 요청할 파일을 Batch JOB을 통해 등록하고 출력 속성을 지정한다. 현재 OpenFrame에서는 직접적으로 FSOUT의 기능을 지원하거나 문법 검사를 실시하지 않으며, FSOUT문 뒤에 나오는 파라미터 문장 전체를 환경설정의 console 서브젝트 - COMMAND 섹션 - FSOUT 키 항목에 지정된 프로그램으로 전달하여 해당 프로그램에서 기능을 처리하도록 하고 있다. 해당 프로그램은 사용자의 필요에 맞게 작성하여 실행할 수 있다.
-
사용법
FSOUT {장치명|기종명},[파일명],[볼륨번호,...] ,[DLT][,JN=jobname] [,CL=출력클래스] [,CP=(n[,그룹값,...])] [,FC=용지코드] [,CS=캐릭터셋 코드] [,LC=종이 이송 제어 코드] [,PG=프로그램명] [,CH=(모듈식별명[,모듈식별명,...])] [,FL=(모듈식별명[,카운트])] [,OPT=[U][J]] [,BTS=YES|NO] [,MD=(모듈식별명[,trc])] [,FM=PORT|LAND|LIST,FS=A4|A5|B4|B5|LTR] [,OG=출력 JOB그룹명]
항목 설명 장치명 | 기종명
현재 OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
파일명
출력할 파일의 이름을 지정한다.
-
예제
TEST.FSOUT 파일의 내용을 출력하고 JOB 이름은 JOB01, 종이 이송 제어 코드는 STD1, 모듈식별명은 N43N, 출력클래스는 A로 지정한다.
\=FSOUT DA,TEST.FSOUT,JN=JOB01,LC=STD1,FL=N43N,CL=A
33.3. JALT
JOB 또는 JOB 그룹의 속성을 변경한다. 변경한 내용은 해당 문법이 기술된 스텝이 실행된 이후부터 지정한 JOB 또는 JOB 그룹에 적용된다. 현재는 JOB 그룹의 다중도를 변경하는 기능만 지원한다.
-
사용법
JALT JG=jobgname,JM=n
항목 설명 JG=jobgname
속성을 변경하고자 하는 JOB 그룹의 그룹명을 8자 이내의 문자로 지정한다.
JM=n
지정된 JOB 그룹의 실행 다중도를 1에서 999 사이의 10진수로 지정한다.
-
예제
JOB 그룹 JOGB01의 다중도를 3으로 변경한다.
\=JALT JG=JOBG01,JM=3
33.4. STACK
지정된 데이터셋을 submit한다.
-
사용법
STACK 장치명|기종명|DA,dsname[,volser][,MEM=member][RJ=([start_job][,end_job])][,RJS=stepname]
항목 설명 장치명 | 기종명 | DA
현재 OpenFrame에서는 문법 오류만 검사하고 사용하지 않는다.
dsname
submit할 데이터셋의 이름을 지정한다. 생략할 수 없다. 26자 이내의 문자로 지정한다.
volser
submit할 데이터셋이 위치한 볼륨 시리얼을 6문자 이내의 영숫자로 지정한다.
MEM=member
submit할 데이터셋의 멤버를 지정한다. 26자 이내의 문자로 지정한다.
RJ=start_job,end_job
데이터셋에 JOB이 여러 개 있을 경우 submit할 JOB의 범위를 지정한다.
-
start_job : 해당 JOB부터 submit하도록 jobname을 지정한다. 생략 시 첫 번째 JOB부터 submit 된다.
-
end_job : 해당 JOB까지 submit하도록 jobname을 지정한다. 생략 시 마지막 JOB까지 submit 된다.
RJS=stepname
submit할 데이터셋의 JOB에서 재시작할 스텝을 스텝 번호 또는 스텝명으로 지정한다.
-
-
예제
볼륨 DEFVOL에 위치한 PDS SYS1.JCLLIB의 멤버 TSTSTACK을 submit한다. 해당 JOB은 STEP03 스텝부터 재시작한다.
\=STACK DA,SYS1.JCLLIB,DEFVOL,MEM=TSTSTACK,RJS=STEP03
명령어를 기술하는 부분에 매크로 이름이 명시되어 있는 경우 PAUSE 문에 기술되어 있는 것과 동일한 방식으로 매크로 명령문을 찾아서 실행한다. 매크로 명령문의 이름은 명령어의 이름과 동일하게 사용할 수 없다. |
33.5. ESET
외부 파라미터의 값을 변경한다.
-
사용법
ESET 파라미터 이름1={값|\파라미터 이름2}
항목 설명 파라미터 이름1
변경할 외부 파라미터의 이름을 기술한다.
파라미터 이름은 '멤버 이름.파라미터 이름' 형식이다.
값
파라미터의 값을 여기 지정된 값으로 변경한다.
파라미터 이름2
외부 파라미터의 값을 여기 지정된 파라미터의 값으로 변경한다.
-
예제
외부 파라미터 "USER.DISP"의 값을 "REF,CAT"으로 변경한다.
\=:ESET USER.DISP=(REF,CAT)
33.6. 매크로 커맨드
지정한 매크로를 runtime에 submit한다. CHAM 문을 통해 submit하려는 매크로를 찾기 위한 매크로 라이브러리를 지정할 수 있다. 만약 CHAM 문을 지정하지 않았다면, tjesmgr의 macrrorun과 마찬가지로 전체 환경설정의 tjes 서브젝트 PROCLIB 섹션의 USERLIB 키, MACLIB 키, *JCLLIB*키에 지정한 라이브러리 순으로 참조한다.
-
사용법
\={매크로 이름} {매크로 파라미터} \=\{매크로 이름} {매크로 파라미터} \=\\{매크로 이름} {매크로 파라미터}
항목 설명 매크로 이름
submit할 매크로 이름을 지정한다.
매크로 파라미터
매크로에게 전달할 parameter를 지정한다. 키=값 형식 또는 값을 기술할 수 있다. 자세한 기술 방식은 파라미터 설명을 참조한다.
-
예제
SYS1.MACLIB에 존재하는 TESTMAC이라는 매크로를 A=C,B=D 파라미터와 함께 Runtime에 submit하는 예제이다.
\ EX \=TESTMAC A=C,B=D or \ EX \=\TESTMAC A=C,B=D or \ EX \=\\TESTMAC A=C,B=D
다음은 다른 매크로 라이브러리(TEST.MACLIB)에 존재하는 TESTMAC 매크로를 A=C,B=D 파라미터와 함께 Runtime에 submit하는 예제이다.
\ EX \ CHAM FILE=TEST.MACLIB \=\ TESTMAC A=C,B=D
34. 입력 데이터 구분문
입력 데이터의 끝을 나타낸다. FD 문에서 액세스 이름을 "*"로 지정한 경우 FD 문 이후부터 입력 데이터 구분문이나 입력 데이터 종료문 직전까지가 임시 데이터셋에 저장된다.
-
사용법
\/[주석]
항목 설명 주석
"\/" 이후에 기술한다. 주석은 71번째 칸까지 기술할 수 있다.
-
예제
\ FD UIN1=* 1 2 \/ \ FD UIN2=* 3 4 \/