Dynamically-Driven Transaction Groups In SQL Bridge?

Looking for ideas or an example of how to create/remove/modify transaction groups dynamically in SQL Bridge.

Do you absolutely have to do them at runtime? If you simply have a whole bunch of similar groups to create, you can export one as XML, convert it to a template with PHP or your favorite scripting language, and import many back in.

2 Likes

Runtime isn’t a necessity and we could surely do it with another programming language but I was hoping there might be something we code in Ignition itself to bridge (for lack of a better word) to the SQL Bridge module (e.g. scan specific tags and modify SQL Bridge using Ignition scripts).

Short answer: no. There is system.groups.loadFromFile, but 1. it requires building the entire XML structure from scratch (or having a premade template) and 2. there’s no mechanism for deleting groups.

In 8.0, you’ll be able to somewhat accomplish this, by simply deleting and creating resources directly on the filesystem, but we do have plans for more first-class, “dynamic” transaction group support in the future.

3 Likes

This is good information. Thank you. It would be really helpful to see this functionality in version 8.

Having to manually do this in SQL Bridge would be impossible for us.

Quick correction on this, as one of my colleagues pointed out, you can use system.groups.removeGroups to achieve this. Not sure what my brain was thinking of when I said that.

1 Like

Okay, that’s interesting and might help us in the short-term. Thanks again.

Yeah, but how do you know what you need to delete? /-:

I don’t suspect I would but I was considering just removing all and rewriting all as needed.

Is there any update on this??
My project is young and I'd like to use what is/may be available. I'll have multiple PLC completing the same tasks and I would love to create a single transaction group for the 10 PLCs I have now and use the same transaction group for the 50 PLCs I'll have later.

No update. It’s still something we want to do, but it would be part of a more fundamental rewrite of SQLBridge/transaction groups, which is a significant undertaking; certainly don’t expect it in the next few months.

I just want to +1 this functionality as well, in particular, because we’re having a few tags generated dynamically from various sensors and trying to minimise the amount of work required to configure each sensor.

Having the ability to have a new kind of “parameterised” item, which executes the transaction group for every tag it matches would be ideal. For example “gateway/{sensor_id}/event/up/rxInfo/rssi” and being able to then insert the rssi into the database along with extracting the sensor_id to also insert would be :ok_hand:

1 Like

I also want to +1 this feature. I’m working on a project where we have OEELine UDTs that are backed by a database. In order to record values/events to the database we have a separate transaction group for each UDT instance.

Being able to add a transaction group to a UDT or creating a parameterized TG that can accept a UDT would save a lot of time and headache.

1 Like