This is the first of what will be a 10-part series of articles about MANASYS Jazz.
Programs can be generated from data definitions and a
dialog. For example, here we’ve used the menu New/Logic/Batch
Program. We give some details: the program name, its input file, do we
want it in order? and so on. Here we’re saying that program Batch1 will read CustF in a particular order, we want all records, and we’ll
print the records. We will also be using a Lookup Table (file) called
“FR”
Because we checked ORDER the dialog gets us to specify the sequencing fields and control breaks from Custf. Because we checked PRINT we select which fields we want to print. We are asked how to relate FR to Custf. Click [Finish] and the dialog closes and shows us the Jazz program that’s been generated.
If this is exactly what we want we simply click [Process] to create COBOL which will either be submitted to z/OS, or passed to Micro Focus Enterprise Developer, to compile and run. Here are a few lines of the report it produces.
1Printed at 06 Nov 2021, 07:37:35 RepNbr1 Page 1
0Account Region District *------------Name------------* *-SalesYTD-* Billingcycle *--------Region Name---------*
0 000141 1 2 ORR, Myra Dorothy $41,985.00 Jun New Zealand
0 000018 3 BARNES, Melissa $25,358.40 May New Zealand
000145 PATCHING, Naomi $9,894.06 Mar New Zealand
000197 SARTEN, Frederick $56,624.40 Oct New Zealand
000219 TREBILCOCK, Thomas Glanville $10,373.12 Dec New Zealand
0 000123 4 KNIGHT, William $30,820.92 Apr New Zealand
0 000114 5 JACOB, Lionel Le Grand $2,256.58 Feb New Zealand
All this just from definitions and dialogs, without writing a single line of code!
When we want more than the dialogs provide we can edit the Jazz program. Here we’ve moved FR.Name to the left, added SUM to SalesYTD so that subtotals are calculated and printed on every control break. We’ve also added DateCommenced: -
PRINT
(CustF.Account,CustF.Region, FR.Name,CustF.District,CustF.Name,CustF.SalesYTD
SUM,CustF.Billingcycle,
CustF.DateCommenced) ;
Now the report has Region Name where we want it, and subtotals are printed on change of District and Region, and grand total at the end.
1Printed at 08 Nov 2021, 09:01:45
RepNbr1
Page 1
0Account Region *--------Region Name---------* District
*------------Name------------* *----SalesYTD---* Billingcycle DateCommenced
0 000141 1 New
Zealand 2 ORR,
Myra Dorothy
$41,985.00 Jun 28 Feb 2018
1 District Subtotal 2
$41,985.00
0 000018 New
Zealand 3
BARNES, Melissa
$25,358.40 May 28 Feb 2018
000145 New Zealand PATCHING,
Naomi $9,894.06 Mar 28 Feb 2018
000197 New Zealand SARTEN,
Frederick $56,624.40 Oct 28 Feb 2018
000219 New Zealand TREBILCOCK, Thomas
Glanville $10,373.12 Dec 28 Feb 2018
1 District
Subtotal 3 $102,249.98
Jazz takes care of routine details like formatting data into print lines, so it requires far fewer statements than COBOL. Program Batch1 is only 8 lines of Jazz, but generates 672 lines (291 Procedure) of COBOL, 32 times as many. However the Jazz language is flexible enough to do almost anything that COBOL can do, so you can add logic including calculations, conditions, loops, and routines. Routines are performed paragraphs, but unlike COBOL you can pass them parameters.
When even this flexibility is insufficient, experienced COBOL programmers can extend Jazz with COBOL statements, and you can CALL subprograms that might have been written with Jazz, COBOL, Assembler, or any other language that can be called from COBOL. Subprogram interfaces are fully described in DEFINE statements, making it easy to avoid parameter mismatch errors with CALL, and you can pass constant parameters.
The ultimate flexibility: all objects that MANASYS produces are common languages – COBOL, JCL, BMS, WSDL or JSON, C# – and can be edited. The intermediate-language programs (COBOL, C#) are written clearly to facilitate this, and support routines are supplied as COBOL source code. Perhaps useful as a temporary fix while Jazz Software works with you to develop a new feature like IMS support.
Why write an entire low-level program when there are only a few statements needing 3GL flexibility? From the first version of MANASYS our software has been designed to make simple programming trivial, complex programming easy, and leave you with the full flexibility of the intermediate language on the rare occasions that you need it. Enormous productivity gains, without any loss of flexibility.
General programming skills are useful for all levels, but COBOL knowledge is only necessary at level 3. If new programmers are introduced to COBOL through MANASYS Jazz they will be productive very quickly, and pick up COBOL skills as they go. It’s a great way to solve the COBOL skills shortage.
In the next of this series, we’ll look at how MANASYS works, showing how Jazz data definitions give it so much power.
See our web page if you want more information. Contact us if you have any questions, or connect with us on LinkedIn. Download a free evaluation copy if you want to try it out.