Resolving Program-to-Program Calls

When resolving call relationships between programs, it is possible to reach a point where there is more than one candidate for a called program. In this case CA works the same way as with includes (see Resolving Include Files), but since the program objects themselves don't have folders, the folders of the source files that generated them are used.

Note: This same algorithm applies to any relations between non-legacy entities (e.g. PROGRAM reads TABLE, TRANSACTION starts PROGRAM, etc.).