almost. you're not concatenating your string correctly in your first example.
you want something like this for the varname field of the qglobal:
	Code:
	#interpolation
my $aName = $client->AccountName();
my $qGlobal = "SpellReset$aName";
 or
	Code:
	# concatenation
my $qGlobal = "SpellReset" . $client->AccountName();
 you don't have to save the varname first. you could do it all in a single line like this:
	Code:
	quest::setglobal('SpellReset'.$client->AccountName(), 0, 5, 'F');
 it's a style choice, really... but you likely want to save it if you intend to use it more than once for the same client in the script.