Creating a Calculated Descriptive Indicator

A descriptive indicator is an indicator that has a distinct set of values that can be detected but not measured in numbers. For example, if you have an indicator that measures tire condition, a list of possible values for the condition of the tires would be “Good Condition,” “Slightly Worn,” or “Threadbare.”

VB.NET and C# Scripts

You can set up a calculated indicator that will produce a descriptive value as the output. To do this, enter a function using VB.NET or C# code and Boolean logic. You should be familiar with VB.NET or C# before creating indicators of this type.
For example, consider a descriptive indicator that can have any one of the three following values:
In the formula below, the value of the indicator is set based on two numeric inputs: Input1 and Input2. If the value of Input1 plus that of Input2 is less than or equal to 100, then the value of the descriptive indicator is set to “Normal”. If it is between 100 and 200, it is set to “Fair Condition”. Otherwise, it is set to “Worn Out”.
For example:

VB.NET

If Input1 + Input2 <= 100 Then
Return “Normal”
Elseif Input1+Input2 > 100 And Input1+Input2 < 200 Then
Return “Fair Condition”
Else
Return “Worn Out”
End If

C#

if (Input1 + Input2 <= 100)
{
return “Normal”;
}
else if (Input1+Input2 > 100 & Input1+Input2 < 200)
{
return “Fair Condition”;
}
else
{
return “Worn Out”;
}

Stored Procedures

You can enter the formula for a calculated indicator in APM as a VB.NET or C# script. However, if you need a complicated calculation requiring extensive or complex processing, you can use a stored procedure. At run-time, the indicator is recalculated in the normal way, either manually based on an input or based on a recurrence pattern.
When calculated, the value of the inputs are fed to the stored procedure. The stored procedure must return either a number or a string, and this value is used to create the reading for the indicator. If a calculation fails, a reading is still created, but it is flagged as “Invalid” and the appropriate reason for the invalid reading is noted.
When defining the indicator, provide the name of the stored procedure and calculation inputs with names that correspond to the parameters used in the procedure. A calculation input and its parameters must use the same data type, and the procedure must include a return parameter that is either a string or number. You can create calculation inputs for stored procedures as you would for a VB.NET or C# script, except that the inputs cannot use the array aggregation type.
Note: When using Date and DateTime data types, be aware that the Date type uses the enterprise time zone, and the DateTime type uses Coordinated Universal Time (UTC).
This topic explains how to create a calculated descriptive indicator. For more information on using functions in calculated indicators, see Functions and Logical Operators.

To Create a Calculated Descriptive Indicator

1.
Open the asset that needs the indicator. Select the Inspection Management view, Indicators tab.
2.
Click New. The Create New Indicator dialog appears.
3.
Select From scratch and click OK.
4.
5.
On the Properties view, General tab:
Select a descriptive indicator type from the Indicator type list. The window changes to reflect the value type.
6.
Select “Calculated using a formula” in the Collection method list. The Calculation tab is added to the window. For example:
7.
On the Collection tab, you can enter values that determine how often readings are expected and the next collection date. You can also enter information to make it easier to select this indicator when adding indicators to a work order task or standard task, when copying indicators to another asset, when setting up dynamic inspection routes, or when implementing reliability programs.
If you are creating the indicator from a strategy development analysis (MTA2, RCM2, RBI, CPR), the searching values (frequency, regulatory frequency, trade, operating condition, maintenance group, and technology) are automatically copied from the associated action plan, if the analysis’ indicator settings allow it. In this case, you need only verify the values.
Note: Any changes that you make to the searching values are not copied to the indicator’s associated action plan.
Review and select values, as appropriate:
Tip: If the technology is linked to an asset type that is used to collect indicator readings, you can identify the measurement device on indicator readings and checksheets.
8.
To specify the months during which readings should be taken, select the Seasonal tab. Click This indicator is collected seasonally and select the starting and ending dates. For example:
Reading due dates will reflect the seasonal settings.
9.
On the Description tab, you can enter a detailed description of the indicator and what it measures. On the Image tab, you can also paste an image into the box.
10.
On the States tab, you can set up states and alarms for the indicator. You should set up a state for each possible value identified in the calculation. For the example in this topic, you would set up three states called “Normal”, “Fair Condition”, and “Worn Out”. You can also set up alarms for any non-normal states. For detailed instructions, see Adding States and Alarms to an Indicator or Template.
11.
Select the Calculation tab.
12.
On the Expression tab, select the type of expression. A calculated indicator can be based on:
VB.NET – Inputs and functions defined on the Calculation tab can be used to create a formula that is calculated at run time. This is the default option
C# – Inputs and functions defined on the Calculation tab can be used to create a formula that is calculated at run time
Stored procedure – The expression is provided in a stored procedure that receives its inputs at runtime and returns a value
13.
With the Complete class option, a starter script template is provided automatically, which you can edit as needed. You can also click Regenerate from Template to reset the formula to the starter script.
The template scripts include DebugData statements that you can augment to output trace messages when the Check (Test) or Check (Live) method is invoked to test the calculation.
Tip: You can view the template scripts by opening the Enterprise window, clicking the Administration menu and then Calculation options. For more information, see Defining Calculation Options.
14.
15.
Provide the name of the stored procedure.
16.
From the New list, select either Indicator Input or Filter Input. The Calculation Input dialog appears. The input name must match the name of an argument named in the function (for example, Input1). For detailed instructions, see the following topics:
17.
Click OK when you have finished creating the input. The Calculation Input dialog closes and the input is added to the table of inputs.
18.
For VB.NET or C# script expressions, you can check the syntax (the order of the elements) of your calculation by clicking Calculate on the Expression tab. APM looks for errors in how you typed the calculation. In addition, the system uses the test values on the inputs to complete a test calculation. You can use the result of this calculation to check that the expression is giving the desired results.
19.
When you have defined the calculation expression and inputs, you can click Check (Test). The test function uses the values from the inputs (for example, indicator readings) and displays the result in the Test Reading window.
20.
21.
If necessary, you can change the Required Proximity of the calculation inputs. This option appears in the Expression tab after you have added two or more inputs based on readings.
22.
Select the Frequency tab. In the Triggering mechanism section, select when and how the system triggers the calculation. If the calculation is to be triggered at a regular interval (based on a recurrence pattern), define the scheduled interval for the indicator.
For detailed instructions, see Defining an Indicator’s Calculation Frequency.
23.
Select the Auditing tab. To improve product performance, you can control the amount of audit information generated when a reading is created. (The audit information is displayed in the Indicator Reading window, Calculation tab.)
Full auditing – Full information is displayed on the reading’s Calculation tab
Description and input values – The reading’s Calculation tab displays the description and input values in the text field. The table of input values is not displayed
No auditing – The reading’s Calculation tab is not displayed
24.
Select the Jobs and Tasks tab. On this tab, you can add the standard jobs, standard tasks, and templates that will be displayed to users acknowledging alarms or warnings.
25.
If APM interoperability has been set up to access data in SAP Plant Maintenance, the SAP Corrective Tasks tab is available. Select this tab to browse for SAP objects for reference purposes. You can add maintenance items, maintenance plans, and task lists.
26.
Select the Options tab and the Graphics tab.
27.
Amount of time (for example, weeks, months, years) for which to show indicator readings. When this option is enabled, the Indicator window’s Readings view, Readings tab displays readings for this amount of time, ending with the next reading date. This setting also affects how KPI readings are displayed on dashboards.
28.
On the Options tab, select the Work Orders tab. On this tab you can:
29.