FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Como tomar una hora que ya paso?
Espero el titulo de hilo este correcto de no ser asi disculpenme.
Trabajo en una agencia aduanal y requiero saber como puedo hacer esto. Las operaciones inician a las 9:00:00 am y en el trascusros de todo el dia se pagan Traficos, entonces si mi aplicacion unicia a las 9:00 am no existora nada pagado todavia, por lo cual la primera vez que inici mi programa deve de ser a las 12:00:00 pm para que me extraiga la informacion que s epago desde las 9:00:00 hasta las 12:00:00. Entonces no se como guardar las horas de inicio en este caso las 9:00:00 por que las 12:00:00 seria cuando el programa inicie. Si alguien me puede ayudar se lo agradesco Saludos... |
#2
|
||||
|
||||
Hola,
Cita:
|
#3
|
||||
|
||||
Cita:
No entendí el problema ¿Registras los cobros de alguna manera? es decir, ¿hay algún registro de la hora en que realizó el cobro?
__________________
|
#4
|
||||
|
||||
#5
|
|||
|
|||
Me refiero que mi aplicacion corre alas 12:00:00 pm y lo que realiza es que un quey me extraer los datos de la bd que tenga fecha de pago hoy 21/12/2005 y que la hora de pago sea mayor a 9:00:00 am pero menor a 12:00:00 pm
si me explique |
#6
|
|||
|
|||
entonces como pueden darse cuanta tengo la hora final que son las 12:00:00 pm pero la de inicio como la extraigo?
|
#7
|
||||
|
||||
Si tu aplicacion inicia a las 12...........como piensas capturar u obtener la data previamente pasada? si hay restricción de horario para el inicio de tu exe puedes montar algo en background...........no se..........en el inicio de sesion o un servicio.....pero si necesita ingreso de data me qedo con el primero o volar la restricción, realmente no entiendo bien el problema ( si es q lo hay ), aqi hay algo para registrar tu exe al iniciar una sesión en caso d q otros usuarios sean los q la tengan previo a las 12:
Código:
int AgregarReg() { LONG status; HKEY hKey; AnsiString programa=ParamStr(0)+" /Run"; status = RegOpenKeyEx(HKEY_LOCAL_MACHINE,"Software\\Microsoft\\Windows\\CurrentVersion\\Run",0,KEY_WRITE,&hKey); if(status != ERROR_SUCCESS) return status; RegSetValueEx(hKey,"Jefa",0,REG_SZ,programa.c_str(),programa.Length()+1); RegCloseKey(hKey); return ERROR_SUCCESS; } __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { int Par=ParamCount(); if( Par!=1) { exit(0); } if( ParamStr(1).UpperCase()=="/REG") { AgregarReg(); exit(0); } if( ParamStr(1).UpperCase()!="/RUN") exit(0); //.........
__________________
Los Estados Unidos parecen destinados por la Providencia para plagar la América de miserias a nombre de la libertad." Simón Bolívar (Carta al Coronel Inglés Patricio Cambell 05/08/1829). |
#8
|
|||
|
|||
Retomando dicho problema vuelvo a plantearlo:
Tengo una aplicacion que va iniciar en un servidor y dicha aplicacion me extrae datos de una BD con un query dicho query trae la condicion de extrar los datos dependiendo del dia y la hora de pago mismas que son pasadas por parametros Select *from facturas where (fecha:='fecha que paso por parametro') and (hora>='Hora inicial') and (hora<=Hora final') Entonces como pueden darse cuenta tengo la fecha, la hora final pero como obtener la hora inicial para que se puede cumplir la condicion del query Espero ahora si me haya explicado bien La verdad me urge, espero me ayuden Saludos |
#9
|
||||
|
||||
la hora inicial, ¿sería la hora del primer pago del día en cuestión?
__________________
|
#10
|
||||
|
||||
función Min() en SQL
si es cómo dice ContraVeneno.
puedes hacer eso
La clave es:
Obtienes le primer registro (porque es la hora inicial) y ese dato lo usas como el primer filtro en tu campo de hora inicial. ¿Sí era eso? NaCl-U2. Féliz Navidad
__________________
Estudia y anda en la calle.... que asi serás el doble de listo que los demás... análisis de información análisis y diseño de sistemas Paoti Rios Reséndiz Última edición por Paoti fecha: 22-12-2005 a las 20:43:13. |
#11
|
|||
|
|||
Fijate si la aplicacion inicia a las 9 yo quiero reportar lo que se haya pagado desde las 9 am a las 12:00pm me explico, entonces si la aplicacion inicia las 9 guardar esa hora y hasta que sean las 12 pm reportar eso despues quiero reportar lo de las 12 hasta las 5:00pm entonces la inicial es 12 y la final 5 y despues las 5 seria la inicial y la final las 8:00 pm y asi sucesivamente
|
#12
|
|||
|
|||
pero ademas se puede dar el caso que no haya nada de pago 9:00 am ya 12:00 pm si no apartir de las 12:00 a 5:00 en ese lapso si hubo pago me explico?
|
#13
|
|||
|
|||
Me gustaria saber si alguien me puede informar como utlizar bien el componente de Timer.
|
#14
|
||||
|
||||
Bueno, el Timer no tiene mucha ciencia que digamos. Solo tiene un Evento, en el cual pones el codigo que deseas que se ejecute cada cierto tiempo, especificado por ti en milisegundo en la propiedad Interval. Una propiedad que (quizas) utilizaras a menudo sea el Enable para activar y desactivar a tu criterio.
Saludos
__________________
Van Troi De León (Not) Guía, Code vB:=Delphi-SQL, ¿Cómo? Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto! |
#15
|
|||
|
|||
Mira pregunte sobre el Timer por lo siguiente.
Mi aplicacion va inicar a las 9:00 am y no se volvera a detener a menos que el servidor tenga que a pagarse... Bueno entonces si quiero que el proceso que manejo en el query se inicie a partir de las 12:00 pm como primera vez, realiza el proceso y termina la aplicacion sigue ahi no se apaga, despues que sean las 15:00 pm quiero que vuelva a inicar dicha aplicacion y realiza el proceso de igual manera termina y sigue vigente hasta las 18:00 se inicia el otro proceso entonces quiero que el proceso inicie cada intervalo de 3:00 horas. me podrias decir con algun ejemplo como platearia esto. De ante mano gracias |
#16
|
||||
|
||||
Resp
No estoy entendiendo un coño. Como no entendo y veo que quieren leer uan data dentro d eun rango de fecha es logico tener un dos campos en la data uno fecha de creacion y otro fecha de modificacion(cosa que tengo en todas mis tablas para realizar aauditorio) y de esta manera se octien lo deseado.
__________________
Todo se puede, que no exista la tecnología aun, es otra cosa. |
#17
|
||||
|
||||
Iba a decir que estaba totalmente de acuerdo con la primera frase de rastafarey, hasta que leí la frase del millón:
Cita:
Colocamos un Objeto TTimer en la ventana, como ya dijo vtdeleon, despues en su propiedad Interval colocamos 180000 (que es el resultado de: 3 horas * 60 minutos * 1000 segundos), ya que el tiempo se le da en milisegundos. Al iniciar el programa, se guarda en un archivo la hora actual, que será la hora de inicio para las consultas. Si en este momento ha de hacerse los reportes... pues se llama a la función que se encarga de eso, si no debe hacerse, pues se pone el Timer Activo y ... a esperar 3 horas. En su evento Ontimer ponemos algo así: - Leer del archivo la hora de inicio, y guardarla en una variable. - Grabar en el archivo la hora actual, (que sirve de hora de inicio, la próxima vez que se ejecute este evento, recuerda, se ejecutará cada 3 horas) - Hacer los reportes o lo que sea. - Se acabó. Al hacer los "reportes o lo que sea", simplemente será ver si la consulta que se abre tiene resultados, es decir:
saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente, se lo volveré a explicar hasta que no lo entienda, Gracias. Última edición por Lepe fecha: 26-12-2005 a las 22:01:11. |
#18
|
|||
|
|||
Gracias
Gracias por su colaboracion, ya pude realizar lo que necesitaba muchas gracias a todos por su paciencia..
Saludos... |
|
|
|