cobol

Cobol v6.2 NUMCHECK option compatibility

試著忘記壹切 提交于 2019-12-06 21:10:34
We can't turn off the NUMCHECK option for our new COBOL V6.2 compiler because we can't trust the content of our numeric variables. The problem is, that when we turn it on, it's not fully compatible with the COBOL 4 we had previously at our organization. Specifically - when an unsigned packed variable contains X'123C' , COBOL 4 would have accepted it and let us continue, but COBOL 6.2 with NUMCHECK(PAC,ABD) abends, and only willing to accept X'123F'. This is a real issue for us regarding assembler invoking COBOL, or reading from files and etc. Is there another option or maybe even a PTF that

Need to see if I can use my read statements to accomplish 3 types of output?

☆樱花仙子☆ 提交于 2019-12-06 16:54:01
问题 I have been asked to write program to process 2 input files (customer and employee), matching the keys of both files and producing the following 3 output files : File-1: records that are on both files File-2: records that are on the customer file but not the employee file File-3: records that are on the employee file but not the customer file My loop is set so that it checks one record in customer file against every record in the employee file and then gets another key-pair value from the

COBOL program, JCL job, or both?

心不动则不痛 提交于 2019-12-06 15:08:13
I have to preform 3 tasks: an insert, a delete, and a write I'm not sure what the best way to do this is. My mainframe program design skills aren't too tight, so I was looking for advice. Could I avoid doing a COBOL program for this? The way I see it, I just need JCL that executes SQL statements. If I design my statements correctly, then they should be able to preform tasks 1 and 2 this way. But I'm thinking I may need to have a COBOL program to write to a file? I'll overview my thought process for the 3 tasks. Each task seems similar, but they query different results, so the SQL statements

How CICS shared memory works?

烈酒焚心 提交于 2019-12-06 13:22:40
问题 I use EXEC CICS program control commands, LINK, XCTL, and RETURN in order to pass data between Cobol programm. The CICS shared memory get corrupted during one of my treatment. It seems that passed COMMAREA overwrite memory that not belong to CICS. To find why this problem occured I need to know better how CICS manage the shared memory when I use EXEC CICS program control commands. Does it copy COMMAREA or use pointer? Using nested EXEC CICS, how many COMMAREA are stored in the shared memory?

Abend Causing Line

这一生的挚爱 提交于 2019-12-06 13:08:19
Is there any way that we can find the exact line number that causes an abend ( like SO4C) from the Offset(like offset +00007D0A at address 1515CD0A ) given in the spool with the error message.? If your program is compiled with options OFFSET,NOLIST, you will have a list of verbs/line numbers in the output listing which contain the "offset" from the start of the program. The line number on the the listing which has the closest offset, but less than or equal to, the "offset" reported in the abend, is where you want to look. If you use NOOFFSET,LIST, you will get the "generated assembler" in your

COBOL COMPUTE calculation

笑着哭i 提交于 2019-12-06 09:27:59
I am executing a standalone Enterprise COBOL program with the below calculation. I am having a COMPUTE with multiple operations and another with the full calculation split up. But the results are different(the last 4 digits) in both cases. I have manually calculated these using a calculator and the result matches the one with the split up COMPUTE statements. I have tried the calculations by using the entire answer at intermediate results and use only 15 digits of the final answer and also using only 15 digits at all intermediate steps(without rounding). But none of these results match with the

COBOL level 88 data type

无人久伴 提交于 2019-12-06 07:30:11
Very basic question here. I have to write out a data glossary for a COBOL program. This data glossary includes the following details about every variable: Name Data type Range of values (if applicable) Line numbers Fuller name I have several variables that include level 88 switches. My question is this: Are these level 88 switches counted as variables, and should I include them in the data glossary? Or, judging by the data glossary structure I have to work with, should they be ignored in this context? And while I'm here, another simple question. Should fillers be included in data glossaries?

Concatenate string by its length COBOL

两盒软妹~` 提交于 2019-12-05 11:00:21
Need to concatenate 4 strings to a destination variable in cobol. Like, 01 WS-S1 X(10) VALUE "HI ". 01 WS-S2 X(10) VALUE "HOW ". 01 WS-S3 X(10) VALUE "ARE ". 01 WS-S4 X(10) VALUE "YOU?". to a resultant string "HI HOW ARE YOU?" Can anyone please help me out? Here is a working example of the STRING verb that does what you are looking for: IDENTIFICATION DIVISION. PROGRAM-ID. EXAMPLE. DATA DIVISION. WORKING-STORAGE SECTION. 01 WS-S1 PIC X(10) VALUE 'HI '. 01 WS-S2 PIC X(10) VALUE 'HOW '. 01 WS-S3 PIC X(10) VALUE 'ARE '. 01 WS-S4 PIC X(10) VALUE 'YOU?'. 01 WS-CONCAT PIC X(43) VALUE SPACES.

how to format a number to S9(5)V99 ascii in .net

坚强是说给别人听的谎言 提交于 2019-12-05 10:51:36
I've been searching for s9(5)v99 but got different information and not really clear. Could someone shows how or the formula to convert. thanks What you have shown us here is the PICTURE clause portion of a COBOL data declaration. COBOL data declarations are a bit odd and take some getting used to. Here is a link to an introductory tutorial on COBOL data declarations . This should get you started. The PICture clause you have given in your question is defining a numeric item with the following characteristics: S - Leading sign 9(5) - 5 decimal digits V - Implied decimal point 99 - 2 digits after

Why does COBOL have both `SECTION` and `PARAGRAPH`?

会有一股神秘感。 提交于 2019-12-05 09:40:31
问题 Why does COBOL have both SECTION and PARAGRAPH ? Can anybody explain why the designers of COBOL created both SECTION s and PARAGRAPH s? These have been around since the initial release of COBOL so I suspect the real reason for their existence has long since gone away (similar to things like NEXT SENTENCE which are still in the language specification for backward compatibility but no longer required since the introduction of explicit scope terminators). My guess is that SECTION may have been