This repository has been archived on 2024-12-02. You can view files and clone it, but cannot push or open issues or pull requests.
FactuGES/Clientes/AlbaranesClientes.pas
2007-06-26 08:08:27 +00:00

295 lines
8.8 KiB
ObjectPascal

{
===============================================================================
Copyright (©) 2005. 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: 30-09-2005
Versión actual: 1.0.0
Fecha versió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
Buscar.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.