Access - Totales en informes

   
Vista:

Totales en informes

Publicado por Antonio Monzon (4 intervenciones) el 18/02/2016 19:43:07
Estoy haciendo un db y no puedo incluir en un informe datos de consultas, como por ejemplo el numero de registros que contiene la consulta o los totales de algunas columnas de las consultas
¿Alguien sabe como se hace?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Totales en informes

Publicado por Enrique Heliodoro (1663 intervenciones) el 18/02/2016 20:18:32
Supongo que mas de uno y de dos ....

Depende de varios factores, pero uno muy sencillo es poner en la sección detalle (que presumo que es lo que deseas contar) un cuadro de texto independiente, como origen de datos: la unidad, en sus propiedades se le activa la 'suma continua' y en el ultimo registro (en ese cuadro de texto) aparecerá el numero de veces que se repitió la sección (tantas como registros existan).

Para no distorsionar la estética, se le oculta y (en el pie del informe) se hace una referencia a el.
Un supuesto, si a ese cuadro de texto se le denomina 'contador', en el pie del informe se crea otro cuadro de texto y como origen de datos:
=[contador]

Que reflejaría el valor del contador en el ultimo registro.

Para totalizar, el mismo método, solo que esta vez como origen de datos el valor a sumar (un duplicado del actual seria suficiente), se le activa la suma continua y ... por estética se el puede ocultar.

Al igual que antes, en el pie del informe (que suele ser donde se presentan los resúmenes), un nuevo cuadro de texto y si a ese cuadro de texto se le denomino 'LaSuma', el origen de datos der ... = [LaSuma]

Es lo mas sencillo (y fiable) que podrás encontrar y sin necesidad de un ápice de código o funciones de cualquier tipo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Totales en informes

Publicado por Antonio Monzon (4 intervenciones) el 19/02/2016 15:12:15
Gracias por la informacion
Pero parece que no me he explicado bien:
Quiero reflejar en un informe varios totales que aparecen en Consultas de Selección. Me explico tengo una base de datos donde se recoge informacion de incidencias que provienen de varios organismos y tengo que hacer un resumen de los totales que aparecen en cada consulta. Solamente debe aparecer el numero de registros de cada consulta
Gracias de antemano y perdonen las molestias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Totales en informes

Publicado por Enrique Heliodoro (1663 intervenciones) el 19/02/2016 15:53:37
Si hay una consulta GUARDADA que devuelve un conjunto de datos (Access lo considera 'un dominio'), para conocer el numero de registros desde cualquier ubicación, bastaría una función de dominio (DCount) para obtener ese dato:

Total_Items= DCount("*","[nombre de la consulta]")
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Totales en informes

Publicado por Antonio Monzon (4 intervenciones) el 20/02/2016 15:45:14
Creo que lo he hecho bien:
Private SubTexto_BeforeUpDate(Cancel As Integer)
Dim TOTAL_Items As String
Set TOTAL_Items = DCuenta ("*", ["ConsultaAduanas"])
End Sub

En cuadro de texto =TOTAL_Items

Al ejecutar el Informe devuelve $¿Nombre?

Donde estroy equivocado
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Totales en informes

Publicado por Enrique Heliodoro (1663 intervenciones) el 20/02/2016 16:14:00
En la sintaxis, estas hablándole a Access como si fueras un oriental y no pronunciaras la erre ...

En la ventana de VBA (esta en una capa inferior a la de diseño de objetos) se le tiene que hablar en el idioma de sus creadores (que por cierto: es común en todas las versiones).

En la ayuda de Access (ese enemigo MORTAL y asesino de neuronas) dice que los parámetros de las funciones de dominio han de ser cadenas de texto (que el motor de Access evaluara, interpretara y ejecutara).

Lo primero. asignar con SET es innecesario en Access para una gran parte de los objetos (ni figura en los ejemplos de la ayuda ni en mi ejemplo)
Si se desea precisar el destino, se le asigna con su ruta absoluta o relativa:
Original: Set TOTAL_Items =

Opción ruta absoluta: Reports.NombreInforme.TOTAL_Items =
Opción ruta relativa: Me.TOTAL_Items =
Opción asignar a variable: TOTAL_Items =

DCuenta seria la 'traducción al español' (y habría otra para Francia, otra en Japon y otra en Groelandia .....), pero estamos en VBA y solo entiende el ingles americano (alias 'Guiri')

Asi que DCuenta ===> DCount

Según las normas del lenguaje VBA y aplicado a sus objetos, lo comentado antes (y mostrado en multiples ejemplos funcionales y en su 'la biblia del Access: La ayuda)

Según ello:
"*" <==> BIEN
["ConsultaAduanas"] <== MAL / Bien ==> "[ConsultaAduanas]"

Con cada cosa en su lugar y correctamente construida la expresión:

Dim TOTAL_Items As String
TOTAL_Items = DCount ("*", "[ConsultaAduanas]")


Solo queda un nimio detalle, donde y como utilizarla ....
Si es en un formulario ... en cualquier evento (el formulario es dinamico)
Si es en un informe ... Dado que es estático (las secciones se crean según 'se va escribiendo') al cuadro de texto se le debería asignar (bien la expresión o el valor calculado en la variable) en un evento de la sección donde este el objeto que lo presentara (cabecera, detalle pie ....) y un evento que suele ser adecuado es el Format o el Print (como alternativa)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar