> 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.