# New to QlikView

Discussion board where members can get started with QlikView.

Announcements
Attend QlikWorld 2020 and hear keynote speaker, Malcolm Gladwell. \$300 savings extended to February 9th Learn More
Highlighted
Contributor III

Hi,

I have a if function with the following conditions:

if((not match([Product Type],'DE','PA','RE','SA','CE','AA','VA','5M','FA') and

[Sales Trn Detail DCIO TRADE IND] =1 and [Trans Trade Class]='S' and not match([Trans Status Code],'D')), sum([Sales Amount USD]))

and I have replaced it with the following set analysis:

sum({\$<[Product Type]-= {'DE','PA','RE','SA','CE','AA','VA','5M','FA'},[Sales Trn Detail DCIO TRADE IND]={1},[Trans Trade Class]={'S'},[Trans Status Code] -= {'D'}>}[Sales Amount USD])

and they gives me different result for me.

Please help me if anything is wrong in my set analysis.

Thanks,

Sandip

Tags (1)
7 Replies

## Re: is my set analysis is correct? Please help

Try this?

sum({\$<[Product Type]-= {'DE','PA','RE','SA','CE','AA','VA','5M','FA'},[Sales Trn Detail DCIO TRADE IND]={1},[Trans Trade Class]={'S'}>+<[Trans Status Code] -= {'D'}>} [Sales Amount USD])

Before develop something, think If placed (The Right information | To the right people | At the Right time | In the Right place | With the Right context)
MVP

## Re: is my set analysis is correct? Please help

Try like this

sum({\$<[Product Type]= {"*"}-{'DE','PA','RE','SA','CE','AA','VA','5M','FA'},[Sales Trn Detail DCIO TRADE IND]={1},[Trans Trade Class]={'S'},[Trans Status Code] = {"*"}- {'D'}>}[Sales Amount USD])

MVP

## Re: is my set analysis is correct? Please help

It's always better to create the Flag in script for long conditions to make expression simpler

if((not match([Product Type],'DE','PA','RE','SA','CE','AA','VA','5M','FA') and

[Sales Trn Detail DCIO TRADE IND] =1 and [Trans Trade Class]='S' and not match([Trans Status Code],'D')), 1) as Flag

Expression:

=Sum({<Flag={1}>} [Sales Amount USD])

Honored Contributor III

## Re: is my set analysis is correct? Please help

Hi Sandip,

may be because Set Analysis is per chart, non per Row.

If() is per Row.

Regards,

Antonio

Contributor

## Re: is my set analysis is correct? Please help

Hi There,

This could be happening for a number of reasons.  Some suggestions:

1)  Are any of your [Product Type] or [Trans Status Code] values (or fields associated with them) nulls ?  -= in Set Analysis will work differently to "not match" in these cases

2)  Are you sure that the Product Type values, for instance, are not repeated in a way you're not anticipating?  I've attached an example of how similar expressions can "go wrong" based on the underlying data.

The particular way in which your result is wrong, or some sample data would be helpful.  Is the Set Analysis returning a lower value than you're expecting?  A higher value?

MVP

## Re: is my set analysis is correct? Please help

Are there nulls in Product Type or Trans Status Code fields?

Honored Contributor III

## Re: is my set analysis is correct? Please help

May be try

sum({1<[Product Type]-= {'DE','PA','RE','SA','CE','AA','VA','5M','FA'},[Sales Trn Detail DCIO TRADE IND]={1},[Trans Trade Class]={'S'},[Trans Status Code] -= {'D'}>}[Sales Amount USD])