My company uses an old MS Access program to generate xml files. There are two users who perform maintenance/updates on this system, and a handful of others who use it to generate files.
The program does the following:
User enters info in a couple "search" fields on an Access form.
Program pulls data from external databases using ODBC connections and mySQL OR pulls data from an xml file instead (so that we can manually enter data if it isn't in a database).
Pulls data from tables internal to the access database.
Uses VBA subroutines and functions to do calculations, error handling, etc. Uses collections.
Complies final data, writes to and saves a new xml file (currently just writes it as a text file, but I realize there are better ways).
Displays a pop-up showing some basic information about the new file.
We lock down the "user" versions of this program and have a batch file that creates a temporary copy each time the user opens it. Nobody ever writes to the external databases. The users never write to anything, only read. Admins write to the internal access tables manually.
As far as scale, I can't imagine us having more than 3 admins, and maybe ~30 users.
While there's nothing particularly "wrong" with this program, I'd like to know, if we wanted to use some newer software, what we should move to. Currently, I am only familiar with VBA, but I'd love to learn a "real" programming language (particularly interested in python, but would try most anything), so that isn't necessarily an issue. MS Access can be kinda clunky sometimes, and it just looks old, so I'd love to know if there's something smoother and shinier that would make sense for our uses, and it would be fun for me to have a little pet project and learn new languages/software.
Any suggestions? Thanks!