NAME
dfxml-invoice - parse a QSF XML file and prepare a simple invoice
DATAFREEDOM
These scripts developed from the 'pilot-qof' package but now include support for other packages and formats and will continue to be extended along the lines of http://www.data-freedom.org/ - liberating user data from the application. Therefore, the datafreedom scripts use a 'df' prefix.
The scripts continue to be developed within the pilot-qof CVS until such time as the scripts are sufficiently cohesive to form a new source package.
Please feel free to contribute any of your own scripts, under the provisions of the GNU General Public Licence v3 or later, via the QOF-devel mailing list. http://lists.sourceforge.net/lists/listinfo/qof-devel
VERSION
Version 0.0.1
SYNOPSIS
dfxml-invoice FILENAMEdfxml-invoice -h|--help|--version
DESCRIPTION
dfxml-invoice parses a QSF XML file output by pilot-qof and prepares a simple invoice based on rates specified in ~/.datafreedom/currency which will be created for you.
Specify '-' as the filename to parse STDIN.
e.g.
pilot-qof -x data.xml --invoice-city -t 2006-11-09 | dfxml-invoice -
A more complex example using 'zenity' - a Gnome dialog generator.
$ pilot-qof -x data.xml --invoice-city -t 2006-11-08 | dfxml-invoice - > /tmp/zenityzenity --text-info --title="2006-11-08" --filename=/tmp/zenity --width=500 --height=300
dfxml-invoice, like pilot-qof, is designed to be used in pipes like this. It is intended to provide support for your own scripts where details like the date can be set as an option:
#!/bin/bashDATE=$1if [ ! $DATE ]; thenecho "$0: please specify the date of the invoice you want to view."exitfipilot-qof -x data.xml --invoice-city -t $DATE | dfxml-invoice - | \zenity --text-info --title="$DATE" --width=500 --height=300
Note that if the currency uses a UTF-8 symbol, zenity may fail to display the symbol correctly unless the above code is adapted to write to a temporary file and zenity then loads that file using the '--filename' option. See Debian Bug# 410728. http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=410728
Or, a full zenity version which allows the date to be selected in a calendar widget:
#!/bin/bashset -eMSG="Select the date of the invoice to view"DATE=`zenity --calendar --text="$MSG" --date-format="%Y-%m-%d"`TIME=`date -d"$DATE" +"%A, %B %e %Y"`if [ ! $DATE ]; thenecho "$0: please specify the date of the invoice you want to view."exitfipilot-qof -x /opt/data/pilot-qof/offline.xml --invoice-city -t $DATE \| dfxml-invoice - | zenity --text-info --title="$TIME" --width=500 --height=400
OBJECTS
pilot_expenses is part of pilot-qof. Can also be used with gpe-expenses - compatibility with the default SQLite gpe-expenses backend is pending.
<http://qof.sourceforge.net/>
<http://pilot-qof.sourceforge.net/>
<http://gpe-expenses.sourceforge.net/>
AUTHOR
Neil Williams, "<codehelp at debian.org>"
BUGS
Please report bugs via the pilot-qof package, either in the Debian BTS or via SourceForge trackers.
COPYRIGHT & LICENSE
Copyright 2007 Neil Williams.This program is free software; you can redistribute it and/or modifyit under the terms of the GNU General Public License as published bythe Free Software Foundation; either version 3 of the License, or(at your option) any later version.This program is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See theGNU General Public License for more details.You should have received a copy of the GNU General Public Licensealong with this program. If not, see <http://www.gnu.org/licenses/>.