This repository has been archived on 2024-11-28. You can view files and clone it, but cannot push or open issues or pull requests.
Miguelo_FactuGES/Clientes/AlbaranesClientes.pas

295 lines
8.9 KiB
ObjectPascal
Raw Normal View History

{
===============================================================================
Copyright (<EFBFBD>) 2005. 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: 30-09-2005
Versi<EFBFBD>n actual: 1.0.0
Fecha versi<EFBFBD>n actual: 30-09-2005
===============================================================================
Modificaciones:
Fecha Comentarios
---------------------------------------------------------------------------
===============================================================================
}
unit AlbaranesClientes;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Grids, DBGrids, ComCtrls, RdxBotones, ToolWin, ExtCtrls,
Menus, RXDBCtrl, Configuracion, RdxFrame,
Db, RdxPaneles, RdxBarras,
cxStyles, cxCustomData, cxGraphics, cxFilter, cxData,
cxEdit, cxDBData, cxGridLevel, cxClasses, cxControls, cxGridCustomView,
cxGridCustomTableView, cxGridTableView, cxGridDBTableView, cxGrid,
am2000menuitem, am2000popupmenu, am2000, cxContainer, cxTextEdit,
cxMaskEdit, cxDropDownEdit, StdCtrls, ActnList, RdxFrameAlbaranesCliente,
RdxEmpresaActiva, am2000utils, cxDataStorage;
type
TfrAlbaranesClientes = class(TRdxFrameAlbaranesCliente)
dsAlbaranes: TDataSource;
BarraAlbaranes: TRdxBarraSuperior;
pnlCuerpo: TRdxPanel;
pnlGrid: TRdxPanel;
brSeleccion: TRdxBarraInferior;
bSeleccionar: TRdxBoton;
bCancelar: TRdxBoton;
brSimple: TRdxBarraInferior;
bSalir: TRdxBoton;
gridAlbaranes: TcxGrid;
gridAlbaranesDBTableView1: TcxGridDBTableView;
gridAlbaranesLevel1: TcxGridLevel;
MenuOpciones: TPopupMenu2000;
miAnadir: TMenuItem2000;
miModificar: TMenuItem2000;
miEliminar: TMenuItem2000;
miConsultar: TMenuItem2000;
miSeparador: TMenuItem2000;
miImprimir: TMenuItem2000;
Acciones: TActionList;
actAnadir: TAction;
actModificar: TAction;
actEliminar: TAction;
actConsultar: TAction;
actImprimir: TAction;
actSeleccionar: TAction;
actCancelar: TAction;
actAceptar: TAction;
bAnadir: TRdxBotonSuperior;
bModificar: TRdxBotonSuperior;
bEliminar: TRdxBotonSuperior;
bConsultar: TRdxBotonSuperior;
bSeparador1: TShape;
bImprimir: TRdxBotonSuperior;
imgSombra: TImage;
pnlCuerpo2: TRdxPanel;
pnlExtra: TRdxBarraSuperior;
bRefrescar: TRdxBoton;
Panel2: TPanel;
eNombre: TLabel;
Buscar: TcxTextEdit;
bLimpiar: TRdxBoton;
procedure RdxFrameAlbaranesClienteShow(Sender: TObject);
procedure actImprimirExecute(Sender: TObject);
procedure actAnadirExecute(Sender: TObject);
procedure actModificarExecute(Sender: TObject);
procedure actEliminarExecute(Sender: TObject);
procedure actConsultarExecute(Sender: TObject);
procedure actSeleccionarExecute(Sender: TObject);
procedure actCancelarExecute(Sender: TObject);
procedure actAceptarExecute(Sender: TObject);
procedure gridAlbaranesDBTableView1DblClick(Sender: TObject);
procedure actRefrescarDatosExecute(Sender: TObject);
procedure BuscarPropertiesChange(Sender: TObject);
procedure bLimpiarClick(Sender: TObject);
private
procedure ActualizarBotones;
protected
procedure FreeContenido; override;
procedure SetContenido (NuevoFrame : TRdxFrame); override;
procedure BuscarAlbaran; override;
public
constructor Create (AOwner : TComponent); override;
destructor Destroy; override;
end;
var
frAlbaranesClientes: TfrAlbaranesClientes;
implementation
{$R *.DFM}
uses
BaseDatos, IBDatabase, Literales, IBCustomDataSet, Mensajes, Entidades,
Variants, Constantes,
TablaEmpresas, TablaAlbaranesCliente, ImprimirAlbaranCliente, AlbaranCliente;
procedure TfrAlbaranesClientes.BuscarAlbaran;
begin
with TablaAlbaranes do
begin
DisableControls;
Close;
Open;
dmTablaAlbaranesCliente.InicializarTabla(@TablaAlbaranes);
ActualizarBotones;
EnableControls;
if not Locate('CODIGO', CodigoAlbaran, []) then
gridAlbaranesDBTableView1.Controller.GoToFirst
else
gridAlbaranesDBTableView1.Controller.TopRowIndex := gridAlbaranesDBTableView1.Controller.FocusedRowIndex;
end;
end;
constructor TfrAlbaranesClientes.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
Entidad := entAlbaranCliente;
BaseDatos := dmBaseDatos.BD;
Transaccion := dmBaseDatos.Transaccion;
TablaAlbaranes := TIBDataSet.Create(Self);
dsAlbaranes.DataSet := TablaAlbaranes;
with TablaAlbaranes do
begin
Database := BaseDatos;
Transaction := Transaccion;
SelectSQL.Assign(dmTablaAlbaranesCliente.sqlConsultarGrid);
ParamByName('CODIGOEMPRESA').AsInteger := EmpresaActiva.Codigo;
Prepare;
Open;
ActualizarBotones;
end;
dmTablaAlbaranesCliente.InicializarTabla(@TablaAlbaranes);
dmTablaAlbaranesCliente.Inicializargrid(gridAlbaranes);
gridAlbaranesDBTableView1.OnDblClick := gridAlbaranesDBTableView1DblClick;
gridAlbaranesDBTableView1.Controller.GoToFirst;
end;
destructor TfrAlbaranesClientes.Destroy;
begin
TablaAlbaranes.Close;
TablaAlbaranes.UnPrepare;
TablaAlbaranes.Free;
inherited;
end;
procedure TfrAlbaranesClientes.FreeContenido;
begin
if (Contenido is TRdxFrameAlbaranesCliente) then
CodigoAlbaran := (Contenido as TRdxFrameAlbaranesCliente).CodigoAlbaran;
inherited FreeContenido;
gridAlbaranes.SetFocus;
end;
procedure TfrAlbaranesClientes.ActualizarBotones;
begin
if BaseDatos.IsReadOnly then
begin
actAnadir.Enabled := False;
actModificar.Enabled := False;
actEliminar.Enabled := False;
actConsultar.Enabled := True;
actImprimir.Enabled := True;
Exit;
end;
if TablaAlbaranes.RecordCount = 0 then
begin
actAnadir.Enabled := True;
actModificar.Enabled := False;
actEliminar.Enabled := False;
actConsultar.Enabled := False;
actImprimir.Enabled := False;
end
else begin
actAnadir.Enabled := True;
actModificar.Enabled := True;
actEliminar.Enabled := True;
actConsultar.Enabled := True;
actImprimir.Enabled := True;
end;
end;
procedure TfrAlbaranesClientes.RdxFrameAlbaranesClienteShow(Sender: TObject);
begin
gridAlbaranes.SetFocus;
end;
procedure TfrAlbaranesClientes.SetContenido(NuevoFrame: TRdxFrame);
begin
inherited;
if (Contenido is TfrImprimirAlbaranCliente) then
(Contenido as TfrImprimirAlbaranCliente).Codigo := FCodigoAlbaran;
end;
procedure TfrAlbaranesClientes.actImprimirExecute(Sender: TObject);
begin
Contenido := TfrImprimirAlbaranCliente.Create(Self);
Contenido.Modo := Imprimir;
end;
procedure TfrAlbaranesClientes.actAnadirExecute(Sender: TObject);
begin
Contenido := TfrAlbaranCliente.Create(Self);
Contenido.Modo := Anadir;
end;
procedure TfrAlbaranesClientes.actModificarExecute(Sender: TObject);
begin
Contenido := TfrAlbaranCliente.Create(Self);
Contenido.Modo := Modificar;
end;
procedure TfrAlbaranesClientes.actEliminarExecute(Sender: TObject);
begin
Contenido := TfrAlbaranCliente.Create(Self);
Contenido.Modo := Eliminar;
end;
procedure TfrAlbaranesClientes.actConsultarExecute(Sender: TObject);
begin
Contenido := TfrAlbaranCliente.Create(Self);
Contenido.Modo := Consultar;
end;
procedure TfrAlbaranesClientes.actSeleccionarExecute(Sender: TObject);
begin
CodigoAlbaran := TablaAlbaranes.FieldByName('CODIGO').AsString;
CloseFrame;
end;
procedure TfrAlbaranesClientes.actCancelarExecute(Sender: TObject);
begin
FCodigoAlbaran := NULL;
CloseFrame;
end;
procedure TfrAlbaranesClientes.actAceptarExecute(Sender: TObject);
begin
CloseFrame;
end;
procedure TfrAlbaranesClientes.gridAlbaranesDBTableView1DblClick(
Sender: TObject);
begin
if Modo = Seleccionar then
actSeleccionar.Execute
else
actModificar.Execute;
end;
procedure TfrAlbaranesClientes.actRefrescarDatosExecute(Sender: TObject);
begin
FCodigoAlbaran := TablaAlbaranes.FieldByName('CODIGO').AsString;
BuscarAlbaran;
end;
procedure TfrAlbaranesClientes.BuscarPropertiesChange(Sender: TObject);
begin
FiltrarGrid(gridAlbaranes, Buscar.Text);
end;
procedure TfrAlbaranesClientes.bLimpiarClick(Sender: TObject);
begin
Buscar.Text := '';
end;
end.