Consulta en SQL para ASP

Esta sobre una consulta.
Id, turno, thedate, inputbox1, inputbox2, inputbox3, inputbox4, inputbox5.
Son los atributos de mi tabla SQL.
"thedate, char(10)" es el campo que representa a la fecha.
function getthedate()
{
todays = new Date();
thedate = ""+todays.getDate()+"/"+(todays.getMonth()+1)+"/"+todays.getYear()
document.myform.thedate.value = thedate;
}
Esta es la función que permite poder tener la fecha diaria y aparece dentro del campo "thedate".
El envío de datos se hace en forma optima.
¿Cuál es mi duda?.
AL momento de visualizar la información se pueden ver los últimos 25 registros ingresados por usuario mi sentencia para la visualización es la siguiente:
SQL1= "SELECT TOP 25 * FROM certijobsbcp where turno='1' order by Id DESC;"
Certijobsbcp es la tabla, aquí es donde aparece los registros.
Lo que yo quiero es que la visualización sea de los registros ingresados en el día en curso osea cada 24 horas hay un refreseh.
Osea si hoy día es 16/10/2002 en mi consulta aparecerán los datos de hoy día. Y mañana la visualización mostrara los registros del día 17/10/2002.
LO que no se es como hacer la consulta.

1 Respuesta

Respuesta
1
Creo que no están dificill
La condición debería ser...
SQL1= "SELECT TOP 25 * FROM certijobsbcp where turno='1' and thedate=datevalue(date()) order by Id DESC;"
Y te mostrara los primeros 25 del día.
Gracias por tu tiempo y por responderme. Aunque aplique lo que me dijiste aun no sale no aparecen buenos resultados me manda el siguiente mensaje:
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC SQL Server Driver][SQL Server]'date' is not a recognized function name.
Parece que no reconoce a la función la he llamado de otras formas pero nada.
Esa función era de VB / SQL entonces prueba con
SQL1= "SELECT TOP 25 * FROM certijobsbcp where turno='1' and thedate=Getdate() order by Id DESC;"
Sale "vacio" no aparece nada, quizás mi función sea errónea quizás algo este mal, por lo que estuve averiguando el sql toma los datos a la inversa en formato año/mes/dia quizás ese sea mi error.
Y en mi tabla SQL este campo de Fecha no lo puedo almacenar como date sino como Char.
MI función es como te la mostré anteriormente:
function getthedate()
{
todays = new Date();
thedate = ""+todays.getDate()+"/"+(todays.getMonth()+1)+"/"+todays.getYear()
document.myform.thedate.value = thedate;
}
Esta función es en JavaScript y la fuente de ASP es VBscript que es otra lógica quizás ese sea el problema la verdad no se como atacarlo.. a ver que opinas
Todo esta bien... ten en cuenta que un campo de fecha debe ir encerrada con los signops #... ejemplo
Si quieres representar el 19 de octubre del 2002 debes usar #19/10/02# ... prueba así y me comentas...
Ya encontré la solución, tuve que crear otro campo en mi tabla (flag).
Que en forma automática almacenaba un cero. Diseñe un procedimiento que le hacia un Update a la tabla. Este campo luego de 24 horas de cero cambiaba a uno.
Entonces mi consulta cambio a :
SQL1 = SELECT * FROM CERTIJOBS WHERE turno='1' AND flag (el nuevo campo)=0 order by DESC.
De esta manera puedo ver lo registros del día porque lo registros de días anteriores quedan grabados a uno.
Ahora tuve que cambiar el tipo de variable del campo thedate(la fecha) yo lo almacenaba como Char, pero en la prueba que hice en una tabla nueva lo grabe como Small date time.
MI duda ahora es la siguiente:
Mi función cambio a:
function getthedate()
{
todays = new Date();
thedate = ""+todays.getYear()+"/"+(todays.getMonth()+1)+"/"+todays.Date()
document.myform.thedate.value = thedate;
Entonces el dia de hoy se ve de la siguiente forma:
2002/10/21.
Y yo quiero que se vea como lo asi antes:
21/10/2002.
No se si es que existe alguna forma de parametrizar todo bajo el formato d/m/aaaa.
Atentamente.
John

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas