Handle existing Tag Providers using SDK

Hello everyone,

I’m trying to develop a module for Ignition 7.9, which would integrate an already existing Ignition-based solution.

The current problem is that I want to “handle” an existing Standard Tag Provider from this module: I thought I found something promising in the 8.0 Tag API Examples of the SDK Programmers’s Guide, like Read and Write Tags - Ignition SDK Programmer's Guide - Ignition Documentation, but anyway I was not able to adapt them for version 7.9, which is mandatory.
Afterward, I tried to use the simple-tag-provider example module (v. 7.9) as a starting point to achieve the same goal, but I came to the conclusion (I probably reinvented the wheel) that I can’t use a brand new Tag Provider instance to manipulate the existing provider. In my attempt, I used the same name to generate a Tag Provider from the module, hoping that somehow it would have been able to “detect” the other one in Ignition and “fallback” on it: when I opened the Designer, there was effectively a Tag Provider with the right name but without any tags; after I uninstalled the module and restarted the Designer, the original (Standard) Tag Provider reappeared correctly.

In the end, I’ve come across this thread Creating Standard and Remote (Not Managed) Tag Providers Using SDK, where @pturmel post seems to be the final answer to my problem (despite the different context).

So, even sounding like completely dumb questions, I have to ask:

  • is it possible to achieve the handling of an existing Tag Provider from a module in Ignition 7.9? And in Ignition 8.0/8.1?
  • in case it is indeed possible, can someone please provide a small example (or a link of where to find it)?

You’ve written a lot of words and somehow still not explained what you’re trying to do…

What does “handling” a tag provider mean?

1 Like

Hello Kevin, thank you for your quick response

Practically, I have a Standard Tag Provider called YLab_Tag_Provider: from the module, I’m trying to “catch” it from the GatewayHook using this syntax


I would want to operate with this tag provider as I do in the Tag Browser of the Designer (browse, read/write, create/eliminate tags)

You’re going down the wrong path entirely.

From GatewayContext, call getTagManager, then on the SQLTagsManager call getTagProvider(name), which gives you a TagProvider you can read, write, and browse.

Do note that 7.9 is getting quite close to end-of-life:

Now I have a clearer view of the situation, thank you @PGriffith, also for pointing out this information regarding 7.9

Many thanks to both you and @Kevin.Herron for your time and your immediate replies!

1 Like