# [summary  amount=n.nn
#           name=label*
#           hide=1*
#           total=1*
#           reset=1*
#           format="%.2f"*
#           currency=1* ]
#
# Calculates column totals (if used properly. 8-\)
# 
#
UserTag summary Order amount
UserTag summary PosNumber 1
UserTag summary addAttr
UserTag summary Routine <<EOF
use vars qw/%summary_hash/;
sub {
    my ($amount, $opt) = @_;
	my $name;
	unless ($name = $opt->{name} ) {
		$name = 'ONLY0000';
		%summary_hash = () if Vend::Util::is_yes($opt->{reset});
	}
	else {
		$summary_hash{$name} = 0 if Vend::Util::is_yes($opt->{reset});
	}
	$summary_hash{$name} += $amount if length $amount;
	$amount = $summary_hash{$name} if Vend::Util::is_yes($opt->{total});
	return '' if $opt->{hide};
	return sprintf($opt->{format}, $amount) if $opt->{format};
    return Vend::Util::currency($amount) if $opt->{currency};
    return $amount;
}
EOF

