Enable multi-user editing
Allow multiple users, in a business to access the database at the same time so that multiple transactions can be entered or updated simultaneously, and do so with remote access capabilites like Terminal Server (Windows) or X-Term sessions (Linux/Unix) .
This is a feature in many commercial programs and this is exactly why many business users of such programs are not using GnuCash.
If GnuCash wants to secure donations from the business community beyond the home or individual operating as a business, this feature will make GnuCash extremely attractive to a market that routinely pays $3,000 to $5,000 for products lke Quickbooks Pro with $850-$1,000 per year support contracts.
This request is understandable and useful for some users. However, to be honest this won’t be implemented in GnuCash for quite some time (read: years) to come. GnuCash in its current design is targeted towards a home user or small business user, and to reach that goal, several software architecture decision were taken much earlier that currently prohibit any multi-user editing feature. Because of this, we have to decline this request for now.
going further on multi-user gnucash enabling ---> we can add columns created_by and modified_by to all tables and allow editing of records only to the user who created it or the admin ... triggers can be used to add data to the new columns and this will save programming effort ...
but i still feel even with the current architecture multi use would be possible ... probably beginning with what i commented below ... need some more comments from developers of gnucash to post more ideas on this ...
CSTIM ... is it illegal to start a same to same copy of gnucash project even if it is open source?
well i think multiuser access could be possible with database server at backend like MySQL ...
all that needs to be done is to use InnoDB tables and the transaction isolation level to Serializable ...
yes it would slowdown things but to start with this could be a safe option ... along with only insert allowed from data entry stations and edits to be allowed from only one station ...
It's obvious that after 10 years (or more) of people telling GNUCash that multi-user is what is necessary to make it a useful program for businesses that this feature is not going to happen.
I suspect the codebase is too antiquated in design to be able to support this feature without completely re-writing the codebase.
A new team needs to fork this project or start a new project with the proper design parameters accounted for right from the beginning. Instead of just trying to stretch a checkbook-helper program into a real business program.
Hello! I use MySQL (it very much cool! And quickly!). Whether it is impossible to make the multiuser access through a database? :)
Back in 2005 :
Derek Atkins wrote:
>> Right now there's not a good multi-user gnucash solution. You can
>> have multiple users serially use gnucash, but not simultaneously.
>> We're working to recitify that situation, but that wont be solved
>> until at LEAST the next major release.
Many would like to see this feature and it would make Gnucash much more viable to businesses,
I would love the hear the latest news about this from the Gnucash team.
Multi-user please !!
Pablo Scolpino commented
This feature and the architectural changes it entail are extreamely interesting. i would be willing to volunteer developer time.
Hideaki Shiina commented
I quite agree with Jorg.
I think Gnucash should be server.
Jorg Bliesener commented
I have no doubt that this suggestion represents a major issue. However, I consider it more than just "nice". It's a MUST for gnucash to evolve. This should be complemented with a good API that allows for alternative user interfaces (AJAX,Static Web, Command line, ...), effectively introducing MVC concepts.
Not to add project creep... multi user will allow for POS.
There have been a few startup's that i could have suggested GnuCash but multi was a requirement.
Vladimir Bashkirtsev commented
I would agree that such "feature" will make us see GnuCash 3. Current code base clearly had no intention to become multi-user system. But I will agree with OP also: this feature is REQUIRED for GnuCash to move onto serious business scene.
My business is small but I'd like to have GnuCash running on my notebook and on my desktop in the office simultaneously. I found it relatively simple: as I am only user I can reload book from open DB over VPN and ignore warning that DB is already open. So it does the job but if I have someone else working on the same DB in my office it may throw things out of balance quickly and may be even corrupt DB.
Admincstim (Core Developer, GnuCash) commented
I'm not opposed to this suggestion, but I'd just like to add that it will require an almost complete rewrite of gnucash. Subsequently, this rewrite will probably happen in another programming language (C++, Python, Whatever). And this rewrite will probably take 12-18 person-months until it reaches feature parity for the main business features.