Archive for the 'PBooks' Category

Payments versus Deposits

I’m again reviewing my finances from last year, 2007, and I’m trying to figure out the best way to manage customer payments and bank deposits.

Here’s some of my thoughts:
* When I issue an invoice, the amount is match to the revenue source and the customer’s account (a sub-accounts receivable). I used to group all invoices into a single A/R account.
* When they pay, I match the deposit to the bank the funds are being deposited in with the customer’s account (which used to be the single A/R).

That works in concept, but its fairly complicated to code up, because in most real world scenarios, multiple checks come in, are combined into a single deposit, and some customers pay multiple invoices with a single check. In cases like that, the HTML form to support it becomes overly complicated.

There are also some special situations:
* There are times when payments are made from customers without a corresponding invoice.
* There are times when deposits are made from parties other than customers (like a transfer).

What to do?

Pbooks 0.11

I’ve just tagged PBooks 0.11. This version step includes some significant changes to keep up with the progress made on Nexista. The codebase of which is really starting to stabilize after some serious improvements.

Also included in this increment is a rewrite of the XSL templates, which will make customizing the look and feel of PBooks much easier.

Enjoy!

Release Schedules




Yesterday I took a look at the history of milestones past, and it appears that the progress has been steady. Based on the experience of the last six months, I’d like to plan on making a minor release once every month until a stable release has been achieved. Because the testing process sometimes holds up a release, I’m going to ease up on the restriction that the tests must be run until all of them pass. While that I like the idea of testing thoroughly and frequently, the software is still in too volatile a state for the test results to be indicative of real problems.

Here’s a rough schedule for the next 6 months:

PBooks 0.10
Pending release… released!

PBooks 0.11 - End of May

PBooks 0.12 - End of June

PBooks 0.13 - End of July

PBooks 0.14 - End of August

PBooks 0.15 - End of September

jQuery Goodness

jQuery is awesome. It now powers a lot of the client-side needs for PBooks, including date selection, table sorting, and more.

If you are interested in javascript and haven’t heard about jQuery, you might like it.

PBooks on Windows




If you would like to install PBooks on Windows please see the new instructions we posted today:

http://www.pbooks.org/wiki/PBooks_Installation_using_XAMPP_and_Windows

Gettext?

I’m planning to stop doing i18n like I have been, and instead use gettext, the GNU toolkit for localization. However, I don’t think that it will be very easy. To start planning, I found these articles:

http://www.onlamp.com/pub/a/php/2002/06/13/php.html
http://www.ibm.com/developerworks/library/os-php-intl/
http://www.appliedlanguage.com/articles/internationalization_using_php_and_get_text.shtml

They talk about the use of gettext and php, but perhaps I should be looking for information about gettext and XML / XSL?

Aha, I think I figured it out, and I think we’re in good shape. Since the XSL templates always reference XML nodes in the flow document for string values, I’ll just have to figure out a different way of getting those values into the flow document. Most likely it will be done using a php script to set the locale and language, reference the gettext documents, and then add the translated strings to the flow document.

I had a hard time testing this out because if an initial problem with my test case, but thanks to this comment at php.net about locales under /usr/lib/locale and linux, I was able to figure it out.

Still a little more work to do, and I’ll have to figure out which open source accounting program to share languages with, probably gnucash. I just examined their .po files, and they are actually way more specific to GnuCash than I thought. I then examined SMB Ledger’s po files and they look nice, and SQL Ledger doesn’t use gettext, so it looks like SMB Ledger is the way to go.

In thinking about this further, I feel like building XML files from .po files is the right way to go, but that seems a little bit excessive.

Good news! There is hope. I found this page helpful:

http://wiki.openbravo.com/wiki/index.php/Translating_Openbravo

Specifically since it referred me to a tool called xml2po, which does what I need!

http://svn.gnome.org/viewvc/gnome-doc-utils/trunk/xml2po/

WOW! This is exactly what PBooks needs. This pleases me immensely.