08 - DD Statement Part-II

  • Upload
    asim

  • View
    229

  • Download
    1

Embed Size (px)

Citation preview

  • 8/8/2019 08 - DD Statement Part-II

    1/12

     Bulletin Board

    What’s new at MAINFRAMES 360(Updates)...

    - Working on Cosmetic enhancements to navigation menu on the Sidebar, so that it willdynamically expand..- Resolved some Display issues and filling in the gaps(missing tutorials like VSAM)- Posting several Video tutorials

    Mainframes360 Search

     

    powered by

     

    Quick Links

    JCL Tutorial – 08 : DD Statement – Part III ~ MAINFRAMES TUTORIAL, JCL TUTORIAL, VSAM TUTORIAL, COBOL TUTORIAL, DB2 TUTORIAL, CICS

    http://www.mainframes360.com/2009/07/jcl-tutorial-08-dd-statement-part-iii.html (1 of 12)12/23/2009 4:04:24 AM

    Search

    http://www.blogger.com/rearrange?blogID=5079547514004526903&widgetType=AdSense&widgetId=AdSense4&action=editWidgethttp://www.blogger.com/rearrange?blogID=5079547514004526903&widgetType=HTML&widgetId=HTML2&action=editWidgethttp://www.blogger.com/rearrange?blogID=5079547514004526903&widgetType=AdSense&widgetId=AdSense2&action=editWidgethttp://www.blogger.com/rearrange?blogID=5079547514004526903&widgetType=HTML&widgetId=HTML8&action=editWidgethttp://www.mainframes360.com/

  • 8/8/2019 08 - DD Statement Part-II

    2/12

    JCL Tutorial – 08 : DD Statement – Part III ~ MAINFRAMES TUTORIAL, JCL TUTORIAL, VSAM TUTORIAL, COBOL TUTORIAL, DB2 TUTORIAL, CICS

     Jump to :

    Friday, July 3, 2009

    JCL Tutorial – 08 : DD Statement – Part III 

    Q. I know that the DD Statement tells, what’s the Input file or Output File. However, on computer

    storage how does the MVS know where to find your file? How do you specify the location of yourdataset? Its like searching for a needle in a haystack!

    Yeah good question! The Mainframe Computer stores thousands of files(Datasets) in different areas of

    Memory(Storage). Each data-set is stored at a different location. Who keeps track of, where a data-

    set is stored? The System Catalog.

    The System Catalog is special data-set(file) that acts as the address book of the MVS Operating

    System. The System Catalog contains an entry for all the datasets on a Mainframe Computer. It stores

    the name of the dataset, followed by the actual physical location of the dataset. Should you need the

    phone no. of your friend, you quickly search through the contact list/address-book that you maintain.

    Similarly, you wanna find a data-set, better search in the System Catalog.

    Well, those datasets whose location has been recorded in the System Catalog, are called CatalogedDatasets. Datasets whose location is not tracked by the System Catalog, are called Uncataloged

    Datasets.

    Cataloged Datasets :- When a DD Statement mentions an input or output file, that has been cataloged,

    MVS can easily find its place of residence(address) from the System Catalog.

    Uncataloged Datasets :- When a DD Statement refers to and Input or Output Dataset, whose location has

    not been registered in the System Catalog, you must tell the location of the dataset manually.

    Now-a-days, whenever you create datasets in TSO, all the datasets are automatically cataloged. This

    implies that you can find the dataset, merely by its name. However, formerly, if you had to specify

    the location of the dataset manually, you had to use the UNIT and VOL(Volume) parameters  of the DD

    Statement.

    Q. What is the UNIT Parameter?

    A. Sometimes, the Input Dataset from which we want to read Data Records may be located on a TAPE

    Drive. Also, when IBM Mainframe Servers are installed(a process called as SYSGEN), different I/O

    Devices are assigned an Address. This device address uniquely identifies the device.

    Apart from this, similar devices are grouped together and sometimes assigned a symbolic name.

    UNIT parameter can be used to identify a device, by the device address, symbolic name or mentioning

    TAPE(for tape drive).

    //TRGD56 JOB A123,QUASAR,CLASS=A,PRTY=14,//   MSGCLASS=X,MSGLEVEL=(1,1),NOTIFY=&SYSUID

    //STEP01 EXEC PGM=PROGRAM1

    http://www.mainframes360.com/2009/07/jcl-tutorial-08-dd-statement-part-iii.html (2 of 12)12/23/2009 4:04:24 AM

    http://www.blogger.com/rearrange?blogID=5079547514004526903&widgetType=HTML&widgetId=HTML7&action=editWidget

  • 8/8/2019 08 - DD Statement Part-II

    3/12

    JCL Tutorial – 08 : DD Statement – Part III ~ MAINFRAMES TUTORIAL, JCL TUTORIAL, VSAM TUTORIAL, COBOL TUTORIAL, DB2 TUTORIAL, CICS

    //INDD DD DSN=TRGD56.DEMO.INPUT,

    //   DISP=SHR,

    //   UNIT=SYSDA

    This implies, that the input dataset TRGD56.DEMO.INPUT is located on the device group whose symbolic

    name is SYSDA .

    The UNIT parameter has AFF(Affinity) sub-parameter. To use the same unit, that has been used by a

     prior DD Statement, AFF sub-parameter is used.

    //TRGD56 JOB A123,QUASAR  

    //STEP01 EXEC PGM=PROGRAM1

    //INDD DD DSN=TRGD56.DEMO.INPUT,DISP=SHR,UNIT=SYSDA

    //OUTDD DD DSN=TRGD56.DEMO.OUTPUT,DISP=(NEW,CATLG),

    //   UNIT=AFF=INDD

    Q. What is the VOL(VOLUME) Parameter used for?

    The VOL parameter is used to specify disk volume on which the Input and Output datasets reside. The

     VOL parameter has several sub-parameters.

    SER Specifies the serial number of the device. Every device has a serial

    number by which it can be identified.

    REF Used to refer back to a VOL in a previous  j ob -st ep .

    PRIVATE Allows access to this disk volume by only 1 user.

    RETAIN Prevents the volume from being dismounted, till the Batch JOB ends. 

    SEQ The SEQ  sub-parameter allows you to tell the MVS O/S, in whatorder, or in what sequence the volumes should be mounted. This isapplicable only if the dataset is very large and occupies multiple

    volumes.

    Let’s see some examples.

    //TRGD56 JOB A123,QUASAR  

    //STEP01 EXEC PGM=PROGRAM1

    //INDD DD DSN=TRGD56.DEMO.INPUT,DISP=SHR,

    //   VOL=VOL1

    In the above example, the dataset resides on the volume VOL1. Now, lets see another example wherein,

    the dataset resides on 3 volumes.

    //TRGD56 JOB A123,QUASAR  

    //STEP01 EXEC PGM=PROGRAM1

    http://www.mainframes360.com/2009/07/jcl-tutorial-08-dd-statement-part-iii.html (3 of 12)12/23/2009 4:04:24 AM

  • 8/8/2019 08 - DD Statement Part-II

    4/12

    JCL Tutorial – 08 : DD Statement – Part III ~ MAINFRAMES TUTORIAL, JCL TUTORIAL, VSAM TUTORIAL, COBOL TUTORIAL, DB2 TUTORIAL, CICS

    //INDD DD DSN=TRGD56.DEMO.INPUT,DISP=SHR,

    //   VOL=(VOL1,VOL2,VOL3)

    In the above example, the dataset TRGD56.DEMO.INPUT resides on all the 3 volumes VOL1, VOL2 and VOL3. 

    This requests the MVS O/S to mount all the three volumes at the same time.

    //TRGD56 JOB A123,QUASAR  

    //STEP01 EXEC PGM=PROGRAM1

    //OUTDD DD DSN=TRGD56.DEMO.OUTPUT,

    //   DISP=(NEW,CATLG,DELETE),

    //   VOL=SER=T02947

    Here, the Output dataset will be created on the tape drive, whose serial number is T02947.

    //TRGD56 JOB A123,QUASAR  

    //STEP01 EXEC PGM=PROGRAM1

    //OUTDD DD DSN=TRGD56.DEMO.OUTPUT,

    //   DISP=(NEW,CATLG,DELETE)

    //   VOL=(,RETAIN,SER=T02947)

    Here, the Output dataset will be created on the device serial number T02947, and this volume will not

    be dismounted until the Batch JOB ends.

    Q. What is the LABEL parameter used for?

    Whenever tape datasets are used as Input Dataset or Output Dataset, LABEL parameter can be used.

    //TRGD56 JOB A123,QUASAR  

    //STEP01 EXEC PGM=PROGRAM1

    //OUTDD DD DSN=TRGD56.DEMO.OUTPUT,

    //   DISP=(NEW,CATLG,DELETE),//   LABEL=1

    Q. What is the SPACE parameter used for?

    http://www.mainframes360.com/2009/07/jcl-tutorial-08-dd-statement-part-iii.html (4 of 12)12/23/2009 4:04:24 AM

  • 8/8/2019 08 - DD Statement Part-II

    5/12

    JCL Tutorial – 08 : DD Statement – Part III ~ MAINFRAMES TUTORIAL, JCL TUTORIAL, VSAM TUTORIAL, COBOL TUTORIAL, DB2 TUTORIAL, CICS

    When we create a new dataset, we would like to specify, how much storage space to reserve for the

    dataset. Storage Space Allocation can be specified using the SPACE parameter.

    Firstly, we must specify the unit of memory. We can specify it as BLKS(Blocks), TRKS(Tracks), CYL

    (Cylinders), KB(Kilotbytes) or MB(MegaBytes).

    Secondly, we must specify space we need - (primary-space,extra-space).

    Thus, if we specify the space as

    SPACE=(TRKS,(10,2))

    Primary Space = 10 Tracks.

    Secondary Space = 2 tracks.

    What the MVS Operating System does is, it reserves 10 tracks(primary) of space for the dataset

    initially to begin with. Let’s day, you have made a dataset, and stored data. Over a period of time,

    as more and more data is added to the file, it gets inflated, and grows in size. At some point, 10

    tracks of space falls insufficient for the data. Thus, the MVS allocates an extra-space of 2 tracks

    to the continously growing dataset. Again, when the dataset runs out of space, the MVS Operating

    allocates another 2 tracks of extra space to it. This way, the MVS can allocate the extra-space upto

    15 times.

    Thus, as a dataset grows bigger in size over a period of time, the maximum space it could get is

    Primary + 15 times Extra-space = 10 + 2 x 15 = 40 tracks. To begin with, the size of the dataset is10 tracks, as the dataset gets filled over time, it grows(as extra-space of 2 tracks is given to it

    each time) 12, 14, 16, ..., upto maximum 40 tracks.

    The SPACE Parameter also has sub-parameters like RLSE, MXIG, CONTIG and ROUND.

    RLSE   RLSE sub-parameter instructs the MVS O/S to release the previouslyallocated space, but which remained unused.

    CONTIG   CONTIG sub-parameter instructs the MVS O/S to allocate contiguousspace.

    MXIG   MXIG sub-parameter instructs the MVS O/S to allocate the largestpossible chunk of contiguous storage space.

    ROUND   ROUND sub-parameter instructs the MVS O/S to allocate the entirecylinder for the storage of the dataset.

    Q. What is the DCB(Data Control Block) Parameter used for?

    http://www.mainframes360.com/2009/07/jcl-tutorial-08-dd-statement-part-iii.html (5 of 12)12/23/2009 4:04:24 AM

  • 8/8/2019 08 - DD Statement Part-II

    6/12

    JCL Tutorial – 08 : DD Statement – Part III ~ MAINFRAMES TUTORIAL, JCL TUTORIAL, VSAM TUTORIAL, COBOL TUTORIAL, DB2 TUTORIAL, CICS

    The DCB parameter is used to specify the organization of records within the dataset. The DCB

    Parameter has 4 sub-parameters :

    RECFM This is used to specify the Record Format. It can be Fixed F, FixedBlocked FB, Variable V, Variable Blocked VB, Uniform U

    LRECL It stands for Logical Record Length. It is used to specify the length ofthe record.

    BLKSIZE This is used to specify the size of the Block. A block is the unit of I/OTransfer. BLKSIZE must be a multiple of LRECL.

    DSORG Dataset Organisation. It is used tell the MVS O/S whether the givendataset, is a PS(Physical Sequential File), PO(Partitioned Organized) –

    A directory in which each file is PS, IS(Indexed Sequential) or DA(Direct Access).

    Let’s understand the DCB parameter with the help of an example.

    //TRGD56 JOB A123,QUASAR  

    //STEP01 EXEC PGM=IEFBR14

    //INDD DD DSN=TRGD56.DEMO.INPUT,DISP=SHR  

    //OUTDD DD DSN=TRGD56.DEMO.OUTPUT,

    //   DISP=(NEW,CATLG,DELETE),

    //   DCB=(RECFM=FB,LRECL=80,BLKSIZE=800,DIRBLKS=1),

    //   SPACE=(TRKS,(1,1),RLSE)

    Technorati Tags: IBM,Mainframes,Servers,IBM Mainframes,JCL Tutorial,JCL,DD,Quasar Chunawalla,UNIT,TAPE Drive,AFF,sub-parameter,

    Affinity,VOL,Volume,SER,Serial,REF,Referback,PRIVATE,RETAIN,SEQ ,Sequence,LABEL,SPACE,Storage Space,TRKS,Track,CYL,Cylinder,

    BLKS,Block,KB,MB,PRIMARY,SECONDARY,Extends,RLSE,Release,CONTIG,Contiguous,MXIG,ROUND,DCB,Data Control Block,RECFM,Record 

    Format,F,FB,V,VB,Fixed Blocked,Variable Blocked,Uniform,U,LRECL,Logical Record Length,Record Length,BLKSIZE,Block Size,DSORG,

    DIRBLKS,PS,Physical Sequential,PDS,Partitioned Dataset,PO,Partitioned Organized,IS,Indexed Sequential,DA,Direct Access

    Posted by Quasar at Friday, July 03, 2009 

    Reactions:

    1 comments:

    Anonymous said...

    here ,This chaper should be II,not III.

    Thanks.

    http://www.mainframes360.com/2009/07/jcl-tutorial-08-dd-statement-part-iii.html (6 of 12)12/23/2009 4:04:24 AM

    http://technorati.com/tags/IBMhttp://technorati.com/tags/Mainframeshttp://technorati.com/tags/Servershttp://technorati.com/tags/IBM+Mainframeshttp://technorati.com/tags/JCL+Tutorialhttp://technorati.com/tags/JCLhttp://technorati.com/tags/DDhttp://technorati.com/tags/Quasar+Chunawallahttp://technorati.com/tags/UNIThttp://technorati.com/tags/TAPE+Drivehttp://technorati.com/tags/AFFhttp://technorati.com/tags/sub-parameterhttp://technorati.com/tags/Affinityhttp://technorati.com/tags/VOLhttp://technorati.com/tags/Volumehttp://technorati.com/tags/SERhttp://technorati.com/tags/Serialhttp://technorati.com/tags/REFhttp://technorati.com/tags/Referbackhttp://technorati.com/tags/PRIVATEhttp://technorati.com/tags/RETAINhttp://technorati.com/tags/SEQhttp://technorati.com/tags/Sequencehttp://technorati.com/tags/LABELhttp://technorati.com/tags/SPACEhttp://technorati.com/tags/Storage+Spacehttp://technorati.com/tags/TRKShttp://technorati.com/tags/Trackhttp://technorati.com/tags/CYLhttp://technorati.com/tags/Cylinderhttp://technorati.com/tags/BLKShttp://technorati.com/tags/Blockhttp://technorati.com/tags/KBhttp://technorati.com/tags/MBhttp://technorati.com/tags/PRIMARYhttp://technorati.com/tags/SECONDARYhttp://technorati.com/tags/Extendshttp://technorati.com/tags/RLSEhttp://technorati.com/tags/Releasehttp://technorati.com/tags/CONTIGhttp://technorati.com/tags/Contiguoushttp://technorati.com/tags/MXIGhttp://technorati.com/tags/ROUNDhttp://technorati.com/tags/DCBhttp://technorati.com/tags/Data+Control+Blockhttp://technorati.com/tags/RECFMhttp://technorati.com/tags/Record+Formathttp://technorati.com/tags/Record+Formathttp://technorati.com/tags/Fhttp://technorati.com/tags/FBhttp://technorati.com/tags/Vhttp://technorati.com/tags/VBhttp://technorati.com/tags/Fixed+Blockedhttp://technorati.com/tags/Variable+Blockedhttp://technorati.com/tags/Uniformhttp://technorati.com/tags/Uhttp://technorati.com/tags/LRECLhttp://technorati.com/tags/Logical+Record+Lengthhttp://technorati.com/tags/Record+Lengthhttp://technorati.com/tags/BLKSIZEhttp://technorati.com/tags/Block+Sizehttp://technorati.com/tags/DSORGhttp://technorati.com/tags/DIRBLKShttp://technorati.com/tags/PShttp://technorati.com/tags/Physical+Sequentialhttp://technorati.com/tags/PDShttp://technorati.com/tags/Partitioned+Datasethttp://technorati.com/tags/POhttp://technorati.com/tags/Partitioned+Organizedhttp://technorati.com/tags/IShttp://technorati.com/tags/Indexed+Sequentialhttp://technorati.com/tags/DAhttp://technorati.com/tags/Direct+Accesshttp://www.blogger.com/post-edit.g?blogID=5079547514004526903&postID=1292463008937357739http://www.blogger.com/email-post.g?blogID=5079547514004526903&postID=1292463008937357739http://technorati.com/tags/Direct+Accesshttp://technorati.com/tags/DAhttp://technorati.com/tags/Indexed+Sequentialhttp://technorati.com/tags/IShttp://technorati.com/tags/Partitioned+Organizedhttp://technorati.com/tags/POhttp://technorati.com/tags/Partitioned+Datasethttp://technorati.com/tags/PDShttp://technorati.com/tags/Physical+Sequentialhttp://technorati.com/tags/PShttp://technorati.com/tags/DIRBLKShttp://technorati.com/tags/DSORGhttp://technorati.com/tags/Block+Sizehttp://technorati.com/tags/BLKSIZEhttp://technorati.com/tags/Record+Lengthhttp://technorati.com/tags/Logical+Record+Lengthhttp://technorati.com/tags/LRECLhttp://technorati.com/tags/Uhttp://technorati.com/tags/Uniformhttp://technorati.com/tags/Variable+Blockedhttp://technorati.com/tags/Fixed+Blockedhttp://technorati.com/tags/VBhttp://technorati.com/tags/Vhttp://technorati.com/tags/FBhttp://technorati.com/tags/Fhttp://technorati.com/tags/Record+Formathttp://technorati.com/tags/Record+Formathttp://technorati.com/tags/RECFMhttp://technorati.com/tags/Data+Control+Blockhttp://technorati.com/tags/DCBhttp://technorati.com/tags/ROUNDhttp://technorati.com/tags/MXIGhttp://technorati.com/tags/Contiguoushttp://technorati.com/tags/CONTIGhttp://technorati.com/tags/Releasehttp://technorati.com/tags/RLSEhttp://technorati.com/tags/Extendshttp://technorati.com/tags/SECONDARYhttp://technorati.com/tags/PRIMARYhttp://technorati.com/tags/MBhttp://technorati.com/tags/KBhttp://technorati.com/tags/Blockhttp://technorati.com/tags/BLKShttp://technorati.com/tags/Cylinderhttp://technorati.com/tags/CYLhttp://technorati.com/tags/Trackhttp://technorati.com/tags/TRKShttp://technorati.com/tags/Storage+Spacehttp://technorati.com/tags/SPACEhttp://technorati.com/tags/LABELhttp://technorati.com/tags/Sequencehttp://technorati.com/tags/SEQhttp://technorati.com/tags/RETAINhttp://technorati.com/tags/PRIVATEhttp://technorati.com/tags/Referbackhttp://technorati.com/tags/REFhttp://technorati.com/tags/Serialhttp://technorati.com/tags/SERhttp://technorati.com/tags/Volumehttp://technorati.com/tags/VOLhttp://technorati.com/tags/Affinityhttp://technorati.com/tags/sub-parameterhttp://technorati.com/tags/AFFhttp://technorati.com/tags/TAPE+Drivehttp://technorati.com/tags/UNIThttp://technorati.com/tags/Quasar+Chunawallahttp://technorati.com/tags/DDhttp://technorati.com/tags/JCLhttp://technorati.com/tags/JCL+Tutorialhttp://technorati.com/tags/IBM+Mainframeshttp://technorati.com/tags/Servershttp://technorati.com/tags/Mainframeshttp://technorati.com/tags/IBM

  • 8/8/2019 08 - DD Statement Part-II

    7/12

    JCL Tutorial – 08 : DD Statement – Part III ~ MAINFRAMES TUTORIAL, JCL TUTORIAL, VSAM TUTORIAL, COBOL TUTORIAL, DB2 TUTORIAL, CICS

    August 2, 2009 10:35 PM 

    Post a Comment

    Links to this post

    Create a Link 

    Newer Post Older Post Home 

    Subscribe to: Post Comments (Atom) 

    Quick Links

     Jump to :

    Note :

     © Copyright – Quasar Chunawalla, Tata Consultancy Services,2009.

     Note : The copyrights of all the material, text and pictures posted in this website

     belong to the author. Any instance of lifting the material from this website, shall be considered as an act of plagiarism. For any clarifications, please mail at quasar.

    [email protected] 

     

    http://www.mainframes360.com/2009/07/jcl-tutorial-08-dd-statement-part-iii.html (7 of 12)12/23/2009 4:04:24 AM

    http://www.mainframes360.com/2009/07/jcl-tutorial-08-dd-statement-part-iii.html?showComment=1249232745011#c705201241133875291http://www.blogger.com/blog-this.ghttp://www.mainframes360.com/2009/07/jcl-tutorial-09-dd-statement-part-iii.htmlhttp://www.mainframes360.com/2009/06/ibms-place-in-cloud-computing-cloud-z.htmlhttp://www.mainframes360.com/http://www.mainframes360.com/feeds/1292463008937357739/comments/defaultmailto:[email protected]:[email protected]://www.blogger.com/rearrange?blogID=5079547514004526903&widgetType=HTML&widgetId=HTML6&action=editWidgetmailto:[email protected]:[email protected]://www.blogger.com/rearrange?blogID=5079547514004526903&widgetType=HTML&widgetId=HTML9&action=editWidgethttp://www.mainframes360.com/feeds/1292463008937357739/comments/defaulthttp://www.mainframes360.com/http://www.mainframes360.com/2009/06/ibms-place-in-cloud-computing-cloud-z.htmlhttp://www.mainframes360.com/2009/07/jcl-tutorial-09-dd-statement-part-iii.htmlhttp://www.blogger.com/blog-this.ghttp://www.blogger.com/delete-comment.g?blogID=5079547514004526903&postID=705201241133875291http://www.mainframes360.com/2009/07/jcl-tutorial-08-dd-statement-part-iii.html?showComment=1249232745011#c705201241133875291

  • 8/8/2019 08 - DD Statement Part-II

    8/12

    JCL Tutorial – 08 : DD Statement – Part III ~ MAINFRAMES TUTORIAL, JCL TUTORIAL, VSAM TUTORIAL, COBOL TUTORIAL, DB2 TUTORIAL, CICS

     

    Globe-trotting

    Some Excerpts from Mainframes360

    Q. What are the two broad types of Applications/Systems?

    All application/systems are of 2 types

    (i) Online Systems(Transaction Processing Systems)

    (ii)Batch Processing Systems. Read more ...

    Q. What is the DATA DIVSION? What are the different sections in the DATA DIVISION?

    DATA DIVISION is used to describe the Input Output Storage areas and temporary storage areas. In other words, it’ll describe the

    structure of the data being stored in Input Output Files, as well as in any temporary storage. Read more ...

    Q. What are data-types? What are the basic data-types in COBOL?

    Data-type is used to announce/declare to the MVS O/S, about the type of data you’re gonna store in a Storage Location, so that it

    can estimate the storage space to be allocated and reserved for you data excusively. Read more ...

    http://www.mainframes360.com/2009/07/jcl-tutorial-08-dd-statement-part-iii.html (8 of 12)12/23/2009 4:04:24 AM

    http://www.mainframes360.com/2009/08/cobol-tutorial-data-division-part-i.html#label1http://www.mainframes360.com/2009/08/cobol-tutorial-data-division-part-i.html#label2http://www.mainframes360.com/2009/08/cobol-tutorial-data-division-part-i.html#label3http://www.mainframes360.com/2009/08/cobol-tutorial-data-division-part-i.html#label3http://www.mainframes360.com/2009/08/cobol-tutorial-data-division-part-i.html#label2http://www.mainframes360.com/2009/08/cobol-tutorial-data-division-part-i.html#label1http://www.blogger.com/rearrange?blogID=5079547514004526903&widgetType=AdSense&widgetId=AdSense1&action=editWidget

  • 8/8/2019 08 - DD Statement Part-II

    9/12

    JCL Tutorial – 08 : DD Statement – Part III ~ MAINFRAMES TUTORIAL, JCL TUTORIAL, VSAM TUTORIAL, COBOL TUTORIAL, DB2 TUTORIAL, CICS

    Q. What are group and Elementary Data Items?

    In COBOL, one or more elementary data-items can be grouped together. For example, we can group EMP-NAME, EMP-SALARY and EMP-JDATE

    as EMPLOYEE-RECORD. In COBOL, we say that a group item is a data item, which has several low-level(elementary) data-items. Read

    more ...

    Q. Can you elaborate on how to write the File Descriptor FD Paragraph?

    As mentioned before, we must describe the input file record format and output file record format in the File Descriptor FD

    paragraph under the FILE SECTION. Remember, that FD paragraph is always coded in AREA A. Read more ...

    Q. What is JOB Log? Why do we need a JOB Log? What purpose does it serve?

    When you submit a Batch JOB/JCL to the MVS System, the MVS executes the Job Stream, makes the necessary resources available to the

    the EXEC PGM (Program), and finally tells you the result of the Job. Read more ...

    Q. In the previous tutorial, you’ve stated what is compiling, linking and running.. Can you show me a Compiler and  

    Linking JCL/Job Stream that does this?

    Sure, as you know, the Compiler takes a SYSIN DD Input Dataset, which is the Source COBOL Program. The COBOL Compiler IGYWC(or

    IGYCRCTL) produces SYSOUT DD Dataset containing the JOB Log and Status messages, and more importantly, SYSLIN DD which is Object

    Module and Input for the Linker. Read more ...

    Q. Show me a simple JCL/JOB Stream to run my COBOL Program(LOAD MODULE).

    On Windows, to run a program, we simply click on the Executable File. In the same way, to run our COBOL Program on Mainframes, we

    are going to use the LOAD MODULE(Executable). To run a program on the MVS, you write JCL. You specify the name of the Program(LOAD

    MODULE) Read more ...

    Q. What is the ENVIRONMENT DIVISION? What purpose does it serve in the COBOL Program?

    The ENVIRONMENT DIVISION provides information about the computer equipment/configuration upon which the COBOL program will run. It

    also gives the name of the input and output files used in the program. It assigns the file-names to ddnames(DD Statements in the

    Run JCL). Read more ...

    Q. What is a Mainframe Computer?

    A Mainframe computer is used by large organisations for processing huge volumes of data e.g. census, consumer statistics, ERP and

    financial transaction processing. Read more ...

    Q. How did IBM Mainframe machines evolve?

    Well, IBM first launched the System/360, then System/370, System 370/XA, Enterprise System Architecture(ESA)/370, System 390 and

    the latest machines in the Mainframe series is zSeries(pronounce Zee). Read more ...

    Q. What does a Mainframe Computer look like? How do you operate it?

    Let’s just try to see what’s life like, if you are Mainframe machine’s operator. A Desktop computer can fit into a trolley or a

    cabinet. A Mainframe Machine is generally big monster-size, would fill up a room. On a Desktop PC, you would sit near the physical

    computer and operate it using the keyboard and the mouse, and see the result on the monitor. Read more ...

    http://www.mainframes360.com/2009/07/jcl-tutorial-08-dd-statement-part-iii.html (9 of 12)12/23/2009 4:04:24 AM

    http://www.mainframes360.com/2009/08/cobol-tutorial-data-division-part-i.html#label5http://www.mainframes360.com/2009/08/cobol-tutorial-data-division-part-i.html#label7http://www.mainframes360.com/2009/08/job-log-how-to-understand-and.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-compiling-linking-and.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-compiling-linking-and.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-compiling-linking-and.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-compiling-linking-and.htmlhttp://www.mainframes360.com/2009/06/what-is-mainframe-computer.htmlhttp://www.mainframes360.com/2009/06/what-is-mainframe-computer.htmlhttp://www.mainframes360.com/2009/06/what-is-mainframe-computer.htmlhttp://www.mainframes360.com/2009/06/what-is-mainframe-computer.htmlhttp://www.mainframes360.com/2009/06/what-is-mainframe-computer.htmlhttp://www.mainframes360.com/2009/06/what-is-mainframe-computer.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-compiling-linking-and.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-compiling-linking-and.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-compiling-linking-and.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-compiling-linking-and.htmlhttp://www.mainframes360.com/2009/08/job-log-how-to-understand-and.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-data-division-part-i.html#label7http://www.mainframes360.com/2009/08/cobol-tutorial-data-division-part-i.html#label5

  • 8/8/2019 08 - DD Statement Part-II

    10/12

    JCL Tutorial – 08 : DD Statement – Part III ~ MAINFRAMES TUTORIAL, JCL TUTORIAL, VSAM TUTORIAL, COBOL TUTORIAL, DB2 TUTORIAL, CICS

    Q. Hey, Windows is the most popular Operating System on a Desktop-PC. On the same lines, the popular Mainframes 

    Operating System is MVS...

    Bulls-eye! In fact, MVS is said to be the Operating System that makes the world move. Read more ...

    Q. What about Super-computers? Are mainframes faster than super-computers?

    Don’t equate the word Mainframes to Speed. Mainframes have tremendous processing power or computational power, but of a different

    kind. Think of task, where we have 1,00,000 records of Input data, and we want to perform 3 calculations on each record, and then

    put the Output Records in a separate file. Read more ...

    Q. What’s that name again.. Multiple Virtual Storage? What crap?

    Virtual Storage is a simple idea. Virtual storage simulates a large amount of main storage(Primary or main memory) by treating the

    auxiliary storage as an extension of the real storage. Thus, a program gets the feel, “Wow, I have an infinite amount of computer

    memory at my disposal.” Read more ...

    Q. What is a Batch Job?

    If you are a college student, you would have probably written a computer application in C, and executed it on your desktop PC. You

    run the program interactively, you type in some input data, wait for the response(output), and then you type some more input, and

    this cycle continues. Such programs or systems are called as Online Systems or Transaction Processing Systems. Read more ...

    Q. Look, on Windows PC, you interact with the computer using the Windows GUI – the Desktop Icons, the Menus, 

    Buttons etc. How do you interact with an MVS Mainframe System?

    MVS offers several ways to interact with it. The 3 main ways of interacting with MVS are TSO, ISPF and CICS. Read more ...

    Q. What does COBOL stand for? What are the application areas where COBOL Programs written? 

    COBOL stands for Common Business Oriented Language. COBOL Programs are used for commercial data processing. COBOL is an English-

    like language. Writing a COBOL program is just like writing a passage in English. Read more ...

    Q. You said COBOL Programming language bears resemblance with English. Do COBOL Programs have paragraphs like in English? 

    A COBOL Program consists of 4 main divisions : IDENTIFICATION DIVISION, ENVIRONMENT DIVISION, DATA DIVISION and PROCEDURE DIVISION.

    IDENTIFICATION DIVISION is used to identify the COBOL Program to the system. It tells the... Read more ...

    Q. Show me the basic skeleton of a COBOL Program then..

    The basic skeleton of a COBOL Program is as follows : IDENTIFICATION DIVISION. ENVIRONMENT DIVISION. Read more ...

    Q. Paragraphs in the English language are indented. Do you have indentation/alignment rules in COBOL?

    Just like paragraphs in English, COBOL Divisions and Paragraphs must follow strict alignment rules. The way we indent paragraphs in

    English, you must indent different Divisions, sections and paragraphs in a COBOL Program. When you write .. Read more ...

    http://www.mainframes360.com/2009/07/jcl-tutorial-08-dd-statement-part-iii.html (10 of 12)12/23/2009 4:04:24 AM

    JCL T t i l 08 DD St t t P t III MAINFRAMES TUTORIAL JCL TUTORIAL VSAM TUTORIAL COBOL TUTORIAL DB2 TUTORIAL CICS

    http://www.mainframes360.com/2009/06/what-is-mainframe-computer.htmlhttp://www.mainframes360.com/2009/06/what-is-mainframe-computer.htmlhttp://www.mainframes360.com/2009/06/what-is-mainframe-computer.htmlhttp://www.mainframes360.com/2009/06/what-is-mainframe-computer.htmlhttp://www.mainframes360.com/2009/06/what-is-mainframe-computer.htmlhttp://www.mainframes360.com/2009/06/what-is-mainframe-computer.htmlhttp://www.mainframes360.com/2009/06/what-is-mainframe-computer.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-introduction-writing.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-introduction-writing.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-introduction-writing.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-introduction-writing.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-introduction-writing.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-introduction-writing.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-introduction-writing.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-introduction-writing.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-introduction-writing.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-introduction-writing.htmlhttp://www.mainframes360.com/2009/06/what-is-mainframe-computer.htmlhttp://www.mainframes360.com/2009/06/what-is-mainframe-computer.htmlhttp://www.mainframes360.com/2009/06/what-is-mainframe-computer.htmlhttp://www.mainframes360.com/2009/06/what-is-mainframe-computer.htmlhttp://www.mainframes360.com/2009/06/what-is-mainframe-computer.htmlhttp://www.mainframes360.com/2009/06/what-is-mainframe-computer.htmlhttp://www.mainframes360.com/2009/06/what-is-mainframe-computer.html

  • 8/8/2019 08 - DD Statement Part-II

    11/12

    JCL Tutorial – 08 : DD Statement – Part III ~ MAINFRAMES TUTORIAL, JCL TUTORIAL, VSAM TUTORIAL, COBOL TUTORIAL, DB2 TUTORIAL, CICS

    Q. What is the IDENTIFICATION DIVISION used for?

    The IDENTIFICATION DIVISION is used to identify the COBOL Program to the system. It has the following paragraphs :

    PROGRAM-ID.

    AUTHOR.

    Read more ...

    Q. What does the PROCEDURE DIVISION look like? What’s the format/syntax. Can you elaborate..

    The PROCEDURE DIVISION indicates the entry-point or starting point of the COBOL Program. This is where the computer system begins

    to run(execute the COBOL instructions). Hence, all your instructions/programming logic must be written inside this PROCEDURE

    DIVISION. Read more ...

    Q. How do you compile a COBOL Program? What is meant by Linking a COBOL Program? Finally, how do you run the 

    Program on a Mainframe System?

    Compiling a COBOL Program : COBOL is a high-level language. The Mainframe Computer System only understands binary Machine Language

    0 and 1. Thus, your COBOL Program has to be translated from COBOL Language to Binary Machine Language. So, you give the Program in

    COBOL Language as Input to the Translator(Compiler), and you get the Output Program in Binary Machine Language. Read more ...

    Q. Could you throw some light on the WORKING-STORAGE SECTION of a COBOL Program?

    The WORKING-STORAGE SECTION is used to declare any fields or records that are not going to be used in input files, or output files,

    but they are used to store the intermediate results of processing in a temporary storage area. Read more ...

    Navigation

    Navigation 

    - Main Page

    - Questions Archive

    - Articles and Writing Tutorials 

    + JCL Tutorials(12) 

    + IBM Utilities Tutorials(08) 

    + COBOL Tutorials(08) 

    - DB2 Tutorials

    + VSAM Tutorials 

    - CICS Tutorials

    - REXX Tutorials

    - ISPF Panel Programming

    FAQs

    http://www.mainframes360.com/2009/07/jcl-tutorial-08-dd-statement-part-iii.html (11 of 12)12/23/2009 4:04:24 AM

    JCL T t i l 08 DD St t t P t III MAINFRAMES TUTORIAL JCL TUTORIAL VSAM TUTORIAL COBOL TUTORIAL DB2 TUTORIAL CICS

    http://www.mainframes360.com/2009/08/cobol-tutorial-introduction-writing.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-introduction-writing.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-introduction-writing.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-introduction-writing.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-data-division-part-ii.htmlhttp://www.mainframes360.com/http://www.mainframes360.com/2009/04/jcl-questions-archive-for-geeks.htmlhttp://www.mainframes360.com/2009/04/articles-and-writings.htmlhttp://www.mainframes360.com/2009/04/jcl-tutorial-links.htmlhttp://www.mainframes360.com/2009/04/ibm-utilities-tutorials.htmlhttp://www.mainframes360.com/2009/04/cobol-tutorials.htmlhttp://www.mainframes360.com/2009/04/vsam-tutorial-links.htmlhttp://www.mainframes360.com/2009/04/vsam-tutorial-links.htmlhttp://www.mainframes360.com/2009/04/cobol-tutorials.htmlhttp://www.mainframes360.com/2009/04/ibm-utilities-tutorials.htmlhttp://www.mainframes360.com/2009/04/jcl-tutorial-links.htmlhttp://www.mainframes360.com/2009/04/articles-and-writings.htmlhttp://www.mainframes360.com/2009/04/jcl-questions-archive-for-geeks.htmlhttp://www.mainframes360.com/http://www.blogger.com/rearrange?blogID=5079547514004526903&widgetType=HTML&widgetId=HTML1&action=editWidgethttp://www.mainframes360.com/2009/08/cobol-tutorial-data-division-part-ii.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-introduction-writing.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-introduction-writing.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-introduction-writing.htmlhttp://www.mainframes360.com/2009/08/cobol-tutorial-introduction-writing.html

  • 8/8/2019 08 - DD Statement Part-II

    12/12

    JCL Tutorial – 08 : DD Statement – Part III ~ MAINFRAMES TUTORIAL, JCL TUTORIAL, VSAM TUTORIAL, COBOL TUTORIAL, DB2 TUTORIAL, CICS

    - How do I learn Mainframes?

    - Coaching and Institutes

    - Mail me

    - JOB Prospects

    - Idea behind Mainframes 360

    Follow the Buzz..

     

    Technorati

     Add this blog to your favourites.. 

    Subscribe To

     Posts

    Comments

    About Me

    Quasar ChunawallaChennai, Tamil Nadu, India

    Working at Tata Consultancy Services, Chennai

    View my complete profile 

    http://www.mainframes360.com/2009/07/jcl-tutorial-08-dd-statement-part-iii.html (12 of 12)12/23/2009 4:04:24 AM

    http://www.blogger.com/profile/08678298971703810516http://www.blogger.com/rearrange?blogID=5079547514004526903&widgetType=Subscribe&widgetId=Subscribe1&action=editWidgethttp://www.blogger.com/rearrange?blogID=5079547514004526903&widgetType=Profile&widgetId=Profile2&action=editWidgethttp://www.blogger.com/profile/08678298971703810516http://www.blogger.com/profile/08678298971703810516http://www.blogger.com/rearrange?blogID=5079547514004526903&widgetType=HTML&widgetId=HTML5&action=editWidgethttp://technorati.com/faves?sub=addfavbtn&add=http://ibm-mainframes-360.blogspot.comhttp://www.blogger.com/rearrange?blogID=5079547514004526903&widgetType=Gadget&widgetId=Gadget2&action=editWidgethttp://www.blogger.com/rearrange?blogID=5079547514004526903&widgetType=HTML&widgetId=HTML3&action=editWidget