Any way using Java SDK to export device fields?

Hi, I'm new to Ignition and its module development using Java SDK. I'm looking for a way to collect/query all device details including device field/type. My purpoose is to do automatically some stuff like adding tags to tag providers, activate historical on them, etc.without open the designer.

I tried doing this kind of query in a service I run in my Java module

List<DeviceSettingsRecord> deviceSettingsRecords = context.getPersistenceInterface()
                    .query(new SQuery<>(DeviceSettingsRecord.META, SQueryMode.SREAD_ONLY));

but data it returns seems to be not useful. Not even with this approach I was able to get data I need

List<OpcConnection> conn = context.getOpcManager().getConnections();

Any suggest?

Thanks
A

Each device type maintains its own persistent data with its own table in the internal configuration database. The instance of PersistentRecord that implements this is private to the driver module--it isn't exposed anywhere in the gateway. The only thing that is exposed is the content of the internal DB tables themselves.

If you inspect the settings stored in these tables, you can probably figure out how common settings are stored. But there is no generic way to do this. And there won't be. In v8.1, at least.

(Ignition v8.3 is supposed to make everyone expose things as APIs.... That might solve this for you.)

2 Likes