Skip to the content.

Core Concepts

Overview · Subject · Match · Target · Condition


Target Node — Direct

Overview · StringCases · NumericBands · StringCompare · NumericCompare · Direct


Purpose

The Direct target type performs specialised checks that cannot easily be expressed using the other target types.

Unlike other targets, Direct checks do not rely on comparison rules or case lists.
Instead, they execute predefined validation logic built directly into ObChecked.

Direct checks exist primarily to support validation scenarios that involve:

Currently three Direct checks are available.


Available Direct Checks

CellValueEmpty

Checks whether the value in the target column is empty.

If the cell contains no value, the comparison succeeds and the Pass flag is applied.

If the cell contains any value, the Otherwise flag is applied.

This check is typically used when a property should be empty.


CellValueNotEmpty

Checks whether the value in the target column contains any value.

If the cell contains a value, the comparison succeeds and the Pass flag is applied.

If the cell is empty, the Otherwise flag is applied.

This check is typically used when a property should not be empty.


RotationByProjectNorth

This check validates that part rotation settings are correct relative to the model’s Project North orientation.

Tekla uses several independent settings that together determine how assembly marks and parts are oriented relative to the drawing view. These include:

Because these settings interact with each other, it is possible for models to display assembly marks incorrectly even when individual settings appear valid.

The RotationByProjectNorth check evaluates these settings together and determines whether the resulting part rotation is consistent with the current Project North orientation.

If the orientation combination is valid, the Pass flag is applied.

If the configuration does not match the expected rotation rules for the current Project North direction, the Otherwise flag is applied.

This rule helps ensure that assembly marks appear in the expected position relative to the structure.


Example: PHASE.OTHERS

In some cases a column may intentionally be empty under normal conditions.

For example, the PHASE.OTHERS property reports phase numbers that differ from the main part.
This may include:

Under normal circumstances, these values should match the part phase and the PHASE.OTHERS field should therefore remain empty.

If a value appears in PHASE.OTHERS, it indicates that conflicting phases exist within the assembly and may require correction.

An audit rule can therefore be configured to ensure this column remains empty:

TargetColumn: PHASE.OTHERS
Type: Direct
DirectID: CellValueEmpty
Pass: Okay
Otherwise: Error

This will flag any part where conflicting phase information is detected.


Result Flags

Direct checks produce two possible outcomes:

Pass
Otherwise

If the validation succeeds, the Pass flag is applied.

If the validation fails, the Otherwise flag is applied.


When to Use Direct

Direct checks are intended for specialised validation logic that cannot easily be expressed using the other target types.

Typical uses include:

As additional specialised checks are developed, they may be added to the Direct target type.