Hi Dojo,
I have a connector with a database (logger) table for which the entries are stored in ElasticSearch.
Now I've added an additional column to this table. Data is filled in for that new column when a new entry is added, but I'm wondering if there is a way to update the existing ones?
I've tried getting the table indexes in a QAction, but the result was empty.
Hi Jens,
Not sure whether my suggestion will work or fit your use case, as with this functionality data will not be displayed in Cube.
Nevertheless, you can use DirectConnection to write to the SLDataGateway without passing through the SLProtocol.
// Pass this information to Datagateway
DCInstance.InitializeWriteAction(loggertableTemplateGroup);
// This will write to the database, if the queue inside datagateway is full, records will be dropped
DCInstance.WriteLoggerBulkTo(_dmaId, _elementId, _tableIdWithoutID, data.LoggerRows.ToArray());
For this to work, you need to remove the “index=0” from the table definition in the xml (as we will use the "massive logger tables" feature).
This will make the data to be pushed through DirectConnection from SLScripting directly to SLDataGateway with write a speed of ~10K rows/second.
If this does not cover your case, I believe that it should be possible to write and push the necessary queries in a QAction to update the needed entries in the elasticsearch DB.
Hope this helps.
Kind regads,