2021-03-28 GnuCash IRC logs
00:05:39 *** Mechtilde has joined #gnucash
00:17:38 <AdrienM> noregret, what do you mean "can't figure out what to do"? If you purchased raw material for production, you would record a transaction for the purchase between the source account used to make the payment, and an asset account for raw materials.
00:18:47 <noregret> AdrienM: I meant after that, after the product is created. How can I handle those "used" materials?
00:19:32 <AdrienM> As material is put into production, it is shifted to another asset account for Work In Progress, then something like Completed Goods, then finally expensed under Cost of Goods Sold. This is not specific to GnuCash. It is standard manufacturing accounting.
00:21:30 <AdrienM> There may be other necessary accounts based on your particular situation. A local accountant familiar with your legal requirements and your industry can help you further.
00:26:26 <noregret> got it, thanks. Can anyone recommend a stock system that can be used along side gnucash?
00:31:01 <AdrienM> Sorry, the only one I've used was for retail furniture. Maybe someone else can offer a suggestion for manufacturing.
00:48:54 <noregret> I think "manufacturing" is too much for this =) this about a bakery, so.. cakes lol
01:30:15 *** frakturfreak has quit IRC
01:39:47 *** fell has quit IRC
01:41:07 *** fell has joined #gnucash
01:41:07 *** ChanServ sets mode: +o fell
01:43:46 *** yyoshino has quit IRC
01:44:00 *** yyoshino has joined #gnucash
01:44:26 *** frakturfreak has joined #gnucash
01:44:26 *** ChanServ sets mode: +v frakturfreak
02:51:57 *** xqdt has left #gnucash
04:12:33 *** chris has joined #gnucash
04:12:33 *** ChanServ sets mode: +v chris
04:18:25 *** tomk_dk has joined #gnucash
05:22:43 * chris thinks a GnuCash guide to Bakery accounting would be nice...
06:40:40 *** bertbob has quit IRC
06:53:26 *** bertbob has joined #gnucash
06:53:26 *** ChanServ sets mode: +v bertbob
08:25:05 *** jeblad has joined #gnucash
08:25:24 *** Agfarmer18 has joined #gnucash
08:31:04 *** Agfarmer18 has quit IRC
08:31:16 *** Agfarmer18 has joined #gnucash
08:34:15 *** Agfarmer18 has quit IRC
09:14:17 *** Agfarmer18 has joined #gnucash
09:15:16 *** Agfarmer18 has quit IRC
09:31:16 *** Aussie_matt has quit IRC
09:57:06 *** Agfarmer18 has joined #gnucash
10:03:20 *** Agfarmer18 has quit IRC
10:28:37 *** Pegasus_RPG has joined #gnucash
10:36:28 *** jeblad is now known as jeblad_
10:38:30 *** tomk_dk has quit IRC
11:40:00 *** chris has quit IRC
11:57:22 *** Mechtilde has quit IRC
12:03:22 <jralls> Then chris should go learn cost accounting (a whole separate field of accounting about which garden variety accountants know little) and write one.
12:09:28 <jralls> noregret, the basic flow is you have a set of asset accounts for inventory and commodities for each input and output. For your bakery you might have input inventory of flour, sugar, and shortening; to keep things simple you can charge low-cost inputs like yeast, salt, and leavening to overhead.
12:20:29 <jralls> You can't do direct exchange, like 1lb flour->1 loaf bread because of course more goes into a loaf of bread than flour, so you need an intermediate currency account to pass things through. It can get a bit hairy to do by hand.
12:22:13 *** Mechtilde has joined #gnucash
12:25:41 <jralls> Another approach is called "standard cost". Instead of tracking quantities you just track currency value of the inventories: A batch of bread uses $100 flour, $1 yeast, $0.50 salt, $1.50 water $150 labor, so when you make a batch you transfer those amounts from the various raw materials inventory accounts or expense accounts to finished goods inventory.
12:56:35 *** gjanssens has joined #gnucash
12:56:35 *** ChanServ sets mode: +o gjanssens
13:08:23 <jralls> fell, I'm trying to create a tidy.conf per your instructions in the wiki. There's no `indentation` nor `wrapping`. There are 3 indent-foo, 7 wrap-foo, and punctuation-wrap. Which ones do you mean?
13:09:17 <fell> jrall: which component?
13:11:30 <fell> jralls ^
13:12:23 <jralls> https://wiki.gnucash.org/wiki/Website_Maintenance#W3C_Validation
13:12:48 <jralls> "create an adjusted tidy.conf"
13:16:54 <fell> I have:
13:16:55 <fell> indent: yes
13:16:57 <fell> indent-attributes: no
13:16:58 <fell> indent-cdata: no
13:17:00 <fell> indent-spaces: 2
13:17:01 <fell> indent-with-tabs: no
13:18:01 <jralls> OK. And for wrap?
13:18:21 <fell> wrap-attributes: no, the rest yes
13:18:40 <fell> 68 wide
13:21:01 <jralls> OK. That's the default except wrap-script-literals:no -> yes. Do we have any script-literals?
13:21:56 <fell> Good question
13:26:12 <fell> If you only want to check a news file it is not relevant.
13:27:37 <jralls> That's certainly true, but for that purpose the default config is fine too.
13:29:14 <jralls> I tried the xmllint test too just for yuks. It failed because there's no DTD. Hard to do a validity check without one.
13:29:34 <fell> I did some experiments when writing. So probably it is from a test to see, what changed.
13:31:16 <gnomey> solve this mystery: whenever I launch GC, it shows a "*" next to the filename, suggesting that it was changed. I have lots of scheduled transactions, but every single one of them is set to notify me. So no changes should be made without giving me a popup saying what was changed.
13:31:37 <fell> If you only get the 3 warnings everything should be fine.
13:32:30 <jralls> According to https://validator.w3.org/feed/docs/rfc4287.html there is no DTD and atom feeds aren't required to be valid XML. ISTM there's no point in running xmllint on it.
13:32:31 <gnomey> So then right after launch the star shows, I do a "save as..", and then do a "diff old.gc new.gc". Diff finds no differences.
13:32:47 <fell> But you can also run finally: clear; LANGUAGE=C php news.phtml | tidy -config tidy.conf
13:33:53 <fell> Is it a remain from the xhtml flavour before you changed it?
13:34:23 <jralls> Sorry, lost you there.
13:34:59 <jralls> gnomey, GnuCash 4.4?
13:35:48 <fell> Ah, xmllint is only for the output of atom.php
13:36:05 <jralls> Right.
13:36:16 <gnomey> 2.6.15. this is a problem that comes and goes for me
13:36:20 <jralls> Except that it can't because there's no DTD.
13:36:46 <fell> (Fixme: impovement needed)
13:36:55 <jralls> gnomey, 2.6.x is no supported.
13:37:11 <jralls> fell more like Fixme: Deletion needed.
13:38:02 <jralls> gnomey FWIW I fixed some session goofiness for 4.0.
13:38:17 <jralls> s/no supported/no longer supported/
13:38:55 <gnomey> i'll attempt an upgrade in the coming months, but GC upgrades are always very fragile for me because I also use ledger-cli, and ledger-cli no longer supports querying GC
13:39:16 <fell> Once in a long winter night … ;-)
13:39:51 <jralls> gnomey, That's *definitely* not supported. ledger-cli is fundamentally broken by design. I encourage you to find a better way.
13:39:51 <gnomey> so i'm trapped on an old hacked version of ledger-cli. One day GC will change enough to break it all
13:40:04 <jralls> The sooner the better.
13:40:45 <gnomey> what CLI tool is able to query the GC db?
13:40:58 <jralls> sqlite3.
13:41:16 <fell> AFAIK the *ledger family left us in their version 2 or 3 almost a decade ago.
13:43:54 <jralls> fell, tidy on news.phtml reports a bunch of <bold> tags in an old news article and a bad img tag in an even older one. Maybe I'll fix those later. tidy on index.phtml is clean, so I guess that we need to run it on every top-level foo.phtml.
13:44:21 <gnomey> from looking at the xml, i don't suspect simple sql queries would work if that were stored as sqlite.. what's a simple query in ledger-cli would likely need several layers of nested joins and queries on temporary tables
13:44:51 <jralls> So?
13:45:07 <gnomey> costly migration
13:45:25 <gnomey> i have lots of scripts that build reports
13:45:59 <gnomey> taxes in particular.. it's probably 2000+ sloc
13:46:12 <jralls> Oh well. That's a hole you dug yourself.
13:47:06 <gnomey> actually I was on the surface using stuff that worked well together, and someone dug a hole under me and threw me in
13:49:11 <jralls> No, you chose to build a system based on two separate systems that happened to work together but that aren't developed together, have no commitment to interoperating, and are based on completely different and incompatible premises.
13:49:37 <jralls> That was doomed to failure from the beginning.
13:50:19 <gnomey> it was no accident that ledger-cli worked on GC dbs, it was proactively designed for it.
13:52:22 <gnomey> you can't write queries that will work on some random XML in the wild without knowing the structure of the XML in advance. Someone has to know what the xpath parameters are
13:52:39 <fell> gnomey did you consider to port your scripts to python?
13:53:28 <gnomey> fell: no. they're in bash and i don't know python. Perhaps i'll be forced to learn python one day
13:54:40 <fell> The wiki has the basics and links.
13:55:09 <jralls> fell, don't say things like that. He can't learn to program from the wiki.
13:58:44 <fell> I believe, the linked https://code.gnucash.org/docs/MAINT/group__python__bindings__examples.html i susefull
13:59:59 <jralls> Not if the reader doesn't know python.
14:00:52 <fell> It depends on the level of it's bash scripts.
14:01:03 *** mydogsnameisrudy has joined #gnucash
14:01:42 *** mydogsnameisrudy has quit IRC
14:02:24 <jralls> It's a long way from bash scripts to sufficient python to use the GnuCash API. A *very* long way.
14:03:35 *** jralls changes topic to "Free GPL Personal and Small Business Accounting || Please don't ask to ask, just ask and wait! (Possibly a few hours!!) || publicly-logged channel: https://code.gnucash.org/logs || latest stable: 4.5 || www.gnucash.org/ || wiki.gnucash.org/wiki/"
14:04:59 <gnomey> my core competency is Ada. I may see about using sqlite bindings in Ada as a way to keep my Ada sharp
14:06:08 <gnomey> the reports are either in plain text or LaTeX
14:09:57 <jralls> gnomey, Ada to Python should be pretty easy. Can your Ada implementation call C functions? If so you could access the GC C API directly.
14:10:49 <gnomey> yeah, it's common for Ada to call C functions
14:11:25 <jralls> https://code.gnucash.org/docs/MAINT
14:13:59 <jralls> Though for report writing ginning up some SQL queries might be easier and will surely be faster.
14:20:08 <gnomey> the searches are quite complex.. looking for a regex match in the description that covers transactions where the account name matches a series of regular expressions, which gets piped through a sed script to make some changes and produce CSV that a special LaTeX package can process into a table.
14:21:11 <gnomey> when I look at the "Transaction Report" UI, i don't think it could handle the query, so presumably the API wouldn't either.
14:21:19 <jralls> That sounds like a rather fragile design no matter how you do implement it.
14:23:30 <gnomey> every account is split 6 or so ways for different currencies
14:24:50 <jralls> Nope, accounts have only one currency/commodity each. You mean you have 6 or so accounts with the same name and different currencies.
14:24:57 <gnomey> so i might search in accounts matching expenses:*work*:gbp for work-related costs in GBP
14:25:43 <gnomey> then I repeat the same search for USD.. so looping on each currency
14:26:46 <jralls> OK. If you're trying to make a case for not being able to do that from the engine API you're failing.
14:27:16 <jralls> Because you have direct access to all of the transaction, split, account, commodity, and price objects.
14:27:41 <jralls> And lists to iterate over and filter as you need.
14:29:27 <gnomey> when I look at the "Transaction Report" UI, i don't see a way to grep descriptions. Does the API support that?
14:32:23 <gnomey> e.g. i might grep the transactions that match in accounts "expenses:.*work.*:gbp" for ".*GSM.top-up.*" to collect all work-related mobile phone costs paid in GBP.
14:32:46 <jralls> Of course. The transaction report's GUI is a set of options written on top of a report, it doesn't in any way reflect the underlying data structure.
14:34:03 <jralls> Have a look at https://wiki.gnucash.org/wiki/SQL to get an overview of the actual data structures. There's an ERD that converts the key-value parts into pseudo-tables.
14:36:03 <jralls> That aside it seems that you've done a poor job creating your chart of accounts. You should have an Expenses:GBP:work:mobile-phone account for your example.
14:36:22 <gnomey> i don't see a field in the GUI for pattern matching transaction descriptions, which implies that it wouldn't be in the API. Perhaps this was added after 2.6.15.
14:36:49 <jralls> It doesn't imply anything of the sort.
14:37:41 <jralls> There's no relation at all between what any particular report's options do and the API underneath the program.
14:37:43 <gnomey> so is this functionality that's reachable in the API but unreachable in the GUI?
14:37:54 <fell> Jralls: Congrats to 4.5!
14:37:58 <jralls> Of course. It's the API that the program is built on.
14:39:45 <jralls> None of the GUI is exposed as C API, though the Scheme API has functionality for building options dialogs.
14:40:07 <jralls> Thanks, fell. Everything went smoothly this time.
14:40:39 <fell> Also the flatpak rutime?
14:41:26 <gnomey> i'm looking for the API that handles transaction reports.. I don't see it here: https://code.gnucash.org/docs/MAINT/group__KVP.html
14:41:31 *** Mechtilde has quit IRC
14:42:39 <jralls> There isn't any C API that handles reports. All of the report code is in Scheme.
14:42:42 <fell> The reports are in Guile/Scheme
14:43:16 <fell> They are not documented in the API.
14:43:50 *** Mechtilde has joined #gnucash
14:51:57 <jralls> fell, crud, no, flathub build fails, complaining "': <data>:42:31: Parse error: unexpected string constant "-DBOOST_ROOT=/app", expected character `,'"
14:55:13 <jralls> Trying again.
15:02:34 *** David has joined #gnucash
15:10:46 <fell> jralls, shouldn't you retag it in git?
15:11:07 <jralls> Let's see if it works first ;-)
15:22:53 <fell> jralls, you didn't push htdocs.
15:23:30 <jralls> Thanks, done now.
16:18:32 <fell> The flathib guy Steinhagen is quick: https://github.com/flathub/org.gnucash.GnuCash/pull/38#event-4518474554
16:22:31 *** Mechtilde has quit IRC
16:25:01 *** David has quit IRC
16:25:08 *** David has joined #gnucash
16:43:21 <jralls> fell, did you see that he's already asked to upgrade to gnome-40?
16:44:04 <jralls> I tested locally and it exists, though `flatpak --update` didn't know about it.
16:44:04 <fell> Somebody else, but nite they inform us.
16:45:03 <fell> flatpak update only updates used versions.
16:45:44 *** User_ has quit IRC
16:47:00 <fell> Last time there was a changed dependency. So they can not force updates to other versions, only build numbers.
16:50:25 <jralls> Do you know how to find out when new runtimes are available? Are they concurrent with the rest of Gnome releases?
16:54:06 <fell> I assume short after
16:55:28 <fell> If you tested it, push it into our nighlies.
16:59:47 <fell> https://docs.flatpak.org/en/latest/available-runtimes.html links to https://gitlab.gnome.org/GNOME/gnome-build-meta
16:59:47 *** jw4 has quit IRC
17:01:15 *** jw4 has joined #gnucash
17:01:16 *** ChanServ sets mode: +v jw4
17:01:20 <fell> and that has https://gitlab.gnome.org/GNOME/gnome-build-meta/-/tags
17:17:02 <jralls> Ah, good. I'll fix the wiki.
17:17:48 <fell> I am just creating a page Dependency_Overview
17:18:52 <fell> stored draft
17:20:44 <fell> OTOH we have the URLs in the json files
17:20:56 <fell> mostly
17:23:40 *** gjanssens has quit IRC
17:30:34 <jralls> I thought that you'd already started a dependency page a couple of weeks ago.
17:31:05 <fell> Yes, It collects the how to
17:31:55 <fell> I fearet it would get to clutterd when mixing it.
17:32:54 <fell> learned from the everlasting process to modularize Translation.
17:38:40 *** clawson has joined #gnucash
17:49:31 <fell> Oh, I just see, aqbanking 6.2.10 is not in our flatpaks.
17:50:28 <fell> For some unlnown reason it was not pushed.
17:52:45 *** jervin has joined #gnucash
17:57:29 <jralls> That's odd, I thought that I'd seen a commit on that for flatpak. Oh well, I don't think that there's anything especially compelling in it.
18:01:54 <fell> Oh it was no typo. I thought they meant gnome 3.40, bbut it is the successor of 3.x.
18:35:26 *** jervin has quit IRC
19:13:30 *** Aussie_matt has joined #gnucash
19:19:47 *** clawson has quit IRC
19:34:58 *** David has quit IRC
19:34:58 *** jeblad_ has quit IRC
19:34:58 *** frakturfreak has quit IRC
19:34:58 *** yyoshino has quit IRC
19:34:58 *** fell has quit IRC
19:34:58 *** finster has quit IRC
19:34:58 *** mikee has quit IRC
19:34:58 *** miklcct has quit IRC
19:34:58 *** Yotson has quit IRC
19:34:58 *** psmst has quit IRC
19:34:58 *** PeterScholtens[m] has quit IRC
19:34:58 *** technicus[m] has quit IRC
19:34:59 *** seanh has quit IRC
19:34:59 *** gnomey has quit IRC
19:34:59 *** Unhammer has quit IRC
19:34:59 *** cybertani[m] has quit IRC
19:34:59 *** katco[m] has quit IRC
19:34:59 *** grepular has quit IRC
19:34:59 *** jojo[m] has quit IRC
19:35:00 *** ErikSchillingAblu[m] has quit IRC
19:35:00 *** chf1 has quit IRC
19:35:03 *** miklcct has joined #gnucash
19:35:03 *** ChanServ sets mode: +v miklcct
19:35:03 *** Yotson has joined #gnucash
19:35:03 *** finster has joined #gnucash
19:35:04 *** ChanServ sets mode: +v finster
19:35:04 *** seanh has joined #gnucash
19:35:06 *** psmst has joined #gnucash
19:35:06 *** yyoshino has joined #gnucash
19:35:09 *** frakturfreak has joined #gnucash
19:35:09 *** David has joined #gnucash
19:35:22 *** Unhammer has joined #gnucash
19:35:25 *** jeblad_ has joined #gnucash
19:35:34 *** gnomey has joined #gnucash
19:35:45 *** chf has joined #gnucash
19:36:09 *** mikee has joined #gnucash
19:38:28 *** fell has joined #gnucash
19:38:28 *** ChanServ sets mode: +o fell
20:13:06 *** PeterScholtens[m] has joined #gnucash
20:41:22 *** technicus[m] has joined #gnucash
21:34:55 *** cybertani[m] has joined #gnucash
21:51:08 *** ArtGravity has joined #gnucash
21:51:08 *** ChanServ sets mode: +v ArtGravity
22:00:38 *** katco[m] has joined #gnucash
22:37:04 *** grepular has joined #gnucash
23:01:06 *** jojo[m] has joined #gnucash
23:16:22 *** JayC has quit IRC
23:18:26 *** JayC has joined #gnucash
23:18:26 *** ChanServ sets mode: +v JayC