Author Topic: Kitchen messages  (Read 14089 times)

rvandam

  • Jr. Member
  • **
  • Posts: 96
Kitchen messages
« on: January 01, 2013, 03:48:33 am »
First of all, a happy new year for all!

I am working on kitchen messages right now. We use these quite much to inform the kitchen about when they can serve main course, and to inform when x people enter the restaurant. Right now I  make print tasks and the option "show button"

This solution works very well for messages like "table 15 ready for main course"

This solution is not so good for messages like "10 people entered the restaurant"

I did take a look how this was solved at our current pos (hope to get rid of it soon). At the current pos messages are treated like 0,00 articles (gift items). So when 10 people enter the restaurant you type 10 x button "people entered restaurant". Unfortunately when these messages are mapped to a table, they show up at the bill.

I had the idea to make an product group named messages, and mark the products as "gift item". The problem is that I am not sure if it is a good idea to remove the gift items from the ticket printer template. What happens for example when I give a discount?

Would it be an idea to add an extra checkbox with the option "message" to products, next to the option "gift item"?

Or is there a good solution within the current program, like tagging these message products, and filter them out from the ticket printer template? I know there is a template tag {item tag}, is it also possible like this {if not item tag message}?

emre

  • SambaPOS Developer
  • Samba Team
  • Hero Member
  • *****
  • Posts: 1564
Re: Kitchen messages
« Reply #1 on: January 01, 2013, 06:55:10 am »
Leaving messages as gift items in ticket might not be a good solution. Gifted items shown in reports and you may want to use gifting feature in the future.

By playing with actions and rules it is possible to tag proper items and print them but excluding items from printing is not possible.

A solution might be removing message items from ticket automatically as soon as they printed. Since they do not remain in ticket there will be no need to exclude them from printing. If it sounds like a good solution for you I can give more details about that.

rvandam

  • Jr. Member
  • **
  • Posts: 96
Re: Kitchen messages
« Reply #2 on: January 01, 2013, 08:03:05 am »
Thank you for the reply :-)

Removing message items automatically sounds very good. If this means I can send pre formatted messages to the kitchen like in the ts I am happy.

I was indeed worried about the consequences, abusing the gift feature for messages.

emre

  • SambaPOS Developer
  • Samba Team
  • Hero Member
  • *****
  • Posts: 1564
Re: Kitchen messages
« Reply #3 on: January 01, 2013, 01:53:09 pm »
OK. The idea is creating menu items for messages and print them as soon as they've added in ticket.

First of all while trying it on my SambaPOS installation I've noticed two little bugs that generates error messages. We'll add an additional step for the workaround. This should be configured before start.

Applying Ticket Item Tag Fix:
  • Create a new Action and name it as Fix Ticket Item Tag
  • Action Type : "Update Ticket Item Tag"
  • Leave Tag parameter empty.
  • Create a new Rule and Name it as Ticket Item Tag Fix Rule
  • Event Name: "Line Added to Ticket"
  • Choose "Fix Ticket Item Tag" action.
That will fix the bug. Now we'll start creating needed actions and the rule.


The Action that will tag lines as "Message"
  • Create a new Action and name it as "Update Message Tag"
  • Action type will be "Update Ticket Item Tag"
  • Tag Parameter will be Message
The Action that will execute Kitchen Print Job. We'll use default Kitchen printing job here but if needed you can create additional print job and printing template.
  • Create a new Action and name it as "Print Messages"
  • Action type will be "Execute Print Job"
  • Print Job Name parameter will be "Print Orders to Kitchen"
  • TicketItemTag parameter will be "Message". (So only items tagged as message will be printed.
The action that will Void ticket items tagged as message. Since these orders are new it will just remove the ticket line instead of voiding it.
  • Create a new Action and name it as "Void Message Item"
  • Action Type will be "Void Ticket Items"
  • We have another small issue here. Menu Item Name parameter will be empty since we don't know the menu item name but entering a value here is required in order to make this action work. Hopefully we don't need exact match here so we can just enter a single space. That means "Menu item names that we'll create for messages should have space in it". It will be fine for multiple word messages but for single word messages we need to add an extra space char.
  • Tag Parameter will be Message.
Now we'll create the rule that will execute these actions.
  • Create a new rule and name it as "Message Printing Rule"
  • Event Name will be "Line Added To Ticket".
  • MenuItemGroupCode Condition will be "=" to "Messages". We assume the Group Code for Menu Items that you'll create for messaging will be "Messages". If you previously created them the Group Code should appear in the Drop Down.
  • Click Select Actions
  • Select "Update Message Tag", "Print Messages" and "Void Message Item" actions.
That means when a Menu Item with "Message" Group Code added to Ticket, SambaPOS will Tag the line as "Message", Execute the Print Job for items tagged with "Message" and Void items tagged with "Message".


When operator chooses a message, nothing will happen visually since items immediately gets deleted. For a Visual Feedback you can consider creating a "Show Message" action and execute it at the end of the "Message Printing Rule"

Another alternative might be Tagging ticket with "Last Message" tag for storing last sent message. To configure it:
  • Create a new Action and name it as "Store Last Message"
  • Action Type will be "Update Ticket Tag"
  • Tag Name: parameter will be "Last Message" (Or any other thing that may have a meaning.
  • Tag Value: parameter will be [MESSAGE] (As you know when we write something in square brackets we can assign that value from rule.
After saving it switch back to "Message Printing Rule"
  • Click "Select Actions" and choose "Store Last Message" action.
  • Click OK.
  • Click the little triangle arrow to expand "Store Last Message" action parameters. You should see "MESSAGE" parameter there. Enter [Quantity] [MenuItemName] values there. That means it will copy the quantity and the name values to the Ticket Tag.
Now choosing Message Items should display last sent message under the ticket.

I hope it will solve your problem.

Thanks.
« Last Edit: January 01, 2013, 01:57:31 pm by emre »

rvandam

  • Jr. Member
  • **
  • Posts: 96
Re: Kitchen messages
« Reply #4 on: January 01, 2013, 02:35:04 pm »
Thank you for the detailed problem fix, I really appreciate it!

Unfortunately I wont be able to apply it tomorrow, so I will let you know if it worked by Thursday (next Monday we will start the first test week in the restaurant with the system and I cannot wait :) ).


rvandam

  • Jr. Member
  • **
  • Posts: 96
Re: Kitchen messages
« Reply #5 on: January 03, 2013, 07:28:48 am »
I have followed the steps you gave exactly (without the feedback part).

The void part is working well, but I cannot get the print part working.

Here is what I did beside the steps from above:

* I made a product group called Messages
* in this group I added 2 products called "Extra person" and " Ready for starter" with a price of 0.01. To be sure I have added an extra space as first character to " Ready for starter"
* I have added the Messages group to the menu
* I have added an extra print task --> product group Messages -->printer and printer template same as Kitchen orders
* I disabled option "close ticket" (also tried enabled) --> Auto print after new rules added to ticket
* I added the print task to the terminal

When I press the Message article button, the article doesn't show up at the screen, so the void part does well

rvandam

  • Jr. Member
  • **
  • Posts: 96
Re: Kitchen messages
« Reply #6 on: January 03, 2013, 08:57:37 am »
I found the solution :-)

In the action "Print Messages" I typed in the English Print Rule name "Print orders to kitchen printer" Instead I simply should have selected the Dutch localized version from the list....sighs....  :) I think I should have taken one extra coffee before I started this morning.

I also removed the print job "Messages" since it works perfectly without. Printing messages to the kitchen works very intuitive now. I recommend this solution for everybody who needs to communicate to the kitchen by tickets.

Thank you for the great support!!!

rvandam

  • Jr. Member
  • **
  • Posts: 96
Re: Kitchen messages
« Reply #7 on: February 05, 2013, 06:20:54 am »
Our staff is very creative in finding new problems :-)

I got the complaint that the kitchen messages were erased immediately, so waiter1 could not check if waiter2 has informed the kitchen about passing the main course etc.

My first solution was to print out the kitchen message both in the kitchen as in the bar. This looked like a good solution, but in summer on the terrace we plan to use an extra terminal or tablets.

Second I tried to erase the Messages using rule "ticket close", but unfortunately I could not get this working.

As last resort I decided to abuse the Gift function for this. I marked all messages as gift, and removed the gift line from the ticket template. Because the header was still printed on the tickets, I tagged all messages with an empty space. I use {PRODUCT TAG} to group the products on the ticket.

Although I am missing the gift feature now (which we weren't using anyway), this seems to be the only working solution right now.

If anybody has a better solution I am happy to hear it. :)