Defining Procedures for Value Assignment Interface

Objectives

After completing this lesson, you will be able to:
  • Define and work with procedures.
  • define variant tables in simple dependencies to interfere values.
  • use additional functionalities of procedures.

Procedures

A flowchart outlines how procedures set values in a specific sequence and trigger alarms based on temperature thresholds. A table lists procedures with their dependencies and types, and a graphic of a clock is shown.

You can assign procedures to the following objects:

  • The characteristic value that triggers the procedure.

  • The characteristic that triggers the procedure.

  • The configuration profile of the configurable object. It's easier to manage procedures assigned to the configuration profile, because they're all in one place.

  • BOM items – to change the quantity, for example.

  • Operations – to change the standard values, for example.

The processing sequence of procedures is defined at dependency assignment level.

Procedures can overwrite values set by other procedures. In contrast, if different values are set for a single-value characteristic by constraints, or user entries, an inconsistency occurs. None may overwrite the other – exception procedures among each other (and default values).

If two procedures set the value of a single-value characteristic, the last in the sequence wins out. This means you need to ensure that the sequence of procedures is correct – otherwise, the wrong value could be set.

How to Create a Procedure – Sequence and Overwriting

Watch the following simulation and understand the creation of a procedure.

The simulation starts with checks of existing characteristics, which are then assigned to a variant class. New procedures are created and assigned to a configuration profile. The scenario is tested. At the end, all assignments are going to be deleted.

Procedures: Syntax

The following figure explains the syntax elements that can only be used in procedures.

A chart categorizes expressions into four sections: negation of built-in conditions, successive calculation, default values, and additional expressions, each listing associated operations or commands.

Procedures are always used for pricing (here also $SET_PRICING_FACTOR).

You can use the following elements in procedures only:

NOT SPECIFIED

NOT TYPE_OF

<multiple-value characteristic> NE <Value > (identical to NOT <Value> IN <multiple-value characteristic>)

$COUNT_PARTS: You can calculate the sum of the number of BOM items.

$SUM_PARTS: You can calculate the sum of numeric characteristic values for individual objects.

As well as using procedures to infer values, you can use procedures to access values that were changed by a procedure, to change them again (Figure = Figure +1).

You can use procedures to set soft values that can be set by the user or by choosing dependencies can be overwritten (?= or $SET_DEFAULT). You can also delete default values set using procedures. ($DEL_DEFAULT).

Procedure for a Characteristic Value

Flowchart showing a process where a forklift with large mast heights requires short fork lengths. It includes a scenario, solution, and syntax for implementation.

This procedure can also be assigned to the configuration profile. To get the same effect, the syntax would have to be as follows:

$self.FORK_LENGTH = ‘SHORT’

IF

$root.MAST_HEIGHT = ‘LARGE’

Procedure for the Configuration Profile

The following figure shows the assignment of procedures to the configuration profile. You can do this if there's only one or more triggers.

Note

Be aware of the following: This is the preferred scenario in comparison to the previous one, the assignment to a characteristic value.
Diagram explaining configuration logic: If Mastheight is large and tonnagecapacity is maximum, the forklength should be short, with the solution being a procedure on the configuration profile.

Procedures and Variant Tables

Variant Table

The following figure shows a structure of a Variant table.

A table with columns labeled Char. 1, Char. 2, and Char. N, each containing multiple Value entries. The note below explains that each column represents a characteristic and each row a valid combination of values.

Check the following steps for table maintenance:

  1. Create table structure.

    Define characteristics as columns.

    No evaluation alternatives required for conditions (for example, preconditions).

    An evaluation alternative is required for procedures.

    Possible for constraints without or with one or more evaluation alternatives.

  2. Define content.

The following figure shows a possible example of a variant table.

A table titled Table TAB2 compares Mastheight and Forklength with corresponding values: small/long, middle/Middle, and large/short. The categories are shown in red text.

Variant Tables and Procedures

Watch the following video, which explains the scenario, followed by solution and syntax.

The following figure shows you an example of a possible variant table and its key fields.

A table titled TAB2 displays two columns: Mastheight and Forklength, with entries such as small-long, middle-Middle, and large-short. An arrow labeled keyfield points to the Mastheight column, and a caution note below mentions the importance of clarity concerning the keyfield.

Procedures and Default Values

Let's have a look at a possible sales order scenario for our forklift. In this case, the customer orders an electric forklift. The characteristic is set to the right value.

Working with a procedure, another characteristic, in this case, the forklift performance get's a default value.

Flowchart showing a business scenario where if the drive type is set to electric, a performance of 30KW is suggested, with a procedure depicted in code format.

Procedures with $set_default and $del_default

The following figure shows you the definition of a procedure for setting and deleting a Default Value with syntax element with $set_default and $del_default.

The image outlines a concept regarding engine performance adjustments based on drive type, with solutions involving specific procedures and syntax. Restrictions highlight conditions for altering default values.

Note

Be aware of the following: $set_default is the same as ?=.

Procedures with x = x+ 1

The following figure shows a possible coding for a procedure when a successively calculation tales place. The value of the characteristic memory depends on the used software.

Flowchart with sections titled Concept, Solution, Syntax, and Restriction, detailing memory calculations based on software requirements. It outlines procedures and syntax for memory operations and poses questions about default behaviors when no software is entered.

Set Default Values with Procedures (with/without Variant Tables)

You can set default values in characteristics maintenance. However, if you do not always want the same default value – for example, if you want the default value to depend on the value assigned to other characteristics – you can use procedures to define this.

Watch the following simulation, which shows you first the creation of characteristic and it's assignment to a class. The scenario continues with the definition of default values with a procedure and alternatively with the definition of a procedure and a variant table.

Log in to track your progress & complete quizzes