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

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
RookiePBI2019
Regular Visitor

Multiply measure by a factor

 

Dear all,

 

I am completely blocked, I would need to multiply a measure calculated by a conditional factor, I mean, I have created a formula to receive an average between 2 years depending the order type and now I have to multiply that measure by a factor conditioning the order type.

 

Order TypeYearQty
A20193
A20184
B20195
B20182
C20196
C201832

 

Order TypeFactor
A0,33
B1,05
C1,15

 

could someone please help me?

 

Thanks in advance!

1 ACCEPTED SOLUTION
v-frfei-msft
Community Support
Community Support

Hi @RookiePBI2019 ,

 

To create a measure as below.

Measure =
VAR averag =
    AVERAGE ( 'Table'[Qty] )
VAR ty =
    MAX ( 'Table'[Order Type] )
VAR fact =
    CALCULATE ( MAX ( Factor[Factor] ), FILTER ( Factor, Factor[Order Type] = ty ) )
RETURN
    averag * fact

Capture.PNG

 

For more details, please check the pbix as attached.

 

Community Support Team _ Frank
If this post helps, then please consider Accept it as the solution to help the others find it more quickly.

View solution in original post

3 REPLIES 3
Ashish_Mathur
Super User
Super User

Hi,

Build a relationship from the Order Type column of Table1 to the Order Type column of Table2.  In Table1, write this calculated column formula

=RELATED(Table2[Factor])

To your visual, drag Order Type from Table2.  You may now create this measure

=SUMX(Table1,Table1[Factor]*Table1[Qty])

Hope this helps.

 


Regards,
Ashish Mathur
http://www.ashishmathur.com
https://www.linkedin.com/in/excelenthusiasts/
v-frfei-msft
Community Support
Community Support

Hi @RookiePBI2019 ,

 

To create a measure as below.

Measure =
VAR averag =
    AVERAGE ( 'Table'[Qty] )
VAR ty =
    MAX ( 'Table'[Order Type] )
VAR fact =
    CALCULATE ( MAX ( Factor[Factor] ), FILTER ( Factor, Factor[Order Type] = ty ) )
RETURN
    averag * fact

Capture.PNG

 

For more details, please check the pbix as attached.

 

Community Support Team _ Frank
If this post helps, then please consider Accept it as the solution to help the others find it more quickly.

Hi @RookiePBI2019 

 

There are multiple ways to do this though I think the neatest is to use a separate order types (dimension) table that contains the factors and relate it to the measure with the order quantities as so:

 

related factor data model.png

 

You can then multiply your measure by the corresponding row in the factors table by using SUMX e.g.

 

Factored Quantity SUMX =
[Average Qty Per Year By Type] * SUMX(OrderTypeFactors,OrderTypeFactors[Factor])

 

Note that if you want to make sure that the measure is only shown against a specified order type (with no total), you could write a measure that picks out the relevant factor e.g:

 

Factored Quantity =
VAR OneOrderTypeSelected = HASONEVALUE(OrderTypeFactors[Order Type])
VAR SelectedOrderType = SELECTEDVALUE(OrderTypeFactors[Order Type])
VAR Factor = CALCULATE(VALUES(OrderTypeFactors[Factor]),OrderTypeFactors[Order Type]=SelectedOrderType)
RETURN
IF(OneOrderTypeSelected,[Average Qty Per Year By Type] * Factor,BLANK())
 
The resulting measures then look like:
 
related factor table.png

A PBIX which shows this can be viewed here

 

 

 

Helpful resources

Announcements
RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

MayPowerBICarousel

Power BI Monthly Update - May 2024

Check out the May 2024 Power BI update to learn about new features.

LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.