Our company has a sales system with many additional features, such as order and reception functionality, sales and order history, etc. Our main problem is that the system was not developed properly from scratch, so it takes too much time to fix and process requests from our customers. In addition, the current technology that we use (Progress database, Progress 4GL for the language) incurs a lot of licensing costs for our customers because of the mutli-user license fee for connecting to the database, etc.
After much discussion, it looks like we are likely to start from scratch (while maintaining the current product, at least for now). We are looking for a couple of things:
Build a system with a nice GUI (currently, CHUI and the application were not built in such a way that we could redesign the interface ... without splitting or separating the business logic and gui ... shudder).
Create a system with the ability to modulate various functions so that the product does not include all functions. This will reduce the cost of our current customers who want to have basic functionality and lower the price. Bells and whistles will be available to those who want them.
Use the right design patterns so that the product can easily add or change any part at any time (i.e. change the database or change the external interface without having to rewrite the application or most of it). This is a problem today because 4GL Progress code is directly compiled against the database. Small changes to the database require a lot of recompilation of the code.
Our new system will be based on Linux, with the ability to use a client application from one or more windows.
So, I am looking for any suggestions about which databases and / or frameworks or programming languages can be recommended to someone for this kind of products. Anyone with experience in this area can point us in the right direction or even have some ideas on what to avoid. We looked at .NET and SQL Express (we don’t need an enterprise-level DB), but this will limit us to windows (as far as I know, one way or another). I heard about Mono for writing .NET code on Linux, but I don't know about it yet. We also looked at Java and MySql based implementations.
To summarize, we want to do the following:
Stop licensing costs for the technology that we will use to develop the product (Oracle, yikes! MySQL, nice.)
Provide a solution that is easy to maintain and maintain.
A solution that has a component that can run on "old" equipment through the CHUI interface. (some of our customers have 40+ terminals that will be tons of cash to convert them to a PC).
Suggestions will be appreciated.
thanks
[UPDATE] I should note that we are currently conducting a general cost analysis. This question is intended to give us a couple of “educated” options that could be included in the analysis or analysis. Anyone who could share experiences / suggestions on client / server settings would be appreciated (and not just those who have experience working with points of sale ... it will be just a bonus).
[UPDATE]
For everyone who is interested, we ended up working with Microsoft Dynamics NAV, LS Retail (a plug-in for a point of sale and much more), and then did some (and currently working) work on setting up on top of this. This setting gave us additional benefit from the presence of a fully integrated g / l system, which our current system lacked.
database frameworks client-server point-of-sale
Jason down
source share