Archive for August, 2007

PBooks 0.1e

Here’s the first release of PBooks!

pbooks-1etar.gz

Here’s a basic PBooks install guide for developers. This tarball includes nexista so you won’t have to install that.

I’ve also opened up the PBooks SVN browser in the trac environment to anonymous users:

http://www.svn.pbooks.org/trac/browser

NOTE: This software still needs a lot of work to be made easily installable! :-) I look forward to hearing your comments, and feel free to join the forums for extended discussions.

New AGPL v3 License Draft

The Free Software Foundation has issued a new draft of the AGPL v3, so we’re one step closer to releasing the code to PBooks.

I think it would be OK to release it under the draft license, but no one has actually *asked* for the code, even though its touted as “open source”, so I haven’t felt the urge. Well I have felt the urge but I was hoping someone else would too! :-)

More Testing




I did some more testing today without relying too heavily on the Selenium IDE. I instead focused on errors and discrepancies that Selenium might not pick up on. These were my results.

General Ledger - The General Ledger shows some inconsistencies when it comes to changing the date span. Sometimes it will allow you to type in the date, other times you must choose a date from the calendar. Also, when you’re typing in a date it must be in a specific format(2007-02-18) or else it will not find any journal entries.

Chart Of Accounts - If the account number starts with a letter you get the following error. Exception Trace violationnew_account. The listing will now display any words that you place in the account number box.

General Journal - The debit/credit amount does not accept commas. For example the program automatically changes $40,000 to $40. The journal does not display letters if you type them into the credit/debit fields. Also the date must be a specific format or the entry doesn’t show.

Pbooks Test Suite

We designed a test suite to test different aspects and functions of pbooks. Everything ran smoothly without problems until Selenium attempted to run the Accounts Test. The test failed because when it tries to click the test account link, the following error occurs. Element link=Test Account not found

I later discovered that the error occurred because the name Test Account was already taken, therefore, it will not allow you to use the same name.

While testing the setup preferences page I ran into the following error Element display_num_Entrie not found. I solved the problem by changing the entry number to zero. The page runs into an error because there aren’t any entries in the database.

PBooks Account Groups




I spent the majority of the weekend working on setting up account groups in PBooks. Of course I got sidetracked into making sure the solution was as flexible as possible, and then found out that the challenge of storing hierarchical data in a SQL relational database is well known, but in my humble opinion, not solved very well.

The solution I came up with uses a modified adjacency list model in the database, and using XML converts that to a nested set tree - essentially a normal XML document with nodes and all. For PBooks to work with this arrangement, I had to use curl to access the XML document over http. While I like this solution a lot, it comes with its own set of issues.

This week we’ll be testing the account groups (I’m actually converting my Quickbooks chart of accounts to PBooks this week), as well as working on the invoicing and check writing capabilities of PBooks. We’re getting very close to a public beta, so stay tuned.

If you want to examine the account groups functionality, you can do so at the PBooks Live Demo, using “demo” and “demo” as the username and password. It still needs work, but I’d love to hear what you think! :-)

PBooks Trac

I’ve finally setup a Trac environment for managing the development and release of PBooks. Trac has really impressed me. The authors took a very different approach to developing this quality piece of software, and its really great to learn from their creation. Nice work!

To bring the code onto the same server, I had to separate it from the other items stored in my other SVN repository. Thankfully, subversion had this covered. Speaking of which, subversion is a pretty amazing piece of software as well. I’m storing almost everything in subversion repositories these days!

Anonymous users has limited access to the PBooks Trac system, but I will open it up more once I am more familiar with the software. In the meantime, feel free to request wider access.

Without further ado:

PBooks Trac