2011-10-06 GnuCash IRC logs

00:01:25 *** felle has joined #gnucash
00:01:27 *** gncbot sets mode: +o felle
00:09:05 *** fell has quit IRC
00:25:08 *** fellen has joined #gnucash
00:25:08 *** felle has quit IRC
00:25:09 *** gncbot sets mode: +o fellen
00:26:42 *** fellen has quit IRC
02:26:53 *** smw has quit IRC
02:38:02 *** arbortender has joined #gnucash
02:38:12 *** arbortender has left #gnucash
02:39:12 *** Krzysiek_K has joined #gnucash
02:52:03 *** Krzysiek_K has left #gnucash
03:21:37 *** Krzysiek_K has joined #gnucash
03:31:43 *** Krzysiek_K has quit IRC
03:34:17 *** markjenkinsparit has quit IRC
03:47:11 *** bittin has joined #gnucash
04:30:38 *** kpreid has joined #gnucash
04:32:07 *** gjanssens has joined #gnucash
04:34:09 *** gjanssens has quit IRC
06:15:19 *** fDavid has joined #gnucash
07:04:10 *** BenB has joined #gnucash
07:05:02 <BenB> I reinstalled my OS, to change from 32bit to 64bit, same distro. /home dir is same.
07:05:26 <BenB> now, aqbanking broke. problem is that the window with the error message closes again in a split-second.
07:06:06 <BenB> there's a checkbox in the log window [ ] keep the window open after transaction is completed, and I checked that, because I don't want the log window hanging around for a successful operation.
07:06:27 <BenB> I obviously *do* need it when there was an error, just that the software is too stupid to make that difference.
07:07:03 <BenB> smartly, the checkbox is in that very window that closes too quickly.
07:07:35 <BenB> question: how do I get the window back (flip the pref back manually), or see the log in a different way (starting gnucash from console didn't show that log)
07:19:29 *** Jimraehl2 has left #gnucash
07:27:27 *** Jimraehl2 has joined #gnucash
08:15:07 *** kpreid has quit IRC
08:26:13 *** Bodhi has joined #gnucash
08:44:51 *** Krzysiek_K has joined #gnucash
08:45:10 *** Krzysiek_K has left #gnucash
09:04:50 *** fbond has joined #gnucash
09:04:57 *** fbond has left #gnucash
09:05:24 *** fbond has joined #gnucash
09:24:15 *** Krzysiek_K1 has joined #gnucash
09:25:00 *** Krzysiek_K1 has left #gnucash
10:14:37 *** ErKa has joined #gnucash
10:15:05 *** warlord-afk is now known as warlord
10:25:44 *** HerrK has joined #gnucash
10:28:52 *** ErKa has quit IRC
11:23:42 *** markjenkinsparit has joined #gnucash
11:27:29 *** HereCas has joined #gnucash
11:32:53 *** HerrK has quit IRC
11:58:55 *** skurz0 has joined #gnucash
12:25:45 *** fDavid has quit IRC
12:26:35 *** warlord has joined #gnucash
12:26:36 *** gncbot sets mode: +o warlord
12:49:18 *** rpg has joined #gnucash
12:50:52 *** Krzysiek_K has joined #gnucash
12:51:03 *** rpg has quit IRC
12:51:37 *** rpg has joined #gnucash
13:03:06 <skurz0> does anoyone wrote an xslt to recalculate all counters and refcounts?
13:03:48 <skurz0> i screwed up the xml :/
13:04:10 *** gjanssens has joined #gnucash
13:08:59 *** smw has joined #gnucash
13:09:27 <warlord> skurz0: probably not. You can probably just use 'wc' to calculate the number of objects yourself by hand... But keep in mind that hand-editing the xml is "not supported"
13:10:40 <skurz0> ok, i'll probably do it
13:11:09 <skurz0> i've created a company and i would use gnucash for managing the financial part
13:12:02 <skurz0> the problem is that i'm not educated in accounting
13:12:21 <skurz0> and i'm not seeing exactly how to manage the taxes
13:12:59 <warlord> skurz0: I don't understand what that has to do with 'recalculating all counters'...
13:13:48 <skurz0> warlord: the xml contains counters describing the number of elements of a given type (ej. nr of invoices, nr of empoyees...)
13:13:59 <warlord> If you are not educated in accounting I would recommend you do some reading. For something GnuCash specific you can start with the GnuCash Tutorial and Concepts Guide. But I would also recommend you find other "Accounting 101" references.
13:14:02 <skurz0> and also some objects are reference-counted
13:14:16 <skurz0> i agree
13:14:19 <warlord> skurz0: yes, i know that.. I dont understand why you would need to change them
13:14:34 <skurz0> warlord: for example, removing invoices
13:14:34 <warlord> .. or how needing to manage your corporate accounting/taxes relates to the counters.
13:14:42 <warlord> Removing Invoices is not supported.
13:14:47 <warlord> Just re-use the invoice.
13:14:54 <warlord> or mark it inactive.
13:15:04 <skurz0> i prefer to remove it from the file
13:15:10 <warlord> Start over
13:15:20 <warlord> (there is no supported way to do that)
13:15:45 <skurz0> yes, the suppoerted way is to remove the entry and all references from the xml
13:15:54 <warlord> No, that's not supported either.
13:16:03 <skurz0> i can still do it
13:16:19 <warlord> sure, but we dont support you doing it.. so you're on your own.
13:16:26 <skurz0> i agree
13:16:26 <warlord> (it IS your data)
13:16:36 <skurz0> if this is not supported
13:16:51 <skurz0> adding data directly to the xml is also not supported?
13:16:56 <warlord> correct
13:17:17 <warlord> Adding data is only supported using the GnuCash APIs (in C, Scheme, or Python)
13:17:30 <skurz0> the next step was to inject customers and invoices
13:17:38 <warlord> Use the bi_import module
13:18:30 <skurz0> it is not exactly importing what i want
13:19:28 <skurz0> i just want to streamline the process of extracting the terms of contracts and pushing them into gnucash as Jobs and invoices
13:19:34 *** gncbot sets mode: +o gjanssens
13:19:39 *** Krzysiek_K has left #gnucash
13:20:15 <warlord> I would recommend that you fix the bi_import to do what you want -- that will be the best (and probably easiest) thing
13:20:21 <warlord> heya geert.
13:21:16 <gjanssens> Hey warlord
13:21:37 <gjanssens> warlord: I did read the logs, so you're welcome ;)
13:22:01 <warlord> :-D
13:42:13 *** fell has joined #gnucash
13:42:13 *** gncbot sets mode: +o fell
13:45:31 <fell> BenB: Uncheck Edit->Preferences->Online Banking->Close log window...
13:47:06 <BenB> fell: I have only "Ausführliche Fehlermeldungen" (i.e. "Extended error reports" or similar)
13:47:31 <BenB> fell: meanwhile, I fixed it by using aqbanking-cli manually
13:48:04 <BenB> fell: turns out that aqbanking was storing absolute paths, while my home dir is a symlink and moved. stupid.
13:48:28 <BenB> fell: is there a way to make the window close automatically on success, and stay open on errors?
13:48:38 <BenB> that's really what I would expect
13:49:26 <BenB> (no, "Extended error reports" is not the checkbox keeping the window open)
13:49:38 <fell> I believe, This would be a 1+ enhancement request.
13:50:29 <fell> can you check https://bugzilla.gnome.org/browse.cgi?product=GnuCash Aqbanking and GUi component, if one existss?
13:50:48 <fell> And If not, create one.
13:50:51 <BenB> no, no time for searching
13:50:57 <BenB> I can file a bug though.
13:51:18 <BenB> fell: which component?
13:52:09 <BenB> nevermind
13:52:50 <fell> Sorry, have to leave now.
13:53:11 *** fell has quit IRC
14:08:27 <BenB> filed https://bugzilla.gnome.org/show_bug.cgi?id=661109
14:12:12 *** sjc has joined #gnucash
14:46:39 *** HereCas has quit IRC
14:50:53 *** arnotixe has joined #gnucash
15:04:29 *** warlord is now known as warlord-afk
15:31:19 *** naig has joined #gnucash
15:31:45 <naig> how can i adjust report stylesheets on mac os x?
15:52:54 *** fbond has quit IRC
15:53:49 *** fbond has joined #gnucash
16:04:43 *** kpreid has joined #gnucash
16:11:27 *** naig has left #gnucash
16:15:45 *** Bodhi has quit IRC
16:35:24 *** kpreid has quit IRC
16:47:30 *** warlord-afk is now known as warlord
16:52:06 <gjanssens> warlord: I'd like to check some credit note ideas with you
16:52:13 <warlord> sure.
16:52:48 <gjanssens> You know the current restriction on signs of splits: positive = invoice, negative = payment (simplified of course)
16:53:12 <gjanssens> And that just removing this restriction would confuse the logic based on this.
16:53:34 <gjanssens> I have found most of the sensible spot for this logic, and I think they can be solved
16:54:25 <gjanssens> My idea is to allow positive or negative invoices, with a negative invoice functionally being a credit note
16:54:53 <gjanssens> The GUI however, I want to continue to work with positive values, like it is now
16:55:10 <gjanssens> I mean both for bills as for invoices, you generally enter positive values
16:55:23 <gjanssens> I want this also for credit notes
16:55:42 <warlord> Part of the issue is the logic of how to know if a split in the lot is a payment or not. The invariant is that you can have only 0 or 1 invoice splits in a Lot, but can have any number of "payment" splits.
16:55:56 <gjanssens> Which means I have to extend the invoice dialogs to also work with credit notes.
16:56:05 <warlord> So the question is how do you tell whether a split is an invoice split or a payment split, where a credit note would need to be detected as a "payment"
16:56:57 <gjanssens> No, a credit note is a document just like an invoice, it's not just a payment.
16:57:19 <gjanssens> You "pay" a credit note to a customer, or your vendor "pays" his credit note to you
16:57:46 <gjanssens> In practice this is usually done by substracting it from another invoice/bill, I know
16:58:01 <warlord> From the monetary transaction side (ignoring the invoice metadata), a credit note creates a transaction that acts like a "payment"
16:58:02 <gjanssens> But I need to track the documents themselves as well as the way they are "payed"
16:58:36 <gjanssens> I understand the monetary effect
16:58:38 <warlord> Or are you saying you need a secondary entry, a credit note and then later "paying" the credit note?
16:58:49 <gjanssens> Exactly.
16:58:54 <warlord> UGGH! Why?
16:59:19 <gjanssens> Because European law requires to track credit notes in the same way as invoices
16:59:36 <gjanssens> But I do intend to make this easy, you know
17:00:23 <gjanssens> I intend to extend the payment functionality to be able to pay several invoices/credit notes in one go
17:00:32 <gjanssens> Instead of having to enter a payment per document.
17:00:45 <warlord> From the transaction side, a credit note is effectively a negative invoice, credit A/R and debit Income, right? So what would be the secondary "paying a credit invoice" transaction?
17:01:11 <warlord> You don't have to enter a payment per document. The system has always been able to pay multiple invoices at once.
17:01:45 <gjanssens> I know, but by introducing a credit note document, the system of automatic payments falls flat on its face
17:02:20 <warlord> nevermind -- I just answered my second question -- It would work like a "negative customer payment", credit Bank and debit A/R
17:02:41 <gjanssens> In my view (and European law as well) a credit note is like an invoice in all aspects except for the sign
17:02:56 <warlord> Are you not allowed to apply a credit note to an invoice?
17:03:54 <gjanssens> From an accounting point of view yes, but the GnuCash lot logic prevents it: you can't assign two invoices to one lot
17:04:06 <gjanssens> Remember a credit note is also an invoice, albeit negative
17:04:41 <warlord> This is why I said earlier that you need to be able to treat a credit note as a "payment"
17:05:23 <gjanssens> Again: I can't for legal reasons, and I don't think I have to
17:05:44 <gjanssens> The limiting logic can be extended to cater for this.
17:05:56 <gjanssens> That was part of my analysis
17:06:05 <warlord> But I think I see where you're going on this. It would be nice to have a "Process Customer Payment" dialog that lists all the open (unpaid) invoices and lets you click off which ones to pay.. and potentially allows you to apply a credit note as a payment.
17:06:18 <gjanssens> Yep
17:06:47 <warlord> .. and then potentially a "pay credit notes" dialog that's effectively the same.
17:06:57 <warlord> I just don't know how the lot logic would work.
17:07:23 <warlord> (especially if you unpost an invoice or credit note, make changes, and then re-post it)
17:07:53 <gjanssens> But I would also prefer to keep some form of automatic payment assignment so you're not required to actually click the invoices and credit notes
17:08:59 <gjanssens> Yes, the lots are tricky beasts, and we need to check all possible scenarios
17:09:42 <warlord> Yep. I'm not even sure I got them all right, as clearly there's still a bug in there that gets the lots out of sync.
17:09:53 <gjanssens> That's why I wanted to postphone the extended payment dialog to later.
17:10:12 <warlord> and I agree, it would be nice to keep the automatic assignment.
17:10:22 <puck> Hey, anyone interested in a Gnucash -> CalDAV tool? It'll stick any txns marked as "To Do", "AP" or "DD" into a calendar.
17:10:53 <gjanssens> The first addition would simply be a negative document type, which can be created/posted/paid, independently of the normal invoice
17:10:59 <warlord> Well, you could still do the dialog but just auto-check-off the first N invoices that take up the payment.
17:11:30 <warlord> puck: in what language? and as a part of gnucash or a completely separate tool?
17:11:32 <puck> (ugh, sorry about jumping into the middle of the conversation, I thought it was several hours later than it really is...)
17:11:36 <puck> warlord: Python
17:11:41 <gjanssens> That would initially mean make two payments to substract the credit note from an invoice, but allows me to tackle one problem at the time.
17:11:43 <puck> Using the Python bindings
17:12:19 <warlord> gjanssens: sure, but it does mean we can short-circuit that txn later.
17:12:41 <gjanssens> Indeed.
17:14:42 <gjanssens> puck: you have this tool written already ?
17:14:46 <puck> gjanssens: yes
17:14:57 <gjanssens> Cool :)
17:15:22 <puck> I just have another calendar in Evolution that shows what txns I have to manually process
17:15:35 *** kpreid has joined #gnucash
17:15:42 <gjanssens> As far as I'm concerned it would make a nice addition to the python example scripts if you like to share it
17:17:01 <puck> Sure. I'll publish a git repo for it shortly. I'm also going to throw together an account analysis tool to help with my personal budgetting.
17:19:43 <warlord> puck: cool.
17:19:47 <gjanssens> puck: just so I understand you correctly: you will be publishing your projects yourself instead of adding them to GnuCash ? I first was under the impression you wanted to add them to GnuCash
17:20:07 <puck> Well, I'd expect to continue to maintain and add features to it.
17:20:39 <puck> I'm open to suggestions on how to make it easily available as an example
17:20:59 <gjanssens> That can be done in both cases. Note that both scenarios are ok for me by the way, I don't have a strong preference
17:21:08 <puck> Maybe have it included as an example, and if I make major changes I forward another copy. :)
17:22:22 <puck> Only minor issue I have is I've based my code on one of the existing examples, but because it is GPL-2 the original attributes have to remain. Not a biggy, but it could mean peoples code ends up with lots of attributions based on which example they use!
17:23:28 *** bittin has quit IRC
17:26:38 <puck> I just need to wait for my wife to get home to turn on my home workstation so I can test a couple of changes. (Wish I had a lights out management setup for that box!)
17:28:48 <gjanssens> puck: the advantage of having it included in GnuCash is that it comes pre-installed when you download GnuCash (the source, I mean, which you still have to build with python-bindings enabled of course)
17:28:57 <puck> Yes, absolutely.
17:29:03 <gjanssens> If you self-host, people still have to find you.
17:29:11 <puck> And for Debian it'll be included in the python-gnucash package. :)
17:29:43 <puck> I'm quite happy for it to be included in the Gnucash release.
17:29:51 <gjanssens> I don't think GnuCash has a good infrastructure available to promote related external projects.
17:30:16 <gjanssens> I think that would be a nice addition, but I'm only dreaming out loud right now.
17:30:25 <gjanssens> I don't have time to work on such thing
17:30:51 <gjanssens> Ok, that's fine.
17:30:59 <puck> Heh, I can totally understand that!
17:30:59 <gjanssens> (Including in GnuCash I mean :)
17:31:12 <puck> Are there many external projects around gnucash?
17:31:27 <gjanssens> Not at the moment, but there are some
17:31:45 <puck> cool
17:31:53 <puck> ooh, website facelist. :)
17:31:56 <gjanssens> And in the back of my mind I was also thinking of ways to share custom reports some users have made and such
17:32:05 <puck> Yeah, that'd be handy
17:32:22 <gjanssens> Or example stylesheets for e-guile based reports and so on.
17:33:45 <gjanssens> warlord: a question on how data is loaded in GnuCash
17:33:52 <warlord> okay..
17:34:24 <gjanssens> when an invoice is loaded, does it or can it have information at that time about its entries ? Or are they loaded later
17:35:20 <gjanssens> I'm asking because the logic to determine if an invoice object represents an invoice or a credit note would depend to it's net value being positive or negative
17:35:29 <warlord> theoretically the entries can be loaded later.
17:36:37 <gjanssens> I'd want to add a flag to the loaded invoice object to mark it as invoice or credit note, but for that the code needs to know the net value
17:37:13 <gjanssens> If the entries are loaded later, I can't set this flag at load time of the invoice, because at that point the total value can't be calculated yet.
17:39:06 <gjanssens> So when would be a good time ? When the entries are loaded ? Or can the entries theoretically also load before the invoices are loaded ?
17:39:10 <gjanssens> I would think not
17:39:14 <warlord> Hmm.. Do you want to be able to turn an invoice into a credit note, and vice-versa? Or do you want to specifically create a credit note and have it marked as such?
17:39:45 <warlord> I think entries can theoretically load before the invoice.. and it would create a "proto invoice" that would get filled in when the invoice data loads.
17:40:17 <gjanssens> I started with the goal to modify the data format as little as possible
17:40:56 <gjanssens> From that goal I inevitably came to the scenario where you could turn an invoice into a credit note, simply by changing its net value from positive to negative
17:41:29 <gjanssens> If I want to avoid that (and that may be better that's why I'm here to talk about it), I have to add a field in the data structure
17:41:48 <gjanssens> With all backward compatibility issues associated with it.
17:43:20 <gjanssens> Ideally, you can't just convert a credit note into an invoice and vice versa. I think if you could, that would have unexpected consequences.
17:43:29 <warlord> I think it might be better to add a flag.. And then you can keep the logic consistent (always positive or always negative)
17:43:57 <gjanssens> Yes, the more I think about it, the more that seems like the best way to go.
17:44:13 <warlord> Yes, I tihnk so too.
17:44:29 <gjanssens> I suppose a kvp slot will be least intrusive, right ?
17:44:46 <gjanssens> John will hate me for adding yet another one :(
17:45:10 <warlord> Yep, he will
17:45:15 <warlord> qwwwwweeeeeeryi;
17:45:17 *** rpg has quit IRC
17:45:40 <warlord> Sorry, my 3yo niece is playing with my keyboard.
17:45:55 <gjanssens> hehe
17:46:10 <warlord> it's cute -- she's counting keys
17:47:35 <gjanssens> But since we don't have a good mechanism to deal with changing data structures acros releases, I don't see another option.
17:47:46 <gjanssens> A kvp slot it will be
17:48:05 <gjanssens> I'll be so kind to update the database schema for John
17:48:11 <warlord> :)
17:48:30 <warlord> Well, do we care about older versions of gnucash being able to understand credit notes?
17:48:39 <warlord> Or only 2.4 <-> 2.6?
17:48:49 <gjanssens> I looked into this.
17:49:46 <warlord> Note that 2.4.current wont know how to process credit notes correctly.
17:49:51 <gjanssens> Some parts are affected enough to consider dealing with it in 2.4 also.
17:49:56 <warlord> so it might not be a bad thing if it cannot read it.
17:50:17 <gjanssens> The required changes are very limited though
17:50:27 <warlord> I agree.. But I think we can probably use an actual XML tag so it really does cause failure for older versions that don't understand the data type.
17:50:56 <gjanssens> Ok for me as well. That would make my life easier.
17:51:08 <gjanssens> So the bottom line would be:
17:51:09 <warlord> Just make it an optional flag that's only set on credit notes.. so if you only have invoices then the tag wont show up, and older versions can read it fine, but if you have a credit note it will emit the new tag and older versions w/o knowledge will barf.
17:52:02 <gjanssens> As long as you don't use credit notes, your data file is still compatible with 2.4 and older
17:52:20 <gjanssens> If you have created a credit note, the file won't open anymore in older versions
17:53:11 <gjanssens> I'll look into an optional flag. How does that work on the database schema by the way ? I'll have to check.
17:54:25 <gjanssens> Out of curiosity: how does GnuCash inform the user of an unknown data element in the data file ?
17:54:45 <gjanssens> Does it have an infrastructure in place to inform the user in a nice and informative way ?
17:55:12 <gjanssens> Or does it just bail out referring to the unknown xml tag ?
17:55:26 <warlord> I think it just bails out..
17:55:35 <warlord> I dont know how it would work in the SQL.
17:55:50 <gjanssens> Bleh, I think we could do better there, but that's another project
17:55:52 <warlord> (maybe a new column with a default value of 'false'?)
18:00:18 <warlord> (I'm not all that familiar with the SQL code)
18:01:57 <gjanssens> I'll check with John and Phill how to handle this in SQL
18:02:21 <gjanssens> I'll have to go. It's bedtime here.
18:02:23 <gjanssens> Goodnight
18:04:14 *** fDavid has joined #gnucash
18:05:47 *** gjanssens has quit IRC
18:10:29 *** fDavid has quit IRC
18:13:32 <warlord> Good night
18:32:02 *** markjenkinsparit has quit IRC
18:40:37 *** sjc has quit IRC
18:52:32 *** kpreid has quit IRC
18:57:35 *** warlord is now known as warlord-afk
18:58:08 *** warlord-afk is now known as warlord
18:59:29 *** kpreid has joined #gnucash
19:07:42 *** arnotixe has quit IRC
19:30:24 *** rpg has joined #gnucash
19:52:27 *** smw has quit IRC
20:24:25 *** fDavid has joined #gnucash
20:50:58 *** warlord has joined #gnucash
20:50:58 *** gncbot sets mode: +o warlord
21:02:14 *** fbond has quit IRC
21:04:49 <puck> warlard: A link to info on my gnucash -> CalDAV tool: http://www.etc.gen.nz/projects/gnucash/
21:08:43 <warlord> puck: gjanssens is the guy you want to talk to.
21:09:12 <puck> 'kay
21:09:27 <puck> I'll ping him next then (Friday round here)
21:09:30 <puck> +week
21:10:14 <warlord> Or send mail to gnucash-devel with that info?
21:15:41 *** skurz0 has quit IRC
21:16:16 <puck> ack
21:43:33 <warlord> thanks puck
21:45:01 <puck> np
22:39:01 *** fDavid has quit IRC
23:44:44 *** BenBu has joined #gnucash
23:48:34 *** warlord is now known as warlord-afk
23:53:32 *** BenB has quit IRC