Article - CS297665

Binding a property to multiple properties of another Entity will only update one of the bound properties in ThingWorx

Modified: 24-Mar-2020   


Applies To

  • ThingWorx Platform 7.4 to 8.4

Description

  • Binding a property to multiple properties of another Entity will only update one of the bound properties
  • Example:
    • ThingOne
      • Property: myNumber
    • ThingTwo
      • Property: numberOne = local binding to ThingOne.myNumber
      • Property: numberTwo = local binding to ThingOne.myNumber
      • Property: numberThree = local binding to ThingOne.myNumber
    • Updating ThingOne.myNumber will update one locally bound property, not all three properties defined for ThingTwo
  • The binding works as expected with different properties on different Things, i.e.
    • ThingOne
      • Property: myNumber
    • ThingTwo
      • Property: numberOne = local binding to ThingOne.myNumber
    • ThingThree
      • Property: numberOne = local binding to ThingOne.myNumber
    • ThingFour
      • Property: numberTwo = local binding to ThingOne.myNumber
  • Underneath errors seen in the ScriptErrorLog when binding a property to multiple properties of another Entity
message: Execution error in service script [TSMashup] :: TypeError: Cannot read property "length" from undefined (TSMashup#38)]
at TSMashup:38
[...]
Execution error in service script [getMapData] :: TypeError: Cannot call method "QueryPropertyHistory" of null (getMapData#22)]
  • Underneath errors seen in the ApplicationLog.log when binding a property to multiple properties of another Entity
Invalid Source Property For Binding: TSDevice_123_Thing:UNNAMED_TS_INPUTS_1_2
[...]
message: Thing [TS123] is not running]
[L: ERROR] [O: c.t.t.b.OutgoingPropertyBindingProcessor] [I: ] [U: TS] [S: ] [T: https-jsse-nio-443-exec-78] Invalid Source Property For Binding: TSDevice_123_Thing:UNNAMED_TS_INPUTS_1_2
This is a printer-friendly version of Article 297665 and may be out of date. For the latest version click CS297665