Ayudas con marcadas

21/01/2008 - 15:42 por Ruthenfords Tellez | Informe spam
Hola a todos quisiera si me podrian ayudar con lo siguiente:


tengo 1 tabla que se llama marcadas, donde capturo las entradas, salida al
medio dia,
entrada despues de medio y la salida de un funcionario

*********************************
ID Fecha Hora
1 01/21/2008 08:00 AM
2 01/21/2008 12:00 PM
3 01/21/2008 01:00 Pm
4 01/21/2008 05:00 PM
*********************************

Bueno el caso es que yo puedo capturar la hora de entrada y salida de esa
fecha con el (min y max),
el problema es que como haria para capturar las horas que estan de
intermedio, y que si un funcionario
no marcara que lo ponga en 0,

saludos y gracias.

Preguntas similare

Leer las respuestas

#1 Luis Mata
21/01/2008 - 15:53 | Informe spam
Usa el DATEDIFF();
Ve la ayuda de ese comando.

"Ruthenfords Tellez" escribió en el mensaje
news:%
Hola a todos quisiera si me podrian ayudar con lo siguiente:


tengo 1 tabla que se llama marcadas, donde capturo las entradas, salida
al medio dia,
entrada despues de medio y la salida de un funcionario

*********************************
ID Fecha Hora
1 01/21/2008 08:00 AM
2 01/21/2008 12:00 PM
3 01/21/2008 01:00 Pm
4 01/21/2008 05:00 PM
*********************************

Bueno el caso es que yo puedo capturar la hora de entrada y salida de esa
fecha con el (min y max),
el problema es que como haria para capturar las horas que estan de
intermedio, y que si un funcionario
no marcara que lo ponga en 0,

saludos y gracias.

Respuesta Responder a este mensaje
#2 Ruthenfords Tellez
21/01/2008 - 16:52 | Informe spam
Parece que no me explique bien,
ok tengo las cuatro entradas la entrada, salida a almuerzo, entrada de
almuerzo y salida, ok la primera y la ultima las puedo capturar, pero en el
caso de la segunda que es hora de almuerzo debo de poner un indicador que me
diga que despues de las 11:30 am a las 12:30 PM me captura la salida a
almuerzo y de las 12:30 PM a las 1:30 PM la hora de entrada al almuerzo...
tengo sql2000, si me envias un ejemplo te entenderia un poco mas sobre tu
idea... gracias por contestar.

saludos::





"Luis Mata" escribió en el mensaje
news:%
Usa el DATEDIFF();
Ve la ayuda de ese comando.

"Ruthenfords Tellez" escribió en el mensaje
news:%
Hola a todos quisiera si me podrian ayudar con lo siguiente:


tengo 1 tabla que se llama marcadas, donde capturo las entradas, salida
al medio dia,
entrada despues de medio y la salida de un funcionario

*********************************
ID Fecha Hora
1 01/21/2008 08:00 AM
2 01/21/2008 12:00 PM
3 01/21/2008 01:00 Pm
4 01/21/2008 05:00 PM
*********************************

Bueno el caso es que yo puedo capturar la hora de entrada y salida de esa
fecha con el (min y max),
el problema es que como haria para capturar las horas que estan de
intermedio, y que si un funcionario
no marcara que lo ponga en 0,

saludos y gracias.





Respuesta Responder a este mensaje
#3 Luis Mata
21/01/2008 - 17:16 | Informe spam
@vdni= numero o codigo del empleado

@ccosto = como aqui hay varias tiendas es el codigo de tienda.

@tiempo = es la cantidad de horas transcurridas entre el ingreso y salida de
refrigerio que devuelve el servidor(si quieres lo puedes hacer por minutos
que seria mas exacto)

ALTER proc [dbo].[confirma_salida_refrigerio] @vdni char(8), @ccosto
char(6), @tiempo int output

as

declare @finicio datetime

declare curinicio cursor for select horaing from detcontrol

where fecha = convert(char(10),getdate(),111) and dni=@vdni and ccosto =
@ccosto

open curinicio

fetch next from curinicio into @finicio

deallocate curinicio

set @tiempo = datediff(hh,@finicio,getdate())

print @tiempo

con esto yo controlo que el usuario no marque su salida de refrigerio antes
de lo debido, osea capturo las horas transcurridas desde que marco su
ingreso a laborar, aqui en pero el horario normal es ingreso(9:00 am),
salida refrigerio(1:00 pm), ingreso de refrigerio(2:00 pm) y salida de
labores (6:00 pm) de aqui para adelante ya es horas extras.

si trata de marcar en menos de una hora apartir de su ingreso entoces no hay
logica que se vaya a almorzar a las 10:00 am entonces el sistema lanza una
advertencia colocando como default el no. asi evito que se marquen en horas
no debidas o marcados accidentales.

esto lo puedes hacer tambien para obligar el usuario que tome los 45 minutos
obligatorios de refrigerio, verificar que el usuario esta marcando bien a l
a hora de salida o mas de la hora de salida, porque aqui no se pueden
retirar antes de la hora a menos que tenga una justificacion del adm y solo
el lo puede ingresar. acpturado con el DATDIFF() las diferencia de minutos,
horas o lo que desees y comparandolo con una tabla de horarios que crees en
tu bd.

espero te sirva

Luis Mata

Peru





"Ruthenfords Tellez" escribió en el mensaje
news:%23y7p$
Parece que no me explique bien,
ok tengo las cuatro entradas la entrada, salida a almuerzo, entrada de
almuerzo y salida, ok la primera y la ultima las puedo capturar, pero en
el caso de la segunda que es hora de almuerzo debo de poner un indicador
que me diga que despues de las 11:30 am a las 12:30 PM me captura la
salida a almuerzo y de las 12:30 PM a las 1:30 PM la hora de entrada al
almuerzo... tengo sql2000, si me envias un ejemplo te entenderia un poco
mas sobre tu idea... gracias por contestar.

saludos::





"Luis Mata" escribió en el mensaje
news:%
Usa el DATEDIFF();
Ve la ayuda de ese comando.

"Ruthenfords Tellez" escribió en el mensaje
news:%
Hola a todos quisiera si me podrian ayudar con lo siguiente:


tengo 1 tabla que se llama marcadas, donde capturo las entradas,
salida al medio dia,
entrada despues de medio y la salida de un funcionario

*********************************
ID Fecha Hora
1 01/21/2008 08:00 AM
2 01/21/2008 12:00 PM
3 01/21/2008 01:00 Pm
4 01/21/2008 05:00 PM
*********************************

Bueno el caso es que yo puedo capturar la hora de entrada y salida de
esa fecha con el (min y max),
el problema es que como haria para capturar las horas que estan de
intermedio, y que si un funcionario
no marcara que lo ponga en 0,

saludos y gracias.









email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida