Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations gkittelson on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Micros 3700 - Modifier button to change Item Number

Status
Not open for further replies.

bufftrek

Technical User
May 13, 2014
68
US
Essentially I have a situation where I have a number of liquor items that have 5 different price levels and then I have those same items as iterations of Doubles and Rocks (essentially Jack Daniels, DBL Jack Daniels, ROX Jack Daniels). All iterations have 5 different price levels and right now it creating a mess in our POS. I changed them all to have a specific SLU based on whether or not they are Singles, Doubles, or Rocks but the owner wants to be able to ring in a Single Shot of Jack Daniels and then be able to hit a Double or Rocks modifier button and automatically change the item to be sent (Ring in Jack Daniels, hit the DBL button, either the last rang item or currently highlighted item changes to DBL).

Is this possible or do I need to explain to him that he HAS to select the modifier BEFORE ringing in the liquor of choice. For him this is backward for the flow of ringing items in and he wants a compressed Speed Screen for the bar that allows him to ring multiple 'levels' of pours to alcohol inventory.
 
The current way you are doing it is with menu levels. Menu levels can be very useful for situations like the one you are in. You only have to program one menu item to ring in an item many ways. The way your boss wants to do it is not possible with using menu levels. The "DBL" and "ROX" button changes the menu level and thus the price. It's set up to print the menu level and that's how the bartender knows to make a double. If it worked the way your boss wants it, when you hit "DBL" every drink would switch to "DBL" and that would not be a good thing.

Another way that you could do this is with custom programming. There is a SIM script I have seen that you could choose you "Jack Daniels" and with modifers hit "Double" or "Rox" or whatever and it would charge the price a percentage of what the original menu price and increase based on that.
 
Thanks for the quick reply!

We actually have separate menu items for Singles, Doubles, and Rocks pours (Jack Daniels, Jack Daniels Rocks, Jack Daniels Double).
I know Aloha has a way to ring things in called Smart Items where the base item is rang in (in this case Jack Daniels) and has two other items programmed (Jack Daniels Rocks and Jack Daniels Double) and linked to the Smart Select buttons. When one of the Smart Select buttons is depressed (which are the linked modifier buttons) they automatically change the originally rang base-item to the correctly modified item.

If something of this nature was available I would be able to keep their price levels intact. If it's not an option then I understand, just figured I would throw it out there for those that had much more experience than I ever will!
 
You can do this with an open priced menu item called 'Double', in conjunction with a SIM, but it basically means you can toss out any reliable PMIX.

Code:
VAR DBL_ITEM_TRIGGER : N7 = 190402 //set this to a non-opened priced 'Double' menu item that will be used to trigger the SIM
VAR DBL_ITEM_OPEN : N7 = 190405 //set this to open priced item called 'Double', that will swap places with the menu item above

VAR DBL_MULTIPLIER : $12 = 1

VAR VOID_ITEM : N9

EVENT MI

	IF VOID_ITEM <> 0
		VOIDDETAIL(VOID_ITEM)
		VOID_ITEM = 0
		EXITCONTINUE
	ENDIF

	IF VOID_ITEM = -1
		VOID_ITEM = 0
		EXITCONTINUE
	ENDIF

	VAR CUR_ITEM : N3 = @NUMDTLT
	VAR FOUND_ITEM : N1 = 0

	//this gets us the most recently added item - if it was added at the end the system clears all selections
	//but if it was inserted the newly inserted item is always highlighted
	VAR I : N3 = @NUMDTLT
	WHILE I > (@NUMDTLT - @NUMDTLR)
		IF @DTL_SELECTED[ I ] = 1
			CUR_ITEM = I
			BREAK
		ELSE
			I = I - 1
		ENDIF
	ENDWHILE

	IF @DTL_OBJECT[ CUR_ITEM ] <> DBL_ITEM_TRIGGER
		EXITCONTINUE
	ENDIF

	VOID_ITEM = CUR_ITEM

	WHILE FOUND_ITEM <> 1 AND CUR_ITEM > (@NUMDTLT - @NUMDTLR)
		IF @DTL_IS_COND[ CUR_ITEM ] = 0 AND @DTL_TYPE[ CUR_ITEM ] = "M"
			FOUND_ITEM = 1
		ELSE
			CUR_ITEM = CUR_ITEM - 1
		ENDIF
	ENDWHILE
	
	IF FOUND_ITEM = 1
		IF VOID_ITEM <> @NUMDTLT
			LOADKYBDMACRO MAKEKEYS( (@DTL_TTL[ CUR_ITEM ] * DBL_MULTIPLIER) ), KEY(3,DBL_ITEM_OPEN)
		ELSE
			VOID_ITEM = -1
			LOADKYBDMACRO KEY(1,458753), KEY(1,458753), MAKEKEYS( (@DTL_TTL[ CUR_ITEM ] * DBL_MULTIPLIER) ), KEY(3,DBL_ITEM_OPEN)
		ENDIF
	ELSE
		EXITWITHERROR "Invalid Entry"
	ENDIF


ENDEVENT

//inquiry that also doubles cost of mixers
EVENT INQ : 2
	
	VAR CUR_ITEM : N3 = @NUMDTLT
	VAR FOUND_ITEM : N1 = 0
	VAR TOTAL_TO_DBL : $12 = 0

	WHILE FOUND_ITEM <> 1 AND CUR_ITEM > (@NUMDTLT - @NUMDTLR)
		TOTAL_TO_DBL = TOTAL_TO_DBL + @DTL_TTL[ CUR_ITEM ]
		IF @DTL_IS_COND[ CUR_ITEM ] = 0 AND @DTL_TYPE[ CUR_ITEM ] = "M"
			FOUND_ITEM = 1
		ELSE
			CUR_ITEM = CUR_ITEM - 1
		ENDIF
	ENDWHILE
	
	IF FOUND_ITEM = 1
		LOADKYBDMACRO MAKEKEYS( (TOTAL_TO_DBL * DBL_MULTIPLIER) ), KEY(3, DBL_ITEM_OPEN)
	ELSE
		EXITWITHERROR "Invalid Entry"
	ENDIF

ENDIF

//inquiry that doubles by ringing the item in twice, and modifying with a doubles
EVENT INQ : 3
	
	VAR CUR_ITEM : N3 = @NUMDTLT
	VAR FOUND_ITEM : N1 = 0

	WHILE FOUND_ITEM <> 1 AND CUR_ITEM > (@NUMDTLT - @NUMDTLR)
		IF @DTL_IS_COND[ CUR_ITEM ] = 0 AND @DTL_TYPE[ CUR_ITEM ] = "M"
			FOUND_ITEM = 1
		ELSE
			CUR_ITEM = CUR_ITEM - 1
		ENDIF
	ENDWHILE
	VAR ORIGINAL_ITEM : N7 = CUR_ITEM
	IF FOUND_ITEM = 1
		//things get trickier here, becuase we have to actually ring the items in 

again and then void the existing item
		LOADKYBDMACRO MAKEKEYS(2), KEY(3, @DTL_OBJECT[ CUR_ITEM ])
		WHILE CUR_ITEM < @NUMDTLT
			CUR_ITEM = CUR_ITEM + 1
			LOADKYBDMACRO KEY(3, @DTL_OBJECT[ CUR_ITEM ])
		ENDWHILE
		LOADKYBDMACRO KEY(1,458776)
		LOADKYBDMACRO KEY(3, DBL_ITEM)
		VOIDDETAIL( ORIGINAL_ITEM )
		//LOADKYBDMACRO MAKEKEYS( TOTAL_TO_DBL ), KEY(3, DBL_ITEM_OPEN)
	ELSE
		EXITWITHERROR "Invalid Entry"
	ENDIF

ENDEVENT
 
Unfortunately throwing out the PMix is not an option.

So in the end, if a client was to want to switch from Aloha to Micros but still wanted the functionality of Smart Items/Smart Select they wouldn't have a viable option?

I have considered simply putting in a 'Double' and 'Rocks' button that will simply flip to a screen with all of those items' respective doubles and rocks items in the appropriate place. At the time this seems to be the only solution I can muster but it doesn't allow a highlighted item to modified.

Thank you for your time guys!
 
The only way to ring in a double and have the PMIX accurate (and I don't know if Aloha can actually compensate for this, it doesn't seem like it could given I don't think their smart items adds into the parents items sold total), would be to ring in the item twice and modify it double.

INQ 3 does that in this SIM, so that should work.
 
Perhaps I miscommunicated something previously - I have an individual item for every pour size that exists for every liquor.

Item# 10001 - Jack Daniels
Item# 10002 - Jack Daniels Rocks
Item# 10003 - Jack Daniels Double
Item# 10011 - Jim Beam
Item# 10012 - Jim Beam Rocks
Item# 10013 - Jim Beam Double

Essentially, in Aloha there are Smart Items that when depressed are rang as the 'Default Item', lets say they rang in Item#10001 / Jack Daniels. On that same screen is a panel of buttons, two of which are Rocks and Double. When the Smart Item is selected, there are up to 10 different items it can be - the base default level or up to nine other items dependent on which Smart Select button is pressed. Essentially, the Smart Item 'Jack Daniels' button is depressed and Flag 1 is selected, which is the default item# 10001. If Rocks is selected from the Smart Select panel, then it changes the flag of whatever item is highlighted to Flag 2 and if Double is depressed it changes the Flag to 3.

Essentially, the smart item can have a number of items programmed in and then it automatically selects which Item# is displayed/rang in/sold based on the flag that is selected.

Perhaps that will help clarify what happens in Aloha and bring some light as to what would be ideal in my situation.
Mind you, I work with a number of POS systems on a low level and I think both are beasts. The Smart Item and Smart Select proves beneficial in my situation and I was hoping Micros might have a work around. Also, the Aloha method takes quite a bit of time to build out and adds a ton of items but it is ideal to accurate inventory tracking while also reducing the number of button necessary (otherwise there will have to be a button for every item listed or a ton of different SLUs).

Maybe there is a different way to approach things?
Looking through the SIM it makes some sense but I'm concerned about price changes from the clients perspective (they need to be flexible with being able to price Doubles and Rocks accordingly).

Thank you for your time Moregelen!!
 
Ah. What you are describing actually sounds a lot like how COM in micros behaves, though I've only ever seen it used with food. It is a major beast to setup.

The only way I could really think of to do this with a SIM would be error correcting the item to replace it with the correct item when they hit double.

The only other way I've seen it done was by an inventory company called yellow dog. They basically made a large number of SLU items.

When you hit Vodka, that opens another screen with an SLU Group key for each vodka item. When you hit the specific item, that is just another SLU that takes you to Vodka Item, Vodka Item Rocks, Vodka Item Double
 
Okey doke, so what is COM and what do I need to know to get started using it (better yet, is it an acronym for a module so that I can contact the client's vendor and see what info they will provide).

As far as the SIM is concerned, how is it that error handling will replace a highlighted Vodka Item with the correct Vodka Item Double?

Finally, a large grouping of SLUs is definitely something I would have considered but unfortunately the client is a high-volume speed bar. When it boils down to my business (complete pour accountability) and their business (efficiently ringing items in a volume environment), their business will always prevail.

Thanks again for all of your help - thus far I have some more things to learn and I look forward to hearing about COM!!
 
I believe that you can use a button that will select the menu levels or sub levels first, we used to do this in the 2700 and maybe 8700. I am rusty but think of it this way, each item is only assigned to a specific level, normal, rocks, large pour. You would have a button on the screen to change the level. So you touch Vodkas, all regular vodkas show on the screen. When you touch the rocks button, the regular pours disappear and now the rocks ones will appear under the same SLU. You can also set the menu level to 'stay down' which means after ordering, it won't flip back to the regular size.
Sounds like this Com thing is basically the same thing.


In POSitouch, we have set modifiers which is basically what you want. You touch Vodka which is item 10, touch rocks which changes the Vodka to Vodka rocks, item 11, or martini will change it to item 12. you can even have all the modifiers change with the size, easy to explain with a pizza. Order a reg cheese, all the regular size pizza toppings display, in any order, order the toppings and when you touch large, the pizza changes to the new item number and so do all the toppings.
 
Unfortunately there are already price levels in place for each day of the week (different prices based on which day of the week it is). This is pretty much the big kink that I'm trying to overcome.
 
Even if you do it that way price levels do all kinds of wonky things to PMIX reports, at least in Micros.
 
Can you just program each item and sort the SLU alphabetically? That way they see all 3 Vodkas at the same time, Vodka Reg, Vodka Rocks, and Vodka Martini, then the next brand and its 3 or 4. Will end up with a lot of items in the SLU but you'll have your pricing right. You could reduce the amount of items linked to the SLU by having one SLU button for just the Martinis and Manhattans.
 
Once again, efficiency had to be of prime concern in their situation.
In essence, if they see that they have to hit one extra keystroke for a Well Vodka (unmodified single) then they will want to revert to the original format.

Their Speed Screen/Bar Screen already has the bulk of their products on it as well as Rocks/Double modifiers. They already use them and in this state it takes only one keyless for a Vodka Single and two keypresses each for Rocks or Modifiers without leaving the Speed Screen (they would prefer to keep screen switching to a minimum as it slowed them down a bit - I know it sounds persnickety but I did see it in action).

Thank again for throwing your ideas at me - I hope the brainstorming will bring forth the right solution!
 
Are there any guides available for setting up COM for a bar?
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top