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.
LuisLeon_FactuGES/Modulos/Articulos proveedor/Views/uViewArticuloProveedor.pas
2007-06-11 15:35:41 +00:00

102 lines
3.6 KiB
ObjectPascal

unit uViewArticuloProveedor;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewArticulo, DB, uDADataTable, dxLayoutControl, cxContainer,
cxEdit, cxTextEdit, cxDBEdit, cxControls, uCustomView,
uViewBase, uBizArticulos, ActnList, ImgList, PngImageList, cxImage,
cxCheckBox, Buttons, PngSpeedButton, cxMaskEdit, cxSpinEdit, cxCurrencyEdit,
uViewDatosYSeleccionProveedor, uBizArticulosProveedor,
uArticulosProveedorController, cxGraphics, cxDropDownEdit;
type
IViewArticuloProveedor = interface(IViewArticulo)
['{BB7BAA0C-442E-43C8-8BA5-AC4BD9023F2F}']
function GetController : IArticulosProveedorController;
procedure SetController (const Value : IArticulosProveedorController);
property Controller : IArticulosProveedorController read GetController write SetController;
end;
TfrViewArticuloProveedor = class(TfrViewArticulo, IViewArticuloProveedor)
dxLayoutControlArticuloItem9: TdxLayoutItem;
frViewDatosYSeleccionProveedor1: TfrViewDatosYSeleccionProveedor;
dxLayoutControlArticuloGroup8: TdxLayoutGroup;
dxLayoutControlArticuloGroup9: TdxLayoutGroup;
dxLayoutControlArticuloItem7: TdxLayoutItem;
eReferenciaProv: TcxDBTextEdit;
dxLayoutControlArticuloItem10: TdxLayoutItem;
ePrecioCoste: TcxDBCurrencyEdit;
dxLayoutControlArticuloItem11: TdxLayoutItem;
eDescuento: TcxDBSpinEdit;
dxLayoutControlArticuloItem12: TdxLayoutItem;
ePrecioPorte: TcxDBCurrencyEdit;
dxLayoutControlArticuloGroup10: TdxLayoutGroup;
dsProveedor: TDADataSource;
protected
FArticuloProveedor : IBizArticuloProveedor;
FController: IArticulosProveedorController;
procedure SetArticulo(const Value: IBizArticulo); override;
procedure OnProveedorChanged(Sender: TObject);
function GetController : IArticulosProveedorController;
procedure SetController (const Value : IArticulosProveedorController);
public
property Controller : IArticulosProveedorController read GetController write SetController;
end;
implementation
uses
uProveedoresController, uBizContactos;
{$R *.dfm}
{ TfrViewArticuloProveedor }
function TfrViewArticuloProveedor.GetController: IArticulosProveedorController;
begin
Result := FController;
end;
procedure TfrViewArticuloProveedor.OnProveedorChanged(Sender: TObject);
begin
if Assigned(FArticuloProveedor) then
begin
FArticuloProveedor.DatosProveedores.Edit;
FArticuloProveedor.DatosProveedores.ID_PROVEEDOR := frViewDatosYSeleccionProveedor1.Proveedor.ID;
end;
end;
procedure TfrViewArticuloProveedor.SetArticulo(const Value: IBizArticulo);
var
AController : IProveedoresController;
begin
inherited;
frViewDatosYSeleccionProveedor1.OnProveedorChanged := NIL;
if Assigned(FArticulo) then
begin
FArticuloProveedor := (FArticulo as IBizArticuloProveedor);
dsViewArticulo.DataTable := FArticuloProveedor.DataTable;
dsProveedor.DataTable := FArticuloProveedor.DatosProveedores.DataTable;
AController := TProveedoresController.Create;
frViewDatosYSeleccionProveedor1.Controller := AController;
frViewDatosYSeleccionProveedor1.Proveedor := (AController.Buscar(FArticuloProveedor.DatosProveedores.ID_PROVEEDOR) as IBizProveedor);
frViewDatosYSeleccionProveedor1.OnProveedorChanged := OnProveedorChanged;
end
else begin
FArticuloProveedor := NIL;
dsViewArticulo.DataTable := NIL;
dsProveedor.DataTable := NIL;
end;
end;
procedure TfrViewArticuloProveedor.SetController(
const Value: IArticulosProveedorController);
begin
FController := Value;
end;
end.