Reverse Call Graphs for PowerBuilder

What is a Reverse Call Graph?

Reverse Call Graphs represent calling relationships at multiple levels.

  • Nodes represent objects/methods.
  • Arrows materialize relationships between callers and callees.
What is Reverse Call Graph?

Note:

  • The relationships are in the opposite direction of a Call Graph.
  • Results are similar to Impact Analyses, but with multiple levels.
    Reverse call graphs can be considered as recursive Impact Analyses.
  • if you’re not yet familiar with Visual Expert,
    you can start with Impact Analysis, easier to use.

Why use Reverse Call Graphs?

  1. Analyze the consequences of a change at multiple levels.
    Reverse Call Graphs give a deeper vision than a (single-level) Impact Analysis.
  2. Understand the inner working of your application.
  3. Debug anomalies of program execution.

How to Generate Reverse Call Graphs?

Please follow the steps below to generate Reverse Call Graphs as tree views:

  • Select a PowerBuilder method or a Database Object.
    This will be the starting point of your Graph.
    Select PB Method or Object for Reverse Call Graph
  • In the navigation bar, Click on [Impact Analysis - Reverse Call Graph]
    Reverse Call Graph Button
  • The result is displayed as a treeview.
    If you select an item, references to callees are highlighted in its code.

    Example 1:

    Reverse Call Graph Button

    Example 2:

    Reverse Call Graph Button
This example shows a Stored Procedure called by a Datawindow, a PowerBuilder clicked event, and another stored Procedure (“ProductsByCustomer”). This second procedure is called itself by another clicked event.

 

See Also

Visual Expert 2021, PowerBuilder, Code Analysis, Impact Analysis