CX_SINGLE_ALLOCATION
Class hierarchy
- CX_CLASS
- CX_SIMPLE
- CX_TERMED
- CX_EXPANDABLE
- CX_ALLOCATION
- CX_SINGLE_ALLOCATION
- CX_ALLOCATION
- CX_EXPANDABLE
- CX_TERMED
- CX_SIMPLE
Description: (Business Pattern)
A single allocation describes a use or a resource of a business object, depending on the point of view.
In our example above, the single allocation describes a resource from the viewpoint of the business object Work Center (CX_WORK_STATION) and a usage from the viewpoint of the business object Machine (CX_MACHINE). As we can see, this is dependent on the type of backrelation from the individual allocation to the business object. In the case of a resource, a business object is referenced by the single allocation via the back relation "allocators", in the case of a usage, the single allocation points to the business object via the data field "object".
In order to show the use of a business object, it is not enough to know only the business object (to reference it via the reference "object"), it is also necessary to specify the quantity of the business object that is "appropriated". This is described via the two data fields "amount" and "baseAmount", which are both attributes of the single allocation object.
Examples:
- "Machine A with a time of 5 hours (occupy)" (work plan)
- "Part B in a quantity of 17 pieces (insert)" (parts list)
- "Person C with a time of 2 hours (reserve)" (project planning)
The business object (in the above examples A. B or C respectively) is the "object" within a single allocation CX_SINGLE_ALLOCATION, the specifications "5 hours", "17 pieces" or "2 hours" describe the scope of use of the business object under consideration. In the business object itself, an individual allocation is linked via the back relation CX_BUSINESS_OBJECT::allocations. The function CX_BUSINESS_OBJECT::Allocators(os_set) returns all uses of a business object.
As shown in the graph above, single allocation describes a resource from the point of view of the work centre. The single allocation is referenced by the relation "allocations", the back relation from the single allocation to the business object is described by the relation "allocators".
Code example:
Var(setAllocation, singleAllocation)
// Allokationstabelle generieren
CreatePersObject(CX_SET_ALLOCATION) -> setAllocation
// Einzel-Allokation in Allokationstabelle setzen
CreatePersObject(CX_SINGLE_ALLOCATION) -> singleAllocation
singleAllocation setAllocation Insert(allocations, allocators)
// Menge in Einzel-Allokation setzen und mit "1 Stück" initialisieren
CreatePersObject(CX_VALUE) singleAllocation SetReference(amount)
"1 Stück" singleAllocation Put(amount)
// Objekt in Einzel-Allokation setzen
"123456" "uniqueID = %s" FindFirst(CX_ITEM) singleAllocation SetReference(object, allocations)
Function | MA* | Parameters | Return | Brief description |
---|---|---|---|---|
DeReferenceObject | ||||
Inspect | ||||
Object | STRING | OBJECT | Return of the referenced business object | |
ReferenceObject | OBJECT, INTEGER | |||
SanityCheck | INTEGER | Check for consistency of the object | ||
AllocatorByCondition | STRING | OBJECT | ||
AllocatorByConditionMA | * | STRING | ||
AllocatorsByCondition | STRING | COLLECTION | ||
AllocatorsByConditionMA | * | STRING | ||
Amount | OBJECT | Calculates the total amount as the sum of the amount and baseAmount fields | ||
AmountWeak | OBJECT | |||
AssignSlot | * | STRING | Set/read slots that refer to another data field | |
ClassFilter | STRING, INTEGER | OBJECT | This object, if it corresponds to a certain class | |
ConditionedFilter | STRING | OBJECT | ||
ConditionedFilter2 | OBJECT | OBJECT | ||
Deleted | INTEGER | Object marked as deleted? | ||
Description | STRING | Name of this object | ||
GetDomain | INTEGER | Domain of this object | ||
GetSiblings | COLLECTION | All siblings of this object | ||
GetSiblings2 | COLLECTION | All siblings of this object | ||
GetSlotEntries | VECTOR<object></ob | Return of internal information about slots | ||
LastUpdate | OBJECT | Date of the last write access | ||
LastUser | INTEGER | User who last had write access to the object | ||
link | OBJECT | Add this object to the list of objects with validity | ||
NextValidObject | OBJECT | Subsequent validity object in time | ||
Occurrences | OBJECT, INTEGER | COLLECTION | ||
PreviousValidObject | OBJECT | Previous validity object in time | ||
Resolve | OBJECT, OBJECT, STRING, INTEGER | |||
ResolveNew | OBJECT, OBJECT, STRING, INTEGER | |||
RestrictedValidity | * | Area of validity restricted? | ||
SetDomain | INTEGER,INTEGER | Set domain | ||
SetInspectionMessage | INTEGER | |||
SetPreMessage | INTEGER | |||
ShortName | STRING | Short name of this object | ||
Siblings | * | Objects with validity | ||
SpanDateValidity | * | Period of validity | ||
string | INTEGER | CX_STRING | Returns the string representation of the object | |
UniqueID | STRING | Content of the fixed data field "uniqueID | ||
Unlink | Remove this object from the list of objects with validity | |||
Unlink2 | Remove this object from the list of objects with validity | |||
Valid | OBJECT | INTEGER | Check validity | |
ValidSince | OBJECT | Start of validity period | ||
ValidToday | INTEGER | Valid today? | ||
ValidUntil | OBJECT | End of validity period | ||
VerifySiblings | INTEGER | Check ring of exchange objects |
* MA = Member Access function,
grey background = inherited function
Data field | Type | Reference class | I* | Brief description |
---|---|---|---|---|
object | REL_1M | CX_BUSINESS_OBJECT | the assigned object ... (REL_1M for CX_BUSINESS_OBJECT::allocations | |
singleAllocationEnum | ENUMCHAR | 0: no control 1: if quantity = zero, neglect allocation 2: Fixed quantity (no longer used) | ||
allocators | REL_MN | CX_EXPANDABLE | which objects are described by this allocation object. (REL_MN for CX_BUSINES_OBJECT) | |
amount | POINTER | CX_AMOUNT | Quantity of the allocation, valid per reference quantity of the main allocation. Quantities are multiplied in the hierarchy (CX_PRODUCT_AMOUNT) The quantity can be assigned to a slot variable via assigned slot. If the set is a specific variable, then this variable is specified in a formula. | |
attributeSet | POINTER | CX_ATTRIBUTE_SET | Attributes for the description of the allocation | |
baseAmount | POINTER | CX_AMOUNT | Base quantity, always applies per allocation, regardless of the quantity of allocations higher up in the hierarchy | |
uniqueID | STRING | * | Unique key | |
validity | POINTER | CX_VALIDITY | Validity period of the object |
* I = Indexable data field,
grey background = inherited data field
Order | Description |
---|---|
1 | Like CX_ALLOCATION. |
2 | The data field "object" is plugged and searched. |
Module | Brief description | |
---|---|---|
billsing.mod | Parts list entry module | |
jobssing.mod | Work sequence editing module | |
allocsng.mod | billsing.htm | jobssing.htm | Individual allocation of basic module |