This may be a little nit-picky but I recommend building the query in Query Analyzer outside the boundaries of a stored procedure and just using variables for the parameters. It's a lot easier to debug and do performance analysis and, since I am using parameters, the performance shouldn't vary when I create the procedure.
Otherwise, I think your process is excellent and I wish management-types could see the benefits of a little up-front legwork.
Bryant E. Byrd, MCDBA
Sr. SQL Server DBA/Systems Analyst
Intellithought, Inc.
[font="Tahoma"]Bryant E. Byrd, BSSE MCDBA MCAD[/font]
Business Intelligence Administrator
MSBI Administration Blog