You know it doesn’t work that way. You know better. SambaPOS does what you tell it to do. This is not an Issue. It is a configuration error, plain and simple. The Issue Category is reserved for Fatal Errors when something is actually broken in the Application. Heck, I was about to post a Issue for this Topic, but refrained from doing so, because it had never happened before today, but had to think there must be something that I screwed up. Read that Topic, and you will see the problem was caused by my mis-configuration.
Install a vanilla DB and knock your socks off. Run 10000 tests. This “issue” will never happen, because it does not happen unless there is automation configured to make it do so.
Maybe not that Rule. Maybe another Rule.
Open the Rule Debugger and look what happens. The Rule is not firing, or Actions are not firing, or something is stopping the State change, or is changing the State back to New. That’s the problem with messing with any default States or Rules.
It isn’t a matter of “practical” so much as it is about how you want the flow to go.
Remember, you cannot base an Action Constraint on a value that is updated or set in a previous Action in the same Rule. The Rule needs to be split into 2 or 3 Rules. This is the most common configuration error I have ever seen, hands down.
For example, you cannot use an Update Program Setting Action, and then subsequently constrain following Actions based on the Program Setting. IT DOES NOT WORK. You must fire an AMC passing the Program Setting as the Command Value, and in the Rule for the second AMC, constrain the Actions (or the Rule) using the value from the Program Setting in the first Rule.
If you can reliably reproduce the problem, then you can find the solution. Send the DB to @emre if you think it will help. I bet he will find a problem in configuration.
Put a Show Message Action in that Rule to confirm it is firing. Or put an Add line to text file
Action to log it’s invocation and add the Date and Time, the Ticket Type, Ticket Id, Ticket Number, Ticket State(s), and Ticket Tag(s), if you don’t want to be bothered by popups.
Let’s look at your Rule…
Ticket Status says Paid. So your Update Ticket Status Action will not fire because it requires the Current Status of the Ticket to be New Orders. Problem #1.
Show the config for the Action Execute Waiting Kitchens Order Print Job - that action can change the Order State, causing the subsequent Update Order Status Action to not fire, if the Current Status of the Order becomes not New …
