Rational Developer for System z has built-in tools and functions that locate program dependencies on the MVS file system by using the specified SYSLIB as the search path. Some of the tools that use SYSLIB as the search path include project build, remote syntax check, content assist, show dependencies, open copy member, and remote debugger. When you store your source files in the Rational Team Concert for System z source control repository, you can choose to extract a subset of the source file base into the file system location specified by your data set prefix on z/OS (your z/OS sandbox). However, if your programs depend on members that Rational Developer for System z searches for using SYSLIB as the search path, those members will not be found unless you manage the dependencies manually.
There are several ways you can manage dependencies manually. The recommended best practice for managing dependencies is to maintain a team z/OS sandbox that contains a full copy of the source code base and periodically run a Team Build that specifies a team data set prefix. For example, if your data set prefix is USERID, the team prefix could be BUILD or COMMON. You can set up your SYSLIB so that it always uses your prefix first and then the common prefix data sets. With this setup, anything not found in your data set, will be found in the team data set. To use this method, your team build has to be set up to use a team repository workspace that automatically accepts changes from the stream. If you schedule the team build to run several times a day, you will have the latest versions of the source always available on the file system so that Rational Developer for System z dependency functions can access them.
You can also manage dependencies by requesting a personal build using your repository workspace and your data set prefix prior to starting development with Rational Developer for System z using that same data set prefix. However, if you use this method and the dependencies are updated after you run your personal build, your sandbox will not contain the most up-to-date versions of those files unless you run another build and accept all of the changes into your repository workspace.