من یمخواهم stored procedure زیر را توسط ویژوال و از طریق کد نویسی در sql server2000 ایجاد کنم لطفا راهنمایی کنید
USE tb133
IF EXISTS (SELECT name FROM sysobjects
WHERE name = 'getshamsiinfo' AND type = 'P')
DROP PROCEDURE getshamsiinfo
GO
CREATE Proc GetShamsiInfo
as
Declare
@Year Integer,
@Month Integer,
@Day Integer,
@F_Year Varchar(5),
@F_Month Varchar(5),
@F_Day Varchar(5),
@F_Day_Name Varchar(10),
@F_Month_Name Varchar(10),
@LastDay Integer,
@Plus Integer,
@Minus Integer,
@Intercalary Integer,
@S_Year Varchar(5),
@S_Month Varchar(5),
@S_Day Varchar(5),
@E_Date Varchar(20),
@Ret Varchar(20),

@s_tar as nvarchar(20),
@s_time as nvarchar(20),
@h as varchar(5),
@m as varchar(5)

Set @Plus = 0

Set @Year = Year(Getdate())
Set @Month = Month(Getdate())
Set @Day = Day(Getdate())



----- بدست آوردن تاريخ ميلادي
Set @S_Year = Cast(@Year AS VarChar(5))
Set @S_Month = Cast(@Month AS VarChar(5))
Set @S_Day = Cast(@Day AS VarChar(5))

IF Len(@S_Month) < 2
Set @S_Month = '0'+@S_Month

IF Len(@S_Day) < 2
Set @S_Day = '0'+@S_Day

Set @E_Date = @S_Year + @S_Month + @S_Day
----- بدست آوردن تاريخ ميلادي

----- بدست آوردن نام روز به فارسي
Set @F_Day_Name = Case DATEPART(dw, Getdate())
When 1 Then 'يکشنبه'
When 2 Then 'دوشنبه'
When 3 Then 'سه شنبه'
When 4 Then 'چهارشنبه'
When 5 Then 'پنجشنبه'
When 6 Then 'جمعه'
When 7 Then 'شنبه'
End
----- بدست آوردن نام روز به فارسي

IF ((@Month = 1) or (@Month = 5) or (@Month = 6))
Set @Plus = 10

IF ((@Month = 2) or (@Month = 4))
Set @Plus = 11

IF ((@Month = 3) or (@Month = 7) or (@Month = 8) or
(@Month = 9) or (@Month = 11) or (@Month = 12))
Set @Plus = 9

IF (@Month = 10)
Set @Plus = 8

Set @Year = @Year % 100

Set @Intercalary = @Year

IF (@Intercalary % 4 = 0)
IF (@Month > 2)
Set @Plus = @Plus + 1

IF ((@Intercalary - 1) % 4 = 0)
begin
Set @LastDay = 30
IF (@Month <= 3)
Set @Plus = @Plus + 1
end
Else
Set @LastDay = 29

Set @F_Year = @Year - 22

IF (@F_Year < 0)
Set @F_Year = @F_Year + 100

Set @F_Month = @Month + 9

IF (@F_Month > 12)
begin
Set @F_Month = @F_Month - 12
Set @F_Year = @F_Year + 1
end

Set @F_Day = @Day + @Plus

IF (@F_Month <= 6)
Set @Minus = 31
Else
IF ((@F_Month > 6) and (@F_Month<12))
Set @Minus = 30
Else
Set @Minus = @LastDay

IF (@F_Day > @Minus)
begin
Set @F_Day = @F_Day - @Minus;
Set @F_Month = @F_Month + 1
end

IF (@F_Month > 12)
begin
Set @F_Month = @F_Month - 12;
Set @F_Year = @F_Year + 1
end;

IF @F_Year >= 10
Set @Ret = Cast(@F_Year As Varchar(4))
Else
Set @Ret = '0'+ Cast(@F_Year As Varchar(4))


IF @F_Month >= 10
Set @Ret = @Ret + Cast(@F_Month As Varchar(4))
Else
Set @Ret = @Ret +'0'+ Cast(@F_Month As Varchar(4))

----- بدست آوردن نام ماه به فارسي
Set @F_Month_Name = Case @F_Month
When 1 Then 'فروردين'
When 2 Then 'ارديبهشت'
When 3 Then 'خرداد'
When 4 Then 'تير'
When 5 Then 'مرداد'
When 6 Then 'شهريور'
When 7 Then 'مهر'
When 8 Then 'آبان'
When 9 Then 'آذر'
When 10 Then 'دي'
When 11 Then 'بهمن'
When 12 Then 'اسفند'
End
----- بدست آوردن نام ماه به فارسي

IF @F_Day >= 10
Set @Ret = @Ret + Cast(@F_Day As Varchar(4))
Else
Set @Ret = @Ret + '0'+ Cast(@F_Day As Varchar(4))

set @h=DATEPART(hour, GETDATE())
set @m=DATEPART(minute, GETDATE())
set @s_tar =@f_year + '/' + @f_month + '/' + @f_day
set @s_time=@h + ':' + @m
Select @E_Date as MiladiDate,
@Ret As FarsiDate,
@F_Month_Name AS FarsiMonthName,
@F_Day_Name AS FarsiDayName,
DATEPART(hour, GETDATE()) AS hourNumber,
DATEPART(minute, GETDATE()) AS minuteNumber,
DATEPART(second, GETDATE()) AS secondNumber,
@s_tar as tarrrr,
@s_time as s_time
GO