Skip to main content
Announcements
Global Transformation Awards! Applications are now open. Submit Entry
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Dependence between expressions

I have found a weird QlikView behaviour, that I would like some feedback on.

In my understanding one expression must not have an influence on the result of another, unless you explicitly reference the other column, of course.

As you can see in the attached example, it does in this particular instance though. In either of the 4 tables in the sample qvw you'll find the same dimensions and basically the same expressions. The only difference is, that in the top two tables, the set analysis in the expression is EXACTLY the same, while in the other two it is slightly different. When they are exactly the same within one table, the first expression shows wrong results. When they differ slightly within one table, the results are correct (the sum should be 33, not 66).

66 vs 33.PNG

It gets even weirder. When you copy the fact table during the load and then replace the original with the copy, the problem subsides as well (the load script contains the code for that, you just have to comment it out)

I have created this in QlikView 11.20.12904.0 SR12

Edit: The error persists in QlikView 12.10.20500.0 SR7

Does that make sense to anyone? Am I missing something? Or is this a bug? Can you see the same thing in later versions?


Expression dependence.qvw --> the actual application

Expression dependence data.qvw --> the qvw the other one loads data from via a binary load


If you have any questions or aren't able to reproduce this, please let me know.


Regards,

Sandro

2 Replies
balar025
Creator III
Creator III

hi,

in your one of the expression for 'Test' you have used NuzzerId in set analysis and in another you have Nuzzer

concat(

{1<

NutzerId = p({1<Nutzer = $::Nutzer, NutzerId = $::NutzerId>} NutzerId),

ArbeitszeitIstSollKz = {'I'},

Datum = p({1<[Monat] = $::Monat>} Datum)

>}

aggr(

'Test',

ArbeitszeitNutzerDatumId

),

' | '

)

=concat(

{1<

Nutzer = p({1<Nutzer = $::Nutzer, NutzerId = $::NutzerId>} Nutzer),

ArbeitszeitIstSollKz = {'I'},

Datum = p({1<[Monat] = $::Monat>} Datum)

>}

aggr(

'Test',

ArbeitszeitNutzerDatumId

),

' | '

)

Regards,

Ravi Balar

Anonymous
Not applicable
Author

Thanks Ravi

But that is exactly my point:

- both Nutzer and NutzerId are unique fields within the same table, so the expressions should yield the same results

- AND more importantly changing from one formula to the other in "Arbeitszeit" has an influence on the results in "Ist"!!