|
|
|||||||||
|
|||||||||
|
|||||||||
| |
||
| |||||||||
![]() |
|
|
«
Previous Thread
|
Next Thread
»
|
Thread Tools | Search this Thread | Rate Thread | Display Modes |
|
#1
|
|||
|
|||
|
Calculating fine due
Hi, i need to calculate the fine due for a book system. I have a date that the book needs to be back and a date of when the book was actually returned, and then a fine field. if the book is over 7 days late, it is £0.30, if the book is over 14 days it is another £0.30, if it is over 21 days, fine is an additional £0.40, if the book is over 28 days, fine is additional £0.50, if the book is over 56 days late, an additional £1.50 is charged.
i have tried using iif statements, however, due to the fact that it has other criteria, i cannot get it to work. any help would be appreciated. thanks,awg |
|
#2
|
||||
|
||||
|
You can calculate the days late by creating the following query. Then once you get the number of days late you can do a select case statement to determine the fine amount.
Code:
Query to calcuate the days late
SELECT Table1.DueDate,
Table1.ReturnDate,
DateDiff("d",[DueDate],[ReturnDate]) AS DaysLate
FROM Table1;
Code:
Code to calcuate the fine.
After executing the query above and returning it into a recordset.
do until rs.eof
Select Case rs("DaysLate")
Case 7 To 13
FineAmount = £0.30
Case 14 To 20
FineAmount = £0.30
Case 21 To 27
FineAmount = £0.40
Case 28 To 55
FineAmount = £0.50
Case > 55
FineAmount = £1.50
End Select
Do your code here
rs.movenext
loop
|
![]() |
| Viewing: ASP Free Forums > Database > SQL Development > Calculating fine due |
| Thread Tools | Search this Thread |
| Display Modes | Rate This Thread |
|
|
|
|