Power BI is turning 10, and we’re marking the occasion with a special community challenge. Use your creativity to tell a story, uncover trends, or highlight something unexpected.
Get startedJoin us at FabCon Vienna from September 15-18, 2025, for the ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM. Get registered
Hi ALL!
I tried to calculate in power query levels for my accounts to calculate all of them later .
I used this code to do it , but is`s don`t work , maybe someone know what could be wrong?
let
MappingRules = #"MappingRules",
Level1 = Table.AddColumn(
MappingRules,
"Level",
each if List.ContainsAll(Balance[FinalAccount], { [SourceAccount] }) then 1 else null,
Int64.Type
),
CheckIfCompleted = List.Contains(Level1[Level], null),
IterateLevels = List.Generate(
() => [Table = Level1, LevelNum = 1],
each CheckIfCompleted,
each
let
CurrentTable = _[Table],
NextLevelNum = _[LevelNum] + 1,
UpdatedTable = Table.TransformColumns(
CurrentTable,
{"Level", each
if _ <> null then _
else if List.ContainsAll(CurrentTable[ComponentAccount],
Table.SelectRows(CurrentTable, each [Level] = _[LevelNum])[SourceAccount])
then NextLevelNum
else null,
Int64.Type}
),
UpdatedCheck = List.Contains(UpdatedTable[Level], null)
in
[Table = UpdatedTable, LevelNum = NextLevelNum, CheckIfCompleted = UpdatedCheck],
each _[Table]
),
FinalLevelsTable = List.Last(IterateLevels)
in
FinalLevelsTable
Hi @Yaroslav__D
May I ask if you have resolved this issue? if not Please provide sample data so we can suggest a solution.
Thank you.
Hi , no, this issue not resolved .
yes , sure , mappingrules looks literally like this
TargetAccount | SourceAccount | Operator |
P003099 | P001010 | + |
P003099 | P002010 | + |
P003099 | P002030 | + |
P008999 | P003099 | + |
P008999 | P004050 | + |
P013099 | P013010 | + |
P013099 | P013020 | + |
P013099 | P013025 | + |
P013099 | P013030 | + |
P013099 | P013035 | + |
P013099 | P013040 | + |
P013099 | P013050 | + |
P013099 | P013062 | + |
P013099 | P013064 | + |
P013099 | P013070 | + |
P013099 | P013080 | + |
P013099 | P013095 | + |
P014099 | P014010 | + |
in Balance we have similar list where we find our Source Account , to give level 1 or null
Thanks
consider using Expression.Evaluate
Hi @Yaroslav__D
Thank you for reaching out to the Microsoft Fabric Forum Community. sorry for delay.
@lbendlin idea to use Expression.Evaluate is a really smart one. Instead of going through a complicated loop, it lets you turn the account relationships into simple formulas and calculate the levels step by step — much cleaner and easier to manage.
@lbendlin Thanks for your inputs.
Thanks.
Hi @Yaroslav__D
I wanted to check if you had the opportunity to review the information provided. Please feel free to contact us if you have any further questions.
Hi @Yaroslav__D
Hope everything’s going smoothly on your end. We haven’t heard back from you, so I wanted to check if the issue got sorted. If yes, marking the solution would be awesome for others who might run into the same thing.
Hi @Yaroslav__D,
We are grateful for your participation in the Microsoft Fabric Community forum.
Thanks.
Please provide sample data that covers your issue or question completely, in a usable format (not as a screenshot).
Do not include sensitive information. Do not include anything that is unrelated to the issue or question.
Please show the expected outcome based on the sample data you provided.
Need help uploading data? https://community.fabric.microsoft.com/t5/Community-Blog/How-to-provide-sample-data-in-the-Power-BI-...
Want faster answers? https://community.fabric.microsoft.com/t5/Desktop/How-to-Get-Your-Question-Answered-Quickly/m-p/1447...
This is your chance to engage directly with the engineering team behind Fabric and Power BI. Share your experiences and shape the future.
Check out the June 2025 Fabric update to learn about new features.
User | Count |
---|---|
6 | |
4 | |
3 | |
3 | |
3 |