VFP indexar campos de fecha

Hola, tengo un dolor de cabeza relativo a la búsqueda en VFP.
El hecho es que busco en tres tablas:
Maestro de clientes (en la que navego usando controles) o ejecuta una búsqueda mediante un cuadro de texto y un botón de comando. Una vez ubicado uso el campo de código (mae_clie. Código) para buscar su estado de cuentas.
Maestro de Ctas.- Contiene sus saldos (saldo de deuda, y aportes) sobre la base de uns sistema cooperativo
det_cuotas.- Contiene los registros de la deuda total (si existe) programada en "n" cuotas a cancelar los fines de mes.
El hecho es que cuando busco en la tabla de cuotas NO UBICA LA CUOTA CORRESPONDIENTE AL MES EN CURSO!
Select det_cuotas
go top
LOCATE FOR det_cuotas.codigo = mae_clie.codigo AND month(det_cuotas.fechacuota)=month(date()) AND YEAR(det_cuotas.fechacuota)=YEAR(DATE())
please help,
Respuesta
1
Partiendo del hecho que tu campo det_cuotas. Código tiene el mismo formato de campo y el mismo largo, no veo nada fuera de lugar en el código que nos muestras.
Select det_cuotas
go top
LOCATE FOR codigo = mae_clie.codigo AND month(fechacuota)=month(date()) AND YEAR(fechacuota)=YEAR(DATE())
Obviamente debe existir algún ciclo adicional para examinar aquéllos registros que coinciden con tu criterio (cuotas adicionales del cliente) y mostrarlas en algún Grid o Cuadrícula.
Es probable que tengas algún otro comentario que pueda ayudarnos a esclarecer el problema.
Avísame.
Agradezco tan gentil atención, en primera instancia, voy a hacer unas pruebas entre formatos de fecha y un dtoc(). Hay algo en lo que quisiera me ayudaras; en un formulario tengo un textbox que contiene la propiedad value =date(), y el año se muestra a 2 dígitos, qué se podría hacer para que se muestre 4 dígitos (que es la forma como se registra en los campos de fecha en las tablas. Si sabes de alguna forma, me ahorraría líneas de programación. De otro lado, voy a "correr" un prg que llene un campo que contenga el criterio de búsqueda como un string, luego indexar las cuotas por este campo, y hacer el SEEK componiendo el criterio en una variable cada vez que se muevan puntero de clientes y cuentas.
Un abrazo.
Usa "set century on" en tu archivo inicial del proyecto. Eso tendrá un efecto global dentro del sistema y mostrará el año con 4 dígitos.
Otra forma de mostrar el detalles de la cuotas del cliente puede ser con sql
select a.codigo,a.cliente,b.fechacuota,b.cuota;
from mae_clie a,det_cuotas b;
where a.codigo=b.codigo  AND month(b.fechacuota)=month(date()) AND YEAR(b.fechacuota)=YEAR(DATE());
order by b.fechacuota;
into cursor MyCuotas
select MyCuotas
Browse
Nuevamente te agradezco tu profesionalidad y excelente atención. Espero podamos volver a contactarnos, ya sea por este medio o a mi email [email protected]
Un amigo,
Martín Minaya

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas