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:
roberto 2008-11-10 15:13:56 +00:00
parent 5892977a54
commit 79e74f3044
7 changed files with 45 additions and 6 deletions

View File

@ -76,6 +76,8 @@ uses
Proveedores, RdxFrameProveedores, Configuracion, cxDateUtils; Proveedores, RdxFrameProveedores, Configuracion, cxDateUtils;
constructor TfrListadoContratacionProcedencia.Create(AOwner: TComponent); constructor TfrListadoContratacionProcedencia.Create(AOwner: TComponent);
var
ANumDias: Integer;
begin begin
inherited Create(AOwner); inherited Create(AOwner);
Entidad := entListadoContratacionProcedencia; Entidad := entListadoContratacionProcedencia;
@ -85,8 +87,8 @@ begin
FInforme := TdmInformeListadoContratacionProcedencia.Create(Self); FInforme := TdmInformeListadoContratacionProcedencia.Create(Self);
FInforme.Preview := FVistaPrevia.Preview; FInforme.Preview := FVistaPrevia.Preview;
FechaIni.Date := dmTablaTrimestres.darFechaIniTrimestre(dmTablaTrimestres.darTrimestreActual); FechaIni.Date := DateOf(now - (DayOf(now)-1));
FechaFin.Date := dmTablaTrimestres.darFechaFinTrimestre(dmTablaTrimestres.darTrimestreActual); FechaFin.Date := DateOf(now + (DaysInMonth(now) - DayOf(now)));
FInforme.FechaIni := FechaIni.Date; FInforme.FechaIni := FechaIni.Date;
FInforme.FechaFin := FechaFin.Date; FInforme.FechaFin := FechaFin.Date;
FInforme.Previsualizar; FInforme.Previsualizar;

View File

@ -85,8 +85,8 @@ begin
FInforme := TdmInformeListadoFacturacionProcedencia.Create(Self); FInforme := TdmInformeListadoFacturacionProcedencia.Create(Self);
FInforme.Preview := FVistaPrevia.Preview; FInforme.Preview := FVistaPrevia.Preview;
FechaIni.Date := dmTablaTrimestres.darFechaIniTrimestre(dmTablaTrimestres.darTrimestreActual); FechaIni.Date := DateOf(now - (DayOf(now)-1));
FechaFin.Date := dmTablaTrimestres.darFechaFinTrimestre(dmTablaTrimestres.darTrimestreActual); FechaFin.Date := DateOf(now + (DaysInMonth(now) - DayOf(now)));
FInforme.FechaIni := FechaIni.Date; FInforme.FechaIni := FechaIni.Date;
FInforme.FechaFin := FechaFin.Date; FInforme.FechaFin := FechaFin.Date;
FInforme.Previsualizar; FInforme.Previsualizar;

View File

@ -85,8 +85,8 @@ begin
FInforme := TdmInformeListadoPresupuestosProcedencia.Create(Self); FInforme := TdmInformeListadoPresupuestosProcedencia.Create(Self);
FInforme.Preview := FVistaPrevia.Preview; FInforme.Preview := FVistaPrevia.Preview;
FechaIni.Date := dmTablaTrimestres.darFechaIniTrimestre(dmTablaTrimestres.darTrimestreActual); FechaIni.Date := DateOf(now - (DayOf(now)-1));
FechaFin.Date := dmTablaTrimestres.darFechaFinTrimestre(dmTablaTrimestres.darTrimestreActual); FechaFin.Date := DateOf(now + (DaysInMonth(now) - DayOf(now)));
FInforme.FechaIni := FechaIni.Date; FInforme.FechaIni := FechaIni.Date;
FInforme.FechaFin := FechaFin.Date; FInforme.FechaFin := FechaFin.Date;
FInforme.Previsualizar; FInforme.Previsualizar;

View File

@ -18,4 +18,16 @@ inherited dmInformeListadoPresupuestosProcedencia: TdmInformeListadoPresupuestos
Left = 152 Left = 152
Top = 80 Top = 80
end 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 end

View File

@ -34,6 +34,8 @@ type
TdmInformeListadoPresupuestosProcedencia = class(TdmInformeBase) TdmInformeListadoPresupuestosProcedencia = class(TdmInformeBase)
dsTablaInforme: TfrDBDataSet; dsTablaInforme: TfrDBDataSet;
TablaInforme: TIBQuery; TablaInforme: TIBQuery;
TablaInforme2: TIBQuery;
dsTablaInforme2: TfrDBDataSet;
private private
FFechaIni: TDateTime; FFechaIni: TDateTime;
FFechaFin: TDateTime; FFechaFin: TDateTime;
@ -87,6 +89,29 @@ begin
ParamByName('FECHAFIN').AsDate := FFechaFin; ParamByName('FECHAFIN').AsDate := FFechaFin;
Prepare; Prepare;
end; 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; end;
procedure TdmInformeListadoPresupuestosProcedencia.RellenarCabecera(Band: TfrBand); procedure TdmInformeListadoPresupuestosProcedencia.RellenarCabecera(Band: TfrBand);

Binary file not shown.