Subject: Stored Procedure
Posted By: jezywrap Post Date: 12/22/2006 3:00:49 PM
Can someone check to see if I creating this stored procedure correctly.
What I'm doing is passing customer zip to the procedure then looking up to see who is the sales rep in that area. I want to be able to return the reps name, address, city, state, phone and email

--  Drop Procedure if already exists
    IF OBJECT_ID('fn_salesrep_lookup_custzip') IS NOT NULL
      DROP PROC fn_salesrep_lookup_custzip
    GO

--  Create Procedure using temp variables as input variables

    CREATE Procedure fn_salesrep_lookup_custzip
    (
        @CustomerZip Varchar(6)
       
    )
    AS


    BEGIN
        DECLARE
           @Name    nvarchar(50)
          ,@Address nvarchar(50)  
          ,@City    nvarchar(50)  
          ,@State   nvarchar(50)   
          ,@Zip     nvarchar(50)
          ,@Phone   nvarchar(50)  
          ,@email   nvarchar(50);
    
  -- Get contact information
        SELECT
           @Name    =LTRIM(RTRIM(T1.[SM-NAME]))
          ,@Address =LTRIM(RTRIM(T1.[SM-ADDRESS1]))+
                         CASE
                             WHEN ISNULL(T1.[SM-ADDRESS2],'')='' THEN ''
                             ELSE ', '+LTRIM(RTRIM(T1.[SM-ADDRESS2]))
                         END
          ,@City    =LTRIM(RTRIM(T1.[SM-CITY]))   
          ,@State   =LTRIM(RTRIM(T1.[SM-STATE]))   
          ,@Zip     =CASE
                        WHEN LEN(LTRIM(RTRIM(T1.[SM-ZIP])))=6 AND LEFT(LTRIM(T1.[SM-ZIP]),1)='0' THEN RIGHT(RTRIM(T1.[SM-ZIP]),5)
                        ELSE LTRIM(RTRIM(T1.[SM-ZIP]))
                     END
          ,@Phone   =LTRIM(RTRIM(T1.[SM-PHONE]))
          ,@email   ='email not yet available'
        FROM dbo.SalesRep T1
           INNER JOIN dbo.SalesRepCustomerZip T2 ON T1.[SM-NBR]=T2.[SM-NBR]
        WHERE  
             CASE
                WHEN LEN(LTRIM(RTRIM(T2.ZIP)))=6 AND LEN(LTRIM(RTRIM(@CustomerZip)))=6 THEN LTRIM(RTRIM(T2.ZIP))
                WHEN LEN(LTRIM(RTRIM(T2.ZIP)))=6 AND LEFT(LTRIM(T2.ZIP),1)='0' THEN RIGHT(RTRIM(T2.ZIP),5)
                ELSE LTRIM(RTRIM(T2.ZIP))
             END
             =@CustomerZip;
        
        -- Return the information to the user
     IF @CustomerZip IS NOT NULL AND @Name IS NOT NULL
        
           
           SELECT @Name, @Address, @City, @State, @Zip, @Phone, @email
       
       
    End
    GO



Reply By: prabodh_mishra Reply Date: 1/2/2007 11:29:07 PM
Can you explain the problem you are confronting rather than putting us on analysis job?

Cheers,
Prabodh

Go to topic 52538

Return to index page 76
Return to index page 75
Return to index page 74
Return to index page 73
Return to index page 72
Return to index page 71
Return to index page 70
Return to index page 69
Return to index page 68
Return to index page 67