AbetoDesign_FactuGES2/Source/Modulos/Gestor de informes/Views/uViewFiltroProveedores.pas

114 lines
3.2 KiB
ObjectPascal

unit uViewFiltroProveedores;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewBase, cxControls, cxContainer, cxEdit, cxTextEdit, cxDBEdit,
StdCtrls, Buttons, TBXDkPanels, uViewParametrosInforme, uBizContactos,
uProveedoresController, uIViewParametrosInforme, uIViewFiltroProveedores;
type
TfrViewFiltroProveedores = class(TfrViewParametrosInforme, IViewFiltroProveedores)
TBXLabel2: TTBXLabel;
rbTodosProveedores: TRadioButton;
rbUnProveedor: TRadioButton;
cbxDesglosado: TCheckBox;
bElegirProveedor: TBitBtn;
edtProveedor: TcxTextEdit;
procedure rbTodosProveedoresClick(Sender: TObject);
procedure rbUnProveedorClick(Sender: TObject);
procedure CustomViewCreate(Sender: TObject);
procedure bElegirProveedorClick(Sender: TObject);
procedure CustomViewDestroy(Sender: TObject);
private
FProveedor : IBizProveedor;
FProveedoresController : IProveedoresController;
function getIdProveedor: Integer;
procedure setIdProveedor(const IdProveedor:Integer);
public
property IdProveedor : Integer read getIdProveedor write setIdProveedor;
property Proveedor : IBizProveedor read FProveedor;
end;
implementation
{$R *.dfm}
procedure TfrViewFiltroProveedores.bElegirProveedorClick(Sender: TObject);
var
AProveedores : IBizProveedor;
begin
inherited;
AProveedores := IBizProveedor(FProveedoresController.BuscarTodos);
try
FProveedor := IBizProveedor(FProveedoresController.ElegirContacto(AProveedores, '', False));
if Assigned(FProveedor) then
begin
FProveedor.Open;
edtProveedor.Text := FProveedor.NOMBRE;
end;
finally
AProveedores := NIL;
end;
end;
procedure TfrViewFiltroProveedores.CustomViewCreate(Sender: TObject);
begin
inherited;
FProveedor := NIL;
FProveedoresController := NIL;
end;
procedure TfrViewFiltroProveedores.CustomViewDestroy(Sender: TObject);
begin
inherited;
FProveedor := NIL;
FProveedoresController := NIL;
end;
function TfrViewFiltroProveedores.getIdProveedor: Integer;
begin
Result := FProveedor.ID;
end;
procedure TfrViewFiltroProveedores.rbTodosProveedoresClick(Sender: TObject);
begin
if rbTodosProveedores.Checked then
begin
cbxDesglosado.Enabled := True;
FProveedor := NIL;
bElegirProveedor.Enabled := False;
edtProveedor.Clear;
edtProveedor.Enabled := False;
end;
end;
procedure TfrViewFiltroProveedores.rbUnProveedorClick(Sender: TObject);
begin
if rbUnProveedor.Checked then
begin
cbxDesglosado.Enabled := False;
bElegirProveedor.Enabled := True;
edtProveedor.Enabled := True;
if not Assigned(FProveedoresController) then
FProveedoresController := TProveedoresController.Create;
end;
end;
procedure TfrViewFiltroProveedores.setIdProveedor(const IdProveedor: Integer);
begin
if not Assigned(FProveedoresController) then
FProveedoresController := TProveedoresController.Create;
FProveedor := IBizProveedor(FProveedoresController.Buscar(IdProveedor));
if Assigned(FProveedor) then
begin
FProveedor.Open;
edtProveedor.Text := FProveedor.NOMBRE;
end;
end;
end.