Re: [GNC] How to install Gnucash 3.8 on Debian 10 "buster"?

2020-03-02 Thread Peter Zimmerer
In my opinion one has to distinguish between
- pure bug fixes,
- legal changes, and
- new features.

The changes in Gnucash from version 3.7 to 3.8 and beyond are mainly
covering changes because of regulatory changes of the European Union
(e.g. https://en.wikipedia.org/wiki/Payment_Services_Directive), which
is neither bug fixing nor new feature developement to me.

I would vote for GnuCash 3.8 or better the upcoming 3.9 version to be
integrated into one of the next point releases of Debian Buster (10.4 or
10.5). Without that, the GnuCash version within the current Debian
stable release will be largely useless for online banking within the
European Union.

I'm running Debian Buster too and I have currently
- uninstalled Gnucash and the related Gwenhywfar and AqBanking packages
- cloned the current versions from the respective Git repositories,
- and have built and installed them into /usr/local.
This works to my satisfaction.

The attached (text)script might give you a good starting point, but it
makes no claim to completeness.

Regards,
Peter

Am 02.03.20 um 16:59 schrieb Colin Law:
> On Mon, 2 Mar 2020 at 15:51, km22  wrote:
>> P.S. I believe this is the bug in 3.4:
>> https://bugs.gnucash.org/show_bug.cgi?id=797046
>>
>> It is too bad there isn't a way for Debian's stable release to get bug
>> fixes so that the stable version in the repo remains the most reliable
>> version.  Seems the current model means that users are stuck with
>> whichever version is baked into the stable repo - warts and all.
> If Gnucash did bugfix releases which were purely bug fixes and did not
> change features then those could be incorporated into the Debian
> release.  So for example after 3.8 if there were 3.8.1 which just
> fixed bugs then that would be ok.  The rule is that users must be able
> to upgrade to the latest version in the repo without risk of finding
> that the the software has changed under their feet.  However, to do
> bugfix releases is a lot of work for the developers as they then have
> to maintain two versions of the code and they have more important
> things to do.
> 
> Colin
> 
sudo apt-get install build-essential git libtool pkg-config


Gwenhywfar:
==

sudo apt-get install libglib2.0-dev libgcrypt20-dev libgnutls28-dev libgtk-3-dev
mkdir -p ~/git
cd ~/git
git clone https://git.aquamaniac.de/git/gwenhywfar
cd gwenhywfar
make -f Makefile.cvs
./configure --with-guis=gtk3
make
make check
sudo make install


Aqbanking:
=

sudo apt-get install libxmlsec1-dev
cd ~/git
git clone https://git.aquamaniac.de/git/aqbanking
cd aqbanking
make -f Makefile.cvs
./configure
make typedefs && make types
make
make check
sudo make install


Gnucash:
===

sudo apt install cmake swig libglib2.0-dev libgcrypt20-dev libgnutls28-dev 
libgtk-3-dev libssl-dev libxmlsec1-dev libwebkit2gtk-4.0-dev gettext 
guile-2.2-dev libofx-dev libxslt1-dev xsltproc libboost-date-time1.67-dev 
libboost-filesystem1.67-dev libboost-locale1.67-dev libboost-regex1.67-dev 
libboost-system1.67-dev libdbi-dev libdbd-pgsql libdbd-sqlite3 libsecret-1-dev 
libgtest-dev libgmock-dev
cd ~/git
git clone https://github.com/Gnucash/gnucash.git
mkdir -p ~/build/gnucash
cd ~/build/gnucash
cmake -DCMAKE_BUILD_TYPE=debug -G"Eclipse CDT4 - Ninja" 
-DCMAKE_ECLIPSE_GENERATE_SOURCE_PROJECT=TRUE -DCMAKE_INSTALL_PREFIX=/usr/local 
~/git/gnucash
ninja
ninja check
sudo ninja install


Eclipse
===

sudo apt install cmake-gui gdb openjdk-11-jre-headless ninja-build

cd /opt
sudo tar -xvf ~/Downloads/eclipse-cpp-2019-12-R-linux-gtk-x86_64.tar.gz

cat << ===EOF=== | sudo dd of=/usr/local/share/applications/eclipse.desktop
[Desktop Entry]
Version=2019-12
Name=Eclipse
Comment=Eclipse is an IDE
Exec=/opt/eclipse/eclipse
Path=/opt/eclipse
Icon=/opt/eclipse/icon.xpm
Terminal=false
Type=Application
Categories=Utility;Application;Development;
===EOF===



signature.asc
Description: OpenPGP digital signature
___
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.


[GNC] Weird behavior of gnucash-aqbanking account mappings

2020-02-16 Thread Peter Zimmerer
Hi all,

I have tested online banking with fints pin/tan this weekend for a quite
recent gnucash version (e.g commit b23d244 from maint, aqbanking 6.1.0,
gwenhywfar 5.2.0) and have found some weird behavior with the
gnucash-aqbanking account mappings.

In order to reproduce this behavior please create a new gnucash file
with at least two bank accounts (e.g. with account names "Account1" and
"Account2").

In order to analyze the effects on the gnucash file I would recommend to
save the gnucash file in sqlite3 format and to watch the changes on the
account-releated entries in table slots with the help of the attached
shell script (requires sqlite3). For this purpose just call

...$ watch SCRIPT_NAME GNUCASH_FILE

at console level.

Now proceed with the online banking wizard as follows:

1.  Create an aqbanking user with at least one online bank account.

2.  Proceed to the "Match Online accounts with GnuCash accounts" page of
the online banking wizard and link the aqbanking account to the
first gnucash account (e.g. Account1).

3.  Proceed to the final page of the wizard and apply your changes.
This will show an output from the script similar to the following:

obj_guidacc_name  slot_name s  slot_value
--      -  -
34a7f42...  Account1  hbci  9  ad00640...
ad00640...hbci/account-id   4  X
ad00640...hbci/account-uid  1  2
ad00640...hbci/bank-code4  50010060

In this case the gnucash account with name "Account1" and identified
by guid 34a7f42... has got three attributes from the aqbanking
account:
- 'hbci/account-id', which is just the account number,
- 'hbci/account-uid ' the unique account id of this bank account
  in aqbanking, and
- 'hbci/bank-code' the bank code of the account
  (German Bankleitzahl).
This is information is used for the (first) online retrieval of
the balance or transactions of this gnucash account.

4.  Open the first gnucash account (e.g. Account1)

5.  Request its account balance by online action "Get Balance"

6.  A "Select Account" dialog will appear and you are requested once
more to assign the retrieved balance to a gnucash account.
Select the first gnucash account (e.g. Account1).

7.  Reply with "No" to the "Reconcile account now?" question.
Now the output from the script should look like the following one:

obj_guidacc_name  slot_name s  slot_value
--      -  -
34a7f42...  Account1  hbci  9  7ec08f4...
7ec08f4...hbci/account-id   4  X
7ec08f4...hbci/account-uid  1  2
7ec08f4...hbci/bank-code4  50010060
34a7f42...  Account1  online_id 4  50010060X

Please note that a new slot attribute with name 'online_id',
which seems to be the concatenation of the  bank code and
the account number, has been assigned to the first gnucash account.
This looks somehow redundant to me because this information is
already covered by the other (hbci) slot values.

8.  Open the "Online Banking Wizard" again and proceed to the
"Match Online accounts with GnuCash accounts" page.

Please note that the previous assignment of the gnucash account
is no longer shown on this page (see also remark below).

9.  Double-click on the same aqbanking account as in step 2, but now
link it to the second gnucash account (e.g. Account2).

10. Proceed to the final page of the wizard and apply yout changes.
Now the output from the script will look like this:

obj_guidacc_name  slot_name s  slot_value
--      -  -
34a7f42...  Account1  hbci  9  056b1cb...
056b1cb...hbci/account-id   4  X
056b1cb...hbci/account-uid  1  2
056b1cb...hbci/bank-code4  50010060
34a7f42...  Account1  online_id 4  50010060X
aa18bf8...  Account2  hbci  9  0291dfe...
0291dfe...hbci/account-id   4  X
0291dfe...hbci/account-uid  1  2
0291dfe...hbci/bank-code4  50010060

Please note that now both gnucash accounts have got assigned to
the same aqbanking account via the 'hbci/...' slot attributes.

11. Now open the second gnucash account (e.g. Account2)

12. Call online action "Requests transactions..." for this account.
Ensure that the selected date interval covers at least
one transaction.

13. Quit the "Generic import transaction matcher" dialog with "OK".

Please note that the transactions are imported to
the first gnucash account but not to the second one which has
been opened just 

Re: [GNC] Reports have got broken with commit f66b7ed

2020-02-14 Thread Peter Zimmerer
Hi John,

thanks for your prompt response.

Am 14.02.20 um 18:34 schrieb John Ralls:
> 
>> On Feb 14, 2020, at 7:00 AM, Peter Zimmerer  wrote:
>>
>> Hi all,
>>
>> if I build gnucash from commit f66b7ed (or a newer commit in maint) any
>> report from the "Reports" menu will show up with an empty page.
>> If I keep the report open and close gnucash the report will be displayed
>> correctly after restart of gnucash.
>> If I open a new report or a report from the "Saved Report
>> Configurations" an empty page will show up again.
>>
>> A build from the previous commit 58ddb47 does not show this issue/behavior.
>>
>> Can anybody confirm this behavior?
> It worked OK for me on Arch Linux with a fresh maint build just now. On what 
> platform are you testing?

I am on Debian 10.3 with Gnome desktop amd I am testing the newest
version of Aqbanking and Gwenhyfar with Gnucash.
I have just tried it with the most recent commit b23d244 from maint on
Github and could reproduce the issue.

> 
> BTW, questions about builds from git are better directed to gnucash-devel 
> than to here.

Thanks for the info. I will use gnucash-devel now.

> 
> Regards,
> John Ralls
> 






signature.asc
Description: OpenPGP digital signature
___
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.


[GNC] Reports have got broken with commit f66b7ed

2020-02-14 Thread Peter Zimmerer
Hi all,

if I build gnucash from commit f66b7ed (or a newer commit in maint) any
report from the "Reports" menu will show up with an empty page.
If I keep the report open and close gnucash the report will be displayed
correctly after restart of gnucash.
If I open a new report or a report from the "Saved Report
Configurations" an empty page will show up again.

A build from the previous commit 58ddb47 does not show this issue/behavior.

Can anybody confirm this behavior?

Kind regards,
Peter



signature.asc
Description: OpenPGP digital signature
___
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.


[GNC] Call of Import Map Editor leads to crash of gnucash

2020-02-03 Thread Peter Zimmerer
Hi all,

inspired by a thread at the German gnucash mailing list I tried to use
the Import Map Editor. Unfortunately, this led to a crash of gnucash.
Standard output has shown the following error message:

terminate called after throwing an instance of 'std::out_of_range'
  what():  basic_string::substr: __pos (which is 17) > this->size()
(which is 16)

The abort is triggered within function parse_bayes_imap_info (source
file gnucash/libgnucash/engine/Account.cpp) and is caused by entries
within the mapping data (table SLOTS) with value NAME = 'import-map-bayes'.

Beside such entries there are a lof of other mapping entries which don
not match the pattern (regular expression)
'^import-map-bayes/.*/[0-9a-f]{32}$'. I suppose, those are mappings,
which have been created by an older version of gnucash and which have
not been migrated/converted by an upgrade of gnucash in the meantime.
They also do not refer to an existing gnucash account with their
OBJ_GUID but they refer to another SLOTS entry instead.

If I create a new gnucash file/book and create new mappings by getting
transactions from my bank only "flat" mappings with account guids are
created.

My gnucash data is stored within a postgres database. I would try to get
rid of the old mappings with the help of the following SQL command:

delete from slots
where
  name =  'import-map-bayes'   or
  name like   'import-map-bayes/%' and
  obj_guid not in (select guid from accounts)

Could somebody confirm this or propose an alternative procedure to
repair the gnucash file?

Thank you very much in advance!

Regards,
Peter




signature.asc
Description: OpenPGP digital signature
___
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.