Tecsitel_FactuGES2/Source/Modulos/Facturas de cliente/Views/uViewDetallesFacturaCliente.pas

81 lines
2.9 KiB
ObjectPascal

unit uViewDetallesFacturaCliente;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uViewDetallesBase, cxStyles, cxCustomData, cxGraphics, cxFilter,
cxData, cxDataStorage, cxEdit, DB, cxDBData, ImgList, PngImageList,
uDADataTable, ActnList, ComCtrls, ToolWin, cxGridLevel, cxClasses, cxControls,
cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView,
cxGrid, cxImageComboBox, cxTextEdit, cxMaskEdit, cxCheckBox, cxCurrencyEdit,
Grids, DBGrids, StdCtrls, ExtCtrls, cxRichEdit, StdActns, ExtActns,
JvExStdCtrls, JvCombobox, JvColorCombo, TB2Item, TBX, TB2Dock, TB2Toolbar,
uControllerDetallesArticulos, uViewDetallesArticulos, uBizFacturasCliente,
uDAInterfaces, cxDropDownEdit, cxButtonEdit;
type
IViewDetallesFacturaCliente = interface(IViewDetallesArticulos)
['{0EEC7246-B2FD-4F93-AB15-AA12D6E67302}']
function GetFactura: IBizFacturaCliente;
procedure SetFactura(const Value: IBizFacturaCliente);
property Factura: IBizFacturaCliente read GetFactura write SetFactura;
end;
TfrViewDetallesFacturaCliente = class(TfrViewDetallesArticulos)
protected
FFactura: IBizFacturaCliente;
function GetFactura: IBizFacturaCliente;
procedure SetFactura(const Value: IBizFacturaCliente);
procedure AnadirArticulosInterno; override;
procedure RellenarArticulosInterno; override;
function AnadirArticulo(pReferencia: String; TipoReferencia: TEnumReferencia): Boolean; override;
public
property Factura: IBizFacturaCliente read GetFactura write SetFactura;
end;
implementation
{$R *.dfm}
uses uDetallesFacturaClienteController;
{ TfrViewDetallesFacturaCliente }
function TfrViewDetallesFacturaCliente.AnadirArticulo(pReferencia: String; TipoReferencia: TEnumReferencia): Boolean;
begin
Result := (Controller as IDetallesFacturaClienteController).AnadirArticulo(Detalles, pReferencia, TipoReferencia, Factura.Cliente.ID);
if (Factura.TIPO = CTE_TIPO_ABONO) then
(Controller as IDetallesFacturaClienteController).CambiarSignoDetalles(Detalles);
end;
procedure TfrViewDetallesFacturaCliente.AnadirArticulosInterno;
begin
(Controller as IDetallesFacturaClienteController).AnadirArticulos(Detalles, Factura.Cliente);
if (Factura.TIPO = CTE_TIPO_ABONO) then
(Controller as IDetallesFacturaClienteController).CambiarSignoDetalles(Detalles);
end;
function TfrViewDetallesFacturaCliente.GetFactura: IBizFacturaCliente;
begin
Result := FFactura;
end;
procedure TfrViewDetallesFacturaCliente.RellenarArticulosInterno;
begin
(Controller as IDetallesFacturaClienteController).AnadirArticulos(Detalles, Factura.Cliente, False);
if (Factura.TIPO = CTE_TIPO_ABONO) then
(Controller as IDetallesFacturaClienteController).CambiarSignoDetalles(Detalles);
end;
procedure TfrViewDetallesFacturaCliente.SetFactura(const Value: IBizFacturaCliente);
begin
FFactura := Value;
end;
end.