#!/usr/bin/perl
To: cbbers@infoplane.com
Subject: shell-based interface to cbb
Date: Mon, 21 Apr 1997 23:30:58 -0500

I've finally gotten around to updating the program "txn" to version 0.7 of cbb.

The attached program will append records to .cbb files, and do so from the 
command line.

For instance: 

[25%] txn checking -t '75' 'The Mansion in Dallas' Lunch 75.00 'Gratuitously 
expensive luncheon'

Added to /home/cbbrowne/kwiken/checking.cbb
19970422        75      The Mansion in Dallas   75.00   0       Lunch   
Gratuitously expensive luncheon
[26%] 

Limitations:
- It appears that "splits" have been changed somewhat; I haven't checked yet 
to see if they are handled correctly.

- Writing to a .cbb file whilst the TCL version is open and using the file in 
question will have obviously questionable results.  If Curt implements his 
file locking idea (which probably ought to put the PID of the main CBB process 
in either /var/lock/LCK..cbb or do individual file locks like 
/var/lock/LCK..checking.cbb), I could have txn look for and/or lock these...

- You'll have to modify the paths at the start of the script to locate your 
favorite CBB directory.

- This script assumes that if the category is not available that you can look 
at a list of similar category names and pick one.  If you plan to write 
scripts that will create transactions as "batch jobs," then you'll have to 
ensure that the category is correct.  I'm not sure how to best deal with the 
error condition of not having a correct category.  Create "ntxn" 
(non-interactive txn) that reports an error and dies upon receiving a bad 
category, perhaps?  An additional command line switch?  Ideas anyone?

- I have no further intentions to maintain the code that allowed 
deletion/reconciliation from the command line.  The cbbsh of 1994 did provide 
this functionality, at the cost of a fairly painful user interface.  It just 
makes too much sense to do transaction editing with a somewhat "GUIed" 
interface to bring most of the remainder of CBBSH up to date.

Anyway, here's the new and improved txn:

--
Christopher B. Browne, cbbrowne@unicomp.net, chris_browne@sdt.com
Web: http://www.conline.com/~cbbrowne  SAP Basis Consultant, UNIX Guy
Windows NT - How to make a 100 MIPS Linux workstation perform like an 8 MHz 286
