Forum Discussion
Use value if entry is missing compared to another table
- 8 years ago
- 8 years ago
Sure, here you go...
StateChanges:
ServerName;DateTime;HealthyPercent;WarningPercent;CriticalPercent
serverA;2018-02-18 0:00;95;0;5
serverB;2018-02-18 0:00;90;5;5
serverC;2018-02-18 0:00;0;0;100
serverA;2018-02-18 1:00;85;5;10
serverC;2018-02-18 1:00;0;0;100
...
GroupTable:
ServerName;
serverA;
serverB;
serverC;
serverD;
...
Result:
ServerName;DateTime;HealthyPercent;WarningPercent;CriticalPercent
serverA;2018-02-18 0:00;95;0;5
serverB;2018-02-18 0:00;90;5;5
serverC;2018-02-18 0:00;0;0;100
serverD;2018-02-18 0:00;100;0;0
serverA;2018-02-18 1:00;85;5;10
serverB;2018-02-18 1:00;100;0;0
serverC;2018-02-18 1:00;0;0;100
serverD;2018-02-18 1:00;100;0
...
Guess that is what it is supposed to look.
Thanks again,
Patrick
- Zubair_Muhammad8 years agoCommunity Champion
Hi PatrickSeidl
My apologies for late reply
There is too much work these days in my office
Hopefully this will work
New Table = ADDCOLUMNS ( ADDCOLUMNS ( CROSSJOIN ( ALL ( GroupTable[ServerName] ), ALL ( StateChanges[DateTime] ) ), "Healthy Percent", VAR mycalc = CALCULATE ( SUM ( StateChanges[HealthyPercent] ), FILTER ( StateChanges, StateChanges[ServerName] = EARLIER ( [ServerName] ) && StateChanges[DateTime] = EARLIER ( [DateTime] ) ) ) RETURN IF ( ISBLANK ( mycalc ), 100, mycalc ) ), "Critical Percent", VAR result = LOOKUPVALUE ( StateChanges[CriticalPercent], StateChanges[ServerName], [ServerName], StateChanges[DateTime], [DateTime] ) RETURN IF ( ISBLANK ( result ), 0, result ), "Warning Percent", VAR result = LOOKUPVALUE ( StateChanges[WarningPercent], StateChanges[ServerName], [ServerName], StateChanges[DateTime], [DateTime] ) RETURN IF ( ISBLANK ( result ), 0, result ) )- Zubair_Muhammad8 years agoCommunity Champion
- PatrickSeidl8 years agoFrequent Visitor
This is amazing, thank you so much!