Czy kiedykolwiek mieliście tak, że kopiując fragment kodu, który używaliście od lat po prostu przestał Wam działać?

Ostatnio Klient poprosił o poprawki w używanych miarach sprzedaży. Klasyka. Ponieważ robicie to od lat, macie już pewnie sprawdzony kod. Jedni z Was deweloperzy opierają miary o kalendarz, inni definiuje zmienne. W moim przypadku stosuje rozwiązanie Steve – schludne i klarowne. 

let vMaxDate  = ‘=max(Date)’;

let vMaxDay   = ‘=day(max(Date))’;

let vMaxMonth  = ‘=month(max(Date))’;

let vMaxYear  = ‘=max(Year)’;

Ok, banał. Tutaj poza cudami z datą nic nie ma prawa się zepsuć. Unikamy timestapów, korzystamy z floor i num. Przechodzimy do miary.

SUM({<Year={‘$(vPriorMonthYear)’},Month={‘$(vPriorMonth)’},[Day]={‘<=$(vMaxDay)’},DOK={’10’,’5′,’10010′,’50’},Date=,”Rok-Miesiąc”=>}[Sale])

Miara powyższa ma policzyć nic innego jak sumę kolumny Sale dla konkretnych typów dokumentu w miesiącu poprzednim do konkretnego dnia. Czyli od 1 do 23 lipca 2020. Zatem dlaczego suma wynosi 0? (nie, to nie kwestia danych). Co w tej mierze jest złego?

Dodam, że w dolnym rogu ekranu widać wynik przypisania zmiennych i wszystko jest ok – dalej wielkie zero.

Ok, metodą cięcia miary dochodzę do wniosku, że jeżeli pozbędę się [Day]={‘<=$(vMaxDay)’  otrzymuję wynik.

Ok, to może inny zapis? [Day]={‘$(vMaxDay)’  kasuje znak <=, hmm otrzymuję sprzedaż za konkretny dzień. Ciekawe…

Pomyliłem się w składni?

Szybki telefon do przyjaciela. “Piotrek, a zamień ‘ na ” “”  czyli [Day]={“=$(vMaxDay)”}, voila działa! 

First Day on the Internet Kid | Know Your Meme

Zatem ‘ i ” są tak samo interpretowane w Qlik czy nie?

Przekopując community natrafiłem na wpisy:

https://community.qlik.com/t5/New-to-Qlik-Sense/Set-analysis-difference-between-single-quote-and-double-quote/m-p/1339053

https://community.qlik.com/t5/Qlik-Sense-App-Development/Dual-Single-Versus-Double-Quotes/td-p/71709

Dzięki, że przeczytałeś do końca! 🙂

 

 

Set analysis ” czy ‘ ?