Help with Report for Item Sales grouped by Menu item Group but with portion breakdown

The .asc groups I think.
What are you trying to achieve?

I have been live since June the 1st.
Basic functionalities rock !

Now I am making the reports I will need.

In this case, I am on a report for the barman shift change, so all bar items + portions that have been out of the “fridge”. Basically the included _Item sales repor_t but grouped by group :slight_smile:
So I am reading @Emre post

btw what is ODI=True?

Order Decrease Inventory

Its used in default void flow and easy option on reporting for items which count as a sale or not.

I did this already.
Only issue I hit was when items with name containing a comma was messing up the order name list as part of the group.
This is the report as is using comma seperator. it takes a while to load as loops through all orders for date range for each group x product but works nicely vs the default item sales;

@{REPORT ORDER DETAILS:O.ItemGroup.asc,O.ExactTotal.Sum::{0}:,}
@{REPORT ORDER DETAILS:O.MenuItemName,O.ExactTotal.Sum.desc:(ODI=True):{0}:,}
[$1 Sales:8, 2, 2]
>{REPORT ORDER DETAILS:O.MenuItemName,O.Quantity.Sum.desc,O.ExactTotal.Sum.desc:(ODI=True) and O.MenuItemName="$2" and (MG=$1)}
{REPORT ORDER DETAILS:'        '+[O.PortionName],O.Quantity.Sum.desc,O.ExactTotal.Sum.desc:(ODI=True) and O.MenuItemName="$2" and (MG=$1) and O.PortionName!="Normal"}
>>Total $1|{REPORT ORDER DETAILS:O.Quantity.Sum,O.ExactTotal.Sum:(ODI=True) and (MG=$1)}
2 Likes

:sunny:

GREAT !

I take indeed a while … I though I was in an endless loop and as I am currently with 3 waiters using it … I was sweating :slight_smile:

Not sure on your reporting a skills but so you understands this is as I understand;
List groups,
In a loop create a list of profucts for the group.
Report orders in same was as default item sales report based on that product list.

This is the reason this report takes time to load as its not looking at whole period at once like default its having to go through all tickets each time.
Emre did try and improve the report performace but have not had chance to test in live environment yet…

Just a not to anyone who used this report template, there is an issue also for products and product groups with ‘and’ in the name/group - ie ‘Brandy’.
A workarround is to just sort a block report by product/group as here;

Thanks Emre Aand JTR Tech for this wonderful tutorial,i am trying to follow all what you have illustrated.
I wanted to create a custom report to be accessed only by a particular department,i have managed to do that.My main issue though,is how to show the specific totals for the chosen menu items.
Please check below

@Breakfast,Deserts,Wraps,
@{REPORT ORDER DETAILS:O.MenuItemName,O.ExactTotal.Sum.desc:(ODI=True):{0}:|}
[$1 Sales:8, 2, 2]
>{REPORT ORDER DETAILS:O.MenuItemName,O.Quantity.Sum.desc,O.ExactTotal.Sum.desc:(ODI=True) and O.MenuItemName="$2" and (MG=$1)}
{REPORT ORDER DETAILS:'        '+[O.PortionName],O.Quantity.Sum.desc,O.ExactTotal.Sum.desc:(ODI=True) and O.MenuItemName="$2" and (MG=$1) and O.PortionName!="Normal"}
>>Total $1|{REPORT ORDER DETAILS:O.Quantity.Sum,O.ExactTotal.Sum:(ODI=True) and (MG=$1)}

[Item Sales:8, 2, 2, 2]
{REPORT ORDER DETAILS:O.ItemGroup,O.ExactTotal.Percent,O.Quantity.Sum,O.ExactTotal.Sum}
>>Total Sales||{REPORT ORDER DETAILS:O.ExactTotal.Sum}

Capture1

Capture2

I want this department to specifically see the sale for only 3 menu items

  • Wraps

  • Deserts

  • Breakfast

i want to customize the item sale report for this particular department, to only report the items sold in 3 groups

Guessing g your referring to the item sales table at the bottom.?
Although you have already reported those groups in separate tables???
You would probably be best to create a custom product tag/field for departemnt and report using that field as constraint.

How else how can I show the grand total on the grouped sale report.please reffer to above screen shot,the grouped sale report just show the total sales per individual group.

I need to show the total sales of wraps,breakfast and deserts combined

As I said, either a separate product tag filter on new field added and set on products or you try using brackets and ‘or’ in there port constraints. Or you do a formula adding three report expressions - one per groupm

Simple just use this:

{REPORT ORDER DETAILS:O.Quantity.Sum,O.ExactTotal.Sum:(ODI=True) and (MG=Breakfast) OR (MG=Deserts) OR (MG=Wraps)}
2 Likes

@Jesse would you not.need brackets arround the MGs like you would need in an action constraint or do reports act like match on rule contstraints of similar ‘aspect’?

Nope that report works. You have never needed quotes or brackets for expressions.

1 Like

thankyou this is what i meant,how about on the item sale report for the same ,is their a way i can adjust the items to view the sale for wraps,deserts and breakfast only

It’s the same report tag just use what I showed you.

2 Likes

This is what i want to achieve in my report, i would also like to welcome any person with a different opinion on how to achieve this
Cpt1

Cumulative total of what?
You have been given suggestions but don’t seem to be taking it forward.
Plus you need to show you template to go with it, else were just guessing.

Did you even try the report I gave you? It did what your asking.