Mapp View OPC UA "valueChanged" not firing unless additional subscription exists

Hello,

I am experiencing unexpected OPC UA subscription behavior in mappView.

I dynamically create subscriptions like this:

getValue() works reliably.
However, valueChanged() only fires if I additionally create a separate “test” subscription outside this logic, for example:
obrázok
So, if this extra subscription is removed, no errors occur, PLC values change and valueChanged() callbacks inside my dynamic bindings never trigger.
And adding a single external subscription makes all dynamic subscriptions work.

Has anybody encountered or solved this kind of problem?

It raises some fundamental questions:

  • is the OPC UA client or monitored item creation in mapp View lazily initialized?
  • does getValue() guarantee monitored item creation, or does it only perform a read service call?
  • is there a known timing dependency between page/session initialization and subscription activation?
  • what is the officially recommended way to ensure reliable dynamic valueChanged() subscription setup during initialization?

The behavior suggests lazy activation or a timing dependency during initialization, but I would like confirmation whether this is expected behavior by design or an unintended issue.

I’m not sure whether this is an appropriate topic for the community, but I would appreciate any insights or experiences you can share.
Thank you.
Regards
Michal Malek

Hello Michal, in your mapp View Configuration, make sure you have “Initial ValueChanged events” set to “TRUE”.


Otherwise the mapp View OPC UA client will not trigger a “valueChanged” event for the initialization of the event bindings. See : B&R Online Help

Hi Rafael,
It is set to TRUE, but I don’t think this has any connection with dynamic subscriptions in .eventscript files.
Thanks.
Regards,
Michal Malek