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

102 lines
3.6 KiB
ObjectPascal
Raw Normal View History

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.