Home The Company Publications Products Links Tips Jobs

CATALL Under NAT413
How to Get The Error List Only

Last update: 19 July 2007

It was very time consuming under Natural version 2.3.2 to CATALL in batch more than 10,000 objects and determine the errors. All objects are listed even if they cataloged without an error, for example:

LOGON LIB1
CATALL * ALL CATALOG CC NOREN

Program  Error Number Error Line
-------- ------------ ----------
XYT10S31    0            0      
XYT10S36    0            0      
XYT10S45    0            0      
XYM34S01    0384         0080
XYP10S10    0            0   

The catall keyword NOSCROLL of NAT413 allows to display only the errors, for example

LOGON LIB1
CATALL * ALL CATALOG NOREN KEEP NOSCROLL FULL  
Because NOSCROLL saves automatically the error list "0CATALL", a following CATALL without delete would fail with RC56, for example
Number of objects cataloged:    6422                                 
Number of objects with errors:  13                                   
This is a display of results from a previous CATALL KEEP command.    
Parameters have been taken from the previous CATALL.                 
No modules have been cataloged.                                      
To start a new CATALL, delete file 0CATALL first                     
(e.g. with 'DELETE 0CATALL').                                        
NAT9987 Natural session terminated abnormally - RC=056. 
Therefore, it is recommanded to include a DELETE statement before the CATALL, for example:
LOGON LIB1
DELETE 0CATALL
CATALL * ALL CATALOG NOREN KEEP NOSCROLL FULL
FIN 
The following display is an example of the error list only.
   Name      Type         SM  Vers  Level  User-ID   Date        Time      
-- --------  -----------  --  ----  -----  --------  ----------  --------  
-> TEST21    Program      S   .2.1   0007  XYZRXL    1995-02-17  16:07:06  
 E 4560 TERMINATE 5016                                                     
   NAT0477 Numeric value supplied is out of valid range 0:255.             
Hint1:
Don't delete member 0CATALL, if your CATALL abends and you have to restart the CATALL. An existing 0CATALL just tells CATALL where to start if you re-issue the command.

Hint2:
Darell Davenport pointed out: "When I did my conversion, I found it very useful to sort the 0CATALL by error number. This way, all the successful ones were together (and could be easily ignored/deleted), and all the same error numbers were together. By having all the same type of errors together, I didn't waste time searching for problems (like an external LDA/PDA/COPYCODE module) I had already found and corrected 20 modules earlier.

Hint3:
Helmut Spichtinger pointed out: "Instead of keeping the result list in text member 0CATALL, keep the result list in a diffrent text member by using the option:
EL [name of your text member] R
The R means: replace an existing text member, if one exits already with the same name. Replace the KEEP option by the above specified option EL. The generated text member will only contain the natural modules with errors. If you want to specify the KEEP option for any reason, you can get rid of the 0CATALL member by using USR1024N (Read results of CATALL)."

Top Page


Back to NATURAL Tips, Tricks, Techniques -- Overview