A client acquired a regional fuel distribution business with fuel terminals controlled by a legacy automation system, which needed to be integrated into its existing infrastructure.
The client needed to send scheduled load information to this system and retrieve load completed information, meter throughputs and event logging data. It would pass this onto its own management and billing systems and provide reports to clients that load fuel from the terminal.
- We created an SQL Server database to receive the data from the terminal automation system and to contain conversion tables and information specific to the terminal automation system.
- Configured and installed a serial port server to communicate with the terminal automation system via a serial port.
- Wrote a TCP/IP interface to the serial port server to manage the proprietary communications protocol of the terminal automation system.
- Wrote a suite of programs to write the data received from the terminal automation system to the SQL database.
- Wrote functions to convert the load data received into a format compatible with the client’s existing systems and pass it on.
- Wrote reports/extracts for the client to send to its customers.
- Created functions to automatically run the reports and email them to the customers.
- Created browser-based functions to maintain the tables in the database.
A client needed to implement a new credit control/product allocation system.
The system that controlled the loading needed data from the client’s management system (running on an IBM iSeries) and the product allocation service needed data on what had been loaded. All this needed to happen without user intervention on a 24/7 basis.
- We set up database triggers on the iSeries database to detect changes in the management system’s data. These wrote the changed data to a local data queue.
- Wrote a Java program to collect the changed data from the data queue entries and write it directly into control system’s database using JDBC. The same Java program collected authentication data from the control system’s database and updated the load complete data on the management system.
- Wrote functions on the management system to incorporate the data from the control system with the load complete information from the terminal automation system (interface also written by JMH Lusby Ltd) and send it via FTP to the product allocation service.