Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| docs:2000_concepts:0200_basics:0400_reference_attributes [2022/08/25 00:00] – removed - external edit (Unknown date) 127.0.0.1 | docs:2000_concepts:0200_basics:0400_reference_attributes [2025/06/11 07:41] (current) – [Matching and non-matching relationships] aware_support3 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| + | {{tag> | ||
| + | [< | ||
| + | ====== Reference Attributes ======= | ||
| + | |||
| + | Attributes that refer to other business objects are called //reference attributes// | ||
| + | |||
| + | The relationships between objects represented by reference attributes may be of several types: | ||
| + | |||
| + | * Relationships can be single or multiple | ||
| + | * Relationships can be // | ||
| + | * Relationships can be //peer//, //parent// or //child//. | ||
| + | |||
| + | ===== Single and multiple relationships. ===== | ||
| + | |||
| + | “Single” relationship indicates that a business object may only refer to a single instance of another business object through this relationship (for example, the '' | ||
| + | |||
| + | ===== Matching and non-matching relationships ===== | ||
| + | |||
| + | With matching relationships if an attribute of one business object refers to another business object there is a reference attribute in this other object (matching attribute) that refers to the first object. For example, if the '' | ||
| + | |||
| + | {{ docs: | ||
| + | |||
| + | Note that the '' | ||
| + | |||
| + | Matching relationships are very convenient as far as navigation between objects is concerned. In the example above once an instance of the '' | ||
| + | |||
| + | With non-matching relationships there are no matching attributes on the referred object. Consequently if an instance of the second object is added to the first object in the Operation Mode only the first object will know that it has references to the instance of the second object – the instance of the second object will not know that some instance of the first object refers to it. Thus navigation from the instance of the second object directly to the instance of the first object will not be possible. Note that if the reference attribute on the first object has no matching attribute in the second object it does not mean that the second object may not refer to the first object at all through its own reference (matching or non-matching). If such reference does exist it is a completely different relationship. This is shown in the example below ('' | ||
| + | |||
| + | {{ docs: | ||
| + | |||
| + | ===== Peer, Parent and Child relationships ===== | ||
| + | |||
| + | Peer relationships represent relationships when instances of both business objects participating in the relationship can exist on their own. With parent (“owner”) and child (“owned”) relationship on the other hand, instances of the business object representing the “child” part of the relationship cannot exist without the instance of its “parent” business object. For example, the instance of a '' | ||
| + | |||
| + | The following applies for parent-child relationships: | ||
| + | |||
| + | * If an instance of the parent business object is deleted instances of all “child” business objects attached to the “parent” are automatically deleted as well | ||
| + | * If an instance of a “child” object is removed from the instance of its “parent” object it is automatically deleted. | ||
| + | |||
| + | The above behaviour saves the trouble of configuring rules to delete child instances explicitly. | ||
| + | |||
| + | See also: [[Working with References in the Operation Mode]]. | ||
| + | |||
| + | ===== Video ===== | ||
| + | {{page> | ||