stored procedure : come passare un parametro x ordinare risultato stored procedure?

ciao

vorrei passare un parametro ad una stored procedure, in modo da ordinare il risultato della stored procedure per un campo rappresentato dal parametro che passo

mi spiego con il codice :

codice:
la mia stored procedure :

CREATE PROCEDURE elenco_codici
/* in input arriva la figura, restituisce tutti i codici associati alla figura.
*/
@figura varchar(50) , @ordinamento(50) 
 
 AS
 SELECT  
  b.codice_prodotto,  
  b.prezzo_riv,
  b.descrizione_breve,
     
 FROM
  articoli b
 WHERE     
  b.fig = @figura
  and
  b.on_line='yes'
  
  order by codice_prodotto
return

GO
vorrei passare un parametro a questa stored procedure, da usare dove c'e' scritto ORDER BY, quindi al posto di codice_prodotto vorrei mettere un campo che passo

vorrei ordinare per il valore indicato nella variabile @ordinamento (vedi inizio codice)

come posso fare ???

infatti mi da' errore se faccio : order by @ordinamento

grazie