This video shows how to code a simple REXX Program for IBM Mainframe 3270 in less than 5 minutes. The software used can be found here:
REXX language is a very important milestone of the past and future system programming under IBM mainframes technology.
Enjoy the webcast!
welcome to everyone at this webcast in this tutorial I will show you how to code the RX program Rex is an older language that came from like COBOL and is it with the IBM environment it's use inside a mainframe 30 to 70 and it's a very useful and powerful language for mainframe programs I will now introduce you a program that I used for many years and the program is called builders heaven with this program you'll be able to code rx in less than five minutes so let's begin I've already downloaded and the stylet builder 7 builder seven can be found at builder 7 dot Alta Vista org and you will see a site that is this you go to the download section and download builder 7 ok I've already installed and configured this application so it's easy I don't we'll spend time about this matter what I will spend time is how to configure your first Rex program or maybe your first fast Rex program let's go to the program braze parameters what I have to do when I came at this panel is to create a new program so I click new program I choose the language that is Rex of course and I say ok every information about the previous program will be deleted ok ok here we are our first Rex begins with the name of the Rex we have to insert in this text box we will call it a Rex number one the color language that can be changed at any time will be of course Rex and here the description this is my first Rex program I will purchase one file input and get one file out we can choose between two options in this program we will choose that to use the basic option that is batch Rex so we'll have a batch program in Rex mode we don't want JCL JCL is the either to execute a Rex in this case is not important we disable this checkbox we will keep comment comment make your code more clear more readable and I always love it to have some comments that separate the section one between the others so I will leave comment constant is another option that is built-in inside the software because a also reacts like cobble and easy trip didn't have a constant constant are so stored inside an area that is compare it at the end of the program and a control will check if they are equal I don't want these options for now so I disable constant now we can customize very very many options but we will concentrate it about input files I will choose an input files and output files I can define some details of the input files clicking details so I click details and a file name will be required this former is a standard and provide basic information so input input f1 file input with soccer result it's just for example you can put your description and keep it in mind when you will get the final program I will click OK output file detail I will put a name or just use the fold in this case I will I will write out soccer sock out soccer number one output file of soccer soccer and goals I can choose to create my output file in Excel a standard mode Excel standard model is for Excel so you will have in mind to export the data into a CSV file you will have to check this box in this case we will create just a simple text file with some proaches we click OK at this time the software is already configured for a basic input and output batch mode in a racks language with comments no other options has been selected we click OK we have configured and set up our programs we have now to generate the code and see what happened generate the program in this panel we can see the name of our programs Rex and error 0 1 and R 0 1 and what we have to do is to click go to create the program go a quick process the program has been completed we can preview the program clicking program preview here we are also like Codel Coble and easy tree of programs there are some variables that are configured are configured inside the main set up inside builder 7 we don't need these variables for now so we delete them this is the descriptions of my program the program is Rex and are at 0 1 the data the programmer the company some destination company variables that must be configured inside builder 7 and finally our description this is my first Rex program I will purchase one file input and get one file output with this logic scheme you can understand that what the program does in just 10 lines there is an input file a main process done by rec center 0 1 and an output file so this is just a comment area let's go on this is a trace trace is useful for the bug and you can configure with Oh air I to get level details of tracing it's all a recs a matter about debugging and programming your software we can see at the beginning the input file definition we use stems for input file definition and as cobble and is it River and many mainframe programs it's a older configure to be raided record by record one by one and process it one by one this is a way that is cheap about resources and there is quick about the environment about processing here we have a our output file one output file of suckers and goals also in this working definitions we have a stem a stem of a Rex call ed out sock zero one at this part common says wing we have meet the counters so we can get the counters and they see that they are defined inside stem Rex ever it done declaration so we must not define this variable they can be declared inside of this context this is another stem this is a working section with a a couple of working variables also thus Crider here a module section that I not need that you use in this case so I can delayed and the main at this point the program begins every programs is divided into initialization area a process area and the closing area the main process will be used to make the main functions of your program the initialization is the first colored area and the closing are determination process we will see now the main process so we have a file input I want that at the process I want to read the file input so I uncommon this procedure this is my beginning and I will ever a commented file output for writing the records I will cut this section and I will search for this process it's just here I will pass the the right file so we just have to complete the basic logic to works for our program and here we can understand that we are processing the input file every input file is read one record by one so we see the input row that is our record and we decide that our output file will contain exactly the input row here we are there is also a way to understand how many record has been processing you can setup this number and have a trace a log about every 10 1000 record process of the input file 1 so i've already set up the number and I can delete some comments comments help us to complete the program of course advanced set programming requires advanced add logic and the you can the build and construct every routines by your own now we can go through the area quickly this is the input a reading of the input file this is the writing that writes one record of the output file reading from the stem we have populated at the rows before here and here find find our stem is written inside the output file with a exec IO common we can go further because this function are already complete at last we can see the in it the image should be put at the beginning but also we want to throw inside the logic of the program so we can decide to get it at the end at the beginning on where we want in the init we can find the open of the input file and the open of the output file and of course a log that the program has begun we can now see that the file has been opened we don't need a location of file because the file will be put inside the JCL it's a function of the JCL and we cover further about the open of the output file also in this case there is no necessity of allocation allocation is a AV proaches and the racks can be dynamically used for allocating file a final enclose a pair form is used here to display the counters and the closing the files we have open it during the process during the program the clothes is already completed the perform a completed function so we don't have to make any changes inside of this section at the end of the program will be terminated with that zero return code that is positive a good determination of course there could be 99 termination maybe under the error section that the show house that the program has be wrongly terminated also if we have a previously allocated the file we should uncomment the free of allocation we don't have done like this so we can delete the free allocation instruction here we are a counter display that is built-in and show you how many records of the input file how many records of the output file and how many errors in contract during the running of the program at last some basic extraction for ESP F comment or ESP F common silent without any test of the return code some TSO comment some silent ESL without the test of a return code for example our function that can return false and we can understand inside the logic of the program about the return code so we want to use a silent in other way if we want to be sure that a function for T SEO is a write fully coded we show the test automatically this return code and so the error the error can be a little configure showing some working variables at this example we don't have a working variables and we can delayed this area the program at this point is completed when the error occurs you can call the terminate program with 9999 is a return code that means that you are in error and I will be put Sharrod inside your mainframe to see if your program return 0 or return 99 at the end of the process the Rex program is completed we have seen how to manage one input file and one output file we have created the program in less than 5 minutes I thank you for watching we save this file and then go to mainframe thank you for watching ciao