Se adapta el informe de lista de presupuestos de cliente por procedencia, para que nos salga un resumen de clientes presupuestados en el intervalo de tiempo dado, por procedencia. Además se arregla el intervalo por defecto de este tipo de informes para que coja el mes en curso.
git-svn-id: https://192.168.0.254/svn/Proyectos.AbetoArmarios_FactuGES/trunk@21 0a814768-cfdd-9c42-8d01-223fcc10da9d
This commit is contained in:
parent
5892977a54
commit
79e74f3044
@ -76,6 +76,8 @@ uses
|
||||
Proveedores, RdxFrameProveedores, Configuracion, cxDateUtils;
|
||||
|
||||
constructor TfrListadoContratacionProcedencia.Create(AOwner: TComponent);
|
||||
var
|
||||
ANumDias: Integer;
|
||||
begin
|
||||
inherited Create(AOwner);
|
||||
Entidad := entListadoContratacionProcedencia;
|
||||
@ -85,8 +87,8 @@ begin
|
||||
FInforme := TdmInformeListadoContratacionProcedencia.Create(Self);
|
||||
FInforme.Preview := FVistaPrevia.Preview;
|
||||
|
||||
FechaIni.Date := dmTablaTrimestres.darFechaIniTrimestre(dmTablaTrimestres.darTrimestreActual);
|
||||
FechaFin.Date := dmTablaTrimestres.darFechaFinTrimestre(dmTablaTrimestres.darTrimestreActual);
|
||||
FechaIni.Date := DateOf(now - (DayOf(now)-1));
|
||||
FechaFin.Date := DateOf(now + (DaysInMonth(now) - DayOf(now)));
|
||||
FInforme.FechaIni := FechaIni.Date;
|
||||
FInforme.FechaFin := FechaFin.Date;
|
||||
FInforme.Previsualizar;
|
||||
|
||||
@ -85,8 +85,8 @@ begin
|
||||
FInforme := TdmInformeListadoFacturacionProcedencia.Create(Self);
|
||||
FInforme.Preview := FVistaPrevia.Preview;
|
||||
|
||||
FechaIni.Date := dmTablaTrimestres.darFechaIniTrimestre(dmTablaTrimestres.darTrimestreActual);
|
||||
FechaFin.Date := dmTablaTrimestres.darFechaFinTrimestre(dmTablaTrimestres.darTrimestreActual);
|
||||
FechaIni.Date := DateOf(now - (DayOf(now)-1));
|
||||
FechaFin.Date := DateOf(now + (DaysInMonth(now) - DayOf(now)));
|
||||
FInforme.FechaIni := FechaIni.Date;
|
||||
FInforme.FechaFin := FechaFin.Date;
|
||||
FInforme.Previsualizar;
|
||||
|
||||
@ -85,8 +85,8 @@ begin
|
||||
FInforme := TdmInformeListadoPresupuestosProcedencia.Create(Self);
|
||||
FInforme.Preview := FVistaPrevia.Preview;
|
||||
|
||||
FechaIni.Date := dmTablaTrimestres.darFechaIniTrimestre(dmTablaTrimestres.darTrimestreActual);
|
||||
FechaFin.Date := dmTablaTrimestres.darFechaFinTrimestre(dmTablaTrimestres.darTrimestreActual);
|
||||
FechaIni.Date := DateOf(now - (DayOf(now)-1));
|
||||
FechaFin.Date := DateOf(now + (DaysInMonth(now) - DayOf(now)));
|
||||
FInforme.FechaIni := FechaIni.Date;
|
||||
FInforme.FechaFin := FechaFin.Date;
|
||||
FInforme.Previsualizar;
|
||||
|
||||
@ -18,4 +18,16 @@ inherited dmInformeListadoPresupuestosProcedencia: TdmInformeListadoPresupuestos
|
||||
Left = 152
|
||||
Top = 80
|
||||
end
|
||||
object TablaInforme2: TIBQuery
|
||||
BufferChunks = 1000
|
||||
CachedUpdates = False
|
||||
Left = 232
|
||||
Top = 80
|
||||
end
|
||||
object dsTablaInforme2: TfrDBDataSet
|
||||
CloseDataSource = True
|
||||
DataSet = TablaInforme2
|
||||
Left = 232
|
||||
Top = 24
|
||||
end
|
||||
end
|
||||
|
||||
@ -34,6 +34,8 @@ type
|
||||
TdmInformeListadoPresupuestosProcedencia = class(TdmInformeBase)
|
||||
dsTablaInforme: TfrDBDataSet;
|
||||
TablaInforme: TIBQuery;
|
||||
TablaInforme2: TIBQuery;
|
||||
dsTablaInforme2: TfrDBDataSet;
|
||||
private
|
||||
FFechaIni: TDateTime;
|
||||
FFechaFin: TDateTime;
|
||||
@ -87,6 +89,29 @@ begin
|
||||
ParamByName('FECHAFIN').AsDate := FFechaFin;
|
||||
Prepare;
|
||||
end;
|
||||
|
||||
with TablaInforme2 do
|
||||
begin
|
||||
Database := FBaseDatos;
|
||||
Transaction := FTransaccion;
|
||||
SQL.Clear;
|
||||
|
||||
SQL.Add('select CODIGO, DESCRIPCION, count(CLIENTE) as NUM_CLIENTES');
|
||||
SQL.Add('from');
|
||||
SQL.Add(' (select distinct');
|
||||
SQL.Add(' coalesce(procedencias.codigo, ''-1'') as CODIGO,');
|
||||
SQL.Add(' coalesce(procedencias.descripcion, ''DESCONOCIDA'') as DESCRIPCION,');
|
||||
SQL.Add(' clientes.nombre as CLIENTE');
|
||||
SQL.Add(' from presupuestoscliente');
|
||||
SQL.Add(' left join clientes on (presupuestoscliente.codigocliente = clientes.codigo)');
|
||||
SQL.Add(' left join procedencias on (clientes.procedencia = procedencias.codigo)');
|
||||
SQL.Add(' where(presupuestoscliente.FECHAPRESUPUESTO between :FECHAINI and :FECHAFIN))');
|
||||
SQL.Add('group by 1,2');
|
||||
|
||||
ParamByName('FECHAINI').AsDate := FFechaIni;
|
||||
ParamByName('FECHAFIN').AsDate := FFechaFin;
|
||||
Prepare;
|
||||
end;
|
||||
end;
|
||||
|
||||
procedure TdmInformeListadoPresupuestosProcedencia.RellenarCabecera(Band: TfrBand);
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Reference in New Issue
Block a user