CashBook Updates (at last)
Pages: 1 2
Steve Fryatt (216) 2107 posts |
Over Christmas I finally found some time to work on CashBook, with the end result that for the first time in around ten months, the source code that I have here actually compiles… There aren’t any new features yet1, but given the fairly massive structural changes and the almost complete re-write of the code that handles data entry into the transaction window2, I would really like some people aside from myself having a serious go at trying to break it as it stands now. Copies can be found on my test builds page – for now, they should be treated as at best alpha quality. This means that they shouldn’t be entrusted with the only copy of your accounts. The file format hasn’t changed since version 1.36, however, so data can be moved back and forth easily. If anyone would be willing to try running copies of test builds in parallel with version 1.36, that would be a great help3. I’m hoping – time permitting – to be releasing some more updates between now and the end of February (and failing that, mid-April), so users who are happy to keep testing new builds would be a bonus. 1 At least, not that I’m telling you lot about. There’s a pretty big clue as to a possible future direction in clear sight in the source code for r3852, however. 2 Which, as anyone familiar with the application will know, means almost all data entry. So, no significant changes… :-) 3 I’m currently using the test builds day to day, but I know that other people use the application in different ways to me. |
Anthony Vaughan Bartram (2454) 458 posts |
Hi Steve, Best Regards, Tony |
Anthony Vaughan Bartram (2454) 458 posts |
Tried version r3852 (2nd Jan 2017) Testing : Sanity / Exploratory. Hope this is useful. Manual Noticed an error in the Strong Help: Beginners tutorial Simple bounds checks:
Validation
Check basic functionality |
Steve Fryatt (216) 2107 posts |
A bug in my manual generator. I’ve fixed it, and there’s a new version up amongst my software build tools.
It probably shouldn’t, but there might be a reason for this – some of the dates are odd, in the sense that strange values do special things. That’s not true of transactions, where I see this works. I’ve made a note, so that when I’m tidying things up I can go back to it.
It doesn’t sound logical… Again, noted.
Definitely… Thanks! |
Steve Fryatt (216) 2107 posts |
A couple of weeks on, there’s a new build up. I think it fixes the issues above, and adds a few new bits and pieces – mostly, it has to be said, bug fixes. Thanks to Anthony, who was the only person to even let me know that he’d downloaded a copy of the last version (and he’s not even an existing CashBook user)! One new feature that might interest current users is an improvement to transaction sorting such that transactions taking place on the same date (or whatever sort is in force) always retain the same order relative to each other. This closed off four of five bug tickets, so many times has it been reported to me… Once again, it would be a massive help if any CashBook users reading this could get a copy of the test build from my website and test it out on real data. I’ve said this before, but the only difference between test builds and stable releases is the passage of time, whether or not I supply a proper version number to my build system… and bug reports from users. To the many, many people who have said to me over the years “Oh, but I use CashBook for serious stuff; I can’t risk trying out test builds” I’ll simply point out: unless you do try the test builds out and report problems, the stable releases are no better than test builds anyway. By all means take a copy of your data to do the experimentation with (in fact, I’d strongly recommend doing so), but please do try and break the new test releases as they come out! I’ll hop off my soap box now… |
David Feugey (2125) 2709 posts |
I plan to use it. But I have some habits with planning of recurring expenses. |
Glen Walker (2585) 469 posts |
Will do! I haven’t actually started using it yet…but it was number 3 on my list behind an email client and word processor for when I got my RISC OS computer back up and running. Due to various complicated and frustrating reasons I have it running on a Pi3 so will also be able to test on that platform for you! (bear in mind that I currently manage all my accounts in the UNIX spreadsheet program “Spreadsheet Calculator” so this is going to be a bit of a bumpy road for me learning an entirely new program). |
Steve Fryatt (216) 2107 posts |
Glen & David – thanks for the offers! If you’re new to CashBook, remember that these test builds are just that… and at present thet’re very definitely “alpha” status. Support for typing text into the main transaction window was completely re-written over the Christmas break (so that the code used wasn’t tied to that window), and there have been a lot of other structural changes too (column handling, column sorting, internal data structures, etc, etc, …). If something appears to be broken, there’s a good chance that it happened recently — and I’d like to know! That’s why I’m trying to encourage existing users to get testing, too. They’re the people most likely to find that something they’ve always done no longer works as they expect it to. :-) |
Glen Walker (2585) 469 posts |
I have run through the Beginners’ Tutorial and must say that I am rather impressed with the software! Seems perfectly stable to me so far…but I am only scratching the surface! If I had one thing that I would change is that I would love to be able to enter dates in UNIX format (i.e., “year-month-day”) but I can adjust to using British format if this is impossible. Also – is there a cheat-sheet for all the icons/buttons and keyboard shortcuts? |
Rick Murray (539) 13862 posts |
UNIX format!?!? Nah, s’not Unix, it’s actually the only standardised date format that there is: http://www.iso.org/iso/home/standards/iso8601.htm Of course, if RISC OS had a half-decent set of internationalisation services, you’d tell RISC OS how you want to deal with dates and it would handle it automatically (to save app authors reinventing the wheel each time). <stir> |
Rick Murray (539) 13862 posts |
Also… https://xkcd.com/1179/ |
Chris Mahoney (1684) 2165 posts |
Fortunately 2013年2月27日 is not in the “discouraged” list :P |
Glen Walker (2585) 469 posts |
Well you know as a technical writer who has a great love of international standardization I must admit to being duly embarrassed that I have been calling it “UNIX time format” for all these years… |
Steve Fryatt (216) 2107 posts |
It’s not something that I’d really considered. Build r3951 on my website has the ability to select day-month-year, year-month-day and month-day-year on an application-wide basis from the Choices dialogue. I think partial date entry (ie. missing the year or month and year and having CashBook guess what you meant) works correctly in the new formats, but suggestions for improving intuitiveness are welcome.
No… It’s something I keep meaning to do, but I always run into the fact that my manual builder can’t handle graphics and there’s usually something else that’s more important than trying to sort that thorny problem out. |
Glen Walker (2585) 469 posts |
I’m stretched pretty thin these days but if there is any documentation you’d like a hand with then I’d be happy to offer my services (limited as they are…) Also happy that there is support for new date formats…I am going to be starting to manage all our household expenditure using CashBook from February onwards so will let you know if there is anything else as I get using it more. |
Kevin (224) 322 posts |
One idea for the dates is someone leaves the date blank either use the date last used or todays date. |
David Feugey (2125) 2709 posts |
Or to leave them blank (I use this trick to plan my future expenses). |
Glen Walker (2585) 469 posts |
I have just tried build 3976 and it doesn’t seem possible to add any new accounts. I get a message about being out of memory. This is on an old NOOBS install (RISC OS 5.21 build 04 Jun 14) on a Pi B+ I tried increasing the size of “Next” and restarting CashBook but it had no effect. For now I will go back to 136 which is stable and set up all my accounts…then test in the newer builds with backup data. |
Steve Fryatt (216) 2107 posts |
:-) Partially entered dates already do something like this. Enter just a day, and the month+year are filled in; enter day+month and the year is filled in. In the transaction window, the details from the row directly above are used. If that’s blank, and in all dialogue date fields, the current date is used. There are also a few shortcuts which might help in the transaction window. F1 enters the current date if the caret is in the Date column (in other columns it does other quick-entry things). Ctrl-Tab or Ctrl-Return will copy the contents of the field from the line directly above before moving the caret on to the next field. The latter was added last time this came up, because I had something similar to David’s reaction. |
Steve Fryatt (216) 2107 posts |
Thanks for pointing this out! A lot of the older code in CashBook (mostly transaction and account/heading stuff) took a fairly relaxed approach1 to checking that memory allocations had worked. The test builds don’t any more, but because the way that accounts/headings are allocated is different to the all the other bits, I’d got an extra ‘not’ in the logic so that it would fail if the memory was available. It should be fixed in r3983, which you can find in the usual place.
You needed to run out of memory. CashBook would then have seen that the allocation had failed, and gone ahead with populating the new account’s details. Admittedly it probably wouldn’t have ended well… 1 In the sense that they often didn’t check for failures at all, which ironically was probably more of an issue when they were written back in the early noughties than it is now with our 1GB machines. |
Steve Fryatt (216) 2107 posts |
I realised after I wrote my earlier reply that CashBook fully supports interactive help, so load Help (other clients are available) and point at the button, menu entry or piece of window that you’re interested in to see what it does. Again, some of this has been prodded in the test builds (mainly over data tables, as the implementation wasn’t really compatible with some longer-term feature ideas), so if anything seems nonsensical, it could be that it is… |
Glen Walker (2585) 469 posts |
Sorry to ask a green/newbie question…but what does all that mean? I don’t understand the process…? |
Steve Pampling (1551) 8182 posts |
Load !Help = click on the Apps icon (bottom toward left). Then mouse around the screen and open applications hovering different portions to see the interactive help. There may be help information for every button in an App. Note: Other interactive help utilities exist. |
Glen Walker (2585) 469 posts |
Ah! It makes sense now! I had StrongHelp open and it didn’t work…I was confused because I thought they were equivalant programs but clearly not! Thanks…will carry on with my accounting & testing… |
Steve Fryatt (216) 2107 posts |
It’s clear that I’m not going to get the planned new CashBook features done in time for February 25th, but there are a number of worthwhile fixes in the current test builds so I’ll try to do another 1.3x release instead. With that in mind, I’ve backed out the unfinished stuff and the test builds page now contains a first attempt at a release candidate. Obvious new features are configurable date formats and the fact that transactions always sort into ascending line order so that they retain their sequence when lists are sorted. A lot of the other changes are either bug fixes or fairly well hidden: many of the latter should reduce the chance of CashBook taking out your machine when things go wrong. :-) As ever, all testing is welcome… ETA: if you’ve been playing with test builds and have managed to get them to save some interest data, you might get a warning about unrecognised data when loading a file into the new test build. It shouldn’t be important (as you can’t enter interest data anyway), but please take a backup of any important files just in case. |
Pages: 1 2