02/10/2008, 13:12
|
| | Fecha de Ingreso: octubre-2008
Mensajes: 8
Antigüedad: 16 años, 1 mes Puntos: 0 | |
Dias laborables discriminando feriados regionales en ACCESS 2003 Buenas tardes, tengo una base en access de la cual obtengo dias laborables restando feriados, el problema es que algunos feriados solo pertenecen a ciertas regiones y por lo tanto solo se deberían restar a las personas que pertenezcan a esas regiones (la tabla de feriados tiene un campo de ciudad y la de empleados tambien).
La funcion que utilizo es la siguiente ("Localidades" contiene la ciudad de los empleados y "localidad" pertence a "Feriados"):
Function WorkingDays( _
DateStart As Date, _
DateEnd As Date, _
Localidades As String) As Long
Dim SQL As String
Dim Holidays As Long
Dim WeekendDays As Long
Dim loopDate As Date
If DateStart < DateEnd Then
SQL = "SELECT Count(*) FROM Feriados " _
& " WHERE feriado Between #" _
& Format(DateStart, "mm/dd/yyyy") _
& "# AND #" & Format(DateEnd, "mm/dd/yyyy") _
& "# AND #" & localidad = Localidades & "#" (ESTA LINEA NO CORRE !!!!!!!!!!)
On Error Resume Next
Holidays = CurrentDb.OpenRecordset(SQL).Fields(0)
On Error GoTo 0
For loopDate = DateStart To DateEnd
If Weekday(loopDate) = vbSaturday Or _
Weekday(loopDate) = vbSunday Then
WeekendDays = WeekendDays + 1
End If
Next
WorkingDays = ((DateEnd - DateStart) + 1) - (Holidays + WeekendDays)
End If
End Function
Agradezco de antemano su ayuda |