Invoice Template Creation
Saturday, 17 February 2007
# this is the sample invoice template with description of possible tags
# It somehow resembles Html, but currently it is not. Possibly we will change to HTML
# in future
#
# the syntax being used is fairly obvious:
#
# a line starting with '#' is a comment or a directive
# 1<title>  is a first level heading (text is 'title')
# 2<heading> is a second level heading (text is 'heading')
#
# the table of contents is automatically generated from the titles and headings.
#
# "#NP" starts a new page
#
# <b></b> <i></i> can be used within the text with gleeful abandon
#
# a link can be added within the text using <c:alink:url_here>label</c:alink>
#
# "#FONT" defines font which will follow in next sections
#  attributes:
#  face = "name" sets font face name, example "Helvetica", "Courier". For full list, please see below
#  size = "value" sets font size for the following text sections
#  WARNING! Setting FONT attribute before defining table will disable <b> <i> tags in table
#
# "#IMAGE" places jpeg or png image in the document
#  attributes:
#  src = image path on server or HTTP or FTP URL
#  padding (optional) = is the number of page units that will pad the image on all sides.  The default is five (5).  
#    If you do not want any padding, you may enter 0.
#  width (optional) = is the width of the image on the page.  The default is to use the actual width of the image in pixels.
#    Whether or not you specify a width, the actual width of the image on the page will depend on what you enter for the $resize
#    argument as well as the placement of the image on the page.
#  resize (optional) = can be one of 'full', 'width', or 'none'.  The default value is 'full'.
#  justification = determines the horizontal position of the image within the current column.  The default is 'center',
#    and can be specified as either 'center', 'left', or 'right'.  This setting has little meaning if the image has been
#    resized to fit the column and only makes a practical difference if the width of the image is smaller than the width of
#    the column.
#
# "#TABLE<N>" displays tables
#    <N> - Integer number, represents unique ID of table (example #TABLE1, #TABLE2)
#  attributes:
#  title = "text" displays title above table
#  border = "mode" border around table: 0- none, 1 -borders, 2 -borders and lines between rows
#  shade = "mode" shade: 0 -none, 1 - alternate lines, 2 - both line sets shaded
#  font-size = "size" font size
#  align = "left|right|center|value" alignment of table (relative or fixed pixels)
#
#  cellpadding-row = "value" padding between horizontal border of cell and text
#  cellpadding-col = "value" padding between vertical border of cell and text
#  width = "value" width of the table
#
# "#TD<N>" defines table data cell, required exactly one definition per column
#    <N> - Integer number, represents unique ID of table (example #TABLE1, #TABLE2)
#  attributes:
#  title = "name"  Name of the column (<b></b> <i></i> can be used)
#  source = "source"  Data Display Source (see details below)
#  align = "left|right|center|value" alignment of data in cell (relative or fixed pixels)
#  width = "value"  width of column
#  format = "pattern" formats representation of strings or numbers (example: "%s" - string,
#    "%01.2f" number with 2 decimals, "%d" - integer. For durations representation here are
#    following special formats: "%HH:MM:SS", "%MM:SS"
#
#  "#ENDTABLE<N>"  mandatory table closing statement
#    <N> - Integer number, represents unique ID of table (example #TABLE1, #TABLE2)
#
# NOTE! to display Euro symbol, use ^ character
#
# Complete list of supported attributes in Invoice Template
#
# 1) available anywhere in template - you can place them anywhere in file
#
# $COMPANY_NAME                Company Name
# $COMPANY_ADDRESS_1           Address 1
# $COMPANY_ADDRESS_2           Address 2
# $COMPANY_PHONE_1             Phone Number
# $COMPANY_FAX                 Fax Number
# $COMPANY_EMAIL               Email Address
# $COMPANY_CITY                City
# $COMPANY_STATE               State
# $COMPANY_ZIP                 ZIP
# $COMPANY_COUNTRY             Country
# $COMPANY_BILL_ADDRESS_1      Billing Address 1
# $COMPANY_BILL_ADDRESS_2      Billing Address 2
# $COMPANY_BILL_CITY           Billing City
# $COMPANY_BILL_STATE          Billing State
# $COMPANY_BILL_ZIP            Billing ZIP
# $COMPANY_BILL_COUNTRY        Billing Country
# $COMPANY_CUST_1              Custom field No1
# $COMPANY_CUST_2              Custom field No2
# $COMPANY_CUST_3              Custom field No3
# $COMPANY_CUST_4              Custom field No4
# $COMPANY_CUST_5              Custom field No5
# $COMPANY_CUST_6              Custom field No6
# $COMPANY_CUST_7              Custom field No7
# $COMPANY_CUST_8              Custom field No8
# $COMPANY_CUST_9              Custom field No9
# $COMPANY_CUST_10             Custom field No10
# $TOTAL_AMOUNT                Total invoice amount, including tax (MODIFIED!)
# $TOTAL_CALLS                 Number of calls
# $TOTAL_BILLDUR               Total billed duration
# $INVOICE_CREATED             Invoice generation time
# $INVOICE_NUMBER              Invoice number
# $TOTAL_NET_AMOUNT            Total net amount (ex taxes)
# $TOTAL_NET_WITH_DISCOUNT     Total net amount (ex taxes) including discount
# $TOTAL_TAX_AMOUNT            Total amount of taxes
# $TOTAL_TAX_RATE              Tax rate (percentage)
# $TOTAL_DISCOUNT_AMOUNT       Total amount of discount
# $TOTAL_DISCOUNT_RATE         Discount rate (percentage)
#
# 2) table fields (available via #TD1(source="$ATTR") ) - only to be used within tables
#
# $CALLS_DEST_GROUP_NAME       Destination group name
# $CALLS_COUNT                 Number of calls by group
# $CALLS_BILL_DUR              Billed duation of calls in group
# $CALLS_AMOUNT                Amount (money) of calls in group
# $CALLS_DURATION              Total duration of calls in group
# $CALLS_ST_TIME               Period start time YYYY-MM-DD
# $CALLS_ENT_TIME              Period end time YYYY-MM-DD
#
# $PERSON_FNAME                Person first name
# $PERSON_LNAME                Person last name
# $PERSON_POS                  Person position
# $PERSON_TITLE                Person title
# $PERSON_EMAIL                Person email
#
#
#
#
# ------- Sample Invoice follows below: --------


#FONT(face="Helvetica", size="12")

1<Invoice $INVOICE_NUMBER>

Here You can put whatever text you would like to see and also <b>whatever</b> <i>formatting</i> you would like to use


<b>$COMPANY_NAME</b>

Address:
$COMPANY_ADDRESS_1                                        Phone: $COMPANY_PHONE_1
$COMPANY_ADDRESS_2                                        Fax:   $COMPANY_FAX
$COMPANY_CITY
$COMPANY_STATE
$COMPANY_COUNTRY

#TABLE1(border="0", shade="0", font-size="10", align="center", x-orientation = "center")
#TD1(source="$PERSON_TITLE", format = "Dear %s", align="left")
#TD1(source="$PERSON_FNAME", format = "%s", align="left")
#TD1(source="$PERSON_LNAME", format = "%s", align="left")
#ENDTABLE1



Email:
$COMPANY_EMAIL                           $COMPANY_CUST_1
                                         $COMPANY_CUST_2
                                         $COMPANY_CUST_3
                                         $COMPANY_CUST_4
2<Services Consumed>

#TABLE2(title="Main Table", width="500", border="1", shade="0", font-size="10", align="center", x-orientation = "center", cellpadding-row="1", cellpadding-col="20")
#TD2(title="Destination", source="$CALLS_DEST_GROUP_NAME", format = "%s", align="left")
#TD2(title="Calls", source="$CALLS_COUNT", format = "%d", align="center")
#TD2(title="Duration", source="$CALLS_BILL_DUR", format = "%HH:MM:SS", align="right")
#TD2(title="<b>Amount ^</b>", source="$CALLS_AMOUNT", format = "%01.2f ^", align="right", width="150")
#TR2(source="<b>Total</b>;$TOTAL_CALLS;$TOTAL_BILLDUR;$TOTAL_NET_AMOUNT", format="%s;%d;%HH:MM:SS;<b>%01.2f ^</b>")
#TR2(source="<b>Discount at $TOTAL_DISCOUNT_RATE %</b>;;;$TOTAL_DISCOUNT_AMOUNT", format="%s;;;<b>%01.2f ^</b>")
#TR2(source="<b>Tax at $TOTAL_TAX_RATE %</b>;;;$TOTAL_TAX_AMOUNT", format="%s;;;<b>%01.2f ^</b>")
#TR2(source="<b>Total Invoice</b>;;;$TOTAL_AMOUNT", format="%s;;;<b>%01.2f ^</b>")
#TR2(source="<b>Forwarded Amount from previous Invoices</b>;;;$FWD_AMOUNT", format="%s;;;<b>%01.2f ^</b>")
#TR2(source="<b>Total Including Forwarded Amount</b>;;;$TOTAL_WITH_FWD", format="%s;;;<b>%01.2f ^</b>")
#TR2(source="<b>Total Payments in this period</b>;;;$TOTAL_PAYMENTS", format="%s;;;<b>%01.2f ^</b>")
#TR2(source="Total for Billing Period;;;$TOTAL_BILLDUR;$TOTAL_AMOUNT", format="<b>%s</b>;;;%HH:MM:SS;<b>%01.2f</b>")


#ENDTABLE2

Also some additional text can go down below.

Or down below even....

#FONT(face="Courier", size="14")

Or change font anytime.

#FONT(face="Helvetica", size="8")


Or you can put page break .... Invoice was created $INVOICE_CREATED
#NP


And continue on next page if you wish to make long invoice or add some descriptions

# -------- End of sample --------




Digg!Del.icio.us!Slashdot!Technorati!Free social bookmarking plugins and extensions for Joomla! websites! title=