PDA

View Full Version : تابعي که درودي آن تاريخ شمسي و خروجي آن تاريخ ميلادي



Sama_gh_San
چهارشنبه 14 مهر 1389, 10:42 صبح
سلام دوستان:

من يک تابع مي خوام که ورودي آن تاريخ است و اين تاريخ به صورت شمسي مي باشد و خروجي که اين تابع مي ده بايد تاريخ را به صورت ميلادي برگرداند.

کسي هست در اين زمينه منو کمک کنه ممنون مي شم.

hossein_h62
چهارشنبه 14 مهر 1389, 16:58 عصر
سلام دوست عزیز
اینو ببین :



CREATE FUNCTION DateLatin(@DateFarsi CHAR(10))
RETURNS DateTime AS
BEGIN
SET @DateFarsi = REPLACE(@DateFarsi, '/', '')

DECLARE @Days BigInt

DECLARE @Year_Farsi int
DECLARE @Month_Farsi int
DECLARE @Day_Farsi int

SET @Year_Farsi = CONVERT(int, SUBSTRING(@DateFarsi, 1, 4))
SET @Month_Farsi = CONVERT(int, SUBSTRING(@DateFarsi, 5, 2))
SET @Day_Farsi = CONVERT(int, SUBSTRING(@DateFarsi, 7, 2))

SET @Days = ((@Year_Farsi - 1279) * 365) + ((@Year_Farsi - 1276) / 4)

IF @Month_Farsi <= 7
SET @Days = @Days + ((@Month_Farsi - 1) * 31)
ELSE
SET @Days = @Days + ((@Month_Farsi - 7) * 30) + 186

RETURN DATEADD(DAY, @Days + @Day_Farsi - 1, '19000320')
END

Sama_gh_San
پنج شنبه 15 مهر 1389, 08:30 صبح
ممنون از راهنماي. مشکلم حل کردي