Printing receipts on A4 & A5 printer sheets

Table of Contents

This document will guide you on how to print receipts on A4 sheets



Procedure #

(For setting up an A4 printer with your system please refer to below documents:
Connecting your Computer with A4 printer, Download and Install the driver for your printer model)

1. Administration Menu > Maintenance > Resources

2. Under Resources click on “Printer.Ticket” from the left side resource list

3. Copy paste the below scripts on the right side scripts page (Replace with existing scripts)

<?xml version="1.0" encoding="UTF-8"?>
<!--
        Posics Saleculator - Billing System.
        Copyright (C) 2009 Posics
        This file is part of Posics Saleculator.
 -->
<output>
     <ticket>
        <line size="1">
            <text bold="true" align="center" length="92">MADAIEN MOBILES PHONE TR.</text>
        </line>
        <line>
            <text align="center" bold="true" length="92">MUWAILEH COMERCIAL, SHOP NO#7,  </text>
        </line>
        <line>
         <text align="center" bold="true" length="92">SHARJAH, U.A.E</text>
        </line>
        <line>        
            <text align="center" bold="true" length="92">Mob: +971 55 155 1442</text>
        </line>
        <line>
             <text>--------------------------------------------------------------------------------------------------------------</text>
        </line>
        
        #if (${ticket.ticketType} == 0)
        <line>
            <text length="10">Receipt: </text>
            <text length="36">${ticket.printId()}</text>
             #if ($ticket.getCustomer())
            <text length="10">Customer: </text>
            <text length="36" bold="true">${ticket.getCustomer().printName()}</text>
            #end
        </line>
        #end
        #if (${ticket.ticketType} == 1)
        <line>
            <text length="10">Refund: </text>
            <text length="36">${ticket.printId()}</text>
             #if ($ticket.getCustomer())
            <text length="10">Customer: </text>
            <text length="36" bold="true">${ticket.getCustomer().printName()}</text>
            #end
        </line>
        #end
        <line>
            <text length="10">Date: </text>
            <text length="36">${ticket.printDate()}</text>
            #if ($ticket.getCustomer())
            <text length="10"></text>
            <text length="36" bold="true">${ticket.getCustomer().getSearchkey()}</text>
            #end
        </line>
         
        #if ($ticket.getCustomer() && $ticket.getCustomer().getAddress())
        <line>
            <text length="10"></text>
            <text length="36"></text>
            <text length="10"></text>
            <text length="36">${ticket.getCustomer().getAddress()}</text>
        </line>
        #end

        <line></line>
        <line>
            <text align="left" length="6">#</text>
            <text align="left" length="49">Item</text>
            <text align="right" length="8">Price</text>
            <text align="right" length="6">Qty</text>
            <text align="right" length="8"></text>
            <text align="right" length="15">Amount</text>
        </line>
        <line>
             <text>--------------------------------------------------------------------------------------------------------------</text>
        </line>
        
        
#set ($itemsperpage = 10)
#set ($totallines = $ticket.getLines().size())
#set ($currentline = 0)
#set ($seqno = 0)

        #foreach ($ticketline in $ticket.getLines())
#set ($currentline = $currentline + 1)
#if (!$ticketline.isProductCom())
#set ($seqno = $seqno + 1)
#end
        <line>
            <text length="6">$seqno</text>
            #if ($ticketline.isProductCom())
                <text align="left" length="49">*${ticketline.printName()}</text>
            #else
                <text align="left" length="49">${ticketline.printName()}</text>
            #end
            <text align="right" length="8">${ticketline.printPriceTax()}</text>
            <text align="right" length="6">x${ticketline.printMultiply()}</text>
            <text align="right" length="8"></text>
            <text align="right" length="15">${ticketline.printValue()}</text>
        </line>
        #if ($ticketline.productAttSetInstId)
        <line>
	        <text align="left" length="92">    ${ticketline.productAttSetInstDesc}</text>
        </line>
        #end
 
#if ($ticketline.getProperty("Notes"))
<line>
  <text align="left" length="92">    $ticketline.getProperty("Notes")</text>
</line>
#end

        #end
        
####EMPTY LINES
#if($itemsperpage > $currentline)
 #set($start = 0)
 #set($end = $itemsperpage - $currentline)
 #set($range = [$start..$end])
 #foreach($i in $range)
  <line></line>
 #end
#end

        <line>
             <text>--------------------------------------------------------------------------------------------------------------</text>
        </line>
        <line>
            <text>Items count: ${ticket.printArticlesCount()}</text>
        </line>
     
        <line></line>
        <line size="1">
            <text align="right" length="76" bold="true">Total</text>
            <text align="right" length="16" bold="true">${ticket.printTotal()}</text>
        </line>
        #foreach ($paymentline in $ticket.payments)
        
         #if ($paymentline.name == "cash")
        <line>
            <text length="10">Payment: </text>
            <text bold="true">Cash</text>
        </line>
        <line>
            <text length="10">Paid: </text>
            <text bold="true">${paymentline.printTotal()}</text>
        </line>
         #end
         
         #if ($paymentline.name == "cashrefund")
        <line>
            <text length="10">Payment: </text>
            <text bold="true">Cash Refund</text>
        </line>
        <line>
            <text length="10">Paid: </text>
            <text bold="true">${paymentline.printTotal()}</text>
        </line>
        
         #end
         #if ($paymentline.name == "magcard")
        <line>
            <text length="10">Payment: </text>
            <text bold="true">Card</text>
        </line>
        <line>
            <text length="10">Paid: </text>
            <text bold="true">${paymentline.printTotal()}</text>
        </line>
         #end
         
         #if ($paymentline.name == "magcardrefund")
        <line>
            <text length="10">Payment: </text>
            <text bold="true">Card Refund</text>
        </line>
        <line>
            <text length="10">Paid: </text>
            <text bold="true">${paymentline.printTotal()}</text>
        </line>
         #end
         
         #if ($paymentline.name == "free")
        <line>
            <text length="10">Payment: </text>
            <text bold="true">Free</text>
        </line>
        <line>
            <text length="10">Paid: </text>
            <text bold="true">${paymentline.printTotal()}</text>
        </line>
         #end
         
         #if ($paymentline.name == "debt")
        <line>
            <text length="10">Payment: </text>
            <text bold="true">Debt</text>
        </line>
        <line>
            <text length="10">Amount: </text>
            <text bold="true">${paymentline.printTotal()}</text>
        </line>
         #end
         
         #end
        <line></line>
        <line>
            <text align="left" length="10">Cashier:</text>
            <text>${ticket.printUser()}</text>
        </line>

    </ticket>
</output>

Click Save button and exit

4. Access the Saleculator properties file from your system drive, mostly this file will be located under the user folder. Refer the image below

5. Open the Saleculator properties text file and replace the below properties with the values mentioned after the = sign

paper.standard.mediasizename=A5
paper.standard.y=40
paper.standard.x=20
paper.standard.height=600
paper.standard.width=148

6. Save and close the file

7. System Menu > Configuration > Peripherals

8. Under the Peripherals Tab choose printer from the Printer drop-down and choose your specific A4 printer name from the printers list. Also, check the box that says Receipt Printer. Refer to the image below:

9. Save and restart the system

0 Comments

Leave a Reply

Arrow-up