Print ArticlearchiveClose Window
Unisys Developing Agility
Unisys Developing Agility

Engineering Corner: Agile Business Suite Cross Reference Utility

By Nigel Tunnicliffe, Architect, Unisys


Nigel Tunnicliffe

Many of our clients have developed very large, complex systems in Agile Business Suite – applications they are continually evolving and enhancing to address new requirements and incorporate new features. The AB Suite development environment has excellent searching options, but even with these capabilities, it can sometimes be difficult to assess the overall impact of such changes.

The AB Suite cross reference (XREF) utility is designed to address just this type of requirement. To that end, it can help you
answer questions like:

  • Where is this data item updated?
  • Where does the system purge records from this structure?
  • What other methods does this routine call?
  • How did we end up at this line of logic?

In short, the XREF utility is ideal for architects and system designers who need to examine an AB Suite application to determine the impact of a change. It’s also a great resource for developers trying to work out why a particular line of code was executed.

Overview

The XREF utility reads a Public Model (PModel) definition of an AB Suite application and uses it to populate a custom Microsoft® SQL Server® database with information from the PModel. A Microsoft Windows® application then reads the SQL Server database in order to display the data for further analysis. This application uses Microsoft Visual Studio® style “docking” windows, which let you adjust the display to suit your needs.

Note that the ability to create PModel files from an AB Suite application is not part of the standard AB Suite product set. An additional (free) license is required to add this feature. For further details on how to obtain a PModel license, please contact us at ABSuite@Unisys.com.

Example Queries

The images below illustrate the types of queries that can be performed using the XREF utility.

What other structures does this Ispec read?

Where is the Ispec “CMS01” updated?

Where is the data item “SP_BEGCE06” used?

Where is the database file “BEE07.USER_ID” updated (i.e., which field is updated as a result of a “Flag” or “Auto” command)?

Which lines of code contain the words “START” and “WFL?”

How did we get to this particular line of code? When debugging a problem, a developer typically knows where the problem occurred. But, it can be difficult to establish how and why the system ended up executing a specific line of code. The XREF utility can make it easier to understand the logic flow by drilling down through the conditional statements and methods called to show only the lines of code where the problem occurred.

For instance, in the image below, the method “LP_C_JUMP” will only be called if two nested conditions are true. Within the logic for LP_C_JUMP, the system will only perform the LookUp if another condition is true.

In addition to these top-level searches, you also have the ability to drill down into a given page of results. For example, highlighting and right clicking any data item in the logic panes will display a popup menu that allows you to search for uses of the selected name in the entire model, the current Ispec/Report, or the current method.

You can also search within a list of search results. For example, the search for all uses of “GLB.ZEROS” may return a result similar to what’s shown below.

Now, say you want to find only those lines of code that use a particular data item – and also reference GLB.ZEROS. To do so, simply right click in the search results pane on the left, select the option to search for a word within the list of results, and enter the data item name. This produces a finer set of results, as shown below. If need be, these results can be filtered yet again for an even more granular set of results.

Other features available in the XREF utility allow you to:

  • Export the results of a search to a CSV file, so they can be passed to other members of the development team for further analysis
  • Print the results of a search
  • Capture the image of any search panel on display
  • Export the format of a structure as a table you can then paste into a Microsoft Word document or attach to an e-mail
  • Generate the C# (or VB.Net) code to represent an AB Suite group item

Getting a Copy of the XREF Utility

The XREF utility is delivered as a service. The package includes a copy of the XREF executable plus training on how to install the utility, build XREF databases from a PModel, and use the utility’s features, along with a license file that is valid for one year.

Note that there is no SLA for bug fixing included in this service. If a problem is found, we will make commercially reasonable efforts to quickly correct it, but we cannot guarantee it will be fixed or in which timeframe a fix may arrive.

Special thanks go out to AB Suite client Achmea for allowing us to use screen shots of their application IKAZ after it was loaded into the XREF utility.

Copyright © Unisys 2015 | Privacy Policy | Terms of Use | Unisys.com