Access - informe de acces que consulte mas de una query

 
Vista:
sin imagen de perfil

informe de acces que consulte mas de una query

Publicado por Juan Antonio (10 intervenciones) el 07/10/2020 18:47:32
Hola Amigos,

Favor de su ayuda.

Comento que tengo una query con informacion cuentas de activo, pasivo y patrimonio.
Lo que quiero es genersr un informe que me muestre por separado cada una de ellas y que sume el total de activos, total de pasivos y total de patrimonio.
Para ello se me ocurrio dividir la query en 3, de esta forma al formulario lo cargo con cada una de ellas y en acces suma por separado.
Pero hasta ahora no me ha funcionado nada de lo que he intentado, pues acces no permite tener mas de una query apuntando a la misma tabla.

- Creé una query con condicion que muestre activos, otras que muestre pasivos y otra patrimonio, pero no veo como el informe me deje mostrar esto.
¿Alguien que me pueda orientar?

Dejo las 3 querys:
SELECT Total_Rubro_e_Item.RUBRO, [04_TBL_CTA_NVO_COMPND].CTA_NOM, Sum(Total_Rubro_e_Item.[TOTAL RUBRO]) AS [SumaDeTOTAL RUBRO], Sum(Total_Rubro_e_Item.[SumaDeTOTAL LINEA]) AS [SumaDeSumaDeTOTAL LINEA], Sum([TOTAL RUBRO]-[SumaDeTOTAL LINEA]) AS Diferencia, Switch(Total_Rubro_e_Item.RUBRO Like '1*' And Total_Rubro_e_Item.RUBRO Like '*0000','ACTIVO',Total_Rubro_e_Item.RUBRO Like '2*' And Total_Rubro_e_Item.RUBRO Like '*0000','PASIVO',Total_Rubro_e_Item.RUBRO In ('310000000','320000000','340000000','340000000','360000000'),'PATRIMONIO') AS Expr1
FROM Total_Rubro_e_Item INNER JOIN 04_TBL_CTA_NVO_COMPND ON Total_Rubro_e_Item.RUBRO = [04_TBL_CTA_NVO_COMPND].CTA_CMF
GROUP BY Total_Rubro_e_Item.RUBRO, [04_TBL_CTA_NVO_COMPND].CTA_NOM
HAVING (((Switch([Total_Rubro_e_Item].[RUBRO] Like '1*' And [Total_Rubro_e_Item].[RUBRO] Like '*0000','ACTIVO',[Total_Rubro_e_Item].[RUBRO] Like '2*' And [Total_Rubro_e_Item].[RUBRO] Like '*0000','PASIVO',[Total_Rubro_e_Item].[RUBRO] In ('310000000','320000000','340000000','340000000','360000000'),'PATRIMONIO'))='ACTIVO' And (Switch([Total_Rubro_e_Item].[RUBRO] Like '1*' And [Total_Rubro_e_Item].[RUBRO] Like '*0000','ACTIVO',[Total_Rubro_e_Item].[RUBRO] Like '2*' And [Total_Rubro_e_Item].[RUBRO] Like '*0000','PASIVO',[Total_Rubro_e_Item].[RUBRO] In ('310000000','320000000','340000000','340000000','360000000'),'PATRIMONIO')) Is Not Null))
ORDER BY Sum([TOTAL RUBRO]-[SumaDeTOTAL LINEA]) DESC;


SELECT Total_Rubro_e_Item.RUBRO, [04_TBL_CTA_NVO_COMPND].CTA_NOM, Sum(Total_Rubro_e_Item.[TOTAL RUBRO]) AS [SumaDeTOTAL RUBRO], Sum(Total_Rubro_e_Item.[SumaDeTOTAL LINEA]) AS [SumaDeSumaDeTOTAL LINEA], Sum([TOTAL RUBRO]-[SumaDeTOTAL LINEA]) AS Diferencia, Switch(Total_Rubro_e_Item.RUBRO Like '1*' And Total_Rubro_e_Item.RUBRO Like '*0000','ACTIVO',Total_Rubro_e_Item.RUBRO Like '2*' And Total_Rubro_e_Item.RUBRO Like '*0000','PASIVO',Total_Rubro_e_Item.RUBRO In ('310000000','320000000','340000000','340000000','360000000'),'PATRIMONIO') AS Expr1
FROM Total_Rubro_e_Item INNER JOIN 04_TBL_CTA_NVO_COMPND ON Total_Rubro_e_Item.RUBRO = [04_TBL_CTA_NVO_COMPND].CTA_CMF
GROUP BY Total_Rubro_e_Item.RUBRO, [04_TBL_CTA_NVO_COMPND].CTA_NOM
HAVING (((Switch([Total_Rubro_e_Item].[RUBRO] Like '1*' And [Total_Rubro_e_Item].[RUBRO] Like '*0000','ACTIVO',[Total_Rubro_e_Item].[RUBRO] Like '2*' And [Total_Rubro_e_Item].[RUBRO] Like '*0000','PASIVO',[Total_Rubro_e_Item].[RUBRO] In ('310000000','320000000','340000000','340000000','360000000'),'PATRIMONIO'))='PASIVO' And (Switch([Total_Rubro_e_Item].[RUBRO] Like '1*' And [Total_Rubro_e_Item].[RUBRO] Like '*0000','ACTIVO',[Total_Rubro_e_Item].[RUBRO] Like '2*' And [Total_Rubro_e_Item].[RUBRO] Like '*0000','PASIVO',[Total_Rubro_e_Item].[RUBRO] In ('310000000','320000000','340000000','340000000','360000000'),'PATRIMONIO')) Is Not Null))
ORDER BY Sum([TOTAL RUBRO]-[SumaDeTOTAL LINEA]) DESC;


SELECT Total_Rubro_e_Item.RUBRO, [04_TBL_CTA_NVO_COMPND].CTA_NOM, Sum(Total_Rubro_e_Item.[TOTAL RUBRO]) AS [SumaDeTOTAL RUBRO], Sum(Total_Rubro_e_Item.[SumaDeTOTAL LINEA]) AS [SumaDeSumaDeTOTAL LINEA], Sum([TOTAL RUBRO]-[SumaDeTOTAL LINEA]) AS Diferencia, Switch(Total_Rubro_e_Item.RUBRO Like '1*' And Total_Rubro_e_Item.RUBRO Like '*0000','ACTIVO',Total_Rubro_e_Item.RUBRO Like '2*' And Total_Rubro_e_Item.RUBRO Like '*0000','PASIVO',Total_Rubro_e_Item.RUBRO In ('310000000','320000000','340000000','340000000','360000000'),'PATRIMONIO') AS Expr1
FROM Total_Rubro_e_Item INNER JOIN 04_TBL_CTA_NVO_COMPND ON Total_Rubro_e_Item.RUBRO = [04_TBL_CTA_NVO_COMPND].CTA_CMF
GROUP BY Total_Rubro_e_Item.RUBRO, [04_TBL_CTA_NVO_COMPND].CTA_NOM
HAVING (((Switch([Total_Rubro_e_Item].[RUBRO] Like '1*' And [Total_Rubro_e_Item].[RUBRO] Like '*0000','ACTIVO',[Total_Rubro_e_Item].[RUBRO] Like '2*' And [Total_Rubro_e_Item].[RUBRO] Like '*0000','PASIVO',[Total_Rubro_e_Item].[RUBRO] In ('310000000','320000000','340000000','340000000','360000000'),'PATRIMONIO'))='PATRIMONIO' And (Switch([Total_Rubro_e_Item].[RUBRO] Like '1*' And [Total_Rubro_e_Item].[RUBRO] Like '*0000','ACTIVO',[Total_Rubro_e_Item].[RUBRO] Like '2*' And [Total_Rubro_e_Item].[RUBRO] Like '*0000','PASIVO',[Total_Rubro_e_Item].[RUBRO] In ('310000000','320000000','340000000','340000000','360000000'),'PATRIMONIO')) Is Not Null))
ORDER BY Sum([TOTAL RUBRO]-[SumaDeTOTAL LINEA]) DESC;


Se lo agradecería.


Saludos Amigos.
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

informe de acces que consulte mas de una query

Publicado por Anonimo (3316 intervenciones) el 08/10/2020 00:56:15
Enfocas el problema de forma incorrecta, los informes en Access tiene sus reglas y sus herramientas (para casos como este : superiores a las de los formularios).

Genera los orígenes de datos y deja que sea Access (en el informe) quien sume agrupe ... etc
Esto es:

Se le dan los datos filtrados (si se desea un periodo determinado) o en bruto.

El informe admite agrupaciones e incluso agrupaciones anidadas
Bien de forma visible u oculta, los datos se pueden sumar de forma continua (por grupo o como se precise) activando esa propiedad en el cuadro de texto

El ultimo valor de cada suma se puede utilizar en el pie de grupo para hacer los cálculos que se precisen y .... juega un poco con Access y sus informes, apreciaras su poder.
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
sin imagen de perfil

informe de acces que consulte mas de una query

Publicado por Juan Antonio (10 intervenciones) el 08/10/2020 16:23:41
Comentar lo que realicé.

Esto fue unir las querys a través de UNION, y cada una de ellas trae una sumatoria.
Lo que no puedo hacer, es por ejemplo poner negrita al valor de la sumatoria o ponerla entre lineas y separado de otros valores, es decir, pintar ese valor.

Mi idea es pintar el campo resultado, pero como lo entrego en un query, no se puede hacer en el informe. Buscaré la opción que en el informe yo pueda preguntar cuando en cierto campo venga el registro total, lo pueda mostrar en algún lugar y bien pintado el registros, además de darle una ubicación.

¿Te agradecería si tuvieras alguna orientación?


Saludos y Muchas Gracias.
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
Imágen de perfil de Javier
Val: 50
Ha aumentado 1 puesto en Access (en relación al último mes)
Gráfica de Access

informe de acces que consulte mas de una query

Publicado por Javier (17 intervenciones) el 08/10/2020 17:09:17
Amigo creo que te estás complicando sin necesidad.

Como ya te dijo otro usuario, lo que debes hacer es trabajar todo en el INFORME.

Lo que debes hacer es esto: crea un query para Activo, otro query para Pasivo y un tercer query para Patrimonio.

Por supuesto cada query está vinculado a un mismo id en tu tabla origen.

El informe principal debe estar vinculado por el id a tu tabla origen, luego creas 3 subinformes.

Cada uno de estos subinformes está vinculado a cada respectivo query: Activo, Pasivo, Patrimonio.

Cada subinforme que se vinculen al informe principal a través del id.

Luego allí puedes generar subotales y totales cuantos necesites.

Es la forma correcta de hacerlo y mucho más sencillo que lo que estas tratando de hacer.
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
sin imagen de perfil

informe de acces que consulte mas de una query

Publicado por Juan Antonio (10 intervenciones) el 13/10/2020 14:59:06
Javier, no he podido realizarlo como dices.

¿Conoces si por ahi existirá un manual o videotutorial de como hacerlo?
Soy nuevo en acces y me ha dado dolores de cabeza :-(

Agradecería mucho de vuestra respuesta.


Saludos.
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