COMBINE# combines parameter values from a recursive Telitab set or group of objects in a single Telitab set
Syntax
- COMBINE#(Telitab$, Attribute$, ObjectName$, Par[Lab$]_1, Par[Lab$]_2, ... , Par[Lab$]_n)
- COMBINE#(Object, Attribute$, ObjectName$, Par[Lab$]_1, Par[Lab$]_2, ... , Par[Lab$]_n)
Arguments
- The first argument is either an Object or String expression containing Telitab data.
- Attribute$ is an optional name of an attribute (without preceding "@") that has to be present in the dataslot of the objects in which data has to be gathered.
- ObjectName$ is an optional name of the Object instances in which data has to be gathered.
- Par[Lab$]_1, Par[Lab$]_2, ... , Par[Lab$]_n are the labels of parameters to be included in the Telitab result.
Remarks
- The COMBINE# function returns a Telitab with values from parameters that are included as label arguments. This makes it possible to collect parameters from all objects within a certain calculation.
- This function can, for example, be used to create overviews or summaries of calculations.
Examples
The function
EMotors# = COMBINE#(@Heatbalance, "NullString", "EMotor", "ID$", "PowerReq", "Power", "Etha", "Connection$")
returns a Telitab String containing the list of electric motors (EMotor objects) in the object tree Heatbalance, so including the values of the parameters "ID$", "PowerReq", "Power", "Etha" and "Connection$".
If the electric motors in the system are contained in objects with different names, indicating types of motors, e.g. EMOTORDC and EMOTORAC, these objects can be provided with an @EMOTOR attribute in its data slot that would make the expression:
EMotors# = COMBINE#(@Heatbalance, "EMOTOR", "NullString", "ID$", "PowerReq", "Power", "Etha", "Connection$")
These attributes are user defined and no standard Quaestor attributes. The result could for example be:
| 0 | | 5 | "ID$" | "PowerReq" | "Power" | "Etha" | "Connection$" | | "1" | "Dredge.Pump.1.Bearing.Gearbox.EMotor" | 2082 | 2192 | 0.950 | "Shaft generator" | | "2" | "Dredge.Pump.2.Bearing.Gearbox.EMotor" | 2051 | 2159 | 0.950 | "Shaft generator" | | "3" | "Jet.Pump.1.Bearing.EMotor" | 510 | 537 | 0.950 | "Shaft generator" | | "4" | "Jet.Pump.2.Bearing.EMotor" | 503 | 528 | 0.950 | "Shaft generator" | | "5" | "Bowthruster.1.EMotor" | 200 | 204 | 0.980 | "Diesel generator" | | "6" | "Bowthruster.2.EMotor" | 200 | 204 | 0.980 | "Diesel generator" |
|
The function is not started before Heatbalance$ is created, so this can be used to make sure that the COMBINE# function is started at the end of de process, when all parameters to be combined are known by the system.
Quick links: COMBINE#