about that restructuring, and .scm files

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

about that restructuring, and .scm files

Christopher Lam
Regarding adding new reports

Apologies if this is the worst time to ask, but I believe I have fixed some
scheme reports which can be plugged in the following folders. I've tested
in Windows and Ubuntu and they seem to work well. It'll belong in Report >
Collected Reports, and would make a nice addition to 2.8 release.

- scm/gnucash/* will hold gnctimeperiod-utilities.scm and
report-other-menu.scm
- scm/gnucash/report/standard-reports/* will hold new reports

Unfortunately I cannot identify the proper source for the scm/gnucash/*
folder - it seems to accumulate files from src/engine, src/scm... I guess
src/scm is the right one? I don't know how to build from source to test.

Chris
_______________________________________________
gnucash-devel mailing list
[hidden email]
https://lists.gnucash.org/mailman/listinfo/gnucash-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: about that restructuring, and .scm files

John Ralls-2

> On Aug 8, 2017, at 6:02 PM, Christopher Lam <[hidden email]> wrote:
>
> Regarding adding new reports
>
> Apologies if this is the worst time to ask, but I believe I have fixed some
> scheme reports which can be plugged in the following folders. I've tested
> in Windows and Ubuntu and they seem to work well. It'll belong in Report >
> Collected Reports, and would make a nice addition to 2.8 release.
>
> - scm/gnucash/* will hold gnctimeperiod-utilities.scm and
> report-other-menu.scm
> - scm/gnucash/report/standard-reports/* will hold new reports
>
> Unfortunately I cannot identify the proper source for the scm/gnucash/*
> folder - it seems to accumulate files from src/engine, src/scm... I guess
> src/scm is the right one? I don't know how to build from source to test.


Chris,

No, it's a good time to ask.

scm/gnucash collects all of the guile binding code from the various modules. I don't know what "timeperiod-utilities" is supposed to be, but it sounds like it should be an extension of src/engine/gnc-date.cpp. We want to use the same date code throughout GnuCash so whatever you need in timeperiod-utilities should be written in C++ and should wrap boost::date_time to hide the implementation (so that we can easily switch to another implementation if e.g. the C++ committee adds something to the standard library or we decide that ICU provides a better fit) and then provide Guile bindings via SWIG to support your report changes.

It would be a good idea to get a PR up so that we can give you more detailed guidance.

Regards,
John Ralls

_______________________________________________
gnucash-devel mailing list
[hidden email]
https://lists.gnucash.org/mailman/listinfo/gnucash-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: about that restructuring, and .scm files

Christopher Lam
Hi John

Thank you I'll do this when I return to broadband; being away from home and
using LTE means productivity high but bandwidth low.

gnctimeperiod-utilities.scm is from Doug Doughty and is a huge list of
various parameters for date selection for his reports. I wouldn't have a
clue how to code in C++.

I'll create PR in 10 days' time and hopefully someone will test a build.

C

On 9 August 2017 at 01:21, John Ralls <[hidden email]> wrote:

>
> > On Aug 8, 2017, at 6:02 PM, Christopher Lam <[hidden email]>
> wrote:
> >
> > Regarding adding new reports
> >
> > Apologies if this is the worst time to ask, but I believe I have fixed
> some
> > scheme reports which can be plugged in the following folders. I've tested
> > in Windows and Ubuntu and they seem to work well. It'll belong in Report
> >
> > Collected Reports, and would make a nice addition to 2.8 release.
> >
> > - scm/gnucash/* will hold gnctimeperiod-utilities.scm and
> > report-other-menu.scm
> > - scm/gnucash/report/standard-reports/* will hold new reports
> >
> > Unfortunately I cannot identify the proper source for the scm/gnucash/*
> > folder - it seems to accumulate files from src/engine, src/scm... I guess
> > src/scm is the right one? I don't know how to build from source to test.
>
>
> Chris,
>
> No, it's a good time to ask.
>
> scm/gnucash collects all of the guile binding code from the various
> modules. I don't know what "timeperiod-utilities" is supposed to be, but it
> sounds like it should be an extension of src/engine/gnc-date.cpp. We want
> to use the same date code throughout GnuCash so whatever you need in
> timeperiod-utilities should be written in C++ and should wrap
> boost::date_time to hide the implementation (so that we can easily switch
> to another implementation if e.g. the C++ committee adds something to the
> standard library or we decide that ICU provides a better fit) and then
> provide Guile bindings via SWIG to support your report changes.
>
> It would be a good idea to get a PR up so that we can give you more
> detailed guidance.
>
> Regards,
> John Ralls
>
> _______________________________________________
> gnucash-devel mailing list
> [hidden email]
> https://lists.gnucash.org/mailman/listinfo/gnucash-devel
>
_______________________________________________
gnucash-devel mailing list
[hidden email]
https://lists.gnucash.org/mailman/listinfo/gnucash-devel
Loading...