Just taking a stab at this. You could create a session variable first to capture the user login. Then create a union report and choose 'intersect' as the set operation. Both reports are same except for, in the first report for the 'Sales%' measure use the 'filter using dim' option and filter the 'Sales%' measure using the User dimension (value captured by session variable). This hopefully does it.
Sorry if it is a dumb idea.
If you had a snapshot of the rankings at regular intervals it would be a simple case of row-level filtering and not having to worry about a dynamic ranking. To boot, you'd get the ability to show snapshot-over-snapshot increase/decrease in the rankings ...