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

dynamic db2 in cobol using varying list
0
Experts:

We have an IBM AS/400 Version 7 revision 2 in house that does not accept connections from anywhere but 192.168.1.XXX (as you can imagine, this is the subnet it is on).  If I take traffic coming from, say 192.168.2.1 and NAT it to a .1 address, it works fine.  If I have it connect directly, no joy (not even a response to pings).

I'm trying to determine if this is caused by the 400 actively rejecting the connection (as in a setting or a system limitation) or if the 400 simply cannot communicate back because of a need for a static route or something.  Does anyone know if an AS/400 can be set to actively reject connections outside of its own subnet, and if so, how do I change that?

Thanks!
Matt
0
Hi Experts,

Not a real question but a remark / warning
I discovered an error in a RPG calculation... I use this for years, I don't know How often this happend,
and howmany unhappy customers I have :)

I discovered that the following calculation gives an incorrect result:

Result = 60 / (10**2) = 0,599999
Result = 60 / (10**2) = 0,0599999

While:
Result = 60 / (10*10) = 0,60
Result = 60 / %int(10**2) = 0,60

Conclusion %int(10**2) <> 10**2

This goes wrong for all figures ending with???
I did soms tests and first it look like that every multiple of 3 is wrong,
3, 6, 9, 12, 15, 18, 21, 24

But 27 is Oke and after that the range continues with:

29, 30, 31, 35, 36, 37, 41, 42, 43

For total range see attached file

Column NORM = #Nbr / (10**2)
Column INT  = #Nbr / %int(10**2)

Open in new window


(I can't post this with 0 points)

Regards,
Murph
1to100.txt
0
In IBM z/OS assembly code, I'm trying to understand how to give the assembler the base register. Do you know how to do that?
0
what is the meaning of Cond Codes in JCL

JCL COND Codes are used to execute steps based on the condition that previous executed statement does not have

specified return code.

For example COND=(0,NE)- It means that if the return code (RC) of every previous step is equal to zero then
execute this step.


Am I right or I have missed something. If no then please explain it with an example.

Regards
Karan Gupta
0
I would like to group users which have a variety of security levels, initial menus/programs, etc.  Really they aren’t related except they are all in one division.  I need to identify their division from the user profile.  We don’t do job accounting.  Is there a down side to entering unique values in the field to group them?  (Except, if we want to start using job accounting someday in the future.) System value for job accounting is *none.

Thank you!
0
Is there any industry-wide accepted value that provides a comparison of C# vs COBOL number of lines of code? In other words, I am trying to figure out if there is any methodology/proven tool or technique that says x number of lines of C# code is equivalent to y number of lines of code in COBOL. The assumption, of course, is that both C# and COBOL code implement identical functionality.

Any credible links that discuss this will also be helpful.

Thanks in advance.
0
I'm trying to prevent users from passing through from iSeries A to iSeries B and then passing through to iSeries A again.  Is there a way that I can programmatically determine if the user is passed through from a remote iSeries so that if they are, I can display an error telling them to end their passthrough first?
0
I have date given in this format : Wednesday, 3 AUG 2011.
I need to convert given dates in the above format to Julian date format yyddd in Rexx.
Can you please help me with the code?
0
I am trying the below to convert  10 Jun 2011 format to standard format (yyyymmdd)   I am getting error : Incorrect call to routine  . What could be the problem?

/*********REXX*************/
dd = 10 Jun 2011            
d = ''''dd''''              
say  d                      
 i = Date('S',d)            
 say i                      
0
/* REXX */

i = 1                                                        
t.i = 'hello    S A N Y' ; i = i+1
t.i = 'Helloamit     D A N N'   ; i = i+1
t.i = 'hellorohit  R A N N'   ; i = i+1
t.i = 'amit     S A N N' ; i = i+1
t.i = 'neha     S A N N' ; i = i+1
t.i = 'hellorohit  R A N N'   ; i = i+1


parse upper arg auto .

returnVal = ""
do tx = 1 to i          
  say "***" tx t.tx "***"
  if translate(word(t.tx,1)) = auto then do
    Return all rows that start with hello.

/*Auto = Hello*/
0
Hello...I need your help, again.
my printing will crash...I have enclosed the complete call stack.
The user clicks on this button
OnBnClickedButton_Drucken()
and I am calling Drucken_weiss() to start printing.

Can you help me to find out what the error means.
500 points.
Best regards,
Thomas

still learing this difficult printing thing






>my call stack	

mfc71d.dll!CGdiObject::Attach(void * hObject=0x770a068f)  Zeile 1102 + 0x3	C++
 	mfc71d.dll!CFont::CreateFontA(int nHeight=-40, int nWidth=0, int nEscapement=0, int nOrientation=0, int nWeight=600, unsigned char bItalic=0, unsigned char bUnderline=0, unsigned char cStrikeOut=0, unsigned char nCharSet=' ', unsigned char nOutPrecision=' ', unsigned char nClipPrecision=' ', unsigned char nQuality=0, unsigned char nPitchAndFamily=0, const char * lpszFacename=0x0066a080)  Zeile 166 + 0x4f	C++
 	Stockbruegger.exe!CAuftragsHistory_Lieferschein_Dialog::OnBeginPrinting(CDC * pDC=0x0012e914, CPrintInfo * pInfo=0x0012e898)  Zeile 2052	C++
 	Stockbruegger.exe!CAuftragsHistory_Lieferschein_Dialog::Drucken_weiss()  Zeile 1978	C++
 	Stockbruegger.exe!CAuftragsHistory_Lieferschein_Dialog::OnBnClickedButton_Drucken()  Zeile 1647	C++
 	mfc71d.dll!_AfxDispatchCmdMsg(CCmdTarget * pTarget=0x00fb9b90, unsigned int nID=1029, int nCode=0, void (void)* pfn=0x004ccea0, void * pExtra=0x00000000, unsigned int nSig=53, AFX_CMDHANDLERINFO * pHandlerInfo=0x00000000)  Zeile 89	C++
 	mfc71d.dll!CCmdTarget::OnCmdMsg(unsigned int 

Open in new window

0
i = 1                                                        
t.i = 'hello    S A N Y'                             ; i = i+1
t.i = 'hi     D A N N'                             ; i = i+1
t.i = 'rohit  R A N N'                             ; i = i+1
t.i = 'amit     S A N N'                             ; i = i+1

parse upper arg auto .

 do tx = 1 to i              
    if word(t.tx,1) = auto
            then return(t.tx)
    else if auto = '*'

Here I want to return all rows in the above mentioned list. Please help
0
Hello,
I have a printer with 3 printer tray. One with white paper, one with red paper, one with green paper.
I would like to print one copy in red and green.
with dev->dmDefaultSource=DMBIN_AUTO;
 or dev->dmDefaultSource=0; I will print white

 dev->dmDefaultSource=1  I will print red
 dev->dmDefaultSource=2  I will print green

Is it possible to change that....so when all white pages are done then the printer will do the same in red and green.


The only thing I come up with is to call 3 functions with different  dev->dmDefaultSource values.
It is possilbe to change that in only one function =OnBnClickedButton_Printing()
500 points with a solution.
Thank you for your help. Printing is difficult.
Best regards,
Thomas





void CAuftragsHistory_Lieferschein_Dialog::OnBnClickedButton_Printing()
{
      
       HANDLE hDevMode;
          HANDLE hDevNames;

   if (GetPrinterDevice(_T("\\\\DSERVER\\Brother HL-7050 series"), &hDevNames, &hDevMode)) //  
     {
          AfxGetApp()->SelectPrinter(hDevNames, hDevMode);
          CPrintDialog dlgPrint(FALSE,PD_PAGENUMS|PD_USEDEVMODECOPIESANDCOLLATE , this);

      //--------------------------- Papier Auswahl DEVMODE ----------------------------------
          if(AfxGetApp()->GetPrinterDeviceDefaults(&dlgPrint.m_pd))
          {               
                    LPDEVMODE dev=dlgPrint.GetDevMode();
                GlobalUnlock(dev);
      
              dev->dmOrientation=DMORIENT_PORTRAIT;  //Hochformat
              …
0
I need to develop a query to fetch all the distinct VAL for each CLAS. There are multiple CLAS and same VAL repeated  in the below list and i need only the distinct VAL for each CLAS. If all occurrence of the VAL under a CLAS are same, then i dont need to fetch anything.  Any help in figuring out a query is highly appreciated.


                                                   
                                                          
              STATE           
 CLAS         CODE   TYPE  CODE    DATE               VAL        
 ----------  -----  ----  ------  ----------  -----------       
 A00007      NV     MED           2006-07-01     1.000000       
 A00008      IL     LFE           2006-04-01     1.000000       
 A00009      IL     LFE           2006-04-01     1.000000       
 A00009      IL     LTD           2006-04-01     1.000000       
 A00009      IL     STD           2006-04-01     1.000000       
 A00012      TX     MED           2006-09-01     1.000000       
 A00013      CO     LFE           2006-04-01     1.000000       
 A00013      CO     LTD           2006-04-01     1.000000       
 A00013      CO     STD           2006-04-01     1.000000       
 A00014      CO     STD   BV63    2006-06-01     1.000000       
 A00014      CO     LFE   BY82    2006-06-01     1.000000       
 A00015      CO     MED   BA79    2006-01-01     1.000000       
 A00015      CO     MED   BA80    2006-01-01     1.000000       
 A00015      CO     MED   BA83    

Open in new window

0
Hi Experts,

It's so sad that there isn't any RPG question for a long time, so I have one :-D

On this moment I'm processing XML files with an external tool. This tool give null values for every missing XML-tag. Therefor I needed to create a physical with all fields with null-capability attribute.
The easiest way to get rid of this null-values, is making a identical file without null-capability and do a copyfile, no programming needed :-)

Is there an easy way to get this done with RPG? I know that I can compile the program with the null-capable option and that works for input files, but the moment I like to use this file as update, I get some problems.

How to solve that.
0
Are there any COBOL to .NET converter programs, that convert to C# or VB.NET.  The COBOL version, that I have is IBM CICS, so if anyone knows or has done such a conversion or any other methods.  If there are any shareware or open source projects, that also would be helpful.
0
What I am trying to do should be simple and straightforward, but I can't figure it out.
My UniBasic application simply needs to create a new temporary text file and add data to it.

The documentation says I can use "WRITESEQ" with the "APPEND" option to create a new file, yet also says I must first use "OPENSEQ" to open the file!  But since there is no file to open, then OPENSEQ crashes with a fatal error and the file variable needed by WRITESEQ is never initialized.  Also, there is no way in WRITESEQ to specify the name of the new file it would allegedly create; it wants that "file variable" instead.

I am aware of the UniData CREATE.FILE command, but that creates a hashed file and also an entry in the VOC file, neither of which is desirable.
0
Hi Experts

How to configure CICS to act as conversational or no-conversational modes ?
Is it inside the program or at OS itself ?

Thanks in advance
0
Hi Experts

Some days ago I've asked about compilation and linkedition of mainframe cobol code.
I have a doubt about the CALL command, since it could call programs inside other locations

My doubt is : could a program call another program at other libraries ?
If so, how to configure it ?

According to:
Library :   built around the concept of a three tier  layout to a dataset / file name
project - The catalogue High level prefix under which the dataset is stored.
group - The basic name identifier of the dataset
type - a third level indicating the type of data being stored
Member - for a PDS(e) Partitioned Dataset the name of the element actually containing the Data...
0
Can anyone help me to write a technique that can convert numbers like -122.68 to hex format..?
Preferably in DFSort. Any help in this regard is highly appreciated
0
Hello,

I have an old fortran program that does a bunch of calculations based on 10 input variables.  there are many DO loops and IF statements through out the source code.

is there a program out there or service anyone has used to convert the code from fortran to javascript.  

the ultimate goal is to turn this old dos program into a web interface since it is just calculations and nothing else.
0
I work in an AS 400 COBOL shop. We don't have AFP. Is there a way for a printout  (spooled)
to have different fonts, graphics, colors, etc.?
Without buying additional software. If so, could you show some sample code so I can get an idea of how to proceed?
Any help would be greatly appreciated.

Thanks,
MLS
0
Hi Experts

I'm returning to continue my learning about Mainframe
How to construct and use library on Mainframe ?
I mean: since I've construct a set of procedures that coud be used by other modules, how to link and assemble them ?
I think it's possible to obtain someone else library and make it accessible to my own programs, ok ?
Could you please give an overall instruction to do that ?
The used "catalog" term has connection with what I'm mentioning ?
Thanks in advance !
0
I an trying to convert julian to gregorian in DFSORT.
//SORTIN   DD *       
10223                 
/*               

Open in new window

//SYSIN    DD *                                 
  SORT FIELDS=COPY                              
  INREC BUILD=(1,5,Y2T,TOGREG=(Y4T(-)))         
/*    

Open in new window

 
Can anubody tell me why it is not working..?                                          
     
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!