dear @emre,
Is it possible to add the option to lock an item for sale?
Situation when the chef announces that the item sold out
I want to stop the waiter from order it.
Thanks in advance.
The quickest solution will be.
- Create a custom product tag called
Available
. - Create a
Cancel Orders
action and enableOnly Last Order
setting. - Create a
Order Added
rule and if{ITEM TAG:Available}
Equals
No
, executeCancel Last Order
action. - Go to related product page and update
Available
setting asNo
.
You can improve it by asking a question to cancel order or add anyways.
@emre, is there a way to update this Product Tag using Actions/Rules so you wouldn’t need to go into Manage > Products > Product List > Product
and modify the value manually? I don’t see an Action for Update Product Tag
…
If it were possible, you could use numeric values instead, and each time the item is ordered, the value decreases, then your rule check becomes: if {ITEM TAG:Available} Equals 0
then Cancel Order
.
You could even set the Product Tag to 10 on Work Period Started
Event!
Thank you so much emre
I’ll do it
I still believe this is an option that needs to be added
Please consider this
@QMcKay I was thinking the same thing. How we can operate this? I mean how we can define work period start values?
We need some sort of beginning inventory and ending inventory|WPStart WPClose maybe?
With disregard for actual Physical Inventory in a Warehouse, the following would work for simple control of Product Sales…
Work Period Started
Event containing Action with [?Prompt]
…
- (optional) Action
Update Program Setting
with:[?How Many Soup are Available Today]
to put value in{SETTING:Soups Available}
- Action
Update Product Tag
with:[?How Many Soup are Available Today]
to put value in{ITEM TAG:Available}
- Rule for
Order Added
Event with ActionUpdate Product Tag
with:[=TN('{ITEM TAG:Available}')-1]
to decrease count and with Constrained Action toCancel Order
when[=TN('{ITEM TAG:Available}')-1] == 0
.
That would suffice for those types of products, where the number of bowls of onion soup is changed daily, and you’re not necessarily concerned with tracking Physical Inventory of onions.
In fact, now that I look at it, you wouldn’t even need a Product Tag
at all, just a Program Setting
alone would work. Although having the ability to update the Product Tag
could still be useful… once {SETTING:Soups Available}
becomes 0
, update the Product Tag {ITEM TAG:Available}
to No
.
For actual Physical Inventory in a Warehouse
(like Soda, Beer, Buns, etc), that is a different matter. There are no provisions currently built in to read Inventory
counts for use in Rules, are there @emre?
We would need an Action to read the count of Inventory Items, something like Read Inventory Values
with a parameter for Inventory Item Name
, and have it return the Physical Quantity
at the very least, or determine the Consumption
on-the fly, which might be expensive.
@qmckay, how will you know what inventory items to count when you’re looking at an order?
I’m thinking this would really be great if it could be linked to predicted inventory and recipes.
Like if we could have an action read product availability
which reads the recipe, calculates predicted inventory for the items in the recipe and calculates how many can be made of this recipe (or are available), and sets a program setting (like {:LastProductAvailability}
or something).
The only thing is that the recipes will never be 100 percent accurate (and there’s wastage as well), so just having the system suggest to check the inventory (and then manually setting the product availability to no) when the Inventory prediction is approaching zero might be better than just automatically disabling the product. We could do this by putting margins in a product tag.
so… the next request is going to know the actual stock… on the fly… on line… at any moment… LOL!!!
I knew this moment would come!!! I was just waiting, sitting in my chair, relaxed… just waiting… LOL!!!
Thanks!!!
G.
You won’t, but I addressed that later in the post (after an edit)…
Noo wait a minute…
What we are talking about here has no relationship with inventory. Adding constraints production by using actual inventory numbers is not practical. You need to record all purchases immediately and also track all possible wastes and record them immediately too. It does not work such way in real life.
What requested here is we can sell 100 portions of onion soup in a day and when we sell 100 portions we won’t be able to sell more. It does not relates with if we have enough onion to produce more soup…
lol @QMcKay said exactly same thing…
Onion soup is nasty btw.
So Is there an action To Update Product Tag?
Yes. Update order. Look at that action.
I don’t see anything pertaining to Product Tag Captions / Custom Tags
…
To be clear, we’re talking about Reading and Updating these values…
Though, if you read my post again, we don’t really need it - we can use a Program Setting
instead, but it would still be nice to have the ability to use Product Tag
directly.
Read Inventory Values
doesn’t just read the physical or predicted inventory count for a specific inventory item?
Your right I was thinking of something else.
But you could have an idea of how much you’re supposed to have left and check manually when you’re getting close, no?
In my business for example, there’s little waste and all purchases and waste have to be registered immediately, so most inventory numbers should never be off by more than a certain margin.