Join us at FabCon Atlanta from March 16 - 20, 2026, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.
Register now!To celebrate FabCon Vienna, we are offering 50% off select exams. Ends October 3rd. Request your discount now.
Hello,
I have an error with a measure that I dont know how to correct. It works on one page but not on another in the same PBIX file. Below is the DAX and attached in the error. It just stopped working. I have the same measures on all my reports and it works fine. Any help will be appreciated.
DAX:
Solved! Go to Solution.
Hi @HELLOVARAS4 ,
This is because username() will return a user in the format of DOMAIN\User and userprincipalname() will return a user in the format of user@contoso.com inPower BI Desktop.
Note: Within the Power BI service, username() and userprincipalname() will both return the user's User Principal Name (UPN). This looks similar to an email address.
To solve this problem, you can use the IFERROR function to handle the error condition.
For example, if the SEARCH function can't find the target character, it will return 10 instead of an error. You can replace 10 with a different default value or processing logic as needed.
_Username =
VAR _Name = USERNAME()
VAR _Name2 = LEFT( _Name , IFERROR(SEARCH("@", _Name ),10)-1)
RETURN
CONCATENATE( "Welcome " , LEFT( _Name , IFERROR(SEARCH(".", _Name2 ),10)-1) & "!"
)
Best regards,
Mengmeng Li
@HELLOVARAS4 Or you could also try this DAX measure:
@HELLOVARAS4 Try this DAX:
Hi @HELLOVARAS4 ,
This is because username() will return a user in the format of DOMAIN\User and userprincipalname() will return a user in the format of user@contoso.com inPower BI Desktop.
Note: Within the Power BI service, username() and userprincipalname() will both return the user's User Principal Name (UPN). This looks similar to an email address.
To solve this problem, you can use the IFERROR function to handle the error condition.
For example, if the SEARCH function can't find the target character, it will return 10 instead of an error. You can replace 10 with a different default value or processing logic as needed.
_Username =
VAR _Name = USERNAME()
VAR _Name2 = LEFT( _Name , IFERROR(SEARCH("@", _Name ),10)-1)
RETURN
CONCATENATE( "Welcome " , LEFT( _Name , IFERROR(SEARCH(".", _Name2 ),10)-1) & "!"
)
Best regards,
Mengmeng Li
Hi @HELLOVARAS4 ,
Seems the issue is stemming from your missing "." character. Let's try to debug it and see which part of your search is causing your error and then we can fix it. What does this return you?
_Username =
VAR _Name = USERNAME()
VAR _Name2 = LEFT( _Name , SEARCH("@", _Name )-1)
RETURN
_Name2