As you know, Tableau will do calculations at three different levels:
1. Row Level
2. Aggregate Level
3. Table Calculation
If I'm interpreting what you want correctly, you are looking to get the absolute value at a row level and then aggregate it (and then do another calculation).
So, why not create two calculated fields? One at a row level:
//Call this calculation Absolute_Sales_Forecast
ABS([Sales - Fcst])
Then another calculation at an aggregate level:
You can add to that final calculation additional logic as necessary (to get the percentage):
SUM(Absolute_Sales_Forecast) / SUM(Sales)
Hope that helps!
I didn't include anything about table calculations above, and I don't think they are necessary in this case, but once you are comfortable with Row and Aggregate calculations, you might want to check out the knowledge base article on table calcs here: http://kb.tableausoftware.com/articles/knowledgebase/table-calculations