Background Parsing

When you work with a remote COBOL project, most of the processing such as program compilation and debugging takes place on the remote server. However, background parsing takes place on your local client machine and this architecture might result in parsing errors due to differences in local and remote environments.

The following are examples of when you might encounter parsing errors:
Using copybooks
The source code environments are different.
Using environment variables
If the project build is using environment variables, it is likely that they are different in the local and remote environments.
Using the Pre-complier
The software environment used in the build is different in the local and remote environments.

These parsing errors do not affect the program build. However, you can remedy the problem depending on the nature of the parsing error. For example, if you encounter parsing errors when using copybooks, you can create a softlink to the copybook on the remote machine.

From a command line prompt on the remote machine do the following:

  1. Change to the project directory:
    cd projectdir
  2. Create a softlink on the required directory or individual file:
    1. On a directory:
      ln -s $COBDIR/cpylib/ cpylib
    2. On an individual file:
      ln -s $COBDIR/cpylib/copybook.cpy copybook.cpy

Background parsing does not trigger in all cases

This happens only to files that are already opened and are being edited in the COBOL Editor. The background parsing is not triggered (in all cases). Sometimes it shows errors that do not exist or hides existing ones.

For example:

  1. Open two COBOL classes in the editor (CobolClass1 and CobolClass2. And CobolClass1 uses an artefact (A2) from CobolClass2).
  2. Delete A2 from CobolClass2.
  3. Switch to the CobolClass1 window in the editor.

    No error will be displayed in the editor until background parser is triggered for CobolClass1 (when you edit CobolClass1 or reopen it).

Note: If you start a build the error won't be visible in the Problems view and the Console but the error will still be visible in the editor until the background parser is triggered.