If I understand you right, the problem is with sorting field values and strings simultaneously.
You could try to adopt this trick for dimension:
dual(text(ActivitiesDesc), fieldIndex('ActivitiesDesc', ActivitiesDesc)),
dual('Perf vs Plan', 0),
dual('% of NetSales', 100000))
Then just use sort by numeric value.