git-svn-id: https://192.168.0.254/svn/Proyectos.Miguelo_FactuGES/trunk@4 172823e9-465a-9d4b-80ba-0a9f016f4eb1
286 lines
8.6 KiB
ObjectPascal
286 lines
8.6 KiB
ObjectPascal
{
|
|
===============================================================================
|
|
Copyright (©) 2001. Rodax Software.
|
|
===============================================================================
|
|
Los contenidos de este fichero son propiedad de Rodax Software titular del
|
|
copyright. Este fichero sólo podrá ser copiado, distribuido y utilizado,
|
|
en su totalidad o en parte, con el permiso escrito de Rodax Software, o de
|
|
acuerdo con los términos y condiciones establecidas en el acuerdo/contrato
|
|
bajo el que se suministra.
|
|
-----------------------------------------------------------------------------
|
|
Web: www.rodax-software.com
|
|
===============================================================================
|
|
Fecha primera versión: 01-10-2001
|
|
Versión actual: 1.0.2
|
|
Fecha versión actual: 07-04-2002
|
|
===============================================================================
|
|
Modificaciones:
|
|
|
|
Fecha Comentarios
|
|
---------------------------------------------------------------------------
|
|
24-02-2002 Ajusta el alto de la ventana modal de listar.
|
|
|
|
07-04-2002 Se ha adaptado a una unica transacción.
|
|
|
|
14-07-2004 Se ha adaptado a multiempresa.
|
|
===============================================================================
|
|
}
|
|
|
|
unit HistoricoMovimientos;
|
|
|
|
interface
|
|
|
|
uses
|
|
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
|
|
Grids, DBGrids, RdxBotones, StdCtrls, IB, RdxFrame,
|
|
RdxMemo, RdxCampos, ExtCtrls, Tipos, IBCustomDataSet,
|
|
RdxComboBox, Db, DBTables, RXDBCtrl, RdxTitulos, RdxPaneles, IBSQL,
|
|
RdxBarras, DBCtrls, RxMemDS, RdxCheckBox, RdxFrameHistoricoMovimientos,
|
|
Mensajes, pngimage, cxStyles,
|
|
cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit,
|
|
cxDBData, cxGridLevel, cxClasses, cxControls, cxGridCustomView,
|
|
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid,
|
|
cxContainer, cxTextEdit;
|
|
|
|
type
|
|
TfrHistoricoMovimientos = class(TRdxFrameHistoricoMovimientos)
|
|
dsMovimientos: TDataSource;
|
|
RdxBarraSuperior1: TRdxBarraSuperior;
|
|
bConsultar: TRdxBotonSuperior;
|
|
bEliminar: TRdxBotonSuperior;
|
|
bListar: TRdxBotonSuperior;
|
|
pnlCuerpo: TRdxPanel;
|
|
pnlGridArticulos: TPanel;
|
|
pnlDatos: TPanel;
|
|
pnlExtra: TRdxBarraSuperior;
|
|
gridMovimientos: TcxGrid;
|
|
imgSombra: TImage;
|
|
gridMovimientosView: TcxGridDBTableView;
|
|
gridMovimientosLevel: TcxGridLevel;
|
|
Panel1: TPanel;
|
|
eNombre: TLabel;
|
|
Panel2: TPanel;
|
|
eAlmacen: TLabel;
|
|
cbxAlmacen: TRdxComboBox;
|
|
Buscar: TcxTextEdit;
|
|
bLimpiar: TRdxBoton;
|
|
bRefrescar: TRdxBoton;
|
|
|
|
procedure bConsultarClick(Sender: TObject);
|
|
procedure bEliminarClick(Sender: TObject);
|
|
procedure bListarClick(Sender: TObject);
|
|
procedure cbxAlmacenChange(Sender: TObject);
|
|
procedure gridMovimientosRefreshButton(Sender: TObject);
|
|
procedure BuscarPropertiesChange(Sender: TObject);
|
|
procedure bLimpiarClick(Sender: TObject);
|
|
procedure bRefrescarClick(Sender: TObject);
|
|
private
|
|
procedure ActualizarBotones;
|
|
protected
|
|
procedure BuscarAlmacen; override;
|
|
procedure BuscarMovimiento; override;
|
|
procedure FreeContenido; override;
|
|
procedure VerModal; override;
|
|
procedure SetContenido (NuevoFrame : TRdxFrame); override;
|
|
public
|
|
constructor Create (AOwner : TComponent); override;
|
|
destructor Destroy; override;
|
|
published
|
|
property TablaMovimientos;
|
|
property Entidad;
|
|
end;
|
|
|
|
var
|
|
frHistoricoMovimientos: TfrHistoricoMovimientos;
|
|
|
|
implementation
|
|
|
|
{$R *.DFM}
|
|
uses
|
|
BaseDatos,
|
|
TablaMovimientos, TablaAlmacenes, TablaHistoricoMovimientos, Excepciones,
|
|
Configuracion, RdxEmpresaActiva, Entidades, Variants, HistoricoMovimiento;
|
|
|
|
constructor TfrHistoricoMovimientos.Create (AOwner : TComponent);
|
|
var
|
|
i : integer;
|
|
begin
|
|
inherited Create(AOwner);
|
|
Entidad := entAlmacen;
|
|
ConfigurarFrame(Self, Self.Entidad);
|
|
|
|
BaseDatos := dmBaseDatos.BD;
|
|
Transaccion := dmBaseDatos.Transaccion;
|
|
TablaMovimientos := TIBDataSet.Create(Self);
|
|
dsMovimientos.DataSet := TablaMovimientos;
|
|
|
|
with TablaMovimientos do
|
|
begin
|
|
Database := BaseDatos;
|
|
Transaction := Transaccion;
|
|
SelectSQL.Assign(dmTablaHistoricoMovimientos.sqlGrid);
|
|
end;
|
|
|
|
dmTablaAlmacenes.darAlmacenes(EmpresaActiva.Codigo, FListaAlmacenesCodigo,FListaCodigosAlmacen);
|
|
|
|
for i:=0 to FListaAlmacenesCodigo.Count-1 do
|
|
cbxAlmacen.Items.Add(FListaAlmacenesCodigo.Names[i]);
|
|
|
|
// Carga el primer almacen
|
|
cbxAlmacen.ItemIndex := 0;
|
|
CodigoAlmacen := FListaAlmacenesCodigo.Values[cbxAlmacen.Text];
|
|
|
|
|
|
// dmTablaArticulos.InicializarTablaArticulos(@TablaArticulos);
|
|
dmTablaHistoricoMovimientos.InicializarGridMovimientos(gridMovimientos);
|
|
// gridMovimientos.AutoWidth := awWidestValueTitle;
|
|
end;
|
|
|
|
destructor TfrHistoricoMovimientos.Destroy;
|
|
begin
|
|
TablaMovimientos.Close;
|
|
TablaMovimientos.UnPrepare;
|
|
TablaMovimientos.Free;
|
|
inherited;
|
|
end;
|
|
|
|
procedure TfrHistoricoMovimientos.BuscarAlmacen;
|
|
begin
|
|
if Transaccion = NIL then
|
|
exit;
|
|
|
|
try
|
|
TablaMovimientos.DisableControls;
|
|
TablaMovimientos.Close;
|
|
|
|
if not VarIsNull(CodigoAlmacen) then
|
|
TablaMovimientos.Params.ByName('CODIGOALMACEN').AsString := CodigoAlmacen;
|
|
|
|
TablaMovimientos.Params.ByName('CODIGOEMPRESA').AsInteger := EmpresaActiva.Codigo;
|
|
|
|
|
|
TablaMovimientos.Prepare;
|
|
TablaMovimientos.Open;
|
|
ActualizarBotones;
|
|
TablaMovimientos.EnableControls;
|
|
|
|
// Establece en el combox el almacen correspondiente al codigo a buscar
|
|
cbxAlmacen.ItemIndex := cbxAlmacen.Items.IndexOf(FListaCodigosAlmacen.Values[CodigoAlmacen]);
|
|
except
|
|
on E : EIBError do
|
|
TratarExcepcion(E);
|
|
on E : Exception do
|
|
TratarExcepcion(E);
|
|
end;
|
|
end;
|
|
|
|
procedure TfrHistoricoMovimientos.cbxAlmacenChange(Sender: TObject);
|
|
begin
|
|
CodigoAlmacen := FListaAlmacenesCodigo.Values[cbxAlmacen.Text];
|
|
end;
|
|
|
|
procedure TfrHistoricoMovimientos.FreeContenido;
|
|
begin
|
|
if (Contenido is TRdxFrameHistoricoMovimientos) then
|
|
CodigoMovimiento := (Contenido as TRdxFrameHistoricoMovimientos).CodigoMovimiento;
|
|
inherited;
|
|
end;
|
|
|
|
procedure TfrHistoricoMovimientos.bEliminarClick(Sender: TObject);
|
|
begin
|
|
CodigoMovimiento := TablaMovimientos.FieldByName('CODIGO').AsString;
|
|
Contenido := TfrHistoricoMovimiento.Create(Self);
|
|
Contenido.Modo := Eliminar;
|
|
end;
|
|
|
|
procedure TfrHistoricoMovimientos.bConsultarClick(Sender: TObject);
|
|
begin
|
|
CodigoMovimiento := TablaMovimientos.FieldByName('CODIGO').AsString;
|
|
Contenido := TfrHistoricoMovimiento.Create(Self);
|
|
Contenido.Modo := Consultar;
|
|
end;
|
|
|
|
procedure TfrHistoricoMovimientos.bListarClick(Sender: TObject);
|
|
begin
|
|
// Contenido := TfrListadoHistoricoMovimientos.Create(Self);
|
|
end;
|
|
|
|
procedure TfrHistoricoMovimientos.BuscarMovimiento;
|
|
begin
|
|
with TablaMovimientos do
|
|
begin
|
|
DisableControls;
|
|
Close;
|
|
Open;
|
|
ActualizarBotones;
|
|
EnableControls;
|
|
end;
|
|
TablaMovimientos.Locate('CODIGO',CodigoMovimiento,[]);
|
|
end;
|
|
|
|
procedure TfrHistoricoMovimientos.VerModal;
|
|
begin
|
|
{ INFORME DESACTIVADO
|
|
if (ContenidoModal is TfrListadoHistoricoMovimientos) then
|
|
(ContenidoModal as TfrListadoHistoricoMovimientos).CodigoAlmacen := CodigoAlmacen;}
|
|
inherited;
|
|
end;
|
|
|
|
procedure TfrHistoricoMovimientos.ActualizarBotones;
|
|
begin
|
|
if BaseDatos.IsReadOnly then
|
|
begin
|
|
bConsultar.Enabled := True;
|
|
bEliminar.Enabled := False;
|
|
bListar.Enabled := True;
|
|
Exit;
|
|
end;
|
|
|
|
if TablaMovimientos.RecordCount= 0 then
|
|
begin
|
|
bConsultar.Enabled := False;
|
|
bEliminar.Enabled := False;
|
|
bListar.Enabled := False;
|
|
end
|
|
else begin
|
|
bConsultar.Enabled := True;
|
|
bEliminar.Enabled := True;
|
|
bListar.Enabled := True;
|
|
end;
|
|
end;
|
|
|
|
procedure TfrHistoricoMovimientos.gridMovimientosRefreshButton(
|
|
Sender: TObject);
|
|
begin
|
|
//Porque no se va ha cambiar de almacen ya que es solo refresco
|
|
BuscarMovimiento;
|
|
end;
|
|
|
|
procedure TfrHistoricoMovimientos.SetContenido(NuevoFrame: TRdxFrame);
|
|
begin
|
|
inherited;
|
|
{ INFORME DESACTIVADO
|
|
if (Contenido is TfrListadoHistoricoMovimientos) then
|
|
begin
|
|
(Contenido as TfrListadoHistoricoMovimientos).Entidad := Entidad;
|
|
(Contenido as TfrListadoHistoricoMovimientos).CodigoAlmacen := CodigoAlmacen;
|
|
end;}
|
|
end;
|
|
|
|
procedure TfrHistoricoMovimientos.BuscarPropertiesChange(Sender: TObject);
|
|
begin
|
|
FiltrarGrid(gridMovimientos, Buscar.Text);
|
|
end;
|
|
|
|
procedure TfrHistoricoMovimientos.bLimpiarClick(Sender: TObject);
|
|
begin
|
|
Buscar.Text := '';
|
|
end;
|
|
|
|
procedure TfrHistoricoMovimientos.bRefrescarClick(Sender: TObject);
|
|
begin
|
|
BuscarMovimiento;
|
|
end;
|
|
|
|
end.
|