Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...


Mainframe Open Education project is committed to sharing and engaging the community by joining events around mainframe. Familiarize yourself with the previous and upcoming events and engage with us.
Here you can find our valuable Reviewers who volunteered their time for the project.
To understand the role of the mainframe, we begin our journey by exploring enterprise computing, the counterpart to personal computing.
Exploring the Nexus of Traditional Power and Modern Agility


Learn how and why mainframe is used by businesses.
Learn what mainframes are and what place they take in your daily life.
Industry education Marc Smith narrates this presentation about understanding the mainframe, its importance to the industry, who is using it and how, and what career opportunities are available.
A breakdown of how mainframes work
Compare mainframe and server.
Understand how to secure data and facilitate compliance in the mainframe world.
How businesses benefit from the use of mainframes
Mainframe has evolved from S/360 till z16 and has been always relevant. Current days mainframe supports all the technologies and is the most sophisticated platform on the planet.
Discussion about what mainframe modernization mean and what YOU can contribute
Learn about the mainframe history.



The process of connecting to the mainframe
An introductory overview of more than 30 key terms used in mainframe management.
Review Technology Training that is important to the path - z/OS Fundamentals, TSO / ISPF, JCL, Asset Management, etc.
//STEP1 EXEC PGM=IGYCRCTL //* Compile the program
//STEP2 EXEC PGM=TESTPROG //* Run tests
//IF (STEP1.RC = 0 AND STEP2.RC = 0) THEN
//STEP3 EXEC PGM=COPYOUT //* Copy output
//ELSE
//STEP4 EXEC PGM=PRTERRPT //* Print error report if failed
//ENDIF //IEBGENER JOB (12345), CLASS=A, MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=IEBGENER
//SYSUT1 DD DSN=T12345.FILE1.PS, DISP=SHR
//SYSUT2 DD DSN=T12345.FILE2.PDS, DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SYSIN DD DD*
GENERATE MAXNAME=1
MEMBER NAME = MEMBER1
////IEBGENER JOB (12345),CLASS=A, MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=IEBGENER
//SYSUT1 DD DSN=T12345.FILE1.PDS(MEMBER1), DISP=SHR
//SYSUT2 DD DSN=T12345.FILE2.PS, DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SYSIN DD DUMMY//STEP1 EXEC PGM=IGYCRCTL //* Compile the program
//STEP2 EXEC PGM=TESTPROG //* Run tests
//STEP3 EXEC PGM=COPYOUT //* Copy output if tests pass
//STEP4 EXEC PGM=PRTERRPT, COND=(0,EQ) //* Print error report only if STEP3 failedPublished Articles on Mainframe Technologies
Learn how to build your mainframe skills and earn digital badges.
//IEBGENER JOB (12345), CLASS=A, MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=IEBGENER
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD PATH='/mth9/input1/transfer.mon',
// FILEDATA=TEXT,PATHOPTS=ORDONLY
//SYSUT2 DD DSN=T12345.FILE2.PS, DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSIN DD DUMMY//IEBCOPY JOB (12345),'SELECTIVE COPY',CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=IEBCOPY
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DSN=T12345.SOURCE.PDS,DISP=SHR
//SYSUT2 DD DSN=T12345.TARGET.PDS,DISP=SHR
//SYSIN DD *
COPY OUTDD=SYSUT2,
INDD=SYSUT1
SELECT MEMBER=PROG1,PROG2
/* //IEBCOPY JOB (12345),CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=IEBCOPY
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DSN=T12345.SOURCE.PDS,DISP=SHR
//SYSUT2 DD DSN=T12345.TARGET.PDS,DISP=SHR
//SYSIN DD *
COPY OUTDD=SYSUT2,
INDD=SYSUT1
EXCLUDE MEMBER=TEMP1,OLDPGM
/* //IEBCOPY JOB (12345),'RENAME COPY',CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=IEBCOPY
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DSN=T12345.SOURCE.PDS,DISP=SHR
//SYSUT2 DD DSN=T12345.TARGET.PDS,DISP=SHR
//SYSIN DD *
COPY OUTDD=SYSUT2,
INDD=SYSUT1
SELECT MEMBER=((OLDNAME,NEWNAME))
/* //IEBGENER JOB (12345),CLASS=A, MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=IEBGENER
//SYSUT1 DD DSN=T12345.FILE1.PS, DISP=SHR
//SYSUT2 DD DSN=T12345.FILE2.PDS(MEMBER1), DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SYSIN DD DUMMY//IEBCOMPR JOB (12345),CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=IEBCOMPR
//SYSUT1 DD DSN=T12345.FILE1.PS, DISP=SHR
//SYSUT2 DD DSN=T12345.FILE2.PS.DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SYSIN DD *
COMPARE TYPORG=PS
/*
////STEP1 EXEC PGM=IGYCRCTL //* Compile the program
//STEP2 EXEC PGM=TESTPROG //* Run tests
//STEP3 EXEC PGM=COPYOUT //* Copy output
//STEP4 EXEC PGM=PRTERRPT, COND=EVEN //* Always print error report (even on abend/failure)//STEP1 EXEC PGM=IGYCRCTL //* Compile the program
//STEP2 EXEC PGM=TESTPROG //* Run tests
//STEP3 EXEC PGM=COPYOUT //* Copy output
//STEP4 EXEC PGM=PRTERRPT, COND=ONLY //* Print error report only if previous step is failed or abended//STEP1 EXEC PGM=IGYCRCTL //* Compile the program
//STEP2 EXEC PGM=TESTPROG //* Run tests
//STEP3 EXEC PGM=COPYOUT //* Copy output
//STEP4 EXEC PGM=PRTERRPT, COND=(4095,LT) //* Error report always runs because RC never exceeds 4095//STEP1 EXEC PGM=IGYCRCTL //* Compile the program
//STEP2 EXEC PGM=TESTPROG //* Run tests
//STEP3 EXEC PGM=COPYOUT //* Copy output
//STEP4 EXEC PGM=PRTERRPT, COND=(4,EQ,STEP2) //* Print error report except for STEP2 RC=4//IEBCOPY JOB (12345),CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=IEBCOPY
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DSN=T12345.SOURCE.PDS,DISP=SHR
//SYSUT2 DD DSN=T12345.TARGET.PDS,DISP=SHR
//SYSIN DD *
COPY INDD=SYSUT1,
OUTDD=SYSUT2
/*
//IEBGENER JOB (12345),CLASS=A, MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=IEBGENER
//SYSUT1 DD DSN=T12345.FILE1.PS, DISP=SHR
//SYSUT2 DD DSN=T12345.FILE2.PS, DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SYSIN DD DUMMY//CREGDG JOB (12345),CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP01 EXEC PGM=IDCAMS
//SYSIN DD *
DEFINE GDG(NAME(gdg-base-name) -
LIMIT(nnn) -
EMPTY|NOEMPTY -
SCRATCH|NOSCRATCH)
/*//ACESGDG JOB (12345),CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=MYPROGRAM
//INPUT DD DSN=MYDATA.BACKUP.REPORT(0),
// DISP=SHR//ACESGDG JOB (12345),CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=MYPROGRAM
//INPUT DD DSN=MYDATA.BACKUP.REPORT(-1),
// DISP=SHR//CRTEGEN JOB (12345),CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=IEFBR14
//MYGDG DD DSN=MYDATA.BACKUP.REPORT(+1),
// DISP=(NEW,CATLG,DELETE),
// SPACE=(CYL,(1,1),RLSE),
// UNIT=SYSDA,
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=800,DSORG=PS)This is a technical, in-depth presentation on using dynamic allocations, dynamic allocation services, control blocks, and a detailed examination of a dynamic allocation example program.
//ALTERGDG JOB (12345),CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP01 EXEC PGM=IDCAMS
//SYSIN DD *
ALTER MYDATA.BACKUP.REPORT LIMIT(10)
/*
An overview of the MVS. The presentation includes topics on parallel sysplex, hardware, services, security and health checks.
In-depth module training based on role chosen, includes Hands-on Labs, etc.
Network with like-minded individuals through the available mainframe communities.

We are building out an AI mentor Gem with Gemini that can help guide you through your Mainframe journey! More details will be added to this page as it develops.



//DELETEGDG JOB (12345),CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP01 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
DELETE MYDATA.BACKUP.REPORT GDG FORCE or PURGE
/*
//MYJOB JOB (12345),CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP01 EXEC PGM=IDCAMS
//SYSIN DD *
DEFINE GDG(NAME(MYDATA.BACKUP.REPORT) -
LIMIT(5) -
NOEMPTY -
SCRATCH)
/*



Gain access to an IBM Z system through the services available here.



