Table transfer between waiters

Here is what I am working on. This is going to be only available with V5 due to the navigation screen. But I will share it with you guys.

What this flow does is requires Employee to enter their Password when entering POS. All passwords are 4 digits. It checks the Length and Checks against the Entity Data Password. If match it assigns entity and allows tickets. If not a match it says Invalid Password you press ok and it takes back to Navigation.

This is a start I will customize it further like maybe instead of going back to navigation it will just require Password Entry again or maybe have option to override it with Admin Pin.

Also I will put the check in place to see if they are clocked in.

PS This method fixed the blank Entity issue because its checking that before it executes Change Entity.

Video of it working coming up in few minutes


4 Likes

will you share this database?

@hadjieff even better I will design a configuration task for it. You don’t know what that is yet but when version 5 releases I promise you will like it. It is much better than sharing the database.

Hey @Jesse any idea what I’m doing wrong with my current setup?

Your sure your users are named the exact same as your Waiter Entities?

Yes.

Show all of your rules and actions. We need to narrow it down. It is probably a typo.




Don’t have to load an entity. Change ticket entity is enough.

Got it working. The rule wasn’t “mapped”. I guess I just figured that rules were immediately mapped. Now how would I go about adding a button to “change waiter” to the current user and if possible have the current waiter or an admin input their pin?

I was able to create a “change waiter” button by creating an automation command and then running the action for updating the entity.

The only thing I’ve noticed is that the entity on the screen doesn’t refresh until I go in and out of the ticket. Is there anyway to refresh the ticket screen?

Put a display ticket action in the rule to run last put 0 for ticket id.

That worked great what does “ticket id = 0” mean?

Its displaying the current ticket.

If you put 1 it would display ticket 1

In order to complete the use of the “waiters” entity for me, I need to get a custom report working which will do an “end of shift” report based upon the “waiter” entity for people to count out.

I’m just starting to dive into the module (got it yesterday). Has anyone completed a report like this yet. Basically


Select Payment Totals from Tickets Where Waiter Entity = Current User and Date* = *Current Work Period

?

Take a look here it shows all the possible tags for custom reports.

http://sambapos.com/wiki/doku.php?id=custom_reporting_tags

And this is the main Custom Reporting Wiki

http://sambapos.com/wiki/doku.php?id=custom_reporting

I think I got it figured out. Any way to access the current user within custom reports? What would that syntax be?

I’m thinking this should work.

Total: {Report Ticket Total:(EC.Waiters.Water = {:CurrentUser})}

?

Joe

Try this:

{REPORT TICKET TOTAL:(TEN.Waiters={:CURRENTUSER})}

PS Case sensitive
 if its caps it has to be caps.

However there is one flaw with that syntax
 what if current user is admin just to view reports?

If your tying users with Entities then it wont matter in the reports
 you just need to look at sales per entity. Or Sales per User. What would be the purpose of linking the two in the report?

I would write a different report for the admin. This report is only for waiters at the end of their shift. Since tables are often transferred to a different waiter and then cashed out by that waiter I need to show totals at the end of the shift for that waiter based upon the waiter entity.

The idea of using CURRENTUSER is that only that waiter should be able to see their totals. I don’t think there is anything to gain from showing all waiter totals.

A follow up question, can you restrict certain reports for certain users? Ideally I want specific user or user groups to only be able to access end of shift reports and admins to be able to access everything.