Pregunta: | 1405 - FILTRAR O BUSCAR UNA FECHA EN VC++ 6.0 |
Autor: | Willser F. González C. |
Tengo un CDaoRecordset que comunica con una tabla de Acces(r), la cual tiene un campo tipo Fecha. Cómo se puede hacer una búsqueda o un filtro de los registros de la tabla que coincidan con una fecha dada ???. Por ejemplo: CDaoRecorset cdrsClntes; // Tabla Clientes. COleDateTime codtFcha = COleDateTime::GetCurrentTime(); // Fecha a buscar. 1. Filtrar los registros donde el campo [Fecha] coincida con la fecha [codtFcha]. Podría ser: cdrsClntes.m_strFilter.Format("[Fecha] = ´%s´", codtFcha.Format()); cdrsClntes.Requery(); Hasta ahí todo parece estar bien, pero en tiempo de ejecución un mensaje dice que la consulta no es válida. Cómo se debe comparar ???. Gracias por su colaboración. |
Respuesta: | Oscar García Herrera |
Para filtrar fechas en una consulta con CDaoRecordset´s existen varias formas: 1. CClienteSet *pSet; pSet = new (CClienteSet); pSet->m_strFilter = "FechaIngreso >= #01/01/2000# AND FechaIngreso <= #30/03/2000#"; pSet->m_strSort = "FechaIngreso" try pSet->Open(); catch{.....} 2. CClienteSet *pSet; CString strQuery; pSet = new(CClienteSet); strQuery.Format("SELECT * FROM CLIENTES WHERE FECHAINGRESO between 01/02/2000 AND 30/03/2000 ORDER BY fechaIngreso ASC"); pSet->Open(dbDynaset,strQuery); Estas son solo dos formas de filtrar fechas, espero te funcione. Atte: Ing. Oscar García Herrera |