How do you Reprint a Transaction Account Document?

Continuing the discussion from Printer Template - Account Transactions - where is it?:

Hey Guys

So if a Customer makes a deposit (Top Up) to an Account but accidentally uses the SAVE button instead of PRINT - how can we reprint the document.

I see there is a Print Account Document but it required a Document ID but what is the Keyword (if one available) and I assume this is only available when inside a document ot after it has been saved?

Thanks Paul

The Account Statement Tutorial could be made to do this. As it is now, it will print all Transactions within a given Range, but it could easily be tweaked to print a single Transaction line using the included Doc Id …


And BTW, the things you are asking about regarding the Account Screens is exactly why I no longer use them for making Account Payments. They are simply to limited in what they can do, so the Account Statement custom screen was born. Account Screens are good for a quick look/summary of Transactions, but they are not very “flexible” beyond simple operations.

As with all things in SambaPOS, if you want something to work a certain way, you need to build it yourself since everyone uses the system in different ways, wants certain operations and displays, and wants something different. But you know this already :wink:

2 Likes

Hey @QMcKay yes I must have about 50 bookmarks back to your Tutorial LOL! I was trying to keep it simple for this rollout as I just patching some minor holes not considered in the original spec skin. Sites are being installed on a weekly basis and so far it been a 95% fit :grinning:

I really was looking to get the Document ID (or last ID) used without going to SQL but assume that is the only way?
Thanks Mate.

Maybe not the only way.

This is from the Gift Certificate Tutorial …


Or maybe you can use this Rule to store the Doc Id in a Program Setting for recall when you want to print …

1 Like

Yes! saw that Q but how to you get the last Document ID or should I just save a SETTING: like last Ticket ID to reprint last Ticket?

That’s what I was suggesting - store it in a Program Setting.

DOC Created:\rID:[:DocumentId]\rName:[:AccountTransactionDocumentName]\rACCID:[:AccountId]\rACCNAME:[:AccountName]\rAMT:[:DocumentAmount]

A Ticket is actually a Document as well, so I assume it would work for a Ticket when it is fully Settled and Closed. EDIT: the Rule does not fire for a Ticket for whatever reason.

It does work when making a payment through the Account Screen …

2 Likes

Hi pauln, How did you do it?, I need to reprint a Transaction Account Document too. How did you create the action, rule and automation command? How do you show the automation command inside an Account to reprint a transaction? I can’t figure it out, I tried some things but it doesn’t work!

Hi @aaronrrc
Have not had a chance to build the function yet got side-tracked as usual coding other requirements. May not get this done until our Venues start requesting it so can’t help you at this stage.

Looks at Q’s post above - use that Action to store into SETTING: the DocumentID then you can call the Action to Print the Document.

Well, thank you very much for your guide pauln, I’ll try what you said, Cheers

##Printer Template

[LAYOUT]
<T>Account Document
<J00>{DOCUMENT DATE} {DOCUMENT TIME} | {DESCRIPTION}
<F>-
{TRANSACTIONS}
<F>-

[TRANSACTIONS]
<J00>{SOURCE ACCOUNT}: | {AMOUNT}
<J00>Balance {TARGET ACCOUNT}:|{TARGET BALANCE}

##Automation Command


##Account Screen - add the Automation Command button


##Actions


##Rules


##Account Screen showing Print Button


##Printed Document

2 Likes

Thanks for your Tutorial QMcKay, I really aprreciate it!!! I followed step by step the tutorial, I doubled checked, but it doesn’t print anything. I tried Changing P PTD Print Last Document Rule, in the field printer I put Ticket Printer, it doesn’t work, and then I put \TROLLDRIVETHRU\EPSON TM-T88V Receipt, and again it doen’t work.

Maybe it’s because another field that I have to change?

Show your list of Printers in SambaPOS …

The Printer needs to match on of your configured Printers.

Also, this will not print anything if you have not created a document or made a payment recently, because it needs to store the Doc Id when the Document is created.

This is not the perfect solution obviously, because it only stores a single Doc Id - the last one that was created.
There are better ways to go about it this that could even apply to certain Accounts, however…

Rather than making a Tutorial for that, most of what you need is already in the Account Statement Tutorial. If you want to implement that Tutorial, I will be happy to extend it to be able to print single Docs for any Account. That is what I originally suggested for this as the best solution.

Printing an Account Payment Document …


LOL, it even prints Ticket Documents … notice the selected row is a Purchase, not a Payment …


##Account Document Template##

[LAYOUT]
<T>Account Document
<J00>{DOCUMENT DATE} {DOCUMENT TIME} | {DESCRIPTION}
<F>-
{TRANSACTIONS}

[TRANSACTIONS]
<J00>AMOUNT : | {AMOUNT}
<J00>BALANCE: {SOURCE ACCOUNT} | {SOURCE BALANCE}
<J00>BALANCE: {TARGET ACCOUNT} | {TARGET BALANCE}
<F>-

##Action


##Rule


Yesterday I saw your Account Statement Tutorial, but actually the solution that you are showing in this post is more than enough for me, I dont know why it is not working, Screenshots of Rule, Printers and Button in Accounts:

Where is your Rule (and Action) that stores the Doc Id in a Program Setting (Rule PTD Store Document Id)?

Also, maybe put a Show Message Action in your Print Rule to ensure you have a Doc Id to print …

1 Like

My fault!!! SORRY for waste of time, my action that store Id had duplicated [:settingName], instead of [:settingName] and then [:settingValue]. I’ll triple check next time slowly, you’re awesome QMcKay, Thank you so much!!!

1 Like