Behaviour if user-message doesn't exist...

Hello all!

The Natural documentation says:

We are on lanuage code 2 and treat the n000-messages in our language as normal messages. But if the program issues a message that doesn’t exist, the regarding n000 of language code 2 appears (which doesn’t make sense in our case).

My question: Do I have any influence on this behaviour?



The quick answer is to enter the SYSERR message for message number nnnn for language code 2 so it finds it. No program should be written to throw a message code that has no text… that should be detected in the QA process.

But I have not heard of any way to change the message hierarchy. The only things you can control is the existence of error messages and the steplib structure of your applications. For example, you can define message MYLIB nnnn which will apply to all code running from MYLIB. If no other steplibs exist besides the default SYSTEM, then it will look for SYSTEM nnnn. You could have other steplibs in your environment.

Aside from that, if it doesn’t find SYSTEM nnnn for language 2, it will look for SYSTEM nnnn in language 1, then it will look for SYSTEM n000, and that is built in.

You’re right. Most of our Natural programs are 15-18 years old. If I would set up a QA process for this code, I would use predict to count references to error numbers. But most of our message-references are dynamic. So I think there is no easy way to find out referenced but non-existant message numbers.