|
Invoice Template Creation |
# 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 --------
|
|
|