Tony Thigpen - very observant.

Yes, there is an optional back-end database for Data Set Information.  This was originally added to Jol so that the people in the department looking after the Data Sets on the machine could be separate from the people writing the code to actually execute the programs.

Then in order to make Jol more useful (and a universal command language) the data set and program information such as the DDnames, and whether they read or write (ie create) files was hidden.  The intention with Jol was always to be a Universal Command Language - and hence commands and so on have always been built in an English like manner, with compatibility always in mind.  You can see the list of commands on this page.  Press on the:

'Detailed descriptions of Jol Instructions' on this page:
http://start.oscar-jol.com/documentation/technical-how-to-use

Also, you can see the general format of a Jol program by following the
'Jol Reference Guide' link.
------

Originally, people use Jol instructions to declare programs and data sets and used the Run instruction which tied the declares together to create the JCL to execute the program.

Here is a simple example of the "low" level Jol.

Job1: Job 10,5 mins acct dept01 250M;

Dcl Output DS temporary.file vb 200, 6144 unit sysda vol vol01;
Dcl Input DS Sys1.maclib(call);
Dcl Printer Print;

Dcl Iebgener Program
    sysut1 reads input
    sysut2 writes output
    sysin reads 'dummy'
    sysprint writes Printer;

Run Iebgener;

----------

The above can be simplified to:


Dcl Output DS temporary.file vb 200, 6144 unit sysda vol vol01;
Dcl Input DS Sys1.maclib(call);

Copy Input to Output;

-------

Or further

Copy 'sys1.maclib(call)' to temporary.file;






Tony Thigpen wrote:
So where does JOL get all the other informatoin for the DD card? Is there some back-end database that has information for all the files that may be used?

Tony Thigpen

Clem Clarke wrote on 07/10/2018 08:33 PM:
Below is an example of Jol, and the equivalent JCL.

Clem

Simplified Jol Scripting Language for Z/OS, TSO, Linux and Windows

Payroll: Job class C 1000 k;
Exec Validate Input.Trans, Trans.Action(+1); /* Validate Transations */
if Validate=0
then do;
     Sort transaction(+1) to Sorted.Trans.Actions(+1)
         Fields(10,10,CH,A);
     Exec Update Payroll.Master(0), Sorted.Trans.Action(+1),
         Payroll.Master(+1);
     If Update = 0
     then do;
         Catalog Payroll.Master(+1), Sorted.Trans.Action(+1);
         Submit Job2;
     end;
end;
else Stop 'Error in PAYROLL Job';


________________________________


----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to