Openbravo Issue Tracking System - Retail Modules
View Issue Details
0044143Retail ModulesCash uppublic2020-05-21 17:062020-06-01 19:46
lmonreal 
Retail 
urgentmajoralways
closedno change required 
5
 
RR19Q3.3 
marvintm
No
0044143: Adding a product, deleting the line and doing a cash up is generating an open ticket of 0 price
If I add a product to ticket, delete the line and do a cash up, there is an open ticket of 0 price to process.

Video:https://drive.google.com/file/d/1ctqy-S9jYpLFXjEMXZPhR8_UuxvjJr47/view [^]
1. Open webpos
2. Add product to ticket
3. Delete Line
4. Do cash up-->See open ticket at 0 price

We have tested it with different users and it does not seem to happen always.

Video:https://drive.google.com/file/d/1ctqy-S9jYpLFXjEMXZPhR8_UuxvjJr47/view [^]
No tags attached.
Issue History
2020-05-21 17:06lmonrealNew Issue
2020-05-21 17:06lmonrealAssigned To => Retail
2020-05-21 17:06lmonrealTriggers an Emergency Pack => No
2020-05-21 17:07lmonrealSummaryAdding a product, deleting the line and doing a cash up is generated an open ticket of 0 price => Adding a product, deleting the line and doing a cash up is generating an open ticket of 0 price
2020-05-21 17:10lmonrealRelationship addedblocks 0044141
2020-05-21 17:11lmonrealRelationship deletedblocks 0044141
2020-05-22 10:00lmonrealPriorityhigh => urgent
2020-05-28 17:04lmonrealResolution time => 1592344800
2020-06-01 19:46marvintmReview Assigned To => marvintm
2020-06-01 19:46marvintmNote Added: 0120509
2020-06-01 19:46marvintmStatusnew => closed
2020-06-01 19:46marvintmResolutionopen => no change required

Notes
(0120509)
marvintm   
2020-06-01 19:46   
As far as I can see, it can be reproduced always (at least in pi), and it is actually the expected behaviour.

When you login in the WebPOS, the application initially creates a ticket, but doesn't save it in the database, as it is unclear if the user will actually do anything with it. If at that point, you try to do cashup, you will see that there are no tickets pending to be processed.

However, if after that, you add a line to the ticket (or in fact execute any other action, like changing the customer), then the ticket is added to the ticket list, and saved in the database.

We have no automatic way to detect if the ticket is meaningful from this point on, and if it would therefore be safe to delete it automatically. It would not be enough to check if the ticket has lines, as it could have payments, or it could have some valuable property set by some request to some integration. Deleting a line, even if it's the only one, is not the same as deleting the ticket.

Therefore, from that moment in which the ticket was first saved in the database, we need to delegate on the user to delete it (if he wants to), either from the main POS UI, or later on from the Cashup window.