Ok, apparently I've been unintentionally obtuse...
The problem isn't (directly) with %setup. I know how to do that.
The problem is when you have a (-n type) subpackage that is of a different
version from the main source.
Maximum RPM tells you properly that you can include a Version: tag from
inside your %package. The problem is then %setup grabs the version tag from
the subpackage and not the main one.
The solution is to define your own version macro, in this case %tsqlver,
and use it for both the main Version: tag and in setup: %setup -q -n
%{name}-%{tqslver}.
This is what Maximum RPM fails to explain, it doesn't show a %setup line in
it's example of a subpackage that's a different version from the main
package.
Thanks,
Richard