Muy buenas tardes en mi llajta (=> significa terruño o pueblito)
Tengo una consulta que es la union de 3 sub sconsultas
Código SQL
[-]
Select
'Ventas al contado' as Nombre,
cast(a.fecha as date) as Fecha,
count (case when a.tipo_transaccion<>'' then 1 else null end) AS cant_trans,
sum(a.total_compra_venta) as monto
from tb_compras_ventas a
where a.ref_tipo_cv=0 --contado
and a.fecha between :f_ini and :f_fin
and a.tipo_transaccion=:tipo_trans
and (0=:cod_usuario or a.ref_personal_registro=:cod_usuario)
and ((0=:cod_cliente or a.ref_cliente=:cod_cliente) and (0=:cod_proveedor or a.ref_proveedor=:cod_proveedor))
group by fecha
union all
select
'Cuotas' as Nombre,
cast(b.fecha_hora as date) as Fecha,
count (case when b.tipo_transaccion<>'' then 1 else null end) AS cant_trans,
sum(b.monto_cuota) as Monto
from tb_cuotas_cv b left join tb_compras_ventas b1 on b.ref_compra_venta=b1.codigo
where b.tipo_transaccion=:tipo_trans
and b.fecha_hora between :f_ini and :f_fin
and b.monto_cuota>0
and (0=:cod_usuario or b.ref_personal_registro=:cod_usuario)
and ((0=:cod_cliente or b1.ref_cliente=:cod_cliente) and (0=:cod_proveedor or b1.ref_proveedor=:cod_proveedor))
group by fecha
union all
select
'Facturas' as Nombre,
cast (d.fechahora as date) as fecha,
count (case when d.tipo_trans<>'' then 1 else null end) AS cant_trans,
sum (case when d.tipo_trans='I' then d.monto_trans else -d.monto_trans end) as Monto
from tb_hist_con_f d left join tb_compras_ventas d1 on d.ref_cv=d1.codigo
where d.fechahora between :f_ini and :f_fin
and (0=:cod_usuario or d.ref_personal_registro=:cod_usuario)
and ((0=:cod_cliente or d1.ref_cliente=:cod_cliente) and (0=:cod_proveedor or d1.ref_proveedor=:cod_proveedor))
group by fecha
order by 2, 1 Desc
Me funciona bien, pero como verán en campo NOMBRE es un valor constante para cada sub consulta, el detalle es:
Ahora me sale así: (sin los salto de linea)
Código PHP:
[b]NOMBRE FECHA CANT_TRANS MONTO[/b]
Cuotas 05.12.2016 1 2.000
Ventas al contado 06.12.2016 2 12.000
Cuotas 06.12.2016 2 5.000
Cuotas 07.12.2016 2 22.000
Ventas al contado 10.12.2016 1 22.000
Cuotas 10.12.2016 1 3.100
Cuotas 13.12.2016 2 96.000
Cuotas 14.12.2016 2 52.500
Facturas 15.12.2016 1 3.740
Facturas 20.12.2016 3 6.240
Y Quisiera que quede así: (sin los saltos de linea)
Código PHP:
[b]NOMBRE FECHA CANT_TRANS MONTO[/b]
Ventas al contado 05.12.2016 0 0.000
Facturas 05.12.2016 0 0.000
Cuotas 05.12.2016 1 2.000
Ventas al contado 06.12.2016 2 12.000
Facturas 06.12.2016 0 0.000
Cuotas 06.12.2016 2 5.000
Ventas al contado 07.12.2016 0 0.000
Facturas 07.12.2016 0 0.000
Cuotas 07.12.2016 2 22.000
Ventas al contado 10.12.2016 1 22.000
Facturas 10.12.2016 0 0.000
Cuotas 10.12.2016 1 3.100
Ventas al contado 13.12.2016 0 0.000
Facturas 13.12.2016 0 0.000
Cuotas 13.12.2016 2 96.000
Ventas al contado 14.12.2016 0 0.000
Facturas 14.12.2016 0 0.000
Cuotas 14.12.2016 2 52.500
Ventas al contado 15.12.2016 0 0.000
Facturas 15.12.2016 1 3.740
Cuotas 15.12.2016 0 0.000
Ventas al contado 20.12.2016 0 0.000
Facturas 20.12.2016 3 6.240
Cuotas 20.12.2016 0 0.000
Como ven quisiera que cuando la consulta de vacio me retorne ceros en CANT_TRANS Y MONTO y en NOMBRE y FECHA los valores mostrados.
Alguna idea que me pudieran dar, estaría muy agradecido pues me facilitaría mucho mi reporte de caja.
PERDÓN EL DESORDEN PERO NO ENCONTRE FORMATO TABLA