Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Qlikview Script ignores condition

Hello,

I have the following table:

[PartCostsCalulation2]:

NoConcatenate LOAD

  [KeyPart],

  [CostDate],

  if(isNull([TotalCostsEndOfMonth]),

       if([KeyPart]=previous([KeyPart]),

            Peek([TotalCostsEndOfMonth]), 0),[TotalCostsEndOfMonth]) as [TotalCostsEndOfMonth],    

  [EndOfMonthStockCalculation]

Resident [PartCostsCalculation1]

ORDER BY [KeyPart], [CostDate] ASC;

DROP TABLE [PartCostsCalculation1];

The result should only peek the costs of the previous month if the [KeyPart] (article name) equals the previous record right?

Well, thats not the case. In the resulting table the record just copies the TotalCostsEndOfMonth of the previous KeyPart, even if this KeyPart is different.

2 Replies
Anonymous
Not applicable
Author

Maybe there is an excluding situation between "previous" and ORDER BY.

Remenber that PREVIOUS operates on the INPUT and PEEK on the OUTPUT.

So what  if [KeyPart] field is not sorted ?

hic
Former Employee
Former Employee

One possiblility is that the condition isNull([TotalCostsEndOfMonth]) isn't kicking in, since there values are blank strings and not NULL.

Try Len(Trim([TotalCostsEndOfMonth]))=0 instead.

See more on NULL handling in QlikView

HIC