Cobol Canada

0 views
Skip to first unread message

Mark Tracy

unread,
Aug 4, 2024, 5:29:35 PM8/4/24
to difounlige
AHow does Cobols fits in into mainframe ?

B. What is TSO ISPF ?

C. How to log in into Maniframe ?

D. What is JCL and how do i learn it ?

E. How does the database DB2 and/or IMS fits in into mainframe

F. Writing a program in cobol on mainframe using TSO/ISPF with or without DB2 to understand how batch processing works on mainframe

G. Understanding the CICS and how does online transaction work on mainframe.

H. Running a full fledged COBOL,CICS ,DB2 program on mainframe and running it through JCL.


I request all the members to send me their consent so that we can start this asap.

Also the emails are not working . Replying to your email after i get your mail , its bounces back saying this mail id is not valid. Please do make sure that to quote your email id on which to communicate.


YES, I AM INTERESTED IN LEARNING COBOL FOR MAINFRAME.

I would like to enroll myself in this course , which is free and no costs are involved.

My Name -

My email id-

Country -

Preferred time to attend -


YES, I AM INTERESTED IN LEARNING COBOL FOR MAINFRAME.

I would like to enroll myself in this course , which is free and no costs are involved.

My Name -

My email id-

Country -

Preferred time to attend - GMT time preferred, Please note that I stay in India and my preferred time is India time 7 pm to 8 pm (India time) every day. The course would be beamed online for one hour


**In the mean time I am also studying Tutorials point training so that I am not completely lost and understand my concepts better when you teach it. I have ZOOM and SKYPE installed so any platform is acceptable.


I am interested in your course. I used to program extensively in Cobol many years ago but not recently due to promotions to software supervision. I am again interested in reviving my coding skills before going back on the market for remote assignments if feasible.


YES, I AM INTERESTED IN LEARNING COBOL FOR MAINFRAME.

I would like to enroll myself in this course , which is free and no costs are involved.

My Name -Rick Mercadante

My email id- merca...@gmail.com

Country - USA (eastern)

Preferred time to attend - 7 pm to 8 pm (India time) will work


Since the syntax was so clear and human-like, written in procedural style, it was for that reason, that made adapting to the changes in the business environment much easier, for example, to assign a value of pi to a variable, and then subtract zero from it - simple example to show the actual COBOL statements/sentences (it is years since I last programmed in Cobol)


And it is that, hence easier to troubleshoot because any potential business logic error can be easily pin-pointed as a result. Not alone that, since COBOL ran on mainframe systems, it was for a reason, the data transfer from files were shifted at a speed that is light-years ahead of the other systems such as PC's and that is another reason why data processing in COBOL was blindingly fast.


I have worked on the Y2k stuff on the mainframe (IBM MVS/360) and it was incredible at the dawn of the 21st century, praying that the fixes I put in wouldn't bring the business applications to their knees...that was hype, aside from that..to this day, it is still used because of the serious transfer speed of data shuffling around within mainframes and ease of maintainability.


Now, businesses cannot afford to dump COBOL as they would effectively be 'committing suicide' as that is where their business applications resides on, which is the reason why the upgrade, migration, porting to a different language is too expensive and would cause a serious headache in the world of businesses today...


Not alone that, imagine having to rewrite procedural code which are legacy code and could contain vital business logic, to take advantage of the OOP style of Java, the end result would be 'lost in translation' and requiring a lot of patience, stress and pressure.


Imagine, a healthcare system (I have worked for one, which ran on the system I mentioned above), was to ditch all their claims processing,billing etc (written in COBOL) to Java, along with the potential for glitches and not to mention, serious $$$ amount of money to invest which would cost the healthcare company itself far more, the end result would be chaos and loss of money, and customers (corporations that offer employee benefits) would end up dumping the company for a better one.


Cobol is very much a procedural language, while Java is very much an object oriented language. That said, there have been vendor specific OO extensions to Cobol for decades, and the new specification contains a formal specification. It is also possible to write procedural code in Java, you can easily make a program out of a single main() method.


The most significant difference is that Cobol supports native fixed point arithmetic. This is very important when dealing with financals. Most languages, Java included, only support this via add on libraries, thus they are many orders of magnitude slower when dealing with fixed point data and prone to (potentially very expensive) errors in that library code.


Cobol is a pure procedural language, not even functions in it (I used cobol in the 90s, so it might have changed since).

Java is OO (Although I heared there is a OO version for Cobol too), Oh...And the syntax is different.


It'swhat we do!COBOL: COBOL Concept DescriptionJava: Java/OO Similar Concept++: What Java/OO adds to ConceptWhen I began Java, I used to think the OO (Object Orientation) was "just like" good programming practices, except it was more formal, and the compiler enforced certain restrictions.


COBOL: PERFORMJava: method++: can pass parameters to method, more like FUNCTIONother programs/classes can call methods in different classes if declared public. public/private gives designer much control over what other classes can see inside a class.


COBOL: Working Storge, dynamically loaded sub-routineJava: Class variables++: Java can mix both Class variables (called static, just the reverse of our COBOL example, and instance variables (the default).Class variables (static) occur only once per Class (really in one JVM run-time environment).Instance variables are unique to each instance of a class.Here is an example from class JsrSysout. From my COBOL background I like to debug my code by DISPLAYing significant data to the SYSOUT data set. There is a Java method for this, System.out.prinln(...). The problem with this method is that the data you want just scrolls off the Java console, the equivalent of SYSOUT or perhaps DISPLAY UPON CONSOLE if you had your own stand-alone machine. I needed a way to easily do displays that would stop when the screen was full. Since there is only one Java console, the line-count for the screen clearly needs to be a class variable, so all instances (each program/class that logs here has its own instance of JsrSysout) stop at the bottom of the screen.


Multiple Instances of same class:One (calling program) class can create multiple instances of the same class. Why would you want to do this? One good COBOL example is I/O routines. In COBOL you would need to code one I/O routine for each file you wish to access. If you want to open a particular file twice in one run-time environment you would need a different I/O routine with a different name, even if the logic was identical.


With Java you could code just one class for a particular logical file type. Then for each file you wish to read (or write) you simply create another instance of that class using the new operator. Here are some snippets of code from program IbfExtract that do exactly that. This program exploits the fact that I have written a class for Line Input, and another class for Line Output. These are called JsrLineIn and JsrLineOut.


This illustrates another dynamic feature of Java. When output is first created, it is an array of null pointers, it takes very little space. Only when a new object is created, and the pointer to it implicitly put in the array does storage for the object get allocated. That object can be anything from a String to an very complex Class.


COBOL: PICTUREJava: No real equivalent.I therefore invented a method to mymic a ZZZ,ZZZ,... mask for integer input. I have generally grouped my utility functions in JsrUtil. These are methods that really don't related to any type of object. Here is an example of padLeft that implements this logic. padLeft is also a good example of polymorphism. In COBOL, if you have different parameter lists you need different entry points. In Java, the types of parameters are part of the definition. For example:


COBOL: Decimal arithmeticJava: Not in native Java, but IBM has implemented some BigDecimal classes.I consider this the major weakness of Java for accounting type applications. I would have liked to see the packed decimal data type as part of the native JVM byte architecture. I guess it is not there because it is not in C or C++. I have only read about the BigDecimal classes, so I can't realy comment on their effectiveness.

3a8082e126
Reply all
Reply to author
Forward
0 new messages