Selle tegemine on iseenesest väga lihtne, teeme parameetri Measure ja kalulatsiooni:
IF [Measure]="Net revenue" then sum([Net revenue])
elseIF [Measure]="Quantity" then sum([Quantity])
elseIF [Measure]="Purchases" then countd([ID])
elseIF [Measure]="Avg. purchases" then sum([Net revenue])/countd([ID])
end
Kui aga tahame nüüd näiteks tekidata eraldi Eelmise ja Hetke aasta objektid
Näiteks:
if attr([Date])<=[Reference date] then [Custom measure] end
siis antud lahendus ei tööta.
Sest korra juba määrasime, et kui valitakse vastav parameeter, siis summeerida ja kui nüüd uut objekti tehes kasutame Kuupäeva detailsus ja juba summeeritud objekti, siis asi ei toimi.
Sellest saab üle aga veidi toimetamist. Tuleb ühe kalkulatsiooni sees filtreerida nii mõõdik kui aeg.
zn(
sum(if ([Date])<=[Reference date] and [Measure]="Net revenue" then ([Net revenue])
elseif ([Date])<=[Reference date] and [Measure]="Quantity" then ([Quantity])
end)
)
+
zn(
countd(IF ([Date])<=[Reference date] and [Measure]="Purchases" then [ID] end)
)
+
zn(
sum(IF ([Date])<=[Reference date] and [Measure]="Avg. purchases" then [Net revenue] end)/
countd(IF ([Date])<=[Reference date] and [Measure]="Avg. purchases" then [ID] end)
)
Mõni andmebaas nagu näiteks Vertica vajab veel, et kasutatakse sum(zn(
Mõni andmebaas nagu näiteks Vertica vajab veel, et kasutatakse sum(zn(