I need a database management system for an industrial production line.
The program needs to allow a company manager / a project(order) manager / or a production line worker(terminal on the production line) to access the system with different privileges so that he can modify / overview/ report (detailed)progress status. All the different account types should have different types of interfaces associated with them(accessed from different network connected terminals).
The database should reside on a server in a local (factory level) network. All the terminals(for the factory owner / project managers / workers / etc) should communicate with this central server.
The production process is fairly complex and needs to be detailed in the database for every order with a very precise list o materials and quantities. The materials used will have to be individually registered(every item separate) in the stock of the factory.(if the factory uses for example "coins" each coin will have to be registered in a separate entry by bar codes on them when they are bought as resources for the production).
When a worker logs in the system he will enter the codes/ids of the resources he will use on his station so that it can be determined which worker used which resource at what time on what technological process(work station) for how long.
Each order will have specific technological processes, that need to be followed using specified resources, when created so that it will be possible to know if there are enough materials in stock.
So basically: Enter a received order and precisely plan it or modify it if it's called for, monitor it or insert detailed info for the progress of it(for the worker).
Also a very detailed log is necessary. If the order is modified at any time by someone the change has to be registered not just as a simple log(some text file) but again in some form in a database (maybe as a whole new individual order with the mention that it is a certain old order revised).
This is a general description of what the software system should do but we are opened to ideas.
Please suggest what programming language you would use and the way you would implement the "log" system. We are opened for any other suggestions. Also, please give an estimate on the time and money needed to complete such a project.