I18N characters are not supported for values which are used as UI info later
on, e.g. Attribute code or Attribute title.
When
using select menu to assign attribute values to an object in classification,
values using I18N characters are not visualized correctly.
The Classification module contains the functions to specify a class. Attributes / attribute sets have to be created first to be able to fill the classification list of a class with information.
Example:
All necessary attributes (thread diameter, length, etc.) that will be assigned to the individual classes, are defined in the attribute pool.
The classes (such as screw, wood screw, hexagon-socket head screws, etc. ) are created after attributes and attribute values have been created. These classes can be structured to be assigned to each other. They can be arranged in a hierarchy of super- and subclasses (Abstract Classes).
Next, the classes (e.g. screw) have the attributes (such as length and thread diameter) from the attribute pool assigned. The assignment of objects (item: 123456-screw; 234556-screw) to the classes permits the classification list to be filled and created. Furthermore, the actual attribute values (i.e. the actual length and the thread diameter) of the objects are specified.
An attribute describes a property of an object, such as its length or diameter. Irrespective of the class assignment, all attributes are created and managed in the attribute pool. When assigning to classes, the corresponding attribute can be selected from this pool.
An attribute always consists of a name, a code (that is later used as list entry in the classification list) and the attribute type.
Field | Explanation |
Validation | A check string can be entered in the ![]() |
field to define the layout of the attribute field in the tab of the mask.
Language | This field becomes only active when the String type has been selected. It displays the different languages the attribute can be shown in. |
Attribute ID | The Attribute ID is created automatically. The id is needed in combination with a formula for the attribute value. |
Field name | Shows the same entry as | field.
The attribute can also have graphics assigned.
![]() |
The number of fields in the classification list is limited to 256. Each language variant counts as an individual field. Thus the maximum number of attributes depends on the number of used languages: e.g. when using 10 languages the maximum number of attributes is limited to 24! |
An attribute cannot be edited or deleted in the
or status in the class assignment. An attribute can only be deletedAn attribute defined in the attribute pool usually has a so-called attribute value assigned to it.
![]() |
The attribute pool can only be used with the ATT model. |
Irrespective of the defined attribute type, an attribute value can be an exact value specification (multilingual value), a formula, or a range with maximum and minimum values or strings (e.g. adjectives). The attribute values become selective once the respective attribute is assigned to a class.
The
can be entered manually and updated as long as the attribute is still in the status "In Work" or in "In Approval".Values that can be entered for attribute values depend on the chosen type (e.g. integer, string, etc.) for the attribute. Information on possible values can be found in the Data View documentation.
If the attribute is of type string, minimum or maximum values
are not considered for the attribute values.
Logic values do not have to be specifically defined. In
the
of the mask they
will be displayed with a checkbox that can be selected or not.
Data View (DTV Object Reference / Field Data Form / Type)
A
glossary entry can be created with an exact value assigned to it. When loading
the glossary entry in the column ,
the will be inserted automatically.
If the value has been updated in the glossary entry, it can be updated in different
ways in the mask .
Text
Management
The
can also be updated by marking the line in the tab and by opening and closing the select menu of the column
When assigning an attribute to a class and consequently to the previously defined attribute value, the attribute value can have a class-specific status (Active, Inactive, Prototype).
Attributes with attribute values assigned to it, can only
be deleted from a class when the status is set to !
Change the Value Status of a Class
If the value has to be calculated, a formula can be entered in the Attribute Id, whereas the attribute id has to be set in curly brackets.
column. Logical operators are combined with theLogical Operators | Attribute Id |
+ - * / | e.g. {2000000141} |
In order to improve the usability of attributes, attribute sets can be defined.
Several attributes can be grouped in one attribute set, also, one attribute
can be assigned to several attribute sets.
The attribute set cannot be deleted if the attribute set is used as primary
attribute set for any attribute of the class. An error message will be displayed
and the deletion canceled.
Attribute sets can be copied. The assigned attributes to
a set will only be copied into the new attribute set when the
tab of the
mask is opened! When the
tab is opened, the set will be copied without the assigned attributes!
The
tab in the form contains the column which specifies the primary attribute set the attribute can be assigned to. Because each attribute can be assigned to several attribute sets, lists all sets the current attribute is assigned to. Selecting one set specifies the primary connection between the attribute and the set.![]() |
If a primary set was updated, the previous primary attribute set will NOT be deleted from the class. |
The attributes of an attribute set are visible by default (non-strict mode).
The visibility setting can either be changed in the
If visibility is configured to be in strict mode, the visibility of each attribute
is defined by the visibility of the primary attribute set only.
If visibility is configured to be in non-strict mode, the attribute is invisible
only if all attribute sets are invisible at the class to which the attribute
is assigned to.
![]() |
The classification list can contain 255 fields. If the maximum number of fields is exceeded, a warning message is created and an empty classification list will be opened. |
Any object (attribute or class) is assigned to a so-called lifecycle. This lifecylce enables the definition of any organizational process. An object has a certain "Status". The status consist of the level of maturity of the object (e.g. Development, Prototype, Series) and its status (e.g. in Work, in Review, Released etc.). An object always runs through the whole lifecycle. State changes can have different access rights assigned. A developer for example can put the object into the status In Approval, but only the project manager can release the object.
The following figure shows the different states and the possible states following of the standard lifecycle. The lifecylce can be adapted.
![]() |
The field can only be defined during the creation of a class. It is a read-only field in update mode, therefore, it can no longer be changed. |
Classes can be structured hierarchically by using sub- and superclasses.
The structure of classes can be displayed in the browser.For each entity, specific categories can be chosen. The following look-up table gives an overview of some of the valid combinations between category and entity entries. Only the entries supplied by the selection menu can be chosen for the
and field.Entity | Category |
EDB-ARTICLE | Product |
EDB-ARTICLE | Assembly |
EDB-ARTICLE | Program |
EDB-DOCUMENT | Contract |
EDB-DOCUMENT | Specification |
EDB-DOCUMENT | Correspondence |
Manager rights are needed to define new entities.
Classes can be released similar to documents and items. A version number will not be supplied for each release state, therefore, all changes of a class definition overwrite the old class definition. Depending on customized settings, the following activities are allowed or disallowed during the change from one release state to another.
Possible activities are for example:
A class can only have attributes assigned that have been created in the attribute pool. Changes to the attributes are made in the attribute pool. They have an effect on all classes (but not on previously assigned objects such as items).
Field | Explanation |
Menu | A special menu can be defined for each attribute. This menu is then displayed in the Classification List. |
Type | Opens a select menu to define the menu type (e.g. Choicebox, Wiedget, etc.) |
Access | ![]() |
Pre- / Post-field | Userexits |
Color | Defines the color of the attribute field in the | tab.
Length | Defines the maximum number of characters that can be shown in the attribute field. |
Virtual Length | Defines the visible number of characters that are shown of the maximum number of characters in the attribute field. |
When assigning attributes to the classes, the values assigned to the attributes will also be taken for the classes. For each class, they can have class-specific states assigned:
In insert and edit mode, only values of the status "Active" and "Prototype" are displayed. In search mode, however, all inactive values are included in the search.
![]() |
When you use the ATT model, the attribute pool can be maintained in several languages, and the value range can be verified. These functions are not available when you use the Type model. |
The attribute title, displayed in the classification list, is set to the default value "Title" (S = letter only).
The
settings can be modified in the configuration parameter "EDB-GTM-TIT".
When you save the class-attribute assignment, the system checks whether the entered values correspond with the defined values. The verification of the values depends on the check type (CHK):
![]() |
When assigning an attribute to a class and adding a menu in the | field, the check type "M" cannot be used.
![]() |
Mulitlingual string values are considered automatically when value is selected by chosing from value menu for the attributes. If values are entered manually, the multilingual string values are not stored. |
An attribute can only be assigned once in a class structure (with child and parent classes): The unambiguity of the attributes within the structure is not checked when you hook a complete class with assigned attributes underneath another class with attributes. Unambiguity check is performed only if an attribute is newly added to a class.
An attribute in this class can only be deleted if it does not have any more attribute values assigned.
In the structure of a class hierarchy, only the classes of the lowest hierarchy level possess a classification list. The classes above are so-called abstract classes. When creating these superior classes the
checkbox needs to be activated in the form header. This checkbox represents an abstract class which can be used as a superior group in a class hierarchy.It
is not possible to (de)activate the
checkbox after having created the class.
Subclasses "inherit" the attributes of the superclass and of all classes of
higher hierarchy levels. That means that the subclass has the same attributes
as the higher class, too (except an inherited attribute is explicitly suppressed).
This setting is a default setting. It can also be changed in the configuration
parameter EDB-GTM-INH-RLS. If the value = 1 then the attribute inheritance will
not happen by assigning an attribute to a class, but by releasing a class with
the release management. In this case the LGV procedure EP_GRP_INHERIT/InheritClassAttributes
must be inserted in the lifecycle STD-GRP as pre-action for the release transition
(e.g. 120 -> 230 and 240 -> 230).
Since objects of the same kind are classified, we assume that an attribute of a higher class also describes all subclasses. If, for example, you want to classify screws, you can create a Screw class with a Length attribute (since all screws shall have the Length attribute assigned). As a subclass, you can create a Machine screws class that has also a Head form attribute assigned. The classification list of this class contains both attributes - Length and Head form.
The
field determines the position of the attribute in the list. The position of the attribute can be different in the local and inherited attribute list.An error message will be displayed when the inserted attribute is already used for a different class.
Deleting inherited attributes from a subclass is handled
like suppresing the inherit attribute in the upper class.
A class can have a subclass assigned without inheriting all attributes of the superclasses. The attributes of the subclass that are not inherited must be suppressed for this purpose.
The order of attributes assigned to the class determines the access to an attribute which is used when assigning items in the classification list. It is recommended to change the order of the attributes in such a way that the attributes used more often are displayed first. Assigned or inherited attributes can also be positioned in the attribute order.
An item is usually assigned to one class only. Several references are possible if there are different classification structures (such as a technical structure and a commercial structure). (Parallel assignment to several classes.)
In the classification list, the created classes are filled with objects (items, documents, etc.), and the associated precise attributes are entered.
The attribute columns only display attribute values that are released for the current class. Class structures are taken into consideration here. The insert and update modes solely show attribute values that feature the
or statuses on this class. In mode, all inactive attribute values of the attribute are additionally displayed. When selecting an attribute value, a reference of that value is stored in the classification list.The classification list can also be accessed from the object (
or ) form by opening the tab. The current object is preselected and is opened in a non-modal window.