149 lines
5.8 KiB
ObjectPascal
149 lines
5.8 KiB
ObjectPascal
|
|
{
|
|||
|
|
===============================================================================
|
|||
|
|
Copyright (<EFBFBD>) 2001. Rodax Software.
|
|||
|
|
===============================================================================
|
|||
|
|
Los contenidos de este fichero son propiedad de Rodax Software titular del
|
|||
|
|
copyright. Este fichero s<EFBFBD>lo podr<EFBFBD> ser copiado, distribuido y utilizado,
|
|||
|
|
en su totalidad o en parte, con el permiso escrito de Rodax Software, o de
|
|||
|
|
acuerdo con los t<EFBFBD>rminos y condiciones establecidas en el acuerdo/contrato
|
|||
|
|
bajo el que se suministra.
|
|||
|
|
-----------------------------------------------------------------------------
|
|||
|
|
Web: www.rodax-software.com
|
|||
|
|
===============================================================================
|
|||
|
|
Fecha primera versi<EFBFBD>n: 08-11-2002
|
|||
|
|
Versi<EFBFBD>n actual: 1.0.1
|
|||
|
|
Fecha versi<EFBFBD>n actual: 25-06-2004
|
|||
|
|
===============================================================================
|
|||
|
|
Modificaciones:
|
|||
|
|
|
|||
|
|
Fecha Comentarios
|
|||
|
|
---------------------------------------------------------------------------
|
|||
|
|
25-06-2004 p272. Adaptaci<EFBFBD>n a multiempresa.
|
|||
|
|
|
|||
|
|
25-06-2004 p274. Actualizaci<EFBFBD>n del informe a FastReport.
|
|||
|
|
===============================================================================
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
unit InformeEstadoObraHistorica;
|
|||
|
|
|
|||
|
|
interface
|
|||
|
|
|
|||
|
|
uses
|
|||
|
|
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
|
|||
|
|
InformeBase, FR_IBXDB, FR_Shape, FR_Class, Db, IBCustomDataSet, IBQuery,
|
|||
|
|
IBDatabase, FR_DSet, FR_DBSet, Tipos;
|
|||
|
|
|
|||
|
|
type
|
|||
|
|
TdmInformeEstadoObraHistorica = class(TdmInformeBase)
|
|||
|
|
TablaEstado: TIBQuery;
|
|||
|
|
frdsTablaEstado: TfrDBDataSet;
|
|||
|
|
private
|
|||
|
|
FFamIni: string;
|
|||
|
|
FFamFin: string;
|
|||
|
|
FTipo: TTipoInforme;
|
|||
|
|
FDesIni: string;
|
|||
|
|
FDesFin: string;
|
|||
|
|
FFechaCierre: TDate;
|
|||
|
|
FCodigoObra: Integer;
|
|||
|
|
FNombreObra: string;
|
|||
|
|
procedure InformeGetParametersText(Memo : TStringList);
|
|||
|
|
protected
|
|||
|
|
procedure PrepararConsultas; override;
|
|||
|
|
public
|
|||
|
|
constructor Create(AOwner: TComponent); override;
|
|||
|
|
published
|
|||
|
|
property Tipo : TTipoInforme read FTipo write FTipo;
|
|||
|
|
property DescripcionIni : string read FDesIni write FDesIni;
|
|||
|
|
property DescripcionFin : string read FDesFin write FDesFin;
|
|||
|
|
property FamiliaIni : string read FFamIni write FFamIni;
|
|||
|
|
property FamiliaFin : string read FFamFin write FFamFin;
|
|||
|
|
property CodigoObra : Integer read FCodigoObra write FCodigoObra;
|
|||
|
|
property NombreObra : string read FNombreObra write FNombreObra;
|
|||
|
|
property FechaCierre : TDate read FFechaCierre write FFechaCierre;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
var
|
|||
|
|
dmInformeEstadoObraHistorica: TdmInformeEstadoObraHistorica;
|
|||
|
|
|
|||
|
|
implementation
|
|||
|
|
|
|||
|
|
{$R *.DFM}
|
|||
|
|
|
|||
|
|
{ TdmInformeEstadoAlmacen }
|
|||
|
|
|
|||
|
|
uses
|
|||
|
|
RdxEmpresaActiva, Literales;
|
|||
|
|
|
|||
|
|
constructor TdmInformeEstadoObraHistorica.Create(AOwner: TComponent);
|
|||
|
|
begin
|
|||
|
|
inherited;
|
|||
|
|
FNombreInforme := 'ListadoEstadoObraHistorica.frf';
|
|||
|
|
OnGetParametersText := InformeGetParametersText;
|
|||
|
|
Tipo := tiTodo;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TdmInformeEstadoObraHistorica.InformeGetParametersText(
|
|||
|
|
Memo: TStringList);
|
|||
|
|
begin
|
|||
|
|
with Memo do
|
|||
|
|
begin
|
|||
|
|
Add('Obra: ' + IntToStr(CodigoObra) + ' - ' + NombreObra);
|
|||
|
|
case Tipo of
|
|||
|
|
tiTodo : Add(msgInfIntervaloTodosArt);
|
|||
|
|
tiPorDescripcion : Add(SysUtils.Format(msgInfIntervaloDesArt, [FDesIni, FDesFin]));
|
|||
|
|
tiPorFamilias : Add(SysUtils.Format(msgInfIntervaloFam, [FFamIni, FFamFin]));
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
procedure TdmInformeEstadoObraHistorica.PrepararConsultas;
|
|||
|
|
begin
|
|||
|
|
TablaEstado.Database := FBaseDatos;
|
|||
|
|
TablaEstado.Transaction := FTransaccion;
|
|||
|
|
|
|||
|
|
with TablaEstado.SQL do
|
|||
|
|
begin
|
|||
|
|
Clear;
|
|||
|
|
case Tipo of
|
|||
|
|
tiTodo : begin
|
|||
|
|
Add('select CODIGOARTICULO, FAMILIA, DESCRIPCION, ');
|
|||
|
|
Add('UNIDADESMEDIDA, EXISTENCIAS ');
|
|||
|
|
Add('from ESTADOOBRASHISTORICAS ');
|
|||
|
|
Add('where CODIGOOBRA = :CODIGOOBRA ');
|
|||
|
|
Add('and FECHACIERRE = :FECHACIERRE ');
|
|||
|
|
Add('and CODIGOEMPRESA = :CODIGOEMPRESA ');
|
|||
|
|
Add('order by CODIGOARTICULO ');
|
|||
|
|
end;
|
|||
|
|
tiPorDescripcion: begin
|
|||
|
|
Add('select CODIGOARTICULO, FAMILIA, DESCRIPCION, ');
|
|||
|
|
Add('UNIDADESMEDIDA, EXISTENCIAS ');
|
|||
|
|
Add('from ESTADOOBRASHISTORICAS ');
|
|||
|
|
Add('where CODIGOOBRA = :CODIGOOBRA ');
|
|||
|
|
Add('and FECHACIERRE = :FECHACIERRE ');
|
|||
|
|
Add('and CODIGOEMPRESA = :CODIGOEMPRESA ');
|
|||
|
|
Add('and DESCRIPCION between :DESCRIPCIONINI and :DESCRIPCIONFIN ');
|
|||
|
|
Add('order by CODIGOARTICULO ');
|
|||
|
|
TablaEstado.ParamByName('DESCRIPCIONINI').AsString := FDesIni;
|
|||
|
|
TablaEstado.ParamByName('DESCRIPCIONFIN').AsString := FDesFin;
|
|||
|
|
end;
|
|||
|
|
tiPorFamilias : begin
|
|||
|
|
Add('select CODIGOARTICULO, FAMILIA, DESCRIPCION, ');
|
|||
|
|
Add('UNIDADESMEDIDA, EXISTENCIAS ');
|
|||
|
|
Add('from ESTADOOBRASHISTORICAS ');
|
|||
|
|
Add('where CODIGOOBRA = :CODIGOOBRA ');
|
|||
|
|
Add('and FECHACIERRE = :FECHACIERRE ');
|
|||
|
|
Add('and CODIGOEMPRESA = :CODIGOEMPRESA ');
|
|||
|
|
Add('and FAMILIA between :FAMILIAINI and :FAMILIAFIN ');
|
|||
|
|
Add('order by CODIGOARTICULO ');
|
|||
|
|
TablaEstado.ParamByName('FAMILIAINI').AsString := FFamIni;
|
|||
|
|
TablaEstado.ParamByName('FAMILIAFIN').AsString := FFamFin;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
TablaEstado.ParambyName('CODIGOEMPRESA').AsInteger := EmpresaActiva.Codigo;
|
|||
|
|
TablaEstado.ParambyName('CODIGOOBRA').AsInteger := CodigoObra;
|
|||
|
|
TablaEstado.ParambyName('FECHACIERRE').AsDate := FechaCierre;
|
|||
|
|
end;
|
|||
|
|
end;
|
|||
|
|
|
|||
|
|
end.
|