This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm that you accept these cookies being set.

Object and Modbus Mapping Delete via Script
#1
Hi all,

I need some help with database manipulation. I'm familiar with the correct methodology for adding objects via script.
What I am interested to know is the best practice for deleting objects via script.
Specifically, I need to delete an object and also remove the affiliated link in the modbus mapping.

EDIT: Also how to delete modbus devices via script.
I note the method does not work;

require('json')
function json.data()
return { id = 1 }
end
dofile('/lib/genohm-scada/web/modbus_devices/delete.lua')

Thanks in Advance,
BW
Reply
#2
Try this:
Code:
addr = '1/1/1'

-- delete object
grp.delete(addr)

-- clear modbus mapping
id = buslib.encodega(addr)
db:query('UPDATE modbus_mapping SET bus_address="" WHERE bus_address=?', id)

-- restart modbus
os.execute('sh /lib/genohm-scada/plugins/modbus/stop.sh; sleep 1; sh /lib/genohm-scada/plugins/modbus/start.sh')
Reply
#3
Thanks! Works as expected.
Also, The following code worked to delete the entire modbus device. Care should be taken to remove the associated mapping in modbus_mapping as this will cause conflicts when adding new devices.
db:query('DELETE FROM modbus_devices', id)
Reply
#4
Hello Admin,
 
Although I delete the object with the script, I can see it in the object list, so I still continue to see it in the modbus mapping table. how do I delete it from the scada object list (with script) what should I do,     
Reply
#5
Hi, you have to reload your browser (F5).


(22.02.2025, 23:13)isidur Wrote: Hello Admin,
 
Although I delete the object with the script, I can see it in the object list, so I still continue to see it in the modbus mapping table. how do I delete it from the scada object list (with script) what should I do, 
Reply
#6
(22.02.2025, 23:13)isidur Wrote: Hello Admin,
 
Although I delete the object with the script, I can see it in the object list, so I still continue to see it in the modbus mapping table. how do I delete it from the scada object list (with script) what should I do, 

yes it was fixed after reloading the page. thanks
Reply


Forum Jump: