السلام عليكم
ارجو مساعدتي في ايجاد دالة تعيد قيمة الغرامة المالية لمشترك تأخر بتسديد قروض
وقيمة الغرامة ( كل يوم تأخير بـ 6 ريالات ) ..؟
السلام عليكم
ارجو مساعدتي في ايجاد دالة تعيد قيمة الغرامة المالية لمشترك تأخر بتسديد قروض
وقيمة الغرامة ( كل يوم تأخير بـ 6 ريالات ) ..؟
Create function S_count(@requiredDate Date,@compareDate Date) returns int as begin Declare @result int if @requiredDate <>@compareDate Set @result=(select 6 * DATEDIFF(DAY,@requiredDate,@compareDate)) return @result end Go
الإستخدام :
Select id,name,dbo.S_count(wantedDate,'2011-6-22') from member
wantedDate تاريخ الإستحقاق
فلسطين .. سوريا ..بورما ......وماذا بعد ؟!
سابقا
medo_programming
موقعي : www.alkhayat-it.com
مواضيع مهمه
-----------------------------------------------:
بارك الله فيك اخي الكريم
وجزاك الله خير
عندي سؤال :(
النتيجة ظهرت بارقام كبيرة
ياترى مالسبب...؟؟؟
كما تلاحظ بالصورة المرفقة::
أخي يوجد تعديل بسيط في الدالة
create function S_count(@wantedDate Date,@compareDate Date,@paid bit)
returns int
as
begin
Declare @result int
if (@wantedDate<= @compareDate)and (@paid=0)
Begin
Set @result=(select 6 * DATEDIFF(DAY,@wantedDate,@compareDate))
IF (@result=0)
Begin
Set @result=6
End
ELSE
Set @result=@result
End
return @result
end
GoSelect id,name,dbo.S_count(wantedDate,'2011-6-25',paid) from member
يجب أن يكون wantedDate أقل من أو يساوي التاريخ الأخر يعني مثل :
dbo.S_count('2011-06-23','2011-6-25',paid)فلسطين .. سوريا ..بورما ......وماذا بعد ؟!
سابقا
medo_programming
موقعي : www.alkhayat-it.com
مواضيع مهمه
-----------------------------------------------:
جزاك الله خير
الله يرحم والديك ..!