AWS Mainframe Modernization Service(관리형 런타임 환경 환경 환경)는 더 이상 신규 고객에게 공개되지 않습니다. AWS Mainframe Modernization Service(관리형 런타임 환경 환경)와 유사한 기능은 AWS Mainframe Modernization Service(자체 관리형 환경)를 참조하세요. 기존 고객은 정상적으로 서비스를 계속 이용할 수 있습니다. 자세한 내용은 AWS Mainframe Modernization 가용성 변경을 참조하세요.
기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
데이터 세트 유틸리티
BLUESAMCOPY/BLUESAMCREATE/BLUESAMDELETE/BLUESAMCLEAR
이러한 유틸리티 프로그램은 Blusam 데이터 세트에 필수 데이터 세트 조작 기능을 제공합니다.
bypassBluesamStatus 플래그(JobContext에 저장됨)는 온라인 프로세스와 배치 프로세스 간의 동시 액세스 충돌을 방지하는 일반 데이터 세트 상태 검증을 우회할지 여부를 결정합니다.
bypassBluesamStatus가 true인 경우:
작업 중 정상적인 데이터 세트 상태 확인 건너뛰기
일반적으로 차단될 수 있는 데이터 세트에 대한 액세스를 허용합니다.
블루삼코피
BlueSAMCOPY 프로그램은 한 Bluesam 데이터 세트에서 다른 Bluesam 데이터 세트로 데이터 및 메타데이터 구조를 복사합니다.
파라미터
blueSAMCOPY 프로그램은 두 가지 파라미터를 사용합니다.
FROM=<source dataset name>- 복사할 소스 데이터 세트TO=<target dataset name>- 복사할 대상 데이터 세트
동작
대상 데이터 세트가 없는 경우는 소스의 메타데이터 구조로 데이터 세트를 생성합니다.
대상이 있는 경우 복사하기 전에 지웁니다(기존 데이터 덮어쓰기).
온라인 프로세스에서 데이터 세트를 사용하지 않거나이 true로
bypassBluesamStatus설정된 경우 작업이 진행됩니다.키, 압축, 레코드 길이 및 기타 메타데이터 속성을 보존합니다.
오류 처리
소스 데이터 세트가 없거나 온라인 프로세스에서 데이터 세트를 사용 중인 경우 코드 1을 반환합니다.
샘플 사용량
import ... mpr = applicationContext.getBean("com.netfective.bluage.gapwalk.rt.call.ExecutionController",MainProgramRunner.class) // copy bluesam dataset res = mpr.withArguments("FROM=MYBLUESAMTABLE","TO=MYBLUESAMTABLE2").runProgram("BLUESAMCOPY")
블루SAMCREATE
블루SAMCREATE 프로그램은 지정된 파라미터를 사용하여 Bluesam 데이터 세트를 생성합니다.
파라미터
블루SAMCREATE 프로그램은 7개의 파라미터를 사용합니다.
name=<dataset name>- 생성할 데이터 세트(필수)compress=<true/false>- 압축 활성화(선택 사항, 기본값: false)fixedLength=<true/false>- 고정 길이 레코드 상태(선택 사항, 기본값: false)recordLength=<integer>- 바이트 단위의 레코드 길이(선택 사항, 기본값: -1)primaryKey=<key id>,duplicates=<true/false>,fields=<offset,length,...>- 기본 키 사양(선택 사항)key=<altkey id>,duplicates=<true/false>,fields=<offset,length,...>- 대체 키(여러 또는 0이 있을 수 있음)clearExisting=true/false- 기존 데이터 세트 지우기(선택 사항 기본값: true)
특정 키 파라미터 설명:
duplicates: 지정된 키에 중복 값이 허용되는지 여부fields: 키를 정의하는 필드 위치(1 기반) 및 길이
동작
데이터 세트가 없는 경우는 지정된 파라미터로 데이터 세트를 생성합니다.
데이터 세트가 있는 경우는 다음과 같은 경우 데이터 세트를 지웁니다.
clearExisting=true온라인 프로세스에서 데이터 세트를 사용하지 않거나이 로
bypassBluesamStatus설정된 경우 작업이 진행됩니다.true
오류 조건
모든 경우에 코드 0을 반환합니다.
샘플 사용량
import ... mpr = applicationContext.getBean("com.netfective.bluage.gapwalk.rt.call.ExecutionController",MainProgramRunner.class) // create bluesam dataset mpr.withArguments( "name=MYBLUESAMTABLE", "compress=FALSE", "fixedLength=true", "recordLength=54", "primaryKey=MYKEY_PK,duplicates=FALSE,fields=0,6") .runProgram("BLUESAMCREATE")
블루SAMDELETE
blueSAMDELETE 프로그램은 Bluesam 데이터 세트를 삭제합니다.
파라미터
블루SAMDELETE 프로그램은 1개 이상의 파라미터를 사용합니다.
<dataset name>- 삭제할 데이터 세트(여러 개가 있을 수 있음)
동작
온라인 프로세스에서 데이터 세트를 사용하지 않거나이 로
bypassBluesamStatus설정된 경우 작업이 진행됩니다.true데이터 세트가 있는 경우 삭제합니다.
오류 조건
모든 경우에 코드 0을 반환합니다.
샘플 사용량
import ... mpr = applicationContext.getBean("com.netfective.bluage.gapwalk.rt.call.ExecutionController",MainProgramRunner.class) // delete bluesam datasets res = mpr.withArguments("MYBLUESAMTABLE","MYBLUESAMTABLE2","MYBLUESAMTABLE3").runProgram("BLUESAMDELETE")
블루삼클리어
BLUESAMCLEAR 프로그램은 구조와 메타데이터를 유지하면서 기존 데이터 세트에서 모든 데이터를 제거합니다.
파라미터
blueSAMCLEAR 프로그램은 1개 이상의 파라미터를 사용합니다.
<dataset name>- 지울 데이터 세트(여러 개가 있을 수 있음)
동작
온라인 프로세스에서 데이터 세트를 사용하지 않거나이 로
bypassBluesamStatus설정된 경우 작업이 진행됩니다.true데이터 세트가 있는 경우 지웁니다.
오류 조건
모든 경우에 코드 0을 반환합니다.
샘플 사용량
import ... mpr = applicationContext.getBean("com.netfective.bluage.gapwalk.rt.call.ExecutionController",MainProgramRunner.class) // clear bluesam datasets res = mpr.withArguments("MYBLUESAMTABLE","MYBLUESAMTABLE2").runProgram("BLUESAMCLEAR")
BPXWDYN
이 유틸리티 프로그램은 동적 데이터 세트 할당 및 할당 해제를 위해 z/OS BPXWDYN 서비스를 시뮬레이션합니다. 최신 애플리케이션에서 파일 할당은 FileConfigurationUtils빌더 API를 통해 Groovy 스크립트에서 수행됩니다. 이 프로그램을 사용하면 현대화된 애플리케이션에서 대화형 또는 조건부 파일 처리에 필수적인 Groovy 없이 이러한 할당을 동적으로 관리할 수 있습니다.
파라미터
레거시 인수 형식은 보존됩니다. 2바이트 크기 헤더와 명령 문자열이 포함된 단일 인수가 필요합니다.
할당을 위한 명령 문자열 형식: ALLOC DD(<name>) DSN('<dsn>') SHR?
할당 해제를 위한 명령 문자열 형식: FREE DD(<name>)
오류 처리
오류 코드 0을 성공으로 설정하고 1을 실패로 설정합니다.
잘못된 명령 또는 파라미터에 대한 RuntimeException 발생
샘플 사용량
다음은 AWS 변환을 통한 COBOL 현대화로 인한 BPXWDYN 프로그램의 Java 샘플 사용량입니다.
COBOL 코드:
01 WK-AREA. 03 DS-ALLOC-STRING. 05 DS-LENGTH PIC S9(004) COMP VALUE 100. 05 DS-TEXT PIC X(100) VALUE "ALLOC DD(INFILE) DSN('A.B.JCLLIB(XYZ470)') SHR". ... 01 RC-RETURN-CODE-AREA. 03 RC-RETURN-CODE PIC S9(008) COMP. ... CALL 'BPXWDYN' USING DS-ALLOC-STRING RETURNING RC-RETURN-CODE.
및 일치하는 Java 현대화:
private final Group dsAllocString = new Group(root).named("DS-ALLOC-STRING"); private final Elementary dsLength = new Elementary(dsAllocString,new BinaryType(4, 0, "STD", false, false, true),Short.valueOf("100")).named("DS-LENGTH"); private final Elementary dsText = new Elementary(dsAllocString,new AlphanumericType(100),"ALLOC DD(INFILE) DSN('A.B.JCLLIB(XYZ470)') SHR").named("DS-TEXT"); ... private final Group root = new Group(getData()).named("RC-RETURN-CODE-AREA"); private final Elementary rcReturnCode = new Elementary(root,new BinaryType(8, 0, "STD", false, false, true)).named("RC-RETURN-CODE"); ... // Call to utility program BPXWDYN ctrl.callSubProgram( "BPXWDYN", CallBuilder.newInstance().byReference(ctx.getWkArea().getDsAllocStringReference()).getArguments(), ctx); ctx.getRcReturnCodeArea().setRcReturnCode(NumberUtils.convert(ctx.getProgramReturned()).intValue());
GDGUTILS
GDGs(생성 데이터 그룹)를 사용하면 애플리케이션이 이전 세대에 대한 액세스를 유지하면서 각 실행이 새 세대를 생성하는 버전이 지정된 데이터 세트로 작업할 수 있습니다. 이 유틸리티는 이러한 데이터 세트 생성을 생성하고 관리합니다. 이 유틸리티는 groovy 스크립트에서 호출됩니다.
파라미터
파라미터 순서는 중요하지 않습니다.
action=<create|refreshevents>- 수행할 작업(필수)gdgname=<name>- GDG 기반 이름(필수)storageProvider=<filesystem|bluesam>- 스토리지 백엔드relativeGeneration=<+integer>- 상대 생성 번호(예: 다음에 대해 +1)absoluteGeneration=integer- 절대 생성 번호recordLength=<integer>- 데이터 세트의 레코드 크기fixedLength=<true/false>- 레코드의 데이터 세트 길이가 고정되도록 지정합니다.ownerPath=<File system path>- 데이터 세트를 저장하는 경로(파일 시스템별,이 경우 필수)compress=<true/false>- 데이터가 데이터 스토어에서 압축된 경우 메모리에서 데이터를 압축해야 함을 나타냅니다(블루삼만 해당)(선택 사항, false는 기본값).catalog- 카탈로그화할 데이터 세트를 지정합니다(선택 사항).warmUp- 데이터 세트를 열 때 메모리에 로드해야 함을 나타냅니다(블루삼만 해당). (선택 사항)
relativeGeneration 또는 absoluteGeneration: 이러한 속성 중 하나를 설정해야 합니다.
운영
create: GDG 메타데이터에 따라 새 GDG 데이터 세트 생성을 생성합니다(파일 시스템과 Bluesam 스토리지 모두 처리).
refreshevents: 새 데이터 세트를 생성하지 않고 생성 수(Gdg 메타데이터)를 조정합니다(데이터 세트를 이미 생성한 실패한 작업을 다시 시작할 때 사용됨).
오류 처리
오류 코드 0을 성공으로 설정하고 1을 실패로 설정합니다.
잘못된 명령 또는 파라미터에 대한 RuntimeException 발생
샘플 사용량
Gdg 생성 작업: 다음 코드는 IC.PLI.GDGTEST 데이터 세트에 대한 블루삼 생성(43)을 생성합니다.
import ... mpr = applicationContext.getBean("com.netfective.bluage.gapwalk.rt.call.ExecutionController",MainProgramRunner.class) Map params = new Hashtable() params.put("jobContext", jobContext) Object[] args =["action=create","gdgname=IC.PLI.GDGTEST","absoluteGeneration=43","storageProvider=bluesam","recordLength=80"] mpr.withParameters(params).withArguments(args).runProgram("GDGUTILS")
Gdg refreshevents 작업: relativeGeneration만이 작업과 관련이 있습니다. 다음 코드는 IC.PLI.GDGTEST 데이터 세트의 생성 번호(현재 세대와 비교하여 +1)를 업데이트합니다.
import ... mpr = applicationContext.getBean("com.netfective.bluage.gapwalk.rt.call.ExecutionController",MainProgramRunner.class) Map params = new Hashtable() params.put("jobContext", jobContext) Object[] args =["action=refreshevents","gdgname=IC.PLI.GDGTEST","relativeGeneration=1","storageProvider=bluesam"] mpr.withParameters(params).withArguments(args).runProgram("GDGUTILS")
ICEGENER/SYNCGENR
이 유틸리티 프로그램은 z/OS 시스템 유틸리티 ICEGENER의 동작을 모방하고 입력(SYSUT1 데이터 세트)에서 출력(SYSUT2 데이터 세트)으로 데이터 세트를 복사합니다. 이 Java 구현은 파일 시스템과 Bluesam 스토리지를 모두 지원하는 동등한 기능을 제공합니다.
파라미터
인수 없음
필수 데이터 세트
SYSUT1: 입력 데이터 세트/파일
SYSUT2: 출력 데이터 세트/파일
SYSUT2 데이터 세트의 처리 처리
신규: 새 데이터 세트/파일 생성
OLD/SHR: 기존 데이터 세트/파일 사용(반드시 존재해야 함)
MOD: 수정, 누락된 경우 생성, 있는 경우 추가
오류 처리
복사에 성공하면 오류 코드 0을 설정하고, 실패하면 1을 설정합니다.
Bluseam 데이터 세트의
IllegalStateException잘못된 사용 발생
샘플 사용량
다음은 AWS 변환을 통한 JCL 현대화로 인한 ICEGENER 프로그램의 Groovy 샘플 사용입니다.
JCL 코드:
//STEP01 EXEC PGM=ICEGENER //SYSUT1 DD DSN=POI.INPUT,DISP=SHR //SYSUT2 DD DSN=POI.OUTPU, // DISP=(,CATLG,DELETE), // UNIT=3490, // DCB=(RECFM=FB,LRECL=100) /*
및 일치하는 Groovy 현대화:
mpr .withFileConfigurations(new FileConfigurationUtils() .withJobContext(jobContext) .bluesam("SYSUT1") .dataset("POI.INPUT") .disposition("SHR") .build() .bluesam("SYSUT2") .dataset("POI.OUTPU") .normalTermination("CATLG") .abnormalTermination("DELETE") .build() .getFileConfigurations()) .withParameters(params) .runProgram("ICEGENER")
IDCAMS/KQCAMS
이 유틸리티 프로그램은 VSAM(가상 스토리지 액세스 방법) 파일 작업에 사용되는 메인프레임 데이터 관리 도구인 레거시 프로그램 IDCAMS의 동작을 모방합니다. 레거시 IDCAMS 명령을 처리하여 원래 SYSIN 입력과 동일한 구문을 유지합니다.
컨텍스트
프로그램 동작은에 정의된 두 파라미터로 구성할 수 있습니다application-utility-pgm.yml.
jclType: JCL 유형 식별자(vse 또는 mvs). 비 vse jcl용 파일이 비어 있는 경우 IDCAMS 유틸리티 PRINT/REPRO 명령은 4를 반환합니다.
forcedCharsetIdcams: IDCAMS 처리를 위한 선택적 문자 집합 재정의
파라미터
인수가 없습니다. 작업은 SYSIN 데이터 세트를 통해 전달됩니다.
필수 데이터 세트
SYSIN - IDCAMS 명령문 포함
입력/출력 데이터 세트 - IDCAMS 명령에서 참조(IDCAMS 문에 따라 다름)
주요 기능/지원되는 명령
SYSIN 제어 카드에 있는 IDCAMS 명령에 대한 세부 정보는 여기에 제공되지 않지만 기존 관련 레거시 플랫폼 설명서에서 가져와야 합니다.
정의 - VSAM 클러스터 및 데이터 세트를 생성합니다.
DELETE - 데이터 세트 제거(와일드카드 지원)
REPRO - 데이터 세트 간에 데이터 복사
PRINT - 데이터 세트 콘텐츠를 표시합니다.
확인 - 데이터 세트의 존재 및 무결성을 검증합니다.
ALTER - 데이터 세트 속성을 수정합니다(이름 변경).
ALLOC - 데이터 세트를 동적으로 할당합니다.
SET - 조건 코드(LASTCC/MAXCC)를 관리합니다.
IF-THEN-ELSE - 조건부 명령 실행
취소 - 작업 실행을 종료합니다.
오류 처리
마지막 명령이 성공하면 오류 코드 0을 설정하고, 실패하면 -1을 설정합니다.
SET(LASTCC) 명령을 사용하여 오류 코드를 재정의할 수 있습니다. 예:
SET LASTCC = 0
샘플 사용량
다음은 AWS 변환을 통한 JCL 현대화로 인한 IDCAMS 프로그램의 Groovy 샘플 사용입니다.
JCL 코드:
//STEP15 EXEC PGM=IDCAMS //SYSPRINT DD SYSOUT=* //ACCTDATA DD DISP=SHR, // DSN=AWS.M2.CARDDEMO.ACCTDATA.PS //ACCTVSAM DD DISP=SHR, // DSN=AWS.M2.CARDDEMO.ACCTDATA.VSAM.KSDS //SYSIN DD * REPRO INFILE(ACCTDATA) OUTFILE(ACCTVSAM) /*
및 일치하는 Groovy 현대화:
mpr.withFileConfigurations(new FileConfigurationUtils() .withJobContext(jobContext) .systemOut("SYSPRINT") .output("*") .build() .bluesam("ACCTDATA") .dataset("AWS.M2.CARDDEMO.ACCTDATA.PS") .disposition("SHR") .build() .bluesam("ACCTVSAM") .dataset("AWS.M2.CARDDEMO.ACCTDATA.VSAM.KSDS") .disposition("SHR") .build() .fileSystem("SYSIN") .stream("REPRO INFILE(ACCTDATA) OUTFILE(ACCTVSAM)", getEncoding()) .build() .getFileConfigurations()) .withParameters(params) .runProgram("IDCAMS")
IEBGENER/JSDGENER
이 프로그램은 IEBGENER 유틸리티를 복제합니다. 순차 데이터 세트를 복사하고 조작하는 데 사용됩니다. 이 구현은 고급 데이터 처리 작업에 대한 IEBGENER 제어 문을 지원하여 기본 복사 기능을 확장합니다.
파라미터
인수가 없습니다. 작업은 SYSIN 데이터 세트를 통해 전달됩니다.
필수 데이터 세트
SYSIN: 제어 문 포함(선택 사항, 정의되지 않은 경우 IEBGENER 프로그램은 ICEGENER와 동일)
SYSUT1: 입력 데이터 세트/파일
SYSUT2: 출력 데이터 세트/파일
주요 기능/지원되는 IEBGENER 컨트롤 스테이트먼트
SYSIN 컨트롤 카드에 있는 IEBGENER 컨트롤 문에 대한 세부 정보는 여기에 제공되지 않지만 기존 관련 레거시 플랫폼 설명서에서 가져와야 합니다.
GENERATE - 처리할 최대 레코드 유형 수(MAXNAME) 및 필드 수(MAXFLDS)를 지정하여 데이터 조작 프로세스의 전체 구조를 정의합니다.
레코드 - 입력 데이터 세트에서 복사하거나 특정 값으로 생성할 개별 필드의 위치, 길이 및 형식을 지정하여 각 레코드 유형의 실제 레이아웃 및 콘텐츠를 정의합니다.
LABEL/MEMBER/EXIT은 지원되지 않습니다.
예:
GENERATE MAXNAME=3,MAXFLDS=5 RECORD TYPE=1, FIELD=(1,1,CH,VALUE='H'), FIELD=(2,30,CH,VALUE='EMPLOYEE REPORT 2024 ') RECORD TYPE=2, FIELD=(1,1,CH,VALUE='D'), FIELD=(2,10,CH), /* Name */ FIELD=(12,8,CH), /* Birth date */ FIELD=(20,8,CH,VALUE='ACTIVE') RECORD TYPE=3, FIELD=(1,1,CH,VALUE='F'), FIELD=(2,30,CH,VALUE='END OF REPORT ')
오류 처리
복사에 성공하면 오류 코드를 0으로 설정하고, 실패하면 1로 설정합니다.
샘플 사용량
다음은 AWS 변환을 통한 JCL 현대화로 인한 IEBGENER 프로그램의 Groovy 샘플 사용입니다.
JCL 코드:
//GENDATA EXEC PGM=IEBGENER //SYSUT1 DD DSN=INPUT.EMPLOYEE.DATA, // DISP=SHR //SYSUT2 DD DSN=OUTPUT.EMPLOYEE.FILE, // DISP=(NEW,CATLG,DELETE), // SPACE=(TRK,(1,1)), // DCB=(RECFM=FB,LRECL=80,BLKSIZE=27920) //SYSIN DD * GENERATE MAXNAME=2,MAXFLDS=5 RECORD TYPE=1, FIELD=(1,1,CH,VALUE='H'), FIELD=(2,30,CH,VALUE='EMPLOYEE SALARY REPORT 2024 ') RECORD TYPE=2, FIELD=(1,1,CH,VALUE='D'), FIELD=(2,10,CH), /* Name from input */ FIELD=(12,8,CH), /* Birth date from input */ FIELD=(20,8,CH), /* Dept from input */ FIELD=(28,8,CH) /* Salary from input */ /*
및 일치하는 Groovy 현대화:
mpr .withFileConfigurations(new FileConfigurationUtils() .withJobContext(jobContext) .systemOut("SYSPRINT") .output("*") .build() .bluesam("SYSUT1") .dataset("INPUT.EMPLOYEE.DATA") .disposition("SHR") .build() .bluesam("SYSUT2") .dataset("OUTPUT.EMPLOYEE.FILE") .disposition("NEW") .normalTermination("CATLG") .abnormalTermination("DELETE") .build() .fileSystem("SYSIN") .stream( """GENERATE MAXNAME=2,MAXFLDS=5 RECORD TYPE=1, FIELD=(1,1,CH,VALUE='H'), FIELD=(2,30,CH,VALUE='EMPLOYEE SALARY REPORT 2024 ') RECORD TYPE=2, FIELD=(1,1,CH,VALUE='D'), FIELD=(2,10,CH), /* Name from input */ FIELD=(12,8,CH), /* Birth date from input */ FIELD=(20,8,CH), /* Dept from input */ FIELD=(28,8,CH) /* Salary from input */""", getEncoding()) .build() .getFileConfigurations()) .withParameters(params) .runProgram("IEBGENER")
IEFBR14
IEFBR14는 단순히 반환 코드 0(0)으로 반환되는 "아무것도 하지 않음" 프로그램입니다. 기본 용도는 실제 데이터 처리를 수행하지 않고 DD 문을 통한 데이터 세트 할당, 삭제 또는 카탈로그 유지 관리를 위한 것입니다.
파라미터
인수 없음
오류 처리
항상 오류 코드 0을 설정합니다.
샘플 사용량
다음은 AWS 변환을 통한 JCL 현대화로 인한 IEFBR14 프로그램의 Groovy 샘플 사용입니다.
새 순차 데이터 세트를 생성하는 JCL 코드:
//STEP1 EXEC PGM=IEFBR14 //NEWSEQ DD DSN=USER.NEW.SEQ.DATA, // DISP=(NEW,CATLG,DELETE), // SPACE=(TRK,(10,5)), // DCB=(RECFM=FB,LRECL=80,BLKSIZE=27920)
및 일치하는 Groovy 현대화:
mpr .withFileConfigurations(new FileConfigurationUtils() .withJobContext(jobContext) .bluesam("NEWSEQ") .dataset("USER.NEW.SEQ.DATA") .disposition("NEW") .normalTermination("CATLG") .abnormalTermination("DELETE") .build() .getFileConfigurations()) .withParameters(params) .runProgram("IEFBR14")
기존 데이터 세트를 삭제하는 JCL 코드:
//STEP3 EXEC PGM=IEFBR14 //DELDD DD DSN=USER.OLD.DATASET, // DISP=(OLD,DELETE,DELETE)
및 일치하는 Groovy 현대화:
mpr .withFileConfigurations(new FileConfigurationUtils() .withJobContext(jobContext) .bluesam("DELDD") .dataset("USER.OLD.DATASET") .disposition("OLD") .normalTermination("DELETE") .abnormalTermination("DELETE") .build() .getFileConfigurations()) .withParameters(params) .runProgram("IEFBR14")
JCLBCICS
이 프로그램은 데이터 세트 상태를 관리하고, 구성을 기반으로 데이터 세트를 활성화/비활성화하여 개별 파일과 와일드카드 패턴을 모두 지원합니다. JICS table file_table에서 STATUS 필드를 변경합니다.
파라미터
인수가 없습니다. 작업은 DatasetsConfiguration 객체를 통해 전달됩니다. 예:
mpr.withDatasetsConfiguration(new DatasetsConfiguration().close(<Dataset Name>)
컨텍스트
프로그램 동작은 다음 두 가지 파라미터로 구성할 수 있습니다.
application-utility-pgm.yml에서:
jclbcics.ddname.size(기본값은 8): 데이터 세트 이름 크기를 전역적으로 구성합니다.이 값이 설정되고 데이터 세트 이름 길이가이 값보다 작으면 데이터 세트 이름이 잘립니다.
프로그램을 호출하는 Groovy 파일의 개별 단계에서
JCLBCICS_OVERRIDDEN_SIZE: 글로벌 데이터 세트 이름 크기를 재정의합니다.
TreeMap stepMapTransfo = [:] Map stepParams = ["MapTransfo":stepMapTransfo] stepParams["MapTransfo"]["JCLBCICS_OVERRIDDEN_SIZE"] = '6'
조정된 dd 이름 크기(자르기 후)가 8 미만인 경우 dd 이름은 와일드카드로 간주되며 함수는이 dd 이름으로 시작하는 모든 데이터 세트에 대해 작동합니다.
주요 기능
지원되는 작업은 다음과 같습니다.
OPEN: 데이터 세트를 ENABLED 상태로 설정합니다.
CLOSE: 데이터 세트를 비활성화됨 상태로 설정합니다.
이러한 작업은 DatasetsConfiguration빌더 클래스를 통해 선언됩니다.
new DatasetsConfiguration().close(<DD name>).open(<DD name>)
DD 이름: 데이터 세트 이름, dd 이름 크기가 최대 dd 이름 크기(8)보다 작은 경우 와일드카드 *가 허용됩니다.
오류 처리
오류 코드 0 설정
샘플 사용량
다음은 JCLBCICS 프로그램의 Groovy 샘플 사용입니다.
데이터 세트를 비활성화하고UFOLJ3P, AX로 시작하는 모든 데이터 세트를 활성화하고, DX로 시작하는 모든 데이터 세트를 활성화합니다.
import com.netfective.bluage.gapwalk.rt.call.MainProgramRunner import com.netfective.bluage.gapwalk.rt.call.ProgramExecutionResult import com.netfective.bluage.gapwalk.rt.io.support.DatasetsConfiguration MainProgramRunner mpr = applicationContext.getBean("com.netfective.bluage.gapwalk.rt.call.ExecutionController",MainProgramRunner.class) def TreeMap stepMapTransfo = [:] def Map stepParams = ['MapTransfo':stepMapTransfo] stepParams['MapTransfo']['JCLBCICS_OVERRIDDEN_SIZE'] = '7' ProgramExecutionResult res = mpr .withDatasetsConfiguration(new DatasetsConfiguration().close("UFOLJ3P").open("AX*").open("DX")) .withParameters(stepParams) .runProgram("JCLBCICS")