Mainframe Languages

356

Solutions

429

Contributors

There are many computer languages, and they have been evolving from machine language into a more natural way of writing. Languages are generally classified into machine language (direct machine code); assembly (using mnemonics to present the instructions to be translated later into machine language by an assembly program); procedural languages, also known as high-level languages (HLL) (Pascal, FORTRAN, Algol, JCL, COBOL, REXX, PL/I, Basic, and C are common), along with several other types. Mainframe programming is largely done in the procedural languages.

Share tech news, updates, or what's on your mind.

Sign up to Post

After 25 years working as a developer and DBA using DB2 for the midrange (IBM i, AS/400), my new job for the last 2 years has been DBA for DB2 on z/OS. It’s been a significant adjustment, but I’m getting the hang of it.

As I navigate DB2 on z/OS, there are a few aspects of DB2 on IBM i that I really miss. I’m hoping some of you mainframe DB2 experts can guide me in getting this kind of functionality on the mainframe. (We’re currently using DB2 version 10, but we’re upgrading to version 11 later this month.)

Are some of these things coming in a future release, or is there another product I need?

Things I miss about DB2 for i:

- Visual Explain in the native GUI (IBM i Access)
  ==> including the (largely-automated) Index Advisor
  ==> makes query-tuning MUCH easier and intuitive

- constant automatic statistics gathering
  ==> completely eliminates the need for manual gathering of statistics
  ==> never need to worry if the statistics are out of date

- automatic storage management and tablespace management
  ==> the concept of a tablespace is largely irrelevant on DB2 for i
  ==> significantly reduces the need for manual work

- more extensive query rewrite functionality
  ==> makes query-writing significantly more "forgiving" since it'll just rewrite my query behind the scenes to make it run faster

- EXCEPTION JOIN
  ==> I rarely use it, but it's really elegant and effective when I do

- "OFFSET n ROWS" clause in SELECT
  ==> Similarly, I …
0
Exploring SQL Server 2016: Fundamentals
LVL 13
Exploring SQL Server 2016: Fundamentals

Learn the fundamentals of Microsoft SQL Server, a relational database management system that stores and retrieves data when requested by other software applications.

During the upgrade from DB2 9 to DB2 10 on z/OS, the previous (now retired) DBA converted all tablespaces from "simple" to "universal". How can I determine if they are partition-by-range or partition-by-growth?

Using RC/Query in CA/Tools from Computer Associates, I was able to reverse-engineer the CREATE TABLESPACE statement, but it's not obvious from the code which type of tablespace this is.

CREATE TABLESPACE SNF101
       IN DNF1
       USING STOGROUP GNF2
           PRIQTY 48
           SECQTY 48
           ERASE NO
       BUFFERPOOL BP1
       CLOSE NO
       LOCKMAX SYSTEM
       SEGSIZE 4
       FREEPAGE 0
       PCTFREE 5
       GBPCACHE CHANGED
       DEFINE YES
       LOGGED
       TRACKMOD YES
       COMPRESS NO
       LOCKSIZE ANY
       MAXROWS 255
       CCSID EBCDIC
;

Open in new window


Given that CREATE TABLE statement, how can I determine if this is partition-by-range or partition-by-growth?

Thanks!

Dave
0
Greetings, experts! After 25 years of using DB2 on midrange systems (AS/400, IBM i, etc), I’m now being tasked with being a database administrator for DB2 on the mainframe (z/OS). I apologize for the “rookie questions” here, but I’m still getting my head around the mainframe.

Currently, every morning, I manually check the status of several tablespaces using the DISPLAY command in the “DB2 Commands” screen:

e.g.
Cmd 1       ===>       -DISPLAY DB(DN*) SPACENAM(*) USE LOCKS LIMIT(*)
Cmd 2       ===>       -DISPLAY DB(DP*) SPACENAM(*) USE LOCKS LIMIT(*)

This displays several pages of output on the screen, pausing after each screen-full. If any tablespaces are in an invalid status, I can do something about it.

Ultimately, I’d like to issue several of these DISPLAY statements, directing the output to an output dataset. Then, I can either inspect that dataset manually or possibly write a program to parse the output dataset and report (or fix) any anomalies.

This is probably super easy for all you mainframe DB2 DBA’s, but how do I script these commands? Do I use REXX? If so, how?

Thanks for your help!
DaveSlash
0
I've inherited some 10+ year old code without benefit of the original programmer... can anyone explain the usefulness of this code segment, or at least reduce to something more sensible?

                                                       Display Module Source                                                        
                                                                                                                                   
C  N31USERN         CABNE     *ALL' '                            3131--                                  

Thanks in advance ;)
0
Hello Experts,

We are tasked to migrate a Mainframe application to Java. I would like to see these COBOL programs. Is there a way to skim through these MF files like we do in other languages.

 I cannot access the MF terminal (do not know how to :() . I am using a windows PC and do have windows server at the client's location.

Thanks in Advance.
0
Hi Experts

Could you explain how was the mainframes programs strategy to deal with low hardware resouces, decades ago, when developing banking applications like checking accounts, legal accounting, etc. a typical area with huge amount of data.

I guess there was one computer designated to treat each big agency data and then one other only to sumarize. Am I right?
Could you give details, mainly if you lived this situation?

Thanks in advance!
0
Hi,

As part of a project, we have created a File Path in the Machine and tried to connect from Mainframe to that destination(Path), it is giving Network path not found.

However we have thought to restart the FTPSITE will resolve this issue but there is an outage if we did a restart to other clients who are connecting to the destination.

Please suggest is there way to complete this issue without FTPSITE restart.  

Thanks for your help in advance.
Venkatesh.
0
Hi Experts,

I have to create an iSeries webservcie that receive JSON data and store that on the IFS.
after that I gave to process the data into some files.

How can I write the REST service received data into an IFS file (with a unique filename of course)
Please can I receive an example if possible?

Thanks
0
I have an access application I inherited that uses the WdMfDsp.ocx control to get data from Rumba.
After upgrading to windows 7 we now are getting an error message.

"A license is not available at this time. general license error occurred -2"
 
followed by another message

"The operation of the Objectx Mainframe display control object failed.
The OLE server may not be registered."

I'm new to using this type of work, any suggestions would be appreciated.
0
Have got some links/guides from BTan previously for OWASP & Java.

Q1:
I'll now need secure programming guides/standards for Cobol (the ones used in IBM mainframes/AS400)
esp those with good practices like:
a) proper input validation (eg: to mitigate against XSS & injections)
b) avoid hardcoding passwords &  IP addresses in the codes
c) enforcing session timeouts (session idle is forced to logout)
d) exceptions handling (so that under exceptions, the program doesn't bomb out, possibly to OS)
e) ...

Q2:
For .Net & Java, we used Fortify to scan the codes;  is there equivalent scannners for Cobol?


========================  Past links I got from EE BTan =====================================

https://www.sans.org/security-resources/posters/securing-web-application-technologies-swat-2014-60

https://www.owasp.org/index.php/OWASP_Java_Table_of_Contents#J2EE_Security_for_Developers

 The most common is use of OWASP recommended ESAPI in various lang for secure coding adopted by organisation practices https://www.owasp.org/index.php/Category:OWASP_Enterprise_Security_API
0
Introduction to Web Design
LVL 13
Introduction to Web Design

Develop a strong foundation and understanding of web design by learning HTML, CSS, and additional tools to help you develop your own website.

I am trying to build a DDL statement off a COBOL program layout.  I have never used COBOL syntax before.

I AM NOT SURE WHAT PIC X(26) , PIC XX OR PIC X MEAN?
Example:
Cobol layout
TIMESTAMP                  PIC X(26).                        
CPIS_CMPY_CDE              PIC XX.                        
DCH_CAPSIL_CMPY_CDE            PIC X  

New ddl statement in Teradata
TIMESTAMP                  char(26)                        
CPIS_CMPY_CDE           ?                
DCH_CAPSIL_CMPY_CDE            ?

i HAVE INCLUDE A TEXT FILE OF THE COBOL LAYOUT I TRYING TO CREATE DDL STATEMENT.
CAPSIL-MA-Layout-Mar10.txt
0
What's wrong with this Fortran90 program? I can't get it to compile...
HEtoGrib2.f90.txt
0
Hi Experts,

I have to fill a field in a displayfile, by fieldname
When I put the cursor on a field and press one Function key, I have to store some data from that field.
When I put the cursor on a field and press another Function key, I have to put some data into that field.

After pressing the Fxx key I know the fieldname and screenposition, but I need at least the position in the screenbuffer.


Thanks
0
I have a list of Mainframe libraries -- and I have to identify which ones are in PDSE format.

Is there a command that I can use in batch that will show this?

I have procedures to run LDR and LU commands in batch -- and hoping to find a command to identify library types.

Thanks for the help,
je
0
Hi ,

What is sync sort means , is it a utility like grep,awk ?

Please provide me basic details on how to work with syncsort .

Thanks
0
Hello,

I've heard many times that Fortran is a programming language still usefull, even so it is more than fifty years old. Also I 've read that it was mainly applied to IBM mainframes for bank and finance businesses,

Is it still in that way? Is it only used for banks and for programming mainframes?
0
Hi I need to translate leagacy Pl/I code to Java. The legacy code has files as input and output. How do i convert it into object oriented concepts? How do i create class and How do i handle them?
0
Hi,

Please help me, there is a Legacy application built on cobol, Is there is any connector which can
help us to connect cobol client application getting access to Java application...

I googled it, I saw J2ee connector ?  some of my friend inform me to go for J2ee connector, is this right approach to access java application... if any body has come across these kind of issues, Please let me know

Thanks
0
Hi,
I get the problem to the script below. why?

SELECT * FROM TAB1 where varchar($postingdate)='20150217'
Column $POSTINGDATE not in specified tables.             

Open in new window

0
Become a CompTIA Certified Healthcare IT Tech
LVL 13
Become a CompTIA Certified Healthcare IT Tech

This course will help prep you to earn the CompTIA Healthcare IT Technician certification showing that you have the knowledge and skills needed to succeed in installing, managing, and troubleshooting IT systems in medical and clinical settings.

Hi Experts,

I am generating a feed file for downstream application where one of the data is of type S9(15)V99. The downstream application is Mainframe based. I need to understand how to represent 5000.00 in the type S9(15)V99?

Best Regards,

Prashant
0
Hi guys: Can any one please describe that where we use this in mainframe programming?

Thanks
0
Hi guys: Can any one please help me in that error?  Thanks
sfl.png
pf.txt
sflerrs.txt
rpgcode.txt
0
Hi guys: Can any one please help me in that error?  Thanks
spoolfile.txt
rpg.txt
qddssrc.png
pffile.png
0
Hi guys: Can any one please help me in that syntax error? Thanks
spoolfile.txt
rpg.txt
pffile.png
qddssrc.png
0
Hi guys: Can any one please help me in that syntax error?  Thanks
screenshot.png
0

Mainframe Languages

356

Solutions

429

Contributors

There are many computer languages, and they have been evolving from machine language into a more natural way of writing. Languages are generally classified into machine language (direct machine code); assembly (using mnemonics to present the instructions to be translated later into machine language by an assembly program); procedural languages, also known as high-level languages (HLL) (Pascal, FORTRAN, Algol, JCL, COBOL, REXX, PL/I, Basic, and C are common), along with several other types. Mainframe programming is largely done in the procedural languages.

Top Experts In
Mainframe Languages
<
Monthly
>

No Top Experts for this time period. Answer questions to earn the title!