I need to create something to read data from a PLC and write it to a SQL database. I mostly work with Siemens (and Sigmatek) and I think OPC-UA would be a good solution. My
If you are just looking to move data from a PLC to a database then take a look at Node-Red. Here is a video that should help you get started. Node-Red can do OPC-UA or just talk direct to the PLC with out the need for OPC in the middle it's your choice. If you need more help just ask!!
https://www.youtube.com/watch?v=LaUmhhMdoyY
Node-Red can also do the GUI.
For the reporting you can use https://grafana.com/.
If you would like a good Database to log to look at https://www.timescale.com/.
Grafana and Timescale work well together!!