Desktop version runs on windows 10 desktop. Data are stored in MS SQL server (demo version uses MS Access database in order to simplify deployment). Desktop version does not need to support multi-user access.
- Users need to authenticate prior manipulating data (user name and password)
- Only authorized users can perform certain operations (user privileges owner and admin)
- Database is accessed via shared SQL server account, password is stored encrypted in the config file
- Database maintenance, backup and possible restore is handled via tools they are part of the SQL server installation
Web server code is designed in PHP, without use of any frameworks. Shared code is kept in libraries, both procedural and object-oriented.
Such design simplifies application deployment. Please note this approach might not be suitable for larger projects.
Data are stored in MySQL database.
- Data are synchronized with a local database. No need to backup data here.
- Web-based application is accessible to anybody with an internet access. Additional security measures need to be applied in order to prevent or at least eliminate malicious activity (fake data, guessing user credentials).
- Web-based application is a multi-user application (meaning multiple users can create new orders at the same precise moment). Code needs to support multiple opened orders concurrently.
- It is possible over time several unfinished orders can be collected in the database. This is due to the fact user actually does not need to submit order. Such orders might be cleaned on occasion.
It is generally expected a Web application is available for customers 24/7. Typical solution is running the application on a hosted, shared database and a web server. In addition to a reliable service, you can get technical support when needed.
One distinct advantage using SQL server is an option to query data directly. This option simplifies application design as not all reports need to be coded by a programmer.
MS Excel, MS Access or several other tools are suitable for such ad-hoc reporting. Part of the application design are views they simplify reports creation by regular users.
See attached database schema. I will walk you through certain details needed to know in order to extract data from the database properly.
DB schema - Crow's Foot notation