R12.1-JA-2025June05

Use Consistent Variable Tree in Diagnosis

NI involves the use of multiple variables, and provides a uniform UI for selecting variables and the display of variables.

Below is a schematic diagram of the variable tree, including all possible variables and listing how each type of variable is displayed. In real scenarios, only a subset of them is displayed according to the corresponding node logic.
图形用户界面, 应用程序

描述已自动生成

Because of the too much data contained in the variable tree, the following operations are allowed.

  • You can search for the desired variables to only display the matching variable with the matching keyword highlighted.

    Information Note: All the parent and child items of the matching variable will also be displayed.
  • You can filter the variables based on the variable type.

The available variables in different scenarios are listed below:

Available Variables for If Condition

For ‘if’ condition, the available variables are filtered from the full variable tree based on the following rules.

  • When the ‘if’ condition is not in the loop table, you can select a table variable such as ADT to perform the table comparison; When in the loop table, you cannot select ADT and other tables, but only the column variable of the current table for diagnosis.
  • In the If condition, the variable on the left and right sides of the operator can be a constant or a variable. Therefore, you can select all types of variables, including the macro variable, for both sides.
  • For device/intent-level diagnosis block, a special variable ‘Device Status Codes’/’Intent Status Codes’ is available to determine whether there is an error.
  • For device command diagnosis, the If condition has 2 more special menu items: Advanced and Expression.

Available Variables for Loop

The available variables in the ‘loop’ logic are as follows:

  • All parser tables, compound tables, and built-in tables of all device commands
  • ADT
  • Global table/List
  • Local table/List of the current diagnosis
  • Global neighbor table
In the diagnosis loop of the current device, you can also select the table/list variables of other devices. For the intent-level diagnosis loop, you can select the table/list variables that do not belong to intent device variables.

图形用户界面, 应用程序

描述已自动生成

Available Variables for Expression

The expression generally refers to the expression on the right side of the ‘Set Variable’ logic, the inline expression on the left side of the ‘if’ condition, the expression in the formula column, etc. And it also supports for the variables of the list and object.

If you select a parser variable or compound variable in expression, you can select the data source for the variable (current/last/baseline) in the ‘Source’ area.

Available Variables for Specific Logic

For some diagnosis logics, you only need to select a specific type of variable.

  • In follow-up intent template settings, you need to determine the target device by selecting a variable of device type, such as hostname (string) and IP address (string).
  • In the ‘Draw Map’ logic, you need to specify the target device or map.
  • In a loop, you need to select a table or list variable.

Available Variables in Compound Variable Definition

For expression defined in the compound variable, the UI and logic about selecting variables are the same as ‘Available Variables in Expression’.