> On Jul 26, 2018, at 4:36 AM, Mike or Penny Novack 
> <stepbystepf...@dialup4less.com> wrote:
> 
> On 7/25/2018 8:20 PM, John Ralls wrote:
> 
>> GnuCash is actually very modular (perhaps a little too much, there are parts 
>> of it that are modules and probably shouldn't be). I wouldn't say it's easy, 
>> nothing in programming GnuCash seems to be easy, but it's possible for a 
>> third party developer to create a payroll module for their jurisdiction and 
>> for users in that jurisdiction to add it to their GnuCash installations. But 
>> in 20 years no third party developer has ever expressed any interest in 
>> creating a GnuCash plugin. Regards, John Ralls 
> 
> "Plug ins" (feeds) have TWO parts. Sender and receiver. As I understand the 
> issues (decades of experience in software design) there are TWO parts to a 
> "plug", can think of as male (sender) and female) receiver. It is the 
> receiver that needs to be responsible for input editing of feeds and THAT is 
> a good sized project all by itself << do not accept a feed that will not 
> work, how to report this to sender, etc. >>
> 
> Saying that no third party has expressed interest in writing something that 
> would send a feed to gnucash ignores that gnucash does not have the 
> capability of (properly) dealing with batch feeds.

“Plugins” are generally regarded as code modules that extend a program’s 
functionality. Maf’s already mentioned the business modules, though those have 
since been integrated into the engine. The various importers are plugins that 
implement what I think you mean by feeds: They take data in a different form 
and convert it to GnuCash data.

A payroll module could be implemented either way: As a plugin that implements 
all of the payroll functions required for a particular jurisdiction and stores 
that data directly in the GnuCash database (though that would also require 
modifying the GnuCash backend modules to properly store the data) or as a 
separate program that maintains all of the HR stuff and just sends the 
financial transactions to GnuCash. That could be accomplished either by writing 
a GnuCash plugin to implement a new data format, by having the program emit the 
transactions in one of the forms already supported by GnuCash (e.g. 
ofx-direct), or by using the GnuCash API in C, Python, or Scheme and accessing 
GnuCash’s backend directly.

Regards,
John Ralls

_______________________________________________
gnucash-user mailing list
gnucash-user@gnucash.org
To update your subscription preferences or to unsubscribe:
https://lists.gnucash.org/mailman/listinfo/gnucash-user
If you are using Nabble or Gmane, please see 
https://wiki.gnucash.org/wiki/Mailing_Lists for more information.
-----
Please remember to CC this list on all your replies.
You can do this by using Reply-To-List or Reply-All.

Reply via email to