James,
Look in the BOL for CREATE PROCEDURE.. there is an ENCRYPTION option available.
You probably will need to get permission from the DBA of the client before they may let you put encrypted SPs on their databases.
>I have an application run on SQLServer which is located at the customer site. A number of business rules are implemented in stored procedures. When the application is implemented, all stored procedures are uploaded to the customer's SQLServer. This effectively disclose all my source code to the customer. What are the practical ways that can prevent the customer from accessing the source code?