Custom sales bar report

i have made a custom report for bar and restaurant menu both separate, but strange is that the items from the restaurant menu are appearing in the Bar sales report. below is the code am using where could be the error ?
thank you.

[BAR SALES:5, 2, 2,1]
@{REPORT ORDER DETAILS:O.MenuItemName,O.ExactTotal.Sum.desc:(ODI=True) and (DE=Bar):{0}:,}
>{REPORT ORDER DETAILS:O.MenuItemName,O.Quantity.Sum.desc,O.ExactTotal.Sum.desc:(ODI=True) and (DE=Bar) and O.MenuItemName="$1"}
{REPORT ORDER DETAILS:'     '+[O.PortionName],O.Quantity.Sum.desc,O.ExactTotal.Sum.desc:(ODI=True) and (DE=Bar) and O.MenuItemName="$1":2}
>Total|{REPORT ORDER DETAILS:O.ExactTotal.Sum:(ODI=True) and (DE=Bar)}
[User Sales:1, 1]
{REPORT ORDER DETAILS:O.User,O.ExactTotal.Sum.desc:(ODI=True) and (DE=Bar)}
@{REPORT PAYMENT DETAILS:P.User,P.Amount.Sum::{0}:,}

[Payments:2, 1, 2]
{REPORT PAYMENT DETAILS:P.Name,P.Amount.Percent,P.Amount.Sum:Payment.Amount > 0 and (DE=Bar)}
>Total|{REPORT PAYMENT DETAILS:P.Amount.Sum:Payment.Amount > 0 and (DE=Bar)}

[Settled by $1:1, 1, 1] 
{REPORT PAYMENT DETAILS:P.Name,P.Amount.Percent,P.Amount.Sum:(PU=$1) and (DE=Bar)} 
>Total Income|{REPORT PAYMENT DETAILS:P.Amount.Sum:(PU=$1) and (DE=Bar)}

[Refund Payments:2, 1, 2]

Explain your setup, products and menus are not specificly restricted to a department.
Can you explain your ticket creation method and any automation relating to changing menu/department.
If you are more concerned with splitting product list based on fixed products to group maybe look to use group code or a custom product tag.
I have a wet/dry custom tag which helps me report of drinks/food sales seperatly without using departments etc

Thank you JTRTech for your help. I have 2 departments, Bar and Restaurant. they both have groups codes (whiskey, rum, beer etc for Bar) and group codes for Restaurant (breakfast, wraps, hot beverages etc) so when creating a ticket you choose either bar or Restaurant and get the menu of that specific department.
i would appreciate if you can share the wet/dry custom tag and I test from my end.

thank you much appreciated.

You create a custom product tag which then works a bit like group code but custom, I have 10-12 with all sorts of data for kitchen course, PMS account code etc etc.
Custom product tags is well documented on forum, from memory think the report expression is MT.TagName=xxxx

Thanks a lot. Let me peruse in the forum and learn about it