The Dependency Analyzer provides you with an overview of the
complexity of the CDS entity with regards to the SQL definition.
This means, you can see which database tables are used by your query to select data from
the database and you can easily identify redundant joins which might negatively affect
the performance of your query.
The Dependency Analyzer recursively analyzes the data sources and also displays the
indirect dependencies to other database objects in the SQL Dependency
Tree tab.
Figure 1:
Calculated SQL dependency tree
The data sources involved are determined recursively and the result is displayed in a
tree structure. As data sources, the following entities are possible:
- CDS Views
- CDS Table Functions
- Database Views
- Database Tables
The following relations are considered in the dependency tree:
- (SELECT) FROM
- Joins: INNER, LEFT OUTER, RIGHT OUTER
- Joins resulting from using Associations
- Set operations: UNION, UNION ALL
This view also provides you with additional functionality to:
- Refresh the dependency tree, for example, after modifications have been made and
the source has been activated
- Expand/collapse all nodes in the tree structure
- Navigate to the listed data sources through double-click or using the context menu
- Export the dependency tree into a local CSV file
- Search for data sources within the tree structure
Example As a developer who implements CDS views, you may not always be aware of the
real JOIN behavior of the view definitions at database level – For
example, the number of JOINs generated when you use Associations in
a CDS view.