March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount! Early bird discount ends December 31.
Register NowBe one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now
I am trying to create a report that will show all products within an order number where one of the items contains the word coupon. I've borrowed some DAX from another thread and when I use this formula with the full product name equals, I get the correct response. But because we use many different coupon codes, I'm trying to write it with the CONTAINS( feature and when I add that behind the && it doesn't work properly.
What am I doing wrong?
WORKS:
Contains Coupon = VAR inExist=CALCULATE(COUNT('Operations: Orders Shopping Cart'[OrderNumber]),FILTER('Operations: Orders Shopping Cart','Operations: Orders Shopping Cart'[OrderNumber]=EARLIER('Operations: Orders Shopping Cart'[OrderNumber]) && 'Operations: Orders Shopping Cart'[OrderedProductName]="Coupon: epssp-gamer"))
Solved! Go to Solution.
try
Contains Coupon = VAR inExist=CALCULATE(COUNT('Operations: Orders Shopping Cart'[OrderNumber]),FILTER('Operations: Orders Shopping Cart','Operations: Orders Shopping Cart'[OrderNumber]=EARLIER('Operations: Orders Shopping Cart'[OrderNumber]) && SEARCH("coupon",'Operations: Orders Shopping Cart'[OrderedProductName],,0)>0))
RETURN
IF(inExist>0,"Coupon Applied","No Coupon")
hi @ciken
i dont completely understand.
does it work with CONTAINS or with equal?
Anyway, I think it shouldnt work with CONTAINS, because CONTAINS is aboout whole table.
for row-by-row comparision you should use SEARCH https://docs.microsoft.com/en-us/dax/search-function-dax or FIND https://docs.microsoft.com/en-us/dax/find-function-dax functions (the difference is in case-sensitivity)
do not hesitate to give a kudo to useful posts and mark solutions as solution
try
Contains Coupon = VAR inExist=CALCULATE(COUNT('Operations: Orders Shopping Cart'[OrderNumber]),FILTER('Operations: Orders Shopping Cart','Operations: Orders Shopping Cart'[OrderNumber]=EARLIER('Operations: Orders Shopping Cart'[OrderNumber]) && SEARCH("coupon",'Operations: Orders Shopping Cart'[OrderedProductName])>0))
RETURN
IF(inExist>0,"Coupon Applied","No Coupon")
do not hesitate to give a kudo to useful posts and mark solutions as solution
Results in Error message: (The search Text producted to function 'SEARCH' could not be found in the given text.)
try
Contains Coupon = VAR inExist=CALCULATE(COUNT('Operations: Orders Shopping Cart'[OrderNumber]),FILTER('Operations: Orders Shopping Cart','Operations: Orders Shopping Cart'[OrderNumber]=EARLIER('Operations: Orders Shopping Cart'[OrderNumber]) && SEARCH("coupon",'Operations: Orders Shopping Cart'[OrderedProductName],,0)>0))
RETURN
IF(inExist>0,"Coupon Applied","No Coupon")
User | Count |
---|---|
117 | |
77 | |
58 | |
52 | |
46 |
User | Count |
---|---|
171 | |
117 | |
63 | |
57 | |
51 |