Contar según criterio en textbox en Access

Nuevamente quisiera su ayuda... Tengo un formulario en donde ejecuto una consulta y de este me trae datos en otros dos subformularios. Lo que necesito hacer en un subformulario es que me cuente en un texto independiente los registros que tengan la palabra Boleta y otro con Factura.

Eh tratado de usar el Dcont, pero no me resulta

=DCont("*";"[Consulta_DetalleCompras]";"[TipoDocumento]='Factura'") Da resultado cero

=DCont("*";"[Consulta_DetalleCompras]";"[TipoDocumento]='Boleta'") me suma

Y este es mi formulario;

1 Respuesta

Respuesta
2

La sintaxis de tus dos expresiones es la correcta, por lo que en principio esos resultados son los correctos.

El problema, en mi opinión, y por la imagen que pones, debe estar en otro sitio, como que la consulta donde buscas (Consulta_DetalleCompras) no es la misma que la que alimenta el subformulario, o le aplicas algún otro filtro, o simplemente en esa consulta, si la abres, no hay registros de "Factura"...

Pero algo raro pasa, porque si el "total items" que te suma en el subformulario es 26, que el total de "boletas" sea 59 es cuanto menos curioso...

Si quieres hacerme llegar una copia de tu BD, solo con las tablas y consultas necesarias para que ese formulario-subformulario funcione, no tengo inconveniente en echarle un vistazo para tratar de localizar (y solucionar) el problema.

Sveinbjorn El Rojo, muchas gracias por responder... estuve algo desconectado por fuerza mayor...

Te adjunto link de lo expuesto... https://1drv.ms/f/s!AtBUv5HdH1OLlG4_v3wCU36M30_n , espero puedas orientarme a lo que necesito

El problema está en que en la consulta "Consulta_DetalleCompras" no tienes el campo "TipoDocumento", por eso el DCont te da resultados extraños (en un caso te devuelve 0 y en otro el total de registros de la consulta).

Tienes varias soluciones:

1º/ Usar el DCont sobre la tabla, añadiendo un nuevo criterio, que el rut sea el del registro seleccionado. Esta es la opción que te envío: http://www.filebig.net/files/spcAtvMyDT Fíjate que también añadí al subformulario el campo Rut, oculto para que no se vea.

2º/ Crear una nueva consulta, con los mismos campos que tiene la SQL que usas como base del subformulario, y usar esa consulta en el DCont (también con el rut en el criterio)

3º/ Usar el cuadro combinado del formulario principal en el DCont en vez de añadir el campo al subformulario.

4º/ Hacerlo por código, en vez de en el origen de control de los cuadros de texto, aunque la idea es la misma, usar DCount() con los criterios del rut y del tipo de documento.

¡Gracias! Sveinbjorn El Rojo, es un genio... era justo lo que necesitaba, muchas gracias por su ayuda...

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas