cancel
Showing results for
Did you mean:
Highlighted Helper II

## Profit / Loss on Matrix Table in power BI

Dear all,

I have stuck in calculating the Profit / Loss between two subgroups. I am pulling data from a single column and creating subgroup and group in power BI and drag that groups to Matrix table. But, I need to do some calculations as mentioned below, Please show me a way to achieve this result and it would be much appreciated.

Sample Excel File

PBIX file

1. Sum of Net Revenue - Sum of Cost of Revenue = Gross Profit (on a separate Total)

2. Sum of Other expenses + Gross Profit = Profit Other Expenses

3. Sum of Other income + Profit Other Expenses = Profit Before Tax

4. Sum of Tax + Profit Before Tax = Profit (Loss) Note: We are using the formula for subtracting --> Sum of Net Revenue - Sum of Cost of Revenue = Gross Profit

`Gross Profit = IF ( ISFILTERED ( sortedGroup[Column1 (groups)] ), SUMX ( Sheet1, Sheet1[Amount] ), SUMX ( FILTER (Sheet1,Sheet1[Account Reporting (groups)]= "Net Revenue" ), Sheet1[Amount] ) - SUMX ( FILTER ( Sheet1, Sheet1[Account Reporting] = "Cost of Revenue" ), Sheet1[Amount] ))`

Many Thanks,

Praveen

1 ACCEPTED SOLUTION

Accepted Solutions
Highlighted Microsoft

## Re: Profit / Loss on Matrix Table in power BI

Hi Praveen,

```Index =
SWITCH (
[Account Balance sheet (groups)],
"Group A", 1,
"Group B", 2,
"Group C", 3,
"Group D", 4,
9999
)
```

2. Create a measure.

```Measure =
IF (
ISFILTERED ( 'Single Column Data'[Account Balance sheet (groups)] ),
SUM ( 'Single Column Data'[Amount] ),
CALCULATE (
SUMX (
'Single Column Data',
IF (
[Index] IN { 2, 3 },
-1 * 'Single Column Data'[Amount],
'Single Column Data'[Amount]
)
),
FILTER (
ALL ( 'Single Column Data' ),
'Single Column Data'[Index] <= MAX ( 'Single Column Data'[Index] )
)
)
)
``` Best Regards,

Dale

Community Support Team _ Dale
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
11 REPLIES 11
Highlighted Super User III

## Re: Profit / Loss on Matrix Table in power BI

You have to adjust your Group-tables a bit and then these measures will deliver the desired result:

`P&L = IF(ISBLANK([RunningTotal]), SUM(Sheet1[Amount]), [RunningTotal])`

with RunningTotal like this:

```RunningTotal =
IF (
ISFILTERED ( sortedGroup[Index] ),
BLANK (),
CALCULATE (
[AmountWithSigns],
FILTER ( ALL ( sortedGroup ), sortedGroup[Index] <= MAX ( sortedGroup[Index] ) )
)
)
```

and AmountWithSigns like this:

`AmountWithSigns = SUMX(Sheet1, Sheet1[Amount] * RELATED(sortedGroup[SwitchSignMultiplicator])) `

Of course, you could put it all together into one measure, but I find this method easier to follow (see table in attached file).

Also, you might want to use AmountWithSigns for other purposes as well once you're realized its usefulness.

Imke Feldmann (The BIccountant)

If you liked my solution, please give it a thumbs up. And if I did answer your question, please mark this post as a solution. Thanks!

Highlighted Microsoft

## Re: Profit / Loss on Matrix Table in power BI

Hi Praveen,

```Measure =
IF (
ISFILTERED ( sortedGroup[Column1] ),
SUM ( Sheet1[Amount] ),
CALCULATE (
SUMX (
Sheet1,
IF (
Sheet1[Account Reporting (groups)] = "Cost of Revenue",
-1 * Sheet1[Amount],
Sheet1[Amount]
)
),
FILTER (
ALL ( sortedGroup[Index] ),
sortedGroup[Index] <= MAX ( sortedGroup[Index] )
),
ALL ( MajorGroup )
)
)
``` Best Regards,

Dale

Community Support Team _ Dale
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Highlighted Helper II

## Re: Profit / Loss on Matrix Table in power BI

Hello Dale,

Thank you so much for your solution. We got the answer for our sample data. We gave that sample data in a sorted manner for your understanding only. But, in real, what I am expecting is - a solution for non-sorted dataset. Please ref the below screenshot for your understanding and also I have attached an updated pbix file. We need solution for this pbix file. How to do that, please help us. It is so confusing. Your timely help would help us a lot.

Updated PBIX file

Sample Dataset (EXCEL FILE)

Many Thanks,

Praveen. Highlighted Microsoft

## Re: Profit / Loss on Matrix Table in power BI

Hi Praveen,

```Index =
SWITCH (
[Account Balance sheet (groups)],
"Group A", 1,
"Group B", 2,
"Group C", 3,
"Group D", 4,
9999
)
```

2. Create a measure.

```Measure =
IF (
ISFILTERED ( 'Single Column Data'[Account Balance sheet (groups)] ),
SUM ( 'Single Column Data'[Amount] ),
CALCULATE (
SUMX (
'Single Column Data',
IF (
[Index] IN { 2, 3 },
-1 * 'Single Column Data'[Amount],
'Single Column Data'[Amount]
)
),
FILTER (
ALL ( 'Single Column Data' ),
'Single Column Data'[Index] <= MAX ( 'Single Column Data'[Index] )
)
)
)
``` Best Regards,

Dale

Community Support Team _ Dale
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Highlighted Helper I

## Re: Profit / Loss on Matrix Table in power BI

Hi Dale,

We are trying to achieve everthing from fact table and modified your consolidated measure but it is showing same data as NewAmountMST_ICS column not sure what is incorrect. MasterOrderIS is column in fact table holds 1, 2, 3, 4 etc values for each group.

ACCOUNTREPORTINGGROUP_INCOMESTATEMENTSSuperGroup: Revenue( consists of Net Revenue, Cost Revenue), Operating Expenses

ACCOUNTREPORTINGGROUP_INCOMESTATEMENTSGroup : Net Revenue , Cost of Revenue, Operating Expenses

MasterOrderIS column calulated based on each group: 1(Net Revenue), 2(Cost of Revenue), 3( Operating Expenses)

ACCOUNTREPORTINGGROUP_INCOMESTATEMENTS : Variables inside each group

NMeasure =
IF (
ISFILTERED ( 'LedgerTrans Fact'[ACCOUNTREPORTINGGROUP_INCOMESTATEMENTSGroup] ),
SUM ( 'LedgerTrans Fact'[NewAmountMST_ICS] ),
CALCULATE (
SUMX (
'LedgerTrans Fact',
IF (
'LedgerTrans Fact'[MASTERORDERIS] IN { 2, 3 },
-1 * 'LedgerTrans Fact'[NewAmountMST_ICS],
'LedgerTrans Fact'[NewAmountMST_ICS]
)
),
FILTER (
ALL ( 'LedgerTrans Fact'),
'LedgerTrans Fact'[MASTERORDERIS] <= MAX ( 'LedgerTrans Fact'[MASTERORDERIS] )
)
)
)

Thanks

Smita

Highlighted Microsoft

## Re: Profit / Loss on Matrix Table in power BI

Hi Smita,

Do you have the exact same data?

Best Regards,

Dale

Community Support Team _ Dale
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Highlighted Helper I

## Re: Profit / Loss on Matrix Table in power BI

Yes Dale data is same. Index columns which are derived in SortedGroup and Major Group are avaliable in LedgerTrans fact table itself.

MasterOrdeIS: Is to order by Each group. like column1, Index column from SortedGroup table

Each Account Reporting Group is sorted based on this column.

New Order: Is to order by each super group. Like column1 and Index column from Major Group table.

Each Account Reportinf Super group table is ordered based on this column

neworder = IF('LedgerTrans Fact'[ACCOUNTREPORTINGGROUP_INCOMESTATEMENTSGroup]="Net Revenue",1,
IF('LedgerTrans Fact'[ACCOUNTREPORTINGGROUP_INCOMESTATEMENTSGroup]="Operating Expenses",2,
IF('LedgerTrans Fact'[ACCOUNTREPORTINGGROUP_INCOMESTATEMENTSGroup]="Cost of Revenue",1,
IF('LedgerTrans Fact'[ACCOUNTREPORTINGGROUP_INCOMESTATEMENTSGroup]="Other income, (expense), net",3,
IF('LedgerTrans Fact'[ACCOUNTREPORTINGGROUP_INCOMESTATEMENTSGroup]="Provision for income taxes",4,
IF('LedgerTrans Fact'[ACCOUNTREPORTINGGROUP_INCOMESTATEMENTSGroup]="Check",5,
IF('LedgerTrans Fact'[ACCOUNTREPORTINGGROUP_INCOMESTATEMENTSGroup]="Unallocated IT",6,
IF('LedgerTrans Fact'[ACCOUNTREPORTINGGROUP_INCOMESTATEMENTSGroup]="Unallocated Facilities",7,
IF('LedgerTrans Fact'[ACCOUNTREPORTINGGROUP_INCOMESTATEMENTSGroup]="Unallocated Benefits",8,
IF('LedgerTrans Fact'[ACCOUNTREPORTINGGROUP_INCOMESTATEMENTSGroup]="Dept 0000 Costs",9,
IF('LedgerTrans Fact'[ACCOUNTREPORTINGGROUP_INCOMESTATEMENTSGroup]="Dept Blank Costs",10)))))))))))

MasterOrderIS: This is order by column to order  Highlighted Microsoft

## Re: Profit / Loss on Matrix Table in power BI

Hi @sjoshi,

I don't know how you plot the measure in a visual. But if you group the values like that, it could be a different question. The values will be grouped together. I would suggest you create a new thread in this forum with a sample file.

Best Regards,

Dale

Community Support Team _ Dale
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.
Highlighted Helper I

## Re: Profit / Loss on Matrix Table in power BI

Sure Dale I will. Thanks for all your help

Smita

Announcements #### Community Blog

Visit our Community Blog for articles, guides, and information created by fellow community members. #### Using the Community

Need help with the Power BI Community? Our 'Using the Community' support articles are a great place to start. #### Galleries

Looking for inspiration on how to present your data? Need instructional videos? Check out our Galleries! Top Solution Authors
Top Kudoed Authors
Users online (2,162)